Uczę się o rozkładaniu macierzy na systemy rekomendujące i widzę, że termin latent features
występuje zbyt często, ale nie jestem w stanie zrozumieć, co to znaczy. Wiem, co to jest funkcja, ale nie rozumiem pojęcia ukrytych funkcji. Czy możesz to wyjaśnić? A przynajmniej wskaż mi artykuł / miejsce, w którym mogę o nim poczytać?
machine-learning
data-mining
recommender-system
Jack Twain
źródło
źródło
Odpowiedzi:
Kosztem nadmiernego uproszczenia ukryte funkcje są funkcjami „ukrytymi”, aby odróżnić je od obserwowanych. Ukryte cechy są obliczane na podstawie obserwowanych cech przy użyciu faktoryzacji macierzy. Przykładem może być analiza dokumentu tekstowego. „słowa” wydobyte z dokumentów są cechami. Po uwzględnieniu danych słów można znaleźć „tematy”, gdzie „temat” to grupa słów o znaczeniu semantycznym. Faktoryzacja macierzy niskiej rangi odwzorowuje kilka wierszy (obserwowane cechy) na mniejszy zestaw wierszy (cechy ukryte). Aby rozwinąć, w dokumencie można było zaobserwować takie cechy (słowa), jak [żaglówka, szkuner, jacht, parowiec, krążownik], które „rozkładałyby” na ukryte cechy (temat), takie jak „statek” i „łódź”.
[żaglówka, szkuner, jacht, parowiec, krążownik, ...] -> [statek, łódź]
Podstawową ideą jest to, że ukryte cechy są semantycznie istotnymi „agregatami” obserwowanych cech. Gdy masz duże, wysoko wymiarowe i głośne obserwowane funkcje, sensowne jest zbudowanie klasyfikatora na ukrytych cechach.
Jest to oczywiście uproszczony opis wyjaśniający tę koncepcję. Możesz przeczytać szczegółowe informacje na temat modeli Latent Dirichlet Allocation (LDA) lub probabilistycznych Latent Semantic Analysis (pLSA), aby uzyskać dokładny opis.
źródło
(MxN)
M
N
Następnie twoja macierz może zostać „podzielona na czynniki pierwsze” poprzez wprowadzenie
K
„ukrytych czynników”, tak że zamiast jednej macierzy masz dwie: - dla(MxK)
użytkowników, i(KxN)
- dla przedmiotów, których mnożenie macierzy daje pierwotną macierz.Wreszcie, na twoje pytanie: jakie są ukryte cechy w rozkładzie macierzy? Są to nieznane cechy (
K
) w gustach użytkowników i polecanych elementach, dlatego gdy te dwie macierze się pomnożą, wytwarzają macierz znanych rekomendacji. Poszczególne wagi (preferencji użytkownika w stosunku do konkretnej cechy i ilości cechy w danym elemencie) są określane za pomocą tak zwanego alternatywnego algorytmu najmniejszych kwadratów, o którym więcej można przeczytać tutajźródło
Wydaje mi się, że ukryte cechy to termin używany do opisania kryteriów klasyfikacji bytów według ich struktury, innymi słowy według cech (cech), które zawierają, zamiast klas, do których należą. Znaczenie słowa „utajony” tutaj jest najprawdopodobniej podobne do jego znaczenia w naukach społecznych, gdzie bardzo popularny termin „utajona zmienna” ( http://en.wikipedia.org/wiki/Latent_variable ) oznacza zmienną nieobserwowalną (pojęcie).
Sekcja „Wstęp” w następującym papieru zapewnia dobre wyjaśnienie cechy ukryte znaczenia i wykorzystania w modelowaniu Nauk zjawisk społecznych: http://papers.nips.cc/paper/3846-nonparametric-latent-feature-models-for- link-prediction.pdf .
źródło
Kolejny przykład, rozważ przypadek użytkowników do oceny macierzy filmów, takich jak konfiguracja Netflix. Będzie to ogromna rzadka matryca, trudna do przetworzenia.
Pamiętaj, że każdy użytkownik będzie miał określone preferencje, takie jak filmy science-fiction lub romantyczne itp. Zamiast przechowywać wszystkie oceny filmów, moglibyśmy zapisać jedną ukrytą funkcję, taką jak kategoria filmowa należąca do innego gatunku, na przykład: sci-fi lub romans, w zależności od tego, który określa jego gust dla każdej kategorii. Są to tak zwane ukryte funkcje , które oddają istotę jego gustu, zamiast przechowywać całą listę filmów.
Oczywiście będzie to przybliżone, ale z drugiej strony masz bardzo mało do przechowywania.
źródło