Podklasa | IT , sztuczna inteligencja |
---|---|
Część | Sztuczna inteligencja |
Pole | Przyrostowy algorytm uczenia |
Uczenie maszynowe (w języku angielskim : uczenie maszynowe , . Dosłownie „ uczenie maszynowe ”), uczenie maszynowe i nauka statystyczna jest dziedziną badań nad sztuczną inteligencją , która opiera się na matematycznych i statystycznych metod, aby dać komputery zdolność do «uczyć się» od danych , to znaczy poprawić ich wydajność w rozwiązywaniu zadań bez wyraźnego zaprogramowania dla każdego z nich. Szerzej dotyczy projektowania, analizy, optymalizacji, rozwoju i wdrażania takich metod.
Uczenie maszynowe ma zazwyczaj dwie fazy. Pierwszym z nich jest oszacowanie modelu na podstawie danych, zwanych obserwacjami, które są dostępne iw skończonej liczbie w fazie projektowania systemu. Estymacja modelu polega na rozwiązaniu praktycznego zadania, takiego jak przetłumaczenie wypowiedzi , oszacowanie gęstości prawdopodobieństwa, rozpoznanie obecności kota na zdjęciu czy udział w prowadzeniu pojazdu autonomicznego. Ta tak zwana faza „uczenia się” lub „szkolenia” jest zwykle przeprowadzana przed praktycznym użyciem modelu. Druga faza odpowiada rozpoczęciu produkcji: ustalając model, można następnie przesłać nowe dane w celu uzyskania wyniku odpowiadającego pożądanemu zadaniu. W praktyce niektóre systemy mogą kontynuować naukę już w produkcji, o ile mają możliwość uzyskania informacji zwrotnej na temat jakości uzyskanych wyników.
W zależności od informacji dostępnych w fazie uczenia się, uczenie się jest kwalifikowane na różne sposoby. Jeśli dane są oznaczone etykietą (to znaczy, że odpowiedź na zadanie jest znana dla tych danych), jest to uczenie nadzorowane . O klasyfikacji lub klasyfikacji mówimy, jeśli etykiety są dyskretne, lub o regresji, jeśli są ciągłe. Jeżeli model jest uczony przyrostowo jako funkcja nagrody otrzymanej przez program za każde z podjętych działań, nazywa się to uczeniem ze wzmocnieniem . W najbardziej ogólnym przypadku, bez etykiety, próbujemy określić podstawową strukturę danych (która może być gęstością prawdopodobieństwa) i wtedy jest to kwestia uczenia się bez nadzoru . Uczenie maszynowe można zastosować do różnych typów danych, takich jak wykresy , drzewa , krzywe lub po prostu wektory cech , które mogą być ciągłymi lub dyskretnymi zmiennymi jakościowymi lub ilościowymi .
Od starożytności temat myślących maszyn zajmował umysły. Ta koncepcja jest podstawą myślenia o tym, co później stanie się sztuczną inteligencją , a także jedną z jej podgałęzi: uczenie maszynowe.
Urzeczywistnienie tego pomysłu to głównie zasługa Alana Turinga (brytyjski matematyk i kryptolog) i jego koncepcji „uniwersalnej maszyny” z 1936 roku, która jest podstawą dzisiejszych komputerów. Będzie nadal kładł podwaliny pod uczenie maszynowe, publikując w 1950 r. artykuł „Komputer i inteligencja”, w którym opracował m.in. test Turinga .
W 1943 neurofizjolog Warren McCulloch i matematyk Walter Pitts opublikowali artykuł opisujący funkcjonowanie neuronów poprzez przedstawienie ich za pomocą obwodów elektrycznych. Ta reprezentacja będzie teoretyczną podstawą sieci neuronowych .
Arthur Samuel , amerykański informatyk i pionier w dziedzinie sztucznej inteligencji, jako pierwszy użył wyrażenia machine learning (po francusku „uczenie maszynowe”) w 1959 roku, po stworzeniu swojego programu dla IBM w 1952 roku. Warcaby i stało się lepsze w grze. W końcu udało mu się pokonać 4 th najlepszego gracza w Stanach Zjednoczonych.
Dużym postępem w dziedzinie inteligencji maszynowej jest sukces komputera opracowanego przez IBM, Deep Blue , który jako pierwszy pokonał mistrza świata w szachach Garry'ego Kasparova w 1997 roku. Projekt Deep Blue zainspiruje wielu innych w kontekście sztucznych inteligencja, a zwłaszcza kolejne duże wyzwanie: IBM Watson , komputer, którego celem jest wygranie gry Jeopardy! . Cel ten został osiągnięty w 2011 roku, kiedy Watson wygrał w Jeopardy! odpowiadając na pytania za pomocą przetwarzania języka naturalnego.
W kolejnych latach głośne aplikacje uczenia maszynowego następowały po sobie znacznie szybciej niż wcześniej.
W 2012 roku sieć neuronowa opracowana przez Google zdołała rozpoznać ludzkie twarze, a także koty w filmach na YouTube .
W 2014 roku, 64 lata po przepowiedni Alana Turinga, pisarz dialogu Eugene Goostman jako pierwszy zdał test Turinga, przekonując 33% ludzkich sędziów po pięciu minutach rozmowy, że nie jest komputerem, ale 13-letnim Ukraińcem chłopiec.
W 2015 r. osiągnięto kolejny kamień milowy, kiedy komputer „ AlphaGo ” firmy Google wygrał z jednym z najlepszych graczy w grze Go , uważanej za najtrudniejszą na świecie.
W 2016 roku system sztucznej inteligencji oparty na uczeniu maszynowym o nazwie LipNet potrafi czytać z ruchu warg z dużym powodzeniem.
Uczenie maszynowe (AA) pozwala sterowanemu lub wspomaganemu komputerowo systemowi, takiemu jak program, sztuczna inteligencja lub robot, dostosowywać swoje reakcje lub zachowania do napotkanych sytuacji, w oparciu o analizę danych empirycznych z przeszłości z baz danych, czujników lub sieć.
AA pozwala przezwyciężyć trudność, która polega na tym, że zbiór wszystkich możliwych zachowań uwzględniający wszystkie możliwe dane wejściowe szybko staje się zbyt złożony, aby opisywać i programować w klasyczny sposób (mówi się o eksplozji kombinatorycznej ). Programom AA powierza się zatem zadanie dostosowania modelu w celu uproszczenia tej złożoności i wykorzystania go w sposób operacyjny. Najlepiej byłoby, gdyby uczenie się odbywało się bez nadzoru , tj. odpowiedzi na dane szkoleniowe nie są dostarczane do modelu.
Programy te, w zależności od stopnia zaawansowania, mogą obejmować probabilistyczne możliwości przetwarzania danych, analizę danych z czujników, rozpoznawanie (rozpoznawanie głosu, kształtu, pisma ręcznego itp.), eksplorację danych , informatykę teoretyczną ...
Uczenie maszynowe jest wykorzystywane w szerokim spektrum zastosowań, aby zapewnić komputerom lub maszynom możliwość analizy danych wejściowych takich jak: percepcja ich otoczenia ( wzrok , rozpoznawanie kształtów takich jak twarze , wzory, segmentacja obrazu , języki naturalne , pisane lub odręcznych znaków ; wyszukiwarki , analiza i indeksowanie obrazów i wideo , w szczególności wyszukiwanie obrazów według treści ; pomoc diagnostyczna , w szczególności medyczna, bioinformatyczna , chemoinformatyka ; interfejsy mózg-maszyna ; wykrywanie oszustw związanych z kartami kredytowymi , cyberbezpieczeństwo , analiza finansowa, w tym analiza giełdowa ; klasyfikacja sekwencji DNA; gry; inżynieria oprogramowania ; adaptacja stron internetowych; robotyka (lokomocja robotów itp. ); analiza predykcyjna w wielu dziedzinach (finanse, medycyna, prawo, sądownictwo).
Przykłady:
Algorytmy uczenia się można skategoryzować zgodnie ze stosowanym trybem uczenia.
Nadzorowana nauka Jeżeli klasy są z góry określone, a przykłady są znane, system uczy się klasyfikować zgodnie z modelem klasyfikacji lub klasyfikacji; następnie mówimy o uczeniu nadzorowanym (lub analizie dyskryminacyjnej ). Ekspert (lub oracle ) moszczu przykłady pierwszej etykiety. Proces przebiega w dwóch fazach. W pierwszej fazie (offline, zwanej uczeniem się ) chodzi o określenie modelu na podstawie oznaczonych danych. Druga faza (online, zwana test ) polega na przewidywaniu etykiety nowego elementu danych, znając wcześniej wyuczony model. Czasami lepiej jest powiązać fragment danych nie z pojedynczą klasą, ale z prawdopodobieństwem przynależności do każdej z wcześniej określonych klas (nazywa się to probabilistycznym uczeniem nadzorowanym).dawny. : Liniowa analiza dyskryminacyjna lub SVM są typowymi przykładami. Inny przykład: w oparciu o wspólne punkty wykrywana objawów innych pacjentów już znany ( przykłady ), system może kategoryzować nowych pacjentów na podstawie ich analizy medycznej, jak na przybliżony ryzyka ( prawdopodobieństwa ) rozwoju konkretnej choroby. Nauka nienadzorowana Gdy system lub operator ma tylko przykłady, ale nie ma etykiety, a liczba klas i ich charakter nie zostały z góry określone, mówimy o uczeniu się bez nadzoru lub klastrach w języku angielskim. Nie jest wymagany żaden ekspert. Algorytm musi sam odkryć mniej lub bardziej ukrytą strukturę danych. Partycjonowanie danych , grupowanie danych w języku angielskim, to algorytm uczenia bez nadzoru. System musi tu – w przestrzeni opisu (wszystkie dane) – celować dane według ich dostępnych atrybutów, aby zaklasyfikować je do jednorodnych grup przykładów. Podobieństwo na ogół obliczana na podstawie funkcji odległości między parami przykładów. Następnie do operatora należy skojarzenie lub wydedukowanie znaczenia dla każdej grupy i wzorów ( wzorców w języku angielskim) pojawiania się grup lub grup grup w ich „przestrzeni”. Mogą mu w tym pomóc różne narzędzia matematyczne i oprogramowanie . Mówimy również o analizie danych regresji (dostosowanie modelu za pomocą procedury typu najmniejszych kwadratów lub innej optymalizacji funkcji kosztu ). Jeśli podejście jest probabilistyczne (to znaczy, że każdy przykład, zamiast być sklasyfikowany w jednej klasie, charakteryzuje się zestawem prawdopodobieństw przynależności do każdej z klas), mówimy wtedy o „ miękkim grupowaniu ”(w przeciwieństwie do na „ twarde grupowanie ”). Ta metoda jest często źródłem zbiegów okoliczności .dawny. : Dla epidemiologa, który chciałby, w dość dużej grupie ofiar raka wątroby , spróbować przedstawić hipotezy wyjaśniające, komputer mógłby rozróżnić różne grupy, które epidemiolog próbowałby następnie powiązać z różnymi czynnikami wyjaśniającymi, pochodzeniem geograficznym, genetyka , nawyki konsumpcji lub praktyk ekspozycji na różne potencjalnie lub skutecznie trujące ( metale ciężkie , toksyny , takie jak aflatoksyny , etc. ). Nauka częściowo nadzorowana Przeprowadzony w sposób probabilistyczny lub nieprobabilistyczny, ma na celu ujawnienie leżącej u podstaw rozmieszczenia przykładów w ich przestrzeni opisu. Jest wdrażany, gdy brakuje danych (lub „etykiet”)… Model musi używać nieoznakowanych przykładów, które jednak mogą dostarczyć informacji.dawny. : W medycynie może być pomocą w diagnozie lub w wyborze najtańszego środka badań diagnostycznych. Częściowo nadzorowane uczenie się Probabilistyczne lub nie, gdy oznakowanie danych jest częściowe. Tak jest w przypadku, gdy model stwierdza, że dane nie należą do klasy A , ale być może do klasy B lub C ( A, B i C to trzy choroby wymienione na przykład w kontekście diagnostyki różnicowej ).: Nauka wzmacniania algorytm uczy się zachowania na podstawie obserwacji. Działanie algorytmu na środowisko wytwarza wartość zwrotną, która kieruje algorytmem uczącym się.dawny. : Algorytm Q-Learning jest klasycznym przykładem. Transfer nauki Transferowe uczenie się można postrzegać jako zdolność systemu do rozpoznawania i stosowania wiedzy i umiejętności wyniesionych z poprzednich zadań do nowych zadań lub obszarów, które mają podobieństwa. Pojawia się pytanie: jak zidentyfikować podobieństwa między zadaniem (zadaniami) docelowym (zadaniami) a zadaniem (zadaniami) źródłowym (zadaniami), a następnie jak przenieść wiedzę o zadaniu (zadaniach) źródłowym do zadania (zadań) docelowego (zadań)?Algorytmy można podzielić na cztery główne rodziny lub typy:
Dokładniej :
Metody te są często łączone w celu uzyskania różnych wariantów uczenia się. Wybór algorytmu silnie zależy od zadania do rozwiązania (klasyfikacja, szacowanie wartości…), od objętości i charakteru danych. Modele te są często oparte na modelach statystycznych .
Jakość uczenia się i analizy zależy od wcześniejszej i a priori potrzeby kompetencji operatora do przygotowania analizy. Zależy to również od złożoności modelu (specyficznego lub ogólnego), jego przydatności i dostosowania do leczonego tematu. Ostatecznie jakość pracy będzie zależeć również od trybu (wizualne wyróżnienie) wyników dla użytkownika końcowego (odpowiedni wynik może być ukryty w zbyt złożonym diagramie lub słabo podkreślony przez nieodpowiednią reprezentację graficzną).
Wcześniej jakość pracy będzie zależeć od początkowych czynników wiążących, związanych z bazą danych :
Uczenie maszynowe to nie tylko zestaw algorytmów, ale następujące po sobie kroki.
Większość z tych kroków można znaleźć w metodach i procesach projektów KDD, CRISP-DM i SEMMA , które dotyczą projektów eksploracji danych.
Autonomiczny samochód wydaje się możliwe w 2016 roku dzięki uczenia maszynowego i ogromnych ilości danych generowanych przez coraz podłączonego floty samochodów. W przeciwieństwie do tradycyjnych algorytmów (które przestrzegają z góry określonego zestawu reguł), uczenie maszynowe uczy się własnych reguł.
Czołowi innowatorzy w tej dziedzinie twierdzą, że postęp pochodzi z automatyzacji procesów. Ma to tę wadę, że proces uczenia maszynowego staje się sprywatyzowany i niejasny. Prywatyzowane, ponieważ algorytmy AA stwarzają gigantyczne możliwości ekonomiczne, a zaciemnione, ponieważ ich zrozumienie stoi za ich optymalizacją. Ten rozwój może podważyć zaufanie publiczne do uczenia maszynowego, ale co ważniejsze, długoterminowy potencjał bardzo obiecujących technik.
Autonomiczny samochód przedstawia ramy testowe do konfrontacji z uczeniem maszynowym w społeczeństwie. Rzeczywiście, nie tylko algorytm jest szkolony w ruchu drogowym i jego regułach, ale także na odwrót. Zasadę odpowiedzialności kwestionuje uczenie maszynowe, ponieważ algorytm nie jest już pisany, a raczej uczy się i rozwija rodzaj cyfrowej intuicji. Twórcy algorytmów nie są już w stanie zrozumieć „decyzji” podejmowanych przez ich algorytmy, a to przez samą matematyczną konstrukcję algorytmu uczenia maszynowego.
W przypadku samochodów AA i autonomicznych pojawia się kwestia odpowiedzialności w razie wypadku. Społeczeństwo musi udzielić odpowiedzi na to pytanie, stosując różne możliwe podejścia. W Stanach Zjednoczonych istnieje tendencja do oceniania technologii na podstawie jakości uzyskiwanych wyników, podczas gdy w Europie stosuje się zasadę ostrożności i istnieje większa tendencja do oceniania nowej technologii w porównaniu z poprzednimi. różnice w porównaniu z tym, co już wiadomo. W Europie i Stanach Zjednoczonych trwają procesy oceny ryzyka.
Kwestia odpowiedzialności jest tym bardziej skomplikowana, że priorytetem dla projektantów jest zaprojektowanie optymalnego algorytmu, a nie jego zrozumienie. Interpretowalność algorytmów jest niezbędna do zrozumienia decyzji, zwłaszcza gdy decyzje te mają głęboki wpływ na życie jednostek. To pojęcie interpretowalności, to znaczy zdolności do zrozumienia, dlaczego i jak działa algorytm, również podlega interpretacji.
Kwestia dostępności danych jest kontrowersyjna: w przypadku autonomicznych samochodów niektórzy bronią publicznego dostępu do danych, co pozwoliłoby na lepsze uczenie się algorytmów i nie koncentrowałoby tego „cyfrowego złota” w rękach „garstki osób”, a inni opowiadają się za prywatyzacją danych w imię wolnego rynku, nie zaniedbując faktu, że dobre dane są przewagą konkurencyjną, a tym samym ekonomiczną.
Pojawia się również kwestia wyborów moralnych związanych z decyzjami pozostawionymi algorytmom AA i samojezdnym samochodom w przypadku niebezpiecznych lub śmiertelnych sytuacji. Na przykład w przypadku awarii hamulców pojazdu i nieuniknionego wypadku, które życie należy ratować w pierwszej kolejności: pasażerów czy pieszych przechodzących przez ulicę?
W latach 2000-2010 uczenie maszynowe jest wciąż rozwijającą się, ale wszechstronną technologią, która teoretycznie jest zdolna do przyspieszenia tempa automatyzacji i samouczenia się. W połączeniu z pojawieniem się nowych sposobów wytwarzania, przechowywania i cyrkulacji energii, a także wszechobecnych komputerów, może to zakłócić technologie i społeczeństwo (podobnie jak silnik parowy i elektryczność. , a następnie ropa i informatyka w poprzednich rewolucjach przemysłowych) . generują nieoczekiwane innowacje i możliwości, ale z ryzykiem według niektórych obserwatorów utraty kontroli ze strony ludzi nad wieloma wykonywanymi przez nich zadaniami, nie będą już w stanie zrozumieć i które będą rutynowo wykonywane przez komputery i zrobotyzowane podmioty. sugeruje konkretne skutki, które są złożone i nadal niemożliwe do oszacowania na zatrudnienie, pracę i bardziej ogólnie gospodarkę i nierówności.Według
czasopisma Science z końca 2017 r.: „Skutki dla zatrudnienia są bardziej złożone niż proste zagadnienie zastępowania i zastępowania podkreślone przez niektórych. Ponieważ BA jest dziś stosunkowo ograniczona i nie stoimy w obliczu nieuchronnego „końca pracy”, jak to się czasem ogłasza, konsekwencje dla gospodarki i siły roboczej są głębokie” .
Kuszące jest czerpanie inspiracji z żywych istot bez naiwnego kopiowania ich w celu projektowania maszyn zdolnych do uczenia się. Pojęcia percepcji i pojęcia jako fizycznych zjawisk neuronowych spopularyzował również w świecie francuskojęzycznym Jean-Pierre Changeux . Uczenie maszynowe pozostaje przede wszystkim poddziedziną informatyki , ale jest operacyjnie ściśle powiązane z naukami kognitywnymi , neuronaukami , biologią i psychologią , i może na skrzyżowaniu tych dziedzin, nanotechnologii, biotechnologii, informatyki i kognitywistyki , doprowadzić do systemy sztucznej inteligencji o szerszej bazie. W Collège de France odbyły się zwłaszcza kursy publiczne , jeden prowadzony przez Stanislasa Dehaene'a poświęcony bayesowskiemu aspektowi neuronauki, a drugi przez Yanna LeCuna dotyczący teoretycznych i praktycznych aspektów głębokiego uczenia się .
Uczenie maszynowe wymaga do prawidłowego działania dużej ilości danych . Kontrolowanie integralności zbiorów danych może być trudne, zwłaszcza w przypadku danych generowanych przez sieci społecznościowe.
Jakość „decyzji” podejmowanych przez algorytm AA zależy nie tylko od jakości (a więc od ich jednorodności, rzetelności itp.) danych wykorzystywanych do uczenia, ale przede wszystkim od ich ilości. Tak więc w przypadku zbioru danych społecznościowych zebranych bez szczególnej uwagi na temat reprezentacji mniejszości, AA jest dla nich statystycznie niesprawiedliwa. Rzeczywiście, zdolność do podejmowania „dobrych” decyzji zależy od wielkości danych, które będą proporcjonalnie mniejsze w przypadku mniejszości.
AA nie rozróżnia obecnie przyczyn i korelacji na podstawie swojej matematycznej konstrukcji i nie jest w stanie wyjść poza ramy narzucone przez jej dane, więc nie ma możliwości ekstrapolacji .
Korzystanie z algorytmów uczenia maszynowego wymaga zatem znajomości struktury danych, która została wykorzystana do uczenia się podczas ich użytkowania. Dlatego pretensjonalne jest przypisywanie zbyt wielkich zalet algorytmom uczenia maszynowego.
Algorytm może być obciążony, gdy jego wynik odbiega od wyniku neutralnego, sprawiedliwego lub sprawiedliwego. W niektórych przypadkach błędy algorytmiczne mogą prowadzić do sytuacji dyskryminacji .
Dane mogą być również stronnicze, jeśli próbka danych użyta do trenowania modelu nie jest neutralna i reprezentatywna dla rzeczywistości lub niezrównoważona. Ten błąd jest następnie uczony i odtwarzany przez model.
Algorytmy uczenia maszynowego stwarzają problemy z ogólną wyjaśnialnością systemu. Podczas gdy niektóre modele, takie jak regresja liniowa lub regresja logistyczna, mają ograniczoną liczbę parametrów i mogą być interpretowane, inne typy modeli, takie jak sztuczne sieci neuronowe, nie mają oczywistej interpretacji.