L'Elaborazione del linguaggio naturale, detta anche NLP (dall'inglese Natural Language Processing), è il processo di estrazione di informazioni semantiche da espressioni del linguaggio umano o naturale, scritte o parlate, tramite l'elaborazione di un calcolatore elettronico.
Questo processo è reso particolarmente difficile e complesso a causa delle caratteristiche intrinseche di ambiguità del linguaggio umano. Per questo motivo il processo di elaborazione viene suddiviso in fasi diverse, tuttavia simili a quelle che si possono incontrare nel processo di elaborazione di un linguaggio di programmazione:
In teoria, l'elaborazione del linguaggio naturale è un metodo attraente di interazione uomo-macchina. I primi sistemi sviluppati, quali SHRDLU, che lavoravano in "mondi a blocchi" con vocabolari ristretti, ottenevano ottimi risultati. Ciò portò i ricercatori a un eccessivo ottimismo, che presto scemò non appena i sistemi furono estesi a situazioni più realistiche con problemi reali di ambiguità e complessità.
La comprensione del linguaggio naturale è spesso considerata un problema IA-completo, poiché si pensa che il riconoscimento del linguaggio richieda una conoscenza estesa del mondo e una grande capacità di manipolarlo. Per questa ragione, la definizione di "comprensione" è uno dei maggiori problemi dell'elaborazione del linguaggio naturale.