Ręczne pomiary podobieństwa

Aby obliczyć podobieństwo tych 2 przykładów, musisz połączyć wszystkie ich cechy w jedną wartość liczbową.

Rozważ na przykład zbiór danych z butami z tylko jedną cechą: rozmiar buta. Aby ocenić, jak bardzo podobne są 2 buty, możesz obliczyć różnicę między nimi. Im mniejsza różnica liczbowa między rozmiarami buta, tym większe podobieństwo między butami. Tak ręcznie utworzony pomiar podobieństwa nazywany jest ręcznym pomiarem podobieństwa.

A jeśli chcesz znaleźć podobieństwo między butami, używając zarówno rozmiaru, jak i koloru? Kolor to dane kategorialne, które jest cięższe w połączeniu z danymi liczbowymi. Jak rozumiemy, dane stają się coraz bardziej złożone, dlatego ręczne tworzenie pomiarów podobieństwa staje się coraz trudniejsze. Gdy dane staną się wystarczająco złożone, nie będzie można utworzyć pomiarów ręcznych. Oznacza to, że przechodzisz na nadzorowany pomiar podobieństwa, w ramach którego model nadzorowany oblicza jego podobieństwo.

Zostawimy nadzorowany wskaźnik podobieństwa na później i przejdziemy do pomiarów ręcznych. Pamiętaj, że w razie problemów z ręcznym tworzeniem pomiaru podobieństwa musisz korzystać z nadzorowanego pomiaru podobieństw.

Aby zrozumieć, jak działa ręczny pomiar podobieństwa, przyjrzyjmy się przykładowi butów. Załóżmy, że model ma 2 cechy: rozmiar buta i dane o cenie buta. Obie funkcje mają postać liczbową, więc możesz połączyć je w jedną liczbę, która będzie wyglądać podobnie do tej:

  • Rozmiar (s): rozmiar obuwia prawdopodobnie tworzy rozkład Gaussa. Potwierdź to. Następnie normalizuj dane.
  • Cena (p): dane są prawdopodobnie rozkładem Poissona. Potwierdź to. Jeśli masz wystarczającą ilość danych, przekonwertuj je na kwantyle i skaluj do \([0,1]\).
  • Połącz dane za pomocą błądu kwadratowego (RMSE). Oto podobieństwo: \(\sqrt{\frac{s^2+p^2}{2}}\).

Oto uproszczony przykład: obliczamy podobieństwo dla 2 butów z Stany Zjednoczone w rozmiarach 8 i 11 oraz cen 120 i 150. Nie mamy wystarczającej ilości danych, aby zrozumieć rozkład, dlatego po prostu skalujemy dane bez normalizacji ani używania kwantyli.

DziałanieMetoda
Skaluj rozmiar. Zakładamy, że maksymalny rozmiar buta to 20. Podziel wartości 8 i 11 przez maksymalny rozmiar 20, aby otrzymać 0,4 i 0,55.
Skaluj cenę. Podziel wartości 120 i 150 przez maksymalną cenę 150, aby otrzymać 0,8 i 1.
Znajdź różnicę w rozmiarze. \(0.55 - 0.4 = 0.15\)
Znajdź różnicę w cenie. \(1 - 0.8 = 0.2\)
Znajdź błąd RMSE. \(\sqrt{\frac{0.2^2+0.15^2}{2}} = 0.17\)

Intuicyjnie mierzone podobieństwo powinno wzrosnąć, gdy dane cech staną się podobne. W rzeczywistości Twoje wymierne podobieństwo spadnie. Aby zmierzyć swoje podobieństwo pomiarów, odejmij je od 1.

\[\text{Similarity} = 1 - 0.17 = 0.83\]

Ogólnie możesz przygotować dane liczbowe zgodnie z opisem w sekcji Przygotowywanie danych, a potem połączyć dane, korzystając z odległości Euclideana.

Co w sytuacji, gdy masz dane kategorialne? Dane kategorialne mogą być:

  • Jedna wartość (jednorazowa), np. kolor samochodu (biały lub niebieski), ale nigdy nie oba.
  • Treści wielowartościowe (wielowartościowe), takie jak gatunek filmu (może to być np. „akcja” i „komedia” lub tylko „akcja”)

Jeśli dane są jednolite, dopasowanie wynosi 1, a w przeciwnym razie wynosi 0. Radzenie sobie z wieloma danymi jest trudniejsze. Gatunki filmów mogą być na przykład wyzwaniem. Aby rozwiązać ten problem, załóżmy, że do filmów są przypisywane gatunki z ustalonego zestawu gatunków. Obliczaj podobieństwo na podstawie współczynnika wspólnych wartości zwanych Podobieństwo do Jacka.

Przykłady:

  • [„komedia”, „action”] i [„comedy”,”action”] = 1
  • [„komedia”, „action”] i [„action”] = 1⁄2
  • [„komedia”, „action”] i [„action”, „drama”] = 1⁄3
  • [„komedia”, „akcja”] i [„fikcja” lub biograficzna]] = 0

W tabeli poniżej znajdziesz więcej przykładów radzenia sobie z danymi o kategoriach.

Przykłady
Kod pocztowy. Kody pocztowe reprezentujące obszary, które są blisko siebie, powinny mieć większe podobieństwo. Aby zakodować informacje wymagane do prawidłowego obliczenia tego podobieństwa, możesz przekształcić kody pocztowe na szerokość i długość geograficzną. W przypadku pary kodów pocztowych osobno oblicz różnicę między szerokością a długością geograficzną. Następnie dodaj różnice, aby uzyskać pojedynczą wartość liczbową.
Kolor Załóżmy, że dane o kolorach mają postać tekstu. Konwertuj wartości tekstowe na liczbowe wartości RGB. Teraz możesz znaleźć różnicę w kolorach czerwonym, zielonym i niebieskim dla 2 kolorów, a także połączyć te wartości w wartości liczbowe, korzystając z odległości Euclideana.

Pomiar podobieństwa musi odpowiadać rzeczywistemu podobieństwu. Jeśli tak nie jest, nie jest to kodowanie niezbędnych informacji. W poprzednim przykładzie kody pocztowe zostały zamienione na szerokość i długość geograficzną, ponieważ same w sobie nie kodowały potrzebnych informacji.

Zanim utworzysz wskaźnik podobieństwa, przetwórz dane uważnie. Choć przykłady na tej stronie opierają się na małym, prostym zbiorze danych, rzeczywisty zbiór danych jest znacznie większy i bardziej skomplikowany. Pamiętaj, że kwantyle to dobry domyślny wybór podczas przetwarzania danych liczbowych.