Uczenie się nadzorowane: jak uczyć maszyny, aby nam pomóc

Opublikowany: 2021-02-11

Możesz myśleć o uczeniu nadzorowanym jako o nauczycielu nadzorującym cały proces uczenia się.

To jeden z najczęstszych sposobów uczenia się maszyn i nieocenione narzędzie w dziedzinie sztucznej inteligencji. Ten proces uczenia się można porównać do relacji uczeń-nauczyciel, chociaż maszyny nie są tak uparte jak ludzie.

Jeśli dopiero wkroczyłeś w świat sztucznej inteligencji, nadzorowane uczenie się może nie być terminem, z którym wcześniej się zetknąłeś. Krótko mówiąc, jest to strategia uczenia maszynowego, która umożliwia systemom AI naukę i postęp.

Mówiąc najprościej, nadzorowane algorytmy uczenia są zaprojektowane do uczenia się na przykładzie. Takie przykłady są określane jako dane szkoleniowe , a każdy przykład jest parą obiektu wejściowego i żądanej wartości wyjściowej. Para danych wejściowych i wyjściowych wprowadzanych do systemu jest ogólnie określana jako dane etykietowane .

Wprowadzając dane oznaczone etykietami, pokazujesz maszynie powiązania między różnymi zmiennymi i znanymi wynikami. Dzięki uczeniu nadzorowanemu system AI jest wyraźnie informowany, czego szukać w danych danych wejściowych. Umożliwia to okresowe ulepszanie algorytmów i tworzenie modeli uczenia maszynowego, które mogą przewidywać wyniki lub dokładnie klasyfikować dane, gdy są prezentowane z nieznanymi danymi.

Ogólnie rzecz biorąc, na różnych etapach procesu tworzenia modelu wykorzystywane są trzy zbiory danych:

  • Zestaw danych uczących: przykładowe dane używane do uczenia modelu. Innymi słowy, jest to zestaw przykładów szkoleniowych służących do dopasowania parametrów modelu.
  • Zbiór danych walidacyjnych: przykładowe dane wykorzystywane do zapewnienia obiektywnej oceny dopasowania modelu do zestawu danych treningowych
  • Testowy zbiór danych: przykładowe dane użyte do zapewnienia obiektywnej oceny ostatecznego dopasowania modelu do treningowego zbioru danych

Dopasowanie modelu odnosi się do miary tego, jak dobrze model uogólnia się na dane podobne do tych, na których został wyszkolony. Dobrze dopasowany model daje dokładne wyniki; przesadnie dopasowany model zbyt ściśle pasuje do danych; niedopasowany model nie odpowiada wystarczająco dokładnie danym.

Jak działa nadzorowane uczenie się?

Szkolenie odgrywa kluczową rolę w nadzorowanym uczeniu się. W fazie treningu system AI jest zasilany ogromnymi ilościami oznaczonych danych treningowych. Jak wspomniano wcześniej, dane uczące instruują system, jak powinien wyglądać pożądany wynik z każdej odrębnej wartości wejściowej.

Wytrenowany model otrzymuje następnie dane testowe . Pozwala to analitykom danych określić skuteczność szkolenia i dokładność modelu. Dokładność modelu zależy od wielkości i jakości uczącego zestawu danych oraz zastosowanego algorytmu.

Jednak wysoka celność nie zawsze jest dobrą rzeczą. Na przykład wysoka dokładność może oznaczać, że model cierpi z powodu przepełnienia — błąd modelowania lub nieprawidłowa optymalizacja modelu, gdy jest on nadmiernie dostrojony do swojego zestawu danych treningowych, a nawet może skutkować fałszywymi alarmami.

W takim przypadku model może działać wyjątkowo dobrze w scenariuszach testowych, ale może nie zapewniać prawidłowych wyników w rzeczywistych warunkach. Aby wyeliminować ryzyko nadmiernego dopasowania, upewnij się, że dane testowe są całkowicie różne od danych treningowych. Sprawdź również, czy model nie wyciąga odpowiedzi z poprzedniego doświadczenia.

Różnorodne powinny być również przykłady szkoleniowe. W przeciwnym razie, gdy zostanie przedstawiony z niespotykanymi wcześniej przypadkami, model nie zadziała.

