Premium

Získejte všechny články
jen za 89 Kč/měsíc

Clustering dat pomáhá nalézt jehlu v kupce sena

Na počítače jsme si zvykli pohlížet jako na exaktní stroje zpracovávající exaktní data. Počítače po desetiletí provádějí numerické výpočty, zpracovávají databáze nebo luští šifry. Co když bychom však počítače požádali, aby srovnával podobnost mezi různými soubory s nestrukturovanými daty nebo dokonce odvodil jejich vzájemnou hierarchii?
Na počítače jsme si zvykli pohlížet jako na exaktní stroje zpracovávající exaktní data. Počítače po desetiletí provádějí numerické výpočty, zpracovávají databáze nebo luští šifry. Co když bychom však počítače požádali, aby srovnával podobnost mezi různými soubory s nestrukturovanými daty nebo dokonce odvodil jejich vzájemnou hierarchii?

Pracovníci tiskového oddělení sledují v monitoringu tisku všechny zmínky o své společnosti. Rádi by zprávy automaticky třídili dle témat, avšak témata článků se však průběžně mění. Dokázal by počítač setřídit témata, aniž by uživatelé tušili, jaká různá témata se objeví zítra? Produktoví manažeři chtějí důkladně zmapovat trh, výrobky se však liší v mnoha kritériích. Uměl by počítač najít skupiny výrobků a jejich vzájemné vztahy? Složka s doručenými e-maily obsahuje tisíce neroztříděných zpráv. Šlo by je automaticky roztřídit? Plagiáty slohových prací nejsou totožné do posledního bitu, dokázal by je však počítač odhalit?

Hodil by se nám algoritmus, který by posoudil podobnost dvou různých entit a přiřadil jí nějaké skóre. Výsledky srovnávání bychom uložili do matice a z nich bychom usuzovali na vzájemnou příbuznost. První fáze clusteringu skutečně probíhá podobným způsobem. Vezmeme některou z entit, postupně porovnáváme její podobnost se všemi ostatními a do společného clusteru k vybrané entitě zařazujeme všechny ostatní, jejichž míra podobnosti přesahuje určitý práh. Na konci tohoto kroku nám zbyde první cluster a ostatní entity, které se do něj nevešly. v dalším kroku tedy budeme hledat druhý cluster mezi nimi. Později se dostaneme do fáze, kdy další clustery již nemůžeme vytvářet a kromě již hotových clusterů nám zbyde jen nesourodá směs některých nezařazených entit. Některé algoritmy jdou ještě dále a dynamicky mění práh podobnosti globálně i pro jednotlivé clustery, aby dosáhly vyrovnané velikosti různých clusterů.

Shluky dat

Pokud jsme chtěli třídit články v monitoringu tisku, clustery udělaly většinu práce za nás. Clustering článků na internetu nabízí hned několik serverů zcela zdarma. Všeobecné zpravodajtví v češtině z různých zdrojů třídí automaticky server Novyden.cz, technologické zpravodajství server Prehled.net. Na světovém webu fungují podobným způsobem Google News, Topix.net či MSN Newsbot. Zvláště server Topix.net ovšem využívá hybridní přístup, zprávy třídí do velkého množství předem definovaných kategorií, clustering pak probíhá uvnitř kategorií a z každého clusteru je zobrazena pouze jediná zpráva. Při fulltextovém hledání ve zprávách však Topix.net ukazuje všechny zprávy v každém clusteru a žádné neschovává.

Clusterování výsledků dotazů kladených ad hoc je náročné na výpočetní výkon i na paměť serveru. Vypočtené hodnoty míry podobnosti dvojic je však možné ukládat do vyrovnávací paměti.

Pokud se budeme pídit po hierarchii mezi jednotlivými entitami, můžeme je malé clustery spolu sluřovat podle vzájemné podobnosti nwbo velké clustery dělit na menší. Nakonec nám vznikne stromová struktura, která hierarchii vystihne. Můžeme tak získat diagramy vyjadřující podobnost automobilů, podobnost složení mateřského mléka u různých savců nebo příbuznost různých druhů skotské whisky.

Co je pod kapotou

Zajímavý je matematický postup, pomocí kterého změříme podobnost dvou různých textů. Je možné hledat nejdelší posloupnost znaků, která se objevuje v obou textech současně, a jako skóre použít její délku. V praxi se však nejčastěji používá kosínová podobnost (cosine similarity), při jejímž výpočtu si oba texty představýme jako mnhorozměrné vektory. Každá složka obou vektorů odpovídá počtu výskytů jiného klíčového slova, vektory dvou podobných textů tedy jakoby ukazují podobným směrem. Provedeme-li skalární součin vektorů a vydělíme-li jej součinem jejich absolutních hodnot, získáme hodnotu kosínu úhlu sevřeného oběma vektory. Ta je rovná jedné, pokud jsou oba texty totožné, s nižší podobností vektorů klesá i velikost kosínu sevřeného úhlu. Kosínová podobnost je spolehlivou a osvědčenou metodou, její různé modifikace dávají ještě lepší výsledky.

