/ciencia-de-dados-para-iniciantes

O objetivo deste repo é traduzir o curso encontrado em https://github.com/bodacea/datascienceforbeginners.

Ciência de Dados para Iniciantes

Slides, Jupyter Notebooks, referências e etc para serem utilizadas em Seções de Ciência de Dados para Iniciantes.

Introdução

Este é um curso de 12 horas, destinado para pessoas não desenvolvedoras de software que querem aprender e experimentar rapidamente técnicas de Ciência de Dados.

Este curso é estruturado da seguinte maneira:

  • Pré-seções:
    • Lista de leitura semanal: artigos e/ou capítulos de livros relacionados ao tema da semana que devem ser lidos antes de cada sessão.
    • Guia para configurações semanais: instruções para instalações de pacotes ou configurações que precisam ser feitas antes de cada sessão.
  • Seções:
    • Introdução ao tema que será abordado
    • Experimentos práticos com Python/R relacionados a sessão
  • Pós-seções: outras leituras relacionadas ao tema abordado.

Esta estrutura contempla 5-7 conceitos por semana e converge para um bom conhecimento sobre como Cientistas de Dados trabalham e possivelmente, como consequência, desperta um interesse em explorar profundamente a área.

Os exemplos utilizados durante este curso são extraídos de fontes gratuitas, que por sua vez, são provenientes de palestras ou dados utilizados por cientistas em outras empresas.

Este repositório é uma tradução do curso que pode ser encontrado em inglês aqui.

Seções

  1. Projetando e definindo o escopo de um projeto de Ciência de Dados
  2. Conhecendo Python
  3. Obtendo os dados
  4. Comunicando resultados
  5. Limpando e Explorando os dados
  6. Machine Learning (Máquina de Aprendizado)
  7. Lidando com dados textuais
  8. Lidando com dados geoespaciais
  9. Aprendendo relacionamentos entre dados
  10. Lidando com Big Data

sessão 1: Projetando e definindo o escopo de um projeto de Ciência de Dados

O que esta sessão aborda?

Introdução ao conteúdo e material de apoio necessários para cientistas de dados trabalharem a partir da especificação de um problema. É esperado que os participantes também comentem sobre as especificações do problema de ciência de dados existente.

O que é esperado ao final desta sessão?

Que os participantes:

  • Entendam algumas das necessidades e armadilhas que existem durante a especificação de um problema;
  • Iniciem a sua própria especificação de um projeto de ciência de dados;

O que é necessário preparar antes desta sessão?

Acessar sites como Kaggle.com, Drivendata.com e Datakind.org e procurar entender que tipo de desafios/perguntas estão sendo propostos, bem como o conjunto de dados oferecido e a quem se destinam as soluções requeridas.

sessão 2: Conhecendo Python

O que esta sessão aborda?

Introdução a uma das linguagens de progração mais utilizadas em projetos de ciência de dados: Python.

O que é esperado ao final desta sessão?

Que os participantes:

  • Tenham em seus computadores o seu próprio ambiente em Python e R;
  • Sejam capazes de rodar comandos básicos em Python;

O que é necessário preparar antes desta sessão?

  • Instalar pacotes conforme instruções que estão na pasta referencias;
  • Ganhar familiaridade com um Terminal;
  • Instalar Python e Git

sessão 3: Obtendo os dados

O que esta sessão aborda?

O que é um conjunto de dados e introdução a coleta de dados;

O que é esperado ao final desta sessão?

Que os participantes:

  • Tenham a ideia de que praticamente qualquer conjunto pode ser utilizado como um conjunto de dados;
  • Compreendam conceitos básicos de APIs;
  • Sejam apresentação a ferramentas de webscraping;

O que é necessário preparar antes desta sessão?

  • Download da ferramenta Tabula;
  • Pensar em dados que sejam relevantes para o seu projeto que uma máquina não consiga compreender sem um determinado programa (ex. planilha xls, pdf, imagens, mapas)

sessão 4: Comunicando resultados

O que esta sessão aborda?

Introdução a comunicação e visualização de dados através de ferramentas (Tableau, Highcharts/D3).

O que é esperado ao final desta sessão?

Que os participantes:

  • Tenham um conhecimento básico sobre como transmitir de maneira persuasiva um resultado através de uma visualização;
  • Instalem o Tableau e conheçam comandos básicos;

O que é necessário preparar antes desta sessão?

  • Download e instalação do Tableau;

sessão 5: Limpando e Explorando os dados

O que esta sessão aborda?

Esta sessão introduz técnicas de Data Manging e como explorar padrões em dados antes de utilizar algoritmos.

O que é esperado ao final destal sessão?

Que os participantes:

  • Tenham noção de como utilizar OpenRefine para aplicar Data Manging;
  • Obtenção de um conjunto de dados "limpo";
  • Utilizem a linguagem R para explorar padrões;
  • Sejam capazes de gerar gráficos exploratórios com o pacote Matplotlib (Python);

O que é necessário preparar antes desta sessão?

  • Instalação do Google OpenRefine Outcome;

sessão 6: Machine Learning (Máquina de Aprendizado)

O que esta sessão aborda?

Introdução a algoritmos de regressão e classificação utilizando Machine Learning (ML).

O que é esperado ao final desta sessão?

Que os participantes experimentem:

  • Algoritmos de regressão em um conjunto de dados utilizando Python e R;
  • Algoritmos de classificação em um conjunto de dados utilizando Python e R;

O que é necessário preparar antes desta sessão?

Esta sessão não requer preparação.

sessão 7: Lidando com dados textuais

O que esta sessão aborda?

Introdução a:

  • compreensão de textos como um conjunto de dados;
  • métodos e ferramentas utilizados para obtenção de textos;
  • métodos para encontrar padrões em textos;

O que é esperado ao final desta sessão?

Que os participantes:

  • Entendam conceitos básicos de análise de texto;
  • Percebam alguns problemas conhecidos na área de Mineração de Textos;

O que é necessário preparar antes desta sessão?

  • Instalação do pacote NLTK

Lidando com dados geoespaciais

O que esta sessão aborda?

Introdução a:

  • conceito de mapas como dados e visualização espacial;
  • técnicas e ferramentas utilizados para trabalhar com mapas (Gdal, Shapely, QGIS, CartoDB);

O que é esperado ao final desta sessão?

Que os participantes entendam conceitos básicos de dados espaciais, incluindo também problemas recorrentes conhecidos na área.

O que é necessário preparar antes desta sessão?

Aprendendo relacionamentos entre dados

O que esta sessão aborda?

Esta sessão aborda:

  • a teoria de redes sociais (social network) utilizada em Aprendizado de Máquinas;
  • algumas visualizações mais utilizadas na área (Gephi, NetworkX);

O que é esperado ao final desta sessão?

[completar]

O que é necessário preparar antes desta sessão?

[completar]

Lidando com Big Data

O que esta sessão aborda?

  • Introdução a conceitos de Big Data
  • Apresenta ferramentas, tais como Hadoop;
  • Explica o é streaming de dados;

O que é esperado ao final desta sessão?

O que é necessário preparar antes desta sessão?

  • Download Hadoop