Sou estudante de Ciência da Computação com foco em Ciência de dados. Também estudo engenharia de software, arquitetura de software e System Desing. Para que, com isso possa chegar a MLOps.
Hello, and thanks for the visit. If you do not know portuguese, you can translate to english by clicking in the translate button on the menu.
Implementei e avaliei dois sistemas de recomendação: uma abordagem baseada em memória utilizando KNN e uma abordagem baseada em modelo utilizando SVD by Funk. O pipeline envolveu limpeza e organização do dataset, normalização dos dados, treinamento dos modelos e avaliação de desempenho. Na abordagem baseada em SVD, foram aprendidos fatores latentes de usuários e itens para modelar suas interações. Em ambas as abordagens, realizei hiperparametrização para otimizar os modelos e comparar seu desempenho. O modelo apresentou RMSE de 0,8527 e RMSE de validação de 0,9313. O projeto inclui um artigo com a metodologia, experimentos e resultados detalhados.
Um simples sistema de recomendação de filmes que diferente do descrito acima, foi feito utilizando a biblioteca Scickit learn. O usuário escolhe a quantidade de filmes que deseja avaliar e dá a nota para cada um. Com isso o sistema recomenda uma lista de filmes que ele possivelmente irá gostar. Nessa implementação foram feitas duas engenharias, uma utilizando sopa de palavras e uma que não utilizava essa abordagem
Planejamento e lecionamento de um mini curso introdutório abordando conceitos de aprendizado supervisionado, incluindo Regressão Linear, Regressão Logística, Árvores de Decisão e Clusterização. O curso apresentou de forma prática e didatica todas as etapas do pipeline de machine learning, desde pré-processamento, treino e avaliação de modelos, utilizando Python e Scikit-learn. Uma vez que a apresentação foi aberta a comunidade acadêmica em geral.
Desenvolvimento do algoritmo de regressão linear de forma iterativa. Os dados são tratados, desde a verificação de valores faltantes até a normalização de dados numéricos.
Foi realizada uma (EDA) análise exploratória do dados, utilizando os próprios dados coletados pelo IBGE(Instituto Brasileiro de Geografia e Estatistica). O intuito do trabalho foi realizar a mineração dos dados e com isso encontrar dados ocultos para melhor atenção aos casos necessários. Durante a análise foram realizados tratamento dos dados e clusterização dos mesmos para melhor análise.
A análise desse projeto foi realizada de forma diferente. Utilizando regras de associação, como Support ,Confidence ,Lift ,Conviction. Visando a exploração e descoberta de quais ocorridos e caracteristicas levavam um cliente a abandonar um serviço de uma empresa de telefonia. De outra forma, analisar o que levava uma pessoa ao churn. Além das regras de associação foi utilizado o algoritmo FP-Growth para auxiliar na análise dos dados.
Foi feita a análise e clusterização de um conjunto de dados sobre como era o rendimento de estudantes em uma escola, para descobrir como era o perfil dos alunos e como era a sua correlação. E se necessário, aplicar medidas poderiam ajudar aqueles com redimento não muito bom. Previarmente foi feita o ETL dos dados e também teve a necessidade da aplicação do PCA para ter uma melhor visualização dos grupos formados. Para o agrupamento foi utilizado o algortimo K-prototypes devido a sua capacidade de conseguir unir dados categóricos e não categóricos em cluster.
Experimento para análise de proximidade semântica com embeddings: frases e adjetivos são vetorizados e agrupados para revelar como modelos de linguagem organizam significados no espaço latente. O pipeline inclui geração de embeddings, redução de dimensionalidade (PCA/UMAP), clusterização e visualização interativa para validar hipóteses de prompt engineering e similaridade textual.
Estas são as mais "simples". Desenvolvi duas implementações de redes neurais utilizando PyTorch para entender como a rede se modifica e aprende ao ajustar seus parâmetros como camadas, neurônios e épocas e como técnicas para evitar o overfitting, como o dropout alteram a rede. Essas duas implementações foram projetadas para regressão linear e para uma onda senoidal.
Um sistema de rede neural densa treinada para resolver um problema de classificação. O projeto utiliza um problema clássico, classificar quem sobrevive ao titanic. O pipeline foi, limpeza e preparação dos dados, normalização dos dados, treinamento alinhado com validação e técnicas para evitar overfitting como dropout.
Neste projeto, desenvolvi um classificador de imagens utilizando o conjunto de dados CIFAR-10. Para a validação, utilizei a técnica de holdout, dividindo os dados em 80% para treinamento, 10% para teste e 10% para validação. Para reduzir o overfitting, apliquei a técnica de data augmentation, realizando operações de espelhamento, rotação e normalização das imagens durante o treinamento.
Implementação de auto encoders para detecção de anomalias em imagens. O objetivo foi ir alterando variáveis da arquitetura para um melhor resultado na detecção de anomalias.
Desenvolvi um estimador de preço para o Bitcoin utilizando LSTM. Utilizei o histórico de variações de preço da moeda, mas considerei apenas dados a partir de 2023. Por quê? Porque meu experimento levava mais de 6 horas para ser concluído, isso utilizando a GPU do Google Colab. Normalizei os atributos usando o z-score, pois essa é (até onde sei) a melhor maneira de normalizar sem causar flutuações significativas nas médias e nos desvios-padrão dos dados, nem permitir que eles sejam influenciados por variações extremas.
Uma API utilizando FastAPI. O intuito do projeto é construir uma API com os dados das temporadas da fórmula 1. A API vai permitir consultar Pilotos, Equipes, Circuitos, Corridas, Temporadas e Resultados. Como futuras funcionalidades estão planejadas Predições, Estatísticas, Dashboard.
Construí uma plataforma de e-commerce full stack utilizando AdonisJS que roda sobre o NodeJS. A plataforma se trata de uma loja de jogos, seguindo o padrão MVC para diversas plataformas, desde PC até o PS5. O backend do projeto foi construído com uma API REST, contendo autenticação, controle de sessões e gerênciamento de de dados(SQLite). O controle do banco de dados foi feito utilizando ORM, tendo migrations e seeders, utilizado a API RWAG para a população de dados. Como funcionalidades do projeto há, CRUD de usuários e itens com painel administrativo, lista de desejos e sistema de comentários. Além disso o projeto contém debouncing e paginação para consultas ao banco de dados, persistência de carrinho de compras e a integração do gateway de pagamentos Stripe.
Parte referente ao meu estudo/projetos de estudo em algoritmos. O que me levou ao estudo para participar de maratonas de programação. Também há resoluções de alguns problemas do leetcode.
Durante meu TCC desenvolvi uma pesquisa que engloba Computação, economia e psicologia. O intuito foi utilizar LLMs para simular tomadas de decisões e estudar a estratégia das LLMs. E como variações do espectro de personalidade dividido pelo BigFive e contextos macro econômicos influenciam a tomada de decisão.
Durante a faculdade comecei meus estudos pela linguagem C. Depois disso ao estudar POO aprendi sobre o conceito utilizando a linguagem JAVA, isso vendo polimorfismo, herança e encapsulamento. Também estudei um pouco de C++ para programação competitiva. Como há no portifólio também já utilizei a linguagem TypeScript para construir um e-commerc com NodeJS(utilizando agentes). Atualmente tenho focado mais em python, Golang e SQL. Onde tenho estudo mais a parte prática, um pouco de modelagem e Querys(uma vez que as aulas de banco de dados não foram lá essas coisas) por conta do caminho que pretendo seguir, Ciência de dados/MLOps. Utilizo linux em meu laptop para programar e também para aprendizado que envolve docker, terminal etc. Na faculdade também dirigi meus estudos para a área de inteligência artificial, estudando matérias como inteligência artificial, aprendizado de máquina, mineração de dados, redes neurais, processamento de linguagem natural e sistemas de recomendação. Agora estou estudando outro eixo, a parte de engenharia e arquitetura de software. Para finalizar, venho estudando system desing.
Estou disponível para novas oportunidades e colaborações.