MicrosoftML (R-Paket in Machine Learning Services in SQL Server)

Gilt für: SQL Server 2016 (13.x) und spätere Versionen

MicrosoftML ist ein R-Paket von Microsoft, das leistungsstarke Machine-Learning-Algorithmen bereitstellt. Sie enthält Funktionen für Training, Transformationen, Bewertung, Text- und Bildanalyse sowie Featureextraktion zum Ableiten von Werten aus vorhandenen Daten. Das Paket ist in Machine Learning Services in SQL Server und in SQL Server 2016 R Services enthalten und unterstützt Hochleistung für Big Data. Dafür wird Verarbeitung mit mehreren Kernen und schnelles Datenstreaming verwendet. MicrosoftML enthält auch zahlreiche Transformationen für die Text- und Bildverarbeitung.

Vollständige Referenzdokumentation

Das MicrosoftML-Paket wird in mehreren Microsoft-Produkten bereitgestellt. Die Verwendung ist jedoch immer identisch, unabhängig davon, ob Sie das Paket in SQL Server oder einem anderen Produkt abrufen. Da die Funktionen identisch sind, wird die Dokumentation für einzelne RevoScaleR-Funktionen nur an einer Stelle in der R-Referenz veröffentlicht. Abweichungen durch produktspezifisches Verhalten finden Sie ggf. auf der Hilfeseite der Funktion.

Versionen und Plattformen

Das MicrosoftML-Paket basiert auf R 3.5.2 und ist nur verfügbar, wenn Sie eines der folgenden Microsoft-Produkte oder einen der Downloads installieren:

Hinweis

Vollständige Produktversionen sind in SQL Server 2017 nur unter Windows verfügbar. In SQL Server 2019 wird MicrosoftML sowohl unter Windows als auch unter Linux unterstützt.

Paketabhängigkeiten

Die Algorithmen folgender Elemente hängen in MicrosoftML von RevoScaleR ab:

  • Datenquellenobjekte: Die von MicrosoftML-Funktionen genutzten Daten werden mithilfe von RevoScaleR-Funktionen erstellt.
  • Remotecomputing (das Verschieben der Funktionsausführung in eine SQL Server-Remoteinstanz): Das RevoScaleR-Paket stellt Funktionen zum Erstellen und Aktivieren eines Remotecomputekontexts für SQL Server bereit.

In den meisten Fällen werden die Pakete bei der Verwendung von MicrosoftML zusammen geladen.

Funktionen nach Kategorie

In diesem Abschnitt werden die Funktionen nach Kategorien aufgelistet, damit Sie einen Überblick über die Verwendung der einzelnen Funktionen erhalten. Im Inhaltsverzeichnis können Sie in alphabetischer Reihenfolge nach den Funktionen suchen.

1: Machine Learning-Algorithmen

Funktionsname BESCHREIBUNG
rxFastTrees Implementierung von FastRank, effiziente Implementierung des Gradient Boosting-MART-Algorithmus.
rxFastForest Implementierung der zufälligen Gesamtstruktur und der Gesamtstruktur nach Quantilregression mit rxFastTrees.
rxLogisticRegression Logistische Regression mit L-BFGS.
rxOneClassSvm Einklassige Support Vector Machine.
rxNeuralNet Binäres, mehrklassiges und neuronales Regressionsnetzwerk.
rxFastLinear Optimierung des doppelten stochastischen Koordinatenanstiegs für die lineare binäre Klassifizierung und Regression.
rxEnsemble Trainiert eine Reihe von verschiedenen Modellen zur Steigerung der Vorhersageleistung im Vergleich zu einem einzelnen Modell.

2: Transformationsfunktionen

Funktionsname BESCHREIBUNG
concat Erstellt eine Spalte mit einem einzelnen Vektorwert aus mehreren Spalten.
categorical Erstellt einen Indikatorvektor durch Kategorietransformation mit einem Wörterbuch.
categoricalHash Konvertiert den Kategoriewert durch einen Hashvorgang in ein Indikatorarray.
featurizeText Erstellt aus einem angegebenen Textkorpus einen Behälter mit der Anzahl von Sequenzen aus aufeinander folgenden Wörtern (sogenannten N-Grammen). Enthält Spracherkennung, Tokenisierung, das Entfernen von Stoppwörtern, Textnormalisierung und Featuregenerierung.
getSentiment Bewertet Text in natürlicher Sprache und erstellt eine Spalte mit Wahrscheinlichkeiten, dass die Stimmung im Text positiv ist.
ngram Ermöglicht das Definieren von Argumenten für die anzahl- und hashbasierte Featureextraktion.
selectColumns Wählt mehrere Spalten aus, die erneut trainiert werden sollen, und löscht alle anderen Spalten.
selectFeatures Wählt unter Verwendung eines angegebenen Modus Funktionen aus den angegebenen Variablen aus.
loadImage Lädt Bilddaten.
resizeImage Ändert die Größe eines Bilds in eine angegebene Größe unter Verwendung einer angegebenen Methode zur Größenänderung.
extractPixels Extrahiert die Pixelwerte aus einem Bild.
featurizeImage Erstellt mithilfe eines vortrainierten tiefen neuronalen Netzwerkmodells Merkmale für ein Bild.

