Kérdezz ? Felelek! - Tudásbázissal támogatott fuzzy keresés

 

Gergály Péter

Empolis Magyarország Informatikai Kft.

2003. április 17.

 

 

Összefoglalás

 

Hogyan lehetne intelligensebb módon keresni az adatok között? Hogyan találhatnék meg olyan információkat, amelyeket nem tudok pontosan megnevezni? Jó lenne, ha minden keresésemre lenne legalább néhány találat! Ilyen és ezekhez hasonló kérdésekkel foglalkozik jelen cikk.

Az egyre nagyobb mennyiségben felgyülemlő elektronikus információ akkor fordítható értékké, ha hatékonyan megtalálható a keresett tartalom. Az cikk a tudásbázissal támogatott tartalom alapú keresési technológiát mutatja be, felhasználási példákkal illusztrálva.

A cikk továbbá bemutatja a technológia egy konkrét megvalósítását is, az empolis orenge 4.0 keresőrendszerét.

 

1.      A keresés problémája

Az információs technológiák robbanásszerű elterjedésének eredményeképpen napjainkra hatalmas mennyiségű elektronikus formában elérhető információ halmozódott fel. Elegendő, ha az Internet méretét, az Interneten elérhető információs mennyiséget bemutató statisztikai táblázatokat, grafikonokat felidézzük emlékezetünkben. Ehhez képzeletben adjuk még hozzá azokat az információkat, amelyek ugyanúgy körül veszik a mindennapi felhasználót és nem részei az Internetnek. Elmondható: hatalmas mennyiségű adat ál rendelkezésünkre elektronikus formában.

A rengeteg adat azonban csak akkor válik értékké, ténylegesen felhasználható üzleti, vagy tudás-előnnyé, ha hatalmas mennyiségű információ között megtalálható a felhasználó számára az adott pillanatban szükséges adat együttes.

Az elektronikus információtárolás egyik nyilvánvaló előnye, hogy az adatok számítástechnikai eszközökkel gyorsan és kényelmesen kereshetőek. Azonban felvetődik a kérdés: minden esetben igaz ez? A modern felhasználási igényeket és célokat a hagyományos keresési technikák kellő mértékben kiszolgálják?

Az informatikai rendszerek hosszú időn keresztül az elemi üzleti tranzakciók információnak kezelését célozták meg. Ezeket a rendszereket úgy tervezték meg, hogy teljes mértékben strukturált adatszerkezetbe képezték le az üzleti folyamatokat, és jól meghatározott adatok szerint lehetett keresni és megtalálni adatokat. Az ilyen rendszereket támogató ún. relációs adatbázis-technológia tökélyre fejlesztette annak képességét, hogy egy adott adatot nagy sebességgel képes legyen megtalálni és a felhasználó számára elérhetővé tenni.

Az személyi számítógépek elerjedése, és az elektronikus szövegszerkesztő programok terjedése, megadta a lehetőséget minden felhasználónak, hogy a korábbinál hatékonyabban tudjon szövegeket előállítani, azaz az általa birtokolt tudást a klasszikus tudásátadási eszközre, az írott szövegre fordítani. Ennélfogva az utóbbi években egyre nagyobb mennyiségben keletkeznek nem-strukturált formában tárolt, ugyanakkor értékes információt, sőt sok esetben a vállalat, szervezet alapvető értékét hordozó információk. Az írott szöveg, a természetes nyelvi formában tárolt információ kereshetőségét az adatbázis kezelők keresési technológiája nem támogatja hatékonyan.

Másrészről a tranzakciós rendszerek esetében is felmerül, hogy a felhasználói kör kiterjesztésével - például Web-en keresztül elérhető információs rendszerek - a felhasználói magatartás, a keresési stratégiák és kulcsszavak egységessége egyre kevésbé határozható meg egyértelműen. Jellemző példája ennek a Web-áruházak, ahol a felhasználók szeretnék az általuk keresett árucikket saját fogalmaikkal megnevezni, továbbá bizonyos lényeges feltételeket nem egzakt formában kívánnak megadni: pl. az áru kerüljön kb. 1500 Ft-ba.

Végül, de nem utolsósorban, maga az Internet is felveti a hatékony kereshetőség problémáját, akár csak néhány Web tartomány esetében is.

