http://www.behav.org/00library/Tapolcai/default.htm

Tapolcai - Cserey: Számítógépes információforrások és szolgáltatások az állatorvos-tudomány területén

Tartalom
 
     
Az adatbázisban való keresés logikája
   
 

 

Hogyan keresünk egy számítógépes adatbázisban? A keresés kialakítását a keresőkérdés elemzésével kezdjük. A kérdésből kiemeljük a fontos fogalom-köröket. Pl. "Milyen sertésbetegségek ellen jó a penicillin?" kérdést állatorvosi adatbázisban általában, ha nem túl nagy az adatbázis, elegendő a "penicillin" és a "sertés" fogalommal keresni. A betegség következik az adatbázis tartalmából (állatorvosi dokumentumok), de következik a penicillin gyógyszer voltából is. Így nem szükséges sertés betegségre vagy gyógyszeres terápiára keresni. A "mi ellen jó" pedig nem ad új információt.

A legnagyobb nehézséget a dokumentumok szóhasználatának sokfélesége jelenti. A természetes nyelv logikáját a számítógép nem könnyen követi. Arra még "rájöhet" a formai hasonlóság alapján, hogy a kutya és a kutyák a felhasználó számára ugyanazt jelenti, de a szarvasmarha és a tehén már nehezebb ügy. Arra pedig "álmában sem gondolna", hogy ha valaki anthelmintikum-ot keres, érdekelni fogják az albendazol-t tartalmazó rekordok is.

Járjuk körül az egyes fogalmi köröket gondosan az előforduló összes szinonima fellelésére, hogy ne veszítsünk értékes dokumentumokat! Azt gondolhatnánk, nem nagy baj, ha egy-egy ritkábban használt szó kimarad, hiszen esetleg még így is túl sok a találat. Azonban komoly veszteség, ha éppen a számunkra legértékesebb cikk éppen egy ritkábban használt szinonima alatt található.

Az egyes kereső kifejezéseket többnyire a Boole algebra alapján kapcsoljuk össze (bár léteznek ettől eltérő, előfordulási gyakoriságon alapuló megoldások is). A Boole algebra operátorai segítségével végzett keresés a következő egyszerű logikát követi:

   
    a) egy bizonyos kifejezést vagy szótövet tartalmazó rekordok összessége egy halmaz.
b) A halmazokat összekapcsolhatjuk az AND, OR vagy NOT szavakkal - ezeket operátoroknak nevezzük - és egy új halmazt képezünk.
   
           
  Jelentésük:    
  A AND B: mindkét kifejezés szerepel a rekordokban, az eredmény a halmazok közös, átfedő része, metszete:  
 
  A OR B: bármelyik kifejezés megfelel, így az eredmény a két halmaz összege (tipikusan a szinonímákat kapcsoljuk így össze):  
 
  A NOT B: az első halmaz elemei alkotják a választ, kivéve azokat a rekordokat, melyekben a második szó is szerepel (pl. pigs not guinea):  
       
 

A kereső rendszerekben helyzeti operátorok (proximity operators) is használatosak, amelyek nemcsak a szavak rekordbeli előfordulására kötnek ki feltételeket, hanem a keresett szavak egymáshoz viszonyított helyzetére is: egymás mellett, egy mondatban, egy adatmezőben, stb. forduljanak elő. Természetesen feltételezik a két keresett szó egy rekordon belüli előfordulását, tehát az AND kapcsolatot. Helyzeti operátorként a NEAR vagy a WITH szokott előfordulni. Bizonyos kereső szoftverek azt is megengedik, hogy megmondjuk hány szó távolságra álljanak egymástól a keresett szavak.

Tekintve, hogy a számítógépes adatbázisokban mindig halmazok képzésével keres a szoftver, mindegy, hogy egyetlen kérdésbe tesszük bele az összes fogalmat az AND, OR, NOT szavakkal összefűzve, vagy külön-külön kérdésként, majd a kapott halmazokat kapcsoljuk össze az operátorokkal: az eredmény azonos lesz.

Első lépésben tehát mindig a maximális számú találatra célszerű törekedni az egyes fogalmi körök esetében, és csak ezután, a halmazok kombinálása során szűkítsük azt fokozatosan a releváns rekordokra. A fenti példánál maradva először vizsgáljuk meg csak a "sertés" és szinonimáit AND kapcsolatban a "penicillin" és szinonímáival. Ha nem releváns rekordok zavaróan nagy számban fordulnak elő (pl. megelőzésre is használják), próbálkozhatunk a "gyógyszeres terápia, sertésbetegség" gondolatkörrel.

Valójában ritkán elégedhetünk meg egyetlen stratégiával. Minden szóba jöhető módon célszerű elvégezni a keresést, majd az eredmény halmazok OR kapcsolattal összegezhetők.

A kifejezések körültekintő megválasztásához segítséget nyújtanak az adatbázisok indexei és tezauruszai, melyek részletezése alább következik.

   
           
  Más koncepcióval is működnek keresőrendszerek. A statisztikai megközelítésen nyugvó módszer azt figyelteti a számítógéppel, hogy milyen gyakran fordul elő a keresett szó a dokumentum szövegében. Ha sikerül jellemző keresőszavakat beírnunk, a talált dokumentumoknak annál lényegesebb aspektusa lesz az, minél többször fordul elő benne. A találatok ebben a sorrendben jelennek meg a képernyőn (ranking). A módszert olyan adatbázisokra találták ki, melyek teljes szöveget, vagy legalább bő referátumot tartalmaznak. Az Interneten található Web oldalak teljes szövegükben kereshetőek, ezért a statisztikai megközelítés nagyon alkalmas esetükben, és a gyakorlatlan felhasználóknak is kedvez, mivel formailag nagyon egyszerű. Természetesen a teljes szövegű adatbázisokban működik legjobban. Az internetes keresőrendszerek a Boole-féle logikával ötvözve használják ezt az elvet.    
 

 

 
webszerkesztő