Regressão logística em profundidade

Feb 01 2023
Regressão logística, função de ativação, derivação, matemática
Uma técnica estatística popular para resolver problemas de classificação no aprendizado de máquina é a regressão logística. A regressão logística é um método para prever resultados binários, como “sim” ou “não” ou “verdadeiro” ou “falso”, em oposição à regressão linear, que é usada para prever resultados contínuos.
Visão geral da regressão logística

Uma técnica estatística popular para resolver problemas de classificação no aprendizado de máquina é a regressão logística. A regressão logística é um método para prever resultados binários, como “sim” ou “não” ou “verdadeiro” ou “falso”, em oposição à regressão linear, que é usada para prever resultados contínuos. A função logística, que converte qualquer entrada com valor real em um número entre 0 e 1, serve de base para o modelo de regressão logística. Daremos uma explicação completa da regressão logística neste post, cobrindo sua base matemática e derivação. Primeiramente, começaremos com a função sigmoide e depois falaremos sobre o modelo de regressão logística. No entanto, se você quiser saber mais sobre as funções de ativação, consulte este artigo.

Funções de ativação no aprendizado de máquina

A função sigmoide

Uma expressão matemática chamada função sigmóide converte qualquer entrada de valor real em um número entre 0 e 1 e também conhecida como função logística. A função sigmóide pode ser definida da seguinte forma:

A função sigmoide

onde:

  • z denota uma linha de classificação que se assemelha a uma regressão linear,
  • e é a base do logaritmo natural.

Em redes neurais artificiais, a função sigmóide é freqüentemente utilizada como uma função de ativação. Com base em suas entradas e pesos, a saída de um neurônio é determinada por uma função de ativação em uma rede neural. A rede neural é amplamente utilizada em aprendizado de máquina, mas não a discutiremos neste artigo. Se você quiser saber mais, confira este artigo ( a ser publicado ).

O modelo de regressão logística

O modelo de regressão logística faz previsões sobre a probabilidade de um resultado binário (verdadeiro/falso ou sim/não) com base em um ou mais recursos de entrada usando uma função logística. A probabilidade projetada da classe positiva é representada pela saída da função logística, que varia de 0 a 1. A observação é então classificada como positiva se a probabilidade prevista exceder o limite, que é comumente definido em 0,5, para determinar a previsão aula. Ao reduzir a verossimilhança logarítmica negativa dos dados, que reflete a disparidade entre as probabilidades antecipadas e os rótulos de classe reais, os coeficientes do modelo de regressão logística são otimizados. A função de custo para a regressão logística costuma ser chamada de perda de entropia cruzada binária.

A função de erro de entropia cruzada binária

Uma função de perda comum em aprendizado de máquina, especialmente para problemas de classificação binária, é a função de erro de entropia cruzada binária. Ele calcula a diferença entre o verdadeiro rótulo de uma variável de destino binária e a probabilidade antecipada. Na classificação binária, o objetivo é prever a probabilidade da variável alvo dado um conjunto de características. A variável de destino pode assumir apenas dois valores, como 0 e 1. A função de erro de entropia cruzada binária é definida da seguinte forma:

A função de erro de entropia cruzada binária

onde:

  • y_n é a probabilidade prevista para a classe positiva,
  • t_n é o rótulo verdadeiro, 0 ou 1,
  • e J é uma função objetivo que tentamos minimizar ou maximizar .

No entanto, usaremos a derivada parcial da função binária de erro de entropia cruzada em relação aos parâmetros para determinar os coeficientes do modelo de regressão logística para valores ótimos. Vamos começar derivando parcialmente a função de custo para encontrar os valores ótimos dos pesos da regressão logística. Podemos começar determinando a derivada de J em relação a y_n. Depois disso, podemos encontrar a derivada de y_n em relação à entrada da função sigmóide, que serve como função de ativação da regressão logística, e então podemos derivar a derivada de a em relação aos pesos.

Derivação da função de custo em relação ao parâmetro w

Em seguida, podemos obter a expressão para determinar o valor ideal do termo de viés, onde o viés é normalmente definido como 1. Além disso, o viés pode ser incluído nos pesos incluindo um valor de 1.

Derivação da função de custo em relação ao parâmetro b

Após obter as expressões dos parâmetros de busca, podemos passar para a implementação na linguagem de programação python.

import numpy as np

N = 100

def sigmoid_function(an):
    return 1/(1 + np.exp(-an))

def binary_cross_entropy(T, Y):
    E = 0
    for i in range(len(T)):
        if T[i] == 1:
            E -= np.log(Y[i])
        else:
            E -= np.log(1 - Y[i])
    return E

#short overwiev of updating process of w's
learning_rate = 0.01
for i in range(N):
    # gradient descent weight udpate
    w += learning_rate * Xb.T.dot(Y - T)

    # recalculate Y
    Y = sigmoid(Xb.dot(w))

from sklearn.linear_model import LogisticRegression

clf = LogisticRegression(random_state=0).fit(X, y)
clf.predict_proba(X)
clf.score(X, y)

Adicionar um termo de penalidade também permite que a função de custo seja modificada. O overfitting pode ser evitado na regressão logística e na regressão linear por meio da regularização. Este termo incentiva os coeficientes a terem pequenas magnitudes, reduzindo seu impacto nas previsões do modelo. A penalidade da regularização L1, também chamada de Laço, é igual ao valor absoluto dos coeficientes, mas a penalidade da regularização L2, também chamada de Ridge, é igual ao quadrado dos coeficientes. Esses dois métodos de regularização são típicos e discutiremos esses dois métodos de regularização no próximo artigo ( a ser publicado ).

Classificação multiclasse

Questões de classificação multiclasse, em que o resultado pode ter mais de dois valores, podem ser tratadas usando uma extensão de regressão logística. Normalmente, vários modelos de regressão logística binária são treinados, um para cada aula, usando o método um contra todos ou um contra descanso. A previsão é então feita para a classe com a maior probabilidade antecipada.

Limitação

Devido ao fato de a regressão logística usar um modelo linear, ela pode não ser adequada para dados quando há correlações complexas entre as variáveis ​​independentes e o resultado binário. Além disso, a regressão logística não oferece uma estimativa da variância das probabilidades previstas, o que é importante para a compreensão e avaliação do modelo.

Se você gostou do artigo, certifique-se de me seguir para ver meus novos artigos.