Sztuczna inteligencja jest bardzo szeroką dziedziną i obejmuje wiele bardzo głębokich dziedzin informatyki, matematyki, projektowania sprzętu, a nawet biologii i psychologii. Jeśli chodzi o matematykę: uważam, że rachunek, statystyki i optymalizacja są najważniejszymi tematami, ale nauczenie się jak największej ilości matematyki nie zaszkodzi.
Istnieje wiele dobrych bezpłatnych materiałów wprowadzających na temat sztucznej inteligencji dla początkujących. Bardzo polecam zacząć od tego:
http://aiplaybook.a16z.com/
Opublikowali także dwa filmy o ogólnych koncepcjach sztucznej inteligencji, które można znaleźć na Vimeo: „AI, głębokie uczenie się i uczenie maszynowe: elementarz ”i„ Obietnica AI ”
Po dokładnym zrozumieniu podstawowych warunków i podejść dotyczących sztucznej inteligencji musisz dowiedzieć się, jakie są Twoje cele. Jakie oprogramowanie AI chcesz opracować? Jakimi branżami jesteś zainteresowany? Jakie masz szanse na zaangażowanie w projekty dużych firm? Łatwiej jest wybrać odpowiednie narzędzia, gdy dokładnie wiesz, co chcesz osiągnąć.
Dla większości nowicjuszy w AI najciekawszym obszarem jest Deep Learning. Żeby było jasne, istnieje wiele obszarów sztucznej inteligencji poza uczeniem maszynowym i istnieje wiele obszarów uczenia maszynowego poza uczeniem głębokim. (Sztuczna inteligencja> Uczenie maszynowe> Głębokie uczenie się) Większość najnowszych osiągnięć i nowości dotyczą DL.
Jeśli zainteresowałeś się również głębokim uczeniem się, musisz zacząć od poznania koncepcji sztucznych sieci neuronowych. Na szczęście zrozumienie podstaw nie jest zbyt trudne, w Internecie jest wiele samouczków, przykładów kodu i bezpłatnych zasobów edukacyjnych, a także istnieje wiele platform open source do eksperymentowania.
Najbardziej popularną platformą do głębokiego uczenia się jest TensorFlow. Jest wspierany przez Google. Uwielbiam to lub nienawidzę, jest to framework oparty na języku Python. Istnieje również wiele innych struktur opartych na języku Python. Scikit-learn, Theano, Keras są często wymieniane również w tutorialach. (Wskazówka: jeśli używasz systemu Windows, możesz pobrać WinPython, który zawiera wszystkie te frameworki).
Jeśli chodzi o frameworki Java, niestety nie ma tak wielu opcji. Najbardziej znanym frameworkiem Java dla DL jest Deeplearning4j. Jest rozwijany przez małą firmę, a jego baza użytkowników jest znacznie mniejsza niż tłum wokół TensorFlow. Jest mniej projektów i samouczków dla tego frameworka. Jednak specjaliści branżowi twierdzą, że platformy oparte na Javie ostatecznie lepiej integrują się z rozwiązaniami Big Data opartymi na Javie i mogą zapewnić wyższy poziom przenośności i łatwiejsze wdrożenie produktu. Tylko sidenote: NASA Jet Propulsion Laboratory wykorzystało Deeplearning4j do wielu projektów.
Jeśli zdecydujesz się pójść z prądem i chcesz dowiedzieć się więcej o TensorFlow, polecam sprawdzić kanały YouTube „DeepLearning.TV”, „sentdex” i „Siraj Raval”. Mają ładne tutoriale i fajne dema. A jeśli zdecydujesz się na głębsze nurkowanie, możesz zapisać się na kurs online w udacity lub coursera.
Interesujące może być również wiedzieć, że istnieją inne platformy głębokiego uczenia dla wirtualnej maszyny Java z alternatywnymi językami, na przykład Clojure. (Clojure jest dialektem LISP-a i został wymyślony przez Johna McCarthy'ego, tego samego informatyka, który wymyślił termin „sztuczna inteligencja”. Innymi słowy, istnieją bardziej nowoczesne i popularne języki programowania i narzędzia, ale wciąż jest to możliwe / i trochę fajne / do używania języka AI, który został pierwotnie zaprojektowany dla AI. ThinkTopic w Boulder i Freiheit w Hamburgu to dwie firmy, które używają Clojure do projektów AI. A jeśli chcesz zobaczyć coś niesamowitego, aby uzyskać inspirację do korzystania z Clojure w AI i robotyce, Polecam obejrzeć film na YouTube „OSCON 2013: Carin Meier, Radość latających robotów z Clojure”.
(+++ Ktoś może mnie poprawić, jeśli powiedziałem coś złego. +++)