W kontekście nauki o danych i eksploracji danych (procesu przekształcania surowych danych w użyteczne informacje), nadzorowane uczenie się można dalej podzielić na dwa typy: klasyfikację i regresję .

Algorytm klasyfikacji próbuje określić kategorię lub klasę prezentowanych danych. Klasyfikacja spamu e-mail, wizja komputerowa i klasyfikacja leków to tylko niektóre z typowych przykładów problemów z klasyfikacją.

Z drugiej strony algorytmy regresji próbują przewidzieć wartość wyjściową na podstawie cech wejściowych dostarczonych danych. Przewidywanie współczynników klikalności reklam cyfrowych i przewidywanie ceny domu na podstawie jego cech to tylko niektóre z typowych problemów z regresją.

Uczenie nadzorowane vs. nienadzorowane vs. częściowo nadzorowane

Jednym z najlepszych sposobów zrozumienia różnicy między uczeniem się nadzorowanym i nienadzorowanym jest przyjrzenie się, jak nauczyłbyś się grać w grę planszową – powiedzmy w szachy.

uczenie nadzorowane vs. nienadzorowane vs. częściowo nadzorowane

Jedną z opcji jest zatrudnienie korepetytora. Nauczyciel nauczy Cię, jak grać w szachy, wyjaśniając Ci podstawowe zasady, co robi każda partia szachów i nie tylko. Po zapoznaniu się z zasadami gry i zakresem każdego utworu możesz śmiało ćwiczyć, grając przeciwko korepetytorowi.

Nauczyciel nadzorował twoje ruchy i poprawiał cię, gdy popełniasz błędy. Gdy zdobędziesz wystarczającą wiedzę i praktykę, możesz zacząć rywalizować z innymi.

Ten proces uczenia się jest porównywalny do uczenia nadzorowanego . W uczeniu nadzorowanym specjalista ds. danych zachowuje się jak nauczyciel i szkoli maszynę, wprowadzając podstawowe zasady i ogólną strategię.

Jeśli nie chcesz zatrudniać korepetytora, nadal możesz nauczyć się gry w szachy. Jednym ze sposobów jest obserwowanie, jak inni grają w grę. Prawdopodobnie nie możesz zadawać im żadnych pytań, ale możesz oglądać i uczyć się, jak grać w tę grę.

Pomimo tego, że nie znasz nazw każdej figury szachowej, możesz dowiedzieć się, jak poruszają się poszczególne figury, obserwując grę. Im więcej gier oglądasz, tym lepiej rozumiesz i zdobywasz większą wiedzę na temat różnych strategii, które możesz zastosować, aby wygrać.

Ten proces uczenia się jest podobny do uczenia się bez nadzoru . Naukowiec danych pozwala maszynie uczyć się poprzez obserwację. Chociaż maszyna nie zna konkretnych nazw ani etykiet, będzie w stanie samodzielnie znaleźć wzory.

Mówiąc najprościej, uczenie nienadzorowane ma miejsce, gdy algorytm otrzymuje zestaw danych uczących, który zawiera tylko dane wejściowe i nie ma odpowiadających im danych wyjściowych.

Jak widać, obie metody uczenia się mają wyraźne mocne i słabe strony.

Do nadzorowanego uczenia się potrzebujesz kompetentnego nauczyciela, który może nauczyć maszynę zasad i strategii. W przykładzie szachów oznacza to, że do nauki gry potrzebujesz nauczyciela. Jeśli nie, możesz źle nauczyć się gry.

W przypadku uczenia nienadzorowanego, aby maszyna mogła obserwować i uczyć się, potrzebujesz ogromnych ilości danych. Chociaż nieoznakowane dane są tanie (i obfite) i łatwe do zbierania i przechowywania, muszą być pozbawione duplikatów lub śmieciowych danych. Wadliwe lub niekompletne dane mogą również powodować błąd uczenia maszynowego – zjawisko, w którym algorytmy generują dyskryminujące wyniki.

Na przykładzie szachów, jeśli uczysz się obserwując innych graczy, oznacza to, że musisz obejrzeć dziesiątki partii, zanim je zrozumiesz. Ponadto, jeśli obserwujesz graczy, którzy grają niepoprawnie, możesz zrobić to samo.

Potem jest nauka częściowo nadzorowana .

Jak można się domyślić, uczenie się częściowo nadzorowane jest mieszanką uczenia się nadzorowanego i nienadzorowanego. W tym procesie uczenia badacz danych tylko trochę szkoli maszynę, aby uzyskać ogólny przegląd. Następnie maszyna uczy się zasad i strategii, obserwując wzorce. Niewielki procent danych treningowych będzie oznaczony etykietą, a reszta będzie nieoznaczona.

Na przykładzie nauki szachów, nauka częściowo nadzorowana byłaby podobna do nauczania przez korepetytora wyjaśniającego ci tylko podstawy i pozwalającego uczyć się poprzez współzawodnictwo.

Innym procesem uczenia się jest uczenie się ze wzmocnieniem (RL) . To strategia uczenia maszynowego, w której system AI staje w obliczu sytuacji przypominającej grę. Aby nauczyć sztuczną inteligencję, programista wykorzystuje technikę nagroda-kara, w której system musi skoncentrować się na podejmowaniu odpowiednich działań, aby zmaksymalizować nagrodę i uniknąć kar.

Nadzorowane algorytmy uczenia

W procesie uczenia nadzorowanego wykorzystywane są liczne techniki obliczeniowe i algorytmy.

Wybierając nadzorowany algorytm uczenia maszynowego, ogólnie brane są pod uwagę następujące czynniki:

  • Złożoność modelu, którego system próbuje się nauczyć
  • Odchylenie i wariancja istniejąca w algorytmie
  • Rozmiar danych treningowych
  • Dokładność, heterogeniczność, redundancja i liniowość danych
  • Czas dostępny na szkolenie

Oto niektóre z popularnych nadzorowanych algorytmów uczenia maszynowego, z którymi możesz się spotkać.

Regresja liniowa

Regresja liniowa jest zarówno algorytmem statystycznym, jak i algorytmem uczenia maszynowego. Jest to algorytm, który próbuje modelować związek między dwiema zmiennymi, dołączając równanie liniowe do obserwowanych danych. Spośród tych dwóch zmiennych jedna jest uważana za zmienną objaśniającą, a drugą za zmienną zależną.

Regresji liniowej można również użyć do identyfikacji relacji między zmienną zależną a jedną lub większą liczbą zmiennych niezależnych. W dziedzinie uczenia maszynowego do prognozowania używana jest regresja liniowa.

Regresja logistyczna

Regresja logistyczna to model matematyczny używany do oszacowania prawdopodobieństwa zdarzenia na podstawie dostarczonych wcześniejszych danych. Scoring kredytowy i wykrywanie oszustw w transakcjach online to tylko niektóre z rzeczywistych zastosowań tego algorytmu. Innymi słowy, jest to algorytm analizy predykcyjnej oparty na pojęciach prawdopodobieństwa używany do rozwiązywania problemów klasyfikacji binarnej.

Podobnie jak regresja logistyczna, również regresja liniowa została zapożyczona z dziedziny statystyki. Jednak w przeciwieństwie do regresji liniowej, która działa z ciągłymi zmiennymi zależnymi, regresja logistyczna działa z danymi binarnymi, takimi jak „prawda” lub „fałsz”.

Sieci neuronowe

Sztuczne sieci neuronowe (SSN) są używane głównie przez algorytmy głębokiego uczenia. To seria algorytmów, które naśladują funkcje ludzkiego mózgu, aby rozpoznać relacje między ogromnymi ilościami danych. Jak można się domyślić, SSN mają kluczowe znaczenie dla systemów sztucznej inteligencji.

Sieci neuronowe składają się z warstw wielu węzłów. Każdy węzeł składa się z danych wejściowych, wag, odchyleń i wyników. SSN jest trenowana przez dostosowanie wag wejściowych na podstawie wydajności sieci. Na przykład, jeśli sieć neuronowa prawidłowo klasyfikuje obraz, wagi przyczyniające się do prawidłowej odpowiedzi są zwiększane, podczas gdy inne wagi są zmniejszane.

Naiwny Bayes

Naive Bayes to metoda klasyfikacji oparta na zasadzie warunkowej niezależności klas twierdzenia Bayesa. Mówiąc prościej, podejście klasyfikatora Naive Bayes zakłada, że ​​obecność określonej cechy w klasie nie wpływa na obecność żadnej innej cechy.

Na przykład owoc może być uważany za jabłko, jeśli ma czerwony kolor, jest okrągły i ma około trzech cali średnicy. Nawet jeśli te cechy są od siebie zależne, wszystkie te właściwości z osobna przyczyniają się do prawdopodobieństwa, że ​​sam owoc jest jabłkiem.

Model Naive Bayes jest przydatny w przypadku dużych zbiorów danych. Jest łatwy w budowie, szybki i znany z tego, że działa nawet lepiej niż zaawansowane metody klasyfikacji.

Maszyna wektorów pomocniczych (SVM)

Maszyna wektorów nośnych (SVM) to dobrze znany nadzorowany algorytm uczenia maszynowego opracowany przez Vladimira Vapnika. Pomimo tego, że są używane głównie do problemów z klasyfikacją, SVM mogą być również używane do regresji.

SVM są zbudowane na idei znalezienia hiperpłaszczyzny, która najlepiej dzieli dany zbiór danych na dwie klasy. Taka hiperpłaszczyzna jest określana jako granica decyzyjna i rozdziela punkty danych na obie strony. Wykrywanie twarzy, kategoryzacja tekstu, klasyfikacja obrazów to tylko niektóre z wielu rzeczywistych zastosowań SVM.

K-najbliżsi sąsiedzi (KNN)

Algorytm K-najbliższych sąsiadów (KNN) to nadzorowany algorytm uczenia maszynowego używany do rozwiązywania problemów z regresją i klasyfikacją. Jest to algorytm grupujący punkty danych na podstawie ich bliskości i relacji z innymi danymi.

Jest łatwy do zrozumienia, prosty do wdrożenia i ma krótki czas obliczeń. Jednak algorytm staje się znacznie wolniejszy wraz ze wzrostem rozmiaru używanych danych. KNN jest zwykle używany do systemów rozpoznawania i rekomendacji obrazów.

Losowy las

Las losowy to metoda uczenia się, która składa się z dużej liczby drzew decyzyjnych działających jako zespół (wykorzystanie wielu algorytmów uczenia się w celu uzyskania lepszej wydajności predykcyjnej). Każde drzewo decyzyjne dostarcza prognozę klasy, a klasa z największą liczbą głosów staje się prognozą modelu.

Algorytm losowego lasu jest szeroko stosowany na giełdzie, bankowości i medycynie. Na przykład może służyć do identyfikacji klientów, którzy są bardziej skłonni do terminowej spłaty zadłużenia.

Nadzorowane przykłady uczenia się

Jak już wspomniano, przewidywanie cen domów, współczynniki klikalności reklam online, a nawet gotowość klienta do zapłaty za konkretny produkt to tylko niektóre z godnych uwagi przykładów nadzorowanych modeli uczenia się.

Oto kilka przykładów, na które możesz natknąć się w codziennym życiu.

  • Analiza sentymentu : technika przetwarzania języka naturalnego stosowana do określenia sentymentu do produktu i zrozumienia potrzeb klienta
  • Rozpoznawanie obrazu: technika używana do lokalizowania, identyfikowania i kategoryzowania obiektów w filmach i obrazach
  • Wykrywanie spamu: metoda klasyfikowania spamu i treści niebędących spamem poprzez rozpoznawanie wzorców i anomalii w danych

Uczenie maszyn do myślenia

Wykorzystując dane oznaczone etykietami, algorytmy uczenia nadzorowanego mogą tworzyć modele, które mogą z łatwością klasyfikować duże zbiory danych, a nawet przewidywać przyszłe wyniki. To genialna technika uczenia się, która wprowadza maszyny do ludzkiego świata.

Mówiąc o technikach uczenia się, aby uczynić maszyny inteligentnymi, czy zastanawiałeś się kiedyś, do jakich systemów sztucznej inteligencji, które mamy dzisiaj, są naprawdę zdolne? Jeśli tak, nakarm swoją ciekawość, czytając więcej o wąskiej sztucznej inteligencji.