Dela via


Förbättra din ML.NET modell

Lär dig hur du förbättrar din ML.NET modell.

Omrama problemet

Ibland kan det inte ha något att göra med de data eller tekniker som används för att träna modellen att förbättra en modell. I stället kan det vara så att fel fråga ställs. Överväg att titta på problemet från olika vinklar och utnyttja data för att extrahera latenta indikatorer och dolda relationer för att förfina frågan.

Ange fler dataexempel

Precis som människor ökar sannolikheten för bättre prestanda ju fler träningsalgoritmer som blir. Ett sätt att förbättra modellprestanda är att tillhandahålla fler träningsdataexempel till algoritmerna. Ju mer data den lär sig av, desto fler fall kan den identifieras korrekt.

Lägga till kontext till data

Det kan vara svårt att tolka innebörden av en enskild datapunkt. Genom att skapa kontext kring datapunkterna kan både algoritmer och ämnesexperter fatta bättre beslut. Till exempel ger det faktum att ett hus har tre sovrum inte på egen hand en bra indikation på priset. Men om du lägger till kontext och nu vet att det är i ett förortsområde utanför ett större storstadsområde där medelåldern är 38, är den genomsnittliga hushållsinkomsten $ 80,000 och skolorna är i den översta 20: e percentilen så har algoritmen mer information att basera sina beslut på. All den här kontexten kan läggas till som indata till maskininlärningsmodellen som funktioner.

Använda meningsfulla data och funktioner

Även om fler dataexempel och funktioner kan hjälpa till att förbättra modellens noggrannhet, kan de också introducera brus eftersom inte alla data och funktioner är meningsfulla. Därför är det viktigt att förstå vilka funktioner som har störst inverkan på beslut som fattas av algoritmen. Med hjälp av tekniker som PFI (Permutation Feature Importance) kan du identifiera dessa viktiga funktioner och inte bara förklara modellen utan även använda utdata som en funktionsvalsmetod för att minska mängden brusfunktioner som går in i träningsprocessen.

Mer information om hur du använder PFI finns i Förklara modellförutsägelser med funktionsvikt för permutation.

Korsvalidering

Korsvalidering är en tränings- och modellutvärderingsteknik som delar upp data i flera partitioner och tränar flera algoritmer på dessa partitioner. Den här tekniken förbättrar modellens robusthet genom att hålla ut data från träningsprocessen. Förutom att förbättra prestanda för osynliga observationer kan det i databegränsade miljöer vara ett effektivt verktyg för att träna modeller med en mindre datamängd.

Gå till följande länk för att lära dig hur du använder korsvalidering i ML.NET

Finjustering av hyperparametrar

Att träna maskininlärningsmodeller är en iterativ och undersökande process. Vad är till exempel det optimala antalet kluster när du tränar en modell med hjälp av K-Means-algoritmen? Svaret beror på många faktorer, till exempel datastrukturen. Att hitta det talet skulle kräva experiment med olika värden för k och sedan utvärdera prestanda för att avgöra vilket värde som är bäst. Metoden att justera parametrarna som vägleder träningsprocessen för att hitta en optimal modell kallas för hyperparameterjustering.

Välj en annan algoritm

Maskininlärningsuppgifter som regression och klassificering innehåller olika algoritmimplementeringar. Det kan vara så att problemet du försöker lösa och hur dina data är strukturerade inte passar bra in i den aktuella algoritmen. I sådana fall bör du överväga att använda en annan algoritm för din uppgift för att se om den lär sig bättre av dina data.

Följande länk innehåller mer vägledning om vilken algoritm som ska väljas.