最近跟幾個做電商NLP的朋友們聊天,有不少收獲。我之前從來沒想過【搜索】在電商里的地位是如此重要,可能GMV的50%以上都是從搜索來的。巨大的經濟價值也極大地推動了技術的發展,他們的工作做得很細致,畢竟一個百分點的點擊率后購買率提升也許對應的就是幾百億的成交額。
其實之前做的汽車領域NLP工作跟電商有很多相似的地方,場景先驗都非常重要。直接使用開放域語料預訓練的語言模型效果并不好。我們也嘗試過一些方法,例如用本領域語料訓練語言模型,結合一些詞庫詞典等等。今天介紹最近看到的一篇針對電商場景調優BERT的論文《E-BERT: Adapting BERT to E-commerce with Adaptive Hybrid Masking and Neighbor Product Reconstruction》[1],其中的一些方法應該對細分領域NLP有一些啟發。
方法
論文的創新方法主要有兩個:Adaptive Hybrid Masking(AHM,自適應混合掩碼)和Neighbor Product Reconstruction(NPR,相似商品重構)。
E-BERT總覽
AHM
第一個方法AHM其實是對已有掩碼方式的改進。原始版本的BERT采用的是隨機mask,這個大家應該都比較清楚。這種mask方式針對的是token,而眾所周知token是由單詞通過wordpiece tokenizer分割而來。所以這種方式遮蓋住的可能是單詞的一個部分,學習這種類似看三個字母猜剩下四個字母的任務不是很符合大家的直覺。隨后就誕生了更加符合人類認知的Whole Word Masking,這個方法就是說要遮就遮整個詞。這里用一個網上的例子幫大家理解
InputText:themanjumpedup,puthisbasketonphil##am##mon'shead OriginalMaskedInput:[MASK]man[MASK]up,puthis[MASK]onphil[MASK]##mon'shead WholeWordMaskedInput:theman[MASK]up,puthisbasketon[MASK][MASK][MASK]'shead
philammon是一個詞,他會被tokenizer分解成三個token,這時就體現了普通mask和WWM的區別。
怎么繼續改進遮蓋方法呢,一個比較直觀的方向是繼續提高遮蓋的整體性。前面是從token走到了word,可以繼續往前走一步到phrase。這個方向其實之前有人做了,比如SpanBert[2]隨機mask一小段,ERNIE[3]mask實體等等。這篇論文做了兩個工作,一個是進一步提升遮蓋phrase的質量,用了一種叫AutoPhrase[4]的方法來構建高質量的電商短語集合;第二個是設計了一套自適應機制,讓模型訓練在詞語遮蓋和短語遮蓋間切換,兩個方面合在一起就叫做AHM。
AHM總體的流程如下圖所示。對于一句輸入,首先用兩種方式進行mask,左邊是常規word mask,右邊是phrase mask,然后輸入到BERT,分別得到MLM的loss,Lw和Lp。然后用一個函數f,根據兩個loss計算變量,跟預設的超參數進行比較,如果就用word masking,反之就用phrase masking。的計算其實可以有很多方法,論文也沒有在這塊做對比實驗,我也就不展開,大家有興趣可以去看原文。
AHM總體流程
NPR
NPR是個比較有意思的部分,直觀的解釋是希望能通過一個商品重建出另一個相似商品的隱空間表示。具體的做法是把兩個商品a和b的文本內容送進Bert,得到各自的embedding矩陣;然后對這兩個句子做交叉注意力,得到注意力矩陣,然后用注意力矩陣加權a的embedding得到重構后的b的embedding,反過來也從b重構a。得到重構后的embedding后再和原embedding計算距離作為loss,論文采用的是歐氏距離。只做相似商品重構還不夠,論文還引入了不相似商品(隨機采樣)作為負樣本,采用triplet loss來計算最終的重構損失。
NPR示意圖
效果
論文的實驗和結果比較部分做的比較全面。
先介紹一下對照實驗涉及的模型。baseline是裸BERT(BERT Raw),用電商數據finetune過的Bert外加SpanBERT作為對照組,finetune有兩種方法,分別是word masking的Bert和phrase masking的Bert-NP。實驗組是各種配置的E-Bert,包括只使用phrase masking的E-Bert-DP,使用AHM的E-Bert-AHM和AHM+NPR的E-Bert。
評估效果使用了4個電商場景場景的下游任務,Review-based Question Answering(基于評論的問答),Review Aspect Extraction(評論方面抽取?),Review Aspect Sentiment Classification(評論情感分類)和Product Classification(商品類別分類)。
不同模型在不同任務上的結果如下圖
模型結果比較
從結果可以看出E-BERT在各種任務上都大幅領先裸BERT,甚至也大幅領先基于領域語料預訓練過的BERT。文章的方法其實可以在任何的垂直領域中使用,可以說相當的實用。
最近一個討論比較多的問題是在BERT時代,NLP算法工程師的價值是什么?我想這個結果可以從一個側面給答案,知道如何在模型中引入行業先驗知識是可以大大提高模型在特定場景的表現的,即使如BERT這樣自身很強的超級模型也不例外。
[1]
E-BERT: Adapting BERT to E-commerce with Adaptive Hybrid Masking and Neighbor Product Reconstruction: https://arxiv.org/pdf/2009.02835
[2]
SpanBERT: Improving Pre-training by Representing and Predicting Spans: http://arxiv.org/abs/1907.10529
[3]
ERNIE: Enhanced Language Representation with Informative Entities: http://arxiv.org/abs/1905.07129
[4]
AutoPhrase: https://github.com/shangjingbo1226/AutoPhrase
責任編輯:xj
原文標題:E-BERT: 電商領域語言模型優化實踐
文章出處:【微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
-
語言模型
+關注
關注
0文章
521瀏覽量
10268 -
AHM
+關注
關注
0文章
2瀏覽量
7492 -
nlp
+關注
關注
1文章
488瀏覽量
22033
原文標題:E-BERT: 電商領域語言模型優化實踐
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論