Ćwiczenie ręczne pomiaru podobieństwa

W poniższym ćwiczeniu opisujemy proces ręcznego tworzenia pomiaru podobieństwa.

Załóżmy, że w domach masz prosty zbiór danych:

FunkcjaTyp
PriceDodatnia liczba całkowita
Rozmiar Dodatnia wartość zmiennoprzecinkowa w metrach kwadratowych
Kod pocztowy.Liczba całkowita
Liczba sypialniLiczba całkowita
Typ domuWartość tekstowa z adresów „rodzina”, „apartament”, „apartament”, „apartament”
garaż0/1 dla nie/tak
KoloryWielowymiarowa kategoria: co najmniej jedna wartość ze standardowych kolorów „biały”, „żółty”, „zielony” itd.

Wstępne przetwarzanie

Pierwszy etap to wstępne przetwarzanie wartości liczbowych: cena, rozmiar, liczba sypialni i kod pocztowy. Każda z tych funkcji będzie musiała wykonać inną operację. Załóżmy na przykład, że dane o cenach mają rozkład dwukierunkowy. Co dalej?

Co zrobić, jeśli Twoje dane mają rozkład dwukierunkowy?
Utwórz kwantyle z danych i przeskaluj je do [0,1].
To prawidłowy krok w przypadku rozkładu danych dwukierunkowego.
Zapisz przekształcenie i przeskaluj do [0,1].
Jest to krok, który musisz wykonać, gdy dane są rozpowszechniane zgodnie z rozwagą.
normalizować i skalować do [0,1];
Jest to krok, który podejmiesz, gdy dane będą rozkładane zgodnie z rozkładem Gaussa.

W polu poniżej spróbuj wyjaśnić, jak przetwarza się dane o rozmiarach.

W polu poniżej wyjaśnij, jak przetwarzasz dane o liczbie sypialni.

Jak podać kod pocztowy? Konwertuj kody pocztowe na długość i szerokość geograficzną. Następnie przetwarzaj te wartości tak samo jak w przypadku innych wartości liczbowych.

Obliczam podobieństwo cech

Czas obliczyć podobieństwo według cech. Aby znaleźć funkcje liczbowe, wystarczy znaleźć różnicę. W przypadku funkcji binarnych, np. gdy dom ma garaż, możesz też znaleźć różnicę między 0 a 1. Ale co z funkcjami kategorii? Odpowiedz na poniższe pytania, aby się dowiedzieć.

Która z tych funkcji jest wielowartościowa (może mieć wiele wartości)?
Kolor
Dany dom może mieć więcej niż 1 kolor, np. niebieski z białym wykończeniem. Kolor to funkcja wielofunkcyjna.
Kod pocztowy.
Każdy dom może mieć tylko 1 kod pocztowy. Ta funkcja jest jednolita.
Typ
Dom może mieć tylko jeden typ, dom, apartament, mieszkanie itp., co oznacza, że jest to funkcja jednoczesna.
Którego rodzaju podobieństwa należy użyć, aby obliczyć podobieństwo wielu elementów?
Podobieństwo Jaccarda
Załóżmy, że domy mają przypisane kolory ze stałego zestawu kolorów. Następnie oblicz współczynnik podobieństwa, korzystając ze współczynnika wspólnych wartości (Jaccard podobieństwo).
Odległość euklidesowa
W przypadku cech „kod pocztowy” i „typ”, które mają tylko 1 wartość (funkcje uniwersalne), wskaźnik podobieństwa wynosi 0. W przeciwnym razie współczynnik podobieństwa to 1.

Obliczanie ogólnego podobieństwa

Podobieństwo wszystkich elementów zostało obliczone numerycznie. Algorytm grupowania wymaga jednak ogólnego podobieństwa do klastrów. Oblicz ogólną podobieństwo pomiędzy 2 domami, łącząc podobieństwo poszczególnych cech za pomocą błędu średniej kwadratowej (RMSE). Oznacza to, że\(s_1,s_2,\ldots,s_N\) podobieństwa do \(N\) funkcji:

\[\text{RMSE} = \sqrt{\frac{s_1^2+s_2^2+\ldots+s_N^2}{N}}\]

Ograniczenia ręcznego pomiaru podobieństw

Jak pokazuje to ćwiczenie, gdy dane są złożone, coraz trudniej jest je przetwarzać i łączyć ze sobą, aby dokładnie mierzyć podobieństwo w semantyczny sposób. Weź pod uwagę dane o kolorze. Czy kolor powinien być przypisany do jakiejś kategorii? A może przypiszesz kolory takie jak czerwony i marynujący, aby mieć większe podobieństwo niż czarno-białe? A jeśli chodzi o łączenie danych, wzięliśmy pod uwagę jedynie wartość domu. Jednak cena domu jest znacznie ważniejsza niż posiadanie garażu. Czy warto ważyć je tak samo?

Jeśli utworzysz wskaźnik podobieństwa, który nie odzwierciedla podobieństwa między przykładami, utworzone klastry nie będą miały sensu. Często jest to częsty problem z danymi kategorycznymi i daje nam wgląd w sposób nadzorowany.