自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】

發(fā)布于 2025-2-27 12:18
瀏覽
0收藏

MMOE模型由谷歌研究團(tuán)隊(duì)于2018年在論文《Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts》中提出,是一種新穎的多任務(wù)學(xué)習(xí)框架,廣泛應(yīng)用于推薦系統(tǒng)中。

本文從技術(shù)背景、演化過(guò)程、計(jì)算原理、關(guān)鍵問(wèn)題解析以及基于PyTorch 的代碼實(shí)現(xiàn)方面對(duì)MMoE架構(gòu)進(jìn)行深入探究。

1.技術(shù)背景

(1)多任務(wù)學(xué)習(xí)的本質(zhì)是共享表示以及相關(guān)任務(wù)的相互影響,多任務(wù)學(xué)習(xí)模型并不總是在所有任務(wù)上都優(yōu)于相應(yīng)的單任務(wù)模型。

(2)通常,相似的子任務(wù)擁有比較接近的底層特征,那么在多任務(wù)學(xué)習(xí)中就可以很好地進(jìn)行底層特征共享。但對(duì)于不相似的任務(wù),它們的底層特征表示差異很大,在進(jìn)行參數(shù)共享時(shí)很可能互相沖突或噪聲太多,從而導(dǎo)致多任務(wù)學(xué)習(xí)模型效果不佳。

(3)因此,多任務(wù)學(xué)習(xí)的難點(diǎn)是如何在相似性不高的任務(wù)上獲得好的效果。

2.MMoE演化過(guò)程

(1)MMoE的主干建立在最常用的Shared-Bottom模型(圖(a))上,其中所有任務(wù)共享一個(gè)底層網(wǎng)絡(luò),每個(gè)任務(wù)在底層網(wǎng)絡(luò)的頂部有一個(gè)單獨(dú)的網(wǎng)絡(luò)塔。

(2)MMoE模型(圖(c))不是共享一個(gè)底層網(wǎng)絡(luò),而是擁有一組底層網(wǎng)絡(luò),其中每個(gè)底層網(wǎng)絡(luò)被稱之為專家(Expert)。

(3)與所有任務(wù)共享一個(gè)門控網(wǎng)絡(luò)(Gate)的MoE模型(圖(b))相比,MMoE為每個(gè)任務(wù)單獨(dú)引入一個(gè)門控網(wǎng)絡(luò)。在針對(duì)不同任務(wù)時(shí)可以得到不同的專家權(quán)重,從而實(shí)現(xiàn)對(duì)專家的選擇性利用,即不同任務(wù)對(duì)應(yīng)的門控網(wǎng)絡(luò)可以學(xué)習(xí)到不同的專家組合模式,因此更容易捕捉到任務(wù)間的相關(guān)性和差異性。

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

3.MMoE計(jì)算原理

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

(1)當(dāng)輸入為時(shí)(是特征維度),任務(wù)的輸出可以表示為:

其中,代表任務(wù)的底層網(wǎng)絡(luò),即被多個(gè)任務(wù)共享的專家網(wǎng)絡(luò)組。代表專屬于任務(wù)的頂層網(wǎng)絡(luò)塔。

(2)底層共享專家組網(wǎng)絡(luò)的輸出可以表示為:

其中,代表第個(gè)專家網(wǎng)絡(luò)(是專家數(shù)量),代表任務(wù)的門控網(wǎng)絡(luò)產(chǎn)生的第個(gè)專家網(wǎng)絡(luò)的權(quán)重值。最終輸出結(jié)果為所有專家網(wǎng)絡(luò)輸出的加權(quán)和。

(3)對(duì)于任務(wù)專屬的門控網(wǎng)絡(luò)而言,輸入為特征,輸出為所有專家的權(quán)重值(類似于注意力機(jī)制),表示如下:

其中,是一個(gè)可訓(xùn)練參數(shù)矩陣。

(4)其中,每個(gè)專家網(wǎng)絡(luò)的輸入特征和結(jié)構(gòu)都是一樣的,每個(gè)門控網(wǎng)絡(luò)的輸入和結(jié)構(gòu)也是一樣的。專家和門控網(wǎng)絡(luò)的結(jié)構(gòu)都為前饋神經(jīng)網(wǎng)絡(luò),層數(shù)可自定義。

(5)特別注意,由計(jì)算原理可知,門控網(wǎng)絡(luò)的數(shù)量取決于任務(wù)數(shù)量,門控網(wǎng)絡(luò)的輸出大小必須等于專家數(shù)量。

4.關(guān)鍵問(wèn)題解析

(1)專家網(wǎng)絡(luò)的結(jié)構(gòu)一樣,輸入特征也一樣,是否會(huì)導(dǎo)致每個(gè)專家學(xué)習(xí)得到的參數(shù)趨向于一致,從而失去最終集成的意義?

(a)在網(wǎng)絡(luò)參數(shù)隨機(jī)初始化的情況下,不會(huì)出現(xiàn)上述問(wèn)題。因?yàn)閿?shù)據(jù)存在多個(gè)視角,只要每一個(gè)專家網(wǎng)絡(luò)的參數(shù)初始化是不一樣的,就會(huì)導(dǎo)致每一個(gè)專家學(xué)習(xí)到數(shù)據(jù)中不同的特征表達(dá)。

(2)門控網(wǎng)絡(luò)的權(quán)重極化問(wèn)題,即某些專家網(wǎng)絡(luò)的權(quán)重過(guò)大或者國(guó)小,導(dǎo)致模型對(duì)這些專家網(wǎng)絡(luò)的依賴性過(guò)高或過(guò)低,從而影響模型性能。

(a)使用Dropout:隨機(jī)地將一部分神經(jīng)元地輸出設(shè)置為0,以防止模型過(guò)度依賴某些神經(jīng)元,增強(qiáng)模型地泛化能力和魯棒性。

(b)正則化:對(duì)門控網(wǎng)絡(luò)的參數(shù)進(jìn)行正則化,如添加 L1 或 L2 正則項(xiàng),限制參數(shù)的大小和復(fù)雜度,防止模型過(guò)擬合,也有助于緩解權(quán)重分布極化現(xiàn)象。

5.基于Pytorch的代碼實(shí)現(xiàn)

以下代碼中的專家和門控神經(jīng)網(wǎng)絡(luò)皆以一個(gè)簡(jiǎn)單的線性層代替。

(1)專家神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

(2)門控神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

(3)任務(wù)塔網(wǎng)絡(luò)的實(shí)現(xiàn)

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

(4)MMoE整體實(shí)現(xiàn)

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

(5)測(cè)試運(yùn)行

詳解MMoE 模型:多任務(wù)學(xué)習(xí)中的專家混合建模與實(shí)踐【附代碼】-AI.x社區(qū)

參考資料

1、 Ma J , Zhao Z , Yi X , et al. Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts. ACM, 2018.

2、https://mp.weixin.qq.com/s/38tQmvVxngDT0c-QI5B8rg

3、https://blog.csdn.net/u012328159/article/details/123309660

本文轉(zhuǎn)載自 ??南夏的算法驛站??,作者: 趙南夏


收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