Přehled technického zpravodajství – můj hyperportál ;)

Patrick Zandl · 10. březen 2004

Nedávno jsem si tu stěžoval, že je škoda, že všechny agregátory obsahu řeší načítání RSS jako prosté rozchlívečkování (samozřejmě s čestnou blogportálovou výjimkou, kterou málokdo odhalí). A tak jsem si to vzal trochu jako výzvu, abych něco zkusil spíchnout v Genesis já. Otázka, proč v Genesis - v ničem jiném neumím a Genesis je docela mohutný framework. Bohužel někde už mi v mojí licenci nedává tolik prostoru, kolik by bylo třeba, takže je pravda, že v PHP by to bylo mnohem lepší. Až za to, že v PHP neumím :)

Abych se k tomu vrátil. Základní zadání je jasné - postahovat všechna RSS technických českých zpravodajství, články rozstrkat do kategorií podle tématu a pak je seřadit podle důležitosti a vypsat na webu.

Vypadá to jednoduše, ale taková prča to zase není. Protože RSS nepředává kategorie, je potřeba pro rozřazení do kategorií vymyslet jiný mechanismus a stejně tak vymyslet mechanismus pro váhová kritéria. Nakonec jsem zapátral, jak to dělá news.google.com a jak se sestavují titulky a použil jsem podobné (zjednodušené) schéma. Analýza se provádí podle titulku - novináři už mají vpodstatě algoritmizovaný postup, jak sestavit titulek a já ho jen reverzně aplikuji. Každý titulek tedy obsahuje "entitu", o niž jde (zpravidla firmu či osobu - Microsoft, Mlynář atd), pak nějakou "akci" konkrétní entity (zlevňuje, představuje, nadává atd) a případně ještě "reaktanta" - tedy někoho, kdo na to reaguje nebo koho se událost také týká. Je jasné, že je důležitější titulek Microsoft žaluje firmu Nokia, než titulek Vonásek žaluje Tlučhubu. A málokdo z toho udělá titulek Velká software firma šupajdí k soudu s další velkou kumpanií, co flikuje utržený sluchadla. Obodujete, sečtete body a je vyřešeno. Samozřejmě drobná vada, potřebujete vytipovat ta slova do těch tří skupin, použil jsem Concordanci, program pro analýzu starověkých textů a bylo to ve chvilce :) A další drobná vada - ty váhová kritéria potřebujete vymyslet dost přesně, jinak ten automaticky generovaný výsledek nedává smysl. A do třetice - váhová kritéria jsou nastavená podle toho, co si myslím, že lidi zajímá :)

Jak všechno zatím vypadá, můžete vidět na adrese internet.marigold.cz - je to taková veřejná alfaverze. Posupem doby na tom budu pracovat a přidávat zdroje, nicméně když se najde někdo, kdo by to chtěl přepsat do PHP, kde by to samozřejmě mělo hodně dalších možností, klidně se mi ozvěte :) Jako další část algoritmu bych totiž rád přidal kolaborativní filtrování a to už je na Genesis přeci jen silná káva.

Všechny připomínky uvítám zde v komentářích...

Chcete tyto články emailem?

Twitter, Facebook