ChatGPT چگونه کار میکند؟
ChatGPT چگونه کار میکند؟
هوش مصنوعی را میتوان بدون شک ترندترین موضوع سال ۲۰۲۳ دانست. و در بین همه محصولات هوش مصنوعی، چتجیپیتی (ChatGPT) از محبوبیت بالایی برخوردار است.
همه ما چتجیپیتی را با توانایی درک متنهای پیشرفته و ارائه پاسخهای صحیح و دقیق میشناسیم. بااینحال، کمتر کسی از نحوه ایجاد و سپس کارکرد این هوش مصنوعی محبوب خبر دارد.
چتجیپیتی چتباتی است که از فناوری هوش مصنوعی استفاده میکند و به ما امکان میدهد تا مکالمههایی مشابه گفتوگوهای روزمره را با این ربات تجربه کنیم. مدل زبانی چتجیپیتی میتواند به سؤالات مختلف جواب دهد و در انجام کارهایی مانند نوشتن ایمیل یا مقاله یا حتی کدنویسی به ما کمک کند.
اما سؤال این است که چتجیپیتی چگونه موفق شده پرسشها را درک کند و پاسخهای دقیق ارائه دهد؟ اخیراً نویسندهای در رسانه Towards Data Science این موضوع را بهطورمفصل بررسی کرده و نتایج را به اشتراک گذاشته است. ما هم در این مطلب ترجمه این نتایج را با شما در میان میگذاریم.
پاسخهای دقیق و صحیح چتجیپیتی حاصل بهرهبردن از فناوریهای پیشرفته و سالها تحقیق و بررسی است. فناوری و نحوه عملکرد چتجیپیتی ممکن است پیچیده باشد؛ بههمیندلیل، در این مطلب تلاش میکنیم تا جزئیات این چتبات را به روشی ساده بررسی کنیم.
برای این منظور، ابتدا مدلهای زبان بزرگ را معرفی میکنیم. درادامه به مکانیسم آموزش GPT-3 اشاره میکنیم و درنهایت یادگیری با بازخورد انسانی را بررسی میکنیم که به عملکرد تحسینبرانگیز چتجیپیتی منجر شده است. برای آشنایی بیشتر با چتجیپیتی، تا پایان مطلب با ما همراه باشید.
آشنایی با مدل زبان بزرگ
مدل زبان بزرگ (LLM) یکی از مدلهای یادگیری ماشینی و آموزش هوش مصنوعی بهحساب میآید که برای تفسیر زبان انسانی ایجاد شده است. LLM بهعنوان پایگاه عظیم داده و نوعی زیرساخت فناوری عمل میکند که مقادیر زیادی از دادههای متنی را میتواند پردازش کند.
امروزه با پیشرفت تکنولوژی و قدرت محاسباتی، کارایی LLMها بسیار بیشتر از گذشته شده است؛ زیرا با افزایش مجموعه دادههای ورودی و فضای پارامترها، قابلیتها و عملکردهای LLM نیز افزایش پیدا میکند.
روش آموزشی استاندارد برای LLMها پیشبینی کلمه بعدی در دنبالهای از کلمات بهکمک مدل حافظه طولانی کوتاهمدت (LSTM) است. LSTM میتواند با دادههای ترتیبی (Sequential Data) مانند متن و صدا کار کند.
در این روش آموزشی، LLM باید عبارات و کلمات قبل و بعد را بررسی و براساس نتایج این بررسی، جای خالی عبارت را با مناسبترین کلمه پر کند. این فرایند بارها تکرار میشود تا مدل بتواند پاسخهای دقیقی ایجاد کند.
فرایند مذکور در قالب پیشبینی توکن بعدی (NTP) و مدل زبانی نقابدار (MLM) انجام میشود. در هر دو مدل، هوش مصنوعی باید بهترین کلمه را برای پرکردن جای خالی انتخاب کند؛ اما محل جای خالی متفاوت است.
محدودیتهای آموزش با LSTM
آموزش با LSTM محدودیتهایی نیز بههمراه دارد. به این مثال توجه کنید:
علی … درس خوندنه (مشتاق / مخالف)
اگر از شما خواسته شود تا جای خالی را با کلمه صحیح پر کنید، در ابتدا باید درباره «علی» بدانید؛ زیرا علایق افراد متفاوت است. پس اگر بدانید که علی به درس و تحصیل علاقهمند است، «مشتاق» را انتخاب میکنید.
بااینحال، مدل نمیتواند ارزشگذاری کلمات را بهدرستی و بهدقت انجام دهد؛ بنابراین، ممکن است در این عبارت اهمیت «درسخواندن» را بیشتر از «علی» بداند. ازاینرو، باتوجهبه اینکه بسیاری از افراد از درسخواندن و انجام تکالیف درسی بدشان میآید، مدل کلمه «مخالف» را انتخاب میکند.
همچنین، در این مدل دادههای ورودی بهجای مجموعهای کامل، بهصورت جداگانه و متوالی پردازش میشوند؛ بنابراین، در LSTM درک و پردازش پیچیدگی روابط بین کلمات و معانی محدود است.
مدل ترنسفورمر (Transformer)
در پاسخ به این مسئله، در سال ۲۰۱۷ تیمی از Google Brain مدلی به نام مدل انتقالی یا ترنسفورمر (Transformer) را معرفی کرد. برخلاف LSTM، ترنسفورمرها میتوانند تمام دادههای ورودی را همزمان پردازش کنند.
ترنسفورمرها از مکانیسمی بهنام خودتوجه (Self-Attention) نیز استفاده میکنند. مکانیسم خودتوجه ارتباط اجزای مجموعهای از دادهها را میسنجد تا بتواند برداشت دقیقتری از کل مجموعه کسب کند.
بنابراین، بهکمک این مکانیسم ترنسفورمرها میتوانند اجزای مختلف جمله و عبارت را دقیقتر بررسی و ارتباط آنها را درک کنند. این ویژگی باعث میشود تا ترنسفورمرها مجموعه دادهها را بهتر درک و پردازش دادههای بسیار بزرگتر را امکانپذیر کنند.
مکانیسم خودتوجه در GPT
شرکت اوپنایآی (OpenAI) چتجیپیتی را توسعه داده است. چتجیپیتی، تنها مدل هوش مصنوعی و چتبات این شرکت نیست؛ زیرا از سال ۲۰۱۸، این شرکت نمونههایی اولیه به نام مدلهای ترنسفورمر تولیدگر ازپیشآموزشدیده (GPT) را توسعه داده است.
اولین مدل GPT-1 نام گرفت که نسخههای بهبودیافته بعدی آن در سالهای ۲۰۱۹ و ۲۰۲۰ با نامهای GPT-2 و GPT-3 عرضه شدند. اخیراً و در سال ۲۰۲۲ نیز، رونمایی جدیدترین مدلهای آن، یعنی InstructGPT و ChatGPT را شاهد بودهایم.
درحالیکه تغییر از GPT-1 به GPT-2 با جهش تکنولوژی چندانی همراه نبود، GPT-3 تغییرات بزرگی به خود دید. پیشرفتهای حاصلشده در کارایی محاسباتی به GPT-3 کمک کرد تا روی دادههای بسیار بیشتری از GPT-2 آموزش ببیند و پایگاه دانش متنوعتری داشته باشد. بنابراین، در نسخه سوم GPT توانست وظایف گوناگونی را انجام دهد.
تمام مدلهای GPT از معماری ترنسفورمر استفاده میکنند و یک انکودر (رمزگذار) برای پردازش توالی دادههای ورودی و یک دیکودر (رمزگشا) برای تولید دادههای دنباله خروجی دارند.
هر دو انکودر و دیکودر از مکانیسم خودتوجه چندسر (Multi-Head Self-Attention) بهره میبرند که به مدل امکان میدهد تا بخشهای مختلف دنباله را بررسی و تحلیل کند. برای این کار، مکانیسم خودتوجه توکنها (تکههایی از متن که میتواند شامل جمله یا کلمه یا گروه دیگری از متن باشد) را به وکتورهایی (Vector) تبدیل میکند که میزان اهمیت توکن را در عبارت نشان میدهند.
انکودر نیز از مدل زبانی نقابدار (Masked Language Modeling) برای درک رابطه بین کلمات و ارائه پاسخهای بهتر استفاده میکند. علاوهبر این ویژگیها، مکانیسم خودتوجه چندسر استفادهشده در GPT بهجای بررسی یکباره اهمیت کلمات، چندینبار فرایند آن را تکرار میکند که باعث میشود تا مدل بتواند مفاهیم فرعی و روابط پیچیدهتر دادههای ورودی را درک کند.
مشکلات و محدودیتهای GPT-3
اگرچه GPT-3 پیشرفتهای چشمگیری در پردازش زبان طبیعی (زبانهای کاربردی برای بشر) بههمراه داشت، در این نسخه پیشرفته نیز مشکلات و محدودیتهایی دیده میشد. برای نمونه، GPT-3 در درک صحیح و دقیق دستورالعملهای کاربران مشکل دارد و نمیتواند آنطورکه باید و شاید، به آنان کمک کند. علاوهبراین، GPT-3 اطلاعات و دادههای نادرست یا ناموجود را منتشر میکند.
نکته مهم دیگر اینکه مدل یادشده نمیتواند درباره عملکرد خود توضیحات مناسبی ارائه دهد و کاربران نمیدانند که GPT-3 چگونه نتیجهگیری و تصمیمگیری کرده است. نسخه سوم فیلترهای مناسبی نیز ندارد و ممکن است که محتوای توهینآمیز یا آسیبزا منتشر کند. اینها مشکلاتی است که اوپنایآی تلاش کرد تا در نسخههای بعدی آنها را رفع کند.
چتجیپیتی و مراحل شکلگیری آن
بهمنظور رفع مشکلات GPT-3 و بهبود عملکرد کلی LLMهای استاندارد، اوپنایآی مدل زبان InstructGPT را معرفی کرد که درادامه، به ChatGPT تبدیل شد.
InstructGPT درمقایسهبا مدلهای گذشته OpenAI بهبودهای بزرگی به خود دید و رویکرد جدیدش برای استفاده از بازخوردهای انسانی در فرایند آموزش، خروجیهای بسیار بهتری بههمراه داشت. این نحوه آموزش مدل یادگیری تقویتی از بازخورد انسانی (RLHF) نام دارد که نقش مهمی در درک اهداف و انتظارات انسانها بههنگام پاسخ به پرسشها ایفا میکند.
ایجاد این مدل آموزشی و توسعه چتجیپیتی بهدست اوپنایآی شامل سه مرحله کلی میشود که درادامه، آنها را توضیح میدهیم.
مرحله ۱: مدل تنظیم دقیق نظارت شده (SFT)
در مراحل اولیه توسعه، برای ارتقا و بهبود GPT-3 اوپنایآی چهل پیمانکار استخدام کرد تا مجموعه داده آموزشی نظارتشده را برای یادگیری مدل ایجاد کنند. این دادههای ورودی و درخواستها از کاربران واقعی و اطلاعات ثبتشده در OpenAI جمعآوری شدند. با این مجموعه داده، درادامه GPT-3.5 ایجاد شد که به آن مدل SFT نیز گفته میشود.
تیم اوپنایآی تلاش کرد تا تنوع در مجموعه دادهها را بهحداکثر برساند و تمام دادههای حاوی اطلاعات شناسایی شخصی نیز از این دادهها حذف شدند. پس از جمعآوری درخواست و دادهها، OpenAI از مشارکتکنندگان خواست تا نحوه درخواست و پرسش کاربران را شناسایی و دستهبندی کنند. در نتیجه این بررسی، سه راه اصلی درخواست اطلاعات مشخص شد:
- درخواستهایی که مستقیم پرسیده میشوند؛ مثلاً «به من درباره موضوعی توضیح بده».
- درخواستهای فیوشات که پیچیدهتر هستند؛ مثلاً «براساس دو نمونه داستانی که فرستادم، داستانی جدید با همان موضوع بنویس».
- درخواستهای ادامهدار که باید موضوعی ادامه داده شود؛ مثلاً «باتوجهبه مقدمه، این داستان را تمام کن».
درنهایت، جمعآوری دستورهای ثبتشده در دیتابیس OpenAI و دستنویسشده مشارکتکنندگان به ایجاد ۱۳هزار نمونه ورودی و خروجی برای استفاده در مدل منجر شد.
مرحله ۲: مدل پاداش
پس از آموزشدادن SFT در مرحله اول، مدل این توانایی را پیدا کرد تا پاسخهای مناسبتری به درخواستهای کاربران دهد. بااینحال، این مدل همچنان ناقص بود و باید بهبود پیدا میکرد؛ بهبودی که بهکمک مدل پاداش و با یادگیری تقویتی میسر شد.
در این روش، مدل تلاش میکند تا بهترین نتیجه را در موقعیتهای مختلف پیدا کند و بهترین عملکرد را از خود نشان دهد. در یادگیری تقویتی، مدل در ازای انتخابها و عملکرد مناسب پاداش دریافت میکند و درصورت داشتن انتخاب و عملکرد نامناسب، جریمه میشود. در این مرحله و در اثر پاداشها و جریمهها، SFT یاد گرفت تا بهترین خروجیها را براساس دادههای ورودی ایجاد کند.
برای استفاده از یادگیری تقویتی، به مدل پاداش نیاز داریم تا مشخص شود که کدام خروجیها پاداش دارد و چه جوابهایی مشمول جریمه میشود. برای آموزش مدل پاداش، اوپنایآی ۴ تا ۹ خروجی مدل SFT را برای هر داده ورودی دراختیار مشارکتکنندگان قرار داد و از آنان خواست تا این خروجیها را از بهترین به بدترین رتبهبندی کنند. با این امتیازبندی، راهی ایجاد شد تا عملکرد SFT سنجیده شود و بهطورمداوم بهبود پیدا کند.
مرحله ۳: مدل یادگیری تقویتی
پس از ایجاد مدل پاداش، در مرحله سوم به مدل ورودیهای تصادفی داده شد تا بکوشد خروجیهایی با بیشترین پاداش و امتیاز ایجاد کند. براساس مدل پاداش توسعهیافته در مرحله دوم، درخواستها و پاداشها بررسی و رتبهبندی میشوند و سپس نتایج بهدستآمده به مدل باز میگردد تا عملکرد بهبود پیدا کند.
روشی که از آن در بهروزرسانی عملکرد مدل هنگام تولید هر پاسخ استفاده شد، بهینهسازی سیاست پروگزیمال (PPO) نام دارد که در سال ۲۰۱۷، جان شولمن (John Schulman)، یکی از بنیانگذاران OpenAI و تیمش آن را توسعه دادند.
PPO جریمه کولبکلیبر (KL) نیز دارد که در این مدل بسیار مهم است. در یادگیری تقویتی، مدل گاهی اوقات میتواند یاد بگیرد که سیستم پاداشش را برای دستیابی به نتیجه دلخواه دستکاری کند. این امر مدل را به ایجاد برخی از الگوهایی سوق میدهد که با وجود امتیاز بیشتر، خروجی مناسبی ندارند.
برای رفع این مشکل، از جریمه KL استفاده میشود. این ویژگی باعث میشود تا برای ایجاد خروجی فقط امتیاز بیشتر ملاک نباشد و با خروجی ایجادشده SFT در مرحله اول، تفاوت زیادی وجود نداشته باشد.
ارزیابی مدل
پس از تکمیل مراحل اصلی ایجاد و تمرین مدل، در این مرحله مجموعهای از آزمایشها در طول آموزش انجام میشود تا مشخص شود آیا مدل جدید عملکرد بهتری از مدل قبلی دارد یا خیر. این ارزیابی شامل سه بخش است.
در ابتدا عملکرد کلی و توانایی مدل برای بررسی و پیروی از دستورالعملهای کاربر بررسی میشود. باتوجهبه نتایج آزمایشها، مشارکتکنندگان خروجیهای InstructGPT را تقریباً در ۸۵درصد مواقع به GPT-3 ترجیح دادند.
مدل جدید توانایی بیشتری در ارائه اطلاعات داشت و بهکمک PPO، اطلاعات صحیحتر و دقیقتری در خروجیها دیده شد. درنهایت، توانایی InstructGPT برای انتشار یا جلوگیری از محتوای نامناسب و تحقیرآمیز و آسیبزا نیز بررسی شد.
بررسیها نشان داد که مدل جدید میتواند محتوای نامناسب را بهشدت کاهش دهد. جالب است بدانید در زمانیکه از مدل خواسته شد تا از عمد پاسخهای نامناسب منتشر کند، خروجیها بسیار توهینآمیزتر از مدل GPT-3 بودند.
با پایان مراحل ارزیابی، InstructGPT پیشرفتهای بسیار خوبی ثبت کرد و عملکردش را در چتبات محبوب ChatGPT نشان داد. درصورتیکه درباره نحوه توسعه و عملکرد چتجیپیتی سؤالات بیشتری دارید، میتوانید مقاله رسمی منتشرشده توسط اوپنایآی را مطالعه کنید.