Radikálně jiný postup navrhla trojice italských vědců ve své práci Language Trees and Zipping. Vycházeli z funkce algoritmů pro kompresi dat, jaké využívá například populární formát Zip. Kompresní algoritmy například z rodiny Lempel-Ziv se zpravidla na vstupních datech postupně "učí" a hledají opakující se sekvence bajtů ve vyrovnávací paměti. Pokud tedy dva texty zkopírujeme do jediného textového souboru a ten zkomprimujeme, délka komprimovaného souboru by měla být tím nižší, čím jsou si oba texty podobné. Pokud porovnáme velikost komprimovaného souboru obsahující jeden textový soubor s oběma texty se součtem velikostí dvou souborů obsahujících vždy jediný text, můžeme spočítat skóre vyjadřující podobnost dvou textů. (Pozorovaný efekt je mimochodem využíván kompresními programy řady RAR při vytváření takzvaných solid archives). Autoři porovnávali vzájemnou podobnost evropských jazyků, výsledky velmi dobře odpovídaly vzájemné příbuznosti jazyků a

Jinou implementací tohoto algoritmu je volně šiřitelný program FindFraud pro nalezení plagiátů mezi texty či zdrojovými kódy programů odevzdávanými studenty. Podobně je možné srovnávat i jiná data, jako třeba sekvence DNA.

Díky zvyšujícímu se výkonu a kapacitě počítačů i rostoucímu povědomí odborné veřejnosti o clusterování dokumentů se s touto metodou budeme setkávat stále častěji. Clusterování se již spíše než konkurenní výhodou stává holou nutností. To by si měli uvědomit IT manažeři při poptávání software nebo služeb pro zpracovávání databází i vývojáři při návrhu tohoto software. Samotné fulltextové vyhledávání nemusí uživatelům stačit.

Více informací najdete na www.telnet.cz.

  • Nejčtenější

Zázrak! NASA po pěti měsících obdržela od sondy Voyager smysluplnou zprávu

v diskusi je 179 příspěvků

23. dubna 2024  13:37

Když se v únoru letošního roku stále nedařilo navázat smysluplnou komunikaci s jedním z...

Herečce Slávce Budínové by bylo 100 let. Zemřela opuštěná, bez zájmu veřejnosti

v diskusi je 30 příspěvků

21. dubna 2024

Před 100 lety, 21. dubna 1924, se v Ostravě narodila známá česká herečka Slávka Budínová.

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Proč umělá inteligence lže a proč kvůli ní zhloupneme. Počítačový expert vypráví

v diskusi je 17 příspěvků

22. dubna 2024

Premium Zatímco průmyslová revoluce zaváděla masivní využití strojů, které nahradily lidské svaly, nyní...

Byla to druhá nejjasnější hvězda. V budoucnu může svítit jako druhý Měsíc

v diskusi je 17 příspěvků

21. dubna 2024

Velmi neobvyklá hvězda éta Carinae v devatenáctém století náhle zjasnila a stala se druhou...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Dnes už se bez nich válčit nedá. Raketový vzestup bojových dronů

v diskusi je 47 příspěvků

24. dubna 2024

Bezpilotní letadla (drony) jsou v posledních dvou dekádách na raketovém vzestupu. Přispěla k tomu...

Čekání na české lidové auto nemělo konce. Před 100 lety jezdili jen boháči

v diskusi je 20 příspěvků

28. dubna 2024

Před 100 lety Čechoslováci marně čekali na tuzemské lidové auto. Drtivá většina obyvatel si totiž...

KVÍZ generála Pattona. Vypořádejte se s ocelovou lavinou

v diskusi je 1 příspěvek

28. dubna 2024

Jak jste dobří v tancích, poznáte je nejen na plese, ale i v následujícím kvízu. Kvíz je zaměřen na...

Pomník Jana Žižky na Vítkově vznikal skoro 30 let

v diskusi je 11 příspěvků

27. dubna 2024

27. dubna 1924 zahájil Spolek pro zbudování pomníku Jana Žižky na Žižkově veřejnou sbírku na jeho...

Přistávat s vrtulníkem je jako balancovat na míči a zůstat při tom něžný

v diskusi jsou 4 příspěvky

27. dubna 2024

Mysli na to, že při záchraně druhých nesmíš sebe ani nikoho jiného ohrozit. Tak zněla jedna z...

Samoživitelka skončila v nemocnici a čtvrt roku nemohla pracovat
Samoživitelka skončila v nemocnici a čtvrt roku nemohla pracovat

Téměř deset miliard korun – tolik jen za loňský rok poslaly pojišťovny lidem za úrazy, závažná onemocnění či úmrtí. Životní pojištění pomohlo za...

Bývalý fitness trenér Kavalír zrušil asistovanou sebevraždu, manželka je těhotná

Bývalý fitness trenér Jan Kavalír (33) trpí osmým rokem amyotrofickou laterální sklerózou. 19. dubna tohoto roku měl ve...

Tenistka Markéta Vondroušová se po necelých dvou letech manželství rozvádí

Sedmá hráčka světa a aktuální vítězka nejprestižnějšího turnaje světa Wimbledonu, tenistka Markéta Vondroušová (24), se...

Horňáci versus dolňáci. Víme, čemu muži dávají přednost, a je to překvapení

Ženské tělo je pro muže celkově velmi atraktivní a nabízí jejich očím mnoho zajímavých partií. Největší pozornosti se...

Hello Kitty slaví padesátiny. Celý svět si myslí, že je to kočička, jenže není

Kulatý obličej se dvěma trojúhelníkovýma ušima, drobný čumáček, vousky a červená mašle na uchu. Taková je Hello Kitty,...

Za vytlačení z linky do Brna musí Student Agency zaplatit náhradu 21 milionů

Společnost Student Agency provozující autobusy a vlaky pod označením RegioJet musí zaplatit bývalému konkurentovi 21...