/ / najúčinnejšia dištančná funkcia pre kolaboratívne filtrovanie v weka Java API - java, strojové učenie, vzdialenosť, weka, kolaboratívne filtrovanie

najúčinnejšia vzdialenosť pre spoluprácu v weka Java API - java, machine-learning, vzdialenosť, weka, spolupráca-filtrovanie

takže budem tento systém spolupráce filtrovať pomocou knižnice JAVA API pre učenie strojov Weka.

V podstate používam filter StringToWordVector na konverziu objektov s reťazcami do ich rozkladu.

takže teraz som "m pomocou kNN algoritmus nájsť najbližšie susedov cieľového objektu.

Moja otázka znie, aká by mala funkcia vzdialenostipoužiť na výpočet vzdialenosti medzi dvoma objektmi, ktoré boli filtrované pomocou StringToWordVector filtra ... ktorý z nich by bol pre tento scenár najúčinnejší?

Dostupné možnosti vo Weke sú:

AbstractStringDistanceFunction, ChebyshevDistance, EditDistance, EuclideanDistance, ManhattanDistance, NormalizableDistance

odpovede:

0 pre odpoveď č. 1

Áno metriky podobnosti sú dobré časy. Stručnou odpoveďou je, že by ste si ich mali vyskúšať a optimalizovať s ohľadom na RMSE, MAE, šírku nastavenej návratnosti atď.

Zdá sa, že existuje rozdiel medzi vzdialenosťou Edit a zvyškom týchto metrík, pretože by som očakával, že algoritmus EditDistance bude pracovať na samotných reťazcoch.

Ako funguje váš StringToWordVector? Najprv odpovedzte na túto otázku a potom použite túto odpoveď na myšlienky paliva: čo chcem podobnosť medzi dvoma slovami znamenať v mojej aplikácii (napríklad význam sémantického významu prevažuje nad slovnou dĺžkou).

A tak dlho, ako budete používať StringVectorizer,Zdalo by sa, že by ste mali „zvážiť viac metriky podobnosti hlavného prúdu, ako je LogLikelihood, Pearson a Cosine (resp.). Myslím si, že to stojí za to, pretože žiadna z metrík podobnosti, ktoré ste uviedli, nie je v literatúre široko používaná alebo študovaná v literatúre. moje vedomosti.

Môže byť podobnosť s vami!