Share via


Filterbaserat funktionsval

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.

Dokumentationen om ML Studio (klassisk) håller på att dras tillbaka och kanske inte uppdateras i framtiden.

Identifierar funktionerna i en datamängd med störst förutsägelsekraft

Kategori: Funktionsvalsmoduler

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 Filterbaserat funktionsval i Machine Learning Studio (klassisk) för att identifiera de kolumner i indatauppsättningen som har störst förutsägelsekraft.

I allmänhet avser funktionsval processen för att tillämpa statistiska tester på indata, givet angivna utdata, för att avgöra vilka kolumner som är mer förutsägande för utdata. Modulen Filterbaserat funktionsval innehåller flera funktionsvalsalgoritmer att välja bland, inklusive korrelationsmetoder som Pearsons eller Kendalls korrelation, ömsesidiga informationspoäng och chi2-värden. Machine Learning också stöd för antal funktioner som en indikator för informationsvärde.

När du använder modulen Filterbaserat funktionsval anger du en datauppsättning, identifierar kolumnen som innehåller etiketten eller den beroende variabeln och anger sedan en enda metod som ska användas för att mäta funktionens prioritet.

Modulen matar ut en datauppsättning som innehåller de bästa egenskapskolumnerna, rangordnade efter förutsägelsekraft. Den visar även namnen på funktionerna och deras poäng från det valda måttet.

Vad är filterbaserat funktionsval och varför använda det?

Den här modulen för funktionsval kallas "filterbaserad" eftersom du använder det valda måttet för att identifiera irrelevanta attribut och filtrera bort redundanta kolumner från din modell. Du väljer ett enda statistiskt mått som passar dina data, och modulen beräknar en poäng för varje egenskapskolumn. Kolumnerna returneras rangordnade efter deras funktionspoäng.

Genom att välja rätt funktioner kan du förbättra klassificeringens noggrannhet och effektivitet.

Vanligtvis använder du bara kolumnerna med de bästa poängen för att skapa din förutsägelsemodell. Kolumner med dåliga resultat för funktionsval kan lämnas kvar i datauppsättningen och ignoreras när du skapar en modell.

Så här väljer du ett mått för funktionsval

Det filterbaserade funktionsvalet innehåller en mängd olika mått för att utvärdera informationsvärdet i varje kolumn. Det här avsnittet innehåller en allmän beskrivning av varje mått och hur det tillämpas. Ytterligare krav för att använda varje mått anges i avsnittet Tekniska anteckningar och i anvisningarna för att konfigurera varje modul.

  • Pearson-korrelation

    Pearsons korrelationsstatistik, Eller Pearsons korrelationskoefficient, kallas även i statistiska modeller för r värdet. För två variabler returneras ett värde som anger korrelationens styrka

    Pearsons korrelationskoefficient beräknas genom att ta kvariansen för två variabler och dividera med produkten av deras standardavvikelser. Koefficienten påverkas inte av skalningsändringar i de två variablerna.

  • Ömsesidig information

    Den ömsesidiga informationspoängen mäter bidraget från en variabel för att minska osäkerheten om värdet för en annan variabel: nämligen etiketten. Många varianter av den ömsesidiga informationspoängen har utformats för att passa olika fördelningar.

    Den ömsesidiga informationspoängen är särskilt användbar vid funktionsval eftersom den maximerar den ömsesidiga informationen mellan den gemensamma fördelningen och målvariablerna i datauppsättningar med många dimensioner.

  • Kendall-korrelation

    Kendalls rangordningskorrelation är en av flera statistik som mäter relationen mellan rangordningar av olika ordningstalsvariabler eller olika rangordningar för samma variabel. Med andra ord mäter den likheten mellan ordningarna när de rangordnas efter kvantiteter. Både den här koefficienten och Spearman-korrelationskoefficienten är utformade för användning med icke-parametriska och icke-normalt distribuerade data.

  • Spearman-korrelation

    Spearman-koefficienten är ett icke-parametriskt mått på statistiskt beroende mellan två variabler och betecknas ibland av den grekiska bokstaven rho. Spearman-koefficienten uttrycker den grad som två variabler är monotont relaterade till. Det kallas även Spearman rank-korrelation, eftersom det kan användas med ordningstalsvariabler.

  • Chi Squared

    Det tvåvägsbaserade chi2-testet är en statistisk metod som mäter hur nära förväntade värden det faktiska resultatet är. Metoden förutsätter att variabler är slumpmässiga och hämtas från ett lämpligt urval av oberoende variabler. Den resulterande chi2-statistiken anger hur långt resultatet är från det förväntade (slumpmässiga) resultatet.

  • Fisher-poäng

    Fisher-poängen (kallas även för Fisher-metoden eller Fisher kombinerad sannolikhetspoäng) kallas ibland för informationspoängen, eftersom den representerar mängden information som en variabel tillhandahåller om en okänd parameter som den är beroende av.

    Poängen beräknas genom att mäta variansen mellan det förväntade värdet för informationen och det observerade värdet. När variansen minimeras maximeras informationen. Eftersom förväntan på poängen är noll är Fisher-informationen även variansen för poängen.

  • Antalsbaserade

    Antalsbaserade funktionsval är ett enkelt men relativt kraftfullt sätt att hitta information om prediktorer. Den grundläggande idén om underliggande count-based featurization är enkel: genom att beräkna antalet enskilda värden i en kolumn kan du få en uppfattning om fördelningen och vikten för värden, och utifrån detta kan du förstå vilka kolumner som innehåller den viktigaste informationen.

    Antalsbaserade funktionsval är en icke-övervakad metod för funktionsval, vilket innebär att du inte behöver en etikettkolumn. Den här metoden minskar också dimensionaliteten för data utan att förlora information.

    Mer information om hur count-baserade funktioner skapas och varför de är användbara inom maskininlärning finns i Learning med antal.

