پردازش زبان طبیعی (NLP) به بیان ساده

تا به حال شده به این فکر کنید که موتور جستجوگر گوگل چطور کار می‌کند؟ چطور غلط‌هاي املایی تصحيح مي‌شود؟ یا شده فکر کنید که دستیاران صوتی گوگل، سیری و اَلِکسا چطور صحبت ما را به متن تبدیل می‌کنند و سریعاً به ما پاسخ می‌دهند؟ یا مثلاً بگوييد کاش برنامه‌اي وجود داشت که یک مقاله طولانی را سریعاً خلاصه، مفید و مختصر برايمان توضيح مي‌داد؟ خب باید بگويم که تمام این‌ها با NLP امکان پذیر است؛ پس بياييد NLP را بیشتر بشناسیم.پردازش زبان طبیعی (NLP)پردازش زبان طبیعی (NLP) چیست ؟NLP = Natural Language Processingپردازش زبان طبیعی یا NLP که یکی از زیرمجموعه‌های هوش مصنوعی است، یک فناوری برای درک زبان انسانی توسط کامپیوترهاست.پردازش زبان طبیعی زیرشاخه ای از رشته های هوش مصنوعی ، زبان شناسی و علوم کامپیوتر است.همان طور که می‌دانید، کامپیوترها اعداد و داده‌های جدولی را به خوبی درک می‌کنند؛ اما زبانی که ما روزانه با آن صحبت می‌کنیم مثل فارسی، انگلیسی، چینی و غیره، دارای ساختار مشخصی نیست؛ ولي انتظار داريم کامپیوترها این کلمات و جمله‌های ما را به خوبی درک و اطلاعات معناداری از آن‌ها دریافت کنند. این کار آن قدر بزرگ و مهم است که خیلی‌ها اعتقاد دارند آخرین گام هوش مصنوعی، این است که سیستم‌ها با ما حرف بزنند و ما نتوانیم تشخیص دهیم که به جای یک انسان، با کامپیوتر ارتباط برقرار کرده‌ایم. این کار توسط آزمون تورینگ انجام می‌شود.آزمون تورینگ چیست ؟آزمون تورینگ، آخرین مرحله‌ی تست هوشمندی ماشین در زمینه‌ی NLP است. این آزمون به این شکل است که یک شخص شروع به چت کردن با یک ماشین می‌کند در حالی که نمی‌داند مخاطب او یک انسان نیست. اگر او نتواند در پایان صحبتش تشخیص دهد که با یک ماشین چت کرده، ماشین در این آزمون موفق شده است.آزمون تورینگنحوه‌ی ارتباط انسان و کامپیوتر برقراری ارتباط ما با کامپیوترها با استفاده از يك چت‌بات صوتي به صورت زیر است:1. ابتدا ما با کامپیوتر صحبت می‌كنيم.2. دستگاه صوتی کامپیوتر صحبت‌های ما را دريافت می‌کند.3. کامپیوتر صداها را به متن تبدیل می‌کند.4. متن‌ دریافتی‌ پردازش مي‌شود.5. سپس بسته به نوع گفتگو، پاسخی آماده می‌کند و آن را به داده‌های متني تبدیل می‌کند.6. پس از آن، داده‌ها را به شکل صوتی تبدیل می‌نماید.7. در آخر کامپیوتر با پخش کردن فایل صوتی به ما پاسخ می‌دهد.شاید به نظر این هفت گام، زمان زیادی نیاز داشته باشند؛ اما در کمال ناباوری تمام این کارها در کسری از ثانیه انجام می‌گیرد.برقراری ارتباط بین انسان و کامپیوترتکنیک‌های پردازش متن پردازش متن دارای دو تکنیک نحوی (syntax) و معنایی (semantic) است.1- نحوی (syntax) در تجزیه و تحلیلِ «نحوی»، چیدمان کلمات از نظر دستور زبانی (گرامری) بررسی می‌شود. در NLP از تحلیل نحوی برای بررسی هماهنگ بودن زبان طبیعی با قوانین دستور زبان، استفاده می‌شود. برخی از تکنیک‌های تحلیل نحوی به قرار زير هستند:· گروه‌بندی: برای کاهش شکل‌های مختلف کلمات به یک شکل است تا تحلیل متن آسانتر شود.· تقسیم‌بندیِ مورفولوژیکی: یعنی تقسیم‌بندی کردن کلمات به واحدهای جداگانه (واژک).· تقسیم‌بندی لُغَوی: تقسیم کردن یک متن طولانی به واحدهای جدا از هم.· برچسب‌گذاری بخشی از متن: مربوط به شناسایی بخشی از متن یا گفتار برای هر کلمه می‌باشد.· تجزیه و تحلیل کردن: تحلیل‌های گرامری برای جملات متن است.· شکستن جمله: مربوط به محدود کردن جملات در متن طولانی می‌باشد.· ریشه‌يابي: تجزیه‌ي کلمات و بدست آوردن ریشه‌ی آن‌ها2- معنايي (semantic)تحلیل معناشناسی یکی از سختی‌های NLP است که هنوز به طور کامل مشکلاتش رفع نشده است. این روش با استفاده از الگوریتم‌های کامپیوتری برای درک معنی کلمات و چگونگی ساختاربندی جمله انجام می‌شود. برخی از این تکنیک‌ها به قرار زير هستند.· شناسایی موجودیت (NER): فرآیندی است برای تشخیص اسامی و نوع آن‌ها که هدف آن تشخیص و شناسایی کلمات یا عبارت‌هایی است که یک موجودیت را بیان می‌کنند؛ مانند اسامی اشخاص، اسامی کارخانه‌ها، مکان‌ها و غیره. همچنین می‌تواند اسامی مشترک را با توجه به مفهوم متن تفکیک کند و یا نقل‌قول‌ها را پیدا کند.شناسایی کلمات خاص در یک متن و دسته‌بندی آن‌ها (NER)· ابهام‌زدایی کلمات: مربوط به ارائه معنی یک کلمه بر اساس موضوع متن می‌باشد.· تولید زبان طبیعی: تبديل داده‌هاي درك‌ شده به متن زبان انساني است.خدمات و محصولات مرتبط با NLP :دستیارهای صوتی از جمله Siri، Cortana و Google Assistantماشین‌های ترجمه مثل مترجم گوگل و یا نمونه ایرانی آن ترگمانسرویس زیرنویس خودکار یوتیوبسرویس تصحیح گرامر گوگلسیستم‌‌های غلط‌‌یابی و نرمال‌سازی خودکار متونکاربردهای NLP :1. ترجمه ماشینی2. تصحیح گفتار3. تحلیل احساسات و نظرات4. پاسخ‌دهي اتوماتيك سوالات5. خلاصه کردن متن6. چت‌بات‌ها7. سیستم‌های هوشمند8. طبقه‌بندی کردن متن9. شخصیت شناسی10. تشخیص غلط‌های املایی11. شناسایی هرزنامه12. تایپ پیش‌بینی شدهچت‌بات‌ها، یکی از مهمترین کاربردهای NLP :چت‌بات‌ها (chatbots) سرویسی هستند که توسط قوانینی مشخص و با استفاده از هوش مصنوعی ساخته می‌شوند و کاربران از طریق چت کردن با آن‌ها ارتباط برقرار می‌کنند.حتماً تا الان از چت‌بات‌های تلگرام استفاده کرده‌اید و یا توجه کرده‌اید وقتی وارد برخی از سایت‌ها می‌شوید یک ربات به شما پیام خوش آمدگویی می‌دهد و اعلام آمادگی برای کمک به شما می‌کند. این‌ها نوعی از چت‌بات‌ها هستند که ما روزانه با آن‌ها سر و کار داریم.چت بات ها یکی از مزیت‌های آن‌ها (که شاید به آن توجه کرده باشید) این است که برعکس انسان‌ها در زمانی که از آن‌ها کمک می‌خواهیم یا درخواست چیزی از آن‌ها داریم، چت‌بات‌ها کوتاه‌ترین توضیحات ممکن را به ما می‌دهند و در سریع‌ترین حالت ممکن خدمت‌رسانی می‌کنند. مزیت دیگر چت‌بات‌ها این است که آن‌ها می‌توانند با استفاده از بالا بردن اصل بهره‌وری و کمک به کسب و کارها، برای رفع نیازهای روزافزون مشتریان، به کسب و کارها سودرسانی داشته باشند.مقایسه چت بات ها و پشتیبان های سایت هابا توجه به تمام مطالب گفته شده، حتماً متوجه شده‌اید که چقدر فناوری NLP در حال پیشرفت است و سهم زیادی در آینده‌ی ما خواهد داشت و چقدر دانستن آن می‌تواند برای ما مفید باشد و جایگاه ما را در آینده‌ای نه چندان دور تضمین می‌کند. حال تصور کنید چقدر خوب می‌شود اگر چنين دانشي را در مدارس به کودکان و نوجوانان آموزش بدهیم و به آنان اجازه دهیم تا با علم روزی که در کشورهای پیشرفته وجود دارد، رشد کنند؛ ذهن کنجکاو و کم مشغله‌ی آنان می‌تواند ایده‌های نابی در این زمینه داشته باشد.منابع تصاویر :www.medium.comwww.bloomreach.comwww.aliz.aiwww.thetechnomaniac.comwww.towardsdatascience.comwww.learn.g2.comwww.botmywork.com