Vad betyder ”baslinje” i samband med maskininlärning och datavetenskap?
Någon skrev till mig:
Tips: En lämplig baslinje ger en RMSE på cirka 200.
Jag don t menar han att om min prediktiva modell på träningsdata har en RMSE under 500 så är det bra?
Och vad kan vara en ”baslinjetillvägagångssätt”?
Svar
En baslinje är resultatet av en mycket grundläggande modell / lösning. Generellt skapar du en baslinje och försöker sedan göra mer komplexa lösningar för att få ett bättre resultat. Om du uppnår en bättre poäng än baslinjen är den bra.
Kommentarer
- ja, men vad betyder det exakt för min poäng? För mina två citat
- Eftersom baslinjen är 200 vill du ha en bättre poäng. I ditt fall betyder en bättre poäng ju lägre desto bättre. Du vill komma under 200. Jag ' antar att du har att göra med en regression. Det första man ska använda för en baslinje skulle vara en vanlig regression med minsta kvadrat.
Svar
En baslinje är en metod som använder heuristik, enkel sammanfattningsstatistik, slumpmässighet eller maskininlärning för att skapa förutsägelser för en dataset. Du kan använda dessa förutsägelser för att mäta baslinjens prestanda (t.ex. noggrannhet) – detta mått blir sedan det du jämför med någon annan maskininlärningsalgoritm mot.
Mer detaljerat:
En maskininlärningsalgoritm försöker lära sig en funktion som modellerar förhållandet mellan ingångsdata (funktions) och målvariabeln (eller etiketten). När du testar den kommer du vanligtvis att mäta prestanda på ett eller annat sätt. Till exempel, din algoritm kan vara 75% korrekt. Men vad betyder detta? Du kan härleda denna betydelse genom att jämföra med baslinjens prestanda.
Typiska baslinjer inkluderar de som stöds av scikit-learn ”s” dummy ”estimators :
Klassificering baslinjer:
- “stratifierad”: genererar förutsägelser genom att respektera träningssatsens klassfördelning.
- “most_frequent”: förutsäger alltid den vanligaste etiketten i träningsuppsättningen.
- “prior”: förutsäger alltid clas s som maximerar klassen tidigare.
- ”enhetlig”: genererar förutsägelser enhetligt slumpmässigt.
- ”konstant”: förutsäger alltid en konstant etikett som tillhandahålls av användaren.
Detta är användbart för mått som utvärderar en icke-majoritetsklass.
Regression grundlinjer:
- ”median”: förutsäger alltid medianen för träningsuppsättningen
- ”kvantil”: förutsäger alltid en specificerad kvantil av träningsuppsättningen, försedd med kvantilparametern.
- ”konstant”: förutsäger alltid ett konstant värde som tillhandahålls av användaren.
I allmänhet vill du att din metod ska överträffa de baslinjer du har valt. I exemplet ovan vill du att din noggrannhet på 75% ska vara högre än vilken baslinje du har kört på samma data.
Slutligen, om du har att göra med en specifik domän för maskininlärning (till exempel rekommendatör system), då väljer du vanligtvis baslinjer som är aktuella (SoTA) -metoder – eftersom du vanligtvis vill visa att din strategi gör det bättre än dessa. Till exempel, medan du utvärderar en ny samarbetsfiltreringsalgoritm, kanske du vill jämföra den med matrisfaktorisering – vilket i sig är en inlärningsalgoritm, men nu är en populär baslinje eftersom den har varit så framgångsrik i rekommendationssystemforskning. >
Svar
Eftersom vi har många maskininlärningsalgoritmer, måste vi veta vilken ML-algoritm som passar bäst för vårt problem. Detta kommer att identifieras av baslinjeprognosalgoritmen,
En baslinjeprognosalgoritm ger en uppsättning förutsägelser som du kan utvärdera som du skulle göra förutsägelser för ditt problem, såsom klassificeringsnoggrannhet eller RMSE.
Poängen från dessa algoritmer ger den erforderliga jämförelsepunkten vid utvärdering av alla andra maskininlärningsalgoritmer för ditt problem.
för ytterligare information har vi en mycket bra blogg på ML: Vad betyder " baslinje " i samband med maskininlärning?