MC886 — Aprendizado de Máquina
Instituto de Computação (IC/Unicamp)Profa. Sandra Avila (sandra@ic.unicamp.br)
Avisos Importantes:
- [16/12/2019] Todas as notas foram divulgadas.
- [06/11/2019] Todas as aulas acontecerão na sala PB06.
- [29/09/2019] As notas do T1 foram divulgadas. Comentários para cada trabalho estão no Moodle.
- [24/07/2019] Não teremos aula nos dias 05/08/2019 e 07/08/2019 devido à Semana de Computação da Unicamp (SECOMP).
Horário e Local: Segundas e quartas, das 19h às 21h. Sala PB09 PB06.
Atendimento: O horário de atendimento será prestado sempre depois das aulas pela professora, ou pelo Slack (ml-unicamp-2019.slack.com), ou agendado com antecedência por e-mail com o PED Erik Perillo (erik.perillo@gmail.com) ou a PAD Akari Ishikawa (ueda.aka@gmail.com).
Programa da Disciplina: Introdução ao Aprendizado de Máquina, Regressão Linear, Regressão Logística, PCA e LDA, k-means, Rede Neural, Deep Learning, SVM e Kernels, Boosting e Random Forest.
Data | Assunto | Material da Aula | |
---|---|---|---|
05/08/2019 | Semana de Computação da Unicamp (SECOMP) | ||
07/08/2019 | Semana de Computação da Unicamp (SECOMP) | ||
12/08/2019 | Introdução e Plano de Desenvolvimento | Aula | |
14/08/2019 | Regressão Linear | Aula, Linear Regression: A friendly introduction | |
19/08/2019 | Regressão Linear | Aula | |
21/08/2019 | Regressão Logística | Aula, Logistic Regression, IPython Notebook | |
26/08/2019 | Regularização | Aula | |
28/08/2019 | Métricas/Protocolos de Avaliação | Aula | |
02/09/2019 | Bases & Problemas em ML | Aula | |
09/09/2019 | Redes Neurais | Aula | |
11/09/2019 | Redes Neurais | Aula, Neural Networks by 3Blue1Brown | |
16/09/2019 | Redes Neurais | Aula | |
18/09/2019 | k-means | Aula | |
23/09/2019 | Clustering | Aula, IPython Notebook | |
25/09/2019 | Clustering | Aula, k-means and Hierarchical | |
30/09/2019 | Redução de Dimensionalidade | Aula | |
02/10/2019 | PCA & LDA | Aula | |
07/10/2019 | Produzindo para YouTube | ||
09/10/2019 | t-SNE & Deep Learning (Introdução) | Aula, t-SNE, Clearly Explained & IPython Notebook | |
14/10/2019 | Redes Neurais Convolucionais | Aula, A friendly introduction to CNNs | |
16/10/2019 | CNNs & Arquiteturas | Aula | |
21/10/2019 | CNNs & Arquiteturas | Aula | |
23/10/2019 | CNNs & Treinamento | Aula | |
30/10/2019 | Redes Neurais Recorrentes | Aula, Código | |
04/11/2019 | Redes Neurais Recorrentes | Aula | |
06/11/2019 | Ensemble Learning | Aula | |
11/11/2019 | Aprendizado por Reforço (Esther Colombini) | Aula | |
13/11/2019 | Aprendizado por Reforço (Esther Colombini) | ||
25/11/2019 | SVM & Random Forests | Aula, SVMs: A friendly introduction | |
28/11/2019 | Apresentação dos Projetos Finais | Vídeos |
Linguagem de Programação: A linguagem de programação utilizada na disciplina é Python.
Avaliação: A avaliação será baseada na participação ativa em sala de aula, atividades propostas, e projetos práticos, sendo:
- Ao final da aula, a(o) aluna(o) deverá enviar via Moodle qual foi o ponto de maior dúvida da aula (D), uma pergunta sucinta. Caso não tenha dúvidas (sério?), o(a) aluno(a) deverá ressaltar o ponto que achou mais interessante. Respostas do tipo “não tive dúvidas” ou respostas em branco não serão aceitas.
- Quatro tarefas em dupla, T1, T2, T3 e T4. O código e o relatório deverão ser entregues via Moodle.
- Um projeto final PF a ser realizado em grupo:
- A(O) aluna(o) só poderá fazer o projeto final PF caso tenha entregue as quatro tarefas T1, T2, T3 e T4.
- Os grupos devem ter de 3 a 4 alunas(os), necessariamente.
- O código e o relatório deverão ser entregues via Moodle, sendo que o relatório deve apresentar uma explicação sobre a técnica implementada, ilustrações dos resultados, e uma discussão sobre os resultados obtidos em formato de artigo científico, no modelo sugerido pela professora.
- O projeto deverá ser apresentado em sala, pelo grupo, na data agendada.
- A média final, M, será calculada como: M = 0,1 x T1 + 0,2 x T2 + 0,15 x T3 + 0,1 x T4 + 0,4 x PF + 0,05 x D
- Aprovada(o): se M ≥ 5.0 e Frequência ≥ 75%
- Reprovada(o): se M < 5.0 ou Frequência < 75%
Submissão de Atividades: Todas as atividades da disciplina deverão ser submetidas pelo sistema Moodle na área correspondente da disciplina.
Datas das Entregas das Avaliações: As datas abaixo estão sujeitas a alterações.
- Maior Dúvida (D): Até às 15h do dia seguinte a aula.
- Tarefa 1 (T1):
28/08/201902/09/2019 - Tarefa 2 (T2):
23/09/201905/10/2019 - Tarefa 3 (T3):
14/10/201903/11/2019 - Tarefa 4 (T4):
06/11/2019 - Projeto Final (PF):
- Submissão da proposta (tema e base de dados):
04/09/201909/09/2019 - Submissão do baseline:
07/10/201919/10/2019 - Apresentação (vídeos de até 4 minutos):
25-27/11/2019. Exemplos 2017.2 Exemplos 2018.2 - Submissão do PF (relatório e código): 06/12/2019
- Submissão da proposta (tema e base de dados):
Observações:
- Não haverá provas ou exame para essa disciplina.
- Qualquer tentativa de fraude nas atividades da disciplina implicará em média final M = 0 (zero) para todas as pessoas envolvidas, sem prejuízo de outras sanções.
Referências: A professora não seguirá um livro texto específico, entretanto, os seguintes livros cobrem o que será visto em aula:
- “Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow”, A. Géron, 2019.
- “Pattern Recognition and Machine Learning”, Christopher M. Bishop, 2006.
- “Pattern Classification”, David G. Stork, Peter E. Hart, and Richard O. Duda, 2000.
- “Deep Learning”, Ian Goodfellow , Yoshua Bengio, Aaron Courville, 2016.