Uczenie maszynowe (ang. Machine Learning) to mniej lub bardziej automatyczne wykrywanie wzorców, regularności czy wydobywanie wiedzy zawartej w danych. Stosuje się je tam, gdzie istnieje duża liczba zmiennych i trudne lub wręcz niemożliwe jest przygotowanie zestawu reguł, w oparciu o które można by stworzyć algorytm „tradycyjnego” programu komputerowego.

Załóżmy, że chcemy znaleźć sposób na automatyczną wycenę nieruchomości. Od czego zależy cena nieruchomości ?  W wycenie nieruchomościach najważniejsza jest lokalizacja.  A więc wielkość miejscowości w którym się znajduje, sąsiedztwo, odległość od przystanku komunikacji miejskie (w mieście) czy brzegu jeziora (poza miastem). Ale ważna jest także powierzchnia w metrach kwadratowych, liczby pokoi, rok budowy, technologia wykonania, wyposażenie, itp. Takich zmiennych możemy znaleźć setki. Ale jak obliczyć wartość 3 pokojowego mieszkania na 4 piętrze z balkonem ale bez windy, zbudowanego w 1960 roku z cegły, znajdującego się w 550 tys. mieście i położonego 150 metrów od najbliższego przystanku komunikacji miejskiej ?  Najlepszy byłby system, który sam wykryłby pewne wzorce obowiązujące w otrzymanych danych.  Wykrywanie takich wzorców to właśnie uczenie maszynowe. Uczenie jest z nadzorem, kiedy do każdego przykładu treningowego (czyli każdego wiersza z cechami mieszkania w poniższej tabelce) użytego do uczenia, możemy przypisać pożądaną wartość zmiennej objaśnianej (czyli w naszym wypadku cenę mieszkania).  Czyli np. jak w poniższej tabelce

Zmienne objaśniające (cechy mieszkania) Zmienna objaśniana
Powierzchnia(w m2) Liczba pokoi Wielkość miejscowości(liczba mieszkańców) Odległość od najbliższego przystanku(w m) Rok budowy Piętro Czy jest winda? Cena mieszkania( w zł)
112 3 170 tys. 150 1930 1 Nie 305 tys.
37 1 77 tys. 300 2017 2 Nie 135 tys.
64 3 631 tys. 100 1981 1 Tak 350 tys.
58 3 1,711 mln 50 1930 5 Tak 485 tys.

 

Po zakończeniu procesu uczenia, gdy zapytamy o wycenę mieszkania o cechach różniącego się od tych, które zostały użyte w procesie uczenia, system jest w stanie je wycenić w oparciu o pewne wzorce czy zależności istniejące w danych treningowych.

Zmienne objaśniające (cechy mieszkania) Zmienna objaśniana
Powierzchnia(w m2) Liczba pokoi Wielkość miejscowości(liczba mieszkańców) Odległość od najbliższego przystanku(w m) Rok budowy Piętro Czy jest winda? Cena mieszkania( w tys. zł)
64 3 550 tys. 150 1960 4 Nie ? 280 tys.

 

W rzeczywistości,  zmiennych objaśnianych jest zwykle kilkaset, natomiast  danych treningowych są tysiące.

W uczeniu z nadzorem możemy wyróżnić dwa rodzaje zagadnień: regresję i klasyfikację. W przypadku regresji zmienna objaśniania jest zmienną ciągłą, mogącą przyjąć dowolną wartość, tak jak cena  nieruchomości z opisanego wcześniej przypadku.  W przypadku klasyfikacji, zmienna objaśniana jest zmienną dyskretną, mającą ograniczoną liczbę wartości, najczęściej dwie: 0 lub 1, tak lub nie, zdrowy lub chory, sprawny lub zepsuty, itp.  Kiedy chcemy przewidzieć, czy klient starający się o pożyczkę w banku spłaci ją, albo czy klient któremu skończy się abonament odejdzie do konkurencji, mamy do czynienia właśnie z przypadkiem klasyfikacji.

Oprócz opisanego wcześniej uczenia maszynowego z nadzorem możliwe jest także uczenie bez nadzoru. Ma ono miejsce w sytuacji, kiedy poszczególnym danym treningowym nie jesteśmy w stanie przypisać pożądanych wartości zmiennych objaśnianych (czyli rzeczywistych cen mieszkań o określonych cechach, albo też informacji czy klienci o określonych cechach w przeszłości spłacili kredyt czy też nie).

Najczęstszym zastosowanie uczenia bez nadzoru jest segmentacja.  Załóżmy, że chcemy podzielić wszystkich klientów sklepu na grupy, w których będą znajdowali się klienci wykazujący się pewnymi podobieństwami, tak aby precyzyjniej prowadzić działania marketingowe.  Nie wiemy natomiast z góry, czym grupy te będą się charakteryzowały, ani nawet ile ich będzie.  Może się okazać, że będą 3 segmenty (np. single, rodziny z dziećmi, emeryci), ale może się okazać , że najlepszy będzie podział na 5 albo 8 segmentów.  Uczenie bez nadzoru może wydawać się bardzo atrakcyjne – przygotowanie danych jest łatwiejsze niż w przypadku uczenia z nadzorem. Ale ….. może okazać się, że otrzymany podział na segmenty nie ma żadnej sensownej interpretacji biznesowej.

Przedstawiony podział uczenia maszynowego można zobrazować w postaci wykresu:

Leave a comment

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *