Uczenie maszynowe to podzbiór sztucznej inteligencji, który umożliwia maszynie automatyczne uczenie się na podstawie danych, poprawę wydajności na podstawie przeszłych doświadczeń i przewidywanie . Uczenie maszynowe zawiera zestaw algorytmów, które działają na ogromnej ilości danych. Dane są podawane do tych algorytmów w celu ich szkolenia, a na podstawie szkolenia budują model i wykonują określone zadanie.
Te algorytmy ML pomagają rozwiązywać różne problemy biznesowe, takie jak regresja, klasyfikacja, prognozowanie, grupowanie i skojarzenia itp.
Ze względu na metody i sposób uczenia się, uczenie maszynowe dzieli się głównie na cztery typy, którymi są:
- Nadzorowane uczenie maszynowe
- Uczenie maszynowe bez nadzoru
- Częściowo nadzorowane uczenie maszynowe
- Uczenie się przez wzmacnianie
W tym temacie szczegółowo opiszemy rodzaje uczenia maszynowego wraz z odpowiadającymi im algorytmami:
1. Nadzorowane uczenie maszynowe
Jak sama nazwa wskazuje, Nadzorowane uczenie maszynowe opiera się na superwizji. Oznacza to, że w technice uczenia się pod nadzorem szkolimy maszyny przy użyciu „oznakowanego” zbioru danych i na podstawie treningu maszyna przewiduje wynik. W tym przypadku dane oznaczone etykietą określają, że niektóre dane wejściowe są już odwzorowane na dane wyjściowe. Co ważniejsze, możemy powiedzieć; najpierw szkolimy maszynę za pomocą danych wejściowych i odpowiadających im wyników, a następnie prosimy maszynę, aby przewidziała wynik na podstawie testowego zbioru danych.
Przyjrzyjmy się uczeniu nadzorowanemu na przykładzie. Załóżmy, że mamy wejściowy zbiór danych zawierający obrazy kotów i psów. Najpierw przeszkolimy maszynę w zakresie zrozumienia obrazów, takich jak kształt i wielkość ogona kota i psa, kształt oczu, kolor, wzrost (psy są wyższe, koty mniejsze) itp. Po zakończeniu treningu wprowadzamy zdjęcie kota i prosimy maszynę o zidentyfikowanie obiektu i przewidzenie wyniku. Teraz maszyna jest dobrze wyszkolona, więc sprawdzi wszystkie cechy obiektu, takie jak wzrost, kształt, kolor, oczy, uszy, ogon itp., i stwierdzi, że to kot. Umieści go więc w kategorii Kot. Jest to proces, w jaki maszyna identyfikuje obiekty w ramach uczenia nadzorowanego.
Głównym celem techniki uczenia się nadzorowanego jest mapowanie zmiennej wejściowej (x) ze zmienną wyjściową (y). Niektóre rzeczywiste zastosowania uczenia się nadzorowanego to: Ocena ryzyka, wykrywanie oszustw, filtrowanie spamu, itp.
równa się metoda w Javie
Kategorie nadzorowanego uczenia maszynowego
Nadzorowane uczenie maszynowe można podzielić na dwa typy problemów, które podano poniżej:
a) Klasyfikacja
Algorytmy klasyfikacji służą do rozwiązywania problemów klasyfikacyjnych, w których zmienna wyjściowa jest kategoryczna, np. „ Tak lub nie, mężczyzna lub kobieta, czerwony lub niebieski itp . Algorytmy klasyfikacji przewidują kategorie obecne w zbiorze danych. Oto kilka rzeczywistych przykładów algorytmów klasyfikacji Wykrywanie spamu, filtrowanie poczty e-mail itp.
Poniżej podano niektóre popularne algorytmy klasyfikacji:
b) Regresja
Algorytmy regresji służą do rozwiązywania problemów regresji, w których istnieje liniowa zależność pomiędzy zmiennymi wejściowymi i wyjściowymi. Służą one do przewidywania ciągłych zmiennych wyjściowych, takich jak trendy rynkowe, prognozy pogody itp.
wrzuć obsługę wyjątków Java
Poniżej podano niektóre popularne algorytmy regresji:
Zalety i wady uczenia się pod nadzorem
Zalety:
- Ponieważ uczenie nadzorowane działa z oznaczonym zbiorem danych, dzięki czemu możemy mieć dokładne pojęcie o klasach obiektów.
- Algorytmy te są pomocne w przewidywaniu wyników na podstawie wcześniejszych doświadczeń.
Niedogodności:
- Algorytmy te nie są w stanie rozwiązywać złożonych zadań.
- Może przewidzieć błędne dane wyjściowe, jeśli dane testowe różnią się od danych szkoleniowych.
- Wytrenowanie algorytmu wymaga dużej ilości czasu obliczeniowego.
Zastosowania uczenia się pod nadzorem
Poniżej podano niektóre typowe zastosowania uczenia się nadzorowanego:
Algorytmy nadzorowanego uczenia się są wykorzystywane w segmentacji obrazu. W tym procesie klasyfikacja obrazu odbywa się na różnych danych obrazu z wcześniej zdefiniowanymi etykietami.
Algorytmy nadzorowane są również wykorzystywane w medycynie do celów diagnostycznych. Odbywa się to poprzez wykorzystanie obrazów medycznych i danych opatrzonych etykietami dotyczącymi stanów chorobowych. Dzięki takiemu procesowi maszyna może zidentyfikować chorobę u nowych pacjentów.
2. Uczenie maszynowe bez nadzoru
Uczenie się bez nadzoru g różni się od techniki uczenia się pod nadzorem; jak sama nazwa wskazuje, nie ma potrzeby nadzoru. Oznacza to, że w przypadku uczenia maszynowego bez nadzoru maszyna jest szkolona przy użyciu nieoznakowanego zbioru danych, a maszyna przewiduje dane wyjściowe bez żadnego nadzoru.
W przypadku uczenia się bez nadzoru modele są szkolone na danych, które nie są ani sklasyfikowane, ani oznakowane, a model działa na tych danych bez żadnego nadzoru.
Głównym celem algorytmu uczenia się bez nadzoru jest grupowanie lub kategoryzowanie nieposortowanego zbioru danych według podobieństw, wzorców i różnic. Maszyny otrzymują polecenie znalezienia ukrytych wzorców z wejściowego zbioru danych.
Weźmy przykład, aby lepiej to zrozumieć; załóżmy, że istnieje koszyk obrazów owoców i wprowadzamy go do modelu uczenia maszynowego. Obrazy są całkowicie nieznane modelowi, a zadaniem maszyny jest odnalezienie wzorów i kategorii obiektów.
Zatem teraz maszyna odkryje swoje wzorce i różnice, takie jak różnica koloru i kształtu, i przewidzi wynik podczas testowania z testowym zbiorem danych.
program macierzowy w języku c
Kategorie nienadzorowanego uczenia maszynowego
Uczenie się bez nadzoru można dalej podzielić na dwa typy, które podano poniżej:
1) Klastrowanie
Technikę grupowania stosuje się, gdy chcemy znaleźć nieodłączne grupy z danych. Jest to sposób grupowania obiektów w klastry, w którym obiekty o największym podobieństwie pozostają w jednej grupie i mają mniej podobieństw lub nie mają ich wcale z obiektami z innych grup. Przykładem algorytmu grupowania jest grupowanie klientów według ich zachowań zakupowych.
Poniżej podano niektóre z popularnych algorytmów grupowania:
2) Stowarzyszenie
Uczenie się reguł asocjacyjnych to technika uczenia się bez nadzoru, która pozwala znaleźć interesujące relacje między zmiennymi w dużym zbiorze danych. Głównym celem tego algorytmu uczenia się jest znalezienie zależności jednego elementu danych od innego elementu danych i odpowiednie zmapowanie tych zmiennych, aby wygenerować maksymalny zysk. Algorytm ten jest stosowany głównie w Analiza koszyka rynkowego, eksploracja wykorzystania sieci, produkcja ciągła itp.
Niektóre popularne algorytmy uczenia się reguł asocjacyjnych to: Algorytm Apriori, Eclat, algorytm wzrostu FP.
Zalety i wady algorytmu uczenia się bez nadzoru
Zalety:
- Algorytmy te można stosować do zadań skomplikowanych w porównaniu do zadań nadzorowanych, ponieważ algorytmy te działają na nieoznakowanym zbiorze danych.
- Do różnych zadań preferowane są algorytmy nienadzorowane, ponieważ uzyskanie nieoznakowanego zbioru danych jest łatwiejsze w porównaniu z oznaczonym zbiorem danych.
Niedogodności:
- Dane wyjściowe algorytmu nienadzorowanego mogą być mniej dokładne, ponieważ zbiór danych nie jest oznaczony etykietą, a algorytmy nie są wcześniej szkolone na podstawie dokładnych wyników.
- Praca z uczeniem bez nadzoru jest trudniejsza, ponieważ działa z nieoznakowanym zestawem danych, który nie jest mapowany z wynikami.
Zastosowania uczenia się bez nadzoru
3. Uczenie się częściowo nadzorowane
Uczenie się częściowo nadzorowane to rodzaj algorytmu uczenia maszynowego, który leży pomiędzy uczeniem maszynowym nadzorowanym i nienadzorowanym . Stanowi platformę pośrednią pomiędzy algorytmami uczenia się nadzorowanego (z oznakowanymi danymi szkoleniowymi) i uczenia się bez nadzoru (bez oznakowanych danych szkoleniowych) i wykorzystuje kombinację oznakowanych i nieoznaczonych zbiorów danych w okresie szkolenia.
A chociaż uczenie się częściowo nadzorowane stanowi środek pomiędzy uczeniem się nadzorowanym i nienadzorowanym i działa na danych składających się z kilku etykiet, składa się głównie z danych nieoznaczonych. Ponieważ etykiety są kosztowne, ale do celów korporacyjnych, mogą mieć kilka etykiet. Różni się całkowicie od uczenia się pod nadzorem i bez nadzoru, ponieważ opiera się na obecności i braku etykiet.
Aby przezwyciężyć wady algorytmów uczenia się pod nadzorem i uczenia się bez nadzoru, wprowadzono koncepcję uczenia się częściowo nadzorowanego . Głównym celem uczenia się częściowo nadzorowanego jest efektywne wykorzystanie wszystkich dostępnych danych, a nie tylko danych oznakowanych, jak w przypadku uczenia się nadzorowanego. Początkowo podobne dane są grupowane wraz z algorytmem uczenia się bez nadzoru, a ponadto pomaga to w etykietowaniu danych nieoznakowanych w dane opatrzone etykietą. Dzieje się tak dlatego, że dane oznakowane są stosunkowo kosztowniejszym pozyskiwaniem niż dane nieoznaczone.
Możemy sobie wyobrazić te algorytmy na przykładzie. Nauka pod nadzorem ma miejsce, gdy uczeń znajduje się pod nadzorem instruktora w domu i na uczelni. Co więcej, jeśli uczeń samodzielnie analizuje tę samą koncepcję bez pomocy instruktora, zalicza się to do uczenia się bez nadzoru. W ramach nauczania częściowo nadzorowanego uczeń musi dokonać ponownej oceny po przeanalizowaniu tej samej koncepcji pod okiem instruktora w college'u.
byki kontra wół
Zalety i wady uczenia się częściowo nadzorowanego
Zalety:
- Algorytm jest prosty i łatwy do zrozumienia.
- Jest bardzo wydajny.
- Służy do rozwiązywania wad algorytmów uczenia się nadzorowanego i nienadzorowanego.
Niedogodności:
- Wyniki iteracji mogą nie być stabilne.
- Nie możemy zastosować tych algorytmów do danych na poziomie sieci.
- Dokładność jest niska.
4. Uczenie się przez wzmacnianie
Uczenie się przez wzmacnianie działa w oparciu o proces oparty na informacjach zwrotnych, w którym agent AI (komponent oprogramowania) automatycznie bada otoczenie, uderzając i podążając, podejmując działania, ucząc się na podstawie doświadczeń i poprawiając swoje działanie. Agent zostaje nagrodzony za każde dobre działanie i zostaje ukarany za każde złe działanie; stąd celem agenta uczenia się przez wzmacnianie jest maksymalizacja nagród.
W uczeniu się przez wzmacnianie nie ma oznakowanych danych, takich jak uczenie się pod nadzorem, a agenci uczą się wyłącznie na podstawie swoich doświadczeń.
Proces uczenia się przez wzmacnianie jest podobny do ludzkiego; na przykład dziecko uczy się różnych rzeczy poprzez doświadczenia codziennego życia. Przykładem uczenia się przez wzmacnianie jest gra, w której Grą jest otoczenie, ruchy agenta na każdym kroku definiują stany, a celem agenta jest uzyskanie wysokiego wyniku. Agent otrzymuje informację zwrotną w zakresie kar i nagród.
Ze względu na sposób działania uczenie się przez wzmacnianie jest wykorzystywane w różnych dziedzinach, takich jak Teoria gier, badania operacyjne, teoria informacji, systemy wieloagentowe.
Problem uczenia się przez wzmacnianie można sformalizować za pomocą Proces decyzyjny Markowa (MDP). W MDP agent stale wchodzi w interakcję z otoczeniem i wykonuje akcje; przy każdym działaniu środowisko reaguje i generuje nowy stan.
Kategorie uczenia się przez wzmacnianie
Uczenie się przez wzmacnianie dzieli się głównie na dwa typy metod/algorytmów:
pyspark sql
Rzeczywiste przypadki użycia uczenia się przez wzmacnianie
Algorytmy RL są bardzo popularne w aplikacjach do gier. Służy do uzyskania nadludzkiej wydajności. Niektóre popularne gry korzystające z algorytmów RL to AlphaGO I AlfaGO Zero .
Artykuł „Zarządzanie zasobami za pomocą uczenia głębokiego wzmacniania” pokazał, jak używać RL w komputerze do automatycznego uczenia się i planowania zasobów tak, aby czekały na różne zadania, aby zminimalizować średnie spowolnienie pracy.
RL jest szeroko stosowany w zastosowaniach robotyki. Roboty są wykorzystywane w przemyśle i produkcji, a ich wydajność zwiększa się dzięki uczeniu się przez wzmacnianie. Istnieją różne branże, które mają swoją wizję budowania inteligentnych robotów z wykorzystaniem sztucznej inteligencji i technologii uczenia maszynowego.
Text-mining, jedno z największych zastosowań NLP, jest obecnie wdrażane przy pomocy Reinforcement Learning firmy Salesforce.
Zalety i wady uczenia się przez wzmacnianie
Zalety
- Pomaga w rozwiązywaniu złożonych problemów rzeczywistych, które są trudne do rozwiązania za pomocą ogólnych technik.
- Model uczenia się RL jest podobny do uczenia się ludzi; dzięki temu można uzyskać najdokładniejsze wyniki.
- Pomaga w osiągnięciu długoterminowych rezultatów.
Niekorzyść
- Algorytmy RL nie są preferowane w przypadku prostych problemów.
- Algorytmy RL wymagają ogromnych danych i obliczeń.
- Zbyt dużo uczenia się przez wzmacnianie może prowadzić do przeciążenia stanów, co może osłabić wyniki.
Przekleństwo wymiarowości ogranicza uczenie się przez wzmacnianie w rzeczywistych układach fizycznych.