Topic (často označovaná aj ako technológia TOPIC od spoločnosti Verity, Inc.) bola americká softvérová technológia na vyhľadávanie informácií (search engine), ktorú od roku 1988 vyvíjala spoločnosť Verity, Inc. v Kalifornii. Vo svojej dobe išlo o popredné riešenie v oblasti sémantického vyhľadávania a vyhľadávania na základe konceptov. Na prelome tisícročí sa stala de facto priemyselným štandardom pre OEM integráciu do produktov globálnych softvérových lídrov.

História a vývoj Technológia vznikla na konci 80. rokov 20. storočia a medzi jej prvých významných klientov patrilo Veliteľstvo strategického vzdušného velenia (Strategic Air Command) Vzdušných síl USA. V roku 1990 spoločnosť predstavila verziu Topic Real-Time, ktorá dokázala v reálnom čase analyzovať a distribuovať burzové dáta, agentúrne správy a e-maily. V roku1996 prešla platforma s názvom Search '97, ktorý neskôr nahradila architektúra "Verity K2".

Akvizície a neskorší vývoj V decembri 2005 spoločnosť Verity akvizovala britská softvérová korporácia Autonomy Corporation za približne 500 miliónov USD, čím sa technológia Topic stala súčasťou jej produktového portfólia a bola integrovaná s platformou IDOL. V marci 2006 bol proces akvizície formálne zavŕšený na úrovni Americkej komisie pre cenné papiere a burzy (SEC) stiahnutím predchádzajúcej registračnej dokumentácie samostatnej spoločnosti Verity.

V októbri 2011 prešla celá spoločnosť Autonomy pod americký koncern Hewlwtt-Packard (HP) v rámci masívnej akvizície za 11,7 miliardy USD. Celý technologický reťazec, vrátane pôvodného duševného vlastníctva Verity a vyhľadávacieho jadra Topic, napokon v januári 2023 kúpila kanadská korporácia OpenText za 6 miliárd USD, čím sa stala jej súčasným vlastníkom a správcom.

Princíp fungovania a technológia Systém Topic bol navrhnutý tak, aby umožňoval fulltextové vyhľadávanie nezávisle od formátu dokumentov a hardvérovej platformy. Na rozdiel od vtedajších bežných vyhľadávačov postavených výhradne na báze kľúčových slov, Topic pracoval na princípe vyhľadávania myšlienok a sémantických konceptov. Využíval na to vlastný dopytovací jazyk Verity Query Language (VQL), v prostredí niektorých integrácií (napr. Adobe Acrobat) označovaný aj ako BooleanPlus.

Konceptuálne stromy (Topic Trees) Základným stavebným kameňom architektúry boli takzvané konceptuálne stromy (angl. Topic Trees). V týchto hierarchických štruktúrach experti na danú problematiku (znalostní inžinieri) vopred definovali sémantické pojmy, synonymá a logické vzťahy medzi nimi pomocou špeciálnych dopytovacích operátorov.

Každému prvku a uzlu v strome bolo možné priradiť číselnú váhu (relevanciu v rozsahu od 0,0 do 1,0). Systém následne nevyhodnocoval iba izolovaný výskyt slov, ale prítomnosť celého sémantického konceptu. To umožňovalo úspešne vyhľadať relevantné dokumenty aj v prípade, ak neobsahovali presné hľadané kľúčové slovo (napr. systém dokázal identifikovať dokument o „automobiloch“, hoci text obsahoval iba výrazy „vozidlo“, „kupé“ či „sedan“).

