
O Deep Learning Crash Course for Beginners do Jason Dsouza no freeCodeCamp é o mapa do território: o que é DL, como a rede aprende, o vocabulário (loss, Adam, epoch) e as três famílias de arquitetura. Este texto compacta o curso. A conta por baixo — MatMul, GPU — está no GPU vs TPU; o neurônio em si, no O que é uma rede neural? (3Blue1Brown).
IA, ML, Deep Learning
IA
└─ Machine Learning (aprende com dados, não com if/else)
└─ Deep Learning (rede neural com várias camadas ocultas)
ML clássico pede que você escolha as features. DL aprende a representação direto do dado cru (end-to-end). É o motor de AlphaGo, visão veicular, diagnóstico e LLM — o mesmo stack que você roda no Linux com o Ollama.
O ciclo: frente, erro, volta
- Forward: entrada → camadas ocultas (peso
w, viésb, ativação) → palpite na saída. No começo os pesos são aleatórios; o palpite é lixo. - Loss: um número que mede o quão errado foi. Quanto maior, pior.
- Backprop + gradient descent: o erro volta. A regra da cadeia diz quanto cada peso contribuiu. O otimizador anda na direção oposta ao gradiente e o erro cai na próxima rodada.
Vocabulário que aparece no treino
Ativação — sem não-linearidade, N camadas lineares = 1 camada. Por isso existe σ.
| Função | Saída | Uso |
|---|---|---|
| Sigmóide | (0, 1) | Saída binária; satura no meio da rede |
| Tanh | (−1, 1) | Centra em zero; melhor que σ no meio, clássico |
ReLU max(0, x) |
[0, +∞) | Padrão nas ocultas |
| Leaky ReLU | ℝ | Evita neurônio morto (gradiente pequeno em x<0) |
| Softmax | probabilidades somam 1 | Saída multiclasse |
Loss: regressão → MSE (pune erro grande) ou MAE (mais robusto a outlier). Classificação → binary / categorical cross-entropy.
Otimizador: learning rate alta demais oscila; baixa demais não chega. SGD usa mini-lote; Momentum amortece; RMSprop/Adagrad adaptam por parâmetro; Adam (momentum + RMSprop) é o default da indústria.
Parâmetro a rede ajusta sozinha (peso, viés). Hiperparâmetro você escolhe: lr, batch, épocas, arquitetura.
1 época = 1 passagem no dataset. Batch size = quantos exemplos antes de atualizar. 1.000 amostras / batch 100 = 10 iterações por época.
Três jeitos de aprender — e o overfitting
- Supervisionado: par (x, y). Imagem com rótulo, preço com valor.
- Não-supervisionado: sem rótulo. Cluster, autoencoder, PCA.
- Reforço: agente, ambiente, recompensa. AlphaGo, robô.
Underfit: modelo simples demais, erra até no treino. Overfit: memorizou o treino, quebra no teste.
Regularização que funciona: Dropout (desliga neurônios no treino), L1/L2 nos pesos, data augmentation (gira, corta, espelha), early stopping (para quando a loss de validação sobe).
Três arquiteturas
- MLP / densa: camada a camada, sem memória. Tabela, regressão clássica.
- RNN / LSTM / GRU: loop, estado interno. Série temporal, texto, log de servidor. LSTM/GRU têm portões para o gradiente não sumir em sequência longa.
- CNN: kernel desliza na imagem, mapa de features + pooling. Visão. (Transformer comeu parte do texto; CNN ainda manda em visão clássica.)
Os 5 passos de qualquer projeto
- Dados. Garbage in, garbage out. Classe desbalanceada engana acurácia.
- Pré-processo. Nulo, escala [0,1] ou z-score, split treino / validação / teste (~80 / 10 / 10).
- Treino. Forward, loss, backprop, épocas.
- Avaliação. Além de acurácia: precisão, recall, F1, matriz de confusão — obrigatório se a classe rara importa.
- Ajuste. Grid/random search no hiperparâmetro, dropout, lr, mais camada se precisar.
Referências
- Curso: Jason Dsouza — Deep Learning Crash Course for Beginners (freeCodeCamp)
- O que é uma rede neural? (3Blue1Brown, MNIST)
- GPU vs TPU
- Ollama no Linux
Peso, loss, Adam, ReLU, split. Com isso o crash course cabe na cabeça — o resto é treinar e olhar o gráfico da validação.