Beslutsskog med två klasser

Skapar en klassificerings modell med två klasser med hjälp av algoritmen för besluts skog

Kategori: Machine Learning/initiera modell/klassificering

Anteckning

Gäller för: Machine Learning Studio (klassisk)

Det här innehållet gäller endast Studio (klassisk). Liknande dra-och släpp moduler har lagts till i Azure Machine Learning designer. Mer information i den här artikeln är att jämföra de två versionerna.

Översikt över modul

Den här artikeln beskriver hur du använder modulen besluts skog i två klasser i Azure Machine Learning Studio (klassisk) för att skapa en Machine Learning-modell som baseras på algoritmen för besluts skogar.

Besluts skogar är snabba, övervakade Ensemble-modeller. Den här modulen är ett bra alternativ om du vill förutsäga ett mål med högst två resultat. Om du inte är säker på hur du konfigurerar en besluts träd modell för bästa resultat rekommenderar vi att du använder modulen för att finjustera modellens egenskaper för att träna och testa flera modeller. Justera upprepade gånger över flera möjligheter och hitta den optimala lösningen för dig.

Förstå besluts skogar

Detta besluts skogs algoritm är en ensemble-utbildnings metod som är avsedd för klassificerings uppgifter. Ensemble-metoder baseras på den allmänna principen att i stället för att förlita dig på en enskild modell kan du få bättre resultat och en mer generaliserad modell genom att skapa flera relaterade modeller och kombinera dem på ett visst sätt. Vanligt vis ger Ensemble-modeller bättre täckning och exakthet än enskilda besluts träd.

Det finns många sätt att skapa enskilda modeller och kombinera dem i en ensemble. Den här specifika implementeringen av en besluts skog fungerar genom att skapa flera besluts träd och sedan rösta på den mest populära utmatnings klassen. Röstning är en av de bättre kända metoderna för att skapa resultat i en ensemble-modell.

  • Många enskilda klassificerings träd skapas med hela data uppsättningen, men olika (vanligt vis slumpmässiga) Start punkter. Detta skiljer sig från den slumpmässiga skogs metoden, där de enskilda besluts träden bara kan använda viss slumpmässig del av data eller funktioner.
  • Varje träd i trädet besluts skog matar ut ett icke-normaliserat frekvens histogram med etiketter.
  • Agg regerings processen summerar dessa histogram och normaliserar resultatet för att få "sannolikhet" för varje etikett.
  • De träd som har hög förutsägelse säkerhet får en större vikt i det slutliga beslutet av ensemblen.

Besluts träd i allmänhet har många fördelar för klassificerings aktiviteter:

  • De kan fånga icke-linjära besluts gränser.
  • Du kan träna och förutse massor av data eftersom de är effektiva i beräknings-och minnes användning.
  • Val av funktioner är integrerat i inlärnings-och klassificerings processerna.
  • Träd kan hantera data för störningar och många funktioner.
  • De är icke-parameter modeller, vilket innebär att de kan hantera data med varierande distributioner.

Enkla besluts träd kan dock overfit på data och är mindre generalizable än för träd-ensembler.

Mer information finns i besluts skogareller andra handlingar som anges i avsnittet tekniska anteckningar .