Vyhľadávacie operátory a výpočet relevancie Jazyk VQL obsahoval okrem štandardných booleovských operátorov aj pokročilé sémantické a proximitné operátory: AND a OR: Základné logické operátory. Ak bol dokument vyhodnotený operátorom AND, výsledná hodnota relevancie bola určená najnižšou váhou spomedzi nájdených prvkov. Pri operátore OR sa priraďovala hodnota najvyššej nájdenej váhy. ACCRUE (Kumulatívny operátor): Unikátny a najdôležitejší operátor systému Topic. Na rozdiel od AND nevyžadoval prítomnosť všetkých hľadaných výrazov naraz. Na rozdiel od OR však bodovo zvýhodňoval dokumenty, v ktorých sa nachádzalo viacero požadovaných pojmov súčasne. Výsledná relevancia sa vypočítavala matematickým vzorcom, ktorý nelineárne kumuloval váhy jednotlivých nájdených slov, vďaka čomu sa komplexnejšie dokumenty zobrazovali na popredných miestach výsledkov. PHRASE a NEAR: Proximitné operátory. PHRASE vyžadoval presnú zhodu slov v zadanom poradí bezprostredne za sebou. Operátor NEAR hľadaný výraz lokalizoval v tesnej vzájomnej blízkosti (štandardne do vzdialenosti 10 slov),. NEAR/N: Vyhľadá dokumenty, v ktorých sa zadané slová nachádzajú blízko seba. Pričom bližší výskyt generuje vyššie skóre relevancie. Parameter N určuje maximálny počet slov, ktoré ich môžu oddeľovať (predvolená hodnota je 25 slov). Na poradí slov nezáleží. PHRASE: Vyžaduje, aby sa hľadané slová nachádzali v dokumente v presne určenom poradí a bezprostredne za sebou ako ucelená fráza. SENTENCE a PARAGRAPH: Podmieňujú výskyt hľadaných slov v rámci jednej spoločnej vety, respektíve v rámci jedného odseku. YESNO: Úplne potláča výpočet váhy a relevancie. Výsledkom je čistá logická hodnota – dokument podmienku buď spĺňa (1), alebo nespĺňa (0). STEM: Operátor morfologického rozšírenia. Vyhľadá zadané kľúčové slovo spolu so všetkými jeho gramatickými variantmi a tvarmi (napr. pre slovo tanec nájde aj tanečnica, tancovanie či tancovať). SOUNDEX: Operátory fonetickej a významovej podoby vyhľadávajú slová na základe ich fonetickej podobnosti (ako znejú), pričom využíva algoritmus Soundex. Používa sa najmä pri vyhľadávaní mien s nejasným pravopisom (napr. <SOUNDEX>plot nájde plod aj Plóth). THESAURUS: Automaticky rozširuje dopyt o synonymá zadaného slova, ktoré sú definované v systémovom slovníku (tezaure).

Matematická podstata fonetického vyhľadávania Z hľadiska matematiky funguje fonetické vyhľadávanie (napr. algoritmus Soundex) ako funkcia , ktorá pretransformuje ľubovoľné textové slovo na fixný štvorznakový kód:

Ak dve rôzne slová vygenerujú rovnaký kód, matematicky hovoríme, že patria do rovnakej triedy ekvivalencie. V praxi to znamená, že pre slová „plot“ a „plod“ vráti funkcia identický výsledok:

Princíp výpočtu kódu Algoritmus spracuje slovo nasledovným postupom: Prvé písmeno slova sa zachová bez zmeny (napr. P). Ostatné spoluhlásky sa podľa vopred definovaného kľúča nahradia číslicami od 1 do 6 (napr. , ). Duplicity (susediace rovnaké čísla) sa zlúčia do jedného a samohlásky sa úplne ignorujú. Výsledok sa zarovná na dĺžku jedno písmeno + tri číslice (v prípade potreby sa sprava doplní nulami).

Keď používateľ zadá dopyt s fonetickým operátorom, napr. SOUNDEX: plot, vyhľadávač v databáze neporovnáva textové reťazce, ale matematicky vytiahne celú množinu slov (triedu ekvivalencie), ktoré majú pridelený identický fonetický kód (v tomto prípade P430).

Matematický model operátora NEAR/N

Z hľadiska teórie reťazcov a textových polí môžeme dokument reprezentovať ako usporiadanú postupnosť slov (tokenov) , kde index vyjadruje presnú pozíciu slova v texte.

Ak definujeme dopyt pre dve slová a pomocou operátora , podmienka úspešného vyhľadania vyžaduje, aby v dokumente existovali také pozície (indexy) a , pre ktoré platí:

Množina vyhovujúcich indexov spĺňa nerovnicu absolútnej hodnoty rozdielu:

Zavedenie absolútnej hodnoty matematicky zabezpečuje, že na poradí slov v texte nezáleží ( môže byť pred aj za ním). Parameter predstavuje maximálny počet ľubovoľných slov, ktoré sa môžu nachádzať medzi hľadanými výrazmi.

Príklad fungovania Ak systém spracuje vetu: ,,Konceptuálne stromy sú základným stavebným kameňom architektúry.“ Pozícia slova , konceptuálne: Pozícia slova , stavebným: Vzdialenosť: (medzi slovami sú presne 3 iné slová).

Dopyt „konceptuálneNEAR/3 stavebným“ vráti kladný výsledok (zhodu), pretože (). Dopyt s parametrom by už túto vetu ignoroval.

Indexovanie a architektúra kolekcií Aby systém dosahoval vysokú rýchlosť vyhľadávania v podnikovom nasadení, zdrojové dáta (textové súbory, databázy, dokumenty) neprehľadával v reálnom čase, ale transformoval ich do takzvaných kolekcií (angl. Verity Collections). Súčasťou tohto procesu bolo generovanie inverzného indexu, lexikálna analýza textu, odstraňovanie gramatických prípon (angl. stemming) a ignorovanie nerelevantných slov (angl. stop words). Výsledná indexová štruktúra bola optimalizovaná na rýchle spracovanie komplexných hierarchických dopytov z jazyka VQL.

