AI-For-Beginners/translations/sv/lessons/5-NLP/13-TextRep
leestott 68b3c9c9e7 🌐 Update translations via Co-op Translator 2025-08-28 18:09:00 +00:00
..
README.md 🌐 Update translations via Co-op Translator 2025-08-28 18:09:00 +00:00
TextRepresentationPyTorch.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 18:09:00 +00:00
TextRepresentationTF.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 18:09:00 +00:00
assignment.md 🌐 Update translations via Co-op Translator 2025-08-28 18:09:00 +00:00

README.md

Representera text som tensorer

Quiz före förelÀsning

Textklassificering

Under den första delen av detta avsnitt kommer vi att fokusera pÄ uppgiften textklassificering. Vi kommer att anvÀnda AG News-datasetet, som innehÄller nyhetsartiklar som följande:

  • Kategori: Vetenskap/teknik
  • Titel: Ky. Företag vinner bidrag för att studera peptider (AP)
  • Text: AP - Ett företag grundat av en kemiforskare vid University of Louisville vann ett bidrag för att utveckla...

VÄrt mÄl kommer att vara att klassificera nyhetsartikeln i en av kategorierna baserat pÄ texten.

Representera text

Om vi vill lösa uppgifter inom Natural Language Processing (NLP) med neurala nÀtverk behöver vi ett sÀtt att representera text som tensorer. Datorer representerar redan texttecken som siffror som mappar till typsnitt pÄ din skÀrm med hjÀlp av kodningar som ASCII eller UTF-8.

Bild som visar diagram som mappar ett tecken till en ASCII- och binÀr representation

BildkÀlla

Som mÀnniskor förstÄr vi vad varje bokstav representerar, och hur alla tecken tillsammans bildar orden i en mening. Datorer har dock inte en sÄdan förstÄelse pÄ egen hand, och det neurala nÀtverket mÄste lÀra sig betydelsen under trÀningen.

DÀrför kan vi anvÀnda olika metoder för att representera text:

  • TeckennivĂ„representation, dĂ€r vi representerar text genom att behandla varje tecken som ett nummer. Givet att vi har C olika tecken i vĂ„r textkorpus, skulle ordet Hello representeras av en 5xC-tensor. Varje bokstav skulle motsvara en tensor-kolumn i en one-hot-kodning.
  • OrdnivĂ„representation, dĂ€r vi skapar ett ordförrĂ„d av alla ord i vĂ„r text och sedan representerar ord med hjĂ€lp av one-hot-kodning. Denna metod Ă€r pĂ„ sĂ€tt och vis bĂ€ttre, eftersom varje bokstav i sig inte har mycket betydelse, och genom att anvĂ€nda högre semantiska koncept - ord - förenklar vi uppgiften för det neurala nĂ€tverket. Dock, med tanke pĂ„ den stora ordbokens storlek, mĂ„ste vi hantera högdimensionella glesa tensorer.

Oavsett representation mÄste vi först konvertera texten till en sekvens av tokens, dÀr en token Àr antingen ett tecken, ett ord eller ibland till och med en del av ett ord. Sedan konverterar vi token till ett nummer, vanligtvis med hjÀlp av ett ordförrÄd, och detta nummer kan matas in i ett neuralt nÀtverk med hjÀlp av one-hot-kodning.

N-Grams

I naturligt sprÄk kan den exakta betydelsen av ord endast bestÀmmas i kontext. Till exempel Àr betydelserna av neural network och fishing network helt olika. Ett sÀtt att ta hÀnsyn till detta Àr att bygga vÄr modell pÄ par av ord och betrakta ordpar som separata tokens i ordförrÄdet. PÄ detta sÀtt kommer meningen I like to go fishing att representeras av följande sekvens av tokens: I like, like to, to go, go fishing. Problemet med denna metod Àr att ordförrÄdets storlek ökar avsevÀrt, och kombinationer som go fishing och go shopping representeras av olika tokens, som inte delar nÄgon semantisk likhet trots samma verb.

