Dicas e truques de aprendizado de máquina
Métricas de classificação
Em um contexto de classificação binária, essas são las principais métricas que são importantes acompanhar para avaliar a desempenho do modelo.
Matriz de confusão A matriz de confusão (confusion matrix) é usada para termos uma cenário mais completa quando estamos avaliando o desempenho de um modelo. Ela é definida conforme a seguir:
| Classe prevista | |||
| + | - | ||
| Classe real | + | TP True Positives | FN False Negatives Type II error |
| - | FP False Positives Type I error | TN True Negatives | |
Principais métricas As seguintes métricas são comumente usadas para avaliar o desempenho de modelos de classificação:
| Métrica | Fórmula | Interpretação |
| Acurácia | $\displaystyle\frac{\textrm{TP}+\textrm{TN}}{\textrm{TP}+\textrm{TN}+\textrm{FP}+\textrm{FN}}$ | Desempenho geral do modelo |
| Precisão | $\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FP}}$ | Quão precisas são as predições positivas |
| Revocação Sensibilidade | $\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FN}}$ | Cobertura da amostra positiva real |
| Specificity | $\displaystyle\frac{\textrm{TN}}{\textrm{TN}+\textrm{FP}}$ | Cobertura da amostra negativa real |
| F1 score | $\displaystyle\frac{2\textrm{TP}}{2\textrm{TP}+\textrm{FP}+\textrm{FN}}$ | Métrica híbrida útil para classes desequilibradas |
ROC A curva de operação do receptor, também chamada ROC (Receiver Operating Characteristic), é a área de TPR versus FPR variando o limiar. Essa métricas estão resumidas na tabela abaixo:
| Métrica | Fórmula | Equivalente |
| True Positive Rate TPR | $\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FN}}$ | Revocação, sensibilidade |
| False Positive Rate FPR | $\displaystyle\frac{\textrm{FP}}{\textrm{TN}+\textrm{FP}}$ | 1-specificity |
AUC A área sob a curva de operação de recebimento, também chamado AUC ou AUROC, é a área abaixo da ROC como mostrada na figura a seguir:
Métricas de regresão
Métricas básicas Dado um modelo de regresão $f$, as seguintes métricas são geralmente utilizadas para avaliar o desempenho do modelo:
| Soma total dos quadrados | Soma explicada dos quadrados | Soma residual dos quadrados |
| $\displaystyle\textrm{SS}_{\textrm{tot}}=\sum_{i=1}^m(y_i-\overline{y})^2$ | $\displaystyle\textrm{SS}_{\textrm{reg}}=\sum_{i=1}^m(f(x_i)-\overline{y})^2$ | $\displaystyle\textrm{SS}_{\textrm{res}}=\sum_{i=1}^m(y_i-f(x_i))^2$ |
Coeficiente de determinação O coeficiente de determinação, frequentemente escrito como $R^2$ ou $r^2$, fornece uma medida de quão bem os resultados observados são replicados pelo modelo e é definido como se segue:
[\boxed{R^2=1-\frac{\textrm{SS}\textrm{res}}{\textrm{SS}\textrm{tot}}}]
Principais métricas As seguintes métricas são comumente utilizadas para avaliar o desempenho de modelos de regressão, levando em conta o número de variáveis $n$ que eles consideram:
| Cp de Mallow | AIC | BIC | $R^2$ ajustado |
| $\displaystyle\frac{\textrm{SS}_{\textrm{res}}+2(n+1)\widehat{\sigma}^2}{m}$ | $\displaystyle2\Big[(n+2)-\log(L)\Big]$ | $\displaystyle\log(m)(n+2)-2\log(L)$ | $\displaystyle1-\frac{(1-R^2)(m-1)}{m-n-1}$ |
onde $L$ é a probabilidade e $\widehat{\sigma}^2$ é uma estimativa da variância associada com cada resposta.
Selección de modelo
Vocabulário Ao selecionar um modelo, nós consideramos 3 diferentes partes dos dados que possuímos conforme a seguir:
| Conjunto de treino | Conjunto de validação | Conjunto de teste |
| • Modelo é treinado • Geralmente 80% do conjunto de dados | • Modelo é avaliado • Geralmente 20% do conjunto de dados • Também chamado de hold-out ou conjunto de desenvolvimento | • Modelo fornece previsões • Dados não vistos |
Uma vez que o modelo é escolhido, ele é treinado no conjunto inteiro de dados e testado no conjunto de dados de testes não vistos. São representados na figura abaixo:
Validação cruzada Validação cruzada, também chamada de CV (Cross-Validation), é um método utilizado para selecionar um modelo que não depende muito do conjunto de treinamento inicial. Os diferente tipos estão resumidos na tabela abaixo:
| $k$-fold | Leave-$p$-out |
| • Treino em $k-1$ partes e teste sobre o restante • Geralmente $k=5$ ou 10 | • Treino em $n-p$ observações e teste sobre $p$ restantes • Caso $p=1$ é chamado leave-one-out (deixe-um-fora) |
O método mais comumente usado é chamado $k$-fold cross validation e divide los dados de treinamento em $k$ partes enquanto treina o modelo nas outras $k-1$ partes, todas estas em $k$ vezes. O erro é então calculado sobre as $k$ partes e é chamado erro de validação cruzada (cross-validation error).
Regularização O procedimento de regularização (regularization) visa evitar que o modelo sobreajuste os dados e portanto lide com os problemas de alta variância. A tabela a seguir resume os diferentes tipos de técnicas de regularização comumente utilizadas:
| LASSO | Ridge | Elastic Net |
| • Diminui coeficientes para 0 • Bom para seleção de variáveis | Faz o coeficiente menor | Balanço entre seleção de variáveis e coeficientes pequenos |
![]() | ![]() | ![]() |
| $...+\lambda||\theta||_1$ $\lambda\in\mathbb{R}$ | $...+\lambda||\theta||_2^2$ $\lambda\in\mathbb{R}$ | $...+\lambda\Big[(1-\alpha)||\theta||_1+\alpha||\theta||_2^2\Big]$ $\lambda\in\mathbb{R},\alpha\in[0,1]$ |
Diagnóstico
Viés O viés (bias) de um modelo é a diferença entre a predição esperada e o modelo correto que nós tentamos prever para determinados pontos de dados.
Variância A variância (variance) de um modelo é a variabilidade da previsão do modelo para determinados pontos de dados.
Balanço viés/variância Quanto mais simples o modelo, maior o viés e, quanto mais complexo o modelo, maior a variância.
| Underfitting | Just right | Overfitting | |
| Sintomas | • Erro de treinamento elevado • Erro de treinamento próximo ao erro de teste • Viés elevado | • Erro de treinamento ligeiramente menor que erro de teste | • Erro de treinamento muito baixo • Erro de treinamento muito menor que erro de teste • Alta variância |
| Exemplo de regressão | ![]() | ![]() | ![]() |
| Exemplo de classificação | ![]() | ![]() | ![]() |
| Exemplo de Deep Learning | ![]() | ![]() | ![]() |
| Possíveis remédios | • Modelo de complexificação • Adicionar mais recursos • Treinar mais | • Executar a regularização • Obter mais dados |
Análise de erro Análise de erro (error analysis) é a análise da causa raiz da diferença no desempenho entre o modelo atual e o modelo perfeito.
Análise ablativa Ablative analysis (ablative analysis) é a análise da causa raiz da diferença no desempenho entre o modelo atual e o modelo base.
CS 229 - Aprendizado de máquina 










