آموزش جامع پردازش زبان طبیعی
اصلیترین وسیله ارتباطی که ما انسانها در اختیار داریم، زبان است که به کمک آن میتوانیم صحبت کنیم، بخوانیم یا بنویسیم. پردازش زبان طبیعی (NLP) یکی از زیرشاخههای علوم کامپیوتر است و به طور جزئیتر به حوزه هوش مصنوعی (AI) ارتباط دارد؛ به گونهای که با استفاده از آن، کامپیوترها این توانایی را دارند که زبان ما انسانها را درک یا پردازش کنند.
مخاطبان این آموزش
این آموزش برای فارغالتحصیلان، دانشآموختگان و دانشجویانی که به حوزه پردازش زبان طبیعی علاقهمندند یا آن را بهعنوان بخشی از واحدهای درسی خود دارند، مناسب است. باتوجهبه اینکه تمامی مطالب بهصورت گامبهگام شرح داده شده، مخاطب میتواند مبتدی باشد و با داشتن یک دانش اولیه مطالب را دنبال کند یا اینکه سطح پیشرفتهای داشته باشد و دانستههای خود را مرور کند.
پیشنیازهای این آموزش
آشنایی با اصطلاحات رایج دستور زبان انگلیسی ضروری است و به دلیل آنکه مطالب این آموزش به زبان پایتون پیادهسازی شده، مخاطب باید علاوه بر داشتن دانش اولیه در حوزه هوش مصنوعی، به مبانی زبان برنامهنویسی پایتون نیز آشنا باشد.اگر هنوز با این زبان برنامه نویسی پایتون آشنا نیستید و به دنبال آموزش پایتون برای علم داده هستید، آموزش رایگان پایتون را در کانال یوتیوب دیتاهاب مشاهده کنید.
NLP چیست؟
NLP مخفف عبارت Natural Language Processing است که متشکل از سه حوزه علوم کامپیوتر، زبان جامعه بشری و هوش مصنوعی است. این فناوری در ماشینها و رایانههایی که برای درک، تجزیهوتحلیل، مدیریت و تفسیر زبانهای جامعه بشری به ما کمک میکنند، استفاده میشود. چگونه؟ به این صورت که توسعهدهندگان با بهکارگیری NLP میتوانند پروژههایی مانند ترجمه (Translation)، خلاصهسازی خودکار (Automatic Summarization)، شناسایی موجودیتهای نامدار (Named Entity Recognition (NER))، تشخیص گفتار (Speech Recognition)، استخراج ارتباطات معنایی (Relationship Extraction) و بخشبندی موضوعات (Topic Segmentation) را ایجاد و سازماندهی کنند.
بهطورکلی، ما انسانها با استفاده از کلمات و جملاتی که میسازیم، با یکدیگر ارتباط برقرار کرده و بهاینترتیب اطلاعاتی را منتقل یا دریافت میکنیم، اما این اطلاعات برای کامپیوترها و رایانهها چندان واضح نیست و نمیتوانند آن را بهخوبی تفسیر کنند. چرا؟ به دلیل آنکه این اطلاعات ساختاری ندارند و جدولی نیستند؛ به عبارتی، غیر ساختیافته (Unstructured) هستند و ماشینها و رایانهها باید با دادههای جدولی (Tabular Data یا Structured Data) کار کنند تا بتوانند آنها را درک و تفسیر کنند. اینجا است که NLP به کمک ما میآید. هدف پردازش زبان طبیعی (NLP) این است که رایانه، متن و اطلاعات غیر ساختیافته را دریافت کرده، آنها را تفسیر کنند و بخشها یا قسمتهای معنیدار آن را بازیابی و استخراج کنند. همانطور که پیشازاین اشاره شد، پردازش زبان طبیعی (NLP) زیر شاخهای از هوش مصنوعی است که در اصل باعث شکلگیری تعاملات و ارتباطات بین رایانه و انسان میشود.
برای آشنایی با مفاهیم پردازش زبان طبیعی دوره آموزش پردازش زبان طبیعی مقدماتی را ببینید.
امروزه حوزه پردازش زبان طبیعی در اکوسیستم یادگیری ماشین، رشد قابلتوجهی داشته زیرا دسترسی به دادههایی که شامل تعاملات و گفتگوهای انسانها میشود، بسیار آسان شده است. در کوتاهترین زمان ممکن، میتوان به دادههای شبکه اجتماعی مثل توییتر یا اینستاگرام دسترسی داشت.
NLP، در انواع مختلف پروژههای یادگیری ماشین قابلاستفاده است:
- طبقهبندی ساده: به طور مثال، آیا یک ایمیل اسپم است یا خیر؟ یک مثال دیگر این است که نظر یا بازخورد ثبت شده توسط مشتری برای یک محصول، مثبت (راضی) است یا منفی (ناراضی)؟
- یادگیری بدون نظارت – خوشهبندی: دستهبندی موضوعی یکسری خبر، مثل خبر ورزشی، سیاسی، اقتصادی.
- پروژههای پیچیدهتر: فرض کنیم که یک کاربر در حال تایپ کردن متنی است، حال کلمه بعدی را که کاربر قرار است تایپ کند، پیشبینی کنیم.