3: Bewertungs- und Trainingsfunktionen

Funktionsname BESCHREIBUNG
rxPredict.mlModel Führt die Bewertungsbibliothek entweder in SQL Server mithilfe der gespeicherten Prozedur oder über R-Code aus, um eine Echtzeitbewertung und dadurch eine wesentlich schnellere Vorhersageleistung zu erzielen.
rxFeaturize Wandelt Daten von einem Eingabedataset in ein Ausgabedataset um.
mlModel Stellt die Zusammenfassung eines Microsoft Machine Learning-Modells für R bereit.

4: Verlustfunktionen zur Klassifizierung und Regression

Funktionsname BESCHREIBUNG
expLoss Spezifikationen für eine Verlustfunktion für exponentielle Klassifizierungen.
logLoss Spezifikationen für eine Verlustfunktion für Protokollklassifizierungen.
hingeLoss Spezifikationen für eine Verlustfunktion für Scharnierklassifizierungen.
smoothHingeLoss Spezifikationen für eine Verlustfunktion für geglättete Scharnierklassifizierungen.
poissonLoss Spezifikationen für eine Verlustfunktion für Poisson-Regressionen.
squaredLoss Spezifikationen für eine Verlustfunktion für quadratische Regressionen.

5: Funktionsauswahlfunktionen

Funktionsname BESCHREIBUNG
minCount Spezifikation für die Funktionsauswahl im Anzahlmodus.
mutualInformation Spezifikation für die Funktionsauswahl im Transinformationsmodus.

6: Ensemble-Modellierungsfunktionen

Funktionsname BESCHREIBUNG
fastTrees Erstellt eine Liste mit dem Funktionsnamen und den Argumenten zum Trainieren eines schnellen Strukturmodells mit rxEnsemble.
fastForest Erstellt eine Liste mit dem Funktionsnamen und den Argumenten zum Trainieren eines schnellen Gesamtstrukturmodells mit rxEnsemble.
fastLinear Erstellt eine Liste mit dem Funktionsnamen und den Argumenten zum Trainieren eines schnellen linearen Modells mit rxEnsemble.
logisticRegression Erstellt eine Liste mit dem Funktionsnamen und den Argumenten zum Trainieren eines logistischen Regressionsmodells mit rxEnsemble.
oneClassSvm Erstellt eine Liste mit dem Funktionsnamen und den Argumenten zum Trainieren eines OneClassSvm-Modells mit rxEnsemble.

7: Neuronale Netzwerkfunktionen

Funktionsname BESCHREIBUNG
optimizer Gibt Optimierungsalgorithmen für den Machine Learning-Algorithmus rxNeuralNet an.

8: Paketstatusfunktionen

Funktionsname BESCHREIBUNG
rxHashEnv Umgebungsobjekt zum Speichern des paketweiten Status.

Verwendung von MicrosoftML

Funktionen in MicrosoftML können in R-Code aufgerufen werden, der in gespeicherten Prozeduren gekapselt ist. Die meisten Entwickler erstellen MicrosoftML-Lösungen lokal, und migrieren den fertigen R-Code anschließend als Bereitstellungsübung in gespeicherte Prozeduren.

Das MicrosoftML-Paket für R ist in SQL Server 2017 bereits installiert.

Das Paket wird nicht standardmäßig geladen. Laden Sie zunächst das MicrosoftML-Paket und anschließend RevoScaleR, wenn Sie Remotecomputekontexte oder verbundene Verbindungs- oder Datenquellenobjekte verwenden müssen. Verweisen Sie dann auf die einzelnen Funktionen, die Sie benötigen.

library(microsoftml);
library(RevoScaleR);
logisticRegression(args);

Weitere Informationen