machine-learning Samouczek
Rozpoczęcie nauki maszynowej
Szukaj…
Uwagi
Uczenie maszynowe to nauka (i sztuka) programowania komputerów, aby mogły uczyć się na podstawie danych.
Bardziej formalna definicja:
Jest to dziedzina nauki, która daje komputerom możliwość uczenia się bez wyraźnego programowania. Arthur Samuel, 1959
Bardziej zorientowana na inżynierię definicja:
Mówi się, że program komputerowy uczy się z doświadczenia E w odniesieniu do pewnego zadania T i pewnej miary wydajności P, jeśli jego wydajność na T, mierzona przez P, poprawia się wraz z doświadczeniem E. Tom Mitchell, 1997
Źródło: „Praktyczne uczenie maszynowe za pomocą Scikit-Learn i TensorFlow - Aurélien Géron (O'Reilly). Prawa autorskie 2017 Aurélien Géron, 978-1-491-96229-9. ”
Uczenie maszynowe (ML) to dziedzina informatyki, która zrodziła się z badań nad sztuczną inteligencją. Siłą uczenia maszynowego nad innymi formami analizy jest zdolność do odkrywania ukrytych spostrzeżeń i przewidywania wyników przyszłych, niewidzialnych danych wejściowych (uogólnienia). W przeciwieństwie do algorytmów iteracyjnych, w których operacje są wyraźnie deklarowane, algorytmy uczenia maszynowego zapożyczają koncepcje z teorii prawdopodobieństwa, aby wybierać, oceniać i ulepszać modele statystyczne.
Instalacja lub konfiguracja za pomocą Pythona
1) scikit learn
scikit-learn to moduł Pythona do uczenia maszynowego zbudowany na bazie SciPy i dystrybuowany na licencji 3-Clause BSD. Posiada różne algorytmy klasyfikacji, regresji i klastrowania, w tym maszyny wektorów pomocniczych, losowe lasy, zwiększanie gradientu, k-średnie i DBSCAN, i jest zaprojektowany do współpracy z bibliotekami numerycznymi i naukowymi Python NumPy i SciPy.
Obecna stabilna wersja scikit-learn wymaga :
- Python (> = 2.6 lub> = 3.3),
- NumPy (> = 1.6.1),
- SciPy (> = 0,9).
W przypadku większości instalacji menedżer pakietów python pip
może zainstalować Pythona i wszystkie jego zależności:
pip install scikit-learn
Jednak w przypadku systemów Linux zaleca się użycie menedżera pakietów conda
, aby uniknąć możliwych procesów kompilacji
conda install scikit-learn
Aby sprawdzić, czy masz scikit-learn
, uruchom w powłoce:
python -c 'import sklearn; print(sklearn.__version__)'
Instalacja systemu Windows i Mac OSX:
Zarówno Canopy, jak i Anaconda dostarczają najnowszą wersję scikit-learn , oprócz dużego zestawu naukowej biblioteki python dla systemu Windows, Mac OSX (dotyczy również Linuksa).
Oficjalne repozytorium kodu źródłowego: https://github.com/scikit-learn/scikit-learn
2) Platforma Numenta do inteligentnego przetwarzania
Platforma Numenta for Intelligent Computing (NuPIC) to platforma inteligencji maszynowej, która implementuje algorytmy uczenia HTM. HTM jest szczegółową teorią obliczeniową kory nowej. Podstawą HTM są algorytmy ciągłego uczenia oparte na czasie, które przechowują i przywołują wzorce przestrzenne i czasowe. NuPIC nadaje się do różnych problemów, w szczególności do wykrywania anomalii i prognozowania źródeł danych strumieniowych.
Pliki binarne NuPIC są dostępne dla:
Linux x86 64bit
OS X 10.9
OS X 10.10
Windows 64bit
Do zainstalowania NuPIC we wszystkich systemach operacyjnych wymagane są następujące zależności.
- Python 2.7
- pip> = 8.1.2
- setuptools> = 25.2.0
- koło> = 0,29
- numpy
- Kompilator C ++ 11 jak gcc (4.8+) lub clang
Dodatkowe wymagania dotyczące OS X:
- Narzędzia wiersza polecenia Xcode
Uruchom następujące polecenie, aby zainstalować NuPIC:
pip install nupic
Oficjalne repozytorium kodu źródłowego: https://github.com/numenta/nupic
3) nilearn
Nilearn to moduł Pythona do szybkiego i łatwego uczenia statystycznego danych NeuroImaging. Wykorzystuje przybornik scikit-learn Python do statystyk wielowymiarowych z aplikacjami takimi jak modelowanie predykcyjne, klasyfikacja, dekodowanie lub analiza połączeń.
Wymagane zależności do korzystania z oprogramowania to:
- Python> = 2.6,
- setuptools
- Numpy> = 1.6.1
- SciPy> = 0,9
- Scikit-learn> = 0.14.1
- Nibabel> = 1.1.0
Jeśli używasz funkcji drukowania nilearn lub korzystasz z przykładów, wymagany jest matplotlib> = 1.1.1.
Jeśli chcesz uruchomić testy, potrzebujesz nosa> = 1.2.1 i zasięgu> = 3.6.
Najpierw upewnij się, że zainstalowałeś wszystkie wyżej wymienione zależności. Następnie możesz zainstalować nilearn, uruchamiając następujące polecenie w wierszu polecenia:
pip install -U --user nilearn
Oficjalne repozytorium kodu źródłowego: https://github.com/nilearn/nilearn/
4) Korzystanie z Anakondy
Wiele naukowych bibliotek Python jest łatwo dostępnych w Anaconda. Możesz pobrać pliki instalacyjne stąd . Z jednej strony, za pomocą Anacondy, nie trzeba instalować i konfigurować wielu pakietów, jest licencjonowany przez BSD i ma trywialny proces instalacji, dostępny dla Python 3 i Python 2, z drugiej strony daje mniejszą elastyczność. Na przykład niektóre najnowocześniejsze pakiety do głębokiego uczenia się w Pythonie mogą używać innej wersji numpy niż Anaconda. Jednak tą wadą można zaradzić osobno, używając innej instalacji Pythona (na przykład w Linuksie i MAC).
Konfiguracja Anaconda monituje o wybór lokalizacji instalacji, a także monit o opcję dodawania ŚCIEŻKI. Jeśli dodasz Anaconda do PATH, oczekuje się, że Twój system domyślnie znajdzie Anaconda Python. Dlatego modyfikacje i przyszłe instalacje będą dostępne tylko dla tej wersji Python.
Aby to wyjaśnić, po instalacji Anacondy i dodaniu jej do PATH, przy użyciu Ubuntu 14.04 przez terminal, jeśli wpiszesz
python
Voila, Anaconda Python jest domyślnym Pythonem, możesz od razu zacząć korzystać z wielu bibliotek. Jeśli jednak chcesz używać starego Pythona
/usr/bin/python
Krótko mówiąc, Anaconda jest jednym z najszybszych sposobów na rozpoczęcie uczenia maszynowego i analizy danych w Pythonie.
Instalacja lub konfiguracja za pomocą języka R.
Pakiety to zbiory funkcji R, danych i skompilowanego kodu w dobrze zdefiniowanym formacie. Publiczne (i prywatne) repozytoria służą do hostowania kolekcji pakietów R. Największa kolekcja pakietów R jest dostępna w CRAN. Niektóre z najpopularniejszych pakietów uczenia maszynowego R to między innymi:
1) rpart
Opis: Partycjonowanie rekurencyjne dla drzew klasyfikacji, regresji i drzew przetrwania. Implementacja większości funkcjonalności książki z 1984 r. Autorstwa Breimana, Friedmana, Olshen i Stone.
Można go zainstalować z CRAN przy użyciu następującego kodu:
install.packages("rpart")
Załaduj paczkę:
library(rpart)
Oficjalne źródło: https://cran.r-project.org/web/packages/rpart/index.html
2) e1071
Opis: Funkcje analizy utajonej klasy, krótkotrwałej transformacji Fouriera, grupowania rozmytego, maszyn wektorów nośnych, obliczania najkrótszej ścieżki, grupowania w workach, naiwnego klasyfikatora Bayesa itp.
Instalacja z CRAN:
install.packages("e1071")
Ładowanie paczki:
library(e1071)
Oficjalne źródło: https://cran.r-project.org/web/packages/e1071/index.html
3) randomForest
Opis: Klasyfikacja i regresja oparta na lesie drzew przy użyciu losowych danych wejściowych.
Instalacja z CRAN:
install.packages("randomForest")
Ładowanie paczki:
library(randomForest)
Oficjalne źródło: https://cran.r-project.org/web/packages/randomForest/index.html
4) daszek
Opis: Różne funkcje do treningu i kreślenia modeli klasyfikacji i regresji.
Instalacja z CRAN:
install.packages("caret")
Ładowanie paczki:
library(caret)
Oficjalne źródło: https://cran.r-project.org/web/packages/caret/index.html