Brownboost

BrownBoost är en förstärkningsalgoritm  som har visat sig vara effektiv på bullriga datamängder. Som alla förstärkningsalgoritmer används BrownBoost tillsammans med andra maskininlärningsalgoritmer . BrownBoost-algoritmen föreslogs av Yoav Freund ( sv:Yoav Freund ) [1] .

Motivation

AdaBoost-algoritmen har visat sin effektivitet på en mängd olika datamängder. Det kan dock visas att AdaBoost inte är effektiv på bullriga datamängder [2] . Detta är en konsekvens av att AdaBoost fokuserar på delar av träningsprovet som upprepade gånger felklassificeras. Däremot ger BrownBoost helt enkelt upp sådana element. BrownBoost är baserad på antagandet att bullriga element upprepade gånger kommer att felklassificeras av basklassificerarna, och icke-brusiga element kommer att klassificeras korrekt ganska ofta. Detta kommer att förkasta de brusiga elementen, och de icke-brusiga elementen kommer att bidra till den slutliga klassificeraren. Den slutliga klassificeraren kommer alltså att tränas på icke-bullriga delar av träningsprovet, så dess generaliseringsförmåga kan vara bättre än AdaBoosts när man tränar på ett träningsprov med brus.

Beskrivning av algoritmen

BrownBoost använder en icke-konvex förlustfunktion , så den faller inte in i AnyBoost- familjen av algoritmer . Icke-konvex optimering undviker överanpassning på bullriga datauppsättningar. Till skillnad från förstärkningsalgoritmer (som AdaBoost och LogitBoost ) som minimerar en konvex förlustfunktion, löser BrownBoost ett system med 2 ekvationer i 2 okända med vanliga numeriska metoder.

Den enda parametern för BrownBoost-algoritmen  är "tiden" som algoritmen körs. Varje svag klassificerare får en tid , som är direkt relaterad till klassificerarens vikt.

Ett stort värde innebär att BrownBoost kommer att anse att data är mindre bullriga och kommer att kassera färre delar av träningsuppsättningen. Följaktligen betyder ett litet värde att BrownBoost kommer att betrakta data som bullrigare och kassera fler delar av träningsuppsättningen. Vid varje steg väljer algoritmen en basklassificerare något bättre än bara slumpmässigt. Vikten av denna klassificerare och mängden tid som förflutit under iterationen ges genom att lösa ett system med 2 olinjära ekvationer (1. okorrelation hos basklassificeraren och vikterna av elementen i träningsprovet; 2. invarians av potentialen) med 2 okända. Detta system kan lösas med dikotomimetoden , som implementerad i JBoost- paketet , eller med Newton-metoden , som i den ursprungliga författarens artikel. Efter att ha löst ekvationerna räknas om vikterna av elementen i träningsprovet och mängden återstående tid. Denna procedur upprepas tills hela tiden är över.

Den initiala potentialen definieras som . Eftersom varje steg i algoritmen inte ändrar potentialen är jämlikheten sann . Därför är det slutliga felet förmodligen nära . Den slutliga potentiella funktionen är dock inte en binär förlustfunktion.

För att den slutliga förlustfunktionen ska vara exakt måste variansen minska linjärt med tiden för att bilda en binär förlustfunktion efter slutet av förstärkningsupprepningarna. Denna punkt har ännu inte beskrivits i litteraturen och saknas i definitionen av algoritmen nedan.

Den slutliga klassificeraren är en linjär kombination av basklassificerarna, och dess kvalitet kan utvärderas på samma sätt som i de flesta andra förstärkningsalgoritmer.

Algoritm

Ingång:

Initiering:

Hejdå :

Utgång:

Empiriska resultat

I preliminära experiment har BrownBoost ett mindre generaliseringsfel jämfört med AdaBoost och har liknande resultat som LogitBoost. [4] En implementering av BrownBoos finns i JBoost- paketet med öppen källkod .

Anteckningar

  1. Yoav Freund. En adaptiv version av boost by majoritetsalgoritmen. Machine Learning, 43(3):293-318, juni 2001.
  2. Dietterich, T.G., (2000). En experimentell jämförelse av tre metoder för att konstruera ensembler av beslutsträd: Bagging, boosting och randomisering. Machine Learning, 40(2) 139-158.
  3. Robert Schapire och Yoram Singer. Förbättrad boosting med förtroendeklassade förutsägelser. Journal of Machine Learning, Vol 37(3), sid 297-336. 1999
  4. Ross A. McDonald, David J. Hand, Idris A. Eckley. En empirisk jämförelse av tre förstärkande algoritmer på verkliga datamängder med artificiellt klassbrus. Multiple Classifier Systems, In Series Lecture Notes in Computer Science, sidorna 35-44, 2003.

Se även