Qual é a diferença entre regressão perceptron linear e regressão linear LS?

8

Recentemente, um projeto em que estou envolvido fez uso de um perceptron linear para regressão múltipla (21 preditores). Utilizou GD estocástico. Como isso é diferente da regressão linear OLS?

Simon Kuang
fonte
A Perceptronclasse à qual você vincula é para um classificador (saída binária) em vez de um regressor (saída contínua). Esse é o código real que você usou? Se assim for, essa é a diferença. :)
Dougal
@Dougal, ainda conta entre os GLMs
Simon Kuang
@ Dougal: suponha que você tenha um (G) LM que você otimizou para L2 usando SGDRegressor; isso seria equivalente à regressão linear?
Simon Kuang
Sim, alguns GLMs são classificadores. Se você usou SGDRegressor(loss='squared_loss', penalty='none'), isso é OLS.
Dougal

Respostas:

5

PerceptronSGDClassifier(loss="perceptron", penalty=None, learning_rate="constant", eta0=1)

1Ni=1Nmax(0,yiwTxi).
yi{1,1}wTxi

A regressão de mínimos quadrados, por outro lado, usa Aqui pode ser real; você pode atribuir a ele metas de classificação em se desejar, mas isso não lhe dará um modelo muito bom. Você pode otimizar isso com, se quiser.

1Ni=1N(yiwTxi)2.
yi{1,1}SGDRegressor(loss="squared_loss", penalty=None)

Os dois definem modelos fundamentalmente diferentes: o perceptron prevê um rótulo de classe binária com , enquanto a regressão linear prediz um valor real com . Esta resposta fala um pouco sobre por que tentar resolver um problema de classificação com um algoritmo de regressão pode ser problemático.w T x isign(wTxi)wTxi

Dougal
fonte