Os Melhores Cursos Gratuitos Para Começar a Aprender Machine Learning e Data Science

Data Science (ou ciência de dados) é uma área nova e muito promissora. Diversas fontes indicam que estamos precisando de mais data scientists do que conseguimos treinar. Neste artigo quero colocar cursos que você pode fazer para iniciar a sua jornada na área.

Todos eles são oferecidos por professores e universidades renomadas, e podem ser feitos gratuitamente pela internet. Além disso, possuem um conteúdo prático bastante forte, o que te dará condições para começar a aplicar as técnicas demonstradas em dados de seu interesse.

O foco destes cursos é em Machine Learning, que inclui boa parte das ferramentas mais utilizadas dentro da ciência de dados.

Machine Learning – Coursera

Este é o curso mais popular de introdução a machine learning online. Existem vários tipos de data scientists, mas boa parte do trabalho exige conhecimento de modelos que aprendem com dados. Neste curso é possível aprender superficialmente como funcionam diversos algoritmos, e como usá-los para resolver problemas reais.

O curso inicia explicando o que é Machine Learning e segue para a explicação de modelos simples, como a regressão linear, e vai construindo as bases para modelos mais complexos, e bastante utilizados, como Redes Neurais e SVMs. Além disso, a oportunidade de implementar partes destes algoritmos nos ajuda a entender melhor o funcionamento deles, e mesmo que você acabe nunca tendo que implementar um algoritmo destes do zero, isso vai te ajudar a conhecer suas características e limitações para usá-los em situações práticas.

Inicia com aprendizado supervisionado, e no fim faz uma breve excursão por tópicos de aprendizado não supervisionado e detecção de anomalias. Além disso, existem vídeos com técnicas e boas práticas para avaliar e otimizar um modelo, evitar erros como overfitting ou underfitting, e modificações para tornar possível o uso destes algoritmos em dados que não cabem na memória (o famoso big data).

O professor Andrew Ng é um dos fundadores do Coursera, além de professor da universidade de Stanford e cientista-chefe no Baidu.

É um curso bastante prático, e exige apenas familiaridade com álgebra linear. Dentro do curso existem vídeos que revisam conceitos que serão importantes. A linguagem utilizada para os trabalhos de programação é Octave. Existem vídeos dentro do curso que ensinam o básico sobre a linguagem, apenas o necessário para poder completar o curso.

Este curso é oferecido “on demand”, ou seja, pode ser iniciado a qualquer tempo.

Statistical Learning – StanfordX

Uma introdução ao Machine Learning do ponto de vista estatístico. Este curso oferecido por dois professores bastante respeitados na área de estatística, Rob Tibshrani e Trevor Hastie, é bastante prático e traz uma abordagem mais próxima dos conceitos estatísticos por trás de cada modelo, sem tanto foco na parte computacional.

Começa com uma visão geral da área de Statistical Learning, explica problemas de classificação e regressão e ferramentas básicas para modelagem linear. Depois nos leva por métodos de avaliação de modelos, e técnicas para otimizar o modelo levando em conta a generalização para novos dados. Por fim são apresentados algoritmos mais avançados, como SVM e Random Forests, além de uma breve passagem por métodos de aprendizado não supervisionado.

Este curso utiliza a linguagem R, que é largamente utilizada na área de estatística. Existem trabalhos de programação, mas são voltados para a utilização dos modelos, e não para a implementação.

Este curso normalmente é oferecido uma vez por ano, em meados de Janeiro.

Learning from Data – EdX

Este curso, oferecido pelo professor Yaser Abu-Mostafa aplica uma abordagem mais computacional mas, diferente do curso do Andrew Ng, existe uma boa dose de teoria, que acaba ajudando a entender o funcionamento dos modelos de forma mais completa.

Nas primeiras aulas o professor nos explica sobre o conceito de aprendizado de máquina, e a matemática que fundamenta a teoria que nos garante a possibilidade de usar um algoritmo para aprender uma tarefa através de dados. A teoria é apresentada de dois pontos de vista: VC Dimension, e Bias-Variance Tradeoff.

Depois disso, ele apresenta alguns modelos como regressão logística, redes neurais e SVMs. São demonstradas algumas técnicas para otimizar os modelos de maneira que sejam úteis numa aplicação prática.

Por fim, somos apresentados a Kernels, que são transformações de variáveis, bastante importantes, principalmente pelo sucesso dos SVMs, e uma visão geral sobre áreas de estudo em Machine Learning que podem ser seguidas após o curso.

Apesar de não haver uma confirmação sobre uma próxima sessão, vale a pena citá-lo e todos os materiais (vídeos e tarefas) estão disponíveis online. Ele não exige uma linguagem de programação específica, é possível completar as tarefas em qualquer linguagem.

Bônus – The Analytics Edge – EdX

Este curso, oferecido pelo MIT e pelo professor Dimitris Bertsimas e sua equipe através da plataforma EdX foca bastante na aplicação de métodos de machine learning usando R. Boa parte do curso é passada em exemplos de uso das técnicas, e as tarefas são extensivas, para que os alunos possam explorar todos os comandos ensinados. Toda semana temos um novo estudo de caso.

Além de ensinar métodos de aprendizado supervisionado, e não supervisionado, no fim eles falam sobre métodos de otimização que, além de interessantes por si só, são a base de muitos algoritmos de machine learning.

Um ponto que chama a atenção neste curso e que, no momento em que escrevo este artigo, não é oferecido nos outros, é que durante o curso uma das tarefas é participar de uma competição, oferecida apenas para alunos do curso, na plataforma Kaggle. Esta é uma oportunidade de usar as ferramentas num caso próximo da realidade, tendo que criar uma solução usando o conhecimento adquirido no curso.

Esta parte da competição é de extrema importância. Por experiência própria eu digo que nada ensina mais do que ver um dataset na sua frente e ter que decidir sozinho qual é a melhor direção a se tomar para fazer a análise.

Como escolher um curso?

Se você me perguntar qual deles deve fazer, eu vou responder “todos”. Apesar de boa parte do material ser o mesmo, cada um deles te dá uma visão diferente do Machine Learning. Com Andrew Ng você tem uma apresentação rápida e superficial, bastante prática, dos algoritmos. Já no Statistical Learning, apesar de bem prático, há uma preocupação maior com conceitos estatísticos clássicos, como p-value e intervalos de confiança. No curso da Caltech, Learning from Data, é possível entender a teoria que fundamenta o Machine Learning, a razão matemática para um algoritmo conseguir aprender através dos dados.

Se você estiver disposto a fazer todos, eu recomendo fazê-los na ordem que eles estão dispostos no artigo.

  1. Com a demanda por esse tipo de conhecimento, este artigo é uma ponte de acesso de muitos profissionais brasileiros. Parabéns pelo trabalho de sumarização e pena iniciativa.

  2. Douglas Arantes

    Parabéns pelo artigo, e também por seu desempenho nas competições do Kaggle.

    Poderia informar quais foram os passos para conseguir trabalhar como consultor nessa área, onde encontrar oportunidades ?

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *