一、ERNIE安裝配置類問題
Q1:最適合ERNIE2.0的PaddlePaddle版本是?
A1:PaddlePaddle版本建議升級到1.5.0及以上版本。
Q2:ERNIE可以在哪些系統上使用?
A2:優化后各個系統都會支持,目前建議在Linux系統使用。
二、ERNIE使用類問題
Q1:ERNIE目前能做哪些任務?
A1:(1)基於ERNIE模型Fine-tune后,直接能做的任務如下:
- 詞性標注任務,請參考:https://aistudio.baidu.com/aistudio/projectDetail/109660
- 閱讀理解任務,請參考:https://github.com/PaddlePaddle/ERNIE/blob/develop/README.zh.md
- 分類任務,請參考:https://github.com/PaddlePaddle/ERNIE/blob/develop/README.zh.md
- 多標簽分類,請參考:https://github.com/PaddlePaddle/PaddleHub/tree/release/v1.1.0/demo/multi-label-classification
- 排序任務;
(2)需要用戶在ERNIE的基礎上做開發后能做的任務如下:
- 文本生成任務,目前需要用戶在ERNIE的基礎上開發生成任務的Fine-tune代碼。同時我們也在研發專門適配生成的通用預訓練模型,預期效果更好,后續進展請多多關注。
- 實體關系抽取任務,目前需要用戶在ERNIE的基礎上開發信息抽取任務的Fine-tune代碼。
Q2:ERNIE實現檢索功能了嗎?
A2:實現了,使用cls embedding或者頂層所有詞的表示做pooling當做sentence encoder的輸出。
Q3:ERNIE能做信息流推薦嗎?
A3:可以,具體來講,可以基於ERNIE 抽取Document和User 的向量作為對文章和用戶的語義建模,然后對Document 的語義特征離線建立索引庫,在線端根據用戶的語義表達去索引庫中召回語義相關性較高的文章。
Q4:ERNIE能用於長文本嗎?
A4:可以,當前可以考慮將長句拆分,分別輸入ERNIE后再拼接的方式使用ERNIE。不過我們也在研發專門適配長文本的通用預訓練模型,后續進展請多多關注。
Q5:ERNIE可以用C++或者Java調用嗎?
A5:ERNIE預測時,通過C++調用的接口正在優化中。Java暫不支持。
Q6:ERNIE有沒有在自己的corpus上進行預訓練的教程?
A6:2.0的中文預訓練代碼暫時沒有開源,可以參考1.0教程。教程鏈接:
https://github.com/PaddlePaddle/ERNIE/blob/develop/README.zh.md#%E9%A2%84%E8%AE%AD%E7%BB%83-ernie-10。
Q7:ERNIE2.0的中文預訓練模型發布了嗎?
A7:為了讓大家更方便、快捷、高效的使用ERNIE,我們正在做易用性更強的ERNIE平台化服務工作,屆時會與ERNIE2.0模型同步開放給大家,歡迎大家使用。
Q8:ERNIE支持Python3嗎?
A8:支持。
Q9:ERNIE都支持哪些語言嗎?
A9:目前支持中文簡體、英文。
三、ERNIE工具類問題
Q1:ERNIE能做在線服務嗎?性能怎么樣?
A1:可以。在線服務的性能問題可以通過模型蒸餾的方案解決,我們ERNIE Tiny 模型也在研發中,可以大幅度提升在線預測性能,ERNIE Tiny模型后續會逐步開源,可以多多關注。
在輕量級、模型壓縮方面ERNIE將會推出ERNIE Slim技術和ERNIE Tiny模型。其中
ERNIE Slim基於數據蒸餾技術,以大規模無監督語料為橋梁,輔以數據增強和混合策略,利用百倍提速的輕量級DNN模型去蒸餾ERNIE模型,從而達到顯著加速的效果,達到工業級上線要求;
ERNIE Tiny基於模型蒸餾技術,在預訓練階段利用淺層ERNIE模型去蒸餾深層ERNIE模型的輸出分布,同時引入subword粒度來減少輸入句子長度。預計發布的3層ERNIE Tiny模型相對於ERNIE模型在效果有限下降情況下,速度提升4.2倍左右。
Q2:ERNIE有提供類似Bert-as-Service的服務嗎?
A2:有。近期(預計11月初)將開源。
四、ERNIE資料類問題
Q1:ERNIE有詳細的使用教程么?
A1:有,請參考:https://github.com/PaddlePaddle/ERNIE/blob/develop/README.zh.md
Q2:ERNIE的論文下載地址?
A2:https://arxiv.org/abs/1907.12412
Q3:ERNIE的GitHub項目地址?
A3:https://github.com/PaddlePaddle/ERNIE
五、其它問題
Q1:BERT與ERNIE誰更強?
A1:從效果來看,ERNIE的效果領先於BERT。BERT、XLNet等主流方法都強調通過強力的Transformer 直接構建語言模型,而ERNIE 2.0 通過多任務預訓練的方法加強模型學到的語言知識。
ERNIE 2.0 通過增量學習的方式更新,也就是說可以通過自定義的NLP 任務微調已訓練模型,加強預訓練效果。
ERNIE2.0 模型在英語任務上很多都優於BERT 和XLNet,在7 個GLUE 任務上取得了最好的結果;中文任務上,ERNIE 2.0 模型在所有9 個中文NLP任務上全面優於BERT。
Q2:ERNIE效果領先BERT是否得益於更多數據?
A2:否。我們對比了不同模型公布的數據量,BERT: 3.3B (tokens), ERNIE:7.9 B (tokens),
XLNet: 32.8B (tokens),目前版本的數據規模是XLNet的1/4,同時ERNIE 沒有使用人工直接標注的數據,所有數據可以通過無監督或者弱監督的方式大量得到。
Q3:ERNIE可以理解為是知識圖譜+BERT嗎?
A3:不是,ERNIE沒有利用圖譜信息,而是直接從文本中學習知識。
Q4:ERNIE的多任務持續學習是怎么實現的?
A4:ERNIE2.0 的預訓練任務是一個逐步增加的過程,先訓練Task1, 然后逐步增加到多個TaskN,多個Task 的訓練是按照一定的概率分布對Task 進行采樣,比如: 第一個batch 訓練Task1,第2個batch 訓練Task2 。訓練過程中是通過多機多卡訓練,有些卡去訓練任務1,有些卡訓練任務2。由於目前預訓練代碼還未開源,用戶暫時無法添加新任務做預訓練。
-------------------
划重點!!!
掃碼關注百度NLP官方公眾號,獲取百度NLP技術的第一手資訊!
加入ERNIE官方技術交流群(760439550),百度工程師實時為您答疑解惑!
立即前往GitHub( github.com/PaddlePaddle/ERNIE )為ERNIE點亮Star,馬上學習和使用起來吧!
最強預告!
11月23日,艾尼(ERNIE)的巡回沙龍將在上海加場,干貨滿滿的現場,行業A級的導師,還有一群志同道合的小伙伴,還在等什么?感興趣的開發者們趕緊掃描下方“二維碼”或點擊“鏈接”報名參加吧!
報名鏈接:https://iwenjuan.baidu.com/?code=vc78lp