Der dritte Schritt des Natural Language Processing führt die Entwickler in die Bereiche der Semantik. Auch wenn sowohl das Tagging als auch die syntaktische Funktion eines Wortes gleich sind, kann es dennoch vorkommen, dass das Wort verschiedene mögliche Bedeutungen hat. Beispielhaft verdeutlichen das folgende Sätze:
Im Topf wachsen schöne Blumen
Der Topf ist voller Kartoffeln
Ein Mensch, der die deutsche Sprache gut genug kennt, wird sofort wissen, dass es sich im ersten Satz um einen Blumentopf und im zweiten um einen Kochtopf handelt. Für einen Computer ist das aber nicht so leicht zu bestimmen. Über das Wissen, das nötig ist, um den Unterschied zwischen einem Topf, in dem normalerweise Blumen wachsen, und einem Topf, in dem man Kartoffeln kocht, zu erkennen, verfügt der Computer nicht, und es ist für ihn nur schwer zu erlernen.
Meistens versuchen Computer deshalb, die Bedeutung eines Wortes mithilfe der Worte zu bestimmen, die davor und danach im Satz stehen. So kann ein Computer lernen, dass es sich beim Wort „Topf“, das von dem Wort „Kartoffeln“ gefolgt wird, um einen Kochtopf handelt, und beim Wort „Topf“, das vom Wort „Blumen“ gefolgt wird, um einen Blumentopf. Dieses Lernen erfolgt anhand von Textkorpora, in denen die Bedeutung jedes Wortes korrekt wiedergegeben ist.
Alles in allem bleibt Natural Language Processing ein komplexes Fachgebiet: Computer müssen eine große Menge an Einzelfällen verarbeiten und bei doppeldeutigen Worten besteht schnell die Möglichkeit, dass der Computer diese falsch deutet. Vor allem im Bereich der Pragmatik kann noch sehr viel verbessert werden, da es sich bei dem Kontext, in dem ein Satz geäußert wird, meistens um einen weltlichen Kontext handelt oder zumindest um einen Kontext, den zu verstehen viel Wissen über die eigene Welt erfordert. Besonders Ironie und Sarkasmus und humorvolle Metaphern sind für Computer schwer zu verstehen, auch wenn es erste Versuche gibt, sie zu klassifizieren.