Összességében elmondható, hogy a klasszikusnak számító relációs adatbázis kezelők környezetében kikristályosodott keresési technológia nem képes teljes mértékben kiszolgálni a jelen keresési igényeit. Ennek okai a technológia elvi alapjaiban keresendő, azaz a klasszikus SQL technológia "okosítás" csak részeredményeket tud megoldani.

 

2.      A tudásbázissal támogatott intelligens keresés

A keresési problémák egyik megoldási iránya az ún. tudásbázissal támogatott fuzzy keresés. Jelen cikk ezt a technológiát mutatja be.

A technológia bemutatását a technológiát jellemző két kulcsszó, a fuzzy és a "tudásbázissal támogatott" ismertetésével kezdjük.

2.1.   Fuzzy keresés

A fuzzy angol szó, és homályos, elmosódott jelentéssel szerepel. Magyarul bolyhosnak is fordítják. Az elnevezés maga arra utal, hogy a hagyományos keresőrendszerekl éles határaihoz képest ez esetben a keresés "lágy" egyezéseket keres.

Másképpen fogalmazva: míg a hagyományos megoldások világban a találat feltétele a pontos egyezés, addig a fuzzy keresés a kérdéshez hasonló találatokat keres. Azt, hogy mi hasonló mihez és milyen mértékben, a tudásbázis tartalmazza. A tudásbázis ennélfogva elválaszthatatlan része a rendszer egészének.

 

2.2.   Tudásbázissal támogatott

A tudásbázis, mint ahogy előző fejezet már bevezette, ontológiát tartalmaz: mi hasonlít mihez, és milyen mértékben. A tudásbázis tartalmazza az intelligenciát.

A keresési technológia és a rendszer lényeges jellemzője, hogy nem az ontológiát nem statisztikai alapon hozza létre, hanem a felhasználó, a szakértő adja meg explicit módon. Azaz a tudásterületi szakértő kezében van az ontológia meghatározása.

 

2.3.   Hogyan működik?

A tudásbázissal támogatott fuzzy keresési a technológiát a "hogyan működik" kérdésre válaszolva mutatja be.

2.3.1.               A tudásbázis

A tudásbázis felépítése a tudásterület meghatározásával kezdődik. A tudásterület a világnak azon része, amelyre a keresés vonatkozik, pontosabban amelyre keresést végző felhasználó érdeklődése irányul. Tudásterület lehet például földrajzi fogalmak és kapcsolataik, vendéglátás, autók, étel- és italreceptek, stb. A tudásterület leírása az adott terület szempontjából lényeges ismérvek összegyűjtésével kezdődik. Például az italok területén lényeges ismérv az ital fajtája, de lényegtelen a teljesítmény; ugyanakkor az autók világában fontos lehet a teljesítmény fogalma, de a teljesítmény általában érdektelen az italfajták fogalom.

A tudásmodell következő lényeges eleme az ismérvhez kapcsolódó fő fogalmi koncepciók listája és a fogalmi tartalmakhoz kapcsolódó hívószavak, nyelv szerinti csoportosításban. Például színek esetében:

 

Koncepció

Hívószó, magyar

Hívószó, angol

piros

piros

red

rózsaszín

rózsaszín

pink

kék

kék

blue

 

De hasonlóan pl. pénznem esetében:

 

Koncepció

Hívószó, magyar

Hívószó, angol

pénznem

Forint

Ft

Pound

GBP

Ł

Euro

 

A tudásmodell további összetevője a fogalmak közötti hasonlóságok meghatározása: ebben teljes szabadságot élvezhet a rendszer használója. Azaz például lehet definiálni, hogy a cég szakértőinek véleménye alapján a kék és a rózsaszín nagyon hasonlít egymáshoz (95%), viszont a piros és a rózsaszín csak kismértékű hasonlóságot mutat (5%). Azaz nincs megkötés, előre rögzített határok a tudás tartalmára nézve.

 

Az egyes ismérvek folyószövegbeli felismerését minták és szabályok megadásával lehet támogatni.

A számokkal jellemezhető ismérvek esetében a szám mennyiségekre hasonlósági profilt lehet megadni, amely akár aszimmetrikus módon tudja értékelni a kérdező által meghatározott értéktől való eltérést. Például árak esetében mindenki inkább kedveli az alacsonyabb árat, és kevésbé jutalmazza a magasabbat. Ez esetben meghatározható olyan profil, amely sokkal súlyosabban "bünteti" a pozitív irányú eltérést, mint a negatív irányút.

