Alosztály | Kanonikus (informatika) |
---|
A nyelvészet , rootization vagy desuffixation egy átalakításának folyamata hajlítások a saját csoport vagy root. A szó gyöke a szó azon része, amely az előtag (ok) és az utótag (ok), azaz a szár eltávolítása után marad. Ellentétben azzal a lemmával, amely megfelel a nyelv beszélőinek szokásos használatából eredő kifejezésnek, a gyök általában csak egy ilyen típusú elemzésből származó kifejezésnek felel meg. Például a keres szónak van egy kutatási szára, amely nem felel meg a használt kifejezésnek, eltekintve az erre a szárra való hivatkozásról. Különleges esetekben a szár egybeeshet egy közönséges szókincs kifejezéssel. Ez például a frontális, amely a gyökér homlokát adja .
Az alkalmazott technikák, hogy ezt általában egy lista alapján a toldalékok (képzők, eleji, közti tagokat, circumfixes) a nyelv tekinthető, és egy sor rootization / deuffixation szabályokat kialakítani a priori , amelyek lehetővé teszik, mivel egy szót, hogy megtalálják a gyökér.
A számítógépes gyökereztető programot gyökérzetnek nevezzük. A legismertebb algoritmusokat Julie Beth Lovins (in) (1968) és Martin Porter (in) (1980) dolgozta ki . A gyökérkezelés a természetes nyelvű feldolgozó alkalmazásokban gyakori folyamat , például gépi fordítás, információ-visszakeresés ( entitásfelismerés ) és keresőmotor-indexelés során.
Például az angol, a rootization a „ halászat”, „ halásztak ”, „ hal ” és a „ halász ” ad „ hal ”. Ha csak az egyes szavakat tartanák az indexben, akkor a keresés során lehetetlen lenne a " halász " kifejezésre hivatkozni olyan dokumentumokra, amelyek csak a " halászat " szót tartalmazzák . A gyökeresedésnek köszönhetően tudjuk, hogy ugyanaz a gyökérzetük van, és eleve ugyanannak a lexikonnak a részei.
Ezzel szemben a gyökeresedés szintén hibaforrás. Például angolul az " egyetem " és az " univerzum " szavak ugyanazzal a gyökérrel (" univerzum ") rendelkeznek, bár még a két szót használó dokumentumok is nagyon gyenge kapcsolatban lehetnek.
Ezek a különféle gyökereztető algoritmusok két szakaszban haladnak: egy deuffixációs lépés, amely a lehető leghosszabb előre meghatározott végződések eltávolításából áll, és egy újrakódolási lépés, amely előre definiált végződéseket ad hozzá a kapott gyökerekhez. Lovins algoritmusa külön-külön végzi a két lépést, Porter algoritmusa azonban mindkét lépést egyszerre.
Fontos megjegyezni, hogy a Porter algoritmusa által biztosított gyökerek nem feltétlenül igaz morfémák.
A gyökérkezelők két fő családja van jelen az irodalomban: algoritmikus gyökérkezelők és a szótárt használók.
Az algoritmikus gyökérkezelő gyakran gyorsabb lesz, és lehetővé teszi a gyökerek kivonását ismeretlen szavakból (bizonyos értelemben ismeretlen minden szó, amellyel találkozik). Ugyanakkor magasabb lesz a hibaaránya, és olyan szavakat csoportosít, amelyeknek nem szabad (túlgyökeresedés). A szótár megközelítés nem hibázik az ismert szavakkal, de hibákat okoz azokon, amelyeket nem sorol fel. Ez szintén lassabb, és még mindig szükséges az utótagok eltávolítása, mielőtt a megfelelő gyökért keresné a szótárban.A Porter által kifejlesztett algoritmus körülbelül ötven gyökereztető / deszefixáló szabályból áll, amelyek hét egymást követő fázisba vannak besorolva (többes számok és igék feldolgozása egyes szám harmadik személyben, a múlt idő és a progresszív feldolgozása ...). Az elemzendő szavak az összes fázist átmennek, és ha több szabály is alkalmazható lenne rájuk, akkor mindig a leghosszabb utótagot választják. A rootizálást / desuffixálást ugyanabban a lépésben kódolási szabályok kísérik. Így például a "zavaró" a problémamegoldássá válik, ha eltávolítja a jelző utótagot a progresszív hangzásból, majd "problémává" alakul át, ha az "bl" szabályt "ble" -re fordítja. Ez az algoritmus öt kontextusszabályt is tartalmaz, amelyek megjelölik azokat a feltételeket, amelyek mellett az utótagot el kell távolítani. Például az -ing végződés csak akkor kerül eltávolításra, ha a szárnak legalább egy magánhangzója van. Ily módon a "nyugtalanító" "problémává" válik, amint láttuk, míg az "éneklés" marad "énekelni".
Porter algoritmusának részleteiVagy magánhangzót képvisel (az „y” magánhangzónak tekintendő, ha mássalhangzó előzi meg), mássalhangzót képvisel; vagy magánhangzók sorozatát, mássalhangzók sorozatát képviseli, akkor egy angol nyelvű szó a következő 4 forma egyikének lehet:
amelyet vagy ha képviselhetünk egy szó mértékének. A különböző értékek különböző szavakat mutatnak be:
A deuffixation / rootization szabályok formában vannak kifejezve, ami azt jelenti, hogy ha egy szó véget ér, és az előtag kielégíti a feltételt, akkor az utótag helyébe a következő lép:
Lehetséges logikai operátorok használata: és, vagy nem
1. lépés |
Nak nek |
|
simogatás → simogató |
b |
|
takarmány → etetés, megbeszélt → megegyezik |
|
vs. |
|
boldog → happi, ég → ég |
|
2. lépés |
|
relációs → relatív |
|
3. lépés |
|
három példány → |
|
4. lépés |
|
újjászületés → újjáélesztési |
|
5. lépés |
|
|
Tesztelje ezt az algoritmust 2 szóval: Általánosítások és oszcillátorok
Általánosítások 1. lépés: Általánosítás 2. lépés: Általánosítás 3. lépés: Általános 4. lépés: Gener Oszcillátorok 1. lépés: oszcillátor 2. lépés: oszcillál 4. lépés: Oscill 5. lépés: OscilPorter algoritmusa szabadon terjeszthető, és számos nyelven megvalósult. 2000-ben Martin Porter biztosította saját algoritmusának megvalósítását több nyelven, mivel a többiek enyhe hibákat tartalmaztak. Porter algoritmusa hatékony az angol nyelv számára, de nem túl alkalmas a francia nyelvre. Ezért egy újabb algoritmust fejlesztenek ki a francia nyelvre.
A Porter algoritmusához hasonlóan a Carry algoritmusa is különböző szakaszokban zajlik, amelyeken keresztül a feldolgozandó szavak egymást követik. A szabályok szerint, amikor az elemző felismer egy utótagot a listából, vagy eltávolítja, vagy átalakítja. Itt is a leghosszabb utótag határozza meg az alkalmazandó szabályt.
A francia morfológia tanulmányozásához hordozási szabályokat javasoltak, amelyek ingyenesen letölthetők a GALILEI projekt webhelyéről (Generic Analyzer and Listener for Indexed and Linguistics Entities of Information).
A Paice / Husk algoritmus az algoritmikus eredetűek családjába tartozik. A gyökerek kibontásához egy sor szabályra támaszkodik, és mi több, ezeket a szabályokat a kódon kívül tárolja. Így lehetséges egy másik szabályhalmazból származó új nyelv ugyanúgy kezelése a kód átírása nélkül, bizonyos kiigazításokkal (minden nyelvhez meg kell adni az elfogadott magánhangzók listáját és a gyökér érvényességi szabályokat). Így az algoritmus könnyebben hordozható egy új nyelv kezelésében.
Ezt az algoritmust Chris Paice fejlesztette ki a Lancaster Egyetemen az 1980-as években, majd Pascal, C, PERL és Java kódolással látták el.
A Paice / Husk algoritmus megvalósítása egy sor olyan funkcióból áll, amelyek bemenetként a megadott szóra vonatkozó gyökérkivonási szabályokat fogják használni, és ellenőrzik a javasolt gyökér elfogadhatóságát.
Rootization és lemmatization két nagyon hasonló fogalmak, de vannak alapvető különbségek:
A keresőmotorok stemmereket használnak az információk visszakeresésének javítására. A lekérdezés vagy a dokumentum kulcsszavait gyökereik képviselik, nem pedig az eredeti szavak. A kifejezés több változata tehát egyetlen reprezentatív formában csoportosítható, ami csökkenti a szótár méretét, vagyis a dokumentumok halmazának megjelenítéséhez szükséges különálló kifejezések számát. A kis szótárméret mind helyet, mind végrehajtási időt megtakarít. De a törzsek használata a pontosságot is csökkenti.
(fr) Ez a cikk kivonatokat tartalmaz a Számítástechnika Ingyenes On-line Szótárából, amely engedélyezi annak tartalmának felhasználását a GFDL licenc alapján .