Esiste un pacchetto software per risolvere la regressione lineare con l'obiettivo di ridurre al minimo la norma L-infinito.
Esiste un pacchetto software per risolvere la regressione lineare con l'obiettivo di ridurre al minimo la norma L-infinito.
Risposte:
Risposta breve : il problema può essere formulato come un programma lineare (LP), che consente di scegliere il solutore LP preferito per l'attività. Per vedere come scrivere il problema come LP, continua a leggere.
Questo problema di minimizzazione viene spesso definito approssimazione di Chebyshev .
Lascia che , con riga indicata da e . Quindi cerchiamo di minimizzare la funzione rispetto a . Indica il valore ottimale con
La chiave per rifondere questo come un LP è riscrivere il problema in forma epigrafica . Non è difficile convincersi che, in effetti,
Ora, usando la definizione della funzione , possiamo riscrivere il lato destro sopra come e quindi vediamo che minimizzare la norma in un'impostazione di regressione equivale al LP dove viene eseguita l'ottimizzazione over e indica un vettore di quelli di lunghezza . Lascio che sia un (facile) esercizio per il lettore la rifusione del precedente LP in forma standard.
Relazione con la versione (variazione totale) della regressione lineare
È interessante notare che qualcosa di molto simile può essere fatto con la norma . Lascia che . Quindi, argomenti simili portano a concludere che modo che l'LP corrispondente sia
Nota qui che ora è un vettore di lunghezza anziché uno scalare, come nel caso .
La somiglianza in questi due problemi e il fatto che entrambi possano essere espressi come LP non è certo un caso. Le due norme sono correlate in quanto sono le doppie norme l' una dell'altra.
La risposta di @ cardinal è ben dichiarata ed è stata accettata, ma, per motivi di chiusura completa di questo thread, offrirò quanto segue: Le Librerie numeriche IMSL contengono una routine per eseguire la regressione della norma L-infinito. La routine è disponibile in Fortran, C, Java, C # e Python. Ho usato le versioni C e Python per il quale il metodo è lnorm_regression chiamata, che supporta anche generale regressione -norm, .
Si noti che si tratta di librerie commerciali ma le versioni di Python sono gratuite (come nella birra) per uso non commerciale.