Basiswissen - Machine Learning Algorithmen
Supervised (Überwachtes Lernen)
Name (H2o-Wordings)
|
Kurz-Beschreibung
|
Beispiele
|
---|---|---|
Cox Proportional Hazards (CoxPH) |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/coxph.html Cox-Proportional-Hazards-Modelle sind der am weitesten verbreitete Ansatz zur Modellierung von Zeit-zu-Ereignis-Daten. Wie der Name schon sagt, berechnet die Hazard-Funktion die momentane Geschwindigkeit eines Ereignisses und wird mathematisch als h (t) = limΔt ↓ 0Pr [t≤T <t + Δt|T≥t] Δt, wird angenommen, dass es das Produkt einer Basis-Hazard-Funktion und eines Risiko-Scores ist. Folglich ist die Gefahrenfunktion für die Beobachtung i in einem Cox-Proportional-Hazards-Modell definiert als hi (t) = λ (t) exp (xTiβ) wobei λ (t) die Basis-Hazard-Funktion ist, die von allen Beobachtungen geteilt wird, und exp (xTiβ) die Risiko-Punktzahl für Beobachtung i ist, die als die potenzierte Linearkombination des Kovariatenvektors xTi unter Verwendung eines allen Beobachtungen gemeinsamen Koeffizientenvektors berechnet wird. Diese Kombination einer nicht-parametrischen Grundlinien-Hazard-Funktion und einer parametrischen Risiko-Bewertung führt dazu, dass Cox-Proportional-Hazards-Modelle als semiparametrisch beschrieben werden. Darüber hinaus zeigt eine einfache Umordnung von Termen, dass im Gegensatz zu verallgemeinerten linearen Modellen ein intercept (konstanter) Term im Risikobewertungswert der Modellanpassung aufgrund der Einbeziehung einer Grundlinien-Hazard-Funktion keinen Wert hinzufügt. |
|
Deep Learning |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/deep-learning.html siehe auch https://de.mathworks.com/discovery/deep-learning.html H2O's Deep Learning basiert auf einem Multi-Layer Feedforward-künstlichen neuronalen Netzwerk, das mit stochastischem Gradienten-Abstieg unter Verwendung von Rückwärtsausbreitung trainiert wird. Das Netzwerk kann eine große Anzahl von verborgenen Schichten enthalten, die aus Neuronen mit Tanh-, Gleichrichter- und Maxout-Aktivierungsfunktionen bestehen. Erweiterte Funktionen wie adaptive Lernrate, Ratenglühen, Impulstraining, Dropout, L1- oder L2-Regularisierung, Checkpointing und Grid-Suche ermöglichen eine hohe Vorhersagegenauigkeit. Jeder Rechenknoten trainiert eine Kopie der globalen Modellparameter auf seinen lokalen Daten mit Multi-Threading (asynchron) und trägt periodisch über Modell-Mittelung über das Netzwerk zum globalen Modell bei. Ein künstliches neuronales Vorwärtsnetzwerk (ANN), auch bekannt als tiefes neuronales Netzwerk (DNN) oder mehrschichtiges Perzeptron (MLP), ist der häufigste Typ von Deep Neural Network und der einzige Typ, der nativ in H2O-3 unterstützt wird. Mehrere andere Arten von DNNs sind ebenfalls beliebt, wie z. B. Convolutional Neural Networks (CNNs) und Recurrent Neural Networks (RNNs). MLPs funktionieren gut mit transaktionalen (tabellarischen) Daten; Wenn Sie jedoch Bilddaten haben, sind CNNs eine gute Wahl. Wenn Sie sequentielle Daten haben (z.B. Text, Audio, Zeitreihen), dann sind RNNs eine gute Wahl. |
|
Distributed Random Forest |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/drf.html Alternative englische Erklärung: https://towardsdatascience.com/the-random-forest-algorithm-d457d499ffcd https://en.wikipedia.org/wiki/Random_Forest Random forests or random decision forests are an ensemble learning method for classification, regression and other tasks that operates by constructing a multitude of decision trees at training time and outputting the class that is the mode of the classes (classification) or mean prediction (regression) of the individual trees.[1][2] Random decision forests correct for decision trees' habit of overfitting to their training set. |
|
Gradient Boosting Machine |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/gbm.html Alternative englische Erklärung: https://towardsdatascience.com/boosting-algorithm-gbm-97737c63daa3 https://en.wikipedia.org/wiki/Gradient_boosting Gradient boosting is a machine learning technique for regression and classification problems, which produces a prediction model in the form of an ensemble of weak prediction models, typically decision trees. It builds the model in a stage-wise fashion like other boosting methods do, and it generalizes them by allowing optimization of an arbitrary differentiable loss function. The idea of gradient boosting originated in the observation by Leo Breiman that boosting can be interpreted as an optimization algorithm on a suitable cost function.[1] Explicit regression gradient boosting algorithms were subsequently developed by Jerome H. Friedman,[2][3] simultaneously with the more general functional gradient boosting perspective of Llew Mason, Jonathan Baxter, Peter Bartlett and Marcus Frean.[4][5] The latter two papers introduced the view of boosting algorithms as iterative functional gradient descent algorithms. That is, algorithms that optimize a cost function over function space by iteratively choosing a function (weak hypothesis) that points in the negative gradient direction. This functional gradient view of boosting has led to the development of boosting algorithms in many areas of machine learning and statistics beyond regression and classification. |
|
Generalized Linear Model | siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/glm.html Generalisierte lineare Modelle (GLM) schätzen Regressionsmodelle für Ergebnisse, die exponentiellen Verteilungen folgen. Zusätzlich zu der Gaußschen (d. H. Normalen) Verteilung umfassen diese Poisson-, Binomial- und Gamma-Verteilungen. Jedes dient einem anderen Zweck und kann abhängig von der Wahl der Verteilung und der Verbindungsfunktion entweder zur Vorhersage oder zur Klassifizierung verwendet werden. |
|
Naïve Bayes |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/naive-bayes.html Naive Bayes ist ein Klassifikationsalgorithmus, der auf starken Annahmen der Unabhängigkeit von Kovariaten bei der Anwendung des Bayes-Theorems beruht. Der Naive-Bayes-Klassifikator nimmt die Unabhängigkeit zwischen Prädiktorvariablen, die von der Antwort abhängen, und einer Gaußschen Verteilung von numerischen Prädiktoren mit Mittelwert und Standardabweichung, die aus dem Trainingsdatensatz berechnet wird, an. Naive Bayes-Modelle werden häufig als Alternative zu Entscheidungsbäumen für Klassifizierungsprobleme verwendet. Beim Erstellen eines Naive-Bayes-Klassifizierers wird jede Zeile im Trainingsdatensatz, die mindestens eine NA enthält, vollständig übersprungen. Wenn der Testdatensatz fehlende Werte aufweist, werden diese Vorhersagewerte bei der Wahrscheinlichkeitsberechnung während der Vorhersage weggelassen. |
|
Stacked Ensemble |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/stacked-ensembles.html Ensemble-Machine-Learning-Verfahren verwenden mehrere Lernalgorithmen, um eine bessere Vorhersagegüte zu erzielen, als sie von einem der Lernalgorithmen erhalten werden könnte. Viele der modernen modernen Lernalgorithmen sind eigentlich Ensembles. Zum Beispiel sind Random Forest und Gradient Boosting Machine (GBM) beide Ensemble-Lerner. Sowohl Einsammeln (z. B. Random Forest) als auch Verstärken (z. B. GBM) sind Verfahren zum Zusammenfügen, die eine Sammlung von schwachen Lernenden (z. B. Entscheidungsbaum) aufnehmen und einen einzelnen, starken Lernenden bilden. H2O's Stacked-Ensemble-Methode ist ein überwachter Algorithmus zum Lernen von Ensemble-Maschinen, der die optimale Kombination einer Sammlung von Vorhersagealgorithmen mithilfe eines Prozesses namens Stacking findet. Wie alle überwachten Modelle in H2O unterstützt Stacked Enemseble Regression, binäre Klassifizierung und Klassifikationen. Stacking, auch Super Learning [3] oder Stacked Regression [2] genannt, ist eine Klasse von Algorithmen, die das Training eines Second-Level- "Metalearner" beinhaltet, um die optimale Kombination der Basislerner zu finden. Im Gegensatz zu Bagging und Boosting besteht das Ziel beim Stacking darin, starke, unterschiedliche Gruppen von Lernenden zusammen zu bringen. Obwohl das Konzept des Stapelns ursprünglich 1992 entwickelt wurde [1], wurden die theoretischen Garantien für das Stapeln erst durch die Veröffentlichung eines Papiers mit dem Titel "Super Learner" im Jahr 2007 [3] bewiesen. In dieser Arbeit wurde gezeigt, dass das Super-Learner-Ensemble ein asymptotisch optimales Lernsystem darstellt. Es gibt einige Ensemble-Methoden, die allgemein als Stacking bezeichnet werden, das Super-Learner-Ensemble unterscheidet sich jedoch durch die Verwendung von Kreuzvalidierung, um so genannte "Level-One" -Daten zu bilden, oder die Daten, die der Metalearning oder "Combiner" Algorithmus wird trainiert. Weitere Einzelheiten über den Super-Learner-Algorithmus werden nachfolgend bereitgestellt. |
|
XGBoost |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/xgboost.html XGBoost ist ein überwachter Lernalgorithmus, der einen Prozess namens Boosting implementiert, um genaue Modelle zu erhalten. Boosting bezieht sich auf die Ensemble-Lern-Technik, bei der viele Modelle sequentiell aufgebaut werden, wobei jedes neue Modell versucht, die Mängel des vorherigen Modells zu korrigieren. Bei der Baumverstärkung ist jedes neue Modell, das dem Ensemble hinzugefügt wird, ein Entscheidungsbaum. XGBoost bietet eine parallele Baumverstärkung (auch bekannt als GBDT, GBM), die viele Datenwissenschaftsprobleme auf schnelle und genaue Weise löst. Für viele Probleme ist XGBoost heute einer der besten Frameworks für Gradientenverstärker (GBM). |
Unsupervised
Name (H2o-Wordings)
|
|
|
---|---|---|
Aggregator |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/aggregator.html Die H2O-Aggregator-Methode ist eine clusterbasierte Methode zum Reduzieren eines numerischen / kategorischen Datensatzes in einen Datensatz mit weniger Zeilen. Wenn das Dataset kategorische Spalten enthält, führt Aggregator für jede kategoriale Spalte Folgendes aus: Akkumulieren Sie die Kategorie Frequenzen. Die Aggregator-Methode verhält sich wie jedes andere unbeaufsichtigte Modell. Sie können Spalten ignorieren, die dann für die Abstandsberechnung gelöscht werden. Training selbst erstellt den aggregierten H2O-Frame, der auch die Anzahl der Mitglieder für jede Zeile / jedes Exemplar enthält. Der aggregierte Rahmen enthält immer den vollständigen Originalinhalt des Trainingsrahmens, selbst wenn einige Spalten für die Entfernungsberechnung ignoriert wurden. Scoring / Prädiktion wird mit einer Funktion überladen, die die Elemente eines gegebenen exemplarischen Zeilenindex von 0 ... Nexemplars (diesmal ohne Zählung) zurückgibt. |
|
Generalized Low Rank Model |
siehe auch https://www.shareholder24.de/wiki/pages/editpage.action?pageId=82116638 Die allgemeinen Modelle mit niedrigem Rang (GLRM) sind ein Algorithmus zur Reduzierung der Dimensionalität eines Datensatzes. Es ist ein allgemeiner, parallelisierter Optimierungsalgorithmus, der für eine Vielzahl von Verlust- und Regularisierungsfunktionen gilt. Kategorische Spalten werden durch Erweiterung in 0/1-Indikatorspalten für jede Ebene behandelt. Mit diesem Ansatz ist GLRM nützlich, um fehlende Werte zu rekonstruieren und wichtige Merkmale in heterogenen Daten zu identifizieren. Was ist ein Low-Rank-Modell?
|
|
K-means |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/k-means.html K-Means fällt in die allgemeine Kategorie der Cluster-Algorithmen. Clustering ist eine Form von unüberwachtem Lernen, das versucht, Strukturen in den Daten zu finden, ohne irgendwelche Beschriftungen oder Zielwerte zu verwenden. Clustering unterteilt eine Reihe von Beobachtungen in separate Gruppierungen, so dass eine Beobachtung in einer gegebenen Gruppe einer anderen Beobachtung in derselben Gruppe ähnlicher ist als einer anderen Beobachtung in einer anderen Gruppe. |
|
Principal Component Analysis |
siehe auch https://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/pca.html Principal Components Analysis (PCA) ist eng mit der Principal Components Regression verwandt. Der Algorithmus wird an einem Satz möglicherweise kollinearer Merkmale ausgeführt und führt eine Transformation durch, um einen neuen Satz unkorrelierter Merkmale zu erzeugen. PCA wird häufig verwendet, um ohne Regularisierung zu modellieren oder die Dimensionalität zu reduzieren. Es kann auch nützlich sein, als Vorverarbeitungsschritt vor entfernungsbasierten Algorithmen wie K-Means vorzugehen, da PCA garantiert, dass alle Dimensionen einer Mannigfaltigkeit orthogonal sind. |