پردازش زبان طبیعی (NLP) قابلیت یک رایانه برای درک چیزی است که انسان در قالب کلام به او می‌گوید.

پردازش زبان طبیعی یعنی مطالعه روی درک رایانه‌ها از گفتار، نوشتار، و ارتباط انسانی. رایانه‌ها با مجهز شدن به این درک، می‌توانند تحلیل احساسی یا دیگر تحلیل‌های متنی را در مقیاس بزرگ انجام دهند و داده‌های معنادار فراهم آورند. NLP جزئی از هوش مصنوعی است.

توسعه‌ی برنامه‌های NLP کار سختی است چرا که از قدیم لازم بوده که انسان با رایانه از طریق یک زبان برنامه‌نویسی دقیق، نامبهم و بسیار ساختاریافته، مانند جاوا، ++C و روبی و یا از طریق تعداد محدودی دستور صوتی با تلفظ واضح «سخن بگوید»، ولی گفتار انسانی همیشه هم دقیق نیست – اغلب مبهم است و ساختار زبانی آن ممکن است به متغیرهای پیچیده‌ی بسیاری از جمله زبان عامیانه، گویش‌های محلی، و پس‌زمینه‌ی اجتماعی وابسته باشد. انسان‌ها آنگونه که با رایانه سخن می‌گویند با یکدیگر حرف نمی‌زنند.

رویکردهای کنونی در NLP بر اساس یادگیری ماشینی هستند، نوعی از هوش مصنوعی که الگوهای موجود در داده را بررسی و استفاده می‌کند تا درک خود برنامه را بهبود دهد. به کمک این نتایج، ماشین‌ می‌تواند کارهایی همچون تحلیل احساسی، تجزیه‌ی متن، تشخیص گفتار، برچسب‌زنی نقش دستوری و غیره را انجام دهد. بیشتر پژوهش انجام‌شده در زمینه‌ی پردازش زبان طبیعی بر محور جستجو می‌گردد، به‌خصوص جستجوی تجاری.

  • کارهای رایج NLP در برنامه‌های نرم‌افزاری امروز شامل چنین مواردی است:
  • بخش‌بندی جمله، برچسب‌زنی نقش دستوری، و تجزیه.
  • تجزیه و تحلیل (آنالیتیک) عمقی
  • استخراج موجودیت نام‌برده
  • حل ارجاع مشترک

مزیت پردازش زبان طبیعی را می‌توان در این دو مثال دید: «بیمه‌ی رایانش ابری باید در همه‌ی توافقنامه‌های سطح خدمات گنجانده شود» و «یک ت.س.خ خوب خواب راحت برایمان می‌آورد – حتی در ابر.» اگر از پردازش زبان طبیعی برای جستجو استفاده کنیم، برنامه تشخیص می‌دهد که رایانش ابری موجودیتی است که نام برده شده، که ابر شکل کوتاه رایانش ابری است، و ت.س.خ مخففی برای توافقنامه‌ی سطح خدمات است که در این صنعت استفاده می‌شود.

هدف نهایی NLP آن است که زبان‌های برنامه‌نویسی رایانه را از دور خارج کند. به جای زبان‌های تخصصی مثل جاوا، روبی، یا #C، فقط زبان «انسانی» باقی خواهد ماند.