Ou: o roadmap que eu escolhi usar para estudar
Autodidatismo é uma qualidade fundamental em praticamente qualquer tipo de profissional. E certamente é uma característica central quando falamos de tecnologia. Afinal de contas, com tantas tecnologias, linguagens, ferramentas, frameworks e novidades surgindo a cada dia, aprender sozinho se torna uma característica divisora de águas. Mas ao mesmo tempo que essa habilidade é fundamental, as dificuldades atreladas a ela são igualmente imensas: o que estudar? Como estudar? Por onde estudar? Por que escolher o curso X ao invés do Y? Livro físico ajuda? As perguntas são muitas, mas as respostas são poucas. Para que eu não me perdesse nessa jornada, escolhi tomar duas trilhas simultâneas: os cursos da Alura e um roadmap original do LinkedIn escrito pelo cientista de dados Odemir Depieri Jr. Mas aqui eu deixarei somente o roadmap com algumas considerações (sobre a Alura e seus cursos eu posso falar em outra oportunidade com a profundidade que ela merece). Então, vamos a ele!
O roadmap inteiro pode ser acessado nesse link. Recomendo que dê uma olhada também nos outros materiais que o Odemir disponibilizou.
Módulo 1: Introdução à ciência de dados
Introdução à ciência de dados
Esse módulo é composto somente desse item, mas é de grande importância. Aqui, por introdução, entenda uma conceituação dos principais termos, funções, aplicações e nomes ligados à ciência de dados. Entender o que é e o que não é responsabilidade desse profissional, em quais mercados ele se insere, como é o dia a dia do trabalho, o que esse profissional precisa saber... Enfim, tudo isso pode ser usado para que o estudante de ciência de dados saiba exatamente para onde está indo na sua jornada. Alguns vídeos de recomendação sobre esse ponto são: "10 MAIORES DÚVIDAS SOBRE CIÊNCIA DE DADOS | Cientista de dados responde | FAQ", "Quais as profissões em Ciência de Dados? com Mikaeri Ohana" e "O que faz uma Cientista de Dados? com Mikaeri Ohana"
Módulo 2: Linguagem de Programação (Python ou R)
Variáveis
Operadores
Estrutura básica de dados
Loop de repetições
Estrutura de condições
Métodos de funções
Uso de bibliotecas
Tratamento de erro
Programação para o cientista de dados é como os instrumentos do músico: é a ferramenta básica de trabalho. Tudo será feito de forma digital e autmatizada. Afinal de contas, não tem como se processar milhões de dados de alguma empresa na mão ou na calculadora. Para isso são necessárias ferramentas mais robustas e mais customizáveis. E é aí que surgem as linguagens de programação. O Python e o R são as duas linguagens mais usadas hoje em dia, cada uma de uma forma. Enquanto o R pode ser usado para fazer análises, construir gráficos e tabelas, mostrar dados e resultados, o Python pode ser usado para praticamente tudo. Criar modelos matemáticos complexos se torna uma atividade quase trivial quando essas linguagens são bem dominadas. Assim sendo, foque no estudo delas e tenha uma base sólida o bastante antes de prosseguir.
Módulo 3: Banco de Dados (SQL)
Introdução à banco de dados
Consultas em geral
Manipulação de dados
JOIN
Funções
Querys
Se a linguagem de programação é o instrumento do músico, o banco de dados é seu repertório. Aqui são armazenados os dados que serão analisados e modelados posteriormente. Entender esses bancos é de fundamental importância, uma vez que é praticamente impossível armazenar as quantidades imensas de dados localmente ou em ferramentas do dia a dia, como excel, bloco de notas dentre outros.
Módulo 4: Biblioteca para modelagem de dados
Biblioteca para modelagem de dados
Python (Pandas, Numpy)
R (data.table, plyr, MissForest, MissMDA, Outliers)
Essas bibliotecas são utilizadas para simplificar e otimizar o trabalho com dados e o trabalho matemático. Não é necessário implementar cálculos complexos manualmente, uma vez que eles já estão por baixo dos panos. Conhecer essas bibliotecas é fundamental para que o cientista de dados possa focar somente nos tópicos importantes, como analisar os resultados ou modelar os dados. Para o Python, a bilbioteca Pandas é extremamente útil para o trabalho com tabelas, seja para criar essas tabelas, editar, configurar e calcular algumas métricas sobre as linhas e colunas. Já a biblioteca Numpy carrega modelos matemáticos, fórmulas, equações e cálculos de modo otimizado e simplificado. Basta chamar a função necessária e capturar o resultado.
Módulo 5: Data Visualization
Biblioteca para visualização de dados (análise gráfica)
Python (Matplotlib, Seaborn)
R (ggplot2, googlevis)
Essas bibliotecas tem por objetivo permitir a visualização de gráficos dos mais diversos tipos: barras, pizzas, matriz de confusão, topográfico, projeções geográficas e quaisquer outros tipos que você possa querer fazer. Elas são extremamente úteis e customizáveis, permitindo que sejam editadas mesmo nos menores detalhes, de modo a tornar a visualização o mais precisa possível. E uma boa visualização pode ser a diferença entre um bom projeto e um ruim.
Módulo 6: Estatística
Estatística descritiva univariada
Medidas de dispersão
Medidas de assimetria e curtose
Medidas de dispersão
Medidas de associação entre variáveis quantitativas
Probabilidade
Variáveis aleatórias e distribuição de probabilidade
Distribuições discretas
Distribuições contínuas
Distribuições de probabilidade conjunta
Inferência estatística e principais teoremas de probabilidade
Aqui começa a matemática propriamente dita, e é aqui que muitos se assustam. Bom, é necessário dominar o tema, uma vez que o material de trabalho do cientista são os dados (geralmente númericos), e a função da estatística é o estudo de quantidades grandes de números. Mas também é importante notar que a maior parte do tempo será investido em análise dos modelos ao invés da criação dos mesmos. Ou seja, mesmo que você tenha um pequeno problema aqui ou ali com contas, saber interpretá-las é mais importante do que de fato saber fazê-las, então não se assuste se seu background de matemática básica não é tão forte assim.
Módulo 7: Modelos de Regressão
Regressão linear - simples
Regressão linear - múltipla
Análise de resíduos
Regularização L1 e L2
Modelos lineares generalizados
Regressão polinomial
Esses modelos são extremamente úteis, dados que eles são os responsáveis por prever comportamentos, encontrar padrões e definir ações. É aqui que o trabalho do cientista de dados se torna pragmático. Um exemplo: você está analisando as informações sobre uma determinada loja para planejar ações de marketing e logística para uma determinada época. Em mãos você têm os dados de venda dos últimos 5 anos, mês a mês, e planeja verificar em quanto será necessário aumentar o estoque para evitar queda na faturação no final desse ano. Para isso, você percebe uma tendência de aumento médio ano a ano, sempre comparando o mesmo mês, de 2% (ou seja, em janeiro de 2021 se vendeu 2% a mais do que janeiro de 2020, que vendeu 2% a mais do que em janeiro de 2019 e por aí vai). Assim, é possível se extrapolar esse dado e prever o quanto será vendido em janeiro de 2022, o que permite que o lojista possa reforçar o estoque na medida certa (nem a mais para não ter material parado, nem a menos para perder venda). Esse tipo de análise e comum, e pode ser extremamente simples como nesse exmplo ou muito mais complexa, como são os casos reais.
Módulo 8: Modelos de Classificação
Naives Bayes
Árvores de decisão
KNN
Regressão logística
SVM
Redes neurais artificiais
Esses modelos tem objetivo classificar objetos segundo características definidos, em geral, pelo próprio algoritmo. Ou seja, ao observar a massa de dados, o algoritmo irá buscar alguns padrões entre esses dados e determinar alguns métodos de classificação. Por exemplo: suponha um cientista de dados trabalhando em uma empresa financeira. Para essa empresa, classificar os clientes como "bons clientes" e "maus clientes" pode significar uma diferença substancial no rendimento final. Essa classificação, por sua vez, é impossível de ser feita manualmente. Como determinar o que é um bom cliente? Quais características/parâmetros devem ser levados em conta? Questões assim não são possíveis de serem respondidas manualmente. Para isso esses algoritmos são utilizados.
Módulo 9: Modelos de Clusterização + redução de dimensão
K-Means
DBSCAN
PCA
LDA
Kernel PCA
A clusterização se assemelha um pouco com a classificação. Mas aqui também entram algoritmos de redução de dimensão. Mas o que é isso, afinal de contas? Redução de dimensão é um processo matemático que permite transformar massas enormes de dados em massas menores, mais fáceis de trabalhar e mais precisas. Esse processo sempre leva a perda de informação, mas essa perda é controlável, de modo a aumentar a eficiência e velocidade do algoritmo sem perder informação importante. Tomando como exemplo o cientista de dados de uma empresa de finanças, para determinar se um cliente pode ser considerado um "bom cliente" ou um "mau cliente" é necessário avaliar algumas coisas, como renda, número de cartões, valor médio da fatura... Mas algumas informações que estão disponíveis podem não agregar muito ness resultado, como número de filhos, idade, status civil dentre outros. Para isso é realizado uma redução de dimensionalidade, de modo a otimizar o processo computacional.
Módulo 10: Série Temporal
Média móvel
Suavização exponencial simples
Suavização exponencial simples e amortecida
Holt winters
Arima
Auto arima
Uma série temporal pode ser entendida como um conjunto de dados que são temporalmente dependetes e que possuem relação com os dados vizinhos. As vendas em uma loja, o número de pessoas em um shopping, os gastos no cartão de crédito de um cliente... Todas essas séries se encaixam nessa definição. O estudo das ferramentas acima permitem encontrar com relativa facilidade a relação entre o dado observado e os dados a sua volta, permitindo modelar e encontrar padrões mais fáceis e aplicáveis a nível de negócio.
Módulo 11:Métricas de avaliação
Acurácia
F1 Score
Precisão
Recall
Matriz de confusão
AUC - Area under the ROC curve
Log loss
Mean squared error - MSE
Mean absolute error - MAE
Mean absolute percentage error - MAPE
R2
Por fim, as métricas de avaliação são usadas para avaliar os modelos criados: taxa de erro/acerto, acurácia, quantidade de falsos positivos e falsos negativos, erro médio absoluto e relativo... Todas essas métricas permitem entender como o modelo está funcionando, como melhorá-lo e quando e como ele falha, permitindo assim melhores decisões.
Lembrando que esse roadmap é um dentre vários possíveis. E no final das contas não há nenhum que seja necessariamente melhor do que os outros. Cada roadmap tem suas vantagens, desvantagens e particularidades. Não se atenha somente a um nem ache que qualquer caminho é definitivo e derradeiro. Use essas trilhas como norte para seus estudos e se baseie nelas somente enquanto elas fizerem sentido para você. E caso você veja necessidade de aprender ou abordar temas distintos que não foram contemplados aqui, sinta-se livre para buscar esses outros conhecimentos. Afinal de contas, um mapa nunca vai ser o terreno, e a trilha se faz caminhando.
Kommentare