Op zoek naar een manier om een ​​krachtige AI te trainen voor uw specifieke toepassingen? Probeer overdrachtsleren!

Als u geïnteresseerd bent in het trainen van uw eigen AI-model voor natuurlijke taalverwerking (NLP) of computervisie, moet u vertrouwd raken met leren via overdracht en het gebruik van vooraf getrainde modellen.

Zonder overdrachtsleren zal het trainen van een effectief en betrouwbaar model vaak een inspanning zijn die te veel middelen vergt veel geld, tijd en expertise, met ChatGPT-ontwikkelaar OpenAI die naar schatting miljoenen heeft besteed aan het trainen van GPT-3, GPT-3.5 en GPT-4. Met de kracht van Transfer Learning kunt u uw eigen model in korte tijd net zo krachtig trainen als het nieuwste GPT-model.

Wat is AI Transfer Learning?

Overdrachtsleren is het idee om een ​​vooraf getraind model te nemen, zoals BERT of een van de verschillende GPT-modellen en het trainen op een aangepaste dataset om te werken aan taken waarvoor het niet noodzakelijkerwijs was opgeleid.

U kunt bijvoorbeeld een vooraf getraind model nemen voor het classificeren van verschillende kattensoorten en dit trainen om honden te classificeren. Door middel van overdrachtsleren zou het trainen van uw hondenclassificatiemodel aanzienlijk minder tijd en middelen moeten kosten om net zo betrouwbaar te worden als het originele kattenclassificatiemodel.

instagram viewer

Dit werkt omdat katten en honden veel eigenschappen gemeen hebben die het vooraf getrainde model al kan identificeren. Aangezien het kattenclassificatiemodel de verschillende kenmerken van een kat kan identificeren, zoals het hebben van vier poten, bontjassen en prominente snuiten, kan het model voor het classificeren van honden alle training overslaan om die eigenschappen te identificeren en ze van het origineel te erven model. Nadat je al die neurale netwerken hebt geërfd, knip je de laatste lagen van het getrainde model af dat wordt gebruikt om de meer specifieke kenmerken van een kat te identificeren en vervang je ze door een dataset die specifiek is voor honden.

Welke AI-modellen kun je gebruiken voor Transfer Learning?

Om overdrachtsleren te gebruiken, hebt u een vooraf getraind model nodig. Een vooraf getraind model is algemeen bekend als een AI-model dat is getraind om algemene kennis op te doen over een bepaald onderwerp of idee. Dit soort vooraf getrainde modellen zijn met opzet gemaakt zodat mensen deze kunnen verfijnen en meer toepassingsspecifieke modellen kunnen maken. Enkele van de meest populaire vooraf getrainde modellen zijn voor NLP, zoals BERT en GPT, en computervisie, zoals VGG19 en Inceptionv3.

Hoewel ze populair zijn, zijn deze eenvoudig aan te passen modellen niet de enige die u kunt gebruiken voor overdrachtsleren. U kunt ook modellen gebruiken die zijn getraind op taken die specifieker zijn dan algemene object- of taalherkenning. Zolang het model neurale netwerken heeft ontwikkeld die van toepassing zijn op het model dat u probeert te trainen, kunt u vrijwel elk model gebruiken voor overdrachtsleren.

U kunt openbaar beschikbare vooraf getrainde modellen krijgen van plaatsen als TensorFlow Hub, Hugging Face en de OpenAI-modelmarktplaats.

Voordelen van het gebruik van AI Transfer Learning

Leren overdragen biedt verschillende voordelen ten opzichte van het helemaal opnieuw trainen van een AI-model.

  • Verminderde trainingstijd: Bij het vanaf nul trainen van een model wordt een groot deel van het trainingsproces besteed aan algemene basiskennis. Door middel van overdrachtsleren erft uw model automatisch al deze basiskennis, waardoor de trainingstijd aanzienlijk wordt verkort.
  • Minder resourcevereiste: Aangezien alle basiskennis al aanwezig is, hoeft u het model alleen maar verder te trainen voor de specifieke kenmerken van uw toepassing. Hiervoor is vaak slechts een relatief kleine dataset nodig die met minder rekenkracht kan worden verwerkt.
  • Verbeterde prestatie: Tenzij u miljoenen dollars uitgeeft aan het vanaf nul opbouwen van uw model, kunt u van een gigantisch technologiebedrijf geen model verwachten dat even goed of betrouwbaar is als een groot taalmodel (LLM). Door overdrachtsleren te gebruiken, kunt u gebruikmaken van de krachtige mogelijkheden van deze vooraf getrainde LLM's, zoals GPT, om de prestaties van uw model te verbeteren.