I vissa fall kan vi övervÀga att anvÀnda tri-grams -- kombinationer av tre ord -- ocksÄ. DÀrför kallas denna metod ofta n-grams. Det kan ocksÄ vara vettigt att anvÀnda n-grams med teckennivÄrepresentation, dÀr n-grams ungefÀr motsvarar olika stavelser.

Bag-of-Words och TF/IDF

NÀr vi löser uppgifter som textklassificering behöver vi kunna representera text med en fast storleksvektor, som vi kommer att anvÀnda som indata till den slutliga tÀta klassificeraren. Ett av de enklaste sÀtten att göra detta Àr att kombinera alla individuella ordrepresentationer, t.ex. genom att lÀgga till dem. Om vi lÀgger till one-hot-kodningar av varje ord, kommer vi att fÄ en frekvensvektor som visar hur mÄnga gÄnger varje ord förekommer i texten. En sÄdan representation av text kallas bag of words (BoW).

Bild av författaren

En BoW representerar i princip vilka ord som förekommer i texten och i vilka mÀngder, vilket faktiskt kan vara en bra indikation pÄ vad texten handlar om. Till exempel Àr en nyhetsartikel om politik sannolikt att innehÄlla ord som president och land, medan en vetenskaplig publikation skulle ha nÄgot som kolliderare, upptÀckt, etc. SÄledes kan ordfrekvenser i mÄnga fall vara en bra indikator pÄ textens innehÄll.

Problemet med BoW Àr att vissa vanliga ord, sÄsom och, Àr, etc. förekommer i de flesta texter och har högsta frekvenser, vilket döljer de ord som verkligen Àr viktiga. Vi kan minska vikten av dessa ord genom att ta hÀnsyn till frekvensen med vilken ord förekommer i hela dokumentkollektionen. Detta Àr huvudidén bakom TF/IDF-metoden, som behandlas mer detaljerat i de anteckningsböcker som Àr kopplade till denna lektion.

Dock kan ingen av dessa metoder fullt ut ta hÀnsyn till textens semantik. Vi behöver mer kraftfulla modeller för neurala nÀtverk för att göra detta, vilket vi kommer att diskutera senare i detta avsnitt.

✍ Övningar: Textrepresentation

FortsÀtt ditt lÀrande i följande anteckningsböcker:

Slutsats

Hittills har vi studerat tekniker som kan lÀgga till frekvensvikt till olika ord. De kan dock inte representera betydelse eller ordning. Som den berömda lingvisten J. R. Firth sa 1935: "Den fullstÀndiga betydelsen av ett ord Àr alltid kontextuell, och ingen studie av betydelse bortsett frÄn kontext kan tas pÄ allvar." Vi kommer senare i kursen att lÀra oss hur man fÄngar kontextuell information frÄn text med hjÀlp av sprÄkmodellering.

🚀 Utmaning

Prova nÄgra andra övningar med bag-of-words och olika datamodeller. Du kan bli inspirerad av denna tÀvling pÄ Kaggle

Quiz efter förelÀsning

Granskning & SjÀlvstudier

Öva dina fĂ€rdigheter med textinbĂ€ddningar och bag-of-words-tekniker pĂ„ Microsoft Learn

Uppgift: Anteckningsböcker


Ansvarsfriskrivning:
Detta dokument har översatts med hjĂ€lp av AI-översĂ€ttningstjĂ€nsten Co-op Translator. Även om vi strĂ€var efter noggrannhet, bör det noteras att automatiserade översĂ€ttningar kan innehĂ„lla fel eller brister. Det ursprungliga dokumentet pĂ„ dess originalsprĂ„k bör betraktas som den auktoritativa kĂ€llan. För kritisk information rekommenderas professionell mĂ€nsklig översĂ€ttning. Vi ansvarar inte för eventuella missförstĂ„nd eller feltolkningar som kan uppstĂ„ vid anvĂ€ndning av denna översĂ€ttning.