Jak posortować coś, gdy nie znasz kolejności?
W Części 3 szczegółowo omówiliśmy koncepcję klasyfikacji binarnej, tj. umieszczenia przedmiotów w jednym z dwóch typów lub klas. W wielu przypadkach będziemy zadowoleni z podejścia, które może wprowadzić takie rozróżnienie. Ale co jeśli przedmioty w jednej klasie nie są tworzone równo i chcemy uszeregować przedmioty w klasie? Krótko mówiąc, co jeśli chcemy powiedzieć, że jeden e-mail jest najbardziej spamerski, a drugi jest drugim najbardziej spamerskim, lub chcemy rozróżnić między nimi w inny znaczący sposób? Załóżmy, że nie tylko chcieliśmy filtrować spam z naszego e-maila, ale chcieliśmy również umieścić „ważniejsze” wiadomości na górze kolejki. Jest to bardzo powszechny problem w uczeniu maszynowym i będzie przedmiotem tej części. Generowanie reguł rankingowania listy przedmiotów jest coraz częstszym zadaniem w uczeniu maszynowym, ale być może nie pomyślałeś o tym w tych kategoriach. Bardziej prawdopodobne jest to, że słyszałeś o systemie rekomendacji, który pośrednio tworzy ranking produktów. Nawet jeśli nie słyszałeś o systemie rekomendacji, to prawie pewne, że w pewnym momencie korzystałeś z systemu rekomendacji lub z niego korzystałeś. Niektóre z najbardziej udanych witryn e-commerce skorzystały z wykorzystania danych na temat swoich użytkowników, aby wygenerować rekomendacje dla innych produktów, którymi mogą być zainteresowani. Na przykład, jeśli kiedykolwiek robiłeś zakupy w Amazon.com, to wchodziłeś w interakcję z systemem rekomendacji. Problem, z którym boryka się Amazon, jest prosty: jakie przedmioty w ekwipunku najczęściej kupujesz? Implikacja tego stwierdzenia polega na tym, że elementy w ekwipunku Amazon mają porządek specyficzny dla każdego użytkownika. Podobnie, Netflix.com ma ogromną bibliotekę DVD, którą klienci mogą wypożyczyć. Aby ci klienci mogli jak najlepiej wykorzystać witrynę, Netflix stosuje wyrafinowany system rekomendacji, aby przedstawiać ludziom sugestie dotyczące wynajmu. W przypadku obu firm zalecenia te oparte są na dwóch rodzajach danych. Po pierwsze, istnieją dane dotyczące samego spisu. W przypadku Amazon, jeśli produktem jest telewizor, dane te mogą zawierać typ (np. Plazmowy, LCD, LED), cenę producenta i tak dalej. W przypadku Netflix te dane mogą być gatunkiem filmu, obsadą, reżyserem, czasem trwania itp. Po drugie, istnieją dane związane z zachowaniem klientów podczas przeglądania i zakupów. Tego rodzaju dane mogą pomóc Amazonowi zrozumieć, jakich akcesoriów szuka większość ludzi przy zakupie nowego telewizora plazmowego i pomóc Netflix zrozumieć, które komedie romantyczne najczęściej wypożyczają fani George’a A. Romero. W przypadku obu typów danych funkcje są dobrze zidentyfikowane. Oznacza to, że znamy etykiety dla danych kategorycznych, takich jak typ produktu lub gatunek filmu; podobnie dane generowane przez użytkowników są dobrze uporządkowane w postaci zapisów zakupu / wynajmu i wyraźnych ocen. Ponieważ zazwyczaj mamy wyraźne przykłady interesujących wyników podczas rangowania, jest to rodzaj problemu uczenia maszynowego, który często nazywa się uczeniem nadzorowanym. Jest to przeciwieństwo uczenia się bez nadzoru, w którym nie ma wcześniejszych przykładów wyników, gdy zaczynamy pracę z danymi. Aby lepiej zrozumieć różnicę, pomyśl o nadzorowanym uczeniu się jako procesie uczenia się poprzez instrukcje. Na przykład, jeśli chcesz nauczyć kogoś, jak upiec ciasto wiśniowe, możesz podać mu przepis, a następnie pozwolić mu skosztować powstałe ciasto. Po zobaczeniu, jak smakuje wynik, może postanowić nieco dostosować składniki. Posiadanie zapisanych składników (tj. nakładów) i smaku wyniku (tj. nakładu) oznacza, że może on przeanalizować wkład każdego składnika i spróbować znaleźć idealny przepis na ciasto wiśniowe. Ewentualnie, gdybyś wiedział tylko, że do potraw z mrożoną fasolą zwykle dołącza się tortille, podczas gdy do potraw z pieczonymi wiśniami zwykle dołącza się ciasto, możesz być w stanie zgrupować inne składniki w klasy, które ostatecznie przypominałyby rzeczy, których używasz do robienia meksykańskich potraw w porównaniu z rodzajami rzeczy, których używasz do robienia amerykańskich deserów. Rzeczywiście, powszechną formą uczenia się bez nadzoru jest grupowanie, w którym chcemy przypisywać elementy do określonej liczby grup na podstawie podobieństw lub różnic. Jeśli już przeczytałeś i przeszedłeś ćwiczenie z Części 3, oznacza to, że rozwiązałeś już problem nadzorowanego uczenia się. Do celów klasyfikacji spamu znaliśmy warunki związane ze spamem i wiadomościami typu ham, a także wyszkoliliśmy naszego klasyfikatora na podstawie tego przepisu. To był bardzo prosty problem, więc mogliśmy uzyskać stosunkowo dobre wyniki klasyfikacji przy użyciu zestawu funkcji zawierającego tylko jeden element: warunki wiadomości e-mail. Jednak do rankingu musimy przypisać każdemu przedmiotowi unikalną wagę, aby dokładniej je rozwarstwić. W następnej sekcji zaczniemy zajmować się pytaniem zaproponowanym w tytule : jak posortować coś, jeśli nie znasz jeszcze jego kolejności? Jak zapewne zgadłeś, aby to zrobić w kontekście zamawiania wiadomości e-mail według ich ważności, będziemy musieli przeformułować pytanie w zakresie funkcji dostępnych dla nas w danych e-mail i związku tych funkcji z priorytetem wiadomości e-mail