Tips

Om du behöver ett annat alternativ för val av anpassad funktion använder du modulen Kör R-skript .

Så här konfigurerar du Filter-Based val av funktion

Den här modulen innehåller två metoder för att fastställa funktionspoäng:

Generera funktionspoäng med ett traditionellt statistiskt mått

  1. Lägg till modulen Filterbaserat funktionsval i experimentet. Du hittar den i kategorin Funktionsval i Studio (klassisk).

  2. Anslut en indatauppsättning som innehåller minst två kolumner som är potentiella funktioner.

    För att säkerställa att en kolumn ska analyseras och en funktionspoäng genereras använder du modulen Redigera metadata för att ange attributet IsFeature .

    Viktigt

    Se till att de kolumner som du tillhandahåller som indata är potentiella funktioner. En kolumn som innehåller ett enda värde har till exempel inget informationsvärde.

    Om du vet att det finns kolumner som skulle göra dåliga funktioner kan du ta bort dem från kolumnmarkeringen. Du kan också använda modulen Redigera metadata för att flagga dem som kategoriska.

  3. För Funktionbedömningsmetod väljer du någon av följande etablerade statistiska metoder som ska användas vid beräkning av poäng.

    Metod Krav
    Pearson-korrelation Etiketten kan vara text eller numerisk. Funktioner måste vara numeriska.
    Ömsesidig information Etiketter och funktioner kan vara text eller numeriska. Använd den här metoden för att beräkna funktions prioritet för två kategoriska kolumner.
    Kendall-korrelation Etiketten kan vara text eller numerisk, men funktionerna måste vara numeriska.
    Spearman-korrelation Etiketten kan vara text eller numerisk, men funktionerna måste vara numeriska.
    Chi Squared Etiketter och funktioner kan vara text eller numeriska. Använd den här metoden för att beräkna funktions vikt för två kategoriska kolumner.
    Fisher-poäng Etiketten kan vara text eller numerisk, men funktioner måste vara numeriska.
    Antal Se: Så här använder Count-Based val av funktion

    Tips

    Om du ändrar det valda måttet återställs alla andra val, så se till att ange det här alternativet först!)

  4. Välj alternativet Använd endast funktionskolumner för att endast generera poäng för de kolumner som tidigare har markerats som funktioner.

    Om du avmarkerar det här alternativet skapar modulen en poäng för en kolumn som annars uppfyller villkoren, upp till det antal kolumner som anges i Antal önskade funktioner.

  5. För Målkolumn klickar du på Starta kolumnväljaren för att välja etikettkolumnen antingen efter namn eller dess index (indexen är enbaserade).

    En etikettkolumn krävs för alla metoder som omfattar statistisk korrelation. Modulen returnerar ett designfel om du inte väljer någon etikettkolumn eller flera etikettkolumner.

  6. I Antal önskade funktioner anger du antalet funktionskolumner som du vill ska returneras som ett resultat.

    • Det minsta antalet funktioner som du kan ange är 1, men vi rekommenderar att du ökar det här värdet.

    • Om det angivna antalet önskade funktioner är större än antalet kolumner i datauppsättningen returneras alla funktioner, även de med noll poäng.

    • Om du anger färre resultatkolumner än det finns egenskapskolumner rangordnas funktionerna efter fallande poäng och endast de viktigaste funktionerna returneras.

  7. Kör experimentet eller välj modulen Filterbaserat funktionsval och klicka sedan på Kör valt.

