Algorytmy Machine Learning w Marketingu
W jaki sposób wykorzystywane są algorytmy w marketingu?
Analiza zachowań klientów pozwala nam zauważyć pewne występujące schematy. Biorąc pod uwagę, że mamy ogromne ilości danych dotyczących źródeł ruchu, czasu, zacowań, odwiedzanych stron, i wielu innych, jesteśmy w stanie zdefiniować te schematach, które są dla nas pożądane i te, których nie chcemy.
Algorytmy używane w narzędziach MarTech bardzo dobrze radzą sobie z wykrywaniem tych schematów i na podstawie zdobytej wiedzy wpływają na pewne scenariusze zachowań tak by realizowane były te dla nas pozytywne.
Zasilony tą wiedzą algorytm może spersonalizować komunikację naszej strony internetowe w oparciu o najbardziej prawdopodobną motywację każdego odwiedzającego. Wykrywanie intencji pozwala nam znacznie lepiej serwować informacje oraz produkty.
Nieco podobne, ale bardziej skomplikowane, do tego są algorytmy predykcyjne używane do tworzenia rekomendacji na stronach takich jak Amazon i Netflix. Analitycy szacują, że 35% tego, co ludzie kupują na Amazon, i 75% tego, co oglądają na Netflix, jest napędzane przez te algorytmy.
Algorytmy te działają również, analizując zarówno przeszłe zachowanie (np. To, co kupiłeś lub oglądałeś), jak i zachowanie innych (np. Co ludzie, którzy kupili lub oglądali to samo, kupili lub oglądali). Kluczem do sukcesu tych algorytmów jest zakres dostępnych danych. Analizując wcześniejsze zachowanie podobnych konsumentów, algorytmy te są w stanie wydawać zalecenia, które są bardziej prawdopodobne.
Filtrowanie grupowe
Collaborative filtering (CF) i jego modyfikacje to jeden z najczęściej używanych algorytmów rekomendacji. Nawet początkujący programiści mogą wykorzystać go do zbudowania własnego systemu rekomendacji filmów, produktów czy reklam.
Algorytm korzysta z zasad uczenia przy użyciu reguł asocjacyjnych(ang association rule learning)
Kiedy chcemy coś polecić użytkownikowi, najbardziej logiczną rzeczą jest znalezienie osób o podobnych zainteresowaniach, przeanalizowanie ich zachowania i rekomendować im produkty preferowane przez podobnych użytkowników. Z drugiej strony możemy spojrzeć na przedmioty podobne do tych, które użytkownik kupił wcześniej, i polecać podobne im.
Są to dwa podstawowe podejścia. CF czyli filtrowanie grupowe oparte na użytkownikach i filtrowanie grupowe oparte na elementach w tym przypadku produktach. W obu przypadkach ten algorytm rekomendacji ma dwa kroki:
- Dowiedz się, ilu użytkowników / elementów w bazie danych jest podobnych do danego użytkownika / przedmiotu.
- Oceń innych użytkowników / przedmioty, aby przewidzieć, jaką wartość dasz użytkownikowi tego produktu, biorąc pod uwagę całkowitą wagę użytkowników / przedmiotów, które są bardziej podobne do tego.
Niestety tego typu algorytmy mają wadę. Chodzi o tzw. bańki informacyjne. Opierając się wyłącznie na rekomendacjach zamkniemy się w tych bańkach informacyjnych. nigdy nie spróbujemy nic nowego, niczego co nie pasuje do przypisanych nam schematów. Osobiście dla mnie jest to duża wada.
Co oznacza „najbardziej podobny” w tym algorytmie?
Mamy tylko wektor preferencji dla każdego użytkownika (wiersz macierzy R) i wektor ocen użytkowników dla każdego produktu (kolumny macierzyb R).
Urzytkownik | Batman | Star Wars | Titanic |
---|---|---|---|
Olek | 3 | 3 | – |
Karol | – | 2 | 4 |
Ola | – | 5 | – |
Kolejne kroki:
Po pierwsze, zostawmy tylko elementy, dla których znamy wartości w obu wektorach.
Na przykład, jeśli chcemy porównać Olka i Karola, możemy wspomnieć, że Olek nie oglądał Titanica, a Karol nie oglądał Batmana do tej chwili, więc możemy zmierzyć ich podobieństwo tylko w Gwiezdnych Wojnach.
Najpopularniejszymi technikami pomiaru podobieństwa są cosinusowe podobieństwo lub korelacje między wektorami użytkowników / przedmiotów. Ostatnim krokiem jest przyjęcie ważonej średniej arytmetycznej zgodnie ze stopniem podobieństwa, umożliwi nam to uzupełnienie pustych komórek w tabeli.
Rozkład macierzy
Kolejne interesujące podejście wykorzystuje dekompozycje macierzy. Jest to bardzo elegancki algorytm rekomendacji. Ponieważ zazwyczaj, jeśli chodzi o dekompozycję macierzy, nie zastanawiamy się zbytnio nad tym, jakie elementy pozostaną w kolumnach i wierszach wynikowych macierzy. Używając tego silnika rekomendującego, widzimy wyraźnie, że u jest wektorem zainteresowań i-tego użytkownika, a v jest wektorem parametrów dla j-tego filmu.
Grupowanie Clustering
Poprzednie algorytmy rekomendacji są raczej proste i są odpowiednie dla małych systemów. Do tego momentu rozważaliśmy problem rekomendacji jako nadzorowane zadanie uczenia maszynowego. Nadszedł czas, aby zastosować metody bez nadzoru .
Wyobraź sobie, że budujemy duży system rekomendacji, w którym filtrowanie grupowe i dekompozycja macierzy powinny działać dłużej. Pierwszym pomysłem byłoby grupowanie.
Na początku procesu uczenia się systemu brakuje ocen poprzednich użytkowników. Najlepszym rozwiązaniem byłoby tworzenie klastrów.
Ale grupowanie jest nieco słabe. Ponieważ w rzeczywistości identyfikujemy grupy użytkowników i proponujemy każdemu użytkownikowi w tej grupie te same elementy. Gdy mamy wystarczającą ilość danych, lepiej użyć klastrowania jako pierwszego kroku. Następnie na podstawie tych grup proponowac indywidualne rozwiązania dla poszczególnych klientów.
Każdy klaster byłby przypisany do typowych preferencji, w oparciu o preferencje klientów należących do klastra. Klienci, w każdym klastrze otrzymaliby rekomendacje obliczone na poziomie klastra.
Algorytm TensorFlow
Algorytm TensorFlow służy do rozproszonych obliczeń numerycznych przy użyciu diagramów przepływu danych. Dzięki specyficznym cechom jakie posiada ten algorytm, może on pracować na rozproszonych źródłach. Ten algorytm znakomicie radzi sobie z architekturą gdzie dane rozprzestrzenione są na wielu serwerach. Algorytm ten jest integralna częścią RankBrain
Biblioteka TensorFlow powstała Google. Algorytm Tensorflor jest kluczuwym elementem składowym algorytmu Googla. Szczególnie interesujący jest dla specjalistów SEO. Prawidłowe zrozumienie zasad działania pozwala skutecznie manipulować wynikami wyszukiwania Google. Od listopada 2015 roku jest on częścią licencji wolnego oprogramowania (ang. open-source).
Algorytmy rozpoznawania języka naturalnego
Ciekawym tematem są algorytmy wspierające rozpoznawanie języka naturalnego, “Natural language processing, NLP”. Ogólna zasada działania tego typu algorytmów opiera się na zajmująca się automatyzacją analizy, rozumienia, tłumaczenia i generowania języka naturalnego przez komputery. Ciekawym zastosowaniem w praktyce tego typu algorytmów są BERT i RankBrain Google.
Źródła danych testowych
Dla tych, którzy chcieliby przetestować w praktyce różne algorytmy, mają do tego odpowiednie narzędzia a brakuje im danych polecam kilka źródeł poniżej:
- Repozytorium Uniwersytetu Kalifornijskiego
- Repozytorium Google AWS
- https://dataportals.org/
- https://opendatamonitor.eu/
Artykuł uaktualniony 4 lata