Nulägesinlärning för textklassificering inom naturlig språkbehandling

Vad är zero-shot learning och hur kan det effektivt tillämpas inom Natural Language Processing för textklassificering? med hjälp av Hugging Face Transformers?

Vad är nollbildsinlärning?

Tack vare de senaste toppmoderna transformatorbaserade modellerna för behandling av naturligt språk har inlärning med nollskott fått mycket uppmärksamhet. popularitet i världen av Natural Language Processing. Tanken är att en modell nu kan känna igen vissa klasser, även om den inte har tränats för detta.

Detta är vad människor naturligt gör. Om ditt barn till exempel vet vad en kamel är, behöver du bara berätta för honom att det finns ett annat djur som heter dromedar, som är mycket likt en kamel, förutom att det har en puckel på rygg i stället för två! Nästa gång ditt barn ser en bild på en dromedar kommer han att veta vad det är för något, medan han kommer att veta vad det är. det är första gången han ser en!

Nollpunktsmetoderna associerar observerade och icke observerade klasser genom någon form av så kallad "hjälpinformation" som kodar objektens särskiljande egenskaper. Detta har varit en mycket populär teknik inom datorseende sedan länge, och den används nu allt oftare inom behandling av naturligt språk.

Inlärning av nollskott och textklassificering

Inlärning med nollskott fungerar utmärkt för textklassificering. Textklassificering handlar om att tillämpa en eller flera kategorier på ett stycke text (utrymme, affärer, sport osv.).

Fram till nyligen kunde textklassificeringsmodeller endast kategorisera textstycken med ett fördefinierat antal kandidatkategorier. Dessa kategorier måste fastställas i förväg under träningen. Detta var smärtsamt eftersom det innebar att varje gång man ville lägga till en kategori var man tvungen att träna om modellen med fler kategorier. exempel.

Sedan man skapade mycket större modeller för behandling av naturligt språk (oftast baserade på transformatorer) har det varit möjligt att träna modellerna endast på en specifik lista av kategorier och sedan låta användarna skapa nya kategorier i farten utan att behöva träna modellen på nytt.

Låt oss till exempel säga att din modell för klassificering av text utan skott har tränats för att känna igen endast 3 kategorier: rymd, natur och sport. Du kan fortfarande använda den för att kategorisera texter för andra kategorier, som till exempel affärer, mat eller vetenskap.

Detta är en mycket kraftfull teknik som ger stor flexibilitet och samtidigt ger bra resultat.

De bästa modellerna för klassificering av nollskjutningar

Det finns utmärkta modeller för behandling av naturligt språk med öppen källkod som bygger på Hugging Face Transformers och som fungerar. fungerar riktigt bra för klassificering av text utan skott.

På NLP Cloud har vi valt ut dessa två modeller som enligt vår uppfattning är de bästa modellerna för nollskjutande textklassificering för tillfället:

Även om deras noggrannhet är imponerande och deras latenstid är ganska bra, är dessa två modeller fortfarande beräkningsintensiva modeller, och latensen kan lätt öka om den text du vill analysera blir för stor eller om antalet kandidatkategorier är för stort. Om noggrannheten inte är det viktigaste för dig och du föredrar en snabbare och mindre resurskrävande modell, kan du enkelt välja en annan modell. För exempel finns det destillerade versioner av Bart, kallade "DistilBart", och de är perfekta för detta.

Slutsats

Inlärning med noll skott, tillsammans med inlärning med få skott, är moderna tekniker som uppstod i samband med skapandet av stora modeller för behandling av naturligt språk. (Läs mer om inlärning med några få skott här). De ger mycket flexibilitet och gör Natural Language Processing mer och mer imponerande!

Prova gärna att använda klassificering utan skott för att se om du också gillar det.

Julien Salinas
CTO på NLP Cloud