Chcę nauczyć się (wydedukować) wagi atrybutów dla mojej miary niepodobieństwa, której mogę używać do grupowania.
Mam kilka przykładów par obiektów, które są „podobne” (powinny znajdować się w tej samej grupie), a także kilka przykładów par obiektów, które są „nie podobne” (nie powinny być w tej samej grupie). Każdy obiekt posiada szereg cech: jeśli chcesz, możemy myśleć o każdym obiekcie jako -wymiarowej wektora cech, gdzie każda funkcja jest nieujemną liczbą całkowitą. Czy istnieją techniki wykorzystania takich przykładów podobnych / niepodobnych obiektów do oszacowania na ich podstawie optymalnych wag cech dla miary odmienności?
Jeśli to pomoże, w mojej aplikacji prawdopodobnie rozsądne byłoby skoncentrowanie się na nauce miary odmienności, którą jest ważona norma L2:
gdzie wagi nie są znane i należy się ich nauczyć. (Lub może być uzasadniony jakiś rodzaj ważonej miary podobieństwa kosinusowego.) Czy istnieją dobre algorytmy do nauki wag dla takiej miary, biorąc pod uwagę przykłady? A może istnieją inne metody uczenia się miary podobieństwa / miary podobieństwa, które powinienem rozważyć?
Liczba wymiarów jest niestety bardzo duża (tysiące lub więcej; pochodzi ona z funkcji worka słów). Mam jednak kilkadziesiąt tysięcy przykładów. Następnie mam setki tysięcy obiektów, które chcę połączyć, dlatego ważne jest uogólnienie na podstawie przykładów, aby poznać dobrą metrykę podobieństwa.
Rozumiem, że wpada to w rubrykę częściowo nadzorowanego grupowania i wygląda na to, że może mieć charakter „dostosowujący podobieństwo”, ale nie byłem w stanie znaleźć jasnych opisów algorytmów, które mogłyby być użyte do tego celu.
Odpowiedzi:
Jest to duży problem w niektórych obszarach uczenia maszynowego. Nie jestem tak obeznany z tym, jak bym chciał, ale myślę, że powinny zacząć od początku.
Wydaje się, że redukcja wymiarów poprzez naukę mapowania niezmiennego (DrLIM) działa bardzo dobrze na niektórych zestawach danych.
Analiza komponentów sąsiedztwa jest bardzo ładnym algorytmem liniowym, a także opracowano wersje nieliniowe.
Istnieje cała literatura zajmująca się tym zagadnieniem z perspektywy „uczenia się jądra”. Niewiele o tym wiem, ale ten artykuł jest bardzo cytowany.
Biorąc pod uwagę, że twoje dane są tak wielowymiarowe (i prawdopodobnie rzadkie?), Możesz nie potrzebować niczego zbyt nieliniowego. Może analiza komponentów sąsiedztwa jest najlepszym miejscem do rozpoczęcia? Jest to najbliższe idei ważonejL.2) norma, jak zasugerowałeś w swoim pytaniu.
źródło
Stawianiezaja waga funkcji w podobieństwie jest równoważna, więc skalowanie zestawu danych o1 /wja .
Innymi słowy, pytasz o wstępne przetwarzanie danych i skalowanie. Jest to zbyt szeroki zakres, aby można było na nie odpowiedzieć w jednym pytaniu. Szukać:
Istnieje ogromna ilość literatury, a nawet ścieżki konferencyjne poświęcone temu zagadnieniu. Niektóre metody na początek:
źródło