Curso
IA do 9.º ano: Python e aprendizagem automática
Usa Python, NumPy e pandas para treinar e avaliar modelos clássicos de aprendizagem automática.
Faz as lições por ordem. No fim, sabes escrever Python com estruturas de dados e funções reutilizáveis. Sabes somar vetores, calcular probabilidades e encontrar a média e o desvio-padrão. Sabes carregar, limpar e fazer gráficos de uma tabela com NumPy e pandas. Sabes ajustar uma reta aos dados, treinar classificadores de regressão logística, árvores de decisão e k vizinhos mais próximos, e agrupar dados com k-means. Sabes calcular acurácia, precisão e revocação, detetar o sobreajuste, comparar um modelo com uma base simples, e apresentar previsões de um conjunto de dados ambiental.
Como usar estas lições
- Começa na lição marcada Faz isto. Segue quando conseguires fazer sozinho a linha por baixo do título.
- Joga os Jogos primeiro. Depois faz os Testes. 8 de 10 certas para passar. As Fichas são em papel. As respostas estão em baixo.
- Cada lição apoia-se na anterior. Tira notas de cada experiência: o que mudaste, o que aconteceu e porquê.
- As lições de código usam Python num caderno online grátis. Usa só as ferramentas de IA que o teu professor aprova. Explica o código que a IA escreve por ti. Nunca ponhas dados pessoais num conjunto de dados que partilhas.
Cada lição tem jogos, testes e fichas.
0 de 36
Programação em Python
- 1Revisão da sintaxeEscreve Python com variáveis, condições e ciclos.
- Usa variáveis, tipos e f-strings.
- Escreve blocos if, for e while.
- Lê um traceback e corrige o erro.
- 2Estruturas de dadosEscolhe entre listas, tuplos, conjuntos e dicionários.
- Usa cada estrutura para o trabalho em que é melhor.
- Escreve list comprehensions e dictionary comprehensions.
- Aninha estruturas para guardar registos.
- 3Funções e módulosEscreve e testa funções reutilizáveis.
- Usa argumentos predefinidos e de palavra-chave.
- Escreve testes com assert.
- Importa as tuas funções de um módulo.
- 4Scripts de dadosEscreve um script que limpa um ficheiro de texto.
- Lê um ficheiro linha a linha.
- Corrige as linhas más e salta as vazias.
- Escreve os dados limpos num ficheiro novo.
Matemática para a aprendizagem automática
- 5VetoresSoma vetores e encontra a distância entre pontos.
- Representa um ponto de dados como vetor.
- Soma e escala vetores.
- Calcula a distância euclidiana e o produto escalar.
- 6ProbabilidadeCalcula probabilidades simples e condicionais.
- Calcula a probabilidade de um acontecimento.
- Calcula uma probabilidade condicional a partir de uma tabela.
- Simula lançamentos de moeda para verificar a resposta.
- 7EstatísticaEncontra a média, a variância e o desvio-padrão.
- Calcula cada um à mão e no código.
- Explica o que te diz o desvio-padrão.
- Compara 2 conjuntos de dados pela dispersão.
- 8Experiências de matemáticaDesenha os dados e descreve a dispersão.
- Desenha um histograma.
- Desenha um gráfico de dispersão.
- Descreve o centro, a dispersão e os valores atípicos.
Ciência de dados
- 9NumPyFaz contas em arrays inteiros com NumPy.
- Cria arrays e muda-lhes a forma.
- Usa operações vetorizadas em vez de ciclos.
- Indexa e fatia arrays.
- 10pandasCarrega, filtra e agrupa uma tabela com pandas.
- Carrega um CSV para um DataFrame.
- Filtra linhas e escolhe colunas.
- Agrupa e resume os dados.
- 11Limpar dadosTrata valores em falta e tipos errados.
- Encontra valores em falta.
- Preenche-os ou elimina-os, e explica a escolha.
- Corrige tipos errados e linhas duplicadas.
- 12VisualizaçãoFaz gráficos que respondem a uma pergunta.
- Escolhe o gráfico certo para a pergunta.
- Legenda os eixos e acrescenta um título.
- Encontra um gráfico enganador e corrige-o.
Bases da aprendizagem automática
- 13O que é a aprendizagem automáticaExplica como um modelo aprende um padrão a partir dos dados.
- Compara escrever regras e aprender com os dados.
- Define modelo, parâmetros e treino.
- Diz 3 usos reais da aprendizagem automática.
- 14Supervisionada e não supervisionadaDistingue tarefas supervisionadas de tarefas não supervisionadas.
- Diz que a aprendizagem supervisionada usa etiquetas.
- Diz que a aprendizagem não supervisionada encontra estrutura sem etiquetas.
- Separa 10 tarefas para cada grupo.
- 15O fluxo de trabalho MLLista os passos dos dados até um modelo a funcionar.
- Ordena os passos: pergunta, dados, características, treina, avalia, põe em uso.
- Diz o que pode correr mal em cada passo.
- Diz porque é que os passos se repetem.
- 16Compara tarefas de MLAssocia problemas a regressão, classificação ou agrupamento.
- Diz o que cada tarefa prevê.
- Associa 10 problemas a uma tarefa.
- Reescreve um problema como outra tarefa.
Regressão
- 17Regressão linearAjusta uma reta aos dados.
- Explica o declive e a ordenada na origem.
- Ajusta uma reta com scikit-learn.
- Desenha a reta sobre os dados.
- 18CaracterísticasEscolhe e escala características.
- Usa mais de uma característica.
- Escala as características para o mesmo intervalo.
- Codifica uma característica de categoria.
- 19ErroMede o erro com o erro quadrático médio.
- Calcula os resíduos.
- Calcula o erro quadrático médio e o erro absoluto médio.
- Desenha os resíduos para encontrar um padrão.
- 20Prever númerosTreina um modelo de regressão e prevê valores novos.
- Treina numa parte dos dados.
- Prevê o resto.
- Reporta o erro em unidades reais.
Classificação
- 21Regressão logísticaTreina um classificador de regressão logística.
- Explica como transforma uma pontuação numa probabilidade.
- Treina-o e prevê probabilidades.
- Muda o limiar e compara.
- 22Árvores de decisãoTreina uma árvore de decisão e lê as divisões.
- Treina uma árvore.
- Desenha e lê as divisões.
- Limita a profundidade e compara as pontuações.
- 23k vizinhos mais próximosClassifica com k vizinhos mais próximos e escolhe k.
- Explica como os k vizinhos mais próximos votam.
- Experimenta vários valores de k.
- Diz porque é que a escala importa para os k vizinhos mais próximos.
- 24Treina um classificadorCompara 3 classificadores num conjunto de dados.
- Treina os 3 na mesma divisão.
- Compara as pontuações.
- Escolhe um e explica porquê.
Aprendizagem não supervisionada
- 25SemelhançaMede quão semelhantes são 2 amostras.
- Usa a distância euclidiana.
- Usa a semelhança do cosseno.
- Encontra os itens mais semelhantes num conjunto de dados.
- 26k-meansAgrupa dados com o agrupamento k-means.
- Percorre o k-means à mão.
- Corre-o no scikit-learn.
- Desenha os grupos.
- 27Escolher kUsa o método do cotovelo para escolher um número de grupos.
- Corre o k-means para vários valores de k.
- Desenha a curva do cotovelo.
- Confere que os grupos fazem sentido.
- 28Agrupa amostrasAgrupa um conjunto de dados e descreve cada grupo.
- Agrupa um conjunto de dados real.
- Resume cada grupo.
- Dá um nome a cada grupo.
Avaliação do modelo
- 29Divisão de treino e testeDivide os dados e explica porquê.
- Divide com train_test_split.
- Usa um conjunto de validação para afinar.
- Usa validação cruzada.
- 30Acurácia, precisão e revocaçãoCalcula acurácia, precisão e revocação.
- Constrói uma matriz de confusão.
- Calcula cada métrica a partir dela.
- Escolhe a métrica que serve o problema.
- 31SobreajusteDeteta o sobreajuste comparando as pontuações de treino e de teste.
- Treina um modelo que entra em sobreajuste.
- Desenha as pontuações de treino e de teste.
- Reduz o sobreajuste e compara.
- 32BaseCompara um modelo com uma base simples.
- Constrói uma base que adivinha sempre a resposta mais comum.
- Compara o teu modelo com ela.
- Explica quando um modelo não vale a pena.
Projeto de aprendizagem automática
- 33Escolhe um conjunto de dadosEscolhe um conjunto de dados ambiental aberto e uma pergunta.
- Encontra um conjunto de dados aberto de tempo ou de qualidade do ar.
- Escreve uma pergunta a que ele consiga responder.
- Escolhe regressão ou classificação.
- 34Prepara e exploraLimpa os dados e faz gráficos dos padrões principais.
- Limpa os dados.
- Faz gráficos de 3 padrões.
- Escolhe características.
- 35Treina e comparaTreina 2 modelos e compara-os com uma base.
- Treina 2 modelos.
- Compara-os com uma base.
- Verifica o sobreajuste.
- 36Prever condições ambientaisApresenta resultados, limites e próximos passos.
- Mostra os teus resultados e gráficos.
- Explica os limites do modelo.
- Sugere os próximos passos.