2017年7月4日,百度開源了一款主題模型項目,名曰:Familia。工具
InfoQ記者第一時間聯繫到百度Familia項目負責人姜迪並對他進行採訪,在本文中,他將爲咱們解析Familia項目的技術細節。測試
什麼是Familia設計
Familia 開源項目包含文檔主題推斷工具、語義匹配計算工具以及基於工業級語料訓練的三種主題模型:Latent Dirichlet Allocation(LDA)、SentenceLDA 和Topical Word Embedding(TWE)。圖片
Familia支持用戶以「拿來即用」的方式進行文本分類、文本聚類、個性化推薦等多種場景的調研和應用。考慮到主題模型訓練成本較高以及開源主題模型資源有限的現狀,咱們會陸續開放基於工業級語料訓練的多個垂直領域的主題模型,以及這些模型在工業界的典型應用方式,助力主題模型技術的科研和落地。ci
據姜迪介紹,Familia主題模型項目是百度研發的貝葉斯網技術的一個重要組成部分,已經支持了百度多個產品,包括搜索、資訊流、貼吧等等。資源
基於主題模型的文檔特徵表示能夠分爲兩類,如圖1所示:一類是通過主題模型降維,獲得文檔在主題上的多項分佈,LDA、SentenceLDA等模型支持這一類的文檔特徵表示;另外一類是聯合使用主題向量和文檔主題分佈,生成的文檔向量表示,TWE等融合了詞向量的主題模型能夠支持這一類的文檔特徵表示。文檔
分類產品
案例: 新聞質量分類it
對於新聞APP,其經過各類來源得到到的新聞,質量一般參差不齊。在表2中列出了一些低質新聞與優質新聞的標題的示例。io
爲了提高用戶體驗,一般會構建一個分類器來自動過濾低質量的新聞。能夠人工設計一些傳統特徵:新聞來源站點、新聞內容長度、圖片數量、新聞熱度等等。除了這些人工特徵,也可利用主題模型來計算每篇新聞的主題分佈,做爲附加特徵與人工特徵一塊兒組成新特徵集合(圖2(a))。
使用人工標註7000篇新聞,新聞質量總共劃分爲3個檔位,其中0檔表示質量最差,2檔表示質量最優。咱們採用Gradient Boost Decision Tree (GBDT),分別利用人工特徵和主題擴充後的特徵集合在5000篇新聞上進行訓練,並在另外2000篇標註新聞數據上作測試。圖2(b)展現了使用不一樣特徵上的實驗結果,在測試數據上的分類準確度。從這些實驗結果能夠看出,主題分佈做爲特徵擴充能夠有效提高分類器的效果。
聚類
案例: 新聞聚類
文檔的主題分佈可看作是包含語義信息的一個降維過程,這些低維特徵能夠用來對文檔進行聚類。表3中展現了基於主題分佈和K-Means進行聚類的部分結果。從表中能夠看出,基於新聞的主題分佈,能夠很好的完成聚類任務,在簇1中顯示的是與房子裝修相關的新聞,簇2中則是彙集了與股票相關的新聞。
案例: 新聞個性化推薦
長文本-長文本的語義匹配可用於個性化推薦的任務中。在互聯網應用中,當積累了用戶大量的行爲信息後,這些行爲信息對應的文本內容能夠組合成一篇抽象的「文檔」,對該「文檔」進行主題映射後得到的主題分佈能夠做爲用戶畫像。例如,在新聞個性化推薦中,能夠將用戶近期閱讀的新聞(或新聞標題)合併成一篇長「文檔」,並將該「文檔」 的主題分佈做爲表達用戶閱讀興趣的用戶畫像。如圖5所示,經過計算每篇實時新聞的主題分佈與用戶畫像之間的Hellinger Distance,可做爲向用戶推送新聞的選擇依據,達到新聞個性化推薦的效果。
摘自:http://www.infoq.com/cn/news/2017/07/Baidu-open-NLP-Toolkit