Gruppera kategoriska värden
Viktigt
Stödet för Machine Learning Studio (klassisk) upphör den 31 augusti 2024. Vi rekommenderar att du byter till Azure Machine Learning innan dess.
Från och med den 1 december 2021 kan du inte längre skapa nya Machine Learning Studio-resurser (klassisk). Du kan fortsätta att använda befintliga Machine Learning Studio-resurser (klassisk) till och med den 31 augusti 2024.
- Se information om hur du flyttar maskininlärningsprojekt från ML Studio (klassisk) till Azure Machine Learning.
- Läs mer om Azure Machine Learning.
Dokumentationen om ML Studio (klassisk) håller på att dras tillbaka och kanske inte uppdateras i framtiden.
Grupperar data från flera kategorier till en ny kategori
Kategori: Datatransformering/manipulering
Anteckning
Gäller endast för: Machine Learning Studio (klassisk)
Liknande dra och släpp-moduler är tillgängliga i Azure Machine Learning designer.
Modulöversikt
Den här artikeln beskriver hur du använder modulen Grupp kategoriska värden i Machine Learning Studio (klassisk) för att skapa en uppslagstabell på plats.
Ett vanligt användningsexempel för gruppering av kategoriska värden är att sammanfoga flera strängvärden till en ny nivå. Du kan till exempel tilldela enskilda postnummer i en region till en enda regional kod eller gruppera flera produkter under en kategori.
Om du vill använda den här modulen skriver du de uppslagsvärden som du vill använda och mappar befintliga värden till ersättningsvärdena. Du kan bara skapa grupperingen för kategoriska kolumner, inte för kolumner av numerisk typ eller kolumner som har angetts som etiketter eller funktioner.
Alla kolumnvärden som inte uttryckligen mappas till en ny nivå tilldelas till en standardnivå. Om du till exempel inte mappade alla enskilda postnummer skulle de grupperas i en nivå för omappade värden, som du kanske ger namnet Okänd.
Anteckning
Högst 20 nya nivåer kan skapas, inklusive standardnivån. Om du behöver fler värden eller behöver definiera mappningar dynamiskt rekommenderar vi att du använder anpassade R-skript i modulen Kör R-skript . Du kan också SQL instruktioner i modulen Apply SQL Transformation (Tillämpa SQL transformation).
Så här använder du gruppkategoriseringsvärden
Vi rekommenderar att du förbereder listan över befintliga värden och de nya kategorierna i förväg. För varje kategori bör du förbereda ett nytt kategorinamn och en kommaavgränsad lista med värden som ska ingå i kategorin.
Lägg till modulen Group Categorical Values (Gruppera kategoriska värden) i experimentet. Du hittar modulen under DataTransformering, Manipulation.
Anslut en datauppsättning som har de värden som du vill transformera.
I fönstret Egenskaper i Gruppera kategoriska värden använder du kolumnväljaren för att välja den kolumn som har de nivåer som du vill minska.
Vi rekommenderar att du klickar på BÖRJA MED och INGA KOLUMNER för att starta och sedan lägger till kolumner efter namn. Annars kan för många kolumner läggas till som kandidater, vilket leder till ett fel.
Kolumnen måste vara en kategorisk kolumn. Om den inte är det lägger du till Redigera metadata uppströms och ändrar kolumntypen.
Se till att ta bort alla kolumner som strängersättningen inte ska tillämpas på från indata.
För Utdataläge anger du om du bara vill mata ut de nya nivåerna eller lägga till ändringarna för att se den ursprungliga kolumnen, med ersättningarna sida vid sida.
Standardvärdet , ResultOnly, visar endast de nya värdena. Alternativet Inplace ersätter de befintliga kolumnvärdena med de nya nivåerna.
I Namn på standardnivå anger du ett strängvärde som ska användas som ersättning för alla värden som inte uttryckligen mappas. Du kan använda något som "Okänt" eller "Standard".
Anteckning
Det här standardnivåvärdet tillämpas på alla värden som inte kan mappas. Om du av misstag tog med kolumner som du inte hade för avsikt att mappa skulle värdet tillämpas på alla värden i kolumnerna. Kontrollera därför att kolumnmarkeringen är korrekt före bearbetningen.
För Nytt antal nivåer anger du ett tal som anger det totala antalet nya kategorier (nivåer), inklusive standardnivån för omappade värden.
För Namn på ny nivå 1 anger du det nya gruppnamnet för den första kategorin.
I textrutan som följer direkt skriver eller klistrar du in en fullständig lista över alla värden som ska mappas till den nya nivån genom att skriva eller klistra in en fullständig lista över alla värden som ska mappas till den nya nivån. Jokertecken och reguljära uttryck är inte tillåtna.
Fortsätt att skriva nya nivånamn och skriv eller klistra in värden som ska mappas till den nya nivån.
Vi rekommenderar att du sparar listan med värden i en separat fil när du arbetar. Om du ändrar antalet nivåer tas alla strängar som du har skrivit tidigare bort, och du måste börja om från början.
Men om du redigerar en modul som tidigare har sparats kan du återgå till de ursprungliga inställningarna.
Kör experimentet.
Resultat
Om du vill visa resultatet högerklickar du på modulen Grupp kategoriska värden , väljer Resultatdatauppsättning och klickar på Visualisera.
Exempel
Exempel på maskininlärning i praktiken finns i Azure AI Gallery.
Du kan också prova den här modulen själv genom att använda en liten datamängd med vissa strängvariabler som enkelt kan grupperas, till exempel datamängden Automobile price som tillhandahålls i Machine Learning Studio (klassisk).
Anta att du vill gruppera bilar i datamängden Automobile price efter motorstorlek med hjälp av antalet cylindrar. I stället för många olika motorstorlekar skapar du de nya nivåerna "big", "small" och "other" enligt följande:
- Stora motorer: sex cylindrar eller större
- Små motorer: två eller fyra cylindrar
- Övrigt: allt annat
- Lägg till modulen Select Columns in Dataset (Välj kolumner i datamängd) och välj endast
num-of-cylinders
kolumnen. - Lägg till modulen Redigera metadata och ändra
num-of-cylinders
kolumnen till Kategorisk. - Lägg till modulen Group Categorical Values (Gruppkategoriserade värden) och anslut den ändrade datauppsättningen.
- I Namn på standardnivå skriver du
other
. Du behöver inte ange värden för den här nivån. - I Namn på ny nivå 1 skriver du
big
. I listan över gamla nivåer som ska mappa till nivå 1 klistrar du insix, eight, twelve
. - I Namn på ny nivå 2 skriver du
small
. För de mappade värdena klistrar du intwo, four
. - Kör experimentet.
- När du visualiserar resultaten inser du att den ursprungliga datauppsättningen hade några udda motorstorlekar som du inte tog hänsyn till, till exempel
five
ochthree
. Alla sådana objekt mappas till nivånother
.
Teknisk information
Det här avsnittet innehåller implementeringsinformation, tips och svar på vanliga frågor.
Du kan stöta på felmeddelandet "Kolumnen med namnet "<columnname>" är inte i en tillåten kategori."
Det här meddelandet anger att kolumnen som du har valt inte är en kategorisk kolumn. Du kan markera kolumnen som med
Categorical
hjälp av Redigera metadata eller välja en annan kolumn som innehåller lämpliga kategorivärden.
Förväntade indata
Namn | Typ | Description |
---|---|---|
Datamängd | Datatabell | Data som ska grupperas |
Modulparametrar
Name | Intervall | Typ | Standardvärde | Description |
---|---|---|---|---|
Valda kolumner | valfri | ColumnSelection | CategoricalAll | Välj de kolumner som ska grupperas. |
Utdataläge | valfri | OutputTo | ResultOnly | Ange hur kategorietiketterna ska matas ut. |
Standardnivånamn | valfri | Sträng | Ange standardnivån som ska användas om inga mappningar matchar. | |
Nytt antal nivåer | Lista | Antal grupper | Ange antalet nivåer efter att värden har grupperats, inklusive standardnivån. |
Utdata
Namn | Typ | Description |
---|---|---|
Resultatdatauppsättning | Datatabell | Grupperade data |