NLP (Natural Language Processing)天然語言處理是人工智能的一個子領域,它是可以讓人類與智能機器進行溝通交流的重要技術手段,同時也是人工智能中最爲困難的問題之一。所以,NLP的研究到處充滿魅力和挑戰,也所以被稱爲人工智能「皇冠上的明珠」。git
目前各家主流深度學習框架,都開放了相應的 NLP 算法模型。其中,百度 PaddlePaddle 基於自身技術優點,在中文NLP領域提供豐富官方模型,全方位知足各類NLP任務需求。github
1 月 20 日下午 ,第二期百度深度學習開發者·技術公開課在百度大腦創新體驗中心開課。百度資深研發工程師爲現場的開發者們介紹了 PaddlePaddle 在 NLP 方向開源模型及技術實踐,Google 機器學習開發者專家和高級算法專家孔曉泉則講述了基於 PaddlePaddle 的中文分詞引擎應用案例。算法
中文分詞小試牛刀,100行代碼的分詞引擎實踐網絡
與大部分西方語言不一樣,書面漢語的詞語之間沒有明顯的空格標記,句子是以字符串的形式出現,所以對中文進行處理的第一步就是進行自動分詞,即將字符串轉變成詞語串,這也是處理中文的語義分析、文本分類、信息檢索、機器翻譯、機器問答等問題的基礎。若是分詞效果很差,頗有可能會對後續的任務形成嚴重的影響。框架
谷歌機器學習開發者專家和高級算法專家孔曉泉,爲你們分享了輕量級中文分詞引擎——PaddlePaddle Tokenizer。該引擎基於PaddlePaddle Fluid API打造,充分發揮PaddlePaddle代碼精簡、高效、可讀性高的特色,核心代碼只有不到100行,帶你們快速瞭解中文分詞模型的設計思路。機器學習
模型方法:工具
Embedding(字符嵌入) + BiLSTM(雙向LSTM) + CRF(隨機條件場)學習
系統設計:測試
經過將分詞信息編碼成 BMES (Begin, Middle, Eed, Single) 標籤,從而將分詞問題轉換成 BMES 標籤的序列預測問題。利用 Embeding + BiLSTM 提取字符的上下文特徵,利用 CRF 同時考慮字符級別和上下文序列的特性,從而預測全局最優 BEMS 序列。爲了抑制模型過擬合(Overfitting),在模型中使用了 Dropout 技術。ui
代碼實現:
在代碼實現層面,PaddleTokenizer 使用了 PaddlePaddle Fluid API,代碼精簡、高效、可讀性高,核心代碼少於100行。同時,PaddleTokenizer 經過提供 HTTP 接口的方式演示瞭如何使用 PaddlePaddle inferencemodel 對外提供服務。並提供了簡潔的 WebUI 做爲客戶端,方便用戶進行實際分詞效果的測試。
系統分析與演示:
核心代碼片斷:
分詞效果展現:
GitHub地址:https://github.com/howl-ander...
豐富全面的NLP模型合集——PaddlePaddle官方模型庫
PaddlePaddle Tokenizer向你們展現了PaddlePaddle的高效易用,在PaddlePaddle官方模型庫中,PaddlePaddle還提供了豐富的NLP模型,包含詞法分析、語義匹配,還有情感分析、黃反識別用到的分類模型等,爲開發者打造了功能全面的中文NLP工具庫。
在公開課有限的時間裏,百度工程師主要講解了如下三大模型:
中文詞法分析(LAC)
相比輕量級的PaddlePaddle Tokenizer,LAC的功能更加豐富,是一個聯合的詞法分析模型,總體性地完成中文分詞、詞性標註、專名識別任務。LAC基於一個堆疊的雙向GRU結構,最上層建CRF 來預測總體模型,這比傳統基於統計的模型在分詞的準確性上有明顯提高,也是PaddlePaddle 在中文 NLP 領域長期深耕的體現。
DAM
在天然語言處理不少場景中,須要度量兩個文本在語義上的類似度,這類任務一般被稱爲語義匹配。例如在搜索中根據查詢與候選文檔的類似度對搜索結果進行排序,文本去重中文本與文本類似度的計算,自動問答中候選答案與問題的匹配等。
DAM (Deep Attention Matching Network)爲百度天然語言處理部發表於ACL-2018的工做,用於檢索式聊天機器人多輪對話中應答的選擇。DAM受Transformer的啓發,其網絡結構徹底基於注意力(attention)機制,利用棧式的self-attention結構分別學習不一樣粒度下應答和語境的語義表示,而後利用cross-attention獲取應答與語境之間的相關性,在兩個大規模多輪對話數據集上的表現均好於其它模型。
MM-DNN
MM-DNN 模型的主要任務是計算 query 、檢索結果和推薦內容。計算query 與搜索結果的類似度在整個排序任務中是很是重要的權重。該模型的開源版本不管是在訓練效果仍是訓練速度上都有明顯優點。百度搜索業務中也涉及了這一算法模型。