A tőképzés az a folyamat , amikor egy szó tövét egy adott forrásszóhoz megtaláljuk. A szó törzse nem feltétlenül egyezik meg a szó morfológiai gyökerével .
A számítástechnikában régóta problémát jelent a szó törzsének megtalálása . Az első publikáció ebben a kérdésben 1968 -ból származik . A törzsszót a keresőmotorok a felhasználó keresési lekérdezésének bővítésére használják , a szövegnormalizálási folyamat része .
A szavak alapjainak megtalálásának egy sajátos megoldási módját szótömeg-algoritmusnak nevezzük , egy konkrét megvalósítását pedig a szótő .
Az első kiadott sztem Julie Beth Lovins írta 1968-ban [1] . Ez a tanulmány korai megjelenési dátumáról nevezetes, és nagy hatással volt a területen végzett későbbi munkákra.
A szárat később Martin Porter írta, és 1980-ban adta ki. Ezt a stemmert nagyon széles körben használják, és az angol szövegek de facto szabványos algoritmusává vált. Dr. Porter 2000-ben megkapta a Strix-díjat az adatgyűjtéssel és információkereséssel kapcsolatos munkájáért.
A Porter-féle eredő algoritmus számos megvalósítását megírták és szabadon terjesztették; azonban ezen megvalósítások közül sok tartalmaz nehezen fellelhető hibákat. Ennek eredményeként ezek az algoritmusok nem működtek teljes potenciáljukban. Az ilyen típusú hibák kiküszöbölésére Martin Porter 2000 körül kiadta az algoritmus hivatalos ingyenes megvalósítását . Ezt a munkát az elkövetkező néhány évben folytatta, és kifejlesztette a Snowball -t, egy keretrendszert a törzstőke-algoritmusok létrehozásához, valamint továbbfejlesztette az angol szótőket, valamint számos más nyelvhez is.
Számos forráskód-algoritmus létezik, amelyek teljesítményük, pontosságuk és bizonyos eredő problémák megoldásának módja tekintetében különböznek egymástól.
Egy egyszerű szótő megkeres egy inflexiós alakot a keresőtáblázatban . Ennek a megközelítésnek az előnye az egyszerűség, a gyorsaság és a kivételek egyszerű kezelése. A hátrányok közé tartozik, hogy az összes ragozásos alakot kifejezetten fel kell tüntetni a táblázatban: az új vagy ismeretlen szavakat akkor sem dolgozzák fel, ha azok helyesek (pl. iPad ~ iPad), valamint az is probléma, hogy a keresőtábla nagyon nagy lehet. Az olyan egyszerű morfológiájú nyelveknél, mint az angol, a táblázatok mérete kicsi, de az erősen inflexiós nyelveknél (például a töröknél) egy táblázat több száz lehetséges inflexiós formát tartalmazhat minden gyökér számára.
A szótagokban használt keresőtáblákat általában félautomatikusan generálják. Például az angol "run" szóhoz a "running", "runs", "runned" és "runly" alakok automatikusan létrejönnek. Az utolsó két forma érvényes konstrukció, de nem valószínű, hogy normál angol szövegben jelennek meg.
A keresőalgoritmus használhat partíció előtti jelölést , hogy elkerülje ezt a fajta lemmatizációs hibát , amikor különböző szavakat rendelnek ugyanahhoz a lemmához (túlszármazás) [2] .
A befejező csonkolási algoritmusok nem használnak keresőtáblát, amely inflexiós alakokból és gyökér-alakú kapcsolatokból áll. Ehelyett általában a "szabályok" egy kisebb listája tárolódik, amelyet az algoritmusok a szó alakjától függően használnak a szó tőjének megkeresésére [3] . Néhány példaszabály így néz ki:
A befejező csonkolási algoritmusok sokkal hatékonyabbak, mint a nyers erő algoritmusai . Az ilyen algoritmusok kidolgozásához olyan programozóra van szükség, aki meglehetősen jártas a nyelvészetben , különösen a morfológiában , és képes a "csonkítási szabályok" kódolására is. A leállítási csonkolási algoritmusok nem hatékonyak kivételek esetén (pl. 'run' és 'run'). A zárócsonkolási algoritmusokkal kapott megoldások néhány kivételtől eltekintve azokra a beszédrészekre korlátozódnak , amelyeknek jól ismert végződései és utótagjai vannak. Ez komoly korlát, mivel nem minden beszédrészhez tartozik jól meghatározott szabályrendszer. A lemmatizálás megpróbálja megszüntetni ezt a korlátozást.
Előtagcsonkítási algoritmusok is megvalósíthatók. Azonban nem minden nyelvnek van előtagja és utótagja.
Az algoritmusok további kritériumaiA leállítási csonkolási algoritmusok eredményei többféle ok miatt változhatnak. Ennek egyik oka az algoritmus sajátossága, hogy az algoritmus kimenetén lévő szónak valódi szónak kell-e lennie az adott nyelven. Egyes megközelítések nem igénylik a szó jelenlétét a megfelelő nyelvi lexikonban . Ezenkívül néhány algoritmus adatbázist tart fenn az összes ismert morfológiai gyökről, amely valódi szóként létezik. Ezek az algoritmusok a döntés meghozatalához ellenőrzik egy kifejezés jelenlétét az adatbázisban. Általános szabály, hogy ha a kifejezés nem található, alternatív lépéseket tesznek. Ezek az alternatív tevékenységek kissé eltérő kritériumokat alkalmazhatnak a döntés meghozatalához. A nem létező kifejezés alternatív csonkítási szabályként szolgálhat.
Előfordulhat, hogy két vagy több csonkítási szabály vonatkozik ugyanarra a beviteli kifejezésre, ami kétértelművé teszi, hogy melyik szabályt kell alkalmazni. Az algoritmus meg tudja határozni az ilyen szabályok végrehajtásának prioritását (személy segítségével vagy sztochasztikus módon). Vagy az algoritmus elutasíthatja az egyik szabályt, ha az nem létező kifejezést eredményez, míg a másikat nem. Például az angol "friendlies" kifejezésnél az algoritmus meghatározhatja az "ies" utótagot, alkalmazhatja a megfelelő szabályt, és a "friendl" eredményt adja vissza. A "barát" kifejezés valószínűleg nem található meg a lexikonban, ezért ez a szabály el lesz utasítva.
Az utótagcsonkítási algoritmusok egyik fejlesztése az utótag- és utótag-helyettesítés használata. A csonkítási szabályhoz hasonlóan a helyettesítési szabály egy utótagot vagy végződést helyettesít egy alternatívra. Lehet például egy szabály, amely az "ies"-t "y"-re cseréli. Mivel a csonkolási szabályok a lexikonban nem létező kifejezéshez vezetnek, a helyettesítési szabályok megoldják ezt a problémát. Ebben a példában a „barátságos” kifejezés „barát”-ra konvertálódik „barát” helyett.
Ezeknek a szabályoknak az alkalmazása jellemzően ciklikus vagy rekurzív. A példa helyettesítési szabályának első alkalmazása után az algoritmus kiválasztja a következő szabályt a "barátságos" kifejezéshez, aminek eredményeként az "ly" utótag csonkolási szabálya azonosításra és felismerésre kerül. Így a „barátságos” kifejezés a helyettesítési szabály révén „barátságos” kifejezéssé válik, amely a csonkítási szabály alkalmazása után „barát” kifejezéssé válik.
Ez a példa segít bemutatni a különbséget a szabályalapú módszer és a brute force módszer között . A kimerítő keresést használva az algoritmus több százezer ragozható szóalakban keresi a "barátságos" kifejezést, és ideális esetben megtalálja a megfelelő "barát" szót. A szabály alapú módszerben a szabályokat egymás után hajtják végre, ami ugyanazt a megoldást eredményezi. Valószínűleg a szabályalapú módszer gyorsabb lesz.
A nyelvészetben a toldalékok leggyakoribb kifejezései az utótag és az előtag. Az utótagokat vagy végződéseket kezelő megközelítések mellett egyesek előtagokat is kezelnek. Például egy angol szó esetén ez a módszer meghatározza , hogy a szó elején lévő "in" konstrukció egy előtag, és eltávolítható-e a szótőhöz. A fent említett módszerek közül sok is ezt a megközelítést alkalmazza. Például a végződés csonkolási algoritmusa képes kezelni az utótagokat és a végződéseket, valamint az előtagokat is, ebben az esetben másképpen hívják, és ezt a megközelítést követi. Több európai nyelv toldaléktőivel kapcsolatos kutatások találhatók egy publikációban ( Jongejan et al 2009 ).
A szótőmeghatározási probléma megoldásának összetettebb megközelítése a lemmatizáció . A lemmatizáció működésének megértéséhez tudnod kell, hogyan jönnek létre egy szó különböző formái. A legtöbb szó megváltozik, ha különböző nyelvtani alakokban használják . A szó végét nyelvtani végződés helyettesíti, és ez az eredeti szó új alakjához vezet. A lemmatizáció a fordított transzformációt hajtja végre: a nyelvtani végződést utótaggal vagy a kezdeti alak végződésével helyettesíti [4] .
A lemmatizálás magában foglalja a szó beszédrészének meghatározását és az egyes beszédrészekre eltérő normalizálási szabályok alkalmazását is. A szórész meghatározása azelőtt történik, hogy megpróbálnánk megtalálni a tőt, mivel egyes nyelvek esetében a szótő szabályai az adott szó beszédrészétől függenek.
Ez a megközelítés nagymértékben függ a lexikális kategória (beszédrész) pontos meghatározásától. Bár néhány lexikai kategória normalizálási szabályai között átfedés van, a rossz kategória megadása vagy a megfelelő kategória meghatározásának elmulasztása tagadja ennek a megközelítésnek az előnyét a csonkolási algoritmussal szemben. A lényeg az, hogy ha a szótő több információt tud szerezni a feldolgozott szóról, akkor pontosabb normalizálási szabályokat tud alkalmazni.
Ripple-down szabályok megközelítésA ripple-down szabályokat eredetileg ismeretszerzésre és szabályalapú rendszerek fenntartására tervezték. Ebben a megközelítésben a tudást az aktuális kontextus alapján sajátítják el, és fokozatosan hozzáadják. A szabályok az adott kontextushoz illeszkedő esetek osztályozására jönnek létre.
A szabványos besorolási szabályokkal ellentétben a Ripple-down szabályok kivételeket használnak a meglévő szabályok alól, így a változások csak a szabály kontextusához kapcsolódnak, és nem érintenek másokat. A tudásszerző eszközök segítenek megtalálni és módosítani az ütköző szabályokat. Íme egy egyszerű példa a hullámzási szabályra :
if a ^ b then c except if d then e else if f ^ g then h
Ez a szabály a következőképpen értelmezhető: „ha a és b igaz, akkor c -t határozzuk meg , kivéve ha d nem igaz. Ha d igaz (kivétel), akkor e döntést hozunk . Ha a és b nem igaz, akkor áttérünk egy másik szabályra, és eldöntjük, h f és g igaz -e." Ez a szabályforma nagyon jól megoldja a lemmatizáció problémáját [5] .
A szabály alóli kivétel létrehozásához az algoritmusnak először meg kell határoznia azt a szót, amely az adott kivételt indukálta. Ezt követően meghatározzák a két szó közötti különbségeket. A szabály kivételes feltétele megfelel ezeknek a különbségeknek.
A sztochasztikus algoritmusok egy szó gyökéralakjának valószínűségi meghatározásához kapcsolódnak. Ezek az algoritmusok valószínűségi modellt építenek fel, és a gyök és az inflexiós alakok közötti megfelelési táblázat segítségével tanítják őket. Ezt a modellt általában összetett nyelvi szabályok formájában mutatják be, természetükben hasonlóak a csonkolási és lemmatizációs algoritmusokban használt szabályokhoz. A törzsképzés a modell betanításához módosított formák bevezetésével és a modell belső szabályrendszerének megfelelő gyökérforma generálásával történik, kivéve, hogy a döntések a legmegfelelőbb szabály vagy szabálysorozat alkalmazására, valamint a választásra vonatkoznak. A szó tőjének a szótövéből származó értékeket azon az alapon alkalmazzuk, hogy az eredményül kapott helyes szónak lesz a legnagyobb a valószínűsége (a rossz szavaknak a legkisebb a valószínűsége).
Egyes lemmatizációs algoritmusok sztochasztikusak abban az értelemben, hogy egy szó különböző valószínűséggel több szórészhez is tartozhat. Ezek az algoritmusok figyelembe vehetik a környező szavakat is, amelyeket kontextusnak neveznek. A szövegkörnyezet nélküli nyelvtanok semmilyen további információt nem vesznek figyelembe. Mindkét esetben, miután minden lehetséges szófajhoz egy valószínűséget rendeltünk, kiválasztásra kerül a legnagyobb valószínűségű beszédrész, valamint a megfelelő szabályok a normalizált forma eléréséhez.
Egyes törzsképző algoritmusok N-gram elemzést használnak a megfelelő tő kiválasztásához egy szóhoz [6] .
Szövegkorpuszon alapuló eredetA klasszikus szótő (mint a Porter-féle tő) egyik fő hátránya, hogy gyakran nem tesznek különbséget a hasonló szintaxisú, de teljesen eltérő jelentésű szavak között. Például a "hír" és az "új" a tőképző eredményeként az "új" szóra redukálódik, bár ezek a szavak különböző lexikai kategóriákba tartoznak. Egy másik probléma az, hogy egyes eredő algoritmusok alkalmasak lehetnek az egyik korpuszra, és túl sok hibát okoznak egy másikban. Például a „készlet”, „készletek”, „készlet” stb. szavaknak különleges jelentése lesz a The Wall Street Journal újság szövegeiben . A korpusz alapú tőképző fő gondolata, hogy ekvivalencia osztályokat hozzon létre a klasszikus tőszók szavaihoz, majd egyes szavakat „megtörjön” a korpuszban való előfordulásuk alapján. Segít megelőzni a Porter-algoritmusok jól ismert ütközéseit is, mint például a "policy/police", mivel ezeknek a szavaknak az együttes előfordulásának esélye meglehetősen kicsi [7] .
Az ilyen algoritmusok törzsadatbázist használnak (például szótöveket tartalmazó dokumentumkészletet). Ezek a tövek nem feltétlenül felelnek meg a közönséges szavaknak, a legtöbb esetben a tő egy részkarakterlánc (például az angolnál a "brows" egy részkarakterlánc a "browse" és a "browsing" szavakban). Annak érdekében, hogy meghatározza egy szó tövét, az algoritmus megpróbálja azt párosítani az adatbázisból származó tövekkel, különféle megszorításokat alkalmazva, például a keresett tő hosszára a szóban, magának a szónak a hosszához képest (pl. Például a "be" rövid előtag, amely az olyan szavak alapját képezi, mint a "be", "been" és "being" nem képezné a "mellett" alapját).
A hibrid megközelítések a fent leírt módszerek közül kettőt vagy többet használnak. Egy egyszerű példa erre az utótagfa algoritmus, amely munkája elején keresési táblákat használ a kezdeti adatok megszerzéséhez, kimerítő kereséssel. Ahelyett azonban, hogy egy adott nyelvhez tartozó szavak közötti kapcsolatok teljes komplexumát tárolnák, egy keresési táblázatot használnak néhány "gyakori kivétel" tárolására (például az angol nyelv esetében: "run => run"). Ha a szó nem szerepel a kizárási listán, akkor az eredmény eléréséhez a rendszer a befejező csonkolási vagy lemmatizációs algoritmusokat alkalmazza.
Míg a korai tudományos tevékenység nagy része ezen a területen az angolra összpontosult (leginkább a Porter törzsű algoritmust használva), a későbbi munkákat sok más nyelvnek szentelték [8] [9] [10] [11] [12] .
A héber és az arab még mindig nehezen tanulható nyelvnek számít a származás szempontjából. Az angol szótövező algoritmusok meglehetősen triviálisak (csak alkalmanként merülnek fel problémák, például a "dries" szó a "dry" ige egyes szám harmadik személyű jelen idejű formája, vagy az "axes" szó az "axe" és a " tengely"); de a szótőket nehezebb megtervezni, ha egy összetettebb célnyelvet választanak, nevezetesen egy összetettebb morfológiájú és helyesírású nyelvet. Például az olasz nyelv tőszavai bonyolultabbak, mint az angol tőszavai (az igék nagy száma miatt), az orosz nyelvben a megvalósítás még nehezebb (nagyszámú főnévi ragozás), a héberben még összetettebbek (a nem konkatenatív morfológia miatt). , magánhangzók nélküli írás, valamint előtagcsonkítási algoritmusok szükségessége: a héber szótövek lehetnek két, három vagy négy karakter hosszúak, de nem hosszabbak) stb.
A többnyelvű törzsképző algoritmusok egyszerre két vagy több nyelv morfológiai szabályait alkalmazzák.
Az orosz nyelv az inflexiós szintetikus nyelvek csoportjába tartozik, vagyis azokhoz a nyelvekhez, amelyekben a szóképzés dominál, több nyelvtani jelentést egyszerre kombináló toldalékokkal (például kedves - az й végződés egyben jelzi az egyes számú, férfi nemet és névelős eset), ezért ez a nyelv lehetővé teszi törzsképző algoritmusok használatát. Az orosz nyelv összetett morfológiai szóváltozásokkal rendelkezik, ami hibák forrása a szótő használatakor. Ennek a problémának a megoldásaként a klasszikus tövekedő algoritmusok mellett olyan lemmatizációs algoritmusok is használhatók, amelyek a szavakat a kezdeti alapformába hozzák.
Tekintsük a tőszók legnépszerűbb megvalósításait, amelyek különféle elveken alapulnak, és lehetővé teszik az orosz nyelv nem létező szavak feldolgozását.
Stemmer PorterA Porter-féle tő fő gondolata az, hogy korlátozott számú szóképző utótag létezik, és a szótövek tőalapok használata nélkül történik: csak meglévő utótagok és kézzel beállított szabályok halmaza.
Az algoritmus öt lépésből áll. Minden lépésben levágnak egy szóképző utótagot, és a fennmaradó részt ellenőrzik, hogy megfelelnek-e a szabályoknak (például orosz szavak esetén a tőnek legalább egy magánhangzót kell tartalmaznia). Ha az eredményül kapott szó megfelel a szabályoknak, akkor megtörténik az átmenet a következő lépésre. Ha nem, akkor az algoritmus másik utótagot választ a kivágáshoz. Az első lépésben a maximális alakképző utótag le van vágva, a másodiknál - az "i" betű, a harmadiknál - a szóképző utótag, a negyedikben - a szuperlatívuszú formák utótagja, "ь" és a két „n” közül az egyik [13] .
Ez az algoritmus gyakran a szükségesnél jobban csonkolja a szót, ami megnehezíti a szó helyes tőjének megtalálását, például ágy-> tető (ebben az esetben a valóban változatlan rész az ágy , de a szótő a leghosszabb morfémát választja törlés). Ezenkívül a Porter-féle tő nem birkózik meg a szógyök mindenféle változásával (például a kieséssel és a folyékony magánhangzókkal).
StemkaEzt az eredő algoritmust (analizátort) Andrey Kovalenko fejlesztette ki 2002-ben. Valószínűségi modellen alapul: a tanszöveg szavakat az elemző „a tő utolsó két betűje” + „utótag” párokba elemzi, és ha már van ilyen pár a modellben, akkor a súlyát növeli. , ellenkező esetben hozzáadódik a modellhez. Ezt követően az eredményül kapott adattömb súly szerinti csökkenő sorrendbe kerül, és levágjuk azokat a modelleket, amelyek valószínűsége kisebb, mint 1/10000. Az eredményt - potenciális végződések halmazát, feltételekkel az előző karaktereken - megfordítja a szóalakok "jobbról balra" történő letapogatásának kényelme érdekében, és egy véges automata átmeneti táblázataként jelenik meg. Elemzéskor a szót a rendszer a felépített átmeneti táblák szerint vizsgálja. Az algoritmushoz egy speciális szabály is bekerült, amely szerint a változatlan tőnek legalább egy magánhangzót kell tartalmaznia [14] .
A bemutatott elemző forrásszövegekben elérhető, és a forrásra való hivatkozás feltételével szabad formában használható [15] [16] .
MyStemA MyStem stemmert Ilya Segalovich fejlesztette ki 1998-ban. Jelenleg a Yandex tulajdona [17] . Az első lépésben a bemeneti szóban található utótagfa segítségével meghatározzák a tő és az utótag közötti lehetséges határokat, majd minden potenciális tő esetében (a leghosszabbtól kezdve) a tőfa bináris keresése ellenőrzi annak jelenlétét a szótár vagy a hozzá legközelebb eső tövek megtalálása (a közelség mértéke szerint a közös "farok" hossza). Ha a szó egy szótári szó, akkor az algoritmus leáll, ellenkező esetben a következő partícióra lép.
Ha a tőváltozat nem egyezik a „legközelebbi” szótári tővel, akkor ez azt jelenti, hogy az elemzett szó ezzel a tőváltozattal nem szerepel a szótárban. Ezután a „legközelebbi” szókészlet meglévő tő, utótagja és modellje alapján egy hipotetikus modell készül az adott szó megváltoztatására. A hipotézist megjegyzik, és ha már korábban felépítették, akkor növeli a súlyát. Ha a szó soha nem található meg a szótárban, akkor a szükséges általános tővégződés hossza eggyel csökken, a fában új hipotéziseket keresünk. Amikor a közös „farok” hossza eléri a 2-t, a keresés leáll, és a hipotéziseket produktivitás szerint rangsorolják: ha a hipotézis súlya ötször vagy többször kisebb, mint a legnagyobb súly, az ilyen hipotézis megszűnik. A stemmer munkájának eredménye egy nem létező szóra vagy egy szótári szóra vonatkozó hipotéziskészlet [18] .
A szár kereskedelmi célokra használható; kivételek: spam létrehozása és terjesztése, webhelyek keresőoptimalizálása, valamint a Yandex szolgáltatásaihoz és termékeihez hasonló termékek és szolgáltatások fejlesztése [17] . A forráskódokat nem terjesztik [19] . A telepítéshez egyszerűen töltse le és csomagolja ki az archívumot [20] .
Kétféle hiba létezik a támasztóalgoritmusokban: túlzott és alulszabott . A túlnyúlás az első fajta hiba , amikor a ragozásos szavakat tévesen egy lemmának tulajdonítják. Az alábecsülés egy második típusú hiba , amikor egy szó morfológiai alakjait különböző lemmákhoz rendelik. A törzsalgoritmusok megpróbálják mindkét hibát minimalizálni, bár az egyik hibatípus csökkentése növelheti a másikat [21] .
Tekintsük az ilyen típusú hibákat a Porter-féle eredő algoritmus során. overstemming error case : ez az algoritmus az "univerzális", "egyetemi" és "univerzum" szavakat egyezteti az "univers" szóval; bár ezek a szavak etimológiailag különböznek egymástól, mai jelentésük más-más területre vonatkozik, ezért nem helyes szinonimákként kezelni őket. Alulértékelési hibaeset : Porter algoritmusa olyan szavakat párosít, amelyek ugyanabból a lemmából származnak, különböző tövekkel , és ezért különböző lemmákhoz rendeli őket – „alumnus” → „alumnu”, „alumni” → „alumni”, „alumna” / " alumnae" → "alumna" (ezek a szavak megőrizték morfológiájukban a latin vonásokat, de ezeket a közeli szinonimákat nem egyesítette tő).
A tőszót közelítő módszerként használják a hasonló alapjelentésű szavak csoportosítására. Például a „nárcisz”-t említő szöveg valószínűleg szorosan kapcsolódik a „nárcisz”-t említő szöveghez (az „s” nélkül). Bizonyos esetekben azonban az azonos törzsű szavak idiomatikus jelentéssel bírnak, amelyek szinte nem kapcsolódnak egymáshoz: ha a felhasználó a "marketing" kifejezést tartalmazó dokumentumokra keres, olyan dokumentumokat is talál, amelyek megemlítik a "piacokat", de nem tartalmazzák a "marketing" kifejezést (ami valószínűleg nem kielégíti a felhasználó információs igényeit ).
A száradás meglehetősen gyakori a keresőmotorokban . Viszonylag hamar felismerték azonban, hogy az angol nyelvű keresőmotorokban a stemming hatékonysága nagyon korlátozott, és ez arra késztette a fiatal kutatókat, hogy az információkeresés területén megértsék, hogy a száradás nem általánosan alkalmazható [22] [23] . A keresőmotorokban a törzsek helyett az N-grammokra támaszkodó megközelítés alkalmazható , nem pedig a tövekre. Ezenkívül a közelmúltban végzett tanulmányok nagy előnyöket mutattak az N-gramos keresésben az angoltól eltérő nyelveken [24] [25] .
A tárgyi területek törzsszóval történő elemzésekor ezekről a területekről szótárak készülnek [26] .
Sok kereskedelmi vállalat legalább az 1980-as évek óta alkalmaz törzstőket, és számos nyelvhez fejlesztettek ki algoritmikus és lexikális szótőket [27] [28] .
A hógolyószárakat összehasonlították a kereskedelmi forgalomba hozottakkal. Az eredmények vegyesek [29] [30] .
A Google keresőmotorja 2003 óta használja a szárszót [31] . Korábban a "fish" kifejezésre történő keresés nem adott vissza a "fishing" szót tartalmazó találatokat.
természetes nyelvi feldolgozás | |
---|---|
Általános meghatározások | |
Szövegelemzés |
|
Hivatkozás |
|
Gépi fordítás |
|
Azonosítás és adatgyűjtés | |
Tematikus modell | |
Peer review |
|
Természetes nyelvű felület |