Prínos k rozvoju umelej inteligencie a sémantického vyhľadávania Na prelome 20. a 21. storočia spoločnosť Verity, Inc. výrazne formovala oblasť spracovania prirodzeného jazyka (NLP), strojového učenia a skorých foriem podnikovej umelej inteligencie. Vývojový tím spoločnosti si nechal zaregistrovať sériu kľúčových patentov na Patentovom úrade USA (USPTO), ktoré položili technologické základy pre moderné automatizované spracovanie neštruktúrovaných dát, sémantické mapovanie a inteligentné konverzačné systémy.

Medzi historicky najvýznamnejšie patenty spoločnosti v tejto oblasti patria:

Automatické objavovanie hierarchie konceptov (US 7,085,771 B2): System and method for automatically discovering a hierarchy of concepts from a corpus of documents. Tento patent opisuje pokročilé algoritmy na analýzu rozsiahlych korpusov neštruktúrovaných dokumentov. Bez ľudského zásahu dokáže systém identifikovať skryté vzťahy medzi témami a automaticky zostaviť prehľadné sémantické stromy (taxonómie). Technológia tvorila základ komerčného riešenia Thematic Mapping. Na vývoji sa spolupodieľal významný expert na umelú inteligenciu Jianchang Mao.

Hierarchické skripty pre konverzačné boty (US 6,754,647 B1): Method and apparatus for hierarchically decomposed bot scripts. Patent definoval softvérovú architektúru pre rané konverzačné boty (chatboti). Riešenie umožňovalo vetviť a hierarchicky rozkladať dialógové scenáre, čím stroj získal schopnosť adaptívnejšie a inteligentnejšie reagovať na komplexné dopyty používateľov v reálnom čase. Hlavným autorom bol Walter Alden Tackett.

Adaptívne učenie sa z interakcie používateľa (US 6,738,764 B2): Apparatus and method for adaptively ranking search results. Tento systém ako jeden z prvých komerčne integroval strojové učenie priamo do algoritmov spätnej väzby vyhľadávania. Systém analyzoval správanie používateľov (kliky, čas strávený na dokumente) a dynamicky upravoval váhu a relevanciu budúcich výsledkov vyhľadávania bez nutnosti manuálneho rekonfigurovania.

Konceptuálny a sémantický PageRank (US 6,792,419 B1): System and method for ranking hyperlinked documents based on concepts. Patent podaný uznávaným počítačovým vedcom Prabhakarom Raghavanom priniesol revolúciu v prepojení sieťových hyperodkazov s hlbokými sémantickými modelmi. Na rozdiel od čistého mechanického počítania kľúčových slov systém hodnotil dokumenty na základe sémantického kontextu a prepojených konceptov.

Ukladanie sieťových aplikácií do vyrovnávacej pamäte (US 6,457,047 B1): Application caching system and method. Vynález, ktorého spoluautorom je Prabhakar Raghavan, rieši distribúciu a lokálne ukladanie softvérových modulov a dynamických webových aplikácií v počítačovej sieti. Na rozdiel od vtedajších bežných prehliadačov (Netscape Navigator, Internet Explorer), ktoré dokázali lokálne zachovať iba statické webové stránky, táto architektúra umožnila efektívne vzdialené ukladanie a rýchle spúšťanie komplexných, dynamicky generovaných aplikácií prostredníctvom siete lokálnych serverov.

Automatické pomenovávanie zhlukov slov a fráz (US 7,031,909 B2): Method and system for naming a cluster of words and phrases. Tento patent popisuje sémantickú technológiu určenú na pokročilé indexovanie textov a strojovú kategorizáciu obsahu. Algoritmus dokáže analyzovať štatistické vzťahy a hierarchické väzby v automaticky vygenerovaných zhlukoch (clusteroch) dokumentov a následne im priradiť výstižný, ľudsky zrozumiteľný nadradený názov (štítok) bez nutnosti manuálneho zásahu administrátora.

Tieto zložky duševného vlastníctva definovali prechod od jednoduchého indexovania kľúčových slov k chápaniu sémantického významu textu pomocou systémov umelej inteligencie (Al). Celé portfólio patentov prešlo v roku 2005 pod správu spoločnosti Autonomy Corporation v rámci akvizície v hodnote približne 500 miliónov dolárov a neskôr sa po ďalšej akvizícii stalo súčasťou technologického ekosystému spoločnosti Hewlett-Packard.