Ten przykład pokazuje, jak generować umieszczone elementy używane w podobnym pomiarze podobieństwa.
Załóżmy, że masz ten sam zbiór danych dotyczących nieruchomości, który został użyty do utworzenia ręcznego pomiaru podobieństwa:
Funkcja | Typ |
---|---|
Price | Dodatnia liczba całkowita |
Rozmiar | Dodatnia wartość zmiennoprzecinkowa w metrach kwadratowych |
Kod pocztowy. | Liczba całkowita |
Liczba sypialni | Liczba całkowita |
Typ domu | Wartość tekstowa z adresów „rodzina”, „apartament”, „apartament”, „apartament” |
garaż | 0/1 dla nie/tak |
Kolory | Wielowymiarowa kategoria: co najmniej jedna wartość ze standardowych kolorów „biały”, „żółty”, „zielony” itd. |
Przetwarzanie danych wstępnie
Zanim użyjesz danych z funkcji, musisz je wstępnie przetworzyć. Kroki wstępnego przetwarzania danych opierają się na czynnościach wykonanych podczas tworzenia ręcznego pomiaru podobieństw. Podsumowanie:
Funkcja | Typ lub dystrybucja | Działanie |
---|---|---|
Price | Rozkład Poissona | Kwantyfikuj i skaluj do [0,1]. |
Rozmiar | Rozkład Poissona | Kwantyfikuj i skaluj do [0,1]. |
Kod pocztowy. | Kategorialne | Konwertuj na długość i szerokość geograficzną, kwituj i skaluj do [0,1]. |
Liczba sypialni | Liczba całkowita | Przytnij wartości odstające i skaluj do [0,1]. |
Typ domu | Kategorialne | Przekształć w kodowanie gorące... |
garaż | 0 lub 1 | Pozostaw bez zmian. |
Kolory | Kategorialne | Przekonwertuj na wartości RGB i przetwórz jako dane liczbowe. |
Więcej informacji o kodowaniu gorącym znajdziesz w artykule Umieszczanie: dane wejściowe kategorii.
Wybierz przewidywane lub automatyczne koder
Aby wygenerować umieszczone elementy, możesz wybrać autokoder lub prognozę. Pamiętaj, że domyślnie jest kodowany koder. Zamiast tego wybierasz prognozowaną wartość, jeśli określone cechy w zbiorze danych wskazują na podobieństwo. Dla pełnej kompletności przeanalizujmy oba te przypadki.
Trenuj prognozę
Musisz wybrać te funkcje jako etykiety treningowe dla nazwy wyróżniającej, które są istotne przy określaniu podobieństwa Twoich przykładów. Załóżmy, że cena jest najważniejsza w przypadku określania podobieństwa domów.
Wybierz cenę jako etykietę treningową i usuń ją z danych obiektu wejściowego z nazwą wyróżniającą. Wytrenuj nazwę wyróżniającą, używając wszystkich innych funkcji jako danych wejściowych. Na potrzeby funkcji strata oznacza po prostu MSE pomiędzy prognozowaną a rzeczywistą ceną. Więcej informacji o trenowaniu DNN znajdziesz w artykule Training Neural Networks.
Trenowanie automatycznego kodera
Aby wytrenować autokoder w naszym zbiorze danych, wykonaj te czynności:
- Ukryte warstwy automatycznego kodera muszą być mniejsze niż warstwy wejściowe i wyjściowe.
- Oblicz straty dla wszystkich danych wyjściowych, jak opisano w pomiaru podobieństwa nadzoru.
- Utwórz funkcję utraty, sumując straty dla każdego wyniku. Pamiętaj, aby dla każdej cechy ważyć tyle samo. Na przykład dane kolorów są przetwarzane w ramach RGB, więc każda waga RGB powinna być ważona przez 1/3.
- Wytrenuj DNN.
Wyodrębnianie osadzonych z nazwy DNN
Po wytrenowaniu DNN (niezależnie od tego, czy predyktor czy automatyczny koder) wyodrębnij miejsce docelowe na potrzeby nazwy DNN. Wyodrębnij umieszczone elementy, korzystając z danych cech przykładowego, i odczytaj dane wyjściowe ostatniej ukrytej warstwy. Te dane wyjściowe tworzą wektor wbudowany. Pamiętaj, że wektory podobnych domów powinny być bliżej siebie niż wektory dla różnych domów.
Następnie dowiesz się, jak ocenić podobieństwo w przypadku par przykładów, używając ich wektorów.