En-mot-alla – multiklass

Skapar en klassificeringsmodell med flera klasser från en ensemble med binära klassificeringsmodeller

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.

Modulöversikt

Den här artikeln beskriver hur du använder modulen One-Vs-All Multiclass i Azure Machine Learning Studio (klassisk) för att skapa en klassificeringsmodell som kan förutsäga flera klasser med hjälp av metoden "en kontra alla".

Den här modulen är användbar för att skapa modeller som förutsäger tre eller fler möjliga utfall när resultatet är beroende av kontinuerliga eller kategoriska förutsägelsevariabler. Med den här metoden kan du också använda binära klassificeringsmetoder för problem som kräver flera utdataklasser.

Mer om modeller med en eller alla

Även om vissa klassificeringsalgoritmer tillåter användning av fler än två klasser, begränsar andra möjliga resultat till ett av två värden (en binär eller tvåklassmodell). Även binära klassificeringsalgoritmer kan dock anpassas för klassificeringsuppgifter med flera klasser med hjälp av en mängd olika strategier.

Den här modulen implementerar metoden one vs. all, där en binär modell skapas för var och en av de olika utdataklasserna. Var och en av dessa binära modeller för de enskilda klasserna utvärderas mot dess komplement (alla andra klasser i modellen) som om det vore ett problem med binär klassificering. Förutsägelse utförs sedan genom att köra dessa binära klassificerare och välja förutsägelsen med högsta konfidenspoäng.

I grunden skapas en ensemble med enskilda modeller och resultatet sammanfogas sedan för att skapa en enda modell som förutsäger alla klasser. Därför kan alla binära klassificerare användas som grund för en modell med en eller alla.

Anta till exempel att du konfigurerar en modell med två klassers stödvektormaskin och anger den som indata för modulen En eller alla-multiklasser. Modulen skapar tvåklassmodeller för stödvektormaskin för alla medlemmar i utdataklassen och tillämpar sedan metoden one-vs-all för att kombinera resultaten för alla klasser.

Så här konfigurerar du klassificeraren One-vs-All

Den här modulen skapar en ensemble med binära klassificeringsmodeller för att analysera flera klasser. Om du vill använda den här modulen måste du därför konfigurera och träna en binär klassificeringsmodell först.

Sedan ansluter du den binära modellen till en "one-vs-all"-modul (en eller alla) och tränar ensemblen med modeller med hjälp av Train Model (Träna modell) med en märkt träningsdatamängd.

När du kombinerar modellerna, även om datauppsättningen för träning kan ha flera klassvärden, skapar Multiklassen One-Vs-All flera binära klassificeringsmodeller, optimerar algoritmen för varje klass och sammanfogar sedan modellerna.

  1. Lägg till multiklassen One-vs-All i experimentet i Studio (klassisk). Du hittar den här modulen under Machine Learning - Initiera i kategorin Klassificering.

    Klassificeraren One-Vs-All Multiclass har inga konfigurerbara parametrar. Eventuella anpassningar måste göras i den binära klassificeringsmodell som tillhandahålls som indata.

  2. Lägg till en binär klassificeringsmodell i experimentet och konfigurera modellen. Du kan till exempel använda en tvåklassig dator för vektorstöd eller tvåklassig förstärkt beslutsträd.

    Om du behöver hjälp med att välja rätt algoritm kan du se följande resurser:

  3. Lägg till träningsmodellmodulen i experimentet och anslut den ej tränade klassificeraren som är utdata från One-Vs-All Multiclass.

  4. På de andra indata för Träningsmodellansluter du en märkt träningsdatauppsättning som har flera klassvärden.

  5. Kör experimentet eller välj Train Mode l (Träna läge l) och klicka på Run Selected (Kör valda).

Resultat

När träningen är klar kan du använda modellen för att göra förutsägelser med flera klasser.

Du kan också skicka den ej tränade klassificeraren till korsvalideringsmodellen för korsvalidering mot en etiketterad valideringsdatauppsättning.

Exempel

Exempel på hur den här inlärningsalgoritmen används finns i Azure AI Gallery:

Förväntade indata

Namn Typ Description
Ej tränad binär klassificeringsmodell ILearner-gränssnitt En omtränad binär klassificeringsmodell

Utdata

Namn Typ Description
Ej tränad modell ILearner-gränssnitt En otränad klassificering med flera klasser

Undantag

Undantag Description
Fel 0013 Ett undantag inträffar om eleven som skickades till modulen är fel typ.

En lista över fel som är specifika för Studio-moduler (klassisk) finns i Machine Learning felkoder.

En lista över API-undantag finns i Machine Learning REST API felkoder.

Se även

Klassificering