funkcionálně.cz

Přední český blog o funkcionálním programování, kde se o funkcionálním programování nepíše
komentáře článku 

Jaccardovo tajemství - jak počítat podobnost množin pomalu, jak ji počítat rychle a jak při výpočtu podvádět



Text komentáře


Aleš Hájek (2016-01-02 08:32)
A nebylo by jednodušší vytvořit dvojice (množina, hodnota) ty setřídit podle hodnoty a pak jedním průchodem vypsat výsledek, než tato hrůza? Navíc tuto jednoduchou databázovou operaci zvládne každá databáze pro miliony prvků do jedné sekundy.


k47 (2016-01-03 19:40)
Nevím jak přesně se tohle týká Jaccardovy podobnosti, tak se přikloním k tomu, že by to nebylo jednodušší. Co přesně má být ta hodnota? Jestli jde o prvky obou množin, které jsou označkované do jaké množiny patří, pak by to fungovalo, ale je to zbytečná práce a alokace navíc. *Ta hrůza* ve své podstatě dělá jednu iteraci merge sortu, která ze dvou seřazených polí vyrobí další pole až na to, že výsledek není nikdy materializovaný, ale okamžitě je zredukován na velikost průniku.

*Ta hrůza* umí spočítat Jaccarda/průnik dvou množin, z nichž každá má milion prvků, za 8.4 *milisekundy*.


Aleš Hájek (2016-01-03 23:23)
Dobře, ale moc funkcionální řešení to není.


@kaja47, kaja47@k47.cz, deadbeef.k47.cz, starší články