ترکیب متخصصان کیست؟ توضیح بده.
ترکیب متخصصان یک تکنیک یادگیری ماشینی است که در آن از چندین شبکه متخصص (یادگیرنده) به منظور تقسیم‌بندی یک فضای مسئله، به مناطق همگن استفاده می شود. تفاوت آن با تکنیک‌های یادگیری گروهی در این است که در MoE بر روی هر ورودی، تنها یک یا چند مدل متخصص اجرا می‌شوند، برخلاف تکنیک‌های گروهی، که همه مدل‌ها بر روی همه ورودی‌ها اجرا می‌شوند.نظریه پایه.ترکیب متخصصان، همیشه دارای موارد زیر است. این عوامل متفاوت از هم ساخته و نهایتاً ترکیب می‌شوند.به منظور به حداقل رساندن تابع هزینه، هم متخصصان و هم تابع وزن‌دهی با استفاده از روش گرادیان کاهشی، آموزش داده می‌شوند. در انتخاب تابع وزن‌دهی و تابع هزینه که شکل‌بندی دقیق متخصصان را تعیین کند، محدودیتی وجود ندارد.شبکه متا-پی.شبکه متا-پی، که توسط همپشایر و وایبل ارائه شده است، از formula_12 به عنوان تابع خروجی استفاده می‌کند. آموزش این مدل با اعمال گرادیان کاهشی بر روی افت خطای میانگین مربع formula_13 انجام می‌شود. متخصصان می‌توانند هر تابع دلخواهی باشند.نویسندگان مقاله در انتشار اولیه آن، مسئله طبقه‌بندی واج‌ها در سیگنال گفتاری 6 سخنران مختلف ژاپنی، شامل 2 زن و 4 مرد، را حل کردند. آنها 6 متخصص را آموزش دادند که هر کدام یک «شبکه عصبی با تأخیر زمانی» (در اصل یک شبکه کانولوشن چندلایه بر روی طیف‌نگار mel ) بودند. سپس دریافتند که ترکیب متخصصان به‌دست آمده، 5 متخصص را به 5 سخنران اختصاص داده است، اما گوینده ششم (مرد) متخصص اختصاصی ندارد. در عوض صدای او توسط ترکیب خطی متخصصان مرتبط با 3 سخنران مرد دیگر طبقه‌بندی شده است.ترکیب‌های تطبیقی از متخصصان محلی.ترکیب تطبیقی متخصصان محلی از یک مدل ترکیبی گاوسی استفاده می کند. هر متخصص یک توزیع گاوسی را پیش‌بینی می‌کند و ورودی را کاملاً نادیده می‌گیرد. به بیان دقیق‌تر، متخصص formula_14-ام پیش‌بینی می‌کند که خروجی formula_15 است، به طوری که formula_16 یک پارامتر آموزش‌پذیر است. تابع وزن‌دهی یک تابع بیشینه هموار خطی است:formula_17ترکیب متخصصان پیش‌بینی می‌کند که خروجی بر اساس تابع توزیع چگالی احتمال تولید می‌شود:formula_18این تابع با روش تخمین حداکثر احتمال، یعنی گرادیان صعودی بر روی formula_19 آموزش می‌بیند. گرادیان برای متخصص formula_14 -ام به قرار زیر خواهد بود:formula_21و گرادیان، برای تابع وزنی به قرار زیر است:formula_22تابع وزن‌دهی برای هر جفت ورودی-خروجی formula_23 تغییر می‌کند تا وزن همه متخصصانی که بالاتر از میانگین کار کرده‌اند افزایش یابد و وزن همه متخصصانی که کمتر از میانگین کار کرده‌اند کاهش یابد. با این کار تابع وزن‌دهی تشویق می‌شود تا یاد بگیرد فقط متخصصانی را انتخاب کند که پیش‌بینی‌های درست را برای هر ورودی انجام می‌دهند.متخصص formula_14 -ام برای نزدیک‌تر کردن پیش‌بینی خود به formula_25 تغییر می‌کند. میزان این تغییر متناسب با formula_26 است. در واقع این کار یک استنباط بیزی است. با داشتن ورودی formula_2، احتمال پیشین که متخصص formula_14 پاسخ درست بدهد formula_29 است. و formula_30 احتمال شاهد formula_25 است.بنابراین، formula_32 احتمال پسین برای متخصص formula_14-ام است. در نتیجه نرخ تغییر برای متخصص formula_14-ام متناسب با احتمال پسین آن است.به بیان دیگر می‌توان گفت: از متخصصانی که در گذشته، متخصصان خوبی برای مشورت به نظر می‌رسیدند، خواسته می‌شود تا بر روی داده ها آموزش ببینند. متخصصانی که در گذشته برای مشورت مناسب نبودند، رها شده‌اند.اثر ترکیبی بدین گونه است که متخصصان تبهر پیدا می‌کنند: فرض کنید دو متخصص هر دو در پیش‌بینی یک ورودی خاص خوب هستند، اما یکی کمی بهتر است، در این صورت تابع وزن‌دهی در نهایت یاد می‌گیرد که به نفع آن یکی که بهتر بوده تمایل پیدا کند. پس از این اتفاق، متخصص ضعیف‌تر قادر به دریافت سیگنال گرادیان بالاتر نیست و در پیش‌بینی ورودی بدتر و بدتر می‌شود. برعکس، متخصص ضعیف‌تر می‌تواند در پیش‌بینی دیگر انواع ورودی‌ بهتر عمل کند و به طور فزاینده‌ای به منطقه دیگری کشیده شود. این روش یک اثر بازخوردی مثبت دارد و باعث می‌شود هر متخصص از بقیه جدا شود و به تنهایی یک منطقه محلی را تحت نظر بگیرد. بنابراین در این لحظه نام "متخصصان "محلی"" معنادار می‌شود.ترکیب متخصصان سلسله مراتبی.ترکیب متخصصان سلسله مراتبی از چندین سطح مختلف دروازه در یک [ساختار] درخت استفاده می‌کند. هر دروازه یک توزیع احتمال جهت اعمال بر روی سطح بعدی دروازه‌ها است. متخصصان روی [گره های] برگ درخت هستند. این ساختار بسیار شبیه به درختان تصمیم است.یک MoE سلسله مراتبی 2 سطحی نوعی به عنوان مثال، یک تابع دروازه ای مرتبه اول formula_35، توابع دروازه‌ای مرتبه دوم formula_36 و متخصصان formula_37 را شامل می‌شود. لذا پیش‌بینی کل formula_38 خواهد بود.انواع.ترکیب متخصصان، که شبیه به مدل ترکیبی گاوسی است، می‌تواند مشابه به روش الگوریتم حداکثرسازی انتظارات آموزش ببیند، که همانند مدل‌های مخلوط گاوسی است. به عنوان یک مثال خاص، در مرحله انتظار، "بار" (که برای توضیح هر نقطه داده به کار می رود) بین متخصصان توزیع می‌شود. در مرحله حداکثر سازی، دو کار انجام می‌شود.با این روش تابع درست‌نمایی لگاریتمی سریعتر از روش گرادیان صعودی می‌تواند همگرا شود. انتخاب تابع دروازه‌ای اغلب انتخاب تابعی از نوع یک بیشینه هموار است. به علاوه، استفاده از توزیع های گاوسی و استفاده از خانواده توابع نمایی پیشنهاد شده است.به جای پیاده‌سازی مجموع وزنی از همه متخصصان، در "MoE سخت"، تنها از متخصص با بالاترین رتبه استفاده می‌شود. به این معنا که، formula_39 . با این کار زمان آموزش و استنتاج تسریع می‌شود.متخصصان می توانند از انواع کلی‌تری از توزیع‌های گاوسی چند‌متغیره استفاده کنند. به عنوان مثال، مقاله پیشنهاد کرد formula_40، که همگی formula_41، formula_42، و formula_43 پارامترهای قابل یادگیری هستند. به بیان دیگر، هر متخصص یاد می‌گیرد که رگرسیون خطی را با استفاده از روش تخمین عدم‌قطعیت قابل‌یادگیری انجام دهد.می توان در متخصصان متفاوت از توابعی به غیر از توزیع‌های گاوسی استفاده کرد. به عنوان مثال، می‌توان از توزیع لاپلاس، یا توزیع تی-استیودنت استفاده کرد. برای طبقه‌بندی باینری نیز، متخصص رگرسیون لجستیک توصیه شده است باformula_44به طوری که formula_45 و formula_46 پارامترهای قابل یادگیری هستند. با تعمیم این فرمول می‌توان به طبقه‌بندی چندگروهی دست یافت، که با استفاده از متخصصان رگرسیون لجستیک چند جمله‌ای انجام می‌شود. یادگیری عمیق.در بخش قبلی MoE توصیف شد و باید توجه کرد که روش‌های بالا پیش از عصر یادگیری عمیق مورد استفاده قرار می گرفت. در دوره پیش از یادگیری عمیق، MoE کاربردهای دیگری از جمله، در پیاده‌سازی مدل‌های بسیار بزرگتر پیدا کرد. در این کاربرد از MoE به عنوان یک روش ساده برای انجام "محاسبات شرطی" بهره می‌بریم. یعنی به جای استفاده از کل مدل، فقط بخش‌هایی از مدل استفاده می‌شود، که متناسب با ورودی انتخاب می‌شوند. اولین مقاله‌ای که MoE را برای یادگیری عمیق به کار می‌برد، «یادگیری بازنمایی‌های عامل‌دار در ترکیبی عمیق از متخصصان» (Eigen, Ranzato, Sutskever) است که پیشنهاد می‌کند از یک شبکه دروازه‌ای متفاوت در هر لایه در یک شبکه عصبی عمیق استفاده شود. به طوری که، هر دروازه یک شبکه بیشینه هموار-خطی-ReLU-خطی، و هر متخصص یک شبکه ReLU-خطی انتخاب شود.هدف اصلی استفاده از MoE در یادگیری عمیق، کاهش هزینه محاسبات است. در نتیجه، برای هر پرس و جو، تنها یک زیرمجموعه کوچک از متخصصان باید پرس و جو شود. این باعث می شود که MoE در یادگیری عمیق با MoEکلاسیک متفاوت باشد. در MoE کلاسیک به ازای هر پرس و جو، خروجی مجموع وزنی خروجی‌های "متخصصان" است. ولی در MoE یادگیری عمیق، خروجی نهایی در هر پرس و جو می‌تواند تنها شامل خروجی‌های زیر مجموعه ای از کل متخصصان باشد. در نتیجه، انتخاب کلیدی طراحی در این MoE معطوف به به "مسیریابی" می‌شود:لایه MoE با دروازه پراکنده.لایه MoE با پراکندگی دروازه‌، که توسط محققان گوگل برین منتشر شده است، از شبکه‌های پیش‌خور به‌ عنوان متخصص و از بیشینه هموار خطی به عنوان دروازه استفاده می‌کند. مشابه پیشنهادهای ارائه شده در بالا برای MoE سخت، به منظور دستیابی به هدف پراکندگی، آنها به جای استفاده از جمع وزنی همه متخصصان، از جمع وزنی k متخصص برتر استفاده می‌کنند. به بیان خاص‌تر، در یک لایه MoE، شبکه‌های پیشخور formula_1 و یک شبکه دروازه formula_4 وجود دارد . شبکه دروازه توسط رابطه formula_49 تعریف می‌شود. formula_50 تابعی است که ورودی های به k واحد برتر را دست نخورده و یکسان نگه می‌دارد، ولی همه ورودی‌های دیگر را به formula_51 تغییر می‌دهد. باید به این نکته اشاره کرد که اضافه شدن نویز به تعادل بار کمک می کند.انتخاب formula_52 یک فراپارامتر است که با توجه به کاربرد انتخاب می‌شود. formula_53 مقادیر معمول و کاربردی هستند. با فرض formula_54، این نسخه از شبکه، ترنسفورمر سوئیچی نامیده می شود. نویسندگان مقاله برای ارائه نتایج خود، با استفاده از لایه‌های متناوب MoE و LSTM، مجموعه‌ای از مدل‌ها را برای کاربرد به عنوان ترجمه ماشینی آموزش دادند و نتیجه را با مدل‌های عمیق LSTM مقایسه کردند. جدول 3 نشان می دهد که مدل های MoE علیرغم داشتن 30 برابر پارامترهای بیشتر، از زمان محاسبه استنتاج کمتری استفاده می کنند.Vanilla MoE معمولاً مشکلاتی در تعادل بار دارد: با برخی از متخصصان اغلب مشورت می شود، در حالی که متخصصان دیگر به ندرت یا اصلاً مشورت نمی کنند. برای تشویق گیت به انتخاب هر متخصص با فرکانس برابر (تعادل بار مناسب) در هر دسته، هر لایه MoE دارای دو تابع تلفات کمکی است. این با به یک تابع تلفات کمکی بهبود یافته است. به طور خاص، اجازه دهید formula_55 تعداد متخصصان باشد، سپس برای یک دسته معین از پرس و جوها formula_56، ضرر کمکی برای دسته استمسیریابی.در MoE با دروازه‌های پراکنده، فقط از k متخصصان برتر پرس و جو می‌شود و خروجی‌های آن‌ها وزن‌دهی و به هم افزوده می‌شود. روش های دیگری نیز وجود دارد. در Hash MoE، مسیریابی توسط یک تابع هش انجام می شود که قبل از شروع یادگیری تثبیت و بدون تغییر در نظر گرفته شده است. به عنوان مثال، اگر مدل یک ترانسفورماتور 4 لایه باشد و ورودی، نشانه‌ای (توکن) متناظر با کلمه "eat" باشد و هش "eat" formula_57 باشد. آنگاه توکن به متخصص 1 در لایه 1، متخصص 4 در لایه 2، متخصص 2 در لایه و متخصص 3 در لایه 4 هدایت می شود. با وجود سادگی، این روش از لحاظ بازدهی در سطح MoE با دروازه پراکندگی با پارامتر formula_54 است.در MoE نرم، فرض کنید در هر دسته، هر متخصص می تواند تعداد formula_59 پرس و جو را پردازش کند. در نتیجه formula_60 پرس و جو وجود دارد که می‌توان به هر دسته تخصیص داد. حال برای هر دسته از پرس و جوهای formula_56، لایه MoE نرم، یک آرایه نوعی formula_62 را محاسبه می کند، به طوری که formula_63 توزیع احتمال بر روی پرس و جوها است، و پرس و جو formula_64-ام به متخصص formula_14-ام با رابطه formula_66 محاسبه می‌شود. با این حال، این روش با مدل‌سازی مدل خودهمبسته کار نمی‌کند، زیرا وزن‌ formula_62 بغیر از خود توکن، به همه توکن‌های دیگر بستگی دارد. روش‌های دیگر عبارتند ازفاکتور ظرفیت.فرض کنید formula_55 متخصص در یک لایه وجود دارند. برای یک دسته معین از پرس و جوی formula_56، هر پرس و جو به یک یا چند متخصص هدایت می شود. به عنوان مثال، اگر هر پرس و جو به یک متخصص مانند ترنسفورمر سوئیچی هدایت شود، و اگر تقسیم بار بین متخصصان صورت گرفته باشد، هر متخصص باید به طور متوسط انتظار دریافت formula_70 از دسته پرس و جوها را داشته باشد. در عمل، متخصصان نمی‌توانند انتظار تعادل بار کامل را داشته باشند: در برخی از دسته پرس و جوها، یک متخصص ممکن است کم کار شود، در حالی که در دسته های دیگر، بیش از حد کار می کند.تعادل بار از آن جهت اهمیت پیدا می‌کند به بدانیم ورودی‌‌ها به هر لایه نمی‌توانند از آن عبور کرده و به لایه بعدی بروند، تا زمانی که همه متخصص‌ها در همان لایه پرس و جوهایی را که به آنها منتسب شده را به پایان برساند. فاکتور ظرفیت به شکل یک محدودیت سخت در تعادل بار ایجاد شده است. فاکتور ظرفیت بدین معنی که: هر متخصص فقط مجاز به پردازش حداکثر تا formula_71 پرس و جوی دسته ای را دارد. در مقاله عملاً مقدار formula_72 نتیجه خوبی به دست داد.کاربرد در مدل های ترنسفورمر.لایه‌های MoE در بزرگترین مدل‌های ترنسفورمر استفاده می‌شوند، زیرا که مراحل آموزش و استنباط مدل کامل بسیار پرهزینه است. آنها معمولاً دارای دروازه‌های پراکنده با پراکندگی 1 یا 2 هستند. در مدل‌های ترانسفورماتور، لایه‌های MoE اغلب برای انتخاب لایه‌های پیش‌خور (معمولاً یک شبکه-خطی-ReLU-خطی) استفاده می‌شوند. بدین صورت که پس از توجه چند سر در مسیر هر بلوک ترانسفورماتور ظاهر می‌شوند. به این که با بزرگتر شدن مدل‌ها، لایه‌های پیش‌خور بخش فزاینده‌ای از هزینه محاسبات را به خود اختصاص می‌دهند. به عنوان مثال در مدل Palm-540B حدود 90 درصد پارامترها در لایه های پیشخور آن قرار دارند. ، مدل‌هایی به اندازه کافی بزرگ که از MoE استفاده کنند، معمولا مدل‌های زبان بزرگ هستند که هر متخصص در آن حدود 10 میلیارد پارامتر دارد.فارغ از مدل‌های زبانی، Vision MoE نیز یک مدل ترنسفورمر با لایه‌های MoE است. نویسندگان مقاله با آموزش یک مدل با 15 میلیارد پارامتر، کاربرد دیگر MoE را نشان دادند.یک سری از مدل های زبان بزرگ گوگل از MoE استفاده می کردند. GShard از MoE با حداکثر 2 متخصص در هر لایه استفاده می کند. بدین سان که، ابتدا متخصص برتر اول انتخاب می‌شود و متخصص برتر دوم با احتمالی متناسب با وزن محاسبه شده توسط تابع دروازه انتخاب می‌شود. پس از آن، مدل GLaM که یک مدل زبانی با 1.2 تریلیون پارامتر را رونمایی شد که هر در لایه MoE آن از 2 متخصص برتر (از بین 64 متخصص) استفاده می کرد. ترنسفورمرهای سوئیچی از 1 متخصص برتر در تمام لایه های MoE استفاده می کنند.NLLB-200 از متا ای‌آی یک مدل ترجمه ماشینی است با پشتیبانی از 200 زبان انسانی. هر لایه MoE از یک MoE سلسله مراتبی با دو سطح استفاده می کند. در سطح اول، تابع دروازه تصمیم می‌گیرد که از یک لایه پیشخور "به اشتراک گذاشته شده" استفاده کند یا متخصصان. اگر از متخصصان استفاده شود، یک تابع دروازه‌ای دیگر وزن‌ها را محاسبه می‌کند و 2 متخصص برتر را انتخاب می کند. مدل‌های زبان بزرگ MoE را می‌توان با تنظیم دستورالعمل برای کارهای پایین دستی سازگار کرد. در دسامبر 2023، شرکت میسترال ای‌آی مدل Mixtral 8x7B خود را تحت مجوز آپاچی 2.0 منتشر کرد. این یک مدل زبان MoE با 46.7B پارامتر، 8 متخصص، و پراکندگی دروازه 2 است. آنها همچنین نسخه ای را منتشر کردند که به منظور فرمان‌بری از دستورها تنظیم شده بود. در مارس 2024، شرکت مدل را منتشر کرد. این یک مدل زبان MoE با 132B پارامتر، 16 متخصص و پراکندگی دروازه 4 است. آنها همچنین نسخه ای را منتشر کردند که برای آموزش زیر تنظیم شده بود.