Een volledig nieuw AI-model trainen is mogelijk, maar daarvoor heb je meer middelen nodig.

Hoe werkt overdrachtsleren?

In wezen zijn er drie fasen als het gaat om overdracht van leren.

  • Een vooraf getraind model selecteren: Een vooraf getraind model ondergaat een initiële training met behulp van een omvangrijke dataset van een brontaak, zoals ImageNet, of een grote verzameling tekst. Deze initiële trainingsfase stelt het model in staat kennis te verwerven van algemene kenmerken en patronen die in de dataset worden gevonden. De hoeveelheid tijd en middelen die u bespaart door leren via overdracht, hangt af van de overeenkomsten tussen het vooraf getrainde model en het model dat u probeert te bouwen.
  • Functie-extractie: Zodra een vooraf getraind model is geselecteerd voor fijnafstemming, worden de eerste lagen van het vooraf getrainde model (het dichtst bij de invoer) bevroren; dit betekent dat hun gewichten vast blijven tijdens het fijn afstellen. Door deze lagen te bevriezen, blijft de algemene kennis die is opgedaan tijdens de pre-trainingsfase behouden en wordt voorkomen dat ze sterk worden beïnvloed door de taakspecifieke dataset van het doelmodel. Voor modellen die volledig zijn getraind voor specifieke toepassingen, worden de laatste lagen van de modellen verwijderd of afgeleerd zodat het doelmodel kan worden getraind in andere specifieke toepassingen.
  • Scherpstellen: Nadat het vooraf getrainde model is bevroren en de bovenste lagen zijn verwijderd, wordt een nieuwe dataset ingevoerd in het leeralgoritme, dat vervolgens wordt gebruikt om het nieuwe model en de specifieke kenmerken van de toepassing ervan te trainen.

Er komt meer bij kijken dan de drie fasen, maar dit overzicht geeft grofweg weer hoe het leerproces voor AI-overdracht werkt, met wat finetuning.

Beperkingen op AI Transfer Learning

Hoewel transfer learning een waardevol concept is bij het trainen van effectieve en betrouwbare modellen, zijn er nogal wat beperkingen die u moet kennen wanneer u transfer learning gebruikt om een ​​model te trainen.

  • Taak komt niet overeen: Bij het kiezen van een basismodel voor transferleren moet dit zo relevant mogelijk zijn voor de problemen die het nieuwe model zal oplossen. Het gebruik van een model dat katten classificeert om een ​​model voor het classificeren van honden te maken, levert waarschijnlijk betere resultaten op dan het gebruik van een model voor het classificeren van auto's om een ​​model voor planten te maken. Hoe relevanter het basismodel voor het model dat u probeert te bouwen, hoe meer tijd en middelen u bespaart tijdens het leerproces van de overdracht.
  • Vertekening dataset: Hoewel vooraf getrainde modellen vaak worden getraind in grote datasets, bestaat de mogelijkheid dat ze tijdens hun training een bepaalde bias hebben ontwikkeld. Het gebruik van het sterk bevooroordeelde basismodel zou er ook voor zorgen dat het model zijn vooroordelen overneemt, waardoor de nauwkeurigheid en betrouwbaarheid van uw model afneemt. Helaas is de oorsprong van deze vooroordelen moeilijk te achterhalen vanwege de black-box karakter van deep learning.
  • Overfitting: Een van de belangrijkste voordelen van transfer learning is dat je een relatief kleine dataset kunt gebruiken om een ​​model verder te trainen. Het trainen van het model op een dataset die te klein is, kan echter leiden tot overfitting, wat de betrouwbaarheid van het model aanzienlijk vermindert wanneer het wordt voorzien van nieuwe gegevens.

Dus hoewel overdrachtsleren een handige AI-leertechniek is, zijn er beperkingen en is het geen wondermiddel.

Moet u overdrachtsleren gebruiken?

Sinds de beschikbaarheid van vooraf getrainde modellen, is overdrachtsleren altijd gebruikt om meer gespecialiseerde modellen te maken. Er is echt geen reden om overdrachtsleren niet te gebruiken als er al een vooraf getraind model is dat relevant is voor de problemen die uw model gaat oplossen.

Hoewel het mogelijk is om een ​​eenvoudig machine learning-model helemaal opnieuw te trainen, is het vereist om dit op een deep learning-model te doen veel gegevens, tijd en vaardigheden, wat niet logisch is als u een bestaand model kunt hergebruiken dat vergelijkbaar is met het model dat u van plan bent trein. Dus als je minder tijd en geld wilt besteden aan het trainen van een model, probeer dan je model te trainen door middel van transfer learning.