Two-Class Decision Forest-komponent

Den här artikeln beskriver en komponent i Azure Machine Learning-designern.

Använd den här komponenten för att skapa en maskininlärningsmodell baserat på beslutsskogsalgoritmen.

Beslutsskogar är snabba, övervakade ensemblemodeller. Den här komponenten är ett bra alternativ om du vill förutsäga ett mål med högst två resultat.

Förstå beslutsskogar

Den här beslutsskogsalgoritmen är en ensembleinlärningsmetod som är avsedd för klassificeringsuppgifter. Ensemblemetoder baseras på den allmänna principen att i stället för att förlita dig på en enda modell kan du få bättre resultat och en mer generaliserad modell genom att skapa flera relaterade modeller och kombinera dem på något sätt. I allmänhet ger ensemblemodeller bättre täckning och noggrannhet än enskilda beslutsträd.

Det finns många sätt att skapa enskilda modeller och kombinera dem i en ensemble. Den här implementeringen av en beslutsskog fungerar genom att skapa flera beslutsträd och sedan rösta på den mest populära utdataklassen. Röstning är en av de mer kända metoderna för att generera resultat i en ensemblemodell.

  • Många enskilda klassificeringsträd skapas med hjälp av hela datauppsättningen, men olika (vanligtvis randomiserade) startpunkter. Detta skiljer sig från den slumpmässiga skogsmetoden, där de enskilda beslutsträden kanske bara använder någon randomiserad del av data eller funktioner.
  • Varje träd i beslutsskogsträdet matar ut ett histogram med etiketter som inte normaliseras.
  • Sammansättningsprocessen summerar dessa histogram och normaliserar resultatet för att få "sannolikheterna" för varje etikett.
  • De träd som har högt förutsägelseförtroende kommer att ha en större vikt i ensemblens slutliga beslut.

Beslutsträd har i allmänhet många fördelar för klassificeringsuppgifter:

  • De kan avbilda icke-linjära beslutsgränser.
  • Du kan träna och förutsäga många data eftersom de är effektiva när det gäller beräkning och minnesanvändning.
  • Funktionsval är integrerat i träning och klassificeringsprocesser.
  • Träd kan hantera bullriga data och många funktioner.
  • De är icke-parametriska modeller, vilket innebär att de kan hantera data med olika distributioner.

Enkla beslutsträd kan dock överanpassa data och är mindre generaliserbara än trädensembler.

Mer information finns i Beslutsskogar.

Konfigurera

  1. Lägg till komponenten Tvåklasssbeslutsskog i din pipeline i Azure Machine Learning och öppna fönstret Egenskaper för komponenten.

    Du hittar komponenten under Machine Learning. Expandera Initiera och sedan Klassificering.

  2. För Återförsäljningsmetod väljer du den metod som används för att skapa enskilda träd. Du kan välja mellan Att påse eller replikera.

    • Påse: Påse kallas även bootstrap-aggregering. I den här metoden odlas varje träd i ett nytt exempel, som skapas genom att slumpmässigt sampla den ursprungliga datauppsättningen med ersättning tills du har en datauppsättning storleken på originalet.

      Utdata från modellerna kombineras genom röstning, vilket är en form av aggregering. Varje träd i en klassificeringsbeslutsskog matar ut ett histogram med onormaliserad frekvens med etiketter. Aggregeringen är att summera dessa histogram och normalisera för att få "sannolikheterna" för varje etikett. På detta sätt kommer de träd som har högt förutsägelseförtroende att ha en större vikt i ensemblens slutliga beslut.

      Mer information finns i Wikipedia-posten för Bootstrap-aggregering.

    • Replikera: Vid replikering tränas varje träd på exakt samma indata. Bestämningen av vilket delat predikat som används för varje trädnod förblir slumpmässigt och träden kommer att vara olika.

  3. Ange hur du vill att modellen ska tränas genom att ange alternativet Skapa träningsläge .

    • Enkel parameter: Om du vet hur du vill konfigurera modellen kan du ange en specifik uppsättning värden som argument.

    • Parameterintervall: Om du inte är säker på de bästa parametrarna kan du hitta de optimala parametrarna med hjälp av komponenten Tune Model Hyperparameters . Du anger vissa värden och utbildaren itererar över flera kombinationer av inställningarna för att fastställa kombinationen av värden som ger det bästa resultatet.

  4. För Antal beslutsträd anger du det maximala antalet beslutsträd som kan skapas i ensemblen. Genom att skapa fler beslutsträd kan du eventuellt få bättre täckning, men träningstiden ökar.

    Anteckning

    Om du anger värdet till 1. Endast ett träd kan dock skapas (trädet med den ursprungliga uppsättningen parametrar) och inga ytterligare iterationer utförs.

  5. För Maximalt djup för beslutsträden anger du ett tal för att begränsa det maximala djupet för beslutsträd. Att öka trädets djup kan öka precisionen, med risk för viss överanpassning och ökad träningstid.

  6. För Minsta antal exempel per lövnod anger du det minsta antal fall som krävs för att skapa en terminalnod (löv) i ett träd.

    Genom att öka det här värdet ökar du tröskelvärdet för att skapa nya regler. Med standardvärdet 1 kan till exempel även ett enskilt ärende leda till att en ny regel skapas. Om du ökar värdet till 5 måste träningsdata innehålla minst fem fall som uppfyller samma villkor.

  7. Välj alternativet Tillåt okända värden för kategoriska funktioner för att skapa en grupp för okända värden i tränings- eller valideringsuppsättningarna. Modellen kan vara mindre exakt för kända värden, men den kan ge bättre förutsägelser för nya (okända) värden.

    Om du avmarkerar det här alternativet kan modellen bara acceptera de värden som finns i träningsdata.

  8. Bifoga en märkt datauppsättning och träna modellen:

    • Om du anger Skapa träningsläge till Enskild parameter ansluter du en taggad datauppsättning och komponenten Träna modell .

    • Om du ställer in Skapa träningslägeParameterintervall ansluter du en taggad datauppsättning och tränar modellen med hjälp av Tune Model Hyperparameters.

    Anteckning

    Om du skickar ett parameterintervall till Träna modell används endast standardvärdet i listan med enskilda parametrar.

    Om du skickar en enda uppsättning parametervärden till komponenten Tune Model Hyperparameters ignorerar den värdena när den förväntar sig ett intervall med inställningar för varje parameter och använder standardvärdena för eleven.

    Om du väljer alternativet Parameterintervall och anger ett enda värde för valfri parameter används det enskilda värdet som du angav under svepningen, även om andra parametrar ändras över ett värdeintervall.

Resultat

När träningen är klar:

  • Om du vill spara en ögonblicksbild av den tränade modellen väljer du fliken Utdata på den högra panelen i komponenten Träna modell . Välj ikonen Registrera datauppsättning för att spara modellen som en återanvändbar komponent.

  • Om du vill använda modellen för bedömning lägger du till komponenten Poängsätta modell i en pipeline.

Nästa steg

Se den uppsättning komponenter som är tillgängliga för Azure Machine Learning.