Spis treści[Ukryć][Pokazać]
Świat szybko się zmienia dzięki sztucznej inteligencji i uczeniu maszynowemu, które ma wpływ na każdy aspekt naszego codziennego życia.
Od asystentów głosowych, którzy używają NLP i uczenia maszynowego do umawiania spotkań, wyszukiwania wydarzeń w naszym kalendarzu i odtwarzania muzyki, po urządzenia, które są tak dokładne, że mogą przewidzieć nasze potrzeby, zanim nawet je rozważymy.
Komputery mogą grać w szachy, wykonywać operacje i rozwijać się w inteligentniejsze, bardziej ludzkie maszyny za pomocą algorytmów uczenia maszynowego.
Znajdujemy się w okresie ciągłego postępu technologicznego, a obserwując, jak komputery rozwijały się w czasie, możemy przewidywać, co wydarzy się w przyszłości.
Demokratyzacja narzędzi i metod obliczeniowych jest jednym z kluczowych aspektów tej wyróżniającej się rewolucji. Badacze danych stworzyli potężne komputery przetwarzające dane w ciągu ostatnich pięciu lat, bez wysiłku wdrażając najnowocześniejsze metodologie. Wyniki są zdumiewające.
W tym poście przyjrzymy się uważnie uczenie maszynowe algorytmy i wszystkie ich odmiany.
Czym więc są algorytmy uczenia maszynowego?
Podejście stosowane przez system sztucznej inteligencji do wykonywania swojego zadania — na ogół przewidywanie wartości wyjściowych na podstawie danych wejściowych — jest znane jako algorytm uczenia maszynowego.
Algorytm uczenia maszynowego to proces, który wykorzystuje dane i służy do tworzenia modeli uczenia maszynowego gotowych do produkcji. Jeśli uczenie maszynowe jest pociągiem, który wykonuje pracę, to algorytmy uczenia maszynowego są lokomotywami, które popychają pracę.
Najlepsze podejście do uczenia maszynowego będzie zależeć od problemu biznesowego, który próbujesz rozwiązać, typu używanego zestawu danych oraz dostępnych zasobów.
Algorytmy uczenia maszynowego to te, które przekształcają zbiór danych w model. W zależności od rodzaju problemu, na który próbujesz odpowiedzieć, dostępnej mocy przetwarzania i rodzaju posiadanych danych, algorytmy nadzorowane, nienadzorowane lub algorytmy uczenia wzmacniającego mogą działać dobrze.
Rozmawialiśmy więc o uczeniu nadzorowanym, nienadzorowanym i wzmacniającym, ale czym one są? Zbadajmy je.
Nauka nadzorowana, nienadzorowana i wzmacniana
Nadzorowana nauka
W nadzorowanym uczeniu się model AI jest opracowywany na podstawie dostarczonych danych wejściowych i etykiety, która reprezentuje przewidywany wynik. Na podstawie danych wejściowych i wyjściowych model opracowuje równanie mapujące i korzystając z tego równania mapującego prognozuje etykietę danych wejściowych w przyszłości.
Powiedzmy, że musimy stworzyć model, który potrafi odróżnić psa od kota. Wiele zdjęć kotów i psów jest wprowadzanych do modelu z etykietami wskazującymi, czy są to koty czy psy, aby wyszkolić model.
Model stara się ustalić równanie wiążące etykiety na zdjęciach wejściowych z tymi obrazami. Nawet jeśli model nigdy wcześniej nie widział obrazu, po szkoleniu potrafi rozpoznać, czy jest to kot, czy pies.
Uczenie się bez nadzoru
Uczenie nienadzorowane obejmuje trenowanie modelu AI tylko na danych wejściowych bez ich etykietowania. Model dzieli dane wejściowe na grupy o powiązanych cechach.
Przyszła etykieta danych wejściowych jest następnie prognozowana w zależności od tego, jak bardzo jej atrybuty odpowiadają jednej z klasyfikacji. Rozważmy sytuację, w której musimy podzielić grupę czerwonych i niebieskich kulek na dwie kategorie.
Załóżmy, że pozostałe cechy kulek są identyczne, z wyjątkiem koloru. Na podstawie tego, jak może podzielić piłki na dwie klasy, model szuka cech różniących się między piłkami.
Dwa skupiska kulek — jedna niebieska i jedna czerwona — powstają, gdy kulki są podzielone na dwie grupy na podstawie ich odcienia.
Uczenie się ze wzmocnieniem
W uczeniu się przez wzmacnianie model AI dąży do maksymalizacji ogólnego zysku, działając tak dobrze, jak może w określonych okolicznościach. Informacje zwrotne na temat wcześniejszych wyników pomagają modelowi się uczyć.
Pomyśl o scenariuszu, w którym robot otrzymuje polecenie wybrania trasy między punktami A i B. Robot najpierw wybiera jeden z kursów, ponieważ nie ma wcześniejszego doświadczenia.
Robot otrzymuje informacje o trasie, którą pokonuje i zdobywa z niej wiedzę. Robot może wykorzystać dane wejściowe, aby naprawić problem następnym razem, gdy napotka podobną okoliczność.
Na przykład, jeśli robot wybierze opcję B i otrzyma nagrodę, taką jak pozytywna informacja zwrotna, tym razem rozumie, że musi wybrać sposób B, aby zwiększyć swoją nagrodę.
Teraz wreszcie, na co wszyscy czekacie, to algorytmy.
Główne algorytmy uczenia maszynowego
1. Regresja liniowa
Najprostszym podejściem do uczenia maszynowego, które odbiega od uczenia nadzorowanego, jest regresja liniowa. Mając wiedzę na temat zmiennych niezależnych, jest ona najczęściej wykorzystywana do rozwiązywania problemów regresji i tworzenia prognoz na podstawie zmiennych ciągłych zależnych.
Celem regresji liniowej jest znalezienie linii najlepszego dopasowania, która może pomóc w przewidywaniu wyniku dla zmiennych ciągłych zależnych. Ceny domów, wiek i płace to tylko niektóre przykłady wartości ciągłych.
Model znany jako prosta regresja liniowa wykorzystuje linię prostą do obliczenia związku między jedną zmienną niezależną a jedną zmienną zależną. W wielokrotnej regresji liniowej występują więcej niż dwie zmienne niezależne.
Model regresji liniowej ma cztery podstawowe założenia:
- Liniowość: Istnieje liniowy związek między X a średnią Y.
- Homoskedastyczność: dla każdej wartości X wariancja rezydualna jest taka sama.
- Niezależność: Obserwacje są od siebie niezależne pod względem niezależności.
- Normalność: Gdy X jest ustalone, Y ma rozkład normalny.
Regresja liniowa znakomicie sprawdza się w przypadku danych, które można rozdzielić wzdłuż linii. Może kontrolować nadmierne dopasowanie za pomocą technik regularyzacji, weryfikacji krzyżowej i redukcji wymiarów. Jednak zdarzają się sytuacje, w których wymagana jest rozbudowana inżynieria funkcji, co czasami może skutkować nadmiernym dopasowaniem i hałasem.
2. Regresja logistyczna
Regresja logistyczna to kolejna technika uczenia maszynowego, która odbiega od uczenia nadzorowanego. Jego głównym zastosowaniem jest klasyfikacja, ale można go również wykorzystać do problemów z regresją.
Regresja logistyczna służy do prognozowania zmiennej zależnej kategorialnej z wykorzystaniem informacji z czynników niezależnych. Celem jest sklasyfikowanie wyników, które mogą mieścić się tylko w zakresie od 0 do 1.
Suma ważona danych wejściowych jest przetwarzana przez funkcję sigmoid, funkcję aktywacji, która konwertuje wartości z zakresu od 0 do 1.
Podstawą regresji logistycznej jest estymacja największego prawdopodobieństwa, metoda obliczania parametrów założonego rozkładu prawdopodobieństwa na podstawie określonych obserwowanych danych.
3. Drzewo decyzyjne
Inną metodą uczenia maszynowego, która oddziela się od uczenia nadzorowanego, jest drzewo decyzyjne. Zarówno w przypadku klasyfikacji, jak i regresji można zastosować podejście oparte na drzewie decyzyjnym.
To narzędzie do podejmowania decyzji, które przypomina drzewo, wykorzystuje reprezentacje wizualne, aby pokazać potencjalne wyniki, koszty i reperkusje działań. Dzieląc dane na oddzielne części, idea jest analogiczna do ludzkiego umysłu.
Dane zostały podzielone na odrębne części tak bardzo, jak mogliśmy je granulować. Głównym celem drzewa decyzyjnego jest zbudowanie modelu szkoleniowego, który można wykorzystać do prognozowania klasy zmiennej docelowej. Brakujące wartości mogą być obsługiwane automatycznie za pomocą drzewa decyzyjnego.
Nie ma wymogu jednokrotnego kodowania, fikcyjnych zmiennych ani innych etapów wstępnej obróbki danych. Jest sztywny w tym sensie, że trudno jest dodać do niego świeże dane. Jeśli masz dodatkowe dane oznaczone etykietą, powinieneś ponownie przeszkolić drzewo na całym zbiorze danych.
W rezultacie drzewa decyzyjne są złym wyborem dla każdej aplikacji wymagającej dynamicznej zmiany modelu.
W zależności od rodzaju zmiennej docelowej drzewa decyzyjne dzielą się na dwa typy:
- Zmienna kategorialna: drzewo decyzyjne, w którym zmienna celu jest kategorialna.
- Zmienna ciągła: drzewo decyzyjne, w którym zmienna celu jest ciągła.
4. Losowy las
Metoda losowego lasu jest kolejną techniką uczenia maszynowego i jest nadzorowanym algorytmem uczenia maszynowego, szeroko stosowanym w kwestiach klasyfikacji i regresji. Jest to również metoda oparta na drzewie, podobna do drzewa decyzyjnego.
Las drzew, lub wiele drzew decyzyjnych, jest wykorzystywany do osądów metodą losowego lasu. Podczas obsługi zadań klasyfikacji metoda lasu losowego wykorzystywała zmienne kategorialne podczas obsługi zadań regresji z zestawami danych zawierającymi zmienne ciągłe.
Zespół lub mieszanie wielu modeli jest tym, co robi metoda lasu losowego, co oznacza, że prognozy są dokonywane przy użyciu grupy modeli, a nie tylko jednego.
Możliwość wykorzystania zarówno do problemów z klasyfikacją, jak i regresją, które stanowią większość nowoczesnych systemów uczenia maszynowego, jest kluczową zaletą lasu losowego.
Ensemble stosuje dwie różne strategie:
- Bagging: W ten sposób powstaje więcej danych dla zestawu danych treningowych. Aby zmniejszyć zmienność prognoz, jest to zrobione.
- Boosting to proces łączenia słabych uczniów z silnymi uczniami poprzez budowanie kolejnych modeli, co daje ostateczny model z maksymalną dokładnością.
5. Naiwny Bayes
Problem klasyfikacji binarnej (dwuklasowej) i wieloklasowej można rozwiązać za pomocą techniki Naive Bayes. Gdy metoda jest wyjaśniona przy użyciu binarnych lub kategorii wartości wejściowych, jest najłatwiejsza do zrozumienia. Założenie dokonane przez klasyfikator Naive Bayes jest takie, że istnienie jednej cechy w klasie nie ma wpływu na obecność jakichkolwiek innych cech.
Powyższy wzór wskazuje:
- P(H): Prawdopodobieństwo, że hipoteza H jest poprawna. Prawdopodobieństwo a priori jest określane jako to.
- P(E): Prawdopodobieństwo dowodów
- P(E|H): Prawdopodobieństwo, że hipoteza jest poparta dowodami.
- P(H|E): Prawdopodobieństwo, że hipoteza jest prawdziwa, biorąc pod uwagę dowody.
Klasyfikator Naive Bayes brałby pod uwagę każdą z tych cech indywidualnie podczas określania prawdopodobieństwa określonego wyniku, nawet jeśli te atrybuty są ze sobą powiązane. Naiwny model bayesowski jest prosty w konstrukcji i skuteczny w przypadku dużych zestawów danych.
Wiadomo, że działa lepiej niż nawet najbardziej złożone techniki kategoryzacji, będąc jednocześnie podstawowym. Jest to zbiór algorytmów opartych na twierdzeniu Bayesa, a nie na pojedynczej metodzie.
6. K-Najbliżsi sąsiedzi
Technika K-najbliższych sąsiadów (kNN) jest podzbiorem nadzorowanego uczenia maszynowego, którego można użyć do rozwiązywania problemów z klasyfikacją i regresją. Algorytm KNN zakłada, że w pobliżu można znaleźć porównywalne obiekty.
Wspominam to jako zgromadzenie podobnie myślących osób. kNN wykorzystuje ideę podobieństwa między innymi punktami danych, wykorzystując bliskość, bliskość lub odległość. Aby oznaczyć niewidoczne dane w oparciu o najbliższe oznakowane obserwowalne punkty danych, stosuje się metodę matematyczną w celu określenia separacji między punktami na wykresie.
Musisz określić odległość między punktami danych, aby zidentyfikować najbliższe porównywalne miejsca. W tym celu można wykorzystać pomiary odległości, takie jak odległość euklidesowa, odległość Hamminga, odległość Manhattan i odległość Minkowskiego. K jest znany jako numer najbliższego sąsiada i często jest liczbą nieparzystą.
KNN można zastosować do problemów klasyfikacji i regresji. Przewidywanie wykonane, gdy KNN jest używane do problemów regresji, opiera się na średniej lub medianie K-najbardziej podobnych zdarzeń.
Wynik algorytmu klasyfikacji opartego na KNN można określić jako klasę o największej częstotliwości spośród K najbardziej podobnych zdarzeń. Każda instancja zasadniczo oddaje głos na swoją klasę, a przewidywanie należy do klasy, która otrzyma najwięcej głosów.
7. K-oznacza
Jest to technika uczenia nienadzorowanego, która rozwiązuje problemy klastrowania. Zbiory danych są podzielone na pewną liczbę skupień — nazwijmy to K — w taki sposób, że punkty danych każdego skupienia są jednorodne i różne od punktów w innych skupieniach.
Metodologia grupowania K-średnich:
- Dla każdego klastra algorytm K-średnich wybiera k centroidów lub punktów.
- W przypadku najbliższych centroidów lub K klastrów każdy punkt danych tworzy klaster.
- Obecnie produkowane są nowe centroidy w zależności od już obecnych członków klastra.
- Najbliższa odległość dla każdego punktu danych jest obliczana przy użyciu tych zaktualizowanych centroidów. Dopóki centroidy się nie zmieniają, proces ten jest powtarzany.
Jest szybszy, bardziej niezawodny i łatwiejszy do zrozumienia. Jeśli występują problemy, adaptacyjność k-średnich sprawia, że korekty są proste. Gdy zbiory danych są różne lub dobrze odizolowane od siebie, wyniki są najlepsze. Nie może zarządzać błędnymi danymi lub wartościami odstającymi.
8. Wsparcie maszyn wektorowych
Podczas używania techniki SVM do klasyfikowania danych surowe dane są wyświetlane jako kropki w przestrzeni n-wymiarowej (gdzie n to liczba posiadanych cech). Dane można następnie łatwo sklasyfikować, ponieważ wartość każdej cechy jest następnie połączona z określoną współrzędną.
Aby oddzielić dane i umieścić je na wykresie, użyj linii znanych jako klasyfikatory. W tym podejściu każdy punkt danych jest wykreślany jako punkt w przestrzeni n-wymiarowej, gdzie n jest liczbą posiadanych cech, a wartość każdej cechy jest określoną wartością współrzędnych.
Zlokalizujemy teraz linię dzielącą dane na dwa zestawy danych, które zostały inaczej skategoryzowane. Odległości od najbliższych punktów w każdej z dwóch grup będą najbardziej oddalone wzdłuż tej linii.
Ponieważ dwa najbliższe punkty to te, które są najbardziej oddalone od linii w powyższym przykładzie, linia dzieląca dane na dwie grupy, które zostały podzielone na różne kategorie, jest linią środkową. Nasz klasyfikator to ta linia.
9. Redukcja wymiarowości
Stosując podejście redukcji wymiarowości, dane treningowe mogą mieć mniej zmiennych wejściowych. Mówiąc prościej, odnosi się do procesu zmniejszania rozmiaru zestawu funkcji. Wyobraźmy sobie, że Twój zbiór danych ma 100 kolumn; redukcja wymiarów zmniejszy tę kwotę do 20 kolumn.
Model automatycznie staje się bardziej wyrafinowany i wiąże się z większym ryzykiem nadmiernego dopasowania wraz ze wzrostem liczby funkcji. Największym problemem związanym z pracą z danymi w większych wymiarach jest tzw. „przekleństwo wymiarowości”, które występuje, gdy dane zawierają nadmierną liczbę cech.
Do redukcji wymiarowości można użyć następujących elementów:
- Aby znaleźć i wybrać odpowiednie cechy, stosuje się selekcję cech.
- Korzystając z już istniejących funkcji, inżynieria funkcji ręcznie tworzy nowe funkcje.
Wnioski
Możliwe jest zarówno nienadzorowane, jak i nadzorowane uczenie maszynowe. Wybierz uczenie nadzorowane, jeśli Twoje dane są mniej obfite i dobrze oznakowane do szkolenia.
Duże zbiory danych często działałyby i dawały lepsze wyniki przy wykorzystaniu uczenia się nienadzorowanego. Głęboka nauka Metody są najlepsze, jeśli dysponujesz pokaźnym zbiorem danych, który jest łatwo dostępny.
Uczenie się przez wzmocnienie i głębokie uczenie się przez wzmacnianie to niektóre tematy, które studiowałeś. Charakterystyka, zastosowania i ograniczenia sieci neuronowych są teraz dla Ciebie jasne. Na koniec rozważyłeś opcje dla różnych języków programowania, IDE i platform, jeśli chodzi o tworzenie własnych modele uczenia maszynowego.
Następną rzeczą, którą musisz zrobić, to zacząć uczyć się i używać każdego uczenie maszynowe zbliżać się. Nawet jeśli temat jest szeroki, każdy temat można zrozumieć w kilka godzin, jeśli skupisz się na jego głębi. Każdy przedmiot jest oddzielony od pozostałych.
Musisz myśleć o jednym problemie na raz, przestudiować go, zastosować w praktyce i użyć wybranego języka, aby zaimplementować w nim algorytm(y).
Dodaj komentarz