Ereignisse
17. März, 23 Uhr - 21. März, 23 Uhr
Nehmen Sie an der Meetup-Serie teil, um skalierbare KI-Lösungen basierend auf realen Anwendungsfällen mit Mitentwicklern und Experten zu erstellen.
Jetzt registrierenDieser Browser wird nicht mehr unterstützt.
Führen Sie ein Upgrade auf Microsoft Edge durch, um die neuesten Features, Sicherheitsupdates und den technischen Support zu nutzen.
Eine maschinelle Lernaufgabe ist eine Art von Vorhersage oder Ableitung, die auf beidem basiert:
Beispielsweise weist die Klassifizierungsaufgabe Daten Kategorien zu, und die Clustering-Aufgabe gruppiert Daten entsprechend der Ähnlichkeit.
Machine Learning-Aufgaben basieren auf Mustern in den Daten, anstatt explizit programmiert zu werden.
In diesem Artikel werden die verschiedenen maschinellen Lernaufgaben beschrieben, die in ML.NET und einigen gängigen Anwendungsfällen verfügbar sind.
Nachdem Sie entschieden haben, welche Aufgabe für Ihr Szenario funktioniert, müssen Sie den besten Algorithmus auswählen, um Ihr Modell zu trainieren. Die verfügbaren Algorithmen werden im Abschnitt für jede Aufgabe aufgeführt.
Die binäre Klassifizierung ist eine Aufgabe des überwachten maschinellen Lernens, die verwendet wird, um vorherzusagen, zu welcher von genau zwei Klassen (Kategorien) eine Dateninstanz gehört. Die Eingabe eines Klassifizierungsalgorithmus ist eine Reihe von beschrifteten Beispielen, wobei jede Beschriftung eine ganze Zahl von 0 oder 1 ist. Die Ausgabe eines Binären Klassifizierungsalgorithmus ist ein Klassifizierer, mit dem Sie die Klasse neuer nicht bezeichneter Instanzen vorhersagen können. Beispiele für binäre Klassifizierungsszenarien sind:
Weitere Informationen finden Sie auf Wikipedia im Artikel zur binären Klassifizierung.
Sie können ein binäres Klassifizierungsmodell mithilfe der folgenden Algorithmen trainieren:
Um optimale Ergebnisse mit binärer Klassifizierung zu erzielen, sollten die Schulungsdaten ausgeglichen werden (d. a. gleiche Anzahl positiver und negativer Schulungsdaten). Fehlende Werte sollten vor der Schulung behandelt werden.
Die Daten in der Spalte für die Eingabezeichnung müssen Boolean sein. Die Daten in der Spalte für die Eingabefeatures müssen ein Vektor fester Größe von Single sein.
Diese Trainer geben die folgenden Spalten aus:
Name der Ausgabespalte | Spaltentyp | Beschreibung |
---|---|---|
Score |
Single | Die rohe Punktzahl, die vom Modell berechnet wurde. |
PredictedLabel |
Boolean | Der vorhergesagte Bezeichnung, basierend auf dem Abzeichnen der Bewertung. Eine negative Bewertung wird false und eine positive Bewertung wird true zugeordnet. |
Die Mehrklassenklassifizierung ist eine überwachte Aufgabe des maschinellen Lernens, die zur Klassifizierung einer Dateninstanz in eine von drei oder mehr Klassen (Kategorien) verwendet wird. Die Eingabe eines Klassifizierungsalgorithmus ist eine Reihe von beschrifteten Beispielen. Jede Beschriftung beginnt normalerweise als Text. Sie wird dann durch TermTransform geleitet, das sie zum (numerischen) Schlüsseltyp konvertiert. Die Ausgabe eines Klassifizierungsalgorithmus ist ein Klassifizierer, mit dem Sie die Klasse neuer nicht bezeichneter Instanzen vorhersagen können. Beispiele für Szenarien mit mehrklassigen Klassifizierungen sind:
Weitere Informationen finden Sie auf Wikipedia im Artikel zur Multiklassen-Klassifizierung.
Hinweis
One-vs.-Rest aktualisiert alle Binärklassifizierungs-Lernmodule so, dass sie Multiklassen-Datensätze bearbeiten.
Sie können ein Mehrklassenklassifizierungsmodell mit den folgenden Schulungsalgorithmen trainieren:
Die Daten in der Spalte für die Eingabezeichnung müssen vom Typ key sein. Die Featurespalte muss ein Vektor fester Größe von Single sein.
Dieser Trainer gibt Folgendes aus:
Ausgabename | type | Beschreibung |
---|---|---|
Score |
Vektor von Single | Die Bewertungen aller Klassen. Höherer Wert bedeutet eine höhere Wahrscheinlichkeit, in die zugeordnete Klasse zu fallen. Wenn das i -te Element den größten Wert hat, wäre der vorhergesagte Bezeichnungsindex i . Beachten Sie, dass i ein nullbasierter Index ist. |
PredictedLabel |
Schlüssel | Der Index der vorhergesagten Bezeichnung. Wenn der Wert i ist, wäre die eigentliche Bezeichnung die i -te Kategorie des Eingabebezeichnungstyps „Schlüssel-Wert“. |
Die Textklassifizierung ist eine Unterkategorie der Mehrklassenklassifizierung, die sich speziell mit unformatiertem Text befasst. Text stellt interessante Herausforderungen dar, da Sie den Kontext und die Semantik berücksichtigen müssen, in der der Text auftritt. Daher kann es schwierig sein, Bedeutung und Kontext zu codieren.
Deep Learning Modelle haben sich als vielversprechende Technik entwickelt, um Probleme mit natürlicher Sprache zu lösen. Genauer gesagt, ist eine Art von neuronalem Netzwerk, das als Transformer bezeichnet wird, zur vorherrschenden Methode für die Lösung von Problemen der natürlichen Sprachverarbeitung wie Textklassifizierung, Übersetzung, Zusammenfassung und Fragen und Antworten geworden. Einige beliebte Transformatorarchitekturen für Aufgaben in natürlicher Sprache umfassen:
Die ML.NET-Textklassifizierungs-API wird von TorchSharp unterstützt. TorchSharp ist eine .NET-Bibliothek, die Zugriff auf die Bibliothek bietet, die PyTorch unterstützt. TorchSharp enthält die Bausteine für das Training neuraler Netzwerke von Grund auf in .NET. ML.NET abstrahiert einige der Komplexität von TorchSharp auf die Szenarioebene. Sie verwendet eine vorab trainierte Version des NAS-BERT-Modells und optimiert sie anhand Ihrer Daten.
Ein Beispiel für eine Textklassifizierung finden Sie unter Erste Schritte mit der Textklassifizierungs-API.
Die Bildklassifizierung ist eine überwachten maschinellen Lernens Aufgabe, die verwendet wird, um die Klasse (Kategorie) eines Bilds vorherzusagen. Die Eingabe ist ein Satz von markierten Beispielen. Jede Beschriftung beginnt normalerweise als Text. Sie wird dann durch TermTransform geleitet, das sie zum (numerischen) Schlüsseltyp konvertiert. Die Ausgabe des Bildklassifizierungsalgorithmus ist ein Klassifizierer, mit dem Sie die Klasse neuer Bilder vorhersagen können. Die Bildklassifizierungsaufgabe ist eine Art von Klassifizierung mit mehreren Klassen. Beispiele für Bildklassifizierungsszenarien sind:
Sie können ein Bildklassifizierungsmodell mit den folgenden Schulungsalgorithmen trainieren:
Die Daten in der Spalte für die Eingabezeichnung müssen vom Typ key sein. Die Featurespalte muss ein Vektor variabler Größe von Byte sein.
Der Trainer gibt folgende Spalten aus:
Ausgabename | type | Beschreibung |
---|---|---|
Score |
Single | Die Bewertungen aller Klassen. Höherer Wert bedeutet eine höhere Wahrscheinlichkeit, in die zugeordnete Klasse zu fallen. Wenn das i -te Element den größten Wert aufweist, wäre der vorhergesagte Label-Index i . (i ist ein nullbasierter Index.) |
PredictedLabel |
Schlüssel-Typ | Der Index der vorhergesagten Bezeichnung. Wenn der Wert i ist, wäre die eigentliche Bezeichnung die i -te Kategorie des Eingabebezeichnungstyps „Schlüssel-Wert“. |
Regression ist eine überwachte maschinelle Lernaufgabe, die verwendet wird, um den Wert des Labels aus einer Reihe verwandter Merkmale vorherzusagen. Die Bezeichnung kann ein beliebiger realer Wert sein und stammt nicht aus einer endlichen Gruppe von Werten wie in Klassifizierungsaufgaben. Regressionsalgorithmen modellieren die Abhängigkeit der Bezeichnung zu den zugehörigen Features, um zu bestimmen, wie sich die Bezeichnung ändern wird, wenn die Werte der Features unterschiedlich sind. Die Eingabe eines Regressionsalgorithmus ist eine Reihe von Beispielen mit Bezeichnungen bekannter Werte. Die Ausgabe eines Regressionsalgorithmus ist eine Funktion, mit der Sie den Labelwert für jeden neuen Satz von Eingabemerkmalen vorhersagen können. Beispiele für Regressionsszenarien sind:
Sie können ein Regressionsmodell mithilfe der folgenden Algorithmen trainieren:
Die Daten in der Spalte für die Eingabezeichnung müssen Single sein.
Die Trainer für diese Ausgabe geben folgende Daten aus:
Ausgabename | type | Beschreibung |
---|---|---|
Score |
Single | Der Rohwert, der vom Modell vorhergesagt wurde |
Clustering ist eine nicht überwachte Machine-Learning-Aufgabe, die verwendet wird, um Dateninstanzen in Clustern zu gruppieren, die ähnliche Merkmale aufweisen. Clustering kann auch verwendet werden, um Beziehungen in einem Datensatz zu identifizieren, die Sie möglicherweise nicht durch Durchsuchen oder durch einfaches Beobachten logisch ableiten können. Die Eingaben und Ausgaben eines Clusteringalgorithmus hängen von der gewählten Methodik ab. Sie können einen verteilungs-, schwerpunkt-, konnektivitäts- oder dichtebasierten Ansatz wählen. ML.NET unterstützt derzeit einen schwerpunktbasierten Ansatz bei Verwendung der K-Means-Clusterbildung. Beispiele für Clusteringszenarien sind:
Sie können ein Clusteringmodell mit dem folgenden Algorithmus trainieren:
Die Daten der Eingabefeatures müssen Single sein. Es sind keine Etiketten erforderlich.
Dieser Trainer gibt Folgendes aus:
Ausgabename | type | Beschreibung |
---|---|---|
Score |
Vektor von Single | Die Abstände der angegebenen Daten weisen auf die Schwerpunkte aller Cluster hin. |
PredictedLabel |
Schlüssel-Typ | Der vom Modell vorhergesagte Index des nächstgelegenen Clusters. |
Die Anomalieerkennungsaufgabe erstellt ein Anomalieerkennungsmodell mithilfe der Prinzipalkomponentenanalyse (PCA). Die PCA-basierte Anomalieerkennung hilft Ihnen beim Erstellen eines Modells in Szenarien, in denen es einfach ist, Schulungsdaten aus einer Klasse abzurufen, z. B. gültige Transaktionen, aber schwierig, ausreichende Stichproben der gezielten Anomalien zu erhalten.
Eine etablierte Technik im maschinellen Lernen, PCA wird häufig in der explorativen Datenanalyse verwendet, da sie die innere Struktur der Daten offenlegt und die Varianz in den Daten erklärt. PCA funktioniert durch Analysieren von Daten, die mehrere Variablen enthalten. Es sucht nach Korrelationen zwischen den Variablen und bestimmt die Kombination von Werten, die die Unterschiede in den Ergebnissen am besten erfassen. Diese kombinierten Featurewerte werden verwendet, um einen kompakteren Featurebereich zu erstellen, der als Prinzipalkomponenten bezeichnet wird.
Anomalieerkennung umfasst viele wichtige Aufgaben im maschinellen Lernen:
Da Anomalien definitionlich seltene Ereignisse sind, kann es schwierig sein, eine repräsentative Stichprobe von Daten zu sammeln, die für die Modellierung verwendet werden. Die in dieser Kategorie enthaltenen Algorithmen wurden speziell entwickelt, um die wichtigsten Herausforderungen des Aufbaus und Trainingsmodells mithilfe von ungleichgewichtierten Datensätzen zu bewältigen.
Sie können ein Anomalieerkennungsmodell mit dem folgenden Algorithmus trainieren:
Die Eingabefeatures müssen ein Vektor fester Größe von Single sein.
Dieser Trainer gibt Folgendes aus:
Ausgabename | type | Beschreibung |
---|---|---|
Score |
Single | Der nicht-negative, unbegrenzte Score, der durch das Anomalieerkennungsmodell berechnet wurde. |
PredictedLabel |
Boolean | true , wenn die Eingabe eine Anomalie ist, oder false , wenn sie es nicht ist. |
Eine Rangfolgenaufgabe erstellt für einen Satz bezeichneter Beispiele eine Rangfolge. Dieser Beispielsatz besteht aus Instanzengruppen, die mit einem bestimmten Kriterium bewertet werden können. Die Bewertungsbezeichnungen sind { 0, 1, 2, 3, 4 } für jede Instanz. Die Rangfolgenfunktion wird dafür trainiert, neue Instanzengruppen mit unbekannten Bewertungen für jede Instanz in die Rangfolge einzuordnen. ML.NET-Rangfolgenlernmodule basieren auf einer Machine-Learning-Rangfolge.
Sie können ein Bewertungsmodell mit den folgenden Algorithmen trainieren:
Der Datentyp für die Eingabebezeichnung muss ein Typ key oder Single sein. Der Wert der Bezeichnung bestimmt die Relevanz, wobei höhere Werte eine höhere Relevanz angeben. Wenn die Bezeichnung vom Typ key ist, dann ist der Schlüsselindex der Relevanzwert, wobei der kleinste Index der am wenigsten relevante ist. Wenn die Bezeichnung ein Single ist, zeigen höhere Werte eine höhere Relevanz an.
Die Featuredaten müssen ein Vektor mit fester Größe von Single sein, und die Gruppenspalte der Eingabezeilen muss vom Typ key sein.
Dieser Trainer gibt Folgendes aus:
Ausgabename | type | Beschreibung |
---|---|---|
Score |
Single | Die unlimitierte Punktzahl, die vom Modell berechnet wurde, um die Vorhersage zu erstellen. |
Eine Empfehlungsaufgabe ermöglicht die Erstellung einer Liste der empfohlenen Produkte oder Dienstleistungen. ML.NET verwendet für Empfehlungen Matrixfaktorisierung (MF), einen Algorithmus für kollaboratives Filtern, wenn Ihr Katalog Verlaufsproduktbewertungs-Daten enthält. Beispielsweise verfügen Sie über historische Filmbewertungsdaten für Ihre Benutzer und möchten andere Filme empfehlen, die sie wahrscheinlich als Nächstes ansehen.
Sie können ein Empfehlungsmodell mit dem folgenden Algorithmus trainieren:
Der Prognosevorgang verwendet vergangene Zeitreihendaten, um Vorhersagen zum zukünftigen Verhalten zu erstellen. Szenarien, die für die Prognose gelten, umfassen Wettervorhersagen, saisonale Umsatzvorhersagen und vorausschauende Wartung.
Sie können ein Prognosemodell mit dem folgenden Algorithmus trainieren:
Eine Objekterkennung ist eine überwachte Machine-Learning-Aufgabe, die zum Vorhersagen der Klasse (Kategorie) eines Bilds verwendet wird, aber auch ein Begrenzungsfeld angibt, in dem sich die betreffende Kategorie innerhalb des Bilds befindet. Anstatt ein einzelnes Objekt in einem Bild zu klassifizieren, kann die Objekterkennung mehrere Objekte innerhalb eines Bilds erkennen. Beispiele für die Objekterkennung sind:
Die Schulung zum Objekterkennungsmodell ist derzeit nur in Modell-Generator mit Azure Machine Learning verfügbar.
Feedback zu .NET
.NET ist ein Open Source-Projekt. Wählen Sie einen Link aus, um Feedback zu geben:
Ereignisse
17. März, 23 Uhr - 21. März, 23 Uhr
Nehmen Sie an der Meetup-Serie teil, um skalierbare KI-Lösungen basierend auf realen Anwendungsfällen mit Mitentwicklern und Experten zu erstellen.
Jetzt registrierenTraining
Zertifizierung
Microsoft Certified: Azure Data Scientist Associate - Certifications
Verwalten Sie Datenerfassung und -vorbereitung, Modelltraining und -bereitstellung sowie die Überwachung von Machine Learning-Lösungen mit Python, Azure Machine Learning und MLflow.
Dokumentation
Gewusst wie: Auswählen eines ML.NET-Algorithmus - ML.NET
Erfahren Sie, wie Sie einen ML.NET-Algorithmus für Ihr Machine Learning-Modell auswählen.
Datentransformationen - ML.NET
Untersuchen Sie die in ML.NET unterstützten herausragenden technischen Komponenten.
Glossar für maschinelles Lernen - ML.NET
Ein Glossar wichtiger Begriffe für maschinelles Lernen, die nützlich sind, während Sie Ihre benutzerdefinierten Modelle in ML.NET erstellen.