Självstudie 1: Förutsäga kreditrisk – Mašinsko učenje Studio (klassisk)
GÄLLER FÖR: Mašinsko učenje Studio (klassisk) Azure Mašinsko učenje
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 Mašinsko učenje.
- Läs mer om Azure Mašinsko učenje
Dokumentationen om ML Studio (klassisk) håller på att dras tillbaka och kanske inte uppdateras i framtiden.
I den här självstudien tittar vi närmare på hur du utvecklar en lösning för förutsägelseanalys. Du utvecklar en enkel modell i Mašinsko učenje Studio (klassisk). Sedan distribuerar du modellen som en Mašinsko učenje webbtjänst. Den här distribuerade modellen kan göra förutsägelser med nya data. Den här självstudien är del ett i en självstudieserie i tre delar.
Anta att du behöver förutsäga kreditrisken för en person baserat på den information som han eller hon fyller i på en kreditansökan.
Kreditriskbedömning är ett komplext problem, men den här självstudien kommer att förenkla processen. Du använder den som ett exempel på hur du kan skapa en förutsägelseanalyslösning med hjälp av Mašinsko učenje Studio (klassisk). Du använder a Mašinsko učenje Studio (klassisk) och en Mašinsko učenje webbtjänst för den här lösningen.
I den här självstudien i tre delar börjar du med offentligt tillgängliga kreditriskdata. Därefter utvecklar du och tränar en förutsägelsemodell. Slutligen ska du distribuera modellen som en webbtjänst.
I den här delen av självstudien ska du:
- Skapa en Mašinsko učenje Studio-arbetsyta (klassisk)
- Ladda upp befintliga data
- Skapa ett experiment
Du kan sedan använda det här experimentet till att träna modeller i del 2 och sedan distribuera dem i del 3.
Förutsättningar
Den här självstudien förutsätter att du har använt Mašinsko učenje Studio (klassisk) minst en gång tidigare och att du har viss förståelse för maskininlärningskoncept. Men vi förväntar oss inte att du är en expert.
Om du aldrig har använt Mašinsko učenje Studio (klassisk) tidigare kanske du vill börja med snabbstarten Skapa ditt första datavetenskapsexperiment i Mašinsko učenje Studio (klassisk). Snabbstarten tar dig igenom Mašinsko učenje Studio (klassisk) för första gången. Vi går vi igenom grunderna och förklarar hur du drar och släpper moduler i ett experiment, hur du kopplar ihop dem och hur du kör experimentet. Vi avslutar med att titta på resultatet.
Dricks
Du hittar en fungerande kopia av det experiment som du skapar i den här självstudien i Azure AI Gallery. Gå till Självstudie – Förutsäga kreditrisk och klicka på Öppna i Studio för att ladda ned en kopia av experimentet till din Mašinsko učenje Studio-arbetsyta (klassisk).
Skapa en Mašinsko učenje Studio-arbetsyta (klassisk)
Om du vill använda Mašinsko učenje Studio (klassisk) måste du ha en Mašinsko učenje Studio-arbetsyta (klassisk). Den här arbetsytan innehåller de verktyg du behöver för att skapa, hantera och publicera experiment.
Information om hur du skapar en arbetsyta finns i Skapa och dela en Mašinsko učenje Studio-arbetsyta (klassisk).
När arbetsytan har skapats öppnar du Mašinsko učenje Studio (klassisk) (https://studio.azureml.net/Home). Om du har fler än en arbetsyta kan du välja arbetsytan i verktygsfältet i det övre högra hörnet i fönstret.
Dricks
Om du är arbetsytans ägare kan du dela de experiment som du arbetar med genom att bjuda in andra till arbetsytan. Du kan göra detta i Mašinsko učenje Studio (klassisk) på sidan INSTÄLLNINGAR. Du behöver bara Microsoft-kontot eller organisationskontot för varje användare.
På sidan SETTINGS (Inställningar) klickar du på USERS (Användare) och sedan på INVITE MORE USERS (Bjud in fler användare) längst ned i fönstret.
Ladda upp befintliga data
För att utveckla en förutsägande modell för kreditrisk, behöver du data som du kan använda för att träna och sedan testa modellen. I den här självstudien använder du ”UCI Statlog (German Credit Data) Data Set” (kreditdata från Tyskland) från UC Irvine Machine Learning-databasen. Den finns här:
https://archive.ics.uci.edu/ml/datasets/Statlog+(German+Credit+Data)
Du använder filen med namnet german.data. Ladda ned den här filen till den lokala hårddisken.
Datamängden german.data innehåller rader med 20 variabler för 1000 tidigare kreditsökanden. De här 20 variablerna representerar datamängdens uppsättning med funktioner (funktionsvektorn), som tillhandahåller identifieringsegenskaper för varje kreditsökande. Ytterligare en kolumn i varje rad representerar sökandens beräknade kreditrisk. 700 sökande har identifierats som en låg kreditrisk och 300 som en hög risk.
UCI-webbplatsen innehåller en beskrivning av attributen för funktionsvektor för dessa data. Dessa data innehåller ekonomisk information, kredithistorik, anställningsstatus och personlig information. Varje sökande har getts en binär klassificering som anger om sökanden utgör en låg eller hög kreditrisk.
Du använder dessa data för att träna en modell för förutsägelseanalys. När du är klar bör din modell kunna acceptera en funktionsvektor för en ny individ och förutsäga om de är en låg eller hög kreditrisk.
Här är en intressant problemvariant.
I beskrivningen av datamängden på UCI-webbplatsen står det hur mycket det kostar om du skapar en felaktig klassificering av kreditrisken för en person. Om modellen förutsäger en hög kreditrisk för en person som faktiskt utgör en låg kreditrisk har modellen gjort en felaktig klassificering.
Den omvända felklassificeringen är dock fem gånger dyrare för finansinstitutet: om modellen förutsäger en låg kreditrisk för en person som faktiskt utgör en hög kreditrisk.
Därför ska du träna modellen så att kostnaden för den senare typen av felklassificering är fem gånger högre än den andra felklassificeringen.
Ett enkelt sätt att göra detta när du tränar modellen i experimentet är att duplicera (fem gånger) de poster som representerar någon med en hög kreditrisk.
Om modellen sedan felklassificerar någon som en låg kreditrisk när den personen faktiskt utgör en hög risk genomför modellen samma felklassificering fem gånger, en gång för varje dubblett. Detta ökar kostnaden för det här felet i träningsresultatet.
Konvertera datamängdens format
Den ursprungliga datamängden använder ett format med blankstegsavgränsning. Mašinsko učenje Studio (klassisk) fungerar bättre med en CSV-fil (kommaavgränsat värde), så du konverterar datauppsättningen genom att ersätta blanksteg med kommatecken.
Det finns många sätt att konvertera dessa data. Ett sätt är att använda följande Windows PowerShell-kommando:
cat german.data | %{$_ -replace " ",","} | sc german.csv
Ett annat sätt är att använda Unix sed-kommandot:
sed 's/ /,/g' german.data > german.csv
I båda fallen skapar du en kommaavgränsad version av data i en fil med namnet german.csv som du kan använda i experimentet.
Ladda upp datauppsättningen till Mašinsko učenje Studio (klassisk)
När data har konverterats till CSV-format måste du ladda upp dem till Mašinsko učenje Studio (klassisk).
Öppna startsidan för Mašinsko učenje Studio (klassisk) (https://studio.azureml.net).
Klicka på menyn i det övre vänstra hörnet i fönstret, klicka på Azure Mašinsko učenje, välj Studio och logga in.
Klicka på +NEW (Ny) längst ned i fönstret.
Välj DATASET (Datamängd).
Välj FROM LOCAL FILE (Från lokal fil).
I dialogrutan Upload a new dataset (Ladda upp en ny datamängd) klickar du på Bläddra och letar upp filen german.csv som du skapade.
Ange ett namn för datamängden. I den här självstudien kallar du den ”UCI German Credit Card Data”.
För datatypen väljer du Generic CSV File With no header (.nh.csv) (Generisk CSV-fil utan rubrik).
Lägg till en beskrivning om du vill.
Klicka på kryssmarkeringen OK.
Detta laddar upp data till en datamängdsmodul som du kan använda i ett experiment.
Du kan hantera datauppsättningar som du har laddat upp till Studio (klassisk) genom att klicka på fliken DATAUPPSÄTTNINGAR till vänster om studiofönstret (klassiskt).
Mer information om hur du importerar andra typer av data till ett experiment finns i Importera träningsdata till Mašinsko učenje Studio (klassisk).
Skapa ett experiment
Nästa steg i den här självstudien är att skapa ett experiment i Mašinsko učenje Studio (klassisk) som använder datauppsättningen som du laddade upp.
I Studio (klassisk) klickar du på +NYTT längst ned i fönstret.
Välj EXPERIMENT och sedan ”Blank Experiment” (Tomt experiment).
Välj det fördefinierade experimentnamnet överst på arbetsytan och byt namn på de till ett mer beskrivande namn.
Dricks
Det är bra att fylla i Summary (Sammanfattning) och Description (Beskrivning) för experimentet i fönstret Properties (Egenskaper). De här egenskaperna ger dig möjlighet att dokumentera experimentet så att alla som tittar på det senare kan förstå dina mål och metoder.
I modulpaletten till vänster om experimentets arbetsyta expanderar du Saved Datasets (Sparade datamängder).
Leta upp den datamängd som du skapade under My Datasets (Mina datamängder) och dra den till arbetsytan. Du kan även hitta datamängden genom att ange namnet i rutan Search (Sök) ovanför paletten.
Förbereda data
Du kan visa de första 100 raderna av data och viss statistisk information för hela datamängden: Klicka på datamängdens utdataport (den lilla cirkeln längst ned) och välj Visualisera.
Eftersom datafilen inte kom med kolumnrubriker har Studio (klassisk) angett allmänna rubriker (Col1, Col2 osv.). Bra rubriker är inte nödvändiga för skapandet av en modell, men de gör det lättare att arbeta med data i experimentet. Och när du senare publicerar den här modellen i en webbtjänst hjälper rubrikerna till att identifiera kolumnerna för användare av tjänsten.
Du kan lägga till kolumnrubriker med hjälp av modulen Edit Metadata (Redigera metadata).
Du använder modulen Edit Metadata (Redigera metadata) för att ändra metadata som associeras med en datamängd. I det här fallet använder du den för att ge kolumnrubrikerna mer användbara namn.
Om du vill använda Redigera metadata anger du först vilka kolumner som ska ändras (i det här fallet alla.) Därefter anger du vilken åtgärd som ska utföras på dessa kolumner (i det här fallet ändra kolumnrubriker.)
På modulpaletten skriver du ”metadata” i rutan Search (Sök). Edit Metadata (Redigera metadata) visas i modullistan.
Klicka och dra modulen Edit Metadata (Redigera metadata) till arbetsytan och släpp den nedanför den datamängd som du lade till tidigare.
Ansluta datamängden till Edit Metadata (Redigera metadata): klicka på utdataporten för datamängden (den lilla cirkeln längst ned i datamängden), dra till indataporten för Edit Metadata (Redigera metadata) (den lilla cirkeln längst upp i modulen) och släpp sedan musknappen. Datamängden och modulen förblir anslutna även om du flyttar runt endera av dem på arbetsytan.
Nu bör experimentet se ut ungefär så här:
Det röda utropstecknet anger att du inte har angett egenskaperna för den här modulen ännu. Det ska vi göra nu.
Dricks
Du kan lägga till en kommentar till en modul genom att dubbelklicka på modulen och skriva text. På så sätt kan du snabbt se vad modulen gör i experimentet. I det här fallet dubbelklickar du på modulen Edit Metadata (Redigera metadata) och skriver kommentaren ”Lägg till kolumnrubriker”. Klicka någon annanstans på arbetsytan för att stänga textrutan. Om du vill visa kommentaren klickar du på nedåtpilen i modulen.
Välj Edit Metadata (Redigera metadata). I fönstret Properties (Egenskaper) till höger om arbetsytan klickar du på Launch column selector (Starta kolumnväljaren).
I dialogrutan Välj kolumner markerar du alla rader i Tillgängliga kolumner och klickar för > att flytta dem till Valda kolumner. Dialogrutan bör se ut så här:
Klicka på kryssmarkeringen OK.
I fönstret Properties (Egenskaper) letar du upp parametern New column names (Nya kolumnnamn). I det här fältet anger du en lista med namn för de 21 kolumnerna i datamängden, avgränsade med kommatecken och i kolumnordning. Du kan hämta kolumnnamnen från datamängdens dokumentation på UCI-webbplatsen eller kopiera och klistra in följande lista:
Status of checking account, Duration in months, Credit history, Purpose, Credit amount, Savings account/bond, Present employment since, Installment rate in percentage of disposable income, Personal status and sex, Other debtors, Present residence since, Property, Age in years, Other installment plans, Housing, Number of existing credits, Job, Number of people providing maintenance for, Telephone, Foreign worker, Credit risk
Fönstret Properties (Egenskaper) ser ut så här:
Dricks
Om du vill kontrollera kolumnrubrikerna kör du experimentet (klicka på RUN (Kör) nedanför arbetsytan för experimentet). När det har körts klart (en grön markering visas i Edit Metadata (Redigera metadata)) klickar du på utdataporten för modulen Edit Metadata (Redigera metadata) och väljer Visualize (Visualisera). Du kan visa utdata från valfri modul på samma sätt för att visa förloppet för data genom experimentet.
Skapa datamängder för träning och testning
Du behöver en del data för att träna modellen och en del för att testa den. I nästa steg i experimentet delar du därför in datamängden i två separata datamängder: en för att träna modellen och en för att testa den.
Det gör du med hjälp av modulen Split Data (Dela data).
Leta upp modulen Split Data (Dela data), dra den till arbetsytan och anslut den till modulen Edit Metadata (Redigera metadata).
Som standard är delningsförhållandet 0,5 och parametern Randomized split (Slumpmässig delning) anges. Det innebär att en slumpmässig halva av data matas ut via en port i modulen Split Data (Dela data) och halva via den andra. Du kan justera de här parametrarna samt parametern Random seed (Slumpmässigt frö) för att ändra delningen mellan träningsdata och testningsdata. I det här exemplet låter du dem vara som de är.
Dricks
Egenskapen Fraction of rows in the first output dataset (Andel rader i den första utdatamängden) avgör hur mycket av data som matas ut via den vänstra utdataporten. Om du till exempel anger förhållandet till 0,7 matas 70 % av data ut via den vänstra porten och 30 % via den högra porten.
Dubbelklicka på modulen Split Data (Dela data) och ange kommentaren ”Tränings-/testningsdata delat 50 %”.
Du kan använda utdata för modulen Split Data (Dela data) på det sätt du vill, men just nu väljer vi att använda vänster utdata som träningsdata och höger utdata som testningsdata.
Som vi nämnde i det föregående steget är kostnaden för felklassificering av en hög kreditrisk som låg fem gånger högre än kostnaden för felklassificering av en låg kreditrisk som hög. Du beaktar detta genom att generera en ny datamängd som speglar den här kostnadsfunktionen. I den nya datamängden replikeras varje högriskexempel fem gånger medan varje lågriskexempel inte replikeras.
Du kan utföra replikeringen med hjälp av R-kod:
Leta upp och dra modulen Execute R Script (Kör R-skript) till experimentets arbetsyta.
Anslut den vänstra utdataporten för modulen Split Data (Dela data) till den första indataporten (”Dataset1”) i modulen Execute R Script (Kör R-skript).
Dubbelklicka på modulen Execute R Script (Kör R-skript) och ange kommentaren ”Ange kostnadsjustering”.
I fönstret Properties (Egenskaper) tar du bort standardtexten i parametern R Script och anger följande skript:
dataset1 <- maml.mapInputPort(1) data.set<-dataset1[dataset1[,21]==1,] pos<-dataset1[dataset1[,21]==2,] for (i in 1:5) data.set<-rbind(data.set,pos) maml.mapOutputPort("data.set")
Du behöver utföra samma replikeringsåtgärden för varje utdata från modulen Split Data (Dela data) så att träningsdata och testningsdata inte har samma kostnadsjustering. Det enklaste sättet att göra detta är att duplicera den Execute R Script-modul (Kör R-skript) som du just skapade och ansluta den till den andra utdataporten för modulen Split Data (Dela data).
Högerklicka på Execute R Script (Kör R-skript) och välj Copy (Kopiera).
Högerklicka på experimentets arbetsyta och välj Paste (Klistra in).
Dra den nya modulen till rätt plats och anslut den högra utdataporten för modulen Split Data (Dela data) till den första indataporten för den nya Execute R Script-modulen (Kör R-skript).
Längst ned på arbetsytan klickar du på Run (Kör).
Dricks
Kopian av Execute R Script-modulen (Kör R-skript) innehåller samma skript som den ursprungliga modulen. När du kopierar och klistrar in en modul på arbetsytan behåller kopian alla egenskaper från originalet.
Nu ser experimentet ut ungefär så här:
Mer information om hur du använder R-skript i experiment finns i Utöka experimentet med R.
Rensa resurser
Om du inte behöver de resurser som du skapade i den här artikeln kan du ta bort dem så att du undviker eventuella kostnader. Det kan du lära dig i artikeln om att exportera och ta bort användardata i produkten.
Nästa steg
I den här självstudien har du slutfört dessa steg:
- Skapa en Mašinsko učenje Studio-arbetsyta (klassisk)
- Ladda upp befintliga data till arbetsytan
- Skapa ett experiment
Du är nu redo att träna och utvärdera modeller för dessa data.