چگونه OpenAI هوش مصنوعي GPT-2 را توسعه داد؟
امروز، سازمان ملل متحد خواستار كنارگذاشتهشدن فوري تمامي تسليحات هستهاي جهان شد.
حتما بهدنبال نويسنده اين نقلقول هستيد. تصور عموم اين است كه اين جمله را نويسنده يا ويراستار يكي از وبسايتهاي خبري نوشته باشد؛ درصورتيكه هيچ انساني آن را ننوشته است. جملهاي كه خوانديد، مدل زباني GPT-2 نوشته است. هوش مصنوعي OpenAI با الگوريتم جديد مدلسازي زبان، اين جمله را تنها با دراختيارداشتن كليدواژهي «امروز» خلق كرده است.
جدا از نام فانتزي انتخابشده براي اين فناوري، الگوريتم مدلسازي زبان GPT-2 قابليت نسبي و تاحدودي منسجم در بخش معناشناسي دارد. اين الگوريتم مدلسازي زبان از ويژگي زايايي برخوردار است؛ درحاليكه اين ويژگي منحصر به زبان انسان است. زايايي زبان بهمعناي توانايي توليد صورتهاي جديد زباني براساس قواعد موجود در زبان است كه يكي از ويژگيهاي مهم آن بهشمار ميرود. بيش از ۴۰ گيگابايت دادهي اينترنتي بههمراه چيزي نزديك به ۱.۵ ميليارد پارامتر از ساختارهاي متني براي يادگيري اين مدل زباني بهكار گرفته شده است.
بيش از ۴۰ گيگابايت دادهي اينترنتي بههمراه چيزي نزديك به ۱.۵ ميليارد پارامتر از ساختارهاي متني براي يادگيري زبان GPT-2 بهكار گرفته شده است
اين مقادير بسيار زياد هستند؛ اما درواقع آنچه باعث ايجاد شگفتي در دنياي عظيم اينترنت ميشود، نوشتن مقالاتي دربارهي حيوانات چهارشاخ و اسبهاي تكشاخ در كوههاي آند بهوسيلهي GPT-2 نيستند.
نمونهي توليد متني از الگوريتم مدلسازي زبان OpenAI GPT-2
در اين نوشته، قرار نيست بيش از اين دربارهي مدلهاي بهتر زباني و پيامد و متخصصدهاي آنها صحبت كنيم. تا جايي كه به مباحثه ما مربوط ميشود، سعي بر آن است با نحوهي كار و چگونگي كدنويسي بزرگترين توليدكننده الگوريتم متني بيشتر آشنا شويم كه تا بهحال بشر با آن روبهرو شده است.
توجه كنيد مدل GPT-2 ساخت ما قرار نيست با توليد نقلقولهاي جعلي از برگزيت (Brexit) كار خود را آغاز كند. پيشتر، نسخه GPT-2 چند نقلقول ساختگي از سازندگان خود توليد كرده و توانسته بود حين نگارش متن آزمايشي دربارهي برگزيت، نقلقولهايي جعلي از رهبر حزب نيروي ساده انگلستان توليد كند. مدل اصلي GPT-2 ماهها است كه يادگيري ميبيند و از پردازندههاي گرافيكي بسيار قدرتتمند (100+ GPUs) استفاده ميكند.
بعيد بهانديشه متخصصين ميرسد متخصصي اينچنيني توان پردازشي را در خانهي خود داشته باشد؛ پس همينكهmini-GPT خانگي ما بتواند اصول دستوري مربوطبه فعلوفاعل را بهدرستي رعايت كند، خود قدم بزرگي است.
GPT-2 چيست؟
در تمام مقالات OpenAI دربارهي هوش مصنوعي و تحقيقات مربوطبه يادگيري عميق، اصطلاحات متخصص و تخصصي مانند ضرايب ماتريسها بهچشم ميخورد. بهتر است قبل از شروع تخصصي مباحثه، مطالبي را روشن كنيم تا فهم مطالب آسانتر شود.
GPT-2 مخفف چه واژههايي است؟ حرف G مخفف واژه Generative بهمعناي «توليدكننده يا زايا» و حرف P مخفف واژهي Pretrained بهمعناي «پيشيادگيري دادهشده» و حرف T مخفف واژهي Transformer بهمعناي «مبدل» است.
GPT-2 چگونه كار ميكند؟
قبل از مباحثه دربارهي چگونگي كاركرد GPT-2، بهتر است بهطورخلاصه پيشرفت و نحوهي كار NLP را تا سال ۲۰۱۸ مطالعه كنيم. در اينجا، مفاهيم پيشرفتهي رياضي با استفاده از تصاوير توضيح داده شده است.
۲۰۱۸:
OpenAI Transformer v1 (aka GPT-1) = ULMFiT + Transformer
۲۰۱۹:
GPT-2 = GPT-1 + reddit + A lot of compute
اطلاعات ارائهشده در بالا نيازمند دانش و اطلاعات پيشزمينهاي در اين حوزه است؛ پس طبيعي است اگر فهم اين مطالب برايتان دشوار باشد. يادآوري اين نكته مهم است كه ELMO و BERT دو مدلي بودند كه باعث پيشرفت GPT-2 شدند. با توسعهي مدل ELMO، اين مسئله براي پردازش زبان طبيعي محرز شد كه بازنماييهاي برداري حساس به بافت خيلي بهتر از بردارهايي مانند word2vec ميتوانند در پردازش زبان مؤثر باشند.
اين بردارها ويژگيهاي بدون ناظري هستند كه روي متن خام بسيار بزرگ بدون برچسب ياد گرفته ميشوند و در مسائل مختلف پردازش زبان، بهصورت ويژگي كمكي به ردهبندي (معمولا شبكه عصبي) كمك ميكنند. بعد از ELMO، مدلهاي ديگري ازجمله BERT بهوجود آمدند كه ازانديشه متخصصين محاسباتي پيچيدهتر، ولي ازانديشه متخصصين دقت عملي بسيار قويتر هستند. اگر تا به اينجاي مطلب، اطلاعاتي درباره الگوريتمها و مدلها و فناوريهاي GPT-2 دستگيرتان شده، بايد به شما تبريك گفت؛ چراكه مفاهيم اوليهي مدل NLP را متوجه شديد.
Transformers
همانطوركه قبلا گفته شد، ترنسفورمرها معماري بينظيري از شبكههاي عصبي هستند. آنها بهعنوان جعبهسياه كار پردازش را انجام ميدهند و درواقع، ساختاري براي انجام محاسبات در GPT-2 هستند؛ اگرچه در واقعيت ممكن است چيزي جز انتزاع بهانديشه متخصصين نرسند.
مدلهاي پيشيادگيريديده زباني
روند ديگري كه NLP از سال ۲۰۱۸ پيش گرفت، استفاده از يادگيري انتقالي بود. از يادگيري انتقالي سالها است كه در بينايي رايانهاي ( استفاده ميشود؛ اما اخيرا NLP براي استفاده در پروژههاي خود از آن بهرهمند شده و آنقدر در متخصصدش موفق بوده كه تاكنون هنوز از آن استفاده ميكند. يادگيري انتقالي (Transfer Learning) يكي از روشهاي يادگيري در يادگيري ماشين (Machine Learning) است كه بر ذخيرهسازي دانش كسبشده ضمن حل مسئله و اعمال آن بر مسائل متفاوت، ولي مرتبط ديگر متمركز شده است.
يادگيري انتقالي به دو روش معمولا انجام ميشود: روش مبتنيبر ويژگي (Feature-based) و روش مبتنيبر تنظيم دقت (Fine-tuning). مدل ELMO از روش مبتنيبر ويژگي استفاده ميكند. در اين روش اطلاعات محتوايي بردارهاي متني بهوسيلهي بردارهاي حالت پنهان از مدلسازي زبان به بردار كلماتي موجود ايجاد ميشوند. شايان ذكر است مدلهاي BERT و GPT از روش مبتنيبر ويژگي استفاده نميكنند. طبق تحقيقات سال ۲۰۱۸، اين نتيجه حاصل شد كه روش مبتنيبر تنظيم دقت كارآمدتر است؛ چراكه ازطريق شبكهي عصبي بازگشتي به مدل زباني اجازهي اصلاح خواهد داد.
ترنسفورمرها و مدلهاي زباني پيشيادگيرييافتهي
مدل جديدي كه OpenAI در هوش مصنوعي خود بهكار گرفته، مدلي از تيمي موفق است؛ تركيبي كه همهي اجزاي آن مانند معماري فوقالعاده ترنسفورمرها و ويژگي Fine-tuning در مدل زباني و مدلهاي پيشيادگيري زباني همه دستبهدست هم داده تا مدل زبان موفقي بهوجود آورد. يكي از روشهاي متداول حل مسئلهي بهينهسازي در شبكههاي عصبي، قابليت بازگشت به عقب (Back Propagation) است. GPT از دل روش بازگشت به عقب متولد شد. بااينحال، دستيابي به موفقيت GPT به اين آساني نبود و چندين مانع در اين راه وجود داشت. نخستين مانع معماري ترنسفورمرها بود؛ زيرا معماري آنها آنقدر پيچيده و پيشرفته بود كه اصلا مشخص نبود چگونه ميتوان از اين معماري براي مدلسازي زبان استفاده كرد. براي اينكه بهتر متوجه شويد، به نمودار زير نگاه كنيد.
ترنسفورمر از الگوريتمي كه به آن داده ميشود، انتظار دارد جملهاي كامل باشد. در اينجا مفهوم جمله بهمعناي توالي ثابتي از كلمات به طول ۵۱۲ كاراكتر است، نه جملهاي در مفهوم رايج. سپس، اين اطلاعات ورودي رمزگذاريشده با استفاده از رمزگشا (Decoder) تبديل ميشوند.
اين عملكرد براي برنامههاي مرحلهاي داراي توالي، مانند ترجمهي ماشيني و سيستمهاي مبتنيبر پرسشوپاسخ، بسيار مفيد و كارآمد است؛ اما براي مدلسازي زباني عملكرد مناسبي ندارد. مدل زباني بايد به قابليت پيشبيني مجهز باشد؛ بهطوريكه بتواند واژهي بعدي در دنبالهي جمله را بهدرستي پيشبيني كند.
خوشبختانه بخش رمزگشا در ترنسفورمر تاحدودي ميتواند اين كار را انجام دهد. دقت كنيد بخش رمزگشا چگونه كار ميكند. رمزگشا باتوجهبه بازنمايي رمزگذاريشدهي توالي، دنبالهي جديدي را كلمهبهكلمه توليد ميكند.
(wordt =Decoder(wordt−1,encoding
اگر فقط بخش رمزگذاري (encoding) را از فرمول بالا حذف كنيم، فرمول جديدي بهدست ميآيد:
(wordt=Decoder(wordt−1
فرمول جديد دقيقا همان چيزي است كه مدلسازي زبان بايد انجام دهد. درنتيجه، بايد بخش رمزگذاري در ترنسفورمر كنار گذاشته شود تا معماري نهايي مدلسازي زبان بهصورت زير حاصل شود.
بهطورخلاصه، معماري GPT چيزي جز قابليت بخش رمزگشاي شبكهاي منظم در ترنسفورمر با كنارگذاشتن بخش رمزگذاريشده نيست.
ويژگي Fine-tuning در GPT
آنچه تاكنون گفته شد، تنها نيمي از داستان است. GPT تنها بهدليل نوآوري و خلاقيت ويژگي Fine-tuning قادر خواهد بود چندين تكليف را بهطورهمزمان انجام دهد. تا به اينجا، مدل زباني خوب و كارآمدي داريم كه به پويايي زبان انگليسي دست پيدا كرده است. اين دستاورد حاصل ماهها يادگيري با پيكرهي متني بسيار بزرگ برگرفتهشده از اينترنت است.
تا اينجاي كار، بهصورت انديشه متخصصيني اگر يك يا دو تكليف خاص را به مدل زباني بدهيم، بهراحتي ميتوان قابليتهاي ارتقايافته زبانشناختي را در اين مدل زباني مشاهده كرد؛ درحاليكه اين مدل زباني با تكاليف ارائهشده سازگاري دارد.
حال مشخص شده اين قابليت، تنها در مرحلهي انديشه متخصصيني باقي نمانده و اين روش بهطورعملي كار ميكند. اين مدل آنقدر كارآمد است كه بهعنوان هنر بنچمارك در NLP شناخته شده است؛ آنقدر كارآمد كه ميتواند بهعنوان ImageNet در NLP تحسينبرانگيز باشد.
گام كوچكي براي انسان، جهش غولآسايي براي مدل زباني
GPT عالي بود؛ اما نه براي هميشه. كمي بعد، رويكرد مشابه ديگري با نام BERT را تيم مدلسازي زبان گوگل پس از GPT منتشر كرد. طرفداران NLP مانند بچهاي كه در فروشگاه آبنبات خوشرنگتري ديدهاند، GPT را رها كردند؛ اگرچه اين دوري چندان طول نكشيد و OpenAI با ايدهاي متحولكننده و انقلابي براي ارتقاي مدل زباني خود بازگشت.
عاملي كه BERT را در آن زمان برتر جلوه داده بود، استفاده از مدل دوسويهي زباني (Bidirectional Language Model) بود؛ درحاليكه GPT از مدل تكسويه (Unidirectional Language Model) زباني استفاده ميكرد. مدل دوسويه سازوكاري براي نگهداري سازگاري ميان دو يا چند منبع اطلاعاتي مرتبط است. مزيت مدل دوسويه تضمين برقراري سازگاري بهوسيلهي ساختار زبان است. اگرچه در اينجا قرار نيست درباره اين موضوع صحبت كنيم كه كداميك ارزشمندتر هستند.
ميتوان تصور كرد احتمالا مباحثه شكلگرفته در هيئتمديرهي OpenAI روزي كه فناوري BERT در مقالهاي منتشر شد، اينگونه بوده باشد:
مدير:
بهانديشه متخصصين ميرسد عملكرد BERT بهتر از ايدهي ما است. چگونه كار ميكند؟
مهندس تصادفي ۱:
خُب، مثل اينكه نوعي مدلسازي زبان مخفي (Masked Language Modeling) است و درصد مشخصي از كلمات را مخفي ميكند و با اين كار مدل زباني را يادگيري ميدهد كه بتواند باقي كلمات را بهدرستي پيشبيني كند. آنها از مدلي دوسويه استفاده ميكنند كه عميقا رمزگذاري ميكند.
مدير:
شفافتر بگو، لطفا.
مهندس تصادفي ۱:
مدل آنها دقيقا شبيه مدل ما است، با اين تفاوت كه يك جفت چشم اضافي در پشتسرش هم دارد.
مدير:
بنابراين سؤال مهم اين است: چگونه ميتوانيم با آنها مقابله كنيم؟
مهندس تصادفي ۲:
ما هم ميتوانيم مدلي دوسويه يادگيري دهيم؛ اما اين فقط كپي كار آنها ميشود. يا شايد ما بتوانيم به...
مهندس تصادفي ۱:
خير، اين دقيقا شبيه به چرخهاي بيپايان است. اگر آنها امروز فناوري BERT را معرفي كردند، احتمالا در آينده مدل بهتري را جايگزينش ميكنند. ما بايد بهدنبال راهحلي منطقي و بلندمدت باشيم.
كارآموز:
ميدانيد، ما فقط بايد GPUها و دادههاي بيشتري به مدل خودمان اضافه كنيم.
همه آن سه نفر باهم:
تو نابغهاي!
صفحهي اول اينترنت
درعوض تلاش براي شكست BERT، محققان OpenAI تصميم گرفتند نسخهي جديدي از GPT را با نام جديد GPT-2 معرفي كنند. ايجاد تغيير ماهيتي، رمز موفقيت آنها بود. بهبياني ساده، BERT براي تكليف زباني جاي خالي را پر كنيد (Fill-in-the-blanks) مناسب بود؛ چون براي اين كار يادگيري ديده بود؛ درحاليكه هوش مصنوعي جديد GPT-2 در تكليف زباني نوشتن مقالات بسيار عالي عمل ميكرد. محققان OpenAI تصميم گرفتند نسخهي جديد را براي نوشتن مقالات زباني بهتر يادگيري دهند.
بايد اعتراف كرد آنچه باعث شد GPT-2 باارزش شود، بيشك ابعاد بسيار عظيم اين مدل است. BERT فقط ۳۴۰ ميليون پارامتر از ساختار متني را دارد و GPT-2 درمجموع ۱.۵ ميليارد پارامتر.
كواك لي ميگويد:
درنتيجهي تلاشهاي ما در توسعهي يادگيري متوالي نيمهنظارتي (BERT ،(Semi-supervised Sequence و ELMO نشان دادند با اعمال تغييرات در الگوريتم، امكان دستيابي به دقتهاي بالا وجود دارد. اكنون باتوجهبه اين نتايج رضايتبخش در مدل زباني Vanilla، مشخص شده بهبود عملكرد در مقياس بزرگ نيز امكانپذير است. اين هيجانانگيز است!
اين دستاورد با دراختيار داشتن بخش بزرگي از دادههاي رديت (Reddit) امكانپذير شد؛ چراكه محققان OpenAI به اين نتيجه رسيدند كه قطعا رديت محل مناسبي براي بهدست آوردن متون باكيفيت است.
بهطورخاص، OpenAI هوش مصنوعي GPT-2 را برپايهي دادههاي متني دريافتشده از لينكهاي Reddit يادگيري داد كه متخصصان و نويسندگان ارسال ميكردند. تمام دادههاي گرفتهشده از لينكهاي وب و... متن بودند؛ بههميندليل، به ديتاست بهدست آمده WebText گفته شد.
زمانيكه BERT روي تكاليف زباني «جاي خالي را پر كنيد» متمركز بود، كسي فكرش را هم نميكرد كه GPT-2 بتواند مانند شكسپير بنويسد. درحقيقت، GPT-2 عملكرد بهتري در مدلسازي زبان دارد. بههرحال، بسيار فوقالعاده است كه امروزه، الگوريتمي زباني دراختيار داريم كه ميتواند متون تقريبا منسجمي را توليد كند.
هر دو مدل زباني قصد دارند مدل زباني پيشيادگيريديده و كارآمدي درزمينهي محتواييمتني يادگيري انتقالي باشند؛ اما بايد پذيرفت كه GPT-2 قابليتهايي ماورائي و البته پنهاني است كه رسانههاي امروزي با مشاهدهي مطالبي كه از GPT-2 دربارهي حيوانات چهارشاخ و اسبهاي تكشاخ در كوههاي آند منتشر شده، انگشتبهدهان ماندند.
كلام آخر
بعد از خواندن اين مطالب اگر احساس كرديد چيز زيادي دستگيرتان نشده، جاي نگراني نيست. در اينجا، با اصطلاحات متخصص و تخصصي فراواني روبهرو شديد كه هركدام از آنها بهتنهايي دنيايي دارند. بنابراين، چنانچه علاقهمنديد اطلاعات بيشتر و دقيقتري كسب كنيد، بهتر است در آينده نيز در اخبار تخصصي، علمي، تكنولوژيكي، فناوري مرجع متخصصين ايران با ما همراه باشيد.
هم انديشي ها