Ricerca…


Minimi quadrati ordinari

Least Squares ordinari è un metodo per trovare la combinazione lineare di caratteristiche che meglio si adatta al risultato osservato nel senso seguente.

Se il vettore dei risultati da prevedere è y , e le variabili esplicative formano la matrice X , allora OLS troverà la soluzione del vettore β

min β | y ^ - y | 2 2 ,

dove y ^ = X β è la previsione lineare.

In sklearn, questo viene fatto usando sklearn.linear_model.LinearRegression .

Contesto dell'applicazione

L'OLS dovrebbe essere applicato solo ai problemi di regressione, in genere non è adatto per problemi di classificazione: Contrasto

  • E 'una email spam? (Classfication)
  • Qual è la relazione lineare tra gli upvotes dipende dalla lunghezza della risposta? (Regressione)

Esempio

LinearRegression un modello lineare con un po 'di rumore, quindi vediamo se LinearRegression gestisce per ricostruire il modello lineare.

Per prima cosa generiamo la matrice X :

import numpy as np

X = np.random.randn(100, 3)

Ora genereremo la y come una combinazione lineare di X con un po 'di rumore:

beta = np.array([[1, 1, 0]])
y = (np.dot(x, beta.T) + 0.01 * np.random.randn(100, 1))[:, 0]

Si noti che la vera combinazione lineare che genera y è data da `beta.

Per provare a ricostruire questo da solo X e y , facciamo:

>>> linear_model.LinearRegression().fit(x, y).coef_
array([  9.97768469e-01,   9.98237634e-01,   7.55016533e-04])

Si noti che questo vettore è molto simile alla beta .



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow