stubbur Hvernig virkar textaflokkun? - Unite.AI
Tengja við okkur

AI 101

Hvernig virkar textaflokkun?

mm
Uppfært on

Textaflokkun er ferlið við að greina textaraðir og úthluta þeim merki, setja þær í hóp út frá innihaldi þeirra. Textaflokkun liggur til grundvallar næstum öllum gervigreindum eða vélanámi sem felur í sér Natural Language Processing (NLP). Með textaflokkun getur tölvuforrit framkvæmt fjölbreytt úrval af mismunandi verkefnum eins og ruslpóstsgreiningu, tilfinningagreiningu og spjallbotnaaðgerðum. Hvernig virkar textaflokkun nákvæmlega? Hverjar eru mismunandi aðferðir til að framkvæma textaflokkun? Við munum kanna svörin við þessum spurningum hér að neðan.

Skilgreina textaflokkun

Það er mikilvægt að taka tíma og ganga úr skugga um að við skiljum hvað textaflokkun er, almennt áður en kafað er í mismunandi aðferðir við að gera textaflokkun. Textaflokkun er eitt af þessum hugtökum sem er notað um mörg mismunandi verkefni og reiknirit, svo það er gagnlegt að ganga úr skugga um að við skiljum grunnhugtakið textaflokkun áður en haldið er áfram til að kanna mismunandi leiðir sem hægt er að framkvæma hana.

Allt sem felur í sér að búa til mismunandi flokka fyrir texta, og síðan merkja mismunandi textasýni sem þessa flokka, getur talist textaflokkun. Svo lengi sem kerfi framkvæmir þessi grunnskref getur það talist textaflokkari, óháð nákvæmri aðferð sem notuð er til að flokka textann og óháð því hvernig textaflokkaranum er að lokum beitt. Að greina ruslpóst í tölvupósti, skipuleggja skjöl eftir efni eða titli og viðurkenna viðhorf endurskoðunar fyrir vöru eru allt dæmi um textaflokkun vegna þess að þau eru framkvæmd með því að taka texta sem inntak og gefa út flokksmerki fyrir þann texta.

Hvernig virkar textaflokkun?

Mynd: Quinn Dombrowski í gegnum Flickr, CC BY SA 2.0, (https://www.flickr.com/photos/quinnanya/4714794045)

Flestar textaflokkunaraðferðir er hægt að setja í einn af þremur mismunandi flokkum: reglubundnum aðferðum eða vélanámsaðferðum.

Reglubundnar flokkunaraðferðir

Reglubundin textaflokkunaraðferðir starfa með því að nota beinlínis mótaðar tungumálareglur. Kerfið notar reglurnar sem verkfræðingurinn bjó til til að ákvarða hvaða flokki tiltekið textastykki ætti að tilheyra, leitar að vísbendingum í formi merkingarlega viðeigandi textaþátta. Sérhver regla hefur mynstur sem textinn verður að passa til að vera settur í samsvarandi flokk.

Til að vera nákvæmari, segjum að þú vildir hanna textaflokkara sem getur greint algeng umræðuefni, eins og veðrið, kvikmyndir eða mat. Til að gera textaflokkaranum þínum kleift að bera kennsl á umræður um veðrið gætirðu sagt honum að leita að veðurtengdum orðum í meginmáli textasýnishornanna sem verið er að gefa honum. Þú hefðir lista yfir leitarorð, orðasambönd og önnur viðeigandi mynstur sem hægt væri að nota til að greina á milli efnisins. Til dæmis gætirðu sagt flokkaranum að leita að orðum eins og „vindur“, „rigning“, „sól“, „snjór“ eða „ský“. Þú gætir síðan látið flokkarann ​​fletta í gegnum inntakstexta og telja hversu oft þessi orð birtast í meginmáli textans og ef þau koma fyrir oftar en orð sem tengjast kvikmyndum, myndirðu flokka textann sem tilheyrandi veðurflokki.

Kosturinn við reglubundið kerfi er að inntak þeirra og úttak er fyrirsjáanlegt og túlkanlegt af mönnum og hægt er að bæta þau með handvirkri inngrip verkfræðingsins. Hins vegar eru reglubundnar flokkunaraðferðir líka nokkuð brothættar og þær eiga oft erfitt með að alhæfa vegna þess að þær geta aðeins fylgt fyrirfram skilgreindum mynstrum sem hafa verið forrituð í. Sem dæmi gæti orðið „ský“ átt við raka í himinn, eða það gæti verið að vísa til stafræns skýs þar sem gögn eru geymd. Það er erfitt fyrir reglubundin kerfi að takast á við þessi blæbrigði án þess að verkfræðingarnir eyddu töluverðum tíma í að reyna að sjá fyrir og aðlagast þessum fíngerðum handvirkt.

Vélræn kennslukerfi

Eins og getið er hér að ofan hafa reglubundin kerfi takmarkanir þar sem aðgerðir þeirra og reglur verða að vera forforritaðar. Aftur á móti starfa flokkunarkerfi sem byggjast á vélanámi með því að beita reikniritum sem greina gagnapakka fyrir mynstur sem tengjast tilteknum flokki.

Vélanámsreiknirit fá formerkt/forflokkuð tilvik sem eru greind með tilliti til viðeigandi eiginleika. Þessi fyrirfram merktu tilvik eru þjálfunargögnin.

Vélnámsflokkarinn greinir þjálfunargögnin og lærir mynstur sem tengjast mismunandi flokkum. Eftir þetta eru óséð tilvik svipt af merkingum sínum og færð í flokkunaralgrímið sem úthlutar tilvikunum merki. Úthlutað merki eru síðan borin saman við upprunalegu merkimiðana til að sjá hversu nákvæmur vélanámsflokkarinn var, og meta hversu vel líkanið lærði hvaða mynstur spá fyrir um hvaða flokka.

Vélræn reiknirit starfa með því að greina töluleg gögn. Þetta þýðir að til að nota vélrænt reiknirit á textagögnum þarf að breyta textanum í tölulegt snið. Það eru ýmsar aðferðir við að kóða textagögn sem töluleg gögn og búa til vélanámsaðferðir í kringum þessi gögn. Við munum fjalla um nokkrar af mismunandi leiðum til að tákna textagögn hér að neðan.

Poki-of-words

Poki af orðum er ein algengasta aðferðin til að kóða og tákna textagögn. Hugtakið „töskur af orðum“ kemur frá því að þú tekur í raun öll orðin í skjölunum og setur þau öll í einn „poka“ án þess að taka eftir orðaröð eða málfræði, og gefur aðeins gaum að tíðni orða í pokanum. Þetta leiðir til langrar fylkingar, eða vektor, sem inniheldur eina framsetningu allra orða í inntaksskjölunum. Þannig að ef það eru 10000 einstök orð samtals í inntaksskjölunum, verða eiginleikavektorarnir 10000 orð að lengd. Þannig er stærð orðsins poki/eiginleikavigur reiknuð út.

Mynd: gk_ í gegnum Machinelearning.co, (https://machinelearnings.co/text-classification-using-neural-networks-f5cd7b8765c6)

Eftir að vigurstærðin hefur verið ákvörðuð er hverju skjali á listanum yfir heildarskjöl úthlutað eigin vektor fyllt með tölum sem gefa til kynna hversu oft viðkomandi orð birtist í núverandi skjali. Þetta þýðir að ef orðið „matur“ kemur fyrir átta sinnum í einu textaskjali, mun samsvarandi eiginleikavigur/eiginleikafylki hafa átta í samsvarandi stöðu.

Með öðrum hætti er öllum einstöku orðum sem koma fyrir í inntaksskjölunum öllum hrúgað í einn poka og síðan fær hvert skjal jafnstóran orðvektor sem síðan er fyllt út með því hversu oft mismunandi orðin koma fyrir í skjalinu .

Textagagnasöfn munu oft innihalda mikinn fjölda einstakra orða, en flest þeirra eru ekki notuð mjög oft. Af þessum sökum er fjöldi orða sem notaður er til að búa til orðvektor venjulega takmarkaður við valið gildi (N) og þá verður eiginleikavigurvídd Nx1.

Term Frequency-Inverse Document Frequency (TF-IDF)

Önnur leið til að tákna skjal byggt á orðunum í því er dubbað Term Frequency-Inverse Document Frequency (TF-IDF). TF-IDF nálgun býr einnig til vektor sem táknar skjalið byggt á orðunum í því, en ólíkt Bag-of-words eru þessi orð vegið af meira en bara tíðni þeirra. TF-IDF telur mikilvægi orðanna í skjölunum og reynir að meta hversu viðeigandi það orð er fyrir efni skjalsins. Með öðrum orðum, TF-IDF greinir mikilvægi í stað tíðni og orðafjöldi í eiginleikavigri er skipt út fyrir TF-IDF stig sem er reiknað með tilliti til alls gagnasafnsins.

TF-IDF nálgun virkar með því að reikna fyrst tímatíðnina, fjölda skipta sem einstök hugtök birtast í tilteknu skjali. Hins vegar gætir TF-IDF einnig til að takmarka áhrif þess að mjög algeng orð eins og „the“, „eða“ og „og“, þar sem þessi „stöðvunarorð“ eru mjög algeng en gefa samt mjög litlar upplýsingar um innihald skjalsins. Það þarf að gefa afslátt af þessum orðum, sem er það sem „öfug skjalatíðni“ hluti TF-IDF vísar til. Þetta er gert vegna þess að því fleiri skjöl sem tiltekið orð birtist í, því minna gagnlegt er það orð til að greina það frá öðrum skjölum á listanum yfir öll skjöl. Formúlan sem TF-IDF notar til að reikna út mikilvægi orðs er hönnuð til að varðveita þau orð sem eru algengust og merkingarlega ríkust.

Eiginleikavigrarnir sem búnir eru til með TF-IDF nálguninni innihalda staðlað gildi sem leggja saman í eitt, sem gefur hverju orði vegið gildi eins og það er reiknað með TF-IDF formúlunni.

Embeddings orð

Innfelling orða eru aðferðir til að tákna texta sem tryggja að orð með svipaða merkingu hafi svipaða tölulega framsetningu.

Innfelling orða starfa með því að „vektorvæða“ orð, sem þýðir að þau tákna orð sem raunvirðisvigra í vigurrými. Vigrarnir eru til í rist eða fylki og þeir hafa stefnu og lengd (eða stærðargráðu). Þegar orð eru táknuð sem vektorar er orðunum breytt í vektora sem samanstanda af raungildum. Hvert orð er varpað á einn vektor og orð sem eru svipuð að merkingu hafa svipaða stefnu og stærð. Þessi tegund af kóðun gerir vélnámsreikniriti kleift að læra flókin tengsl milli orða.

Innfellingarnar sem tákna mismunandi orð verða til með tilliti til þess hvernig viðkomandi orð eru notuð. Vegna þess að orð sem eru notuð á svipaðan hátt munu hafa svipaða vektora, þýðir ferlið við að búa til orðainnfellingar sjálfkrafa hluta af merkingunni sem orðin hafa. Poki orða nálgun skapar aftur á móti brothætta framsetningu þar sem mismunandi orð munu hafa ólíka framsetningu jafnvel þótt þau séu notuð í mjög svipuðu samhengi.

Fyrir vikið eru innfellingar orða betri í að fanga samhengi orða innan setningar.

Það eru mismunandi reiknirit og aðferðir notaðar til að búa til orðainnfellingar. Sumar af algengustu og áreiðanlegustu aðferðunum við innfellingu orða eru: innfellingarlög, word2vec og GloVe.

Fella inn lög

Ein möguleg leið til að nota innfellingu orða samhliða vélanámi/djúpu námskerfi er að notaðu innfellingarlag. Innfellingarlög eru djúpnámslög sem umbreyta orðum í innfellingar sem síðan eru færðar inn í restina af djúpnámskerfinu. Orðið innfellingar eru lærðar þegar netið þjálfar sig fyrir tiltekið textabundið verkefni.

Í orðafellingaraðferð munu svipuð orð hafa svipaða framsetningu og vera nær hvert öðru en ólíkum orðum.

Til þess að nota innfellingarlög þarf fyrst að forvinna textann. Textinn í skjalinu þarf að vera einn heitt kóðaður og vektorstærð þarf að tilgreina fyrirfram. Hinum heita texta er síðan breytt í orðvigra og vigrarnir fluttir inn í vélnámslíkanið.

Word2Vec

Word2Vec er önnur algeng aðferð til að fella inn orð. Word2Vec notar tölfræðilegar aðferðir til að umbreyta orðum í innfellingar og það er fínstillt til notkunar með tauganetum byggðum. Word2Vec var þróað af Google vísindamönnum og það er ein algengasta innfellingaraðferðin, þar sem hún skilar áreiðanlega gagnlegum, ríkum innfellingum. Word2Vec framsetning er gagnleg til að bera kennsl á merkingarfræðilega og setningafræðilega sameiginlega eiginleika tungumálsins. Þetta þýðir að Word2Vec framsetning fangar tengsl milli svipaðra hugtaka, að geta greint að sameiginlegt á milli „King“ og „Queen“ er kóngafólk og að „Konungur“ felur í sér „karlleika“ á meðan drottning gefur til kynna „Konungur“.

Hanski

GloVE, eða Global Vector fyrir orðaframsetningu, byggir á innfellingaralgrímunum sem Word2Vec notar. GloVe innfellingaraðferðir sameina þætti bæði Word2Vec og fylkisþáttatækni eins og dulda merkingargreiningu. Kosturinn við Word2Vec er að það getur fanga samhengi, en sem málamiðlun fangar það illa alþjóðlega textatölfræði. Aftur á móti eru hefðbundnar framsetningarmyndir góðar til að ákvarða alþjóðlega textatölfræði en þær eru ekki gagnlegar til að ákvarða samhengi orða og orðasambanda. GloVE byggir á því besta af báðum aðferðum og skapar orðasamhengi byggt á alþjóðlegum textatölfræði.

Bloggari og forritari með sérsvið í vél Learning og Deep Learning efni. Daniel vonast til að hjálpa öðrum að nota kraft gervigreindar í félagslegum tilgangi.