Learning overdragen

Voltooid

In het leven is het vaak gemakkelijker om een nieuwe vaardigheid te leren als u al ervaring hebt met een vergelijkbare, overdraagbare vaardigheid. Het is bijvoorbeeld waarschijnlijk gemakkelijker om iemand te leren hoe ze een bus kunnen rijden als ze al hebben geleerd hoe ze een auto kunnen rijden. De chauffeur kan voortbouwen op de rijvaardigheden die ze al in een auto hebben geleerd en ze toepassen op het rijden van een bus.

Hetzelfde principe kan worden toegepast op het trainen van Deep Learning-modellen via een techniek die transfer learning wordt genoemd.

Hoe overdrachtsleer werkt

Een Convolutionele neurale netwerk (CNN) voor afbeeldingsclassificatie bestaat doorgaans uit meerdere lagen die functies extraheren en vervolgens een uiteindelijke volledig verbonden laag gebruiken om afbeeldingen te classificeren op basis van deze functies.

A CNN consisting of a set of feature extraction layers and a fully-connected prediction layer

Conceptueel bestaat dit neurale netwerk uit twee afzonderlijke sets lagen:

  1. Een set lagen van het basismodel die functieextractie uitvoeren.
  2. Een volledig verbonden laag die de geëxtraheerde functies gebruikt en gebruikt voor klassevoorspelling.

De functieextractielagen passen convolutionele filters en pooling toe om randen, hoeken en andere patronen in de afbeeldingen te benadrukken die kunnen worden gebruikt om deze te onderscheiden, en in theorie moeten werken voor elke set afbeeldingen met dezelfde afmetingen als de invoerlaag van het netwerk. De voorspellingslaag wijst de functies toe aan een set uitvoerwaarden die waarschijnlijkheden vertegenwoordigen voor elk klasselabel dat u wilt gebruiken om de afbeeldingen te classificeren.

Door het netwerk in deze soorten lagen te scheiden, kunnen we de functieextractielagen van een model nemen dat al is getraind en een of meer lagen toevoegen om de geëxtraheerde functies te gebruiken voor het voorspellen van de juiste klasselabels voor uw afbeeldingen. Met deze methode kunt u de vooraf getrainde gewichten voor de functieextractielagen behouden. Dit betekent dat u alleen de voorspellingslagen hoeft te trainen die u hebt toegevoegd.

Er zijn veel gevestigde convolutionele neurale netwerkarchitecturen voor afbeeldingsclassificatie die u kunt gebruiken als basismodel voor overdrachtsleer, zodat u kunt voortbouwen op het werk dat iemand anders al heeft gedaan om eenvoudig een effectief afbeeldingsclassificatiemodel te maken.