Neste último mês estive bastante atarefado com o início do Mestrado Internacional em Inteligência Artificial pela Universidade de San Diego, Califórnia, e achei bacana compartilhar um pouco de como tem sido essa nova etapa.
Estou num momento interessante, podendo focar completamente em estudar e conhecer mais sobre o conteúdo. E principalmente aproveitando que não tenho reunião o dia todo para aprofundar nos temas que estou atuando agora.
Por que buscar um mestrado? Quero ter esse marco intelectual para me preparar para o próximo ciclo de crescimento de tecnologias de IA - e com o avanço das plataformas de LLS, e seu aparente descontentamento e pouco resultado financeiro, os próximos anos serão interessantes, e quero estar mais preparado tecnicamente para isso.
Escolhi a Universidade de San Diego por alguns motivos:
Foco importante em integração com indústria
Professores presentes no curso e proximidade com ecossistema de inovação
Preço e aparente disponibilidade de opções de pagamento internacional
O Cronograma do curso é extenso, mas o currículo é relativamente pequeno, e caro:
Diferentemente de um mestrado mais tradicional, o que acontece nesse curso, que me chamou bastante a atenção: não existe uma dissertação de final de curso, mas um projeto Capstone, acompanhado de um artigo. Se é melhor, eu não sei, me pergunte novamente lá em 2026.
O fato de ser online não é o ideal para mim, mas tenho gostado bastante, e existe a possibilidade de visitar e estar com o corpo docente nos EUA, que pretendo fazer. O fato de ser em inglês não é um desafio, mas é sempre bom ter a cobrança de melhorar cada vez mais no idioma que já domino há tantos anos.
Meu grupo tem aproximadamente 50 pessoas, em sua maioria norte americanos já com experiência em tecnologia, nas mais diferentes idades e backgrounds. O grupo é bastante diverso de maneira geral, o que me deixa feliz e empolgado em ver como o curso vai se desenvolver.
Cada uma das disciplinas possui um projeto final em grupo, que se torna uma ótima experiência de conexão com as demais pessoas. Esse projeto final precisa ser apresentado por video, com uma conotação de negócios e um viés acadêmico, uma combinação interessante e que não vi em nenhum programa no Brasil.
O que me chamou a intenção foi como o curso não pega na sua mão pra nada, para o bem e para o mal. Basicamente existe um video introdutório do módulo, um livro base e alguns links de referência, e no fim: se vira mano! Tem assignment no fim dessa semana e na próxima começa outro módulo. Literalmente um "dá seus pulo!".
Nesse sentido, toda a minha devoção aos indianos do youtube, inclusive os presentes na diáspora indiana para os EUA, que estão há mais de uma década ajudando todos os alunos de data science do mundo. I salute you! 🍹
Meu ambiente de estudo e desenvolvimento
Obsidian FTW
Eu já tenho falado do obsidian há algum tempo, e não seria diferente. Tudo que eu faço está de alguma forma relacionado ao meu uso do obsidian como minha principal ferramenta de anotações e estudo.
Além de ser uma ferramenta tradicional de anotações e minha ferramenta de gestão do conhecimento, ela tem se tornado a minha ferramenta de pesquisa, com a integração com o Zotero, ferramenta de gestão de referências, que me parece imprescindível para o que estou fazendo.
Assim, posso descrever meu workflow como sendo:
- Zotero:
- Me permite armazenar e administrar referências de leitura, fazer anotações em pdf, administrar estudos e pesquisas por temas e gestão de documentos e artigos científicos que leio
- Obsidian:
- Todas as anotacoes de estudo
- Escrita e revisão de assignments
- Gestão do conhecimento e armazenamento de referências uma vez que são lidas, processadas
Templates me ajudam a criar automaticamente os links de notas, e fazer o processo de integração com o zotero. Tem funcionado bem, mas realmente o começo foi intenso para integrar tudo.
Meu mapa de conteúdo até o momento integra o que já estudei e escrevi sobre IA com o material da primeira disciplina: Probability and Statistics (relembrando o tema 20 anos depois de formado!)
Tem muito conteúdo em ingles para esse setup, segue uma indicação
Neste momento, integro minha leituras do Kindle, os artigos que leio para o mestrado através do Zotero, gerencio projetos do dia a dia, faço anotações diárias de reuniões e vida, e integro tudo da forma descentralizada e distribuída que é o poder incrível de um wiki. Com os arquivos armazenados no meu computador, também estou livre para gerenciá-los da maneira que melhor entender.
Gerencio arquivos através do método PARA usando templates. E faço o backup em dois serviços diferentes: icloud e github
Além disso é possível ver o grafo de relacionamento de assunto com granulosidade variável, me permitindo conectar ideias e entender como os assuntos se intercalam no dia a dia.
Me sinto numa IDE, programando minha vida. Olhando para trás, em como eu fazia antes, me parece tão amador que não pretendo retornar nunca mais.
Dev Environment
Todo curso é conduzido em Python, e estou gostando muito de aprender mais sobre a linguagem que já usei no passado.
Muito mudou desde minha palestra sobre Jabber bots e XMPP na edição da Python Ireland, em 2009! Muito bom retomar esse estudo!
O ambiente de desenvolvimento do curso é bastante livre, mas uma ferramenta me chamou bastante a atenção, e se tornou minha principal forma de compartilhar os assignment: Jupyter Notebook.
Me parece que é comum com a comunidade de data science, mas essa ferramenta opensource e web é incrível para criar e compartilhar documentos que relacionam texto e programação. Seu direcionamento orientado a documentos torna o trabalho de construir e rodar um estudo com dados muito mais simples e direto.
A ferramenta me permite compartilhar um documento com qualquer pessoa, que por sua vez pode executar exatamente o mesmo código que eu, enquanto avaliar a analise feita no documento.
Além disso, tenho usado Conda para gerenciar ambiente de python no macos, que é uma mão na roda para organizar o que estou estudando sem que tenha que poluir todo meu ambiente real da maquina.
Atualmente existem várias opções para gerenciar documentos através de notebooks, com JupyterLab, GoogleColab e VSCode sendo os principais.
Eu também estou usando o nVim com o NvChad para programar, que foi um baita trabalho para organizar todo o ambiente para executar os notebooks através do plugin Molten... culpa principalmente do imagemagick que até nos dias de hoje acaba tirando alguns cabelos dessa cabeça branca...
Foi um desafio interessante configurar o neoVim para trabalhar com python, com as funcionalidade de LSP, autocomplete e formatação funcionando. Realmente o tempo mudou e o vim está uma ferramenta incrível!
Quem quiser conferir as configurações que fiz, aqui está: Neovim Config on Github
O curso tem sido muito bacana focar completamente no lado técnico, e tenho compartilhado tudo publicamente que estou fazendo no meu Github, caso você tenha interesse de conhecer mais.
É interessante conhecer um pouco do que estou fazendo, e pra isso quero deixar um exemplo de uma das questões que respondi na última semana, que fazia parte do modulo de Inferência Estatística, e que direciona para o trabalho dessa disciplina, que é usar o que aprendemos para um problema real, fazendo uma apresentação "de negócios".
Nesta última semana, no final do modulo semanal, tive que resolver várias questões de Inferential Statistics, e quero deixar aqui de referência.
O conteúdo abaixo foi retirado do notebook que mantenho no github:
Um exemplo de Assignment
Question
The Houses data file at the book’s website lists, for 100 home sales in Gainesville, Florida, several variables, including the selling price in thousands of dollars and whether the house is new (1 = yes, 0 = no). Prepare a short report in which, stating all assumptions including the relative importance of each, you conduct descriptive and inferential statistical analyses to compare the selling prices for new and older homes.
Data Report
This report aims to compare selling prices of new and old homes using data from Gainesville, Florida, housing dataset. The analysis will focus on whether there is a statistically significant difference in selling prices based on the "new" status of a house.
Data Overview
The dataset includes various attributes related to the houses, and we will focus on the information of pricing and wether the house is new or not, to help us understand how Prices and New status interact.
When looking at the first graph, containing all houses divided between New & Old, we see an evident disparity in the Mean and Median values, with new houses accounting for over 100% the price average of an old house. Max price values for new and old house are similar (new: `$`866k, old: `$`800k), but the box graph show the evident outlier in the case of old house. The vast majority (top 75%) of old houses are bellow `$`240k
An interesting information that the box plot can show us is that, although old house can reach a maximum price similar to a new house upper quartile price range, these can be considered outliers, and will affect the analysis of this sample data. In general terms, old houses are sold by a far lower price than new houses.
Descriptive Statistics
New Homes:
- Mean Selling Price: `$`436k
- Standard Deviation: `$`219k
Old Homes:
- Mean Selling Price: `$`208k
- Standard Deviation: `$`121k
Hypothesis Testing
- Null Hypothesis : There is no difference in selling prices between new and old homes.
- Alternative Hypothesis : There is a difference in selling prices between new and old homes.
- T-statistic: 5.3183
- P-value: 0.000001
A T-statistic of 5.3183 suggests that the difference between the means of the two groups you are comparing is quite large relative to the variability in your data. This high value indicates strong evidence against the null hypothesis, which typically states that there is no difference between the group means.
The P-value of 0.000001 provides overwhelming evidence against the null hypothesis, suggesting that it is highly unlikely that any observed differences are due to random chance.
Conclusion
We can conclude that there is a statistically significant difference between the selling prices for the two groups being compared.
"Meu grupo de egressos tem aproximadamente 50 pessoas" O grupo de egressos são as pessoas que já se formaram e ajudam os novatos?