Die Sentimentanalyse oder auch Stimmungserkennung ist eingeordnet in das Umfeld von Natural Language Processing (NLP), einer Disziplin des Data Minings. Man versteht darunter ein Verfahren, bei dem aus einem Text die emotionale Aussage (Polarität) identifiziert und quantifiziert wird. Anschaulich ausgedrückt, werden Texte anhand der verwendeten Wörter oder Ausdrücke als positiv, negativ oder neutral klassifiziert.
Laut Bot-Wiki, dem Chatbot Wiki, wird die Analyse auf Grundlage statistischer Methoden angegangen. Darüber hinaus kann man die Grammatik der untersuchten Äußerungen einbeziehen. Zur statistischen Analyse geht man von einer Grundmenge von Begriffen (oder N-Grammen) aus, mit denen positive oder negative Tendenzen verbunden werden. Die Häufigkeiten positiver und negativer Begriffe im analysierten Text werden einander gegenübergestellt und bestimmen die vermutete Haltung. Darauf aufbauend lassen sich Algorithmen des maschinellen Lernens anwenden. Auf Grundlage von vorverarbeiteten Texten, zu denen die Haltungen bekannt sind, können solche Algorithmen auch für weitere Begriffe lernen, welcher Tendenz sie zuzuordnen sind. Mit Hilfe von Techniken des Natural Language Processings kann Wissen über die natürliche Sprache in die Entscheidung einfließen. Wird beispielsweise die Grammatik der Texte analysiert, können maschinell erlernte Muster auf die Struktur angewendet werden.
Zahlreich Cloudanbieter wie Google, Microsoft, IBM oder Amazon verfügen über einen dedizierten Sentimentanalyse-Dienst, wobei bei vielen NLP Services eine Sentimentanalyse bereits mitgeliefert wird.