Konfigurera Two-Class besluts skog

  1. Lägg till modulen besluts skog i två klass i experimentet i Azure Machine Learning Studio (klassisk) och öppna rutan Egenskaper för modulen.

    Du kan hitta modulen under Machine Learning. Expandera initiera och sedan klassificering.

  2. För metoden för att sampla om väljer du den metod som används för att skapa enskilda träd. Du kan välja mellan bagage eller Replikera.

    • Bagage: bagage kallas även Start agg regering. I den här metoden odlas varje träd på ett nytt exempel som skapats genom att slumpmässigt sampla den ursprungliga data uppsättningen med ersättning tills du har en data uppsättning som är den ursprungliga storleken.

      Modellernas utdata kombineras med röstning, vilket är en form av agg regering. Varje träd i en klassificering besluts skog matar ut ett Normalised frekvens histogram med etiketter. Aggregation är att summera dessa histogram och Normalise för att få de båda etiketterna. På det här sättet kommer de träd som har hög förutsägelse tillförlitlighet att ha en större vikt i det slutliga beslutet av ensemblen.

      Mer information finns i Wikipedia-posten för start agg regering.

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

      Mer information om inlärnings processen med alternativet Replikera finns i de dokument som anges i avsnittet tekniska anteckningar .

  3. Ange hur du vill att modellen ska tränas genom att ställa in alternativet skapa utbildare läge .

    • Enskild parameter: om du vet hur du vill konfigurera modellen kan du ange en viss uppsättning värden som argument.

    • Parameter intervall: om du inte är säker på de bästa parametrarna kan du hitta de optimala parametrarna genom att ange flera värden och använda modulen finjustera modellets standardparametrar för att hitta den optimala konfigurationen. Utbildaren itererar över flera kombinationer av de inställningar du tillhandahöll och avgör den kombination av värden som ger den bästa modellen.

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

    Anteckning

    Det här värdet styr också antalet träd som visas vid visualisering av den tränade modellen. Om du vill se eller skriva ut ett enda träd kan du ange värdet till 1. Men det går bara att skapa ett träd (trädet med den inledande uppsättningen parametrar) och inga ytterligare iterationer utförs.

  5. Ange ett tal för att begränsa det maximala djupet för besluts träden för att begränsa det maximala djupet för besluts träd. Att öka djupet i trädet kan öka precisionen på risken för viss överanpassning och ökad inlärnings tid.

  6. För antalet slumpmässiga delningar per nod anger du antalet delningar som ska användas när du skapar varje nod i trädet. En delning innebär att funktionerna i varje nivå i trädet (noden) är slumpmässigt uppdelade.

  7. För minsta antal sampel per lövnod anger du det minsta antal fall som krävs för att skapa en terminalsession (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. Till exempel, med standardvärdet 1, kan ett enda ärende orsaka att en ny regel skapas. Om du ökar värdet till 5 måste tränings data innehålla minst 5 fall som uppfyller samma villkor.

  8. Välj alternativet Tillåt okända värden för kategoriska-funktioner om du vill skapa en grupp för okända värden i träningen eller verifierings uppsä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änings data.

  9. Bifoga en etikettad data uppsättning och en av inlärnings modulerna:

    Anteckning

    Om du skickar ett parameter intervall för att träna modellenanvänds endast det första värdet i parameter intervall listan.

    Om du skickar en enda uppsättning parameter värden till modulen finjustera modellens standardparametrar , ignorerar värdena och använder standardvärdena för eleven när den förväntar sig ett intervall med inställningar för varje parameter.

    Om du väljer alternativet parameter intervall och anger ett enda värde för en parameter, används det enskilda värdet i hela svepet, även om andra parametrar ändras i ett intervall med värden.

Resultat

När utbildningen är klar:

  • Om du vill se trädet som skapades på varje iteration, högerklickar du på träna modell och väljer tränad modell att visualisera. Om du använder finjustera modellens egenskaperhögerklickar du på modulen och väljer tränad bästa modell för att visualisera den bästa modellen.

    Klicka på varje träd för att öka detalj nivån i delningarna och se reglerna för varje nod.

  • Om du vill spara en ögonblicks bild av modellen högerklickar du på den tränade modellens utdata och väljer Spara modell. Den sparade modellen uppdateras inte vid efterföljande körningar av experimentet.

  • Om du vill använda modellen för poängsättning lägger du till modulen Poäng modell i ett experiment.

Exempel

Exempel på hur besluts skogar används i Machine Learning finns i exempel experimenten i Azure AI Gallery:

Tekniska anteckningar

Det här avsnittet innehåller ytterligare information om implementering, forskning och vanliga frågor.

Användnings tips

Om du har begränsade data, eller om du vill minimera den tid som krävs för att träna modellen, kan du prova följande inställningar:

Begränsad inlärnings uppsättning

Om inlärnings uppsättningen innehåller ett begränsat antal instanser:

  • Skapa besluts skogen genom att använda ett stort antal besluts träd (till exempel mer än 20).
  • Använd alternativet bagage för omsampling.
  • Ange ett stort antal slumpmässiga delningar per nod (till exempel mer än 1 000).

Begränsad inlärnings tid

Om inlärnings uppsättningen innehåller ett stort antal instanser och inlärnings tiden är begränsad:

  • Skapa besluts skogen genom att använda färre besluts träd (till exempel 5-10).
  • Använd alternativet Replikera för omsampling.
  • Ange ett mindre antal slumpmässiga delningar per nod (till exempel färre än 100).

Implementeringsdetaljer

Den här artikeln av Microsoft Research ger värdefull information om Ensemble-metoder som använder besluts träd. Från Stumps till träd till skogar.

Mer information om inlärnings processen med alternativet Replikera finns i besluts skogar för visuellt innehåll och medicinsk bild analys. Criminisi och J. Shotton. Springer 2013.

Parametrar för modul

Name Intervall Typ Standardvärde Beskrivning
Omsamplings metod Valfri ResamplingMethod Bagage Välj en metod för att sampla
Antal besluts träd >= 1 Integer 8 Ange antalet besluts träd som ska skapas i ensemblen
Maximalt djup för besluts träd >= 1 Integer 32 Ange det maximala djupet för besluts träd som kan skapas
Antal slumpmässiga delningar per nod >= 1 Integer 128 Ange antalet delningar som genereras per nod, från vilken den optimala delningen är vald
Minsta antal sampel per lövnod >= 1 Integer 1 Ange det minsta antalet tränings exempel som krävs för att skapa en lövnod
Tillåt okända värden för kategoriska-funktioner Valfri Boolesk Sant Ange om okända värden för befintliga kategoriska-funktioner kan mappas till en ny, ytterligare funktion

Utdata

Namn Typ Beskrivning
Modell som inte är tränad ILearner-gränssnitt En modell med en klass som inte är tränad.

Se även

Klassning
Besluts skogs regression
Besluts skog med flera klasser
En-ö-modul lista