Linjär korrelation för beräkning
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.
Beräknar den linjära korrelationen mellan kolumnvärden i en datauppsättning
Kategori: Statistiska funktioner
Anteckning
Gäller endast för: Machine Learning Studio (klassisk)
Liknande dra och släpp-moduler finns i Azure Machine Learning designer.
Modulöversikt
Den här artikeln beskriver hur du använder modulen Compute Linear Correlation i Machine Learning Studio (klassisk) för att beräkna en uppsättning Pearson-korrelationskoefficienter för varje möjligt par variabler i indatauppsättningen.
Pearson-korrelationskoefficienten, som ibland kallas Pearsons R-test, är ett statistiskt värde som mäter den linjära relationen mellan två variabler. Genom att undersöka koefficientvärdena kan du härleda något om styrkan i relationen mellan de två variablerna och om de är positivt korrelerade eller negativt korrelerade.
Så här konfigurerar du linjär korrelation
Innan du beräknar korrelationskoefficienten finns det vissa förutsättningar, till exempel att rensa dina data och verifiera att relationen mellan variablerna är lämplig för den här modulen. Du måste också ta bort eller imputera saknade värden.
Följande begränsningar gäller när du använder den här modulen:
Modulen Beräkna linjär korrelation kan endast bearbeta numeriska värden. Alla andra typer av värden, inklusive saknade värden, icke-numeriska värden och kategoriska värden, behandlas som NaN.
Pearsons korrelation beräknas för alla numeriska kolumner i datauppsättningen som skickas som indata. Se till att utesluta alla kolumner som är lämpliga för den här analysen.
Det går inte att använda linjär korrelation för beräkning med data som saknar värden.
Steg 1: Fastställa linjäritet
Om kolumnerna du testar inte förväntas ha någon form av linjär relation är det ingen mening med att generera den här koefficienten. Därför är det en bra idé att testa kolumnerna först för att se om de har rätt typ av data och rätt typ av distribution i allmänhet.
Det finns olika sätt att avgöra om relationen mellan kolumnerna är ungefär linjär:
Skapa ett punktdiagram med variablerna i Studio (klassisk) med hjälp av alternativet Visualisera i datauppsättningen. Klicka på en av de numeriska variabelkolumnerna, expandera Visualiseringar och klicka på jämför med. Välj en annan variabel och ett punktdiagram genereras automatiskt. Om en annan typ av diagram genereras innebär det att minst en kolumn har en annan (icke-numerisk) datatyp.
Beräkna en regressionsekvation för de två variablerna. Det finns många R-paket som stöder detta, som du kan läsa in och använda i modulen Kör R-skript .
Steg 2: Rensa data
Du måste ta bort eller fylla i saknade värden, ta bort eller klippa ut extremvärden och se till att kolumnerna har rätt datatyp.
Kontrollera platshållarna och ersätt det med andra lämpliga värden innan du använder den här modulen. Om NaNs infogades för saknade värden när datauppsättningen lästes in från källan kan det orsaka ett fel. Platshållarvärden som 999
eller -1
kan också orsaka felaktiga resultat.
För att förbereda dina data kan du använda följande moduler:
Du kan justera datatypen för kolumnerna med hjälp av Redigera metadata. Kontrollera att de kolumner som du vill analysera är markerade som funktionskolumner.
Steg 3: Generera koefficienten
Lägg till modulen Compute Linjär korrelation i experimentet. Du hittar den här modulen i kategorin Statistiska funktioner i Machine Learning Studio (klassisk).
Lägg till den datauppsättning som du vill analysera.
Vi rekommenderar att du lägger till modulen Select Columns in Dataset (Välj kolumner i datauppsättning ) mellan din datauppsättning och modulen Compute Linear Correlation (Beräknings linjär korrelation ) för att ta bort onödiga kolumner. Konfigurera modulen Välj kolumner i datauppsättning för att bara hämta de två numeriska kolumner som du vill beräkna koefficienter för.
Annars kan modulen Compute Linear Correlation generera många kolumner i NaN.
Det finns inga parametrar att ange för den här modulen. Det misslyckas dock om de kolumner som du skickar som indata inte uppfyller kraven.
Kör experimentet.
Resultat för två kolumner
Med tanke på två funktionskolumner returnerar modulen Compute Linjär korrelation korrelation korrelationskoefficienten för skalär Pearson-produktögonblick (exempel). Pearson-korrelationskoefficienten (kallas ofta r) varierar i värde från +1 till -1.
+1
anger en stark positiv linjär relation-1
anger en stark negativ linjär korrelation0
anger ingen linjär relation mellan de två variablerna.
Tolkningen av koefficienterna beror mycket på problemet du modellerar och de variabler du studerar. Det är därför viktigt att förstå kontexten för data när du rapporterar och tolkar Pearsons korrelationskoefficient.
Om du är säker på att variablerna inte är relaterade och pearsons korrelationskoefficient är starkt positiv (r > .5 eller så), bör du undersöka vidare.
Om du använder linjär korrelation för två variabler som du vet är perfekt korrelerade, och koefficientvärdena inte är vad du förväntar dig, kan det tyda på ett problem i data.
Resultat för fler än två kolumner
Med tanke på en matris (dvs. fler än två funktionskolumner) returnerar modulen Compute Linjär korrelation en uppsättning Pearson-produktögonblickskorrelationer mellan varje par med funktionskolumner.
Resultatet är därför en n x n tabell som innehåller koefficienterna för varje kombination av n-kolumnerna . Om några kolumner inte uppfyller kriterierna returneras ett NaN ("inte ett tal"-värde).
Anta till exempel att du har skickat de två numeriska kolumnerna wheel-base
och curb-weight
plus en kategorisk kolumn ( make
från datauppsättningen Automobile price). Resultatet är en 3x3-tabell med koefficienter för alla möjliga kombinationer av indatakolumnerna:
make |
wheel-base |
curb-weight |
---|---|---|
Nan | Nan | Nan |
Nan | 1 | 0.776386 |
Nan | 0.776386 | 1 |
I den här tabellen anses raderna representera var och en av variablernamake
, wheel-base
, och curb-weight
, i den ordningen.
- R-värdet för korrelationen
wheel-base
till sig själv är 1. - R-värdet för korrelationen
wheel-base
tillcurb-weight
är 0,776386. - Alla korrelationer som involverar kolumnen
make
resulterar i NaN, inklusive korrelationen med sig själv, eftersommake
är en strängfunktion.
Vi rekommenderar att du tar bort icke-numeriska kolumner för att undvika komplexa tabeller med många meningslösa värden.
Exempel
Information om hur den här modulen används i maskininlärningsexperiment finns i Azure AI-galleriet:
- Databearbetning och analys: Det här exemplet visar flera tekniker för att ändra dina data. Compute Linjär korrelation används för att identifiera potentiella funktionskolumner.
Tekniska anteckningar
Det här avsnittet innehåller implementeringsinformation, tips och svar på vanliga frågor.
Implementeringsdetaljer
Om kolumnen som skickas som indata innehåller skalärer behandlas indatamatriserna (x och y) som vektorer och Korrelationen för Pearson-produktögonblick beräknas på följande sätt:
I den här formeln innehåller varje matris n element och medelvärdet för x - och y-exemplen är μx respektive μy.
För en matris är en matris med data (X) indata, där varje kolumn representerar en vektor med värden. Datamatrisen ska vara n-by-m. Utdata är matrisen m-by-m, R som definieras av
I den här formeln representerar μx medelvärdet för kolumnen xi. Elementen på I,j är alltid lika med 1, eftersom de representerar korrelationen mellan en vektor och sig själv.
Förväntade indata
Namn | Typ | Description |
---|---|---|
Datamängd | Datatabell | Indatauppsättning |
Utdata
Namn | Typ | Description |
---|---|---|
Resultatdatauppsättning | Datatabell | Korrelationsmatris |
Undantag
Undantag | Description |
---|---|
Fel 0003 | Ett undantag inträffar om en eller flera indata är null eller tomma. |
Fel 0020 | Ett undantag inträffar om antalet kolumner i vissa datauppsättningar som skickas till modulen är för litet. |
Fel 0021 | Ett undantag inträffar om antalet rader i vissa datauppsättningar som skickas till modulen är för litet. |
En lista över fel som är specifika för Studio-moduler (klassiska) finns i Machine Learning Felkoder.
En lista över API-undantag finns i Machine Learning REST API-felkoder.