文字是人們在互聯網上進行聯系的一種主要方式。為了改善用戶體驗,了解用戶對產品的想法,或檢測出垃圾信息等不必要的內容,很多公司在研究對文字內容的自動化理解和分析方法。Facebook開發的DeepText就是這樣一種基于深度學習技術的文字理解引擎,可以非常精確地理解文字的上下文情境,目前可支持超過20種語言。
DeepText中包含多種深度神經網絡體系結構,可實現文字級別和字符級別的學習。在模型的訓練方面,該技術使用了FbLearner Flow和Torch,訓練好的模型可通過FBLearner Predictor平臺運行,這是一種可擴展,高可靠的分布式基礎結構。
為何使用深度學習技術
文字的理解設計多種任務,首先需要通過常規分類確定每段文字的主題(例如是在談論一場足球賽),隨后需要識別出文字所涉及的實體(例如球員姓名、比賽結果等信息)。但為了實現更近似于人類的理解程度,還需要讓計算機懂得不同的俚語、語境,以及多義詞,例如,假設有人說“我喜歡黑莓”,他指的到底是“黑莓”這種水果還是“黑莓”手機?
對于Facebook這種規模的公司,文字的理解還需要考慮到對于擴展性和多語言的支持。借助深度學習技術可以更好地了解不同語言的文字,并能更高效地使用標簽化的數據。
更快速理解多種語言
作為一家全球化公司,Facebook需要能夠理解盡可能多的語言。更麻煩的是,很多語言存在不同的變體,例如各種俚語或者雙關語,甚至同一個詞匯在表達不同含義時會使用不同的拼寫方法。
借助深度學習技術,這套系統可以在只需要很少預處理,甚至完全無需預處理,就能在不具備有關特定語言相關知識的情況下理解文字的含義。這樣即可在將開發工作量降至最低的同時更快速地理解各種語言。
深度學習促進更深入的理解
傳統的自然語言處理技術需要將文字轉換為計算機算法可以學習的格式。舉例來說,“兄弟”這個詞可能會被分配一個整數ID,例如4598,而“老兄”這個詞可能會分配另一個整數,例如986665。這種方法使得系統只能將拼寫方式完全一致的詞語當作同一個含義來理解。
通過使用深度學習技術,可以借助“文字嵌入”這種數學概念保留不同詞語之間的語義關系。經過恰當的計算,就可以讓計算機知道“兄弟”和“老兄”在語義上是相近的,借此可以更深入地了解不同詞語的語義。
借助這種文字嵌入技術,還可以更好地理解多種語言中不同呈現方式所表達的相同含義。例如在英語和西班牙語中,“happy birthday”和“feliz cumplea os”就包含了非常相近的含義,通過將不同的單詞和短語映射到同一個通用的嵌入式語義空間,DeepText將能建立與語言無關的模型。
DeepText的實踐運用
DeepText已經用在了Facebook的一些服務中,例如在Messenger中,Facebook的AML對話理解團隊會通過DeepText更好地理解某人在什么時候可能想去什么地方。隨后即可將這些信息用于決策工作,例如當有人說“我剛下出租車”,可以知道此人并不需要搭乘出租車,而如果有人說“我要出發了”,可能意味著此人也許需要打車。
Facebook還在嘗試通過高精確度的多語言DeepText模型幫助用戶找到滿足特定目的所需的恰當工具。舉例來說,有人發布了這樣一條信息:“我想把我的舊自行車以200塊錢賣掉,有人感興趣嗎?”隨后DeepText可以檢測到這個用戶希望賣掉某樣東西,并從發布的內容中提取有價值的信息,例如具體要賣什么東西,價格多少,隨后就可以建議此人使用Facebook提供的不同服務順利完成交易。
通過更好地理解用戶發布的信息,從中提取用戶意圖、情緒和實體(例如人員、地點、活動),DeepText還可以進一步改善Facebook的用戶體驗。現在有很多名人和公眾人物會使用Facebook與大家進行交流,這些交流通常可能獲得數百條,甚至上千條評論。在多種語言發布的內容中找出最相關的評論,同時確保評論始終維持較高質量,這一點實現起來非常難。此時就可以借助DeepText找出相關性或質量最高的評論。
更好地理解用戶興趣
為了向用戶提供個性化體驗,Facebook會推薦與用戶興趣有關的內容。為此必須首先能夠將特定文字與特定話題關聯在一起,這一過程需要處理海量標簽化的數據。
這類標簽化的數據集很難手工生成,而Facebook目前正在測試通過半人工方式的標簽技術針對公共頁面生成所需數據。這些公共頁面上發布的內容通常都是針對特定話題的,例如“匹茲堡鋼人”的公共頁面上通常會發布有關橄欖球隊的信息。通過這些內容,Facebook訓練了一個名為PageSpace的通用興趣分類程序,該程序就用到了DeepText技術。
對文字和可視內容的聯合理解
有時人們會在發布照片或視頻的同時通過相關文字描述自己所發布的內容。很多情況下,若要理解用戶意圖,必須同時理解這些文字和可視內容。例如,某個用戶可能發布一張新生兒照片并使用“第25天”作為文字描述。通過照片和文字的結合,很容易可以知道該用戶的意圖是分享自己家里的最新近況。Facebook內部不同團隊正在合作構建新的深度學習體系結構,以便可以將文字和其他可視內容結合在一起理解。