Roteiro de aulas

Autor

Rascunho do roteiro de aulas.

Conteúdos

Lista não exaustiva de conteúdos a serem abordados. Os conteúdos listados aqui não precisam estar em ordem nem hierarquizados. É mais fácil listar o que apresentar antes de fazer qualquer tipo de organização mais complexa.

  1. O que é ciência de dados, definições e termos relacionados
  2. História da ciência de dados
  3. Introdução ou revisão da linguagem Python
  4. IPython
  5. Jupyter Notebooks
  6. Tipos de dados, estruturados (tabulares) e “não estruturados”
  7. NumPy
  8. Pandas
  9. SciPy
  10. SciKit Learn
  11. Matplotlib
  12. Seaborn
  13. Coleta de dados, web crawling/scraping
  14. Limpeza de dados, dados incompletos ou ausentes
  15. Dados categóricos vs numéricos e escalas de medida
  16. Estatísticas descritivas, média, mediana, medidas de dispersão, variância, correlação
  17. Ruídos, outliers
  18. Normalização de dados
  19. Redução de dimensionalidade (?)
  20. Visualização de dados, gráficos de barras, linha, boxplots, histogramas, etc
  21. Aprendizado de máquina (estatístico), supervisionado e não supervisionado
  22. Modelos de regressão e classificação clássicos
  23. Métricas de avaliação, acurácia, precisão, recall, etc
  24. K-means
  25. Projetos de ciência de dados, modelos como CRISP-DM, ZM
  26. Transformações de dados, combinações, filtros, conversões de valores, normalização, etc
  27. KNN (?)
  28. Modelos e processamento de dados “não estruturados” como imagens, texto
  29. Redes neurais, algoritmos genéticos, colônia de formigas, enfim, bioinspirados

Unidades

Disciplinas são por padrão organizadas em três unidades. Uma unidade pode ser vista como um subconjunto dos assuntos listados seguindo algum tema especificado. Aqui, com base nos assuntos listados, é tomada a decisão de definir como os temas das unidades:

  1. Preparação ou pré-processamento de dados
  2. Análise e visualização de dados
  3. Modelagem e aprendizado de máquina

Essa divisão possibilita um momento inicial de aclimatação ao conteúdo e às tecnologias (que podem ou não ser conhecidas pelos alunos), seguida de uma parte com mais estatística e finalizando com um pouco de aprendizado de máquina. Pode ocorrer de alguns assuntos pertencerem a múltiplos temas das unidades e a decisão de quando e o quanto desses assuntos.

Conteúdos por unidade

Definidos os temas das unidades, fica mais fácil selecionar os conteúdos para cada uma. Ignorando a ordem, na primeira unidade, temos:

  1. O que é ciência de dados, definições e termos relacionados
  2. História da ciência de dados
  3. Processos de ciência de dados: CRISP-DM, KDD, mineração de dados
  4. Introdução ou revisão da linguagem Python
  5. Tipos de dados: categóricos e numéricos
  6. Formato de dados: dados estruturados e não estruturados, formatos de arquivos
  7. Coleta de dados: bancos de dados ou bases de dados, web crawling ou scraping, criação de bases de dados
  8. Introdução a engenharia de dados
  9. IPython
  10. Jupyter Notebooks
  11. Pandas

Na segunda unidade:

  1. Escalas de medidas: nominal, ordinal, intervalar e racional
  2. Estatística descritiva: medidas de tendência, frequência, dispersão, distribuição, etc
  3. Correlação e covariância
  4. Visualização de dados: gráficos de barras, dispersão, linhas, histogramas, boxplots
  5. Qualidade de dados: dados ausentes, ruídos e outliers
  6. Transformação de dados: conversões de valores, normalização
  7. Introdução a modelagem de dados
  8. Numpy
  9. Matplotlib
  10. Seaborn

E na terceira unidade:

  1. Aprendizado de máquina
  2. Treinamento supervisionado e não supervisionado
  3. Regressão linear
  4. Classificação
  5. Avaliação de modelos
  6. Agrupamento: K-means
  7. Algoritmos bioinspirados
  8. Processamento de imagens e textos
  9. SciKit Learn
  10. SciPy

Aulas

Definir quais conteúdos se encaixam em cada aula é um pouco mais complexo, já que depende da quantidade de conteúdo abordado para o tempo de exposição e que, neste caso, não há uma experiência prévia para facilitar previsões. Como plano inicial, temos na primeira unidade:

  1. Abertura da disciplina: apresentações; plano de ensino; ambiente de desenvolvimento; próximas aulas
  2. Ciência de dados: histórico; definições; KDD e CRISP-DM; Big Data; Data mining; processos de desenvolvimento
  3. Bases de dados: tipos de dados; formatos e arquivos; armazenamento; bancos de dados; dados tabulares
  4. Fundamentos de Python: revisão da linguagem; entrada e saída; ambientes virtuais; interoperabilidade
  5. Python em computação científica: fundamentos; IPython; Jupyter notebooks
  6. Manipulação de dados: dados tabulares; Pandas; DataFrames
  7. Descoberta de dados: seleção; web crawling ou scraping; Requests
  8. Avaliação

Na segunda unidade:

  1. Amostragem de dados: população; amostra; representatividade; variabilidade; inferência dedutiva e indutiva
  2. Estatística descritiva: fundamentos; escalas de medida; medidas descritivas: tendência e dispersão; coeficiente de variação; NumPy
  3. Visualização de dados: gráficos; Matplotlib; Seaborn; análise exploratória de dados (EAD)
  4. Qualidade de dados: ausências; ruídos; outliers; limpeza
  5. Transformação de dados: conversão de valores; normalização; padronização
  6. Avaliação

Na terceira unidade:

  1. Aprendizado de máquina: definições; treinamento
  2. Modelagem de dados: regressão linear; classificação; agrupamento; algoritmos; SciKit Learn
  3. Avaliação de modelos: métricas de resultados; hiperparâmetros; hipóteses; SciPy
  4. Outros tópicos: algoritmos bioinspirados; dados não estruturados; ética
  5. Avaliação
  6. Encerramento da disciplina: recuperação e exame final
De volta ao topo