Resultat av funktionsval

När bearbetningen är klar:

  • Om du vill se en fullständig lista över de funktionskolumner som analyserades och deras resultat högerklickar du på modulen, väljer Funktioner och klickar på Visualisera.

  • Om du vill visa datauppsättningen som genereras baserat på dina kriterier för funktionsval högerklickar du på modulen, väljer Datauppsättning och klickar på Visualisera.

Om datauppsättningen innehåller färre kolumner än du förväntade dig kontrollerar du modulinställningarna och datatyperna för de kolumner som anges som indata. Om du till exempel anger Antal önskade funktioner till 1 innehåller utdatauppsättningen bara två kolumner: etikettkolumnen och den mest rangordnade egenskapskolumnen.

Använda antalsbaserade funktionsval

  1. Lägg till modulen Filterbaserat funktionsval i experimentet. Du hittar den i listan över moduler i Studio (klassisk) i gruppen Funktionsval .

  2. Anslut en indatauppsättning som innehåller minst två kolumner som är möjliga funktioner.

  3. Välj Antal baserat i listan över statistiska metoder i listrutan Funktionbedömningsmetod .

  4. För Minsta antal element som inte är noll anger du det minsta antalet egenskapskolumner som ska ingå i utdata.

    Som standard matar modulen ut alla kolumner som uppfyller kraven. Modulen kan inte mata ut någon kolumn som får ett resultat på noll.

  5. Kör experimentet eller välj bara modulen och klicka på Kör valda.

Resultat av val av antalsbaserade funktioner

  • Om du vill se en lista över funktionskolumner med deras poäng högerklickar du på modulen, väljer Funktioner och klickar på Visualisera .
  • Om du vill se datauppsättningen som innehåller de analyserade kolumnerna högerklickar du på modulen, väljer Datauppsättning och klickar på Visualisera.

Till skillnad från andra metoder rangordnar inte funktionsvalsmetoden Count Based variablerna efter högsta poäng, utan returnerar alla variabler med en poäng som inte är noll i sin ursprungliga ordning.

Strängfunktioner får alltid en nollpoäng (0) och är därför inte utdata.

Exempel

Du kan se exempel på hur funktionsval används i Azure AI Gallery:

  • Textklassificering; I det tredje steget i det här exemplet används Filterbaserat funktionsval för att identifiera de 15 bästa funktionerna. Funktions-hashing används för att konvertera textdokument till numeriska vektorer. Pearsons korrelation används sedan på vektorfunktionerna.

  • Val av maskininlärning och funktionstekniker: Den här artikeln innehåller en introduktion till funktionsval och funktionstekniker inom maskininlärning.

Exempel på funktionspoäng finns i Tabell med poäng jämfört.

Teknisk information

Du hittar den här modulen under Datatransformering i kategorin Filter.

Implementeringsdetaljer

Om du använder Pearson-korrelation, Kendall-korrelation eller Spearman-korrelation på en numerisk funktion och en kategorisk etikett beräknas funktionspoängen så här:

  1. För varje nivå i den kategoriska kolumnen beräknar du det villkorliga medelvärdet för den numeriska kolumnen.

  2. Korrelera kolumnen med villkorliga metoder med den numeriska kolumnen.