Azaz egy tudásterület a lényeges ismérvek listájából, az ismérvekhez kapcsolódó fogalmi szótárakból és a fogalmak között definiált hasonlósági mérésekből áll össze alapvetően.

 


 

2.3.2.               Egy példa

Tételezzük fel, hogy van egy termék adatbankunk. Ebben szeretnénk keresni. A termékeket számos ismérv jellemzi, ezek közül ebben a példában csak a szín és az ár szerepel.

Szövegdoboz: 1. ábra Fuzzy keresés, példa, 1.lépésA tudásbázisban a következőképpen definiáljuk:

A szín esetében kezeljük a piros, eperszín és korall színeket, és az ábra szerinti hívószavakat rendeljük hozzá.

A színek esetében úgy találtuk, hogy a korall 90%-ban hasonlít a piroshoz, és az eperszín pedig 80%-ban hasonlít a piroshoz. Természetszerűleg van lehetőségünk a szimmetrikus hasonlósági viszont meghatározni (ekkor a piros is 90%-ban hasonlít a korallra, stb.), de ugyanígy aszimmetrikus viszonyt is megadhatunk, pl. a piros 85%-ban hasonlít a korallra.

Az ár esetében meghatároztuk, hogy mindig egész szám. Továbbá definiáljuk, hogy az ár folyó szövegben úgy ismerhető fel, hogy a számjegyek után a Ft karaktersorozat áll.

Az ár esetében a negatív irányú eltérést, azaz az olcsóbb árat közel 100 %-os hasonlósággal jellemezzük, míg a magasabb árat gyorsan csökkenő hasonlósági mértékkel, pl. Egy közel 10%-os pozitív eltérést 30%-os hasonlósági mérték csökkentéssel "jutalmazzuk".

 

Szövegdoboz: 2. ábra Fuzzy keresés, példa, 2. lépés

Tételezzük fel, hogy az adatforrásunkban két áru adata szerepel, a 2. ábra szerinti adatokkal.

A képzeletbeli felhasználó pedig piros színben és max. 1100 Ft-ért keres árucikket adatbankunkban.

A tudásbázis alapján a rendszer elvégzi mind az adatforrások, mind a kérdés tartalmi elemzését. Az eredményeket, azaz a felismert tudásbázis elemeket az ábrán aláhúzások jelölik.

 

 

 

 

 

 

 

 

 

 


 

Szövegdoboz: 3. ábra Fuzzy keresés, példa, 3. lépésAz azonosított tudásbázis elemek és tudásbázisban tárolt hasonlósági viszonyok alapján megtörténik következő lépésben a hasonlósági mérések számítása.

Példánkban egyszerű 1:1 arányú súlyozást alkalmazunk, azonban lehetőség van az ismérvek közötti súly-arányok definiálására, akár a felhasználó által meghatározott tetszőleges mértékben.

Végső lépésben a rendszer rangsorolja hasonlóság szerint az eredményeket és a felhasználó számára megjeleníti.

Esetünkben tehát a felhasználó kérdésére első helyen a "korall színben, 1000 Ft", másodsorban az "eper színben, 1200 Ft" jelenik meg.

Érdemes felfedezni, hogy egyik találat sem tartalmazza a felhasználó által feltett kérdés egyetlen elemét sem, holott a rendszer által szolgáltatott találati lista tartalmában közel áll a kérdezett információhoz.

Ez a kis egyszerű példa is jól érzékelteti a keresési módzser erősségét.

 

 

2.3.3.               Intelligencia növelő szolgáltatások

Az előzőekben bemutatott kis példa jól érzékeltette a fuzzy keresés alapvető működését, azonban a hatékony gyakorlati megvalósítást még számos rendszerelem támogatja.

 

2.3.3.1                        Szótő elemzés, nyelvi funkciók

A világon szinte minden nyelv ragokat és ragozást használ, még ha jelentősen eltérő mértékben is: elegendő ha az angol nyelvre és a magyarra gondolunk. Azonban a tudásbázisban a ragozást nélküli alakokat célszerű megadni, hiszen azok fejezik ki a tartalmat. Tehát következik, hogy a ragozott alakokból a szótő felismerése szükséges, ha természetes nyelven írt forrásokat és természetes nyelven megfogalmazott kérdéseket szeretnék feldolgozni. Ezt a funkciót biztosítja a szótő elemző funkció.

 

