Estou examinando as anotações de Andrew Ng sobre aprendizado de máquina.
As notas nos apresentam regressão logística e, em seguida, perceptron. Ao descrever o Perceptron, as notas dizem que apenas mudamos a definição da função de limite usada para a regressão logística. Depois disso, podemos usar o modelo Perceptron para classificação.
Então, minha pergunta é - se isso precisa ser especificado e consideramos o Perceptron como uma técnica de classificação, o que exatamente é a regressão logística? É usado apenas para obter a probabilidade de um ponto de dados pertencer a uma das classes?
regression
machine-learning
self-study
logistic
perceptron
GrowinMan
fonte
fonte
Respostas:
Em resumo, a regressão logística tem conotações probabilísticas que vão além do uso do classificador no ML. Eu tenho algumas notas sobre regressão logística aqui .
A hipótese em regressão logística fornece uma medida de incerteza na ocorrência de um resultado binário com base em um modelo linear. A saída é delimitada assintoticamente entre e e depende de um modelo linear, de modo que quando a linha de regressão subjacente tem valor , a equação logística é , fornecendo um ponto de corte natural para fins de classificação. No entanto, é ao custo de lançar as informações de probabilidade no resultado real de , que geralmente é interessante (por exemplo, probabilidade de inadimplência do empréstimo, dada a renda, a pontuação de crédito, a idade etc.).0 1 0 0.5=e01+e0 h(ΘTx)=eΘTx1+eΘTx
O algoritmo de classificação de perceptron é um procedimento mais básico, baseado em produtos pontuais entre exemplos e pesos . Sempre que um exemplo é classificado incorretamente, o sinal do produto escalar está em desacordo com o valor da classificação ( e ) no conjunto de treinamento. Para corrigir isso, o vetor de exemplo será iterativamente adicionado ou subtraído do vetor de pesos ou coeficientes, atualizando progressivamente seus elementos:−1 1
Vectorialmente, os recursos ou atributos de um exemplo são , e a idéia é "passar" o exemplo se:d x
O limite será absorvido no coeficiente de polarização , . A fórmula é agora:+θ0
Os pontos classificados incorretamente terão , o que significa que o produto escalar de e será positivo (vetores na mesma direção), quando for negativo, ou o produto escalar será negativo (vetores em direções opostas), enquantosign(θTx)≠yn Θ xn yn é positivo.yn
Eu tenho trabalhado nas diferenças entre esses dois métodos em um conjunto de dados do mesmo curso , no qual os resultados dos testes em dois exames separados estão relacionados à aceitação final da faculdade:
O limite de decisão pode ser facilmente encontrado com a regressão logística, mas foi interessante ver que, embora os coeficientes obtidos com o perceptron sejam muito diferentes dos da regressão logística, a simples aplicação da função de aos resultados produziu uma classificação tão boa quanto algoritmo. De fato, a precisão máxima (o limite definido pela inseparabilidade linear de alguns exemplos) foi atingida pela segunda iteração. Aqui está a sequência de linhas de divisão de fronteira, com 10 iterações aproximando os pesos, começando de um vetor aleatório de coeficientes:sign(⋅) 10
O código usado está aqui .
fonte
Há alguma confusão que pode surgir aqui. Originalmente, um perceptron estava se referindo apenas a redes neurais com uma função step como a função de transferência. Nesse caso, é claro que a diferença é que a regressão logística usa uma função logística e o perceptron usa uma função step. Em geral, ambos os algoritmos devem produzir o mesmo limite de decisão (pelo menos para um único neurônio perceptron). Contudo:
Em alguns casos, o termo perceptron também é usado para se referir a redes neurais que usam uma função logística como uma função de transferência (no entanto, isso não está de acordo com a terminologia original). Nesse caso, uma regressão logística e um "perceptron" são exatamente os mesmos. Obviamente, com um perceptron, é possível usar vários neurônios, todos usando uma função de transferência logística, que se torna um pouco relacionada ao empilhamento da regressão logística (não é a mesma coisa, mas é similar).
fonte
Você pode usar a regressão logística para construir um perceptron. A regressão logística usa a função logística para construir a saída de uma determinada entrada. A função logística produz uma saída suave entre 0 e 1, portanto, você precisa de mais uma coisa para torná-lo um classificador, que é um limite. Perceptrons podem ser construídos com outras formas funcionais, é claro, não apenas com a logística .
fonte
Ambos estão aplicando regressão estimando os parâmetros do mesmo modelo transformado pela logística. De acordo com as propriedades das funções convexas, os valores dos parâmetros serão os mesmos da maneira que você escolher para estimar. Para citar uma resposta anterior:
A regressão logística modela uma função da média de uma distribuição de Bernoulli como uma equação linear (a média é igual à probabilidade p de um evento de Bernoulli). Usando o link logit como uma função da média (p), o logaritmo das probabilidades (log-probabilidades) pode ser derivado analiticamente e usado como resposta do chamado modelo linear generalizado. Além da previsão, isso permite que você interprete o modelo em inferência causal. Isso é algo que você não pode alcançar com um Perceptron linear.
O Perceptron, assume a função logit inversa (logística) de wx e não usa suposições probabilísticas para o modelo nem seu parâmetro. O treinamento on-line fornecerá exatamente as mesmas estimativas para os pesos / parâmetros do modelo, mas você não poderá interpretá-los em inferência causal devido à falta de valores-p, intervalos de confiança e, bem, um modelo de probabilidade subjacente.
fonte
fonte
Andrew Ng usou o termo "regressão logística" como modelo para resolver o problema de classificação binária.
Como você pode ver no artigo, ele nunca desenhou o modelo em si.
Deixe-me acrescentar alguns detalhes ao balde, para que você possa encontrar o raciocínio sobre como ele construiu as palestras.
O modelo usado para a "regressão logística" é uma percepção de nível único com um número personalizado de entradas e uma saída que varia de 0 a 1.
Nos anos 90, a função de ativação mais apreciada era a função de ativação sigmoidal, e há uma grande teoria matemática como backup.
Esse é exatamente o modelo que Andrew Ng está usando, pois essa função varia de 0 a 1.
Também a derivada
s'(x) = s(x)(1−s(x))
, ondes(x)
está a função de ativação sigmoidal.Para a função de erro, ele usa L2, embora em alguns trabalhos ele possa usar alguma outra função para isso.
Para recapitular, ao considerar a "regressão logística", considere apenas a percepção de nível único com a função de ativação sigmoidal, número personalizado de entradas e saída única.
Apenas algumas notas: Não há nada errado com a função de ativação sigmoidal, embora para a aritmética de ponto flutuante, a ReLU domine camadas ocultas hoje em dia, mas no futuro próximo posturas (ou algumas outras unidades aritméticas) possam colocar a função de ativação sigmoidal de volta à mesa .
Pessoalmente, eu usaria um modelo mais simples com a função ReLU para explicar o SLP (perceptron de nível único), pois ele é mais usado hoje.
fonte