Dopo aver utilizzato per OpenCV boosting Sto cercando di implementare la mia versione del Adaboost
dell'algoritmo (controllare here, here e the original paper per alcuni riferimenti).Selezione parametri in AdaBoost
Leggendo tutto il materiale sono emerse alcune domande riguardanti l'implementazione dell'algoritmo.
1) Non mi è chiaro come siano assegnati i pesi a_t di ogni studente debole.
In tutte le fonti Sono indicate la scelta è a_t = k * ln((1-e_t)/e_t)
, k essendo una costante positiva e E_T il tasso di errore del particolare studente debole.
Nella pagina 7 di questo source si dice che quel particolare valore minimizza una certa funzione convessa e differenziabile, ma io davvero non capisco il passaggio.
Qualcuno può spiegarmelo per favore?
2) Ho alcuni dubbi sulla procedura di aggiornamento del peso dei campioni di addestramento.
Chiaramente dovrebbe essere fatto in modo tale da garantire che rimangano una distribuzione di probabilità. Tutti i riferimenti adottano questa scelta:
D_ {t + 1} (i) = D_ {t} (i) * e^(- a_t y_i h_t (x_i))/Z_t (dove Z_t è a fattore di normalizzazione scelto in modo che D_ {t + 1} sia una distribuzione).
- Ma perché è la particolare scelta di aggiornamento peso moltiplicativo con l'esponenziale di tasso di errore fatta dalla particolare studente debole?
- Sono disponibili altri aggiornamenti? E se sì c'è una prova che questo aggiornamento garantisce un qualche tipo di ottimalità del processo di apprendimento?
Spero che questo sia il posto giusto per postare questa domanda, altrimenti ti prego reindirizzare me!
Grazie in anticipo per qualsiasi aiuto tu possa fornire.
Conoscete l'ottimizzazione convessa a tutti? In caso contrario, spiegare questo passaggio avrà un po '(un corso universitario di ottimizzazione prende un semestre) – AlexK
Sì, un diverso schema di aggiornamento del peso è possibile se si sceglie una funzione obiettivo diverso (guardare in alto "funzione obiettivo" in un libro di ottimizzazione convessa) . Per un diverso schema di aggiornamento del peso su google "LogitBoost", per una guida sull'ottimizzazione convessa vedere http://www.stanford.edu/~boyd/cvxbook/ – AlexK
@AlexK - Ho familiarità con l'ottimizzazione convessa, ma comunque avrei bisogno di alcuni spiegazioni. Mi potete aiutare? – Matteo