Descrição do projeto
Criar uma solução inteligente capaz de analisar o comportamento financeiro de um usuário a partir de suas transações e informações financeiras, gerando uma visão mais completa da sua saúde financeira.
A solução deverá receber informações relacionadas a gastos e hábitos financeiros, como descrição de transações, valores, categorias de despesas, renda mensal, frequência de economia, nível de endividamento e outros indicadores relevantes.
Com base nesses dados, o sistema deverá ser capaz de:
Classificar automaticamente despesas em categorias financeiras; Identificar padrões de consumo; Classificar o perfil financeiro do usuário; Gerar indicadores que auxiliem na compreensão dos hábitos financeiros; Apresentar recomendações simples para melhoria da saúde financeira.
Esse tipo de solução pode ser utilizado por aplicativos financeiros, carteiras digitais, plataformas de educação financeira ou por usuários que desejam organizar melhor suas finanças pessoais.
A solução deverá retornar os resultados em formato JSON e utilizar serviços OCI para armazenamento, processamento ou implantação da aplicação.
Objetivo do Hackathon
Desenvolver um MVP funcional capaz de:
Classificar despesas financeiras automaticamente; Analisar o comportamento financeiro do usuário; Gerar uma classificação de perfil financeiro; Apresentar recomendações personalizadas; Disponibilizar os resultados por meio de uma API REST; Utilizar pelo menos um serviço OCI como parte da arquitetura da solução.
Resultados esperados
Ciência de Dados Notebook contendo:
Exploração e limpeza dos dados (EDA); Tratamento de variáveis financeiras e textuais; Engenharia de atributos; Classificação de despesas; Análise de perfil financeiro; Treinamento e avaliação de modelos; Métricas de desempenho adequadas; Serialização dos modelos.
Back-End API REST contendo:
Endpoint para análise financeira; Endpoint para classificação de transações; Validação de entrada; Tratamento de erros; Documentação dos endpoints.
OCI Utilização de pelo menos um dos seguintes serviços:
Object Storage para armazenamento de modelos ou dados; OCI Compute para hospedagem da aplicação; OCI Functions para processamento específico; Banco de dados opcional para persistência de informações.
Funcionalidades obrigatórias (MVP)
Classificação de transações O sistema deverá ser capaz de classificar automaticamente despesas em categorias como:
Alimentação; Transporte; Saúde; Moradia; Educação; Lazer; Serviços; Outras categorias definidas pela equipe.
Análise de perfil financeiro O sistema deverá gerar uma avaliação do perfil financeiro do usuário com base nos dados analisados.
Exemplos de categorias:
Saudável; Em observação; Em risco.
As categorias podem ser adaptadas pela equipe conforme a estratégia adotada.
Recomendações financeiras A solução deverá gerar recomendações simples e objetivas com base nos resultados obtidos.
Exemplos:
Reduzir gastos em determinada categoria; Aumentar frequência de poupança; Melhorar controle de despesas recorrentes.
Exemplo de uso Endpoint POST /analise-financeira Entrada { "rendamensal": 4500, "nivelendividamento": 25, "frequenciapoupanca": "Media", "transacoes": [ { "descricao": "Supermercado", "valor": 420 }, { "descricao": "Combustivel", "valor": 300 }, { "descricao": "Streaming", "valor": 40 } ] }
Saída { "perfilfinanceiro": "Em observacao", "probabilidade": 0.82, "resumogastos": { "alimentacao": 420, "transporte": 300, "entretenimento": 40 }, "recomendacoes": [ "Monitorar gastos recorrentes de entretenimento", "Aumentar reserva financeira mensal" ] }
Requisitos mínimos
Modelo treinado e carregado corretamente; Validação de entrada; Classificação funcional das transações; Análise de perfil financeiro; Geração de recomendações; API documentada; Integração com OCI; Mínimo de três exemplos reais de utilização.
Recursos opcionais
Dashboard financeiro; Visualização da evolução financeira; Processamento em lote via CSV; Histórico de análises; Alertas de gastos elevados; Containerização com Docker; Testes automatizados; Exportação de relatórios; Explicabilidade dos modelos.
Diretrizes para Ciência de Dados
Cada equipe deverá construir seu próprio conjunto de dados financeiros.
Os dados poderão ser:
Obtidos em bases públicas; Gerados por simulações; Construídos manualmente pela equipe.
Recomenda-se utilizar:
Python; Pandas; Scikit-Learn; Técnicas de classificação supervisionada; Engenharia de atributos; Modelos de classificação adequados ao problema.
A utilização de outras abordagens é permitida.
Diretrizes para Back-End
A equipe deverá desenvolver uma API REST, preferencialmente utilizando Java com Spring Boot.
A solução deverá:
Receber informações financeiras; Processar classificações e análises; Retornar respostas estruturadas em JSON; Integrar o modelo de Ciência de Dados ao backend.
A arquitetura adotada deverá ser documentada pela equipe.
OCI A solução deve utilizar pelo menos um serviço OCI como parte obrigatória do projeto.