Search This Blog

Sunday, February 12, 2017

Como está sendo o Curso de Métodos Computacionais no Programa de Doutorado em Economia da UnB em 2017?



Como já discutido aqui, o curso de métodos computacionais nesse semestre será dividido em três partes: A primeira parte lida com tópicos básicos de programação estruturada e orientação a objeto. A segunda parte com projeto de algoritmos. A terceira parte foca em Aprendizagem de Máquinas e Deep Learning.


A pretensão básica do curso é que o bom estudante depois do curso terá habilidade de lidar com qualquer tópico considerado em aqui, mesmo que o tópico específico não tenha sido discutido em sala.

A versão anterior desse curso, você pode encontrar aqui.
Existem diferenças entre essa nova versão do curso e a versão anterior? Em 2016, não houve tempo para se discutir os modelos bayesianos e também a parte de redes neurais foi muito resumida. Espera-se que essa restrição possa resolvida nesse semestre.

Por favor, dê uma olhada na lista de pré-requisitos (no final do post). Principalmente aquele que vêm do fundo do meu coração.

Abaixo você pode encontrar um sumário dos tópicos que serão discutidos em sala:

PARTE I - Noções de Programação

1) Introdução a programação estruturada

Aula 1

2) Coleções de dados

Aula 2

3) Recursões

Aula 3

4) Noções de programação orientada a objeto

Aula 4

5) Complexidade computacional

Aula 5

6) Pilhas e filas

Aula 6

Parte II - Projeto de algoritmos

1) Força bruta

Aula 7

2) Força bruta II - Busca exaustiva

Aula 8

3) Força bruta III - Busca exaustiva em grafos

Aula 9

4) Redução e conquista

Aula 10

5) Divisão e conquista

Aula 11

6) Transformação e conquista

Aula 12

7) Backtracking

Aula 13

8) Branch and Bound

Aula 14

9) Programação Dinâmica

Aula 15

10) Estratégias Gananciosas

Aula 16

11) Melhoria Iterativa

Aula 17

12) Quick Sort

Aula 18

13) Compromisso entre eficiência temporal e espacial

Aula 19

14) Aula extra de métodos computacionais: Solução da prova de 2016 (Aula gentilmente dada pelo monitor do Curso Cauê Melo)

Aula Extra

INTERLÚDIO

[Ferramentas]

1) Introdução aos Métodos de Monte Carlo

Aula 20

2) Análise numérica e otimização
[Atividade extra-classe]

Aula 21


PARTE III - Aprendizagem de Máquinas (Machine Learning)

1) Introdução a aprendizagem de máquinas

Aula 22

2) Modelos lineares de regressão (Modelos lineares de funções de base)

Aula 23

3) Modelos Bayesianos

Aula 24

4) Previsão (Big picture)

Aula 25

5) Modelos lineares de classificação

Aula 26

6) Redes neurais e deep learning

Aula 27

7) Aprendizagem por reforço

Aula 28

8) Processamento de linguagem natural

Aula 29

AVALIAÇÂO

A primeira parte e a segunda parte será avaliada através de 1 prova e exercícios computacionais individuais. A segunda parte será avaliada através de exercícios computacionais individuais.

REFERÊNCIAS

Existe uma lista gigante de referências por tópico. Existe um resumo dessas referências aqui. Se você quiser uma lista mais detalhada, dê uma olhada nas aulas individuais da nossa versão anterior do curso aqui.

PERGUNTAS FREQUENTES

Esse é um curso para aprender métodos computacionais para econometria?

Não, mas vários tópicos tangenciam problemas similares considerados em econometria. Normalmente, um curso usual de Machine Learning incluiria um tópico com noções básicas de modelos de regressão, mas como esse curso está no programa de economia não faz muito sentido ficar explorando isso. Adicionalmente, como já mencionado, se o estudante aprende bem as partes I e II do curso, ele terá habilidade de lidar com qualquer tópico considerado em aqui. Além disso, as técnicas utilizadas para replicar os exemplos do Wooldridge em Python são triviais se você aprender o conteúdo do curso.

Qual a linguagem que será usada no curso?

De uma forma geral o curso não deve focar em nenhuma linguagem específica. Entretanto, nesse semestre a maioria dos exemplos será em Python, embora você pode encontrar exemplos em R, Matlab, C++, Java desenvolvidos em versões anteriores do curso. A maioria dos exercícios da primeira parte não dependerá especificamente de nenhuma linguagem. Alguns exercícios da segunda parte só poderão ser implementados em Python.

Quais os pre-requisitos para o curso?

Não temos pre-requisitos específicos, mas vários tópicos dependem de conhecimentos de Álgebra-Linear, Otimização e maturidade em matemática, estatística ou econometria equivalente a de um aluno de mestrado em economia de um bom programa.


FROM THE BOTTOM OF MY HEART (o pre-requisito mais importante):

De fato, um pre-requisito fundamental em qualquer curso que leciono é muita disposição para aprender e lidar com coisas novas para resolver novos problemas. Os estudantes devem ter ou desenvolver a capacidade de lidar com um problema novo que estende o material em sala de aula sem a ajuda do professor, tendo em mãos apenas as referências básicas. Essa habilidade muito comum em estudantes da engenharia infelizmente não é muito explorada em estudantes de economia.

Deixar a arrogância em casa para ser capaz de perceber que não sabemos tudo e que existem sempre pessoas com mais conhecimento em um determinado tópico que nós mesmos. Aproveitar desse fato para aprender com os colegas e com o professor àquelas dimensões mais restritas.

Esse é um curso OPTATIVO e lúdico desenhado para o estudante e o professor se divertirem. Se você não está muito motivado com o curso ou acha que o curso não o acrescentará muito e você pretende manter uma atitude negativa e passiva ao longo do curso, existem dezenas de cursos mais adequados para você no programa.

Não sou aluno do Programa de Doutorado em Economia. Eu posso fazer o curso?

Sim. Você pode entrar em contato com a secretária do Programa de Pós-Graduação em Economia da UnB e verificar a disponibilidade de vagas para matrícula como aluno especial.

Posso assistir como ouvinte?

Infelizmente a UnB não permite esse tipo de aluno.


HORÁRIO: TERÇAS E QUINTAS 16 AS 18