2.3.3.2                        Természetes nyelv feldolgozás

A tudásbázis támogatás kiemelt előnye, hogy a rendszer képes természetes nyelvi forrásokat is feldolgozni. A

 

2.3.3.3                        Súlyozás

A tudásterületet jellemző ismérvek nem minden keresési feladatnál szerepelnek egyforma fontossággal. Ezért a rendszer támogatja, hogy a felhasználó tudjon rangsorolni az ismérvek között, akár minden egyes keresésénél meghatározni, neki melyik ismérv éppen a legfontosabb.

2.3.3.4                        Dialógusok

A felhasználói kényelmet növelő szolgáltatás, hogy a rendszer képes felismerni, hogy a felhasználó adott kérdésében a tudásterület szempontjából mely lényeges ismérvekre nem kérdezett rá. Nemcsak felismeri ezeket a hiányokat, hanem automatikusan fel is kínálja a felhasználónak a pontosítás lehetőségét, természetes nyelven megfogalmazott kérdések formájában.

 

2.3.3.5                        Kiemelés

Mivel a rendszer tartalmi hasonlóság alapon keres, ezért előfordulhat, hogy a felhasználó kérdésére olyan találatok is szerepelnek az eredménylistában, amelyek relevanciája nehezebben értelmezhető a felhasználó kérdésére.

A rendszer az automatikus kiemelés szolgáltatást biztosítja ennek a problémának a feloldására: a felhasználó kérdésének tartalmára refkletálva az eredménylistában is szabadon választott típusú kiemelés (színezés, háttér beállítás, aláhúzás, stb.) és természetes nyelvi magyarázószöveg segíti a használót a tartalmi relevancia értelmezésében. A magyarázatok mindig a tudásbázisban definiált tudásra alapulnak.

 

 

2.3.3.6                        Szabályok

Szükséges lehet az adatforrásokban az egyszerű tartalmi elemzésen túlmenő következtések és korrekciók elvégzésére, ugyanígy az eredménylisták tartalmi testre szabása is igényként merül fel. Ezen feladatok megoldását biztosítja a szabálymotor. A szabályok feltételek megfogalmazását és az adatforrások elemzésével felépített tudás

 

2.3.3.7                        Mintaillesztés

A természetes nyelvi szövegekben gyakran a tudáselemek hasonló módon ismerhetőek fel, például az ár adat, jelzős szerkezetek, stb. Ezeknek a kezelését hatékony, reguláris kifejezéseken alapuló mintaillesztő rendszer támogatja.

 

 

3.      Az orenge

Az orenge az Open Retreival Engine rövidítése. Az orenge az empolis terméke, és az előzőekben bemutatott tudásbázissal támogatott fuzzy keresési technológiát valósítja meg.

Az orenge keresési technológián túli fő jellemzője a nyitottság. A nyitottság kétirányú: számos adatforrást képes integrálni, másrészről tetszőleges felhasználói felülettel látható el.

3.1.   Szolgáltatások

Az orenge a tudásbázissal támogatott fuzzy keresési technológia minden kiegészítő szolgáltatását támogatja: természetes nyelvi szövegfeldolgozás, dialógusok,

Teljesítménynövelő szolgáltatása a több különféle indexépítései stratégia támogatása.

 

3.2.   Architektúra

A következő, 4. ábra mutatja be az orenge

4. ábra Az orenge 4.0 rendszer architektúrája

Adatforrás oldalon az orenge relációs adatbázis-kezelőkhöz, fájlrendszerhez, Web-es forrásokhoz, LDAP szolgáltatáshoz, Tamino XML-adatbáziskezelőhöz tud csatalakozni, illetve lehetséges tetszőleges adatforrás elérési felülettel való bővítése.

Kliens oldalon egyaránt támogatja az egyszerű vékony kliens (Web-böngésző) technológiát, a Java alapú technológiákat, valamint a Microsoft COM világát. Szintén támogatja akár az email alapú, vagy mobil technológiát: WAP alkalmazását.

Az orenge fürtözhető alkalmazás, ezáltal optimális üzembiztonsági és teljesítményszint alakítható ki.

 

3.3.   Alkalmazási területek

A tudásbázissal támogatott fuzzy keresési technológia számos informatikai probléma megoldására alkalmazható.

3.3.1.               Portálok, Web kereskedelem

