Regressão logística: perda e regularização

Os modelos de regressão logística são treinados usando o mesmo processo dos modelos de regressão linear, com duas distinções principais:

As seções a seguir discutem essas duas considerações com mais detalhes.

Log Perda

No módulo de regressão linear, você usou a perda quadrática (também chamada de perda L2) como a função de perda. A perda quadrática funciona bem para um modelo linear em que a taxa de mudança dos valores de saída é constante. Por exemplo, considerando o modelo linear $y' = b + 3x_1$, cada vez que você aumenta o valor de entrada $x_1$ em 1, o valor de saída $y'$ aumenta em 3.

No entanto, a taxa de mudança de um modelo de regressão logística não é constante. Como você viu em Cálculo de uma probabilidade, a curva sigmoid tem formato de S, não é linear. Quando o valor de log-odds ($z$) está mais próximo de 0, pequenos aumentos em $z$ resultam em mudanças muito maiores em $y$ do que quando $z$ é um número positivo ou negativo grande. A tabela a seguir mostra a saída da função sigmoide para valores de entrada de 5 a 10, bem como a precisão correspondente necessária para capturar as diferenças nos resultados.

entrada saída logística dígitos de precisão obrigatórios
5 0,993 3
6 0,997 3
7 0,999 3
8 0,9997 4
9 0,9999 4
10 0,99998 5

Se você usou a perda quadrática para calcular erros na função sigmoide, à medida que a saída se aproximava de 0 e 1, era necessário mais memória para preservar a precisão necessária para rastrear esses valores.

Em vez disso, a função de perda para regressão logística é a perda de registro. A equação de perda logarítmica retorna o logaritmo da magnitude da mudança, e não apenas a distância dos dados até a previsão. A perda de log é calculada da seguinte forma:

$\text{Log Loss} = -\frac{1}{N}\sum_{i=1}^{N} y_i\log(y_i') + (1 - y_i)\log(1 - y_i')$

em que:

  • \(N\) é o número de exemplos rotulados no conjunto de dados
  • \(i\) é o índice de um exemplo no conjunto de dados (por exemplo, \((x_3, y_3)\) é o terceiro exemplo no conjunto de dados)
  • \(y_i\) é o rótulo do exemplo \(i\). Como essa é uma regressão logística, \(y_i\) precisa ser 0 ou 1.
  • \(y_i'\) é a previsão do modelo para o exemplo \(i\)(entre 0 e 1), considerando o conjunto de recursos em \(x_i\).

Regularização na regressão logística

A regularização, um mecanismo para penalizar a complexidade do modelo durante o treinamento, é extremamente importante na modelagem de regressão logística. Sem a regularização, a natureza assintótica da regressão logística continuaria reduzindo a perda para zero em casos em que o modelo tem um grande número de recursos. Consequentemente, a maioria dos modelos de regressão logística usa uma das duas estratégias a seguir para diminuir a complexidade do modelo: