تمام توجهها با این مقاله آغاز شد: “توجه تنها چیزی که نیاز دارید” که در سال 2017 منتشر شد و آغازگر دوران Transformers بود. قبل از آن، ما دوران تاریخی قبلی را داشتیم که مدلهایی مانند RNN و LSTMs و مکانیزمهای ساده توجه موجود بودند. بنابراین، از سال 2017، ما شاهد انفجار Transformers در پردازش زبان طبیعی بودیم، جایی که مردم شروع به استفاده از آن برای هر چیزی کردند. حتی از پشتیبانی Google شنیدم که هر بار عملکردشان با زبانشناسان ما افزایش مییابد. در سال 2018 و پس از آن تا 2020، شاهد این انفجار Transformers در سایر زمینهها بودیم، مانند پرسش و جواب و موضوعات دیگر و همچنین زیستشناسی. سال گذشته، 2021، شروعی بود برای گزینههای دیگر.
دورهای که ما فرصتهای زیادی برای مدلسازی داشتیم تقریباً شبیه کداکس آغاز شد، سرور GPT و دیوی و پخش پایدار و بسیاری از چیزهای دیگر در عملکرد ژنتیکی. ما واقعاً شروع به پیشرفت کردیم و اکنون در حال حاضر هستیم، پس این سال ۲۰۲۲ است و شروع کسبوکار در ۲۰۱۳ بود و حالا مدلهایی داریم مثل چاتریسی و ویسپر و چند تا دیگر و در حال توسعه هستیم. این عالی است. بنابراین این آینده است. در ادامه این موضوع، ابتدا عناصری وجود داشتند. ما مدلهای خاص برای افراد داریم، مانند lstns و giu. آنچه در اینجا کارساز بود این بود که آنها در کدگذاری تاریخ خوب بودند، اما آنچه کارساز نبود این بود که آنها در کدگذاری زمینه برای توالیهای طولانی بسیار ضعیف بودند. بنابراین این مثال را در نظر بگیرید: در تلاش برای پیشبینی آخرین کلمه در متن “من در فرانسه بزرگ شدم … من بهطور روان فرانسوی صحبت میکنم” شما باید زمینه را درک کنید تا پیشبینی کنید فرانسوی است و مکانیزم توجه در این مورد بسیار خوب عمل میکند.
اگر فقط از LSTMها استفاده میکنند، خوب کار نمیکند. یک چیز دیگری که ترنسفورمرها خوب هستند، بیشتر بر اساس محتواست، مانند پیشبینی زمینه که یعنی پیدا کردن نقشههای توجه. اگر من چیزی مثل یک کلمه داشته باشم، مانند “آن”، چه نامی به آن متصل میشود و ما میتوانیم یک توجه احتمال را در مورد چه فعالسازیهای ممکن است، بدهیم. و این بهتر از مکانیزمهای موجود کار میکند. خوب، ما در سال 2021 در آستانه پرواز بودیم، شروع به درک پتانسیل ترنسفورمرها در زمینههای مختلف کرده بودیم. ما بسیاری از مشکلات دنباله بلند مانند تا شدن پروتئین، Alpha Fold از NRL را حل کردیم. ما شروع به دیدن تعمیمهای سه-shot و zero-shot کردیم و کارها و برنامههای چندمدلی مانند تولید تصاویر از زبان را شاهد بودیم که آن Dali بود. آره، به نظر میرسد که آسیایی است، اما به شخصه دو سال پیش این نیز یک صحبت در مورد ترنسفورمرها است که میتوانید آن را در یوتیوب تماشا کنید. آره، خوب است. و این جایگاهی است که ما از 2021 به 2022 حرکت میکردیم.
ما از تفکر مجازی به سمت واقعیت حرکت کردهایم و حالا شاهد کاربردهای منحصر به فردی در زمینههای تولید صوت، هنر، موسیقی و روایتگری هستیم. ما شروع به مشاهده قابلیتهای استدلالی مانند عقل سلیم، استدلال منطقی و استدلال ریاضی کردهایم. همچنین اکنون قادر به دریافت دانش انسانی و تعامل هستیم. این قابلیتها از طریق یادگیری هوشمند و بازخورد انسانی تقویت شدهاند و به همین دلیل عملکرد بسیار خوبی دارند. ما در حال حاضر مکانیسمهای زیادی داریم که در مورد مسمومیت، و اخلاق صحبت میکنند و همچنین پیشرفتهای زیادی در زمینههای دیگر مانند مدلهای تقسیمبندی داریم. ویژگی آینده یک سفینه فضایی است و همه ما در مورد آن هیجانزدهایم. همچنین کاربردهای بیشتری وجود دارد که میتوانیم فعال کنیم و اگر شاهد عملکرد ترنسفورمرها در این زمینه باشیم عالی خواهد بود. یک مثال بزرگ در این زمینه فهم و تولید است که موضوع جالبی برای همه است و امیدوارم امسال مدلهای زیادی در این حوزه ببینیم. همچنین در زمینه مالی و تجاری نیز پیشرفتهایی داریم.
من بسیار هیجانزدهام که نویسنده رمان GBT را ببینم، اما ما نیاز داریم که مدلسازی توالیهای بسیار طولانی را حل کنیم و مدلهای تحولآفرین هنوز محدود به حدود چهار هزار توکن هستند، بنابراین باید تلاش کنیم تا آنها را بهتر در توالیهای طولانی تعمیم دهیم. همچنین میخواهیم عاملهای تعمیمیافتهای داشته باشیم که بتوانند کارهای متعددی را به صورت خودکار پیشبینی کنند، مانند گاتو. فکر میکنم بیشتر از این را هم خواهیم دید و در نهایت، ما همچنین میخواهیم مدلهای خاص حوزهای داشته باشیم. بنابراین ممکن است بخواهید مدلی مانند GPT پزشک داشته باشید، یا یک مدل بزرگ GPT که فقط بر روی دادههای حقوقی آموزش دیده باشد. در حال حاضر، ما مدلهای GBD داریم که بر روی همه چیز آموزش دیدهاند، اما ممکن است شروع به دیدن مدلهای تخصصیتری کنیم که در یک وظیفه خاص خوب هستند و میتوانیم یک ترکیب از کارشناسان داشته باشیم، بنابراین میتوان اینطور فکر کرد که این مشابه مشاوره گرفتن از یک کارشناس است که دارای مدلهای هوش مصنوعی متخصص است.
و میتوانید به مدلهای هوایی متفاوتی برای نیازهای مختلف خود بروید. هنوز بسیاری از عناصر ضروری برای موفقیت این کار وجود ندارد. اول از همه، حافظه خارجی است. ما در حال حاضر شروع به دیدن این موضوع در مدلهایی مانند چنتیپیتی کردهایم که در آنها عفونتها کوتاهمدت هستند، هیچ حافظه بلندمدتی وجود ندارد و آنها توانایی یادآوری یا ذخیرهسازی مکالمات برای مدت طولانی را ندارند. و این چیزی است که میخواهیم برطرف کنیم. دومین مورد کاهش پیچیدگی محاسباتی است، زیرا مکانیزم توجه بر اساس توالی به صورت درجهدو عمل میکند و ما میخواهیم که این عمل سریعتر شود. چیز دیگری که ما میخواهیم انجام دهیم، افزایش قابلیت کنترل این مدلها است، زیرا بسیاری از این مدلها میتوانند تصادفی باشند و ما میخواهیم بتوانیم کنترل کنیم که چه نوع خروجیهایی از آنها دریافت کنیم. ممکن است تجربه کرده باشید که در GPT-10 هر بار خروجی متفاوتی دریافت میکنید، اما ممکن است بخواهید که مکانیزمی وجود داشته باشد که کنترل کند چه نوع خروجیهایی تولید میشود.
چیزهایی که میتوانیم بگوییم و در نهایت میخواهیم مدلهای زبانی پیشرفتهمان را با نحوه عملکرد مغز انسان همسو کنیم و در حال بررسی هستیم اما هنوز نیاز به تحقیقات بیشتری داریم تا ببینیم چگونه میتواند مهمتر باشد. خوب، متشکرم، خداحافظ. بله، هیجانزدهام که اینجا هستم، به خاطر اینکه در نزدیکی زندگی میکنم و دعوتهایی برای آمدن به کلاس دریافت کردم و گفتم خوب، فقط پیاده میروم، اما بعد ۱۰ ساعت را صرف آن زمانها کردم، بنابراین اینطور هم ساده نبود. خوب، میخواهم درباره ترانسفورمرها صحبت کنم. میخواهم دو مورد اول را نادیده بگیرم و درباره آن یکی صحبت کنیم تا کلاس را سادهتر کنیم چون زمان داشتهایم. خوب، میخواستم کمی زمینهسازی کنم که چرا این کلاس ترانسفورمرها حتی وجود دارد. کمی زمینه تاریخی میخواهم ارائه دهم. احساس میکنم مانند بیلبو هستم که در حال تعریف کردن این موضوع به شما هستم و فکر میکنم نوشیدنی کمی دیدم. در واقع، من به حوزه هوش مصنوعی در حدود سال ۲۰۱۲ پیوستم، یک دوره ساده، بنابراین شاید یک دهه پیش.
شما حتی نمیگویید که وارد هوش مصنوعی شدهاید، به هر حال این کلمه قبلاً یک کلمه زشت بود، حالا صحبت کردن درباره آن اشکالی ندارد، اما در آن زمان حتی یادگیری عمیق هم نبود، بلکه یادگیری ماشین بود که یک اصطلاح جدی به شمار میرفت. اما حالا فکر میکنم هوش مصنوعی استفاده از آن مشکلی ندارد. بنابراین، آیا شما حتی متوجه هستید که چقدر خوششانس هستید که بهطور بالقوه وارد این حوزه میشوید؟ به طور تقریبی در سال ۲۰۱۱ یا حدود آن وقتی که من بهطور خاص بر روی بینایی کامپیوتری کار میکردم، پایپلاینهای شما به این شکل بودند. شما میخواستید چند تصویر را دستهبندی کنید، به یک مقاله مراجعه میکردید و فکر میکنم این نمایانگر است، شما سه صفحه در مقاله داشتید که انواع متفاوتی از ویژگیها و توصیفگرهای مختلف را توصیف میکرد. شما به جلسه ارائه پوستر در کنفرانس بینایی کامپیوتری میرفتید و همه ویژگیهای توصیفگر مورد علاقه خود را که پیشنهاد میدادند، داشتند و این کاملاً مضحک بود و شما یادداشت میکردید که کدامیک را باید در پایپلاین خود بگنجانید.
زیرا شما همه آنها را استخراج میکردید و سپس یک SVM روی آنها قرار میدادید، بنابراین این کار را انجام میدادید. دو صفحه وجود دارد، مطمئن شوید که هیستوگرامها، SSIMها، هیستوگرامهای رنگی، بافتها، تصاویر کوچک و هیستوگرامهای هندسی خاص را دریافت کردهاید. همه آنها در واقع کدهای پیچیدهای دارند، بنابراین شما کدها را از هر جا جمعآوری میکردید و آن را اجرا میکردید و این یک کابوس کامل بود. علاوه بر این، این کار نیز جواب نمیداد. بنابراین فکر میکنم پیشبینی نمایندگی از آن زمان این بود که شما فقط گاهی پیشبینیهایی مانند این دریافت میکردید و شما فقط شانههای خود را بالا میانداختید و میگفتید که این فقط گاهی اتفاق میافتد. امروز شما به دنبال یک اشکال میگشتید. بدتر از آن، هر حوزه از هر تکهای از هوش مصنوعی دارای واژگان کاملاً جداگانهای بود که با آن کار میکردند. بنابراین اگر به مقالات NLP بروید، آن مقالات کاملاً متفاوت خواهند بود، بنابراین شما در حال خواندن یک مقاله NLP هستید و میپرسیدید که چه خبر است.
اوه، این بخش از برچسبگذاری بخش گفتار، تجزیه و تحلیل مورفولوژیکی، تجزیه نحوی، و حل معادلسازی است. mpbt چیست؟ KJ و تو سردرگم هستی، بنابراین واژگان و همه چیز به طور کامل متفاوت بود و نمیتوانستی مقالات را بخوانی. میگویم در حوزههای مختلف، پس حالا این کمی تغییر کرده است. از سال 2012، وقتی که … و همکارانش اساساً نشان دادند که اگر یک شبکه عصبی بزرگ را بر روی یک مجموعه داده بزرگ مقیاسگذاری کنی، میتوانی عملکرد بسیار قوی بگیری. بنابراین تا آن زمان، تمرکز زیادی بر روی الگوریتمها بود، اما این نشان داد که واقعاً شبکههای عصبی به خوبی مقیاسپذیر هستند. بنابراین باید اکنون نگران محاسبات و دادهها باشید و میتوانید آن را مقیاسداری کنید، که به خوبی کار میکند. و سپس آن دستورالعمل واقعاً در بسیاری از حوزههای هوش مصنوعی کپی و پیست شد. بنابراین از سال 2012 شاهد ظهور شبکههای عصبی در همه جا بودیم، از جمله بینایی کامپیوتری، پردازش زبان طبیعی، گفتار، ترجمه، یادگیری تقویتی و غیره. بنابراین همه شروع کردند به استفاده از همان نوع ابزار مدلسازی و چارچوب مدل. و حالا وقتی به NL میروی…
شما شروع به مطالعه مقالاتی در مورد ترجمه ماشینی میکنید، به عنوان مثال، این مقاله دنبالهای از مقالهای است که به آن برمیگردیم. شما شروع به خواندن این مقالات میکنید و متوجه میشوید که میتوانید این کلمات را تشخیص دهید؛ مانند شبکه عصبی، برخی پارامترها، و یک بهینهساز، و این اطلاعات شروع به خواندن مانند چیزهایی میکند که شما میشناسید. بنابراین این امر بهطرز قابل توجهی مانع ورود به حوزههای مختلف را کاهش داده است. سپس فکر میکنم اتفاق مهمی که افتاد این بود که وقتی ترنسفورمر در سال ۲۰۱۷ معرفی شد، فقط این نیست که ابزارها و شبکههای عصبی مشابه بودند؛ بلکه بهطور واقعی معماریها به یک معماری واحد همگرا شدند که شما میتوانید آن را کپی و پیست کنید و در همه جا استفاده کنید. بنابراین این یک مقاله در مورد ترجمه ماشینی به نظر میرسید که در آن زمان معماری ترنسفورمر را پیشنهاد میکرد، اما آنچه از آن زمان متوجه شدیم این است که شما فقط میتوانید این معماری را بهطور کلی کپی و پیست کنید و از آن در هر جا استفاده کنید و آنچه در حال تغییر است جزئیات داده و تقسیمبندی آن است.
دادهها و نحوه استفاده از آنها، و میدانید که این یک کاریکاتور است اما نوعی بیان ابتدایی صحیح است و حالا مقالات حتی بیشتر شبیه به هم هستند زیرا همه فقط از ترنسفورمر استفاده میکنند. این همگرایی در دهه گذشته قابل توجه بود و از نظر من جالب است که فکر میکنم این یک نشانه است که شاید به چیزی نزدیک میشویم که شاید مغز در حال انجام آن باشد زیرا مغز در سراسر قشر شما بسیار همگن و یکنواخت است و خوب، شاید برخی از جزئیات در حال تغییر هستند اما آنها مانند هایپرپارامترها عمل میکنند، اما مانند ترنسفورمر، قشر شنوایی و قشر بینایی و بقیه چیزها بسیار مشابه به نظر میرسند، بنابراین شاید ما به نوعی الگوریتم یادگیری یکنواخت و قدرتمند نزدیک میشویم. چیزی شبیه به این فکر میکنم که جالب است. خوب، میخواهم درباره منشا ترنسفورمر از دیدگاه تاریخی صحبت کنم، بنابراین میخواهم شروع کنم.
در سال 2003، این مقاله را بسیار دوست داشتم. این اولین کاربرد محبوب از شبکههای عصبی در مشکل مدلسازی زبان بود، به طوری که در این مورد، پیشبینی کلمه بعدی در توالی انجام میشد که به شما این امکان را میدهد تا مدلهای تولیدی بر روی متن بسازید. در اینجا از پرسپترون چندلایه استفاده میشد، بنابراین یک شبکه عصبی بسیار ساده بود. شبکههای عصبی سه کلمه را میگرفتند و توزیع احتمال برای کلمه چهارم در یک توالی را پیشبینی میکردند. این در این مرحله خوب و مناسب بود. با گذر زمان، مردم شروع به اعمال این روش در ترجمه ماشینی کردند، بنابراین ما به مقاله توالی به توالی از سال 2014 میرسیم که تأثیر زیادی داشت. مشکل بزرگ اینجا این بود که ما نمیخواهیم فقط سه کلمه بگیریم و چهارم را پیشبینی کنیم، بلکه میخواهیم پیشبینی کنیم چگونه از یک جمله انگلیسی به یک جمله فرانسوی برویم. مشکل کلیدی این بود که میتوان تعداد دلخواهی کلمه در انگلیسی و تعداد دلخواهی کلمه در فرانسوی داشت، بنابراین چگونه میتوانید معماریای داشته باشید که بتواند این تغییرات را پردازش کند؟
ورودیهای اندازهدار و بنابراین در اینجا از LSTM استفاده میکنند و در واقع دو بخش از این وجود دارد که توسط اسلک پوشش داده میشود. اما اساساً یک LSTM کدگذار در سمت چپ داریم که کلمات را یکییکی مصرف میکند و زمینهای از آنچه خوانده است ایجاد میکند و سپس این به عنوان یک بردار شرطی برای RNN یا LSTM رمزگشا عمل میکند که بهطرز بنیادی برای کلمه بعدی در ترتیب میرود و انگلیسی را به فرانسوی یا چیزی شبیه به آن ترجمه میکند. حالا مشکل بزرگ با این که مردم به سرعت شناسایی کردند و سعی کردند آن را حل کنند، این است که به آن گلوگاه کدگذار گفته میشود. بنابراین تمام جمله انگلیسی که ما سعی داریم بر روی آن شرطی شویم به یک بردار واحد بستهبندی شده است که از کدگذار برای رمزگشا میرود و بنابراین این اطلاعات بسیار زیادی است که ممکن است در یک بردار واحد حفظ شود و این به نظر نادرست میرسید و بنابراین مردم به دنبال راههایی برای کاهش توجه به گلوگاه کدگذاری شده بودند.
این مقاله ترجمه ماشینی عصبی را با یادگیری مشترک برای همترازی و ترجمه ارائه میدهد و در اینجا به بررسی این مقاله میپردازیم. در این مقاله، ما فرض کردیم که استفاده از یک وکتور ثابت به عنوان یک گلوگاه در بهبود عملکرد معماری پایه رمزگذار-رمزگشا است و پیشنهاد میدهیم که این مسئله را با اجازه دادن به مدل برای جستجوی نرم خودکار قسمتهای مربوط به جملهی منبع که برای پیشبینی یک کلمه هدف مهم هستند، گسترش دهیم، بدون اینکه نیاز به تشکیل این قسمتها یا بخشهای سخت بهطور دقیق باشد. این یک راه برای بازنگری به کلمات استخراج شده از رمزگذار بود که با استفاده از این جستجوی نرم به دست آمد. در حین رمزگشایی، اجازه دارید که به کلمات رمزگذار نگاه کنید از طریق این مکانیزم توجه نرم که در این مقاله پیشنهاد شده است. بنابراین فکر میکنم این مقاله اولین باری است که بهطور اساسی توجه را مشاهده کردم، بهطوریکه وکتور زمینهای که از رمزگذار دریافت میشود، یک وزن است.
مجموعهای از حالتهای پنهان کلمات در یک ورودی در کدگذاری جمعآوری میشود و سپس وزنهای این جمع از یک نرمافزار ماکس که مبتنی بر این تطابقها بین حالت فعلی در حین رمزگشایی و حالتهای پنهانی که توسط رمزگذار تولید میشود، به دست میآید. این درصدی است که واقعاً شما شروع میکنید به آن نگاه کردن و این معادلات مدرن فعلی توجه است و من فکر میکنم این دیدگاهی بود که من برای اولین بار آن را دیدم. به عنوانی که تا جایی که میدانم به این مکانیزم، توجه گفته میشود. بنابراین در واقع سعی کردم تا جزئیات تاریخچه توجه را بررسی کنم. نویسنده اول اینجا دیمیتری است. من یک مکاتبه ایمیلی با او داشتم و اساساً به او ایمیلی فرستادم و گفتم دیمیتری این واقعاً جالب است، ترنسفورمرها تسلط پیدا کردهاند، از کجا ایده مکانیزم توجه خود را گرفتید که در نهایت قلب ترنسفورمر است و به شگفتی من، او با یک ایمیل طولانی به من پاسخ داد که واقعا جذاب بود.
این متن بخشی از آن ایمیل است. او در اساس درباره این صحبت میکند که چگونه به دنبال راهی برای اجتناب از این گلوگاه بین انکودر و دکودر بود. او چند ایده درباره کرسرهایی که توالیها را طی میکردند داشت که چندان نتیجه ندادند و سپس یک روز به ذهنم خطور کرد که خوب است به دکودر RNN اجازه دهیم یاد بگیرد که کجا باید کرسر را بر روی توالی منبع قرار دهد. این موضوع به نوعی الهام گرفته از تمرینهای ترجمهای بود که یادگیری زبان انگلیسی در مدرسه متوسطه من شامل آن میشد، زیرا شما به طور مداوم بین توالی منبع و هدف نگاه میکردید در حالی که ترجمه میکردید. به معنای واقعی، من فکر کردم که این جالب است که او یک سخنران بومی زبان انگلیسی نیست و این موضوع به او در این ترجمه ماشینی برتری داد که منجر به توجه و سپس به Transformer شد. این واقعا جالب است. من یک جستجوی نرم، یک Max نرم و سپس میانگین وزنی از وضعیتهای بیرونی را بیان کردم و در واقع، به شدت هیجانزده شدم که این واژهها از همان ابتدا…
اولین تلاش من، واقعاً یک قطعه جالب از تاریخ است و همانطور که بعداً مشخص شد، نام جستجوی RNN کمی بیمزه بود، بنابراین نام بهتری که به ذهن یشوع خطور کرد، “توجه” بود که در یکی از بررسیهای نهایی آنها روی مقاله مطرح شد. پس شاید “توجه همهچیزی است که به آن نیاز دارید” میتوانست به نامهایی مثل RNs یا چیزهایی مشابه مشهور شود، اما ما باید از یشوع NGO برای یک نام بهتر قدردانی کنیم. بنابراین ظاهراً این تاریخچهی این موضوع است. حالا ما به سال ۲۰۱۷ میرسیم که “توجه همهچیزی است که به آن نیاز دارید”. این مؤلفه توجه که در مقاله دیمیتری فقط یک بخش کوچک بود، و این RNNهای دوطرفه و دیکودر، و این مقاله مدلسازی تسلا میگوید که میتوانید واقعاً همهچیز را حذف کنید؛ آنچه باعث میشود این کار به خوبی انجام شود، صرفاً توجه به خود است. بنابراین همهچیز را حذف کنید و فقط توجه را نگه دارید و نکته جالب درباره این مقاله این است که معمولاً مقالات به صورت تدریجی پیش میروند، یک چیز اضافه میکنند و هنوز هم بهتر میشوند، اما من احساس میکنم…
مثل اینکه توجه تمام چیزی بود که در نیاز بود، ترکیبی از چندین چیز به صورت همزمان بود که به طرز بسیار منحصر به فردی با هم ترکیب شده بودند و سپس به یک حداقل محلی بسیار خوب در فضای معماری دست یافتند. بنابراین برای من این واقعاً یک مقاله شاخص است و بسیار چشمگیر است و فکر میکنم پشت صحنه کار زیادی انجام شده است. بنابراین همه RNN ها را حذف کنید و فقط توجه را نگه دارید زیرا توجه بر روی مجموعهها عمل میکند و من در چند لحظه به این موضوع میپردازم. شما اکنون باید ورودیهای خود را از نظر موقعیتی کدگذاری کنید زیرا توجه هیچ درکی از فضا ندارد. بنابراین باید بسیار مراقب باشید. آنها این ساختار شبکه باقیمانده را از تشخیص صدا اتخاذ کردند. آنها توجه را با پرسپترونهای چند لایه ترکیب کردند. آنها از نرمالسازی لایهها استفاده کردند که از یک مقاله دیگر آمده بود. آنها مفهوم چندین سر توجه را معرفی کردند که به طور موازی اعمال میشدند و به ما یک مجموعه نسبتاً خوب از هایپرپارامترها را دادند که تا به امروز مورد استفاده قرار میگیرد. بنابراین عامل گسترش در چندتایی…
پرسیپترون به ۴ برابر افزایش یافته است، بنابراین ما کمی بیشتر به جزئیات خواهیم پرداخت و این بوراکس همچنان باقی مانده است و من باور دارم که تعدادی مقاله وجود دارد که سعی کردهاند با تمام انواع جزئیات کوچک ترنسفورمر بازی کنند و هیچ چیز مانند این نتیجهبخش نبوده است، زیرا این واقعاً خوب است. تنها چیزی که به دانش من باقی نمانده، این است که ما لایه نورمها را جابجا کردیم تا به نسخه پیشنورم برویم، جایی که در اینجا میبینید لایه نورمها بعد از چندسر توجه جلو میروند، اما آنها فقط آنها را قبل قرار دادهاند. بنابراین، این فقط جابجایی لایه نورمها است، اما به غیر از این، جیپیتیها و همه چیزهایی که امروز مشاهده میکنید اساساً معماری ۲۰۱۷ از پنج سال پیش است و اگرچه همه بر روی آن کار میکنند، اما این امر به طرز شگفتآوری مقاوم ثابت شده است که فکر میکنم نوآوریهایی وجود دارد که به نظرم در کدگذاریهای موقعیتی نیز پذیرفته شدهاند و استفاده از کدگذاریهای موقعیتی چرخشی و نسبی رایجتر شده است و غیره. بنابراین فکر میکنم تغییراتی صورت گرفته است.
اما در بیشتر موارد، این مکانیزم بسیار مقاوم بوده و واقعاً مقاله جالبی است. حالا میخواستم به مکانیزم توجه بپردازم و فکر میکنم طریقهای که من آن را تفسیر میکنم، مشابه آنچه قبلاً دیدهام نیست. پس بگذارید با یک روش متفاوت سعی کنم که چطور آن را میبینم. بهطور پایهای، به نظر من، توجه شبیه به مرحله ارتباطی ترنسفورمر است و ترنسفورمر دو مرحله را در بر میگیرد: مرحله ارتباطی که توجه چندسر است و مرحله محاسبه که این پرسپترون چندلایه یا P1 است. بنابراین در مرحله ارتباطی، در واقع این فقط یک انتقال پیام وابسته به دادهها بر روی گرافهای جهتدار است و میتوانید به آن بهعنوان این فکر کنید که باشه، هر چیزی درباره ترجمه ماشینی و همه چیز را فراموش کنید، فقط داریم گرافهای جهتدار داریم و در هر گره یک بردار ذخیره میکنید و حالا بیایید درباره مرحله ارتباطی صحبت کنیم که چگونه این بردارها با یکدیگر در این گراف جهتدار صحبت میکنند و سپس مرحله محاسبه بعداً فقط…
چندین پرسپترون که اکنون به طور جداگانه بر روی هر نود عمل میکند، اما چگونه این نودها در این گراف هدایتشده با یکدیگر ارتباط برقرار میکنند؟ من یک کد ساده با پایتون نوشتم تا یک دور ارتباط با استفاده از توجه به عنوان طرح انتقال اصلی ایجاد کنم. بنابراین هر نود یک وکتور داده خصوصی دارد که میتوان آن را به عنوان اطلاعات خصوصی این نود در نظر گرفت و سپس میتواند یک کلید، یک پرسش و یک مقدار را به وجود آورد که این کار به سادگی از طریق یک تبدیل خطی از این نود انجام میشود. پرسش یکی از چیزهایی است که به دنبال آن هستم، کلید جایی است که چیزی که دارم و مقدار یکی از چیزهایی است که ارتباط برقرار خواهم کرد. بنابراین وقتی گراف شما از نودها و برخی لبههای تصادفی تشکیل شده است و در واقع این نودها در حال ارتباط هستند، آنچه اتفاق میافتد این است که شما به طور جداگانه بر روی همه نودها در یک ترتیب تصادفی تکرار میکنید.
در یک گره خاص، شما وکتور پرسش Q را دریافت میکنید که گره مشترک و برخی گرافها هستند و این چیزی است که من به دنبال آن هستم. پس بیایید از طریق این تبدیل طولانی به این هدف برسیم و سپس به تمام ورودیهایی که به این گره اشاره دارند نگاه میکنیم و سپس آنها کلیدهایی را که دارند، پخش میکنند. بنابراین، آنها کلیدهای خود را که وکتور پرسش من است پخش میکنند و سپس با انجام عمل ضرب دات، امتیازاتی به دست میآورند. بنابراین، بهطور کلی با انجام ضرب دات، نوعی وزنگذاری نرمال نشده به دست میآورید که نشاندهنده جذابیت تمام اطلاعات در گرههایی است که به من اشاره دارند و به چیزهایی که به دنبالشان هستم. سپس وقتی که آن را با softmax نرمال کنید تا به یک برسید، در واقع تنها از آن امتیازها که حالا مجموعشان به یک میرسد در توزیع احتمال خود استفاده میکنید و مجموع وزنی از مقادیر را برای بهروزرسانی بهدست میآورید. بنابراین، من یک پرسش دارم، آنها کلیدهایی دارند، اعمال ضرب دات برای بهدست آوردن جذابیت یا وابستگی و سپس softmax برای نرمالسازی انجام میشود و سپس به برخی از آنها میرسیم.
ارزشها به من جریان پیدا میکنند و من را بهروزرسانی میکنند و این برای هر گره به طور جداگانه اتفاق میافتد و سپس در پایان بهروزرسانی میکنیم و بنابراین این نوع مکانیزم ارسال پیام به نوعی در قلب ترنسفورمر قرار دارد و به شکلی بیشتر برداری و دستهای اتفاق میافتد که پیچیدهتر است و همچنین با نرمالسازی لایههای بین فردی و مواردی از این دست ترکیب میشود تا آموزش بهتر عمل کند، اما به طور کلی این چیزی است که در مکانیزم توجه در سطح بالایی اتفاق میافتد. بنابراین در مرحله ارتباط ترنسفورمر، این مکانیزم ارسال پیام در هر سر به طور موازی و سپس در هر لایه به صورت متوالی اتفاق میافتد و هر بار با وزنهای مختلف و این همان چیزی است که مربوط به توجه چند سر است. بنابراین اگر به این مدلهای انکودر-دیکودر نگاه کنید، میتوانید این را از نظر اتصال این گرهها در گراف در نظر بگیرید و به نوعی میتوانید این طور فکر کنید که همه این توکنها در انکودر که میخواهیم شرایط را تنظیم کنیم، در اینجا قرار دارند.
آنها به طور کامل با یکدیگر متصل هستند، بنابراین زمانی که ارتباط برقرار میکنند، به طور کامل ارتباط برقرار میکنند. اما در دیکودر، به دلیل اینکه ما سعی داریم یک مدل زبانی داشته باشیم، نمیخواهیم از توکنهای آینده ارتباط برقرار کنیم زیرا این به ما پاسخ را در این مرحله میدهد. بنابراین توکنها در دیکودر به طور کامل از تمام حالات انکودر متصل هستند و سپس همه آنها به سادگی از همه چیزهای مهم متصل هستند و در نهایت به این شکل یک ساختار مثلثی در گراف مستقیم خواهید داشت. اما این اساساً طرح پیامرسانی است که این پیادهسازی میکند. و همچنین باید کمی محتاط باشید زیرا در توجه متقابل اینجا با دیکودر، ویژگیها را از بالای انکودر مصرف میکنید. بنابراین تصور کنید که در انکودر، همه گرهها به یکدیگر نگاه میکنند، همه توکنها بارها و بارها به یکدیگر نگاه میکنند و واقعاً متوجه میشوند که چه چیزی در آنجا وجود دارد و سپس دیکودر وقتی که به بالاترین گرهها نگاه میکند، فقط به آنها توجه میکند.
تقریباً طرح انتقال پیام که میخواستم بیشتر به پیادهسازی ترنسفورمر بپردازم. نمیدانم آیا سوالی در مورد این خودتوجهی گروه وجود دارد یا خیر، اما این چیست؟ بله، بنابراین خودحفاظتی و توجه چندسر به این صورت است که توجه چندسر فقط همین طرح توجه است، اما به طور موازی چندین بار اعمال میشود. چندسر فقط به معنای اعمال مستقل از همان توجه است. بنابراین این طرح انتقال پیام اساساً به طور موازی چندین بار با وزنهای متفاوت برای کلید پرسش و مقدار انجام میشود. میتوان تقریباً آن را اینگونه در نظر گرفت که به طور موازی به دنبال اطلاعات مختلف از گرههای مختلف هستم و همه آن را در همان گره جمعآوری میکنم. همه این کار به صورت موازی انجام میشود. بنابراین سرها واقعاً مانند کپی و چسباندن به صورت موازی هستند و لایهها کپی و چسباندن هستند، اما به صورت سری. شاید این منطقی باشد و در مورد خودتوجهی، وقتی که صحبت میکنیم خودتوجهی، منظور این است که این گره، هر گرهای را تولید میکند.
اینجا توصیف شده است که واقعاً اقیانوس نرم است زیرا هر یک از این نودها یک کلید، یک پرسش و یک مقدار از این نود فردی تولید میکند. وقتی شما توجه متقابل دارید، یک توجه متقابل در اینجا وجود دارد که از رمزگذار میآید، که فقط به این معنی است که پرسشها هنوز از این نود تولید میشوند، اما قسمت و مقادیر به عنوان تابعی از نودهایی که از رمزگذار میآیند تولید میشوند. من پرسشهایم را دارم زیرا در تلاش هستم که پنجمین کلمه در دنباله را رمزگشایی کنم و به دنبال چیزهای خاصی هستم زیرا من پنجمین کلمه هستم و سپس کلیدها و مقادیر از نظر منبع اطلاعاتی که میتواند به پرسشهایم پاسخ دهد، میتوانند از نودهای قبلی در دنباله رمزگشایی جاری یا از بالای رمزگذار بیایند. بنابراین، همه نودهایی که قبلاً همه توکنهای رمزگذاری را بارها و بارها دیدهاند نمیتوانند آنچه را که از نظر اطلاعات دارند، پخش کنند. بنابراین، باید خلاصه کنم که توجه خودی شبیه… ببخشید، توجه متقابل و توجه خودی فقط.
تفاوت در این است که تکه و مقادیر از کجا میآیند، یا مقادیر و کلیدها از این نود تولید میشوند یا از یک منبع خارجی مانند یک کدگذار و نوتها در آنجا. اما از نظر الگوریتمی همان عملیات مایکل است. بنابراین، هر یک از این نودها یک توکن هستند. فکر میکنم تصویر خیلی واضحی از آن در ترنسفورمر وجود ندارد، اما این نود میتواند نمایانگر کلمه سوم در خروجی دیکودر باشد و در ابتدا فقط جاسازی کلمه است. و بعد باید کمی بیشتر به این دانش فکر کنم، این صبح به فکر من رسید. یک نمونه از تأیید، این نودها در واقع عوامل هستند. من به یک پیادهسازی میروم و سپس شاید ارتباطات را به گراف برقرار کنم. پس بیایید اول تلاش کنم به نانو GPT که یک پیادهسازی کامل از یک ترنسفورمر است برگردم.
ترانسیفری که بسیار حداقلی است، بنابراین من چند روز گذشته روی این کار کردهام و در اینجا آن را بازتولید کردهام. gpt2 بر روی وبمتن باز، پس این یک پیادهسازی جدی است و gpd2 را بازتولید میکند. به طور تقریبی، این یک گره از اتیپوس بود که به مدت ۳۸ ساعت یا چیزی شبیه به آن به یاد دارم و بسیار قابل خواندن است و ۳۰۰ خط است تا همه بتوانند به آن نگاهی بیندازند. بیایید به طور خلاصه از آن عبور کنیم. بیایید سعی کنیم تنها یک ترنسفورمر دیکودر داشته باشیم، این به چه معناست؟ یعنی این یک مدل زبانی است که سعی میکند کلمه بعدی در دنباله یا کاراکتر بعدی در دنباله را مدلسازی کند. دادههایی که ما روی آنها آموزش میدهیم همیشه نوعی متن است. بنابراین اینجا مقداری شکسپیر جعلی داریم، ببخشید، این شکسپیر واقعی است. ما میخواهیم شکسپیر بزرگی ایجاد کنیم، بنابراین این مجموعه داده شکسپیر کوچک نامیده میشود که یکی از مجموعههای داده بازی من است. شما تمام آثار شکسپیر را جمعآوری میکنید و آن را به یک فایل یک مگابایتی تبدیل میکنید و سپس میتوانید مدلهای زبانی را روی آن آموزش دهید.
و اگر دوست داشته باشید میتوانید شکسپیر نامحدود را داشته باشید که به نظر من نوعی جالب است. پس ما متنی داریم و اولین چیزی که باید انجام دهیم این است که آن را به دنبالهای از اعداد صحیح تبدیل کنیم، زیرا ترنسفورمرها به صورت بومی پردازش میکنند. شما نمیتوانید متن را به طور مستقیم به ترنسفورمر وارد کنید، باید آن را کدگذاری کنید. روش کدگذاری به این صورت است که به عنوان مثال در سادهترین حالت هر کاراکتر به یک عدد صحیح تبدیل میشود و بنابراین به جای “سلام” این دنبالهای از اعداد صحیح را خواهیم داشت. شما میتوانید هر کاراکتر را به عنوان یک عدد صحیح کدگذاری کنید و یک دنباله بزرگ از اعداد صحیح بدست آورید. شما همه آن را به یک دنباله یکبعدی بزرگ و طولانی پیوند میزنید و سپس میتوانید روی آن آموزش دهید. حالا ما فقط یک سند داریم و در برخی موارد اگر چندین سند مستقل داشته باشید، آنچه مردم دوست دارند انجام دهند این است که توکنهای ویژهای ایجاد کنند و این سندها را با آن توکنهای مخصوص پایان متن که بین آنها قرار میدهند، ترکیب میکنند تا مرزها را ایجاد کنند، اما آن مرزها در واقع هیچ گونه مدلی ندارند.
تأثیر این موضوع این است که ترنسفورمر قرار است از طریق پسانتشار یاد بگیرد که پایان توالی سند به این معنی است که باید حافظه را پاک کنید. خوب، بنابراین ما دستههایی تولید میکنیم، بنابراین این دستههای داده فقط به این معنی هستند که ما به توالی یکبعدی برمیگردیم و قسمتهایی از این توالی را برمیداریم. فرض کنید اگر سایز بلوک هشت باشد، سایز بلوک نشاندهنده حداکثر طول زمینهای است که ترنسفورمر شما پردازش خواهد کرد. بنابراین اگر سایز بلوک هشت باشد، به این معنی است که ما تا هشت کاراکتر زمینه برای پیشبینی کاراکتر نهم در یک توالی خواهیم داشت و اندازه دسته نشاندهنده این است که چند توالی به طور موازی پردازش خواهیم کرد و میخواهیم این اندازه تا حد ممکن بزرگ باشد تا از GPU به طور کامل استفاده کنیم و موازیسازی زیر کدها را به حداکثر برسانیم. بنابراین در این مثال ما دستههای چهار در هشت داریم، بنابراین هر ردیف در اینجا نوعی مثال مستقل است و سپس هر ردیف کوچکتری از توالی است که قرار است ما…
برای آموزش و سپس ما در هر نقطه ورودیها و هدفها را داریم، بنابراین برای بیان کامل آنچه در یک دسته چهار در هشت در مدل ترنسفورمر وجود دارد، من اینجا آن را فشرده میکنم. وقتی ورودی ۴۷ به تنهایی است، هدف ۵۸ است و وقتی ورودی دنباله ۴۷۵۸ است، هدف یک است و وقتی ورودی ۴۷.۵۸۱ است، هدف ۵۱ است و به همین ترتیب. در واقع یک دسته از مثالها که ۸ تا دارد، شامل تعداد زیادی مثال فردی است که ما انتظار داریم ترنسفورمر به صورت موازی روی آنها یاد بگیرد. شما خواهید دید که دستهها به طور کامل به صورت مستقل یاد گرفته میشوند، اما ابعاد زمانی نیز به صورت موازی آموزش میبیند. بنابراین سایز واقعی شما بیشتر مانند B در d است، فقط اینکه زمینه به طور خطی برای پیشبینیهایی که در راستای T انجام میدهید، رشد میکند. اینگونه است که این همه مثالها مدل از این یک دسته یاد خواهند گرفت.
کلاس GPT و چون این یک مدل فقط دیکودر است، بنابراین ما یک انکودری نداریم زیرا هیچ زبان انگلیسی برای ترجمه نداریم. ما تلاش نمیکنیم که روی اطلاعات خارجی دیگری شرطبندی کنیم، ما فقط سعی داریم که یک دنباله از کلمات تولید کنیم که به یکدیگر وابسته هستند. بنابراین تمام اینها با پایتورچ است و من کمی سریعتر میروم زیرا فکر میکنم افراد 231n یا چیزی شبیه به آن را گذراندهاند. اما در این مرحلهی پیشرو، ما این ایندکسها را میگیریم و سپس هر دو هویت ایندکسها را فقط از طریق یک جدول جستجوی embedding کدگذاری میکنیم. بنابراین هر عدد صحیح دارای یک، ما به جدول جستجوی بردارها در این nn.embedding اشاره میکنیم و بردار کلمه را برای آن توکن خارج میکنیم. و سپس به دلیل اینکه پیام، به خودی خود پردازش نشده، بنابراین ما نیاز داریم که این بردارها را نیز به طور موقعیتی کدگذاری کنیم تا به طور کلی اطلاعاتی درباره هویت توکن و جایگاه آن در دنباله از یک تا بلاک داشته باشیم.
حجم k اکنون اطلاعات مربوط به چه چیزی و کجا به طور افزایشی ترکیب شده است، بنابراین تعبیههای توکن و تعبیههای موقعیتی به سادگی به هم افزوده میشوند. بنابراین این x اینجا به طور کلی شامل مجموعهای از کلمات و موقعیتهایشان است و این به بلوکهای ترنسفورمر وارد میشود و ما به آنچه در اینجا مسدود شده است نگاه خواهیم کرد، اما در حال حاضر این فقط یک سری بلوک در یک ترنسفورمر است و سپس در انتها یک لایه نرمالسازی وجود دارد و سپس شما لاجیتها را برای کلمه یا عدد بعدی در یک دنباله با استفاده از یک پروژکشن خطی از خروجی این ترنسفورمر رمزگشایی میکنید. بنابراین، سر مدل زبانی کوتاه LM head در اینجا فقط یک تابع خطی است، بنابراین در واقع همه کلمات را به صورت موقعیتی کدگذاری کرده و آنها را به یک دنباله از بلوکها وارد میکنید و سپس یک لایه خطی اعمال میکنید تا توزیع احتمال برای شخصیت بعدی را به دست آورید و سپس اگر اهدافی داشته باشیم که در بارگذار داده تولید کردهایم، متوجه خواهید شد که t…
این اهداف تنها ورودیها هستند که در زمان یک واحد جابجا شدهاند و سپس این اهداف به یک تابع هزینه کروس انترپی تغذیه میشوند، بنابراین این تنها یک تابع هزینه طبقهبندی معمولی با حداکثر منفی یک است. حال بیایید دقیقتر به آنچه در این بلاکها وجود دارد بپردازیم. این بلاکها به صورت متوالی اعمال میشوند و همانطور که ذکر کردم، شامل فاز ارتباطی و فاز محاسباتی هستند. در فاز ارتباطی، تمام گرهها با یکدیگر صحبت میکنند و این گرهها اساساً اگر اندازه بلاک ما هشت باشد، ما هشت گره در این نمودار خواهیم داشت. در این نمودار هشت گره وجود دارد. اولین گره فقط به خودش اشاره دارد، گره دوم به گره اول و خودش اشاره دارد، گره سوم به دو گره اول و خودش اشاره دارد و الی آخر. بنابراین هشت گره در اینجا وجود دارد. یک مسیر باقیمانده در X دارید، آن را برداشت میکنید، یک نرمالسازی لایهای اعمال میکنید و سپس پتانسیل سلولی را در نظر میگیرید تا این هشت گره با یکدیگر ارتباط برقرار کنند، اما باید در نظر داشته باشید که دستهها چهار هستند.
و سپس MLP به سادگی وجود دارد و فکر نمیکنم چیز دیوانهواری در آن وجود داشته باشد و سپس این قسمت مربوط به نرمافزار نرم نگهداری ارتباطی است، بنابراین این نوعی از کارهای جالب و پیچیدهترین بخش است. این پیچیدگی به خاطر دستهبندی و جزئیات پیادهسازی نحوهی پوششگذاری اتصال در گراف است تا نتوانید اطلاعاتی از آینده هنگام پیشبینی توکن خود به دست آورید، در غیر این صورت اطلاعات لو میرود. بنابراین اگر من توکن پنجم را داشته باشم و در موقعیت پنجم باشم، به توکن چهارم که به ورودی میرسد، دسترسی دارم و به توکنهای سوم، دوم و اول توجه میکنم و سعی میکنم بفهمم توکن بعدی چیست. خوب، در این دسته در عنصر بعدی در بعد زمان، پاسخ در ورودی است، بنابراین نمیتوانم اطلاعاتی از آنجا به دست آورم. به همین دلیل است که همه اینها پیچیده است، اما اساساً در پاس رو به جلو، ما پرسشها، کلیدها و مقادیر را بر اساس x محاسبه میکنیم.
مکعبهای کلیدی و مقادیر در اینجا زمانی که توجه را محاسبه میکنم، من پرسشها را دارم. ماتریس کلیدها را ضرب میکنم، بنابراین این ضرب نقطهای به طور موازی برای تمام پرسشها و تمام کلیدها در تمام سرها انجام میشود. به همین دلیل اشاره کردم که جنبه سرها نیز به طور موازی در اینجا انجام میشود. بنابراین ما بعد بَچ، بعد زمان و بعد سر را داریم و در نهایت با تنسورهای پنجبعدی مواجه میشویم و همه اینها واقعاً گیجکننده است. بنابراین شما را دعوت میکنم که بعداً این موضوع را مرور کنید و خودتان قانع شوید که این واقعاً کار درست را انجام میدهد. اما اساساً شما بعد بَچ، بعد سر و بعد زمان را دارید و سپس ویژگیهایی را در آنها دارید. بنابراین، این ارزیابی برای تمام عناصر بَچ، تمام عناصر سر و تمام عناصر زمان است. کد ساده پایتون که قبلاً به شما دادم، query.proc T است و اینجا ما هنوز یک پوشش داریم و آنچه که این انجام میدهد، اساساً محدود کردن توجه بین نودها است.
این متن شامل مفاهیم فنی پیچیدهای است که به توضیح فرآیندهای موجود در یک مدل ترنسفورمر میپردازد. نویسنده به بررسی نحوه مدیریت توزیعهای منفی بینهایت، محاسبه ماتریس توجه، و جمعبندی اطلاعات بر اساس همافزایی میان نودها اشاره میکند. همچنین به مرحله ارتباطات و امکانات اجرایی اضافی در مدل اشاره دارد و در نهایت به تولید متن با الهام از آثار شکسپیر میپردازد.
اندازه بلوک ما هشت است. ما با یک توکن مجموع شروع میکنیم، مثلاً میتوانیم از یک خط جدید به عنوان توکن شروع استفاده کنیم و سپس فقط با خودمان ارتباط برقرار میکنیم زیرا فقط یک گره وجود دارد و توزیع پیشنهادی برای اولین کلمه در توالی را دریافت میکنیم. سپس این کلمه یا شخصیت اول را رمزگشایی میکنیم و سپس شخصیت را بازمیگردانیم و دوباره آن را به عنوان یک عدد صحیح رمزگذاری میکنیم و حالا به چیز دوم میرسیم. بنابراین، خوب، ما در موقعیت اول هستیم و این عدد صحیح هر چیزی که باشد به همراه رمزگذاریهای موقعیتی به توالی وارد میشود که به ترنسفورمر میرود و دوباره این توکن حالا با توکن اول و هویت آن ارتباط برقرار میکند و بنابراین فقط ادامه میدهید و هنگامی که از اندازه بلوک که هشت است تمام میشوید، شروع به برش میکنید زیرا نمیتوانید اندازه بلوک بیشتری از هشت داشته باشید به گونهای که این ترنسفورمر را آموزش دادهاید. بنابراین ما سیاق بیشتری تا هشت داریم و سپس اگر شما…
برای تولید فراتر از تاریخ، شما باید شروع به برش بدهید زیرا ترنسفورم یک عنصر در بعد زمان تنها برای هشت عنصر کار میکند و بنابراین همه این ترنسفورمها در تنظیم ساده یک اندازه بلوک محدود یا خط زمینه دارند و در مدلهای معمولی این معمولاً ۱۰۲۰ توکن پرو یا ۲۰۴۸ توکن خواهد بود، چیزی شبیه به این. اما این توکنها معمولاً مانند توکنهای EPE یا توکنهای قطعه جمله یا توکنهای کار قطعه هستند، انواع مختلفی از رمزگذاریها وجود دارد، بنابراین اینقدر طولانی نیست. به همین دلیل است که فکر میکنم ذکر شده که واقعاً میخواهیم اندازه زمینه را گسترش دهیم و این کار دشواری خواهد بود زیرا توجه به هر حال به صورت مربعی است. حالا اگر شما بخواهید یک کدگذار به جای توجه کدگشا پیادهسازی کنید، تنها کاری که باید انجام دهید این است که این مستر را فقط حذف کنید. پس اگر توجه را نقابگذاری نکنید، همه گرهها با یکدیگر ارتباط برقرار میکنند و همه چیز مجاز است و اطلاعات بین تمام گرهها جریان دارد. بنابراین اگر بخواهید اینجا کدگذار داشته باشید، فقط تمام بلوکهای کدگذار را حذف کنید و از توجه استفاده کنید.
این خط حذف شده، تمام. پس شما اجازه میدهید که هرچه این کدگذار در فروشگاه من بگوید، ۱۰ توکن مانند ۱۰ گره است و آنها مجاز به برقراری ارتباط با یکدیگر در طول ترنسفورمر هستند و اگر شما بخواهید توجه متقاطع را پیادهسازی کنید، باید یک ترنسفورمر کامل کدگذار-کدگشا داشته باشید و نه فقط یک ترنسفورمر فقط کدگشا یا GPT. سپس ما باید توجه متقاطع را در وسط اضافه کنیم. بنابراین اینجا یک بخش خودتوجهی وجود دارد که در آن تمام سلولهای پتانسیل یک قطعه across tension و این LLP وجود دارد و در توجه متقاطع، ما باید ویژگیها را از بالای کدگذار بگیریم. ما باید یک خط دیگر اینجا اضافه کنیم و این خط توجه متقاطع خواهد بود. به جای اینکه فقط اشاره کنم، فکر میکنم باید آن را پیادهسازی میکردم، اما یک خط توجه متقاطع اینجا خواهد بود. بنابراین ما سه خط خواهیم داشت زیرا باید یک بلوک دیگر اضافه کنیم و کوئریها از X خواهند آمد اما کلیدها و مقادیر از بالای کدگذار خواهند آمد و اساساً اطلاعات در حال جریان خواهد بود.
بخشی از کدگذار به طور خاص به تمام گرهها درون X تعلق دارد و به همین سادگی است، بنابراین این یک نوع تغییرات بسیار ساده در توجه دیکودر است. شما خواهید شنید که مردم در مورد مدلهای فقط کدگذار مانند GPT یا مدلهای فقط کدگذار مانند BERT صحبت میکنند، یا میتوانید یک مدل کدگذار-دیکودر مانند T5 داشته باشید که کارهایی مانند ترجمه ماشینی انجام میدهد. در BERT نمیتوانید آن را با استفاده از این تنظیم مدلسازی زبانی که خودکار است، آموزش دهید و فقط سعی در پیشبینی عنصر بعدی در دنباله دارید؛ بلکه به اهداف کمی متفاوت آموزش میدهید، مثل اینکه جمله کامل را وارد میکنید و جمله کامل اجازه دارد به طور کامل ارتباط برقرار کند و سپس شما سعی در طبقهبندی احساس یا چیزی مشابه دارید. بنابراین شما سعی در مدلسازی توکن بعدی در دنباله ندارید. اینها کمی متفاوت آموزش داده میشوند با استفاده از ماسک و جداول نویززدایی دیگر. اینگونه است که ترانسفورمر عمل میکند.
پس بله، شاید سوالات بیشتری وجود داشته باشد و من مطمئن نیستم که کاملاً پیگیری میکنم. روشهای مختلفی برای نگریستن به این تشبیه وجود دارد، اما یکی از تشبیهات این است که میتوانید این نمودار را به عنوان یک ساختار ثابت تفسیر کنید، تنها اینکه هر بار که ارتباط برقرار میکنیم، از روشهای مختلفی استفاده میکنیم. بنابراین اگر در مثال من اندازه بلوک هشت باشد، ما هشت نود خواهیم داشت. در اینجا ما دو، چهار، شش داریم، بنابراین ما هشت نود خواهیم داشت که به هم متصل هستند و فقط از چپ به راست متصل میشوند. حالا، چرا باید این اتصالات را انجام دهیم؟ معمولاً اتصالات به عنوان تابعی از دادهها تغییر نمیکنند یا چیزی شبیه به این. من فکر نمیکنم که نمونه یک اتصالی دیدهام که اتصال به صورت دینامیک و به عنوان تابعی از دادهها تغییر کند. معمولاً اتصال ثابت باقی میماند. اگر شما یک کدگذار دارید و دارید یک مدل را آموزش میدهید، شما چند توکن میخواهید و آنها به طور کامل متصل هستند و اگر شما این ساختار مثلثی را داشته باشید و اگر کدگذار-کدگشا داشته باشید، سپس شما به طور awkwardly نوعی دو دو خواهید داشت.
لیست گرهها و بله، ممنون. سوال من این است که گزارش غنی… اوه، بله، واقعاً سخت است که بگویید. به همین دلیل است که فکر میکنم این مقاله بسیار جالب است. معمولاً مسیری را میبینید و شاید آنها به طور داخلی یک مسیر داشتند که فقط آن را منتشر نکردند و تمام چیزی که میتوانید ببینید چیزهایی است که به نظر نمیرسد یک ترنسفورمر باشد. یعنی شما رزنِت داشتید که این ویژگیها را داشت، اما یک رزنِت تقریباً اینگونه به نظر میرسد، اما هیچ مؤلفه توجه به خود وجود ندارد. اما MLP در نوعی از رزنِت وجود دارد. بنابراین، یک رزنِت خیلی شبیه به این به نظر میرسد، به جز اینکه شما میتوانید از نرمالسازی لایه در رزنِت استفاده کنید، که بهطور معمول گاهی اوقات میتوانند نرمالسازی باطنی باشند. بنابراین این به نوعی شبیه یک رزنِت است. این به نوعی به آنچه که آنها یک رزنِت را گرفتند و یک پتانسیل سلولی به آن اضافه کردند، مربوط میشود، سایر بلوک MLP که به نوعی شبیه به کانولوشنها است و بهطور دقیق، ترکیب یک به یک کانولوشن است، اما من فکر میکنم ایده مشابه است به این معنی که MLP به نوعی شبیه به این است، شما میدانید.
وزنهای معمولی و غیرخطی یا عملیات و من اما میخواهم بگویم که بله، این جالب است زیرا بسیاری از کارها آنجا نیست و سپس آنها این ترنسفورمر را به شما میدهند و پس از پنج سال میبینید که حتی با وجود تلاش همه برای تغییرش، تغییری نکرده است. بنابراین برای من جالب است که این مانند یک بسته است که به نظر میرسد از نظر تاریخی خیلی جالب است. همچنین با نویسندگان یک مقاله صحبت کردم و آنها از تأثیری که ترنسفورمر در آن زمان داشت بیخبر بودند. بنابراین وقتی این مقاله را میخوانید، واقعاً متاسفکننده است زیرا این مقالهای است که همهچیز را تغییر داد، اما وقتی مردم آن را میخوانند، علامتهای سوال زیادی وجود دارد زیرا این مانند یک مقاله کاملاً تصادفی درباره ترجمه ماشینی است که میگوید “اوه، ما داریم ترجمه ماشینی میکنیم، اوه، این یک معماری جالب است، خیلی خوب، نتایج خوبی دارد” و این نوعی نمیداند که چه اتفاقی قرار است بیفتد. بنابراین وقتی مردم امروز آن را میخوانند، فکر میکنم که کمی…
سردرگم هستم، احتمالاً مانند اینکه بخواهم در نهایت تعدادی توییت داشته باشم اما فکر میکنم اگر با مزیت دیدگاه گذشته نامش را تغییر میدادم، بهتر بود. بله، فکر میکنم سوال خوبی است. در حال حاضر، واقعاً از رویکرد مدلسازی خودرگرسیو خوشم نمیآید، فکر میکنم کمی عجیب است که یک توکن را نمونهبرداری کنم و سپس به آن پایبند باشم. بنابراین، ممکن است راههایی برای ترکیب آن با مثال «دیفوزیون» وجود داشته باشد که فکر میکنم واقعاً جالب خواهد بود، یا اینکه راههای دیگری پیدا کنیم تا بعداً توالیها را در همان چارچوب خودرگرسیو ویرایش کنیم. اما فکر میکنم دیفوزیون رویکرد مدلسازی جدیدی است که شخصاً برایم جذابتر به نظر میرسد. وقتی متن را نمونهبرداری میکنم، به طور مداوم و پیوسته عمل نمیکنم؛ اول یک پیشنویس میزنم و سپس یک پیشنویس بهتر و این احساس شبیه به یک فرآیند دیفوزیونی دارد. بنابراین این اصطلاح «کارها» کمی گیجکننده است.
به طور جدی این تصور وجود داشت که شاید امروز همه چیز یک شبکه گرافی است زیرا ترنسفورمر یک پردازشگر شبکه گرافی است. نمایه بومی که ترنسفورمر بر روی آن عمل میکند، مجموعههایی است که به طور جهتدار با یکدیگر مرتبطاند و این نمایه بومی است. خوب، باید ادامه دهم چون هنوز حدود 30 اسلات دارم. اوه بله، به نظر من به طور بنیادی مانند این است که اگر با وزنهای تصادفی که از گلیف جدا شدهاند، شروع کنید، با افزایش اندازه بعدی شما، همچنین مقادیر شما افزایش مییابد، و سپس نرمافزاری مثل ماکس به سادگی به یک نیمه وکتور تبدیل خواهد شد. بنابراین این فقط یک راه برای کنترل واریانس و نگه داشتن آن در یک دامنه خوب با نرمافزار ماکس و توزیع مناسب است. خوب، بنابراین تقریباً مانند یک موضوع اولیه است. خوب، ترنسفورمرها به همه سایر زمینهها اعمال شدهاند و به نظرم این کار به گونهای کاملاً مضحک انجام شده زیرا من یک…
یک کامپیوتر شخص متفاوت است و شما نظراتی دارید که تا حدی منطقی به نظر میرسد. آنچه که ما اکنون با بیتها به عنوان مثال انجام میدهیم، این است که یک تصویر را به تکههای کوچک تقسیم میکنیم و سپس این تکهها به طور مستقیم به یک ترنسفورمر منتقل میشوند و همین. این واقعاً عجیب است. به نوعی ترنسفورمر در سادهترین حالت واقعا نمیداند که این تکهها از کجا آمدهاند. آنها معمولاً به صورت موقعیتی کدگذاری میشوند، اما ترنسفورمر باید به نوعی دوباره ساختار آنها را کشف کند. این روش کمی عجیب است، اما فقط این پایه ساده، سادهترین پایه فقط تقسیم تصاویر بزرگ به تکههای کوچک و تغذیه آنها به عنوان نوتهای مستقل واقعاً خوب کار میکند. سپس این در انکودر ترنسفورمر است، بنابراین همه تکهها در طول ترنسفورمر با هم ارتباط دارند و تعداد نوتها در اینجا به نوعی نه میشود.
شما فقط طیف مل خود را میگیرید و آن را به قطعات کوچک تقسیم میکنید و به یک ترنسفورمر وارد میکنید. بنابراین، مقالهای مانند این وجود داشت، اما همچنین ویسپر هم یک ترنسفورمر مبتنی بر کپی است. اگر ویسپر را از Open AI دیده باشید، شما فقط طیف مل را میشکنید و به یک ترنسفورمر وارد میکنید و سپس وانمود میکنید که با متن سر و کار دارید و این خیلی خوب کار میکند. در تبدیل تصمیم در یادگیری تقویتی، شما حالتها و اقدامهای خود را میگیرید و تجربیات خود را در یک محیط بازسازی میکنید و فقط وانمود میکنید که این یک زبان است و شروع به مدلسازی توالیهای آن میکنید و سپس میتوانید از آن برای برنامهریزیهای بعدی استفاده کنید که این به خوبی کار میکند. حتی چیزهایی مانند Alpha Go هم وجود دارد. ما به طور مکرر درباره مولکولها صحبت میکردیم و چگونگی ترسیم آنها. بنابراین، در قلب محاسبات الکلی نیز یک ترنسفورمر وجود دارد. یک چیزی که میخواستم درباره ترنسفورمرها نیز بگویم این است که متوجه شدم که آنها بسیار انعطافپذیر هستند و من واقعاً از این موضوع لذت میبرم. به شما یک مثال از تسلا میزنم، مانند اینکه شما کامنتی دارید که تصویری را میگیرد.
سپس پیشبینیهایی درباره تصویر انجام میدهد و سوال بزرگ این است که چگونه اطلاعات اضافی را وارد کنیم و همیشه این کار ساده نیست. مثلاً اگر اطلاعات اضافی داشته باشم که میخواهم خروجیها بر اساس آن اطلاعات آگاه شوند. شاید حسگرهای دیگری مانند رادار داشته باشم، یا اطلاعاتی از نقشه یا نوع وسیله نقلیه یا برخی صداها. سوال این است که چگونه اطلاعات را به یک کامنت وارد کنیم؛ کجا آن را وارد کنیم؟ آیا آن را به هم متصل میکنیم؟ چگونه این کار را انجام میدهیم و در چه مرحلهای آن را اضافه میکنیم. با استفاده از ترنسفورمر، این کار بسیار سادهتر است زیرا هر چیزی را که میخواهید برمیدارید، آن را خرد میکنید و به همراه مجموعهای از آنچه قبلاً داشتید وارد میکنید و اجازه میدهید خودتوجهی معلوم کند که همه چیز چگونه باید ارتباط برقرار کند و این واقعاً کار میکند. بنابراین من هر چیزی را خرد میکنم و آن را در مخلوط میریزم. این تقریباً مشابه روشی است که از این بار فضای اقلیدسی رها میکند، جایی که قبلاً مجبور بودید محاسبات خود را تنظیم کنید.
برای انطباق با فضای اقلیدسی سه بعدی که چگونه محاسبات را ترتیب میدهید، محاسبات در واقع تقریباً مانند فضای 3D اتفاق میافتد اگر به آن فکر کنید، اما در توجه همه چیز فقط مجموعهها هستند. بنابراین، این یک چارچوب بسیار انعطافپذیر است و میتوانید به راحتی مواردی را به مجموعه شرایط خود اضافه کنید و همه چیز به طور خودکار به هم مرتبط میشود. این واقعاً زیباست و من به آن احترام میگذارم. حالا دقیقاً چه چیزی ترانسفورمرها را اینقدر مؤثر میکند؟ من فکر میکنم یک مثال خوب در مقاله gbt3 وجود دارد که به افراد توصیه میکنم آن را بخوانند. مدلهای زبانی یادگیرندگان دو-shot هستند. احتمالاً من این را کمی متفاوت نامگذاری میکردم و میگفتم چیزی مانند ترانسفورمرها قادر به یادگیری در متن یا یادگیری متا هستند که این چیزی است که آنها را واقعاً خاص میکند. بنابراین اساساً زمینهای که با آن کار میکنند این است که من مقداری زمینه دارم و تلاش میکنم که بگویم گذرگاهی، این فقط یک مثال از بسیاری است، من یک گذرگاه دارم و در مورد آن سؤالاتی میپرسم.
و بعد از آن، به عنوان بخشی از زمینه در درخواست، سوالات و پاسخها را ارائه میدهم. بنابراین یک مثال سوال و پاسخ، مثال دیگر سوال و پاسخ، و همین طور ادامه میدهیم و این میشود، اوه بله، مردم باید بروند، خوب این برای من خیلی مهم است. خوب، چیزی که واقعاً جالب است این است که اساساً با ارائه مثالهای بیشتر در زمینه، دقت بهبود مییابد و بنابراین میتوان گفت که ترانسفورمر قادر است به نوعی در فعالسازیها یاد بگیرد بدون اینکه هیچ نزول گرادیان معمولی انجام دهد. بنابراین اگر شما دقیقاً تنظیم کنید، باید یک مثال و پاسخ ارائه دهید و از نزول گرادیان استفاده کنید، اما به نظر میرسد که ترانسفورمر به طور داخلی در وزنهایش کاری انجام میدهد که شبیه به یادگیری متا یا گریدینتهای بالقوه است، نوعی یادگیری در وزنهای ترانسفورمر در حین خواندن درخواست. و بنابراین در این مقاله به تمایز بین این حلقه خارجی و استوکاستیک میپردازند.
آمادگی c و این حلقه داخلی یادگیری در بافت به گونهای است که حلقه داخلی شبیه به خواندن توالی تقریباً توسط ترنسفورمر است و حلقه خارجی، آموزش از طریق کاهشی گرادیان است. به طور کلی، مقداری آموزش در ترنسفورمر فعالسازی در حال انجام است در حالی که آن یک توالی را مصرف میکند که شاید بسیار شبیه به کاهشی گرادیان به نظر برسد. مقالات اخیر به نوعی به این موضوع اشاره کرده و آن را مورد مطالعه قرار دادهاند. به عنوان مثال، در این مقاله آنها چیزی به نام اپراتور خام را پیشنهاد میدهند و ادعا میکنند که اپراتور خام توسط ترنسفورمر پیادهسازی شده است و سپس نشان میدهند که میتوان چیزهایی مانند رگرسیون ریج را بر روی یک اپراتور خام پیادهسازی کرد. این نوعی اشاره به این دارد که ممکن است چیزی شبیه به یادگیری مبتنی بر گرادیان در داخل فعالسازیهای ترنسفورمر وجود داشته باشد و من فکر میکنم که این فکر ناممکن نیست زیرا یادگیری مبتنی بر گرادیان شامل عبور به جلو و عبور به عقب است.
بهروزرسانی خوب به نظر میرسد چون شما فقط در حال تغییر دادن و اضافه کردن به وزنها هستید. شما با یک مجموعه تصادفی اولیه از وزنها شروع میکنید، پاس جلو، پاس عقب و سپس وزنها را بهروزرسانی میکنید و بعد دوباره پاس جلو و پاس عقب میدهید. به نظر میرسد که ترنسفورمر یک رزنِت است. برخی از افراد تلاش میکنند بفهمند چرا این موضوع ممکن است و سپس من تعدادی توییت دارم که در انتها اینجا کپی-پیست کردهام. این متن به نوعی برای مصرف عمومی نوشته شده است، بنابراین کمی سطح بالاتر و جدیتر است. من در مورد اینکه چرا این معماری اینقدر جالب است و چرا ممکن است به این میزان محبوب شده باشد، صحبت میکنم. به عقیده من، این همزمان سه ویژگی را بهینه میکند که بسیار مطلوب هستند. اول اینکه ترنسفورمر در پاس جلو بسیار بیانی است و قادر است توابع جالبی را پیادهسازی کند، توابعی که حتی میتوانند یادگیری متا انجام دهند. شماره دو…
ترنسفورمر به خاطر ویژگیهایی مانند اتصالات باقیمانده، گرههای لایه و غیره، بسیار بهینهسازیشدنی است و همچنین بسیار کارآمد است. این موضوع همیشه مورد توجه قرار نمیگیرد، اما اگر به نمودار محاسباتی ترنسفورمر نگاه کنید، متوجه میشوید که یک شبکه عریض و کمعمق است که برای بهرهبرداری از موازیسازی در پردازندههای گرافیکی (GPU) کاملاً مناسب است. بنابراین، فکر میکنم ترنسفورمر بهطور عمدی طراحی شده تا بهطور کارآمد بر روی GPUها اجرا شود. کارهای قبلی مانند GPU عصبی وجود دارد که من هم واقعاً از آن لذت میبرم، که واقعاً به این معناست که چگونه میتوانیم آگهیهای خود را طراحی کنیم که بر روی GPUها کارآمد باشند و از محدودیتهای سختافزار به عقب فکر کنیم که به نظر من یک راه بسیار جالب برای فکر کردن به آن است. اوه، بله، بنابراین من میگویم احتمالاً ترنسفورمر را یک کامپیوتر بهینهسازیشدنی کارآمد با کاربری عمومی مینامیدم به جای اینکه «توجه همهچیز است» بگویم، مثل اینکه شاید در دیدگاه گذشتهنگر آن مقاله را اینگونه نامگذاری میکردم، که مدلهای بسیار کارآمدی هستند.
گذراندن مرحله سوم بسیار بیانی است و از نظر استفاده از GPU بسیار کارآمد است. به راحتی قابل بهینهسازی با گرادیان است و به خوبی آموزش میبیند. در هر صورت، میتوانید توییتهای داغ دیگری را که دارم بعداً بخوانید، اما فکر میکنم این یکی ممکن است جالب باشد. اگر قبلاً شبکههای عصبی بهعنوان کامپیوترهای ویژه طراحیشده برای وظایف خاص در نظر گرفته میشدند، GPT یک کامپیوتر چندمنظوره است که در زمان اجرا قابلیت پیکربندی مجدد برای اجرای برنامههای زبان طبیعی را دارد. برنامهها بهعنوان ورودی داده میشوند و سپس GPT با کامل کردن مدرک، برنامه را اجرا میکند. من شخصاً این تمثیلها را به کامپیوتر بسیار دوست دارم، چرا که مانند یک کامپیوتر قدرتمند است و با انجام نزول بهینهسازی میشود. خوب، فکر میکنم میتوانید این را بعداً بخوانید، اما همین. فقط از شما تشکر میکنم و این را نگه میدارم. متأسفانه، فقط این توییت را پیدا کردم که معلوم میشود اگر مجموعه دادههای آموزشی را بزرگتر کنید و از یک شبکه عصبی قدرتمند مانند ترنسفورمر استفاده کنید، شبکه به نوعی به…
رایانههای عمومی برای متن به نوعی دیدن آن جالب به نظر میرسد و به جای انجام یک توالی ضخیم واحد، میتوانید توالی را در درخواست طراحی کنید و چون ترنسفورمر هم قدرتمند است و هم بر روی مجموعه دادههای بسیار سخت و بزرگ آموزش دیده است، به نوعی به این رایانه متن عمومی تبدیل میشود و به نظرم این جالب است بله. اما حالا باید کمی بنویسیم، چقدر فکر میکنید که امروز واقعاً سه پست وجود دارد؟ واقعاً اینطور است زیرا عمدتاً برای بشریت کارآمدتر است. بنابراین به نظرم کمی این قضیه وجود دارد. بله، من میگویم که RNNها در اصل میتوانند برنامههای دلخواه را پیادهسازی کنند ولی فکر میکنم بیان این موضوع تا حدی بیفایده است زیرا آنها احتمالاً بیانگر هستند به این معنا که قدرت دارند و میتوانند این توابع دلخواه را پیادهسازی کنند ولی قابل بهینهسازی نیستند و قطعاً کارآمد نیستند.
زیرا آنها دستگاههای محاسباتی متوالی هستند، بنابراین فکر میکنم اگر به آن به عنوان یک گراف محاسباتی نگاه کنید، شبکههای عصبی بازگشتی (RNNs) یک گراف محاسباتی بسیار بلند و نازک هستند. اگر نورونها را کش دهید و به تمام اتصالات فردی نورونها نگاه کنید و آنها را بکشید و سعی کنید آنها را تجسم کنید، RNNها مانند یک گراف بسیار بلند به نظر میرسند که این برای بهینهسازی نیز بد است زیرا نمیدانم دقیقاً چرا که فقط یک شهود ساده است، اما وقتی که شما در حال بازپراکندهسازی هستید، نمیخواهید که مراحل زیادی را طی کنید و بنابراین ترنسفورمرها گرافهای کم عمق و عریضی هستند و از نظارت به ورودیها تعداد بسیار کمی گام وجود دارد و مسیرهای طولانی باقیماندهای وجود دارد که باعث میشود گرادیانها به راحتی جریان یابند و همه این نرمالسازیهای لایهای وجود دارد تا مقیاسهای همه آن فعالیتها را کنترل کنند و بنابراین تعداد مراحل کم است و شما به سرعت از نظارت به ورودی میروید و به سادگی از طریق گراف جریان مییابد، بنابراین همه اینها میتواند به صورت موازی انجام شود و نیازی به انجام این کدکننده-کدگشا (encoder-decoder) RNN نیست.
شما باید از کلمه اول به دوم و سپس به سوم بروید، اما در اینجا در ترنسفورمر، هر کلمه به طور کامل تقریباً به صورت موازی پردازش میشود که نوعی خاص است. بنابراین، من فکر میکنم تمام اینها واقعاً مهم است زیرا اینها واقعاً مهم هستند و فکر میکنم شماره سه کمتر صحبت شده است اما بسیار مهم است زیرا در یادگیری عمیق، مقیاس اهمیت دارد و بنابراین اندازه شبکهای که میتوانید آموزش دهید، بسیار حائز اهمیت است و اگر روی سختافزار کنونی کارآمد باشد، میتوانیم آن را بزرگتر کنیم. بنابراین، بله، شما تصاویر را میگیرید و به نظر میرسد آنها را به تکهها تقسیم میکنید، بنابراین این هزار توکن اول یا هر چیزی دیگری است و حالا من یک خاص دارم. بنابراین رادار میتواند نیز باشد، اما من واقعاً نمیخواهم نمایشی از رادار بسازم. بنابراین، شما فقط باید آن را تقسیم کنید و وارد کنید و سپس باید آن را به نحوی کدگذاری کنید، مانند اینکه ترنسفورمر نیاز دارد بداند که آنها از رادار میآیند. بنابراین شما یک خاص ایجاد میکنید، شما نوعی از…
یک توکن خاص که شما این توکنهای راداری را در نمایش دارید و قابل یادگیری توسط گرادیان است، اما اطلاعات وسیله نقلیه نیز با یک توکن تعبیه خاص که قابل یادگیری است، وارد میشود. چون همه اینها فقط یک مجموعه هستند و یک صدای دیگر هم هست. بله، همه اینها فقط یک مجموعه هستند، اما شما نمیتوانید این مجموعهها را به صورت موقعیتی کدگذاری کنید اگر بخواهید. بنابراین، کدگذاری موقعیتی به این معناست که میتوانید بهطور سختافزاری، برای مثال، مختصات را با استفاده از سینوسها و کسینوسها تعریف کنید. حتی میتوانید این را سختافزاری کنید، اما بهتر است که موقعیت را سختافزاری نکنید و به سادگی یک وکتور داشته باشید که همیشه در حال حاضر است و هر محتوایی که در آنجا باشد فقط به آن اضافه میشود و این وکتور قابل آموزش با پسزمینه است. اینگونه است که شما این کار را انجام میدهید، اما به نظر میرسد که آنها کار میکنند، اما به نظر میرسد که گاهی اوقات هر چه دیگر انجام دهم ممکن است بهتر باشد. یک سوال، بنابراین منظورم این است که کدگذار موقعیتی مانند این است که آنها واقعاً مثل این نیستند، آنها دارای تعصب القایی بسیار کمی هستند یا چیزی شبیه به این.
آنها فقط وکتورهایی هستند که همیشه در یک مکان قرار دارند و شما سعی میکنید به شبکه کمک کنید. من فکر میکنم این شهود خوب است اما اگر دادههای کافی دارید، معمولاً تلاش برای دستکاری آنها کار خوبی نیست. سعی کردن برای وارد کردن دانش در حالی که دادههای کافی در خود مجموعه داده وجود دارد معمولاً نتیجهبخش نیست. بنابراین واقعاً بستگی دارد به اینکه شما در کدام مقیاس هستید. اگر دادههای بینهایت دارید، در واقع میخواهید کمتر و کمتر رمزگذاری کنید و این بهتر عمل میکند. اگر دادههای بسیار کمی دارید، در واقع میخواهید مقداری تعصب را رمزگذاری کنید و شاید اگر مجموعه دادههایتان خیلی کوچکتر باشد، استفاده از کانولوشنها ایده خوبی باشد چون شما در واقع این تعصب را از تمام فیلترها دارید. اما فکر میکنم ترنسفورمر به شدت عمومی است اما راههایی وجود دارد برای دستکاری رمزگذاریها تا ساختار بیشتری وارد کنید؛ مثلاً میتوانید سینوسها و کسینوسها را رمزگذاری کرده و ثابت کنید یا میتوانید واقعاً به مکانیزم توجه مراجعه کنید.
و بگویید که اگر تصویر من به تکههای کوچکی تقسیم شده باشد، این تکه فقط میتواند با این همسایگی ارتباط برقرار کند و شما میتوانید این را در ماتریس توجه انجام دهید، فقط هر چیزی را که نمیخواهید ارتباط برقرار کند، پوشش دهید و بنابراین مردم واقعاً با این بازی میکنند زیرا توجه کامل ناکارآمد است، بنابراین آنها لایههایی را در هم میآمیزند که فقط در تمام تکهها ارتباط برقرار میکنند و سپس لایههایی که بهطور کلی ارتباط برقرار میکنند و آنها انواع ترفندهای مختلفی انجام میدهند بنابراین میتوانید بهتدریج بایاسهای القائی بیشتری را وارد کنید و این کار را انجام میدهید اما بایاسهای القائی نوعی از هسته ترنسفورمر جدا شدهاند و آنها در اتصال گرهها و در موقعیتهای چندگانه جدا شدهاند و ما میتوانیم با این برای فرضیهها بازی کنیم. بنابراین اکنون احتمالاً حدود 200 مقاله در این زمینه وجود دارد، اگر بیشتر نباشد، واقعاً ردیابی آنها سخت است. مثل مرورگر سافاری من که اوه، روی کامپیوترم است و حدود 200 زبانه باز دارد، اما بله من…
من حتی مطمئن نیستم که آیا میخواهم صادقانه فavorites خود را انتخاب کنم و حتی افراد برای فصل حمله ترنسفورمر. فکر میکنم آن یکی دستورالعملهای بزرگی بود. آن چیزی دیگری که واقعاً بیشتر دوست دارم احتمالاً حفظ طول زمینه ثابت است اما اجازه میدهد شبکه به نوعی از یک یادداشت موقت استفاده کند. و به این صورت کار میکند که شما به نوعی با مثالها در پوسته به ترنسفورمر آموزش میدهید که آیا واقعاً یک یادداشت موقت دارید. خوب خوب اعتماد کنید، اساساً نمیتوانید خیلی زیاد به یاد بیاورید، زمینهتان الهامبخش نیست، اما میتوانید از یک یادداشت موقت استفاده کنید و این کار را با انتشار یک یادداشت موقت شروع کرده و سپس هر چه میخواهید به یاد بیاورید را بنویسید و سپس یادداشت موقت را تمام کنید و سپس ادامه دهید با هر آنچه میخواهید و بعداً وقتی که در حال رمزگشایی هستید، واقعاً یک منطق خاص دارید که وقتی شروع یادداشت موقت را تشخیص میدهید، به نوعی هر آنچه را که در آنجا قرار دادهاید، در یک چیز خارجی ذخیره میکنید و به آن توجه میکنید. بنابراین اساساً میتوانید به ترنسفورمر آموزش دهید که به طور دینامیک عمل کند.
به طور کلی، چون این موضوع بسیار متا-یادگیری است، میتوانید آن را به طور دینامیک آموزش دهید تا از ابزارها و وسایل دیگر استفاده کند و به این ترتیب به آن اجازه دهید حافظهاش را گسترش دهد، اگر این برایتان منطقی است. این دقیقا شبیه یادگیری انسان برای استفاده از یک دفترچه یادداشت است، درست است؟ شما نیازی به نگهداشتن آن در ذهنتان ندارید. بنابراین، نگهداشتن چیزها در ذهن شما مانند این است که شاید در زمینه زمانی ترنسفورمر باشد، اما شاید ما فقط بتوانیم به آن یک دفترچه یادداشت بدهیم و سپس آن بتواند از دفترچه یادداشت پرسش کند، از آن بخواند و در آن بنویسد .