A portálok világában, Web kereskedelem területén a felhasználók intelligens, jól használható, felhasználóbarát felületet várnak el. A felhasználók jogos igénye, hogy akár a portál tartamában, akár a Web-áruház rendszer árucikk katalógusában gyorsan meg tudják találni az általuk keresett tartalmat vagy árucikket. A felhasználók sem a kezelhetetlenül sok, és sokszor nem releváns tartalmú találatot, sem a "0 darab tétel található" üzenetet nem tolerálják. Másrészről viszont a széles felhasználói kör miatt a legváltozatosabb fogalom és nyelvhasználtra kell felkészülni.

Ilyen környezetben hatékony segítséget nyújt az orenge által megvalósított fuzzy keresési technika. Továbbmenve a tudásbázis megfelelő hangolásával elérhető, hogy a fizikai világban szokásosan alkalmazott marketing eljárások elektronikus megfelelőjét megvalósíthassa.

Alkalmazási példája ennek az Otto csomagküldő áruház portálja: www.ott.de

 

3.3.2.               Archívumok: audiovizuális digitális archívumok

Minden olyan archívum, amely olyan tételeket vagy tételek jellemzését tárolja digitális formában, amely természetes nyelven jellemezhetőek, vagy nagyfokú egyéni szubjektivitás várható el az adott jellemző megítélésében, nagy haszonnal tudják hasznosítani az orenge által megvalósított tudásbázissal támogatott fuzzy keresést.

Azt Inervox.de példája jól érzékelteti az orenge helyét és szerepét a metaadat intenzív digitális archívumokban.

A B2B alapú www.intervox.de weblapon a TV műsör és multimédia anyag készítő szerződéses partnerek tudnak keresni a számos tételt tartalmazó zenei könyvtárban, rövid betekintési lehetőség áll rendelkezésükre a döntéshez. A kiválasztott anyagok Interneten keresztül megvásárolhatóak.

Az Intervox jelenleg több mint 3000 zenei darabot tartalmaz. Ekkora tételszám esetén, figyelembe véve, hogy zenei anyagok esetében a rövid minta is több száz kilobájt lehet, a hatékony keresés megvalósítása elsőrendű feltétel, hiszen a felhasználó nem felesleges letöltéseken keresztül akarja megtalálni a keresett darabot. A hatékony kereshetőséget támogatandó a zenei anyagok több mint 10 jellemzővel és több mint 300 lehetséges osztályozási kritériummal írhatóak le. A hatékony keresést az orenge segíti.

A rendszer működését tekintve hasonló, mint bármely audiovizuális archívum. Az inervox.de folyamatosan, Internet alapú kapcsolaton keresztül gyűjti partnereitől az új anyagokat. Az új tételek rövid leírással kerülnek be a gyűjteménybe, illetve egyidejűleg elkezdődik az osztályozásuk. Az osztályozási rendszer bővítése és a tárolt anyagok minél szélesebb körű osztályozása véget az Intervox szoros együttműködésben dolgozik stúdiókkal és zenészekkel.

Az Intervox esetében többek között műfaj, időtartam, hangszerek, előadók szerint lehet keresni a műveket, továbbá a zene jellege szerint. A jelleg szerinti osztályozási rendszert az ábrán látható színskála is támogatja. Az orenge lehetővé teszi, hogy a felhasználó a megadott jelleghez hasonló jellegű zenei darabokat is megtaláljon. Ennek alapja a tudásbázis, amely megadja a jelleget jellemző osztályozási kategóriák közötti jelentésbeli kapcsolatokat.

5. ábra Az Intervox portál

 

3.3.3.               Tudásmenedzsment

Mivel a tudásátadás egyik hatékony eszköze az írott szöveg. Számos vállalat, szervezet rendelkezik a munkatársai, szakértői által leírt tudásdarabokkal, esetleírásokkal, a call-centerében vagy a support rendszerében szétszórtan létező, ám annál értékesebb tudáselmekkel. Ezekből a forrásokból egy nagy tudásbázis létrehozása óriás projekt lenne.

A tudásbázissal támogatott fuzzy keresési technika alkalmazásával viszont hatékonyan feldolgozható és integrálható a szétszórtan létező tudás: a felmerülő kérdésekre, problémákra vonatkozó tudáselemeket az orenge gyűjti össze, és szállítja a felhasználó számára.