Introduktion till bearbetning av naturligt språk med TensorFlow
I den här modulen ska vi utforska olika arkitekturer för neurala nätverk för att hantera text på naturligt språk. Under de senaste åren har NLP (Natural Language Processing ) upplevt snabb tillväxt som ett fält, både på grund av förbättringar av språkmodellarkitekturerna och eftersom de har tränats på allt större text corpora. Som ett resultat har deras förmåga att "förstå" text förbättrats avsevärt, och stora förtränade modeller som BERT har blivit allmänt använda.
Vi kommer att fokusera på de grundläggande aspekterna av att representera NLP som tensorer i TensorFlow och på klassiska NLP-arkitekturer, till exempel användning av bag-of-words, inbäddningar och återkommande neurala nätverk.
Uppgifter för naturligt språk
Det finns flera NLP-uppgifter som vi kan lösa med neurala nätverk:
- Textklassificering används när vi behöver klassificera ett textfragment i en av flera fördefinierade klasser. Exempel är identifiering av skräppost via e-post, nyhetskategorisering, tilldelning av en supportbegäran till en kategori med mera.
- Avsiktsklassificering är ett specifikt fall av textklassificering, där vi vill mappa ett indatayttrande i konversations-AI-systemet till en av de avsikter som representerar den faktiska innebörden av frasen eller avsikten för användaren.
- Attitydanalys är en regressionsuppgift, där vi vill förstå graden av positivitet för ett visst textstycke. Vi kanske vill märka text i en datamängd från mest negativa (-1) till mest positiva (+1) och träna en modell som matar ut ett tal som representerar positiviteten i indatatexten.
- Med namnet Entity Recognition (NER) är uppgiften att extrahera entiteter från text, till exempel datum, adresser, personnamn osv. Tillsammans med avsiktsklassificering används NER ofta i dialogsystem för att extrahera parametrar från användarens yttrande.
- En liknande uppgift med nyckelordsextrahering kan användas för att hitta de mest meningsfulla orden i en text, som sedan kan användas som taggar.
- Textsammanfattning extraherar de mest meningsfulla textstyckena, vilket ger användaren en komprimerad version av den ursprungliga texten.
- Frågesvar är uppgiften att extrahera ett svar från ett textstycke. Den här modellen tar ett textfragment och en fråga som indata och hittar den exakta platsen i texten som innehåller svaret. Till exempel texten "John är en 22-årig student som älskar att använda Microsoft Learn", och frågan Hur gammal är John bör ge oss svaret 22.
I den här modulen fokuserar vi främst på uppgiften Textklassificering . Vi kommer dock att lära oss alla viktiga begrepp som vi behöver för att hantera svårare uppgifter i framtiden.
Utbildningsmål
- Förstå hur text bearbetas för NLP-uppgifter
- Lär dig mer om återkommande neurala nätverk (RNN) och generativa neurala nätverk (GNN)
- Lär dig mer om uppmärksamhetsmekanismer
- Lär dig hur du skapar textklassificeringsmodeller
Förutsättningar
- Kunskaper om Python
- Grundläggande förståelse för maskininlärning