Finjusteringskoncept för modeller
Finjustering är en process för att ta en förtränad modell och justera den så att den passar dina data bättre. Den här processen kan hjälpa dig att få ut mesta möjliga av dina data och förbättra modellens prestanda. I den här artikeln får du lära dig de grundläggande begreppen finjustering och när det är lämpligt att finjustera en AI-modell.
Introduktion
Finjustering är en kraftfull teknik som kan hjälpa dig att få ut mer av dina data. För att förstå finjustering är det viktigt att förstå begreppet överföringsinlärning. Överföringsinlärning är en maskininlärningsteknik där en modell som tränas på en uppgift återutbildas för en andra relaterad uppgift. Detta görs genom att ta en förtränad modell och justera den så att den passar de nya data bättre. Finjustering är en form av överföringsinlärning där den förtränade modellen justeras för att bättre passa de nya data.
Det finns flera steg som krävs för att finjustera en modell. Först måste du välja en förtränad modell som passar bra för din uppgift. Därefter måste du förbereda dina exempeldata och finjustera modellen på dessa data. Slutligen måste du iterera på din modell för att förbättra dess prestanda.
När du ska finjustera
Finjustering passar för tider då du har en liten mängd data och vill förbättra modellens prestanda. Genom att börja med en förtränad modell kan du utnyttja den kunskap som modellen redan har lärt sig och justera den så att den passar dina data bättre. Detta kan hjälpa dig att förbättra modellens prestanda och minska mängden data som behövs för att träna den.
Det är vanligtvis inte nödvändigt att finjustera din modell när du har en stor mängd data. I det här fallet kan du träna din modell från grunden och uppnå bra prestanda utan finjustering. Finjustering kan dock fortfarande vara användbart i det här fallet om du vill förbättra modellens prestanda ytterligare. Du kanske också vill finjustera din modell om du har en viss uppgift som skiljer sig från den uppgift som den förtränade modellen ursprungligen tränades på.
Du kanske kan undvika den kostsamma finjusteringen av en modell med hjälp av promptteknik eller snabblänkning. Dessa tekniker kan hjälpa dig att generera text av hög kvalitet utan att du behöver finjustera.
Välj en förtränad modell
Du bör välja en förtränad modell som passar bra för dina uppgiftskrav. Det finns många förtränade modeller som har tränats på en mängd olika uppgifter. Du bör välja en modell som har tränats på en liknande uppgift som den du arbetar med. Detta hjälper dig att utnyttja den kunskap som modellen redan har lärt sig och justera den så att den passar dina data bättre.
HuggingFace-modeller är en bra utgångspunkt när du letar efter förtränade modeller. De HuggingFace modellerna grupperas i kategorier baserat på den uppgift de tränats på, vilket gör det enkelt att hitta en modell som passar din uppgift.
Följande kategorier är:
- Multimodal
- Datorseende
- Bearbetning av naturligt språk
- Ljud
- Tabellform
- Förstärkningsinlärning
Kontrollera modellens kompatibilitet med din miljö och de verktyg du använder. Om du till exempel använder Visual Studio Codekan du använda tillägget Azure Machine Learning för Visual Studio Code för att finjustera din modell.
Kontrollera modellens status och licens. Vissa förträningsmodeller kan vara tillgängliga under en licens med öppen källkod, medan andra kan kräva en kommersiell eller personlig licens för att användas. Alla modeller på HuggingFace innehåller licensinformation. Kontrollera att du har de behörigheter som krävs för att använda modellen innan du finjusterar den.
Förbereda dina exempeldata
Att förbereda dina exempeldata innebär att rensa och förbearbeta dina data för att göra dem lämpliga för träning. Du bör också dela upp dina data i tränings- och valideringsuppsättningar för att utvärdera modellens prestanda. Formatet för dina data ska matcha det format som förväntas av den förtränade modell som du använder. Den här informationen kan hittas med modellerna på HuggingFace i instruktionsformatet i avsnittet i modellkortet. De flesta modellkort innehåller en mall för att skapa en uppmaning till modellen och lite pseudokod som hjälper dig att komma igång.
Iterera på din modell
När du har finjusterat din modell bör du utvärdera dess prestanda på verifieringsuppsättningen. Du kan använda mått som noggrannhet, precision, återkallande och F1-poäng för att utvärdera modellens prestanda. Om modellens prestanda inte är tillfredsställande kan du iterera på din modell genom att justera hyperparametrar, ändra arkitekturen eller finjustera modellen på mer data. Du kan också undersöka kvaliteten och mångfalden hos dina data för att se om det finns några problem som måste åtgärdas. Som en allmän regel är en mindre uppsättning data av hög kvalitet mer värdefulla än en större uppsättning data av låg kvalitet.
Se även
Mer information om att finjustera AI-modeller finns i följande resurser:
- Finjustera en Llama 2-modell i Azure AI Foundry-portalen
- Finjustera en förtränad modell på HuggingFace
- Finjustera en förtränad modell med TensorFlow
När du använder AI-funktioner rekommenderar vi att du granskar: Utveckla ansvarsfulla generativa AI-program och funktioner i Windows.