Angenommen, Sie haben die Möglichkeit, Kommentare oder Bewertungen von Ihren Kunden oder einer anderen Quelle zu erhalten, und Sie möchten bewerten, wie positiv sie sind. Es gibt eine Möglichkeit, solche Kommentare zu analysieren, die Stimmungsanalyse genannt wird. Dieser Beitrag konzentriert sich auf das Stimmungsanalysetool, das auf einem tiefen neuronalen Netzwerkmodell mit C# basiert. Dieses Modell ist für eine Vielzahl von Aufgaben geeignet.

Stimmungsanalyse-API für .NET

Wenn Sie eine Stimmungsanalyse programmgesteuert durchführen möchten, erfüllt GroupDocs.Classification diesen Zweck für Sie. Es implementiert einen Allzweck-Stimmungsklassifikator, der verwendet werden kann, um den Ton von Produktbewertungen, Shop-Bewertungen, Anwendungsbewertungen, Feedbacks usw.

GroupDocs.Klassifizierung für .NET

Dieser Artikel führt Sie durch die Klassifizierung von Kommentaren und analysiert die Positivität mithilfe von C# mit GroupDocs.Classification for .NET. Stellen Sie daher bitte sicher, dass Sie die API über eine der folgenden Methoden installieren, bevor Sie beginnen:

  • Installieren Sie mit NuGet Package Manager.
  • Laden Sie die DLL herunter und referenzieren Sie sie im Projekt.

So klassifizieren Sie Text mithilfe der Stimmungsanalyse in C#

Um eine solche Aufgabe zu lösen, können wir eine allgemeine Klasse namens Classifier verwenden, oder wir können den Sentiment Classifier verwenden, der etwas einfacher und leichter ist. Hier sind die Schritte:

  • Initialisieren Sie den SentimentClassifier.
  • Rufen Sie die Methode PositiveProbability der Klasse SentimentClassifier auf und übergeben Sie den Text als Parameter, der analysiert werden muss.
  • Die PositiveProbability-Methode gibt die Positivität im Bereich von 0 bis 1 zurück.

Hier ist der C#-Code, um den Ton jeder Aussage mithilfe der Stimmungsklassifizierung zu finden. Als Beispiel haben wir folgende Stimmung gewählt:

“Erfahrung ist einfach der Name, den wir unseren Fehlern geben”

// Analyze the positivity of text using sentiment classifier in C#.
var sentiment = "Experience is simply the name we give our mistakes";
var sentimentClassifier = new SentimentClassifier();
/// PositiveProbability method returns the positive probability of the sentiment.
var positiveProbability = sentimentClassifier.PositiveProbability(sentiment);
Console.WriteLine($"Positive Probability of the sentiment { positiveProbability }");
Positive Probability of the sentiment: **0.1118**

Jeder Wert größer als 0,5 bedeutet, dass die Stimmung positiv ist, und der Bereich zwischen 0 und 0,5 zeigt, dass sie negativ ist.

Jetzt können Sie gemäß der extrahierten Positivität die Beste Klasse für diese Stimmung und die Wahrscheinlichkeit dieser Besten Klasse erhalten. Wir haben festgestellt, dass seine positive Wahrscheinlichkeit 0,11 beträgt, also sollte er als negativer Kommentar klassifiziert werden und seine beste Klasse sollte negativ statt positiv sein.

So what would be its Best Class Probability? Yes, it will be 0.89. Jetzt sehen Sie im Code:

var sentiment = "Experience is simply the name we give our mistakes";
/// Classify method returns ClassificationResult object with the best class probability and name.
var response = sentimentClassifier.Classify(sentiment);
Console.WriteLine($"Best Class Name: {response.BestClassName}");
Console.WriteLine($"Best Class Probability: { response.BestClassProbability}");
Best Class Name: **Negative**
Best Class Probability: **0.8882**

Klassifizieren Sie mehrere Kommentare mithilfe der Stimmungsanalyse in C#

Normalerweise haben wir Tausende von Kommentaren und Rückmeldungen, wie können wir also die Rückmeldungen unserer Kunden analysieren? Es ist einfach, fügen Sie einfach die Feedbacks in ein Array ein. Lassen Sie das String-Array die Quelle der Überprüfung sein. Es könnte sich auch um eine Datei oder die geparste Antwort einer Datenbank oder eines Dienstes handeln. Wir können das String-Array in das Float-Array positiver Stimmungswahrscheinlichkeiten umwandeln.

var sentiments = new string\[\] {
                "Now that is out of the way, this thing is a beast. It is fast and runs cool.",
                "Experience is simply the name we give our mistakes",
                "When I used compressed air a cloud of dust bellowed out from the card (small scuffs and scratches).",
                "This is Pathetic."
            };
            var classifier = new GroupDocs.Classification.SentimentClassifier();
            var sentimentPositivity = sentiments.Select(x => classifier.PositiveProbability(x)).ToArray();
            Console.WriteLine(string.Join("\\n", sentimentPositivity));
**0.8959** - "Now that is out of the way, this thing is a beast..."
**0.1118** - "Experience is simply the name we give our mistakes"
**0.1252** - "When I used compressed air a cloud ..."
**0.0970** - "This is Pathetic."

Was können wir mit Zielstimmungen tun? Wir können die mittlere oder mittlere Positivität für das Zielprodukt, den Shop usw. messen. Wählen Sie die schlechtesten Werte aus und reagieren Sie auf die Kunden. Wir können auch Analysen durchführen, wie z. B. das Auffinden von Inkonsistenzen zwischen dem positiven Wahrscheinlichkeitswert eines Produkts und seiner Bewertung.

Wir hoffen, dass Sie diesen Beitrag nützlich finden. Weitere Informationen zur Textklassifizierung oder Sentimentanalyse in C# finden Sie in den genannten Ressourcen.

Erfahren Sie mehr über die GroupDocs.Classification-API

Das Herunterladen und Ausführen von GitHub-Beispielen ist der beste und einfachste Einstieg.

Siehe auch