Krav

  • En funktionsvalspoäng kan inte genereras för en kolumn som har angetts som en etikett eller som en poängkolumn .

  • Om du försöker använda en bedömningsmetod med en kolumn av en datatyp som inte stöds av metoden, kommer modulen antingen att skapa ett fel eller så tilldelas kolumnen en nollpoäng.

  • Om en kolumn innehåller logiska värden (true/false) bearbetas de som True = 1 och False = 0.

  • En kolumn kan inte vara en funktion om den har angetts som etikett eller poäng.

Så här hanteras saknade värden

  • Du kan inte ange en kolumn som målkolumn (etikett) som innehåller alla värden som saknas.

  • Om en kolumn innehåller saknade värden ignoreras de när poängen för kolumnen beräknas.

  • Om en kolumn som anges som en funktionskolumn har alla saknade värden tilldelas en nollpoäng.

Tabell med poäng jämfört

För att ge dig en uppfattning om hur poängen jämförs när du använder olika mått visar följande tabell några funktionsvalspoäng från flera funktioner i datamängden bilpriser, beroende på den beroende variabeln highway-mpg.

Funktionskolumn Pearson-poäng Antal poäng Kendall-poäng Ömsesidig information
motorväg-km/l 1 205 1 1
city-mpg 0.971337 205 0.892472 0.640386
curb-weight 0.797465 171 0.673447 0.326247
hästkrafter 0.770908 203 0.728289 0.448222
price 0.704692 201 0.651805 0.321788
length 0.704662205 205 0.53193 0.281317
motorstorlek 0.67747 205 0.581816 0.342399
bredd 0.677218 205 0.525585 0.285006
bore 0.594572 201 0.467345 0.263846
hjulbas 0.544082 205 0.407696 0.250641
compression-ratio 0.265201 205 0.337031 0.288459
bränslesystem na na na 0.308135
make na na na 0.213872
drive-hjul na na na 0.213171
mankhöjd na na na 0.1924
normalized-losses na na na 0.181734
symboling na na na 0.159521
antal cylindrar na na na 0.154731
motortyp na na na 0.135641
Strävan na na na 0.068217
karosstil na na na 0.06369
bränsletyp na na na 0.049971
antal dörrar na na na 0.017459
motorplats na na na 0.010166
  • Ömsesidig informationspoäng kan skapas för alla kolumntyper, inklusive strängar.

  • De andra poängen som ingår i den här tabellen, till exempel Pearsons korrelation eller antalsbaserade funktionsval, kräver numeriska värden. Strängfunktioner får ett resultat på 0 och ingår därför inte i utdata. Undantag finns i avsnittet Tekniska anteckningar.

  • Den antalsbaserade metoden behandlar inte en etikettkolumn på något annat sätt än funktionskolumner.

Förväntade indata

Namn Typ Description
Datamängd Datatabell Indatauppsättning

Modulparametrar

Name Intervall Typ Standardvärde Description
Metod för funktionsbedömning Lista Bedömningsmetod Välj den metod som ska användas för bedömning
Arbeta endast med egenskapskolumner Valfri Boolesk true Ange om du bara ska använda egenskapskolumner i bedömningsprocessen
Målkolumn Valfri ColumnSelection Ingen Ange målkolumnen
Antal önskade funktioner >=1 Integer 1 Ange antalet funktioner som ska matas ut i resultat
Minsta antal element som inte är noll >=1 Integer 1 Ange antalet funktioner som ska matas ut (för CountBased-metoden)

Utdata

Namn Typ Description
Filtrerad datauppsättning Datatabell Filtrerad datauppsättning
Funktioner Datatabell Namn på utdatakolumner och resultat för funktionsval

Undantag

Undantag Description
Fel 0001 Undantag inträffar om det inte gick att hitta en eller flera angivna kolumner i datauppsättningen.
Fel 0003 Undantag inträffar om en eller flera indata är null eller tomma.
Fel 0004 Undantag inträffar om parametern är mindre än eller lika med ett visst värde.
Fel 0017 Undantaget inträffar om en eller flera angivna kolumner har en typ som inte stöds av den aktuella modulen.

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

Val av funktion
Linjär diskriminant analys för Fisher
A-Z-modullista