Nella regressione lineare, stai adattando:
$ y = f (\ beta, X) = \ beta_0 + \ beta_1 x_1 + \ beta_2 x_2 + \ dots $
Adatti $ \ beta $ dati di addestramento $ (X, Y) $ Supponiamo di eliminare $ \ beta_0 $ e di adattarli al modello, l'errore nell'adattamento:
$ \ sum_i (y_i- f (\ beta, X_i)) ^ 2 $
essere più grande di se lo includessi? In tutti i casi (non degeneri) puoi provare che l'errore sarà uguale o inferiore (sui dati di addestramento) quando includi $ \ beta_0 $ poiché il modello è libero di usare questo parametro per ridurre l'errore se è presente e aiuta e lo imposterà a zero se non aiuta. Inoltre, supponiamo di aver aggiunto una grande costante a y (presumendo che il tuo output dovesse essere $ + 10000 $ rispetto ai dati di addestramento originali) e rimontando il modello, quindi $ \ beta_0 $ diventa chiaramente molto importante.
Forse ti riferisci a modelli regolarizzati quando dici "soppresso". Regolarizzati L1 e L2, questi metodi preferiscono mantenere i coefficienti vicini a zero (e dovresti aver già normalizzato la media e la varianza in anticipo $ X $ per rendere sensato questo passaggio. Nella regolarizzazione, puoi quindi scegliere se includere il intercetta (dovremmo preferire anche un piccolo $ \ beta_0 $?). Anche in questo caso, nella maggior parte dei casi (tutti i casi?), è meglio non regolarizzare $ \ beta_0 $, poiché è improbabile che riduca l'overfitting e riduca il spazio delle funzioni rappresentabili (escludendo quelle con $ \ beta_0 $ elevati) che portano a un errore maggiore.
Nota a margine: la regressione logistica di scikit regolarizza l'intercetta per impostazione predefinita. Qualcuno sa perché: http: // scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html? Non credo che sia una buona idea.