達摩院SPACE大模型:知識注入與知識利用(2)
3. 準備工作
將對話策略作為知識注入到預訓練對話模型,需要在數據和知識層面做一些準備工作。如上圖所示,將英文開源數據集進行綜合,形成英文任務型對話 DA 體系——UniDA,共 5 大類,20 個標簽,100 萬份有標注的數據,3500 萬的無標注數據,如下圖所示:
整理好以上知識之后,如何定義預訓練的任務?如上圖所示,選用的是顯式建模對話策略,即給定對話歷史,預測下一輪系統端的 DA,即做成分類任務,預測下一輪的 DA 標簽。
4. 半監督方案設計
有了數據,有了知識,有了顯式建模方式,就可以進行半監督的學習。如上圖所示,半監督學習的方案主要由以上三種方式:判別式方法、生成式方法、對比學習方法等。
由于判別式方法和生成式方法比較常規,所以先對以上兩種方法進行探索。結果表明以上兩種方式做出來的效果并不好。如上圖所示,針對判別式的方法,對有標數據,可以新加一個損失函數 LDA ,但是對于無標數據,無法添加損失函數。針對生成式的方法,也是同樣的道理。即 Self-Predict 和 VAE 的方法,對于有標數據建模是不錯的,但是對于無標數據的建模效果不好,因為基于?預測的?法通過模型參數共享,實現弱約束,基于 VAE 的?法通過重參數化 Trick 進?梯度回傳,但隱變量不穩定。
基于上述問題,我們希望通過對比學習,進行半監督學習的探索。針對有標數據可以輕松地加上 LDA 損失函數,而針對無標數據如何做,這里引入一致性損失函數。如上圖,我們對同一個樣本,過兩遍圖右邊的模型結構,每一遍都有 Dropout 進行隨機處理,所以,兩次的樣本編碼不一致,但是,相差不會很遠,距離應該很近。整體思想如下:
基于少量的有標數據和大量的無標數據,通過有標數據學習一個支持的概率分布,對于無標數據,進行兩次學習,每次過模型都生成一個向量,這兩次生成的向量的距離,應該是很近的。通過這種對比學習的半監督學習方式,很好地解決了半監督學習有標數據和無標數據結合的問題。
模型的效果非常好,在 MultiWOZ2.0 和 MultiWOZ2.1 實現了 5.3% 和 5.5% 的提升。以前的模型提升只能在 1% 或者 2% 的提升,而 SPACE 帶來了 5% 以上的提升。
拆開細看,以 MultiWOZ2.0 為例,模型的提升主要體現在 Success 和 BLEU 等方面,因為對話策略對于 Success 對話完成率和 BLEU 對話回復生成至關重要,這說明通過半監督,模型很好地學會了這類知識。
除了對全量數據的測試,也在少量數據進行了測試,如上圖所示,分別在 5%、10%、20%、50% 等數據量上進行了對比實驗,可以發現 SPACE 模型在不同數據量上也帶來了顯著的提升。
以上主要講解我們提出的知識注入的方式,半監督訓練 SPACE 模型,在預訓練上面顯著提高預訓練模型的效果。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。
物聯網相關文章:物聯網是什么