Różnica między uczeniem maszynowym a uczeniem głębokim
Kluczowa różnica między uczeniem maszynowym a uczeniem głębokim
Główne różnice między uczeniem maszynowym a głębokim uczeniem to:
- Uczenie maszynowe zapewnia doskonałą wydajność w przypadku małego/średniego zbioru danych, podczas gdy głębokie uczenie się zapewnia doskonałą wydajność w przypadku dużego zbioru danych
- ML działa na maszynie z niższej półki, podczas gdy DL wymaga wydajnej maszyny, najlepiej z procesorem graficznym.
- Czas realizacji uczenia maszynowego wynosi od kilku minut do godzin, podczas gdy uczenie głębokie może trwać nawet tygodnie.
- Dzięki uczeniu maszynowemu potrzebujesz mniej danych do wytrenowania algorytmu niż w przypadku głębokiego uczenia się. Głębokie uczenie się wymaga obszernego i zróżnicowanego zestawu danych w celu zidentyfikowania podstawowej struktury.

Co to jest AI?
AI (AI) to dziedzina informatyki, w której maszyny są programowane i otrzymują zdolność poznawczą do myślenia i naśladowania działań podobnych do ludzi i zwierząt. Punktem odniesienia dla sztucznej inteligencji jest ludzka inteligencja w zakresie rozumowania, mowy, uczenia się, wizji i rozwiązywania problemów, co jest odległą przyszłością.
AI ma trzy różne poziomy
1) Wąska AI: Mówi się, że AI jest wąska, gdy maszyna może wykonać określone zadanie lepiej niż człowiek. Aktualne badania nad sztuczną inteligencją są już dostępne
2) Ogólna AI: Sztuczna inteligencja osiąga stan ogólny, w którym może wykonać dowolne zadanie intelektualne z taką samą dokładnością, jak zrobiłby to człowiek
3) Aktywna AI: Sztuczna inteligencja jest aktywna, gdy może pokonać ludzi w wielu zadaniach
Wczesne systemy AI wykorzystywały dopasowywanie wzorców i systemy eksperckie.
Co to jest uczenie maszynowe (ML)?
ML (Nauczanie maszynowe) jest typem sztucznej inteligencji, w którym komputer jest szkolony do automatyzacji zadań, które są wyczerpujące lub niemożliwe do wykonania dla ludzi. Jest to najlepsze narzędzie do analizowania, rozumienia i identyfikowania wzorców w danych w oparciu o badanie algorytmów komputerowych. Uczenie maszynowe może podejmować decyzje przy minimalnej ingerencji człowieka.
Porównując Artificial Intelligence W porównaniu z uczeniem maszynowym, uczenie maszynowe wykorzystuje dane do zasilania algorytmu, który może zrozumieć związek między danymi wejściowymi i wyjściowymi. Kiedy maszyna zakończy naukę, może przewidzieć wartość lub klasę nowego punktu danych.
Co to jest głębokie uczenie (DL)?
Głębokie uczenie się to oprogramowanie komputerowe, które naśladuje sieć neuronów w mózgu. Jest to podzbiór uczenia maszynowego i nazywa się je głębokim uczeniem, ponieważ wykorzystuje głębokie sieci neuronowe. Maszyna używa różnych warstw do uczenia się z danych. Głębokość modelu jest reprezentowana przez liczbę warstw w modelu. Głębokie uczenie się to nowy stan techniki w zakresie sztucznej inteligencji. W głębokim uczeniu się faza uczenia się odbywa się za pośrednictwem sieci neuronowej. Sieć neuronowa to architektura, w której warstwy są ułożone jedna na drugiej
Różnica między uczeniem maszynowym a uczeniem głębokim
Poniżej znajduje się kluczowa różnica między głębokim uczeniem a uczeniem maszynowym
Parametr | Nauczanie maszynowe | głęboki Learning |
---|---|---|
Zależności danych | Doskonała wydajność na małym/średnim zestawie danych | Doskonała wydajność na dużym zestawie danych |
Zależności sprzętowe | Pracuj na maszynie z niższej półki. | Wymaga mocnej maszyny, najlepiej z procesorem graficznym: DL wykonuje znaczną część mnożenia macierzy |
Inżynieria cech | Należy zrozumieć funkcje reprezentujące dane | Nie trzeba rozumieć najlepszej funkcji reprezentującej dane |
Czas egzekucji | Od kilku minut do godzin | Do tygodni. Sieć neuronowa musi obliczyć znaczną liczbę wag |
Interpretowalność | Niektóre algorytmy są łatwe do zinterpretowania (logistyka, drzewo decyzyjne), niektóre są niemal niemożliwe do zinterpretowania (SVM, XGBoost) | Trudne do niemożliwego |
Kiedy stosować ML lub DL?
W poniższej tabeli podsumowujemy różnice pomiędzy uczenie maszynowe i głęboka nauka z przykładami.
Parametr | Nauczanie maszynowe | głęboki Learning |
---|---|---|
Zbiór danych szkoleniowych | Mały | Duży |
Wybierz funkcje | Tak | Nie |
Liczba algorytmów | Wiele | Mało |
Czas na trening | Short | długo |
W przypadku uczenia maszynowego do trenowania algorytmu potrzeba mniej danych niż w przypadku głębokiego uczenia. Głębokie uczenie wymaga rozległego i zróżnicowanego zestawu danych, aby zidentyfikować podstawową strukturę. Ponadto uczenie maszynowe zapewnia szybciej trenowany model. Trening większości zaawansowanej architektury głębokiego uczenia może trwać od kilku dni do tygodnia. Zaletą głębokiego uczenia się nad uczeniem maszynowym jest jego wysoka dokładność. Nie musisz rozumieć, które cechy najlepiej reprezentują dane; sieć neuronowa nauczyła się, jak wybierać krytyczne cechy. W uczeniu maszynowym musisz samodzielnie wybrać, jakie cechy uwzględnić w modelu.
Proces uczenia maszynowego
Wyobraź sobie, że masz zbudować program rozpoznający obiekty. Aby wytrenować model, użyjesz a klasyfikator. Klasyfikator wykorzystuje cechy obiektu, aby spróbować zidentyfikować klasę, do której należy.
W tym przykładzie klasyfikator zostanie przeszkolony w zakresie wykrywania, czy obraz jest:
- Rower
- Łódź
- Samochód
- Samolot
Cztery powyższe obiekty to klasa, którą klasyfikator musi rozpoznać. Aby skonstruować klasyfikator, musisz mieć pewne dane wejściowe i przypisać im etykietę. Algorytm pobierze te dane, znajdzie wzór, a następnie zaklasyfikuje go do odpowiedniej klasy.
To zadanie nazywa się Nadzorowana nauka. W przypadku uczenia nadzorowanego dane szkoleniowe podawane do algorytmu zawierają etykietę.
Uczenie algorytmu wymaga wykonania kilku standardowych kroków:
- Zbierz dane
- Trenuj klasyfikator
- Snuć przypuszczenia
Pierwszy krok jest konieczny, wybranie właściwych danych zadecyduje o sukcesie lub porażce algorytmu. Dane wybrane do trenowania modelu nazywane są a cecha. W przykładzie obiektu cechami są piksele obrazów.
Każdy obraz jest wierszem danych, a każdy piksel jest kolumną. Jeśli obraz ma rozmiar 28×28, zbiór danych zawiera 784 kolumny (28×28). Na poniższym obrazku każdy obraz został przekształcony w wektor cech. Etykieta informuje komputer, jaki obiekt znajduje się na obrazku.
Celem jest wykorzystanie tych danych szkoleniowych do klasyfikacji typu obiektu. Pierwszy krok polega na utworzeniu kolumn cech. Następnie drugi krok polega na wyborze algorytmu do uczenia modelu. Po zakończeniu uczenia model przewidzi, który obraz odpowiada jakiemu obiektowi.
Następnie można łatwo wykorzystać model do przewidywania nowych obrazów. Dla każdego nowego obrazu wprowadzanego do modelu maszyna będzie przewidywać klasę, do której należy. Na przykład przez model przechodzi zupełnie nowy obraz bez etykiety. Dla człowieka wizualizacja obrazu jako samochodu jest banalna. Maszyna wykorzystuje swoją wcześniejszą wiedzę do przewidywania, czy obraz przedstawia samochód.
Proces głębokiego uczenia się
W głębokim uczeniu się faza uczenia odbywa się za pośrednictwem sieci neuronowej. Sieć neuronowa to architektura, w której warstwy są ułożone jedna na drugiej.
Rozważ ten sam przykład obrazu powyżej. Zbiór uczący byłby przesyłany do sieci neuronowej
Każde wejście trafia do neuronu i jest mnożone przez wagę. Wynik mnożenia przepływa do kolejnej warstwy i staje się danymi wejściowymi. Proces ten powtarza się dla każdej warstwy sieci. Ostatnia warstwa nazywana jest warstwą wyjściową; zapewnia rzeczywistą wartość zadania regresji i prawdopodobieństwo każdej klasy dla zadania klasyfikacji. Sieć neuronowa wykorzystuje algorytm matematyczny do aktualizacji wag wszystkich neuronów. Sieć neuronowa jest w pełni wytrenowana, gdy wartość wag daje wynik zbliżony do rzeczywistości. Na przykład dobrze wyszkolona sieć neuronowa może rozpoznać obiekt na obrazie z większą dokładnością niż tradycyjna sieć neuronowa.
Zautomatyzuj ekstrakcję funkcji za pomocą DL
Zbiór danych może zawierać od kilkunastu do setek obiektów. System będzie się uczyć na podstawie znaczenia tych funkcji. Jednak nie wszystkie funkcje mają znaczenie dla algorytmu. Kluczową częścią uczenia maszynowego jest znalezienie odpowiedniego zestawu funkcji, dzięki którym system się czegoś nauczy.
Jednym ze sposobów wykonania tej części w uczeniu maszynowym jest użycie ekstrakcji cech. Ekstrakcja cech łączy istniejące cechy, aby utworzyć bardziej odpowiedni zestaw cech. Można to zrobić za pomocą PCA, T-SNE lub dowolnych innych algorytmów redukcji wymiarowości.
Na przykład podczas przetwarzania obrazu specjalista musi ręcznie wyodrębnić z obrazu cechy, takie jak oczy, nos, usta i tak dalej. Wyodrębnione cechy są wprowadzane do modelu klasyfikacji.
Głębokie uczenie się rozwiązuje ten problem, szczególnie w przypadku sieci neuronowej splotowej. Pierwsza warstwa sieci neuronowej nauczy się małych szczegółów z obrazu; kolejne warstwy połączą poprzednią wiedzę, aby uzyskać bardziej złożone informacje. W sieci neuronowej splotowej ekstrakcja cech odbywa się przy użyciu filtra. Sieć stosuje filtr do obrazu, aby sprawdzić, czy istnieje dopasowanie, tj. kształt cechy jest identyczny z częścią obrazu. Jeśli istnieje dopasowanie, sieć użyje tego filtra. Proces ekstrakcji cech odbywa się zatem automatycznie.
Podsumowanie
Artificial Intelligence przekazuje maszynie zdolności poznawcze. Porównując sztuczną inteligencję z uczeniem maszynowym, wczesne systemy sztucznej inteligencji wykorzystywały systemy dopasowywania wzorców i systemy eksperckie.
Ideą uczenia maszynowego jest to, że maszyna może uczyć się bez interwencji człowieka. Maszyna musi znaleźć sposób, aby nauczyć się rozwiązywać zadanie, mając dane.
Deep learning to przełom w dziedzinie sztucznej inteligencji. Gdy jest wystarczająco dużo danych do trenowania, głębokie uczenie pozwala osiągnąć imponujące wyniki, szczególnie w przypadku rozpoznawania obrazów i tłumaczenia tekstu. Głównym powodem jest to, że ekstrakcja cech odbywa się automatycznie w różnych warstwach sieci.