Nel potenziamento, perché gli studenti sono "deboli"?


28

Vedi anche una domanda simile su stats.SE .

Nel potenziare gli algoritmi come AdaBoost e LPBoost , è noto che gli studenti "deboli" da combinare devono solo esibirsi meglio del caso per essere utili, da Wikipedia:

I classificatori che utilizza possono essere deboli (ad esempio, visualizzare un tasso di errore sostanziale), ma fintanto che le loro prestazioni non sono casuali (con conseguente tasso di errore di 0,5 per la classificazione binaria), miglioreranno il modello finale. Anche i classificatori con un tasso di errore superiore a quello che ci si aspetterebbe da un classificatore casuale saranno utili, poiché avranno coefficienti negativi nella combinazione lineare finale dei classificatori e quindi si comporteranno come i loro inversi.

  • Quali sono i vantaggi dell'utilizzo di discenti deboli anziché forti? (ad esempio, perché non potenziare con metodi di apprendimento "forti" - siamo più inclini al sovradimensionamento?)

  • Esiste una sorta di forza "ottimale" per gli studenti deboli? E questo è legato al numero di studenti dell'ensemble?

C'è qualche teoria per sostenere le risposte a queste domande?


Gli studenti deboli evitano anche di adattarsi eccessivamente ai dati di allenamento
Aman Deep Gautam,

Risposte:


15

Quindi, il potenziamento è un algoritmo di apprendimento, che può generare previsioni ad alta precisione usando come subroutine un altro algoritmo, che a sua volta può generare in modo efficiente ipotesi leggermente migliori (da un polinomio inverso) rispetto all'ipotesi casuale.

Il vantaggio principale è la velocità.

Quando Schapire lo presentò nel 1990, fu una svolta in quanto mostrò che uno studente del tempo polinomiale che generava ipotesi con errori leggermente inferiori a 1/2 può essere trasformato in uno studente del tempo polinomiale che genera ipotesi con un errore arbitrariamente piccolo.

Quindi, la teoria a sostegno della tua domanda è in "La forza della debole apprendibilità" ( pdf ) dove ha sostanzialmente dimostrato che l'apprendimento "forte" e "debole" sono equivalenti.

E forse la risposta alla domanda originale è "non ha senso costruire studenti forti quando puoi costruire quelli deboli a un prezzo più basso".


Dagli articoli relativamente recenti, c'è "Sull'equivalenza della debole apprendibilità e separabilità lineare: nuovi rilassamenti e algoritmi di potenziamento efficienti" ( pdf ) che non capisco ma che sembra correlato e potrebbe interessare le persone più istruite :)


1
+1 bei riferimenti. Quindi forse la risposta è: "non ha senso costruire studenti forti quando puoi costruire quelli deboli più a buon mercato"?
TCD

sì, sembra proprio così - ho aggiornato la risposta! Inoltre, se capisco correttamente, questo non dipende dalla forza dei tuoi deboli studenti: devono solo essere "leggermente" migliori di quelli casuali.
Andreister

1
Penso che ciò che entrambi intendete davvero sia: non ha senso costruire costosi studenti forti quando si possono raggiungere abilità simili o persino migliori semplicemente combinando molti studenti deboli a basso costo . In effetti, se l'abilità raggiunta da studenti forti fosse molto più elevata dell'abilità raggiunta da studenti deboli, allora potrei vedere totalmente il punto nella costruzione di studenti forti ...
Antoine,

9

Mi occuperò del sovradimensionamento, che non è stato ancora menzionato, con una spiegazione più intuitiva. La tua prima domanda è stata:

Quali sono i vantaggi dell'utilizzo di discenti deboli anziché forti? (ad esempio, perché non potenziare con metodi di apprendimento "forti" - siamo più inclini al sovradimensionamento?)

I motivi principali, a mio avviso, sono:

  • Velocità , come spiegato abbastanza bene nelle altre risposte;
  • Miglioramento della precisione : se hai già uno studente forte, i vantaggi del potenziamento sono meno rilevanti;
  • Evita il sovradimensionamento , come hai indovinato. Pensaci in questo modo:

Ciò che stimola fa è combinare molte ipotesi diverse dallo spazio delle ipotesi in modo da finire con una migliore ipotesi finale. Il grande potere di potenziamento, quindi, deriva dalla diversità delle ipotesi combinate.

Se utilizziamo uno studente forte, questa diversità tende a diminuire: dopo ogni iterazione non ci saranno molti errori (poiché il modello è complesso), il che non farà molto aumentare il cambiamento delle nuove ipotesi. Con ipotesi molto simili, l'ensemble sarà molto simile a un singolo modello complesso, che a sua volta tende a sovralimentarsi!


4
Questa è la vera risposta.
Matthew Drury,

6

Nel potenziamento usiamo gli studenti deboli principalmente perché sono addestrati più velocemente rispetto agli studenti forti. Pensaci. Se uso la rete neurale multistrato come studente, allora devo addestrarne molti. D'altra parte, un albero decisionale potrebbe essere molto più veloce, quindi posso addestrarne molti.

Diciamo che uso 100 studenti. Mi alleno NN in 100 secondi e l'albero delle decisioni in 10 secondi. Il mio primo potenziamento con NN richiederà 100 * 100 secondi, mentre il secondo potenziamento con l'albero delle decisioni richiederà 100 * 10 secondi.

Detto questo, ho visto articoli che usano forti studenti per migliorare. Ma a causa di questi problemi, gli studenti forti sono stati veloci secondo me.

Ho provato a addestrare MLP sul set di dati di rilevamento delle intrusioni KDD99, (4+ milioni) usando Weka. Ci sono volute più di 72 ore sulla mia macchina. Ma il potenziamento (AdaBoostM1 con Decision Tree - Decision Stump) ha richiesto solo 3 ore. In questo problema è chiaro che non posso usare il potenziamento con uno studente forte, che è uno studente che impiega troppo tempo.


1
"Ho visto articoli che usano forti studenti per dare impulso" - qualche riferimento?
TD
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.