خانه > مقالات آموزشی > مقدمه ای ساده بر پردازش زبان طبیعی ( NLP )

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

پردازش زبان طبیعی، نوعی تکنولوژی است که از آن در رایانه ها به منظور کمک به درک و فهم زبان طبیعی انسان استفاده می شود.

آموزش دادن ربات ها و رایانه ها، به منظور فهم زبان طبیعی انسان ها و همینطور چگونگی ارتباط برقرار کردن با آن ها به هیچ وجه امر آسان و ساده ای نخواهد بود.

Leand Romaf یک مهندس نرم افزار با تجربه و پرشور و هیجان است که به مردم چگونگی عملکرد سیستم های هوش مصنوعی را آموزش می دهد، او در این باره می گوید: “در سال های اخیر پیشرفت های چشمگیر و قابل توجهی در توانمند سازی رایانه ها برای درک درست زبان انسان ها صورت گرفته است به طوری که به خوبی ما انسان ها می توانند زبان طبیعی را درک نمایند.”

در این مقاله قصد داریم به معرفی ساده ی پردازش زبان های طبیعی و چگونگی دستیابی به آن بپردازیم.

پردازش زبان طبیعی نوشته

پردازش زبان طبیعی چیست؟

NLP عبارت مخفف شده پردازش زبان طبیعی ( Natural Language Processing )، که در واقع شاخه ای از هوش مصنوعی است که به تعامل و ارتباط میان رایانه ها و انسان ها با استفاده از زبان طبیعی می پردازد.

هدف نهایی NLP عبارت است از خواندن، رمزگشایی، درک کردن و معنا گرفتن زبان های انسان به روشی ارزشمند است.

غالبا تکنیک های NLP به یادگیری ماشین متکی هستند تا مفهوم و نتیجه آن از زبان های انسانی حاصل گردد.

در واقع، یک تعامل یا فعل و انفعالاتی میان انسان و ربات ها با استفاده از پردازش زبان طبیعی می تواند صورت بگیرد که شامل موارد زیر می باشد:

  1. ابتدا یک انسان با دستگاه صحبت می نماید.
  2. دستگاه صوتی صحبت ها را ضبط می کند.
  3. دستگاه در خود، صداها را به شکل متن تبدیل می کند.
  4. سپس متن های دریافتی در خود پردازش می کند.
  5. پس از آن داده ها به شکل صوتی تبدیل می نماید.
  6. دستگاه با پخش کردن فایل صوتی به انسان پاسخ می دهد.

NLP یا پردازش زبان طبیعی برای چه مواردی استفاده می شود؟

از پردازش زبان طبیعی به عنوان نوعی نیروی محرکه برای برنامه های متداول زیر استفاده می شود.

  • برنامه های ترجمه زبان مانند Google Translate .
  • پردازنده های کلمه مانند نرم افزار های Microsoft Word و Grammarly که از NLP  استفاده می کنند تا دقت گرامری متون را بررسی کنند.
  • برنامه های پاسخ دهی صدای تعاملی (IVR) که در مراکز تماس برای پاسخ به درخواست های کاربران خاص استفاده می شوند.
  • برنامه های دستیار شخصی مانند OK Google ، Siri ، Cortana و Alexa .

چرا علم NLP دشوار است؟

پردازش زبان طبیعی یا  NLP یک پروسه سخت و دشوار در علم کامپیوتر محسوب می شود. اما در واقع علت اصلی آن ماهیت زبان انسانی می باشد که NLP را دشوار  کرده است.

درک کردن قوانینی که منجر به تبادل و انتقال دادن اطلاعات با استفاده از زبان های طبیعی می شود برای رایانه ها کار آسانی نخواهد بود.

برخی از این قوانین می توانند سطح بالا و انتزاعی باشند؛ به طور مثال، وقتی شخصی از یک سری اظهارات و حرف های طعنه آمیز برای انتقال اطلاعات به رایانه ها استفاده می کند.

از طرفی دیگر، برخی از این قوانین می توانند سطح پایینی داشته باشند. به عنوان مثال، از کاراکتر “ها” برای بیان منظور خود در بیشتر موارد استفاده می کنند.

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

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

پردازش زبان طبیعی NLP

پردازش زبان طبیعی چگونه کار می کند؟

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

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

بعضی اوقات، احتمال دارد رایانه نتواند معنی یک جمله را به خوبی تجزیه و تحلیل کند و آن را درک نماید و این موضوع منجر به نتایجی مبهم و نامفهوم می شود.

به عنوان مثال، یکی از رویدادهای طنزی که در دهه ۱۹۵۰ در زمان ترجمه برخی از کلمات، میان زبان های انگلیسی و روسی رخ داده است و آن جمله ای از کتاب مقدس مسیحیان می باشد که نیازمند ترجمه درست است:

“روح همیشه حاضر و قدرتمند است، اما بدن و جسمانیت ضعیف است.”

سپس آن ها این جمله را به زبان روسی ترجمه کرده بودند ولی زمانیکه آن متن ترجمه شده را دوباره به زبان انگلیسی بازگرداندند مفهومش به این صورت بود که: “ودکا (نام نوعی نوشیدنی الکلی) خوب است، اما گوشت فاسد و خراب شده است.”

چه تکنیک های در NLP مورد استفاده می باشد؟

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

در اینجا توضیحی در مورد نحوه استفاده از آن ها آورده شده است.

بخش اول) Syntax یا نحو

نحو به ترتیب قرارگیری کلمات در یک جمله اشاره دارد به گونه ‌ای که آن ها از لحاظ گرامری یا قواعد در کنار یکدیگر می توانند معنا پیدا کنند.

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

در واقع از الگوریتم های رایانه ای برای اعمال قواعد دستوری به دسته ای از کلمات و استخراج کردن معنی و مفهوم از آن ها استفاده می شود. و در اینجا چند روش نحو به کار گرفته شده است:

Lemmatization یا بن واژه سازی : این نحو دربردارنده مراحل تجزیه و تحلیل ساده معانی گوناگون و مختلف کلمات است تا در نهایت آن ها را تبدیل به یک معنا و مفهوم واحد بسازد.

Morphological segmentation یا تقسیم بندی مورفولوژیکی : که این مرحله شامل تقسیم کلمات به واحدهای منفرد است که به آن ها مورفیم یا فراخوانده گفته می شود.

Word segmentation  یا تقسیم بندی کلمه : شامل تقسیم یک قسمت بزرگ از متن ادامه دار به صورت واحدهای مجزا است.

Part-of-speech tagging  یا برچسب زدن بخشی از گفتار : مستلزم مشخص کردن بخشی از گفتار برای هر کلمه است.

Parsing یا تجزیه : این مرحله شامل انجام تجزیه و تحلیل گرامری برای جمله ارائه شده است.

Sentence breaking  یا شکستن حکم : شامل قرار دادن مرزهای جمله در یک متن بزرگ است.

 Stemming یا ریشه یابی : این قسمت شامل بخش بندی و قطع کلمات و تبدیلشان به شکل ریشه آن ها است.

بخش دوم) Semantics یا علم معنا شناسی

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

این مورد شامل استفاده از الگوریتم های رایانه ای برای درک معنی و تفسیر کلمات و نحوه ساخت جملات است.

در اینجا چند روش در تحلیل معنایی آورده شده است:

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

عدم تفهیم کلمه : شامل معنا دادن به یک کلمه بر اساس متن است.

تولید زبان طبیعی : این قسمت شامل استفاده از بانک های اطلاعاتی برای به دست آوردن اهداف معنایی و تبدیل آن ها به زبان انسانی است.

جمع بندی

پردازش زبان طبیعی نقش اساسی ای در حمایت از تعامل و ارتباط میان ربات ها و انسان ها دارد.

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

آیا تا به حال از تکنیک های NLP در تقویت عملکرد برنامه خود استفاده کرده اید؟

یا سوالی یا نظری در این مورد دارید؟

لطفا با ما مطرح کنید.

بیشتر بخوانید :

منبع Becoming Human
0/5 ( 0 نظر )

درباره‌ی احمدرضا جعفری

همچنین ببینید

یادگیری عمیق تقویتی (یادگیری موثر مانند یک انسان)

آلن تورینگ می گوید: به جای اینکه سعی در تولید برنامه ای برای شبیه سازی …

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *