machine-learning Tutorial
Erste Schritte mit maschinellem Lernen
Suche…
Bemerkungen
Maschinelles Lernen ist die Wissenschaft (und Kunst) von Programmiercomputern, damit sie aus Daten lernen können.
Eine formellere Definition:
Es ist das Fach, in dem Computer lernen können, ohne explizit programmiert zu werden. Arthur Samuel, 1959
Eine mehr Engineering-orientierte Definition:
Ein Computerprogramm soll aus der Erfahrung E in Bezug auf eine Aufgabe T und ein Leistungsmaß P lernen, wenn sich seine mit P gemessene Leistung bei T mit der Erfahrung von E. Tom Mitchell, 1997 verbessert
Quelle: „Praktisches Maschinelles Lernen mit Scikit-Learn und TensorFlow von Aurélien Géron (O'Reilly). Copyright 2017 Aurélien Géron, 978-1-491-96229-9. "
Maschinelles Lernen (ML) ist ein Gebiet der Informatik, das aus der Erforschung künstlicher Intelligenz hervorgegangen ist. Die Stärke des maschinellen Lernens im Vergleich zu anderen Formen der Analyse liegt in seiner Fähigkeit, verborgene Einsichten aufzudecken und die Ergebnisse zukünftiger, unsichtbarer Inputs vorherzusagen (Verallgemeinerung). Im Gegensatz zu iterativen Algorithmen, bei denen Operationen explizit deklariert werden, lehnen Machine Learning-Algorithmen Konzepte aus der Wahrscheinlichkeitstheorie auf, um statistische Modelle auszuwählen, zu bewerten und zu verbessern.
Installation oder Einrichtung mit Python
1) lernen lernen
scikit-learn ist ein Python-Modul für maschinelles Lernen, das auf SciPy basiert und unter der 3-Clause BSD-Lizenz vertrieben wird. Es verfügt über verschiedene Klassifizierungs-, Regressions- und Clustering-Algorithmen, darunter Support-Vektor-Maschinen, Zufalls-Gesamt-Wälder, Gradienten-Boosting, K-Means und DBSCAN. Es ist für die Interoperabilität mit den numerischen und wissenschaftlichen Python-Bibliotheken NumPy und SciPy konzipiert.
Die aktuelle stabile Version von scikit-learn erfordert :
- Python (> = 2,6 oder> = 3,3),
- NumPy (> = 1.6.1),
- SciPy (> = 0,9).
Für die meisten Installations- pip
Paketmanager Python und alle seine Abhängigkeiten installieren:
pip install scikit-learn
Bei Linux-Systemen wird jedoch empfohlen, den conda
Package Manager zu verwenden, um mögliche conda
zu vermeiden
conda install scikit-learn
Um zu überprüfen, ob Sie scikit-learn
, führen Sie es in der Shell aus:
python -c 'import sklearn; print(sklearn.__version__)'
Windows- und Mac OSX-Installation:
Canopy und Anaconda bieten eine aktuelle Version von Scikit-Learn sowie eine große Sammlung wissenschaftlicher Python-Bibliotheken für Windows, Mac OSX (auch für Linux relevant).
Offizieller Quellcode-Repo: https://github.com/scikit-learn/scikit-learn
2) Numenta-Plattform für intelligentes Computing
Die Numenta-Plattform für intelligentes Computing (NuPIC) ist eine Machine-Intelligence-Plattform, die die HTM-Lernalgorithmen implementiert. HTM ist eine detaillierte Berechnungstheorie des Neokortex. Das Herzstück von HTM sind zeitbasierte kontinuierliche Lernalgorithmen, die räumliche und zeitliche Muster speichern und speichern. NuPIC eignet sich für eine Vielzahl von Problemen, insbesondere die Erkennung von Anomalien und die Vorhersage von Streaming-Datenquellen.
NuPIC-Binaries sind verfügbar für:
Linux x86 64bit
OS X 10.9
OS X 10.10
Windows 64bit
Die folgenden Abhängigkeiten sind erforderlich, um NuPIC auf allen Betriebssystemen zu installieren.
- Python 2.7
- pip> = 8.1.2
- Setuptools> = 25.2.0
- Rad> = 0,29,0
- numpy
- C ++ 11-Compiler wie gcc (4.8+) oder clang
Zusätzliche OS X-Anforderungen:
- Xcode-Befehlszeilen-Tools
Führen Sie die folgenden Schritte aus, um NuPIC zu installieren:
pip install nupic
Offizieller Quellcode-Repo: https://github.com/numenta/nupic
3) nilearn
Nilearn ist ein Python-Modul zum schnellen und einfachen statistischen Lernen von NeuroImaging-Daten. Sie nutzt die Python-Toolbox von Scikit-Learn für multivariate Statistiken mit Anwendungen wie Vorhersagemodellierung, Klassifizierung, Dekodierung oder Konnektivitätsanalyse.
Die erforderlichen Abhängigkeiten für die Verwendung der Software sind:
- Python> = 2,6,
- Setuptools
- Numpy> = 1.6.1
- SciPy> = 0,9
- Scikit-Lernen> = 0,14,1
- Nibabel> = 1,1,0
Wenn Sie nilearn-Plotfunktionalitäten verwenden oder die Beispiele ausführen, ist matplotlib> = 1.1.1 erforderlich.
Wenn Sie die Tests ausführen möchten, benötigen Sie eine Nase> = 1.2.1 und eine Abdeckung> = 3.6.
Stellen Sie zunächst sicher, dass Sie alle oben aufgeführten Abhängigkeiten installiert haben. Dann können Sie nilearn installieren, indem Sie den folgenden Befehl in einer Eingabeaufforderung ausführen:
pip install -U --user nilearn
Offizieller Quellcode-Repo: https://github.com/nilearn/nilearn/
4) Anaconda verwenden
Viele wissenschaftliche Python-Bibliotheken sind in Anaconda leicht verfügbar. Installationsdateien erhalten Sie hier . Auf der einen Seite müssen Sie mit Anaconda nicht viele Pakete installieren und konfigurieren. Sie ist BSD-lizenziert und verfügt über einen einfachen Installationsprozess, der für Python 3 und Python 2 verfügbar ist, während Sie andererseits weniger Flexibilität bieten. Beispielsweise verwenden einige hochentwickelte Python-Pakete für tiefes Lernen eine andere Version von numpy als Anaconda. Dieser Nachteil kann jedoch mit einer anderen Python-Installation separat behandelt werden (z. B. in Linux und MAC Ihre Standardinstallation).
Anaconda-Setup fordert Sie zur Auswahl des Installationsortes und der Zusatzoption PATH auf. Wenn Sie Anaconda zu Ihrem PATH hinzufügen, wird davon ausgegangen, dass Ihr Betriebssystem Anaconda Python standardmäßig findet. Daher sind Änderungen und zukünftige Installationen nur für diese Python-Version verfügbar.
Um es klar zu machen, fügen Sie es nach der Installation von Anaconda zu PATH hinzu und verwenden Sie Ubuntu 14.04 über das Terminal, wenn Sie es eingeben
python
Voila, Anaconda Python ist Ihr Standard-Python. Sie können sofort mit der Verwendung vieler Bibliotheken beginnen. Wenn Sie jedoch Ihr altes Python verwenden möchten
/usr/bin/python
Kurz gesagt, Anaconda ist eine der schnellsten Methoden, um maschinelles Lernen und Datenanalyse mit Python zu beginnen.
Installation oder Einrichtung in R-Sprache
Pakete sind Sammlungen von R-Funktionen, Daten und kompiliertem Code in einem genau definierten Format. Öffentliche (und private) Repositorys werden zum Hosten von Sammlungen von R-Paketen verwendet. Die größte Sammlung von R-Paketen ist bei CRAN erhältlich. Einige der beliebtesten R-Machine Learning-Pakete sind unter anderem:
1) Teil
Beschreibung: Rekursive Unterteilung für Klassifizierungs-, Regressions- und Überlebensbäume. Eine Implementierung der meisten Funktionen des Buches von 1984 von Breiman, Friedman, Olshen und Stone.
Es kann mit folgendem Code von CRAN installiert werden:
install.packages("rpart")
Laden Sie das Paket:
library(rpart)
Offizielle Quelle: https://cran.r-project.org/web/packages/rpart/index.html
2) e1071
Beschreibung: Funktionen für die Analyse latenter Klassen, Kurzzeit-Fourier-Transformation, Fuzzy-Clustering, Unterstützung von Vektormaschinen, Berechnung des kürzesten Pfads, Bagging-Clustering, naiver Bayes-Klassifikator usw.
Installation von CRAN:
install.packages("e1071")
Laden des Pakets:
library(e1071)
Offizielle Quelle: https://cran.r-project.org/web/packages/e1071/index.html
3) randomForest
Beschreibung: Klassifizierung und Regression basierend auf einer Gesamtstruktur von Bäumen mithilfe von Zufallszahlen.
Installation von CRAN:
install.packages("randomForest")
Laden des Pakets:
library(randomForest)
Offizielle Quelle: https://cran.r-project.org/web/packages/randomForest/index.html
4) Caret
Beschreibung: Verschiedene Funktionen zum Training und Plotten von Klassifikations- und Regressionsmodellen.
Installation von CRAN:
install.packages("caret")
Laden des Pakets:
library(caret)
Offizielle Quelle: https://cran.r-project.org/web/packages/caret/index.html