روشهای یادگیری ماشین در پردازش زبان طبیعی
نيمسال اول ۱۴۰۵-۱۴۰۴

مدرس: دکتر هادی ویسی
دانشکده علوم و فنون نوین، دانشگاه تهران
آدرس ایمیل: h.veisi@ut.ac.ir
پیش نیاز: آشنايي با زبانشناسي رايانشي
تعداد واحد: ۳
زمان و محل برگزاری
- یکشنبه و سهشنبه، ساعت ۱۶:۰۰ الی ۱۷:۳۰
- حضوری در دانشکده سامانههای هوشمند
دستیاران آموزشی
محمدامين نصرتي: manosrati1380@gmail.com
درباره درس
شرح درس در درس روشهای یادگیری ماشین در پردازش زبان طبیعی به مرور مبانی و روشهای مختلف یادگیری ماشین در پردازش زبان طبیعی پرداخته میشود. در این درس ابتدا مفاهیم پایه یادگیری ماشین و آمار و احتمال (شامل نظریه اطلاعات و روشهای تخمین) بررسی شده، سپس روشهای سنتی یادگیری ماشین شامل بیز ساده، نزدیکترین همسایه و رگرسیون، درخت تصمیم، ماشین بردار پشتیبان مرور میشوند. پس از آن، استخراج ویژگی از متن در بستر مروری بر بازیابی اطلاعات و تشابهیابی در متن تشریح میشود. سپس، مرور انواع شبکههای عصبی به ویژه شبکههای عمیق رایج در حوزه پردازش زبان مانند شبکههای GAN، CNN، LSTM و Transformer ارائه میشوند. سپس، مروری بر مفاهیم مرتبط با مدلهای زبانی بزرگ (LLM) انجام میشود.
در این درس، مطالب پوشش داده شده در قالب تمرینهای متناسب که عموماً به صورت عملی و پیادهسازی است، ارزیابی میشوند.
منابع
- هادي ويسي، مصطفی صالحی، وحید رنجبر، الما جعفری صدر، فرنار صادقی، محمد بحرانی، پردازش زبان و گفتار، انتشارات نویسه پارسی، زمستان 1400 (ترجمه کتاب
Daniel Jurafsky, James Martin, Speech and Language Processing, 2nd Edition, Prentice Hall, 2009. ( - Géron, Aurélien. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow: Concepts, tools, and techniques to build intelligent systems. ” O’Reilly Media, Inc.”, 2019
- Raschka, Sebastian. Python machine learning. Packt Publishing Ltd, 2015.
-
هادي ويسي، كبري مفاخري، سعيد باقري شورکي، مباني شبكه هاي عصبي: معماري، الگوريتمها و كاربردها، انتشارات نص، چاپ پنجم، زمستان 1399.
- مهرنوش شمسفرد، محمود بیجنخان، پردازش متن و گفتار فارسی: مروری بر مبانی نظری و آخرین یافتههای پژوهشی، انتشارات سمت، اردیبهشت 1404.
- Ian Goodfellow, Yoshua Bengio, Aaron Courville, Deep Learning, MIT Press, 2016.
- Kamath, U., Keenan, K., Somers, G., & Sorenson, S., Large language models: A deep dive. Springer Nature, 2024.
- Christopher Bishop, Pattern Recognition and Machine Learning, Springer, 2006
اسلایدها و لینکها
تمرینها
نمرهدهی
توضیح |
وزن |
عنوان |
| بعد از هر موضوع (وزن تمرینها برابر نیست) | 50% | تمرین |
|
ممکن است بدون اعلام قبلی باشد |
5% |
آزمونک (کویز) |
| سهشنبه ۱۴۰۴/۰۸/۲۷ ساعت ۱۶:۰۰ | 20% | آزمون میانترم |
| از کل مطالب درس، مطابق برنامه دانشگاه | 20% | آزمون پایانترم |
|
ارائه کلاسی از یک موضوع بهروز |
5% |
ارائه |
| موضوع اختیاری، مرتبط با مطالب درس (آخرین مهلت انتخاب موضوع: ۱۴۰۴/۰۸/۲۷) تحویل پروژه: اولین هفته بعد از آخرین امتحان پایانترم (حضوری یا غیرحضوری) |
10% | (نمره اضافی)پروژه |
همانطور که مشخص است، بخش عمده نمره به تمرینها و انجام پیادهسازیها (کارهای عملی) اختصاص داده شده است، لذا جهت موفقیت، همراهی دانشجو در طول ترم و یادگیری مستمر با انجام به موقع تمرینها، لازم است.
سیاستهای درس
۱. تمرین: برای هر بخش (موضوع)، تعدادی تمرین در نظر گرفته شده است که باید در مهلتهای مقرر شده تحویل شود. همفکری و همکاری در یافتن پاسخ سوالها نه تنها بلامانع است، بلکه مورد حمایت نیز است، اما پاسخ هر دانشجو باید توسط خودش و به صورت مستقل نوشته شود و در صورتی که کپی بودن یکی یا چند مورد از پاسخ سوالهای یک تمرین مشخص شود، کل نمره آن تمرین در نظر گرفته نمیشود. تمرینهای دارای پیادهسازی، باید هم شامل کدها و هم شامل گزارش مربوطه باشد، ارسال گزارش یا کد به تنهایی، شامل نمره نمیشود.
ارسال پاسخ تمرینها: تنها به صورت الکترونیکی و به ایمیل استاد درس است (ارسال به دستیار آموزشی لازم نیست). تحویل کاغذی نیاز نیست و در صورت نوشتن پاسخ تمرینهای حلشدنی روی کاغذ، تصویر آن را ارسال کنید. همه مطالب و فایلهای مرتبط با یک تمرین (کدها، گزارش، منابع و …) را در یک فایل فشرده شده ارسال کنید. فرمت نامگذاری فایل ارسالی به صورت زیر است (لطفا از ارسال فایل با اسمهایی مانند New Folder.rar یا HW.rar خودداری کنید):
که در آن Family بیانگر نامخانودگی دانشجو (به لاتین)، StNo شماره دانشجویی و # شماره تمرین است. مثلا پاسخ تمرین شماره 1 توسط آقای/خانم احمدی با شماره دانشجویی 830496001 به صورت ML4NLP_Ahmadi_830496001_HW1.rar است.
دیرکرد در تحویل: تحویل به موقع پاسخ تمرینها از موارد ضرروی است و پاسخها باید حداکثر تا ساعت 23:59 تاریخ تعیین شده ارسال شود. در صورت داشتن تاخیر در ارسال پاسخها، به ازای هر یک ساعت دیرکرد (از یک ثانیه تا 60 دقیقه!) به میزان 1% از نمره آن کسر میشود. هر دانشجو در انتهای نیمسال میتواند از امکان بخشودگی یک مورد دیرکرد (برای یک تمرین)، حداکثر به اندازه یک روز (24 ساعت)، به انتخاب خودش برخوردار شود.
استفاده از هوش مصنوعی برای تولید پاسخ تمرینها: بکارگیری و استفاده از مدلهای هوش مصنوعی زاینده مانند ChatGPT، Gemeni، Claude و … در یافتن پاسخ سوالها یا کدنویسی اکیدا توصیه میشود و میتوانید از این مدلها برای یافتن سریعتر راهحلها استفاده کنید اما توجه کنید که نیاز است پاسخ ارائه شده توسط خودتان فهم شده و بر آن مسلط شوید. برای ارزیابی این موضوع، تمرینها پس از ارسال، در صورت لزوم، به صورت حضوری از شما تحویل گرفته میشود و تسلط شما بر پاسخها و کدها سنجیده میشود.
۲. آزمونک (کویز): از مطالب هر بخش، یکی یا دو سوال به صورت امتحان کوتاه (کویز) برگزار میشود که برگزاری آن ممکن است بدون اطلاع قبلی باشد. این آزمونها در کلاس و به صورت حضوری است.
۳. امتحان میانترم و پایانترم: امتحان میانترم در تاریخ بیان شده و شامل کلیه مطالب تدریس شده تا آن تاریخ است و به صورت حضوری برگزار میشود. امتحان پایانترم شامل کلیه مطالب تدریس شده (از جمله مطالب پوشش داده شده در میان ترم) است.
۴. ارائه: هر دانشجو یک موضوع مرتبط با مطالب درس را انتخاب کرده و بعد از مطالعه منابع لازم، یک ارائه کوتاه از آن در کلاس خواهد داشت. هدف این بخش آشنایی با مطالب بهروز در حوزه درس هست لذا باید منابع اصلی متعلق به سه سال اخیر باشند. زمان هر ارائه 15 تا 20 دقیقه است. موضوع ارائه با هماهنگی استاد درس تعیین شده و میتواند (و نه محدود به) شامل موضوعات زیر باشد:
- هوش مصنوعی اعتمادپذیر و لزوم آن در پردازش زبان طبیعی
- یادگیری تقویتی در مدلهای زبانی بزرگ (LLM)
- روشهای استدلال در مدلهای زبانی بزرگ (LLM)
- مروری بر نحوه آموزش DeepSeek و بهینهسازیهای انجام شده در آن
- مروری بر کتابخانهها و ابزارهای مدرن در پردازش زبان
- نحوه ساخت Agentها با LLMها و چالشهای آنها
- مدلهای مختلف درخواستنویسی (Prompt) برای LLMها
- نحوه تطبیق مدلهای زبانی بزرگ (LLM) برای یک زبان/موضوع جدید
- مروری بر Bard و ChatGPT و نحوه ساخت آنها
- مروری بر کتابخانهها و ابزارهای مدرن در پردازش گفتار
۵. پروژه: برای درس، هر دانشجو میتواند (به صورت اختیاری) یک پروژه کاربردی جهت پیادهسازی انتخاب کرده و آن را در Python (یا سایر زبانهای برنامهنویسی) پیاده کند. پروژه حتما باید دارای پیادهسازی باشد و کار مطالعاتی به تنهایی پروژه محسوب نمیشود. در پروژه نیاز به نوآوری نیست و انجام یک کار مشابه آنچه که قبلا در یک مقاله یا پایاننامه انجام شده است، مورد قبول است. دانشجویانی که علاقمند به انجام پروژه هستند باید تا تاریخ اعلام شده موضوع پروژه خود را اعلام کرده باشند؛ اعلام موضوع پس از آن مورد پذیرش نخواهد بود و به معنای عدم انجام پروژه است.
در زمان تحویل پروژه، موارد زیر باید تحویل شود:
- کلیه کدهای پروژه
- گزارش مکتوب (به صورت تایپ شده) شامل توضیح روش و جزئیات پیادهسازی و نتایج بدست آمده و تحلیلهای مربوطه
- دادههای مورد استفاده در پروژه
- مقالهها و منابع مورد استفاده
- نمره پروژه به صورت نمره مازاد در نظر گرفته میشود. بارم بندی نمرات به صورت زیر است:
- انجام درست پیادهسازی و مرتب بودن کدها: 50%
- کامل بودن گزارش (شامل نحوه استفاده از کد و مبانی علمی کار) و رعایت اصول نگارشی در آن: 25%
- ارائه نتایج و تحلیل آن (در گزارش): 25%
هر دانشجو میتواند با هماهنگی استاد موضوع خود را انتخاب کرده و در طول ترم اعلام نماید. موضوع پروژه الزاما باید مرتبط با مطالب درس باشد. موضوع پروژه الزاما باید در راستای بحث یادگیری ماشین و پردازش زبان باشد. برخی از موضوعهای پیشنهادی برای پروژه در زیر آورده شده است. الزامی نیست موضوع پروژه حتما از عنوانهای زیر باشد:
- تشابهیابی متن با استفاده از نمایشهای مبتنی بر یادگیری عمیق (مانند Bert)
- دستهبندی/خوشهبندی معنایی کلمات در یادگیری عمیق
- تشخیص گفتار فارسی با مدلهای یادگیری عمیق
- تبدیل متن به گفتار با استفاده از شبکههای عمیق مانند مبدلها یا GAN
- تولید خودکار متن (مانند متن یا شعر) با شبکههای عصبی عمیق
- استفاده از LLMها برای ساخت یک عامل (Agent) اختصاصی
۶. بازنگری نمرهها و برگهها: دانشجویانی که درخواست دارند هر کدام از نمرات آنها بازنگری شود و یا برگههای آزمونهای خود را ببینند، در تاریخی که برای تحویل پروژه درس اعلام میشود (هفته بعد از آخرین امتحان پایانترم)، میتوانند این کار را انجام دهند. رسیدگی به همه موارد فقط در این تاریخ انجام میشود.
۷. تقلب و کپیبردای: هدف درس تمرین و یادگیری مطالب موردنظر توسط دانشجو در طول ترم است و لازم است تمام مطالب مربوط به تمرینها و پاسخدهی به آزمونها توسط خود دانشجو انجام شود. هرچند همکاری و همفکری دانشجویان در حل مسائل درس در مواردی مانند حل تمرینها اکیدا توصیه میشود، اما پاسخ نهایی سوالها باید توسط هر دانشجو به صورت مستقل نوشته شود. در صورتی که در هر شرایطی مشخص شود که تمام یا بخشی از مطالب توسط دانشجو آماده نشده و کپیبرداری مستقیم و بدون مرجع بوده است، تقلب تلقی شده و مطابق قوانین انضباطی دانشگاه با آن رفتار میشود.
نمرهها
دانشجویان عزیز، با داشتن شماره دانشجویی می توانید نمرات خود را مشاهده کنید.
سعی شده است امتیازات با نهایت دقت و انصاف محاسبه شود.
برای مشاهده هر بخش، روی عنوان آن کلیک و سپس روی دانلود کلیک کنید.