nlp語義理解

chen_you_Nick發表於2018-10-02

給你一篇文章或者一個句子,人們在理解這些句子時,頭腦中會進行上下文的搜尋和知識聯想。通常情況下,人在理解語義時頭腦中會搜尋與之相關的知識。知識圖譜的創始人人為,構成這個世界的是實體,而不是字串,這從根本上改變了過去搜尋的體系。語義理解其實是基於知識,概念和這些概念間的關係。人們在解答問題時,往往會講述與這個問題相關的知識,這是語義理解的過程。這種機制完全不同於人對影象或者語音的認識。CNN在影象或者語音領域取得成果是不足為奇的,因為生物學家已經對人腦神經元在影象識別過程中的機制非常熟悉,但是對於人腦如何理解文字的神經元機制卻知之甚少,所以導致了目前nlp語義理解方面進展非常緩慢。很多人嘗試CNN引入nlp效果不佳,發現多層的CNN和單層的CNN幾乎沒有差別,原因得從人腦的神經元機制說起。生搬硬套是必然失敗的!深度學習的本質並不是神經元層數多這麼簡單,能夠從最基本的特徵,逐層抽取出高階特徵,最後進行分類,這是深度學習取得成功的關鍵。
 有一部分人質疑word2vector不是深度學習,說層數太淺達不到深度的級別,這是一種誤解。word2vector是地地道道的深度學習,能夠抽取出詞的高階特徵。他的成功,關鍵是基於他的核心思想:相同語境出現的詞語義相近。從第一層one-hot到embedding層,就是高階特徵抽取的過程。前面說過,層數多了不一定帶來效果的提升。詞embedding已經是高階特徵了,文字比影象要複雜很多,目前CNN在nlp中的引入,方向可能是錯誤的。必須深入研究人腦對文字理解的神經元機制,弄清楚生物學模型,然後才能從中抽象出數學模型,就像CNN一樣,否則nlp不會有長足的進展。目前來看,LSTM以及Attention Model是比較成功的,但是仍然基於形式化的,對於深層語義仍然沒有解決。
 目前來看,深度學習演算法LSTM,Attention Model等在nlp中的應用,僅限於上下文和詞,句子向量。計算一下句子相似度,聚類之類的,要想真正讓機器理解文字,還達不到。也就是說只在語義表示層做文章是遠遠不夠的,底層的知識圖譜是關鍵。Google提出的知識圖譜是一種變革,nlp是一個完整的生態圈,從最底層的儲存,GDB三元組(entry,relation,entry),到上層的語義表示(這個階段可以藉助深度學習直接在語義層進行訓練),比如(head,relation,tail)三元組表示的圖結構,表達了實體與實體間的關係,可以用深度學習訓練出一個模型:h + r = t,獲取語義表示。這樣在預測時,得到了兩個實體的語義表示,進行減法運算就可以知道兩者的關係。這個不同於word2vector,但是還是有共性的。word2vector的CBOW就是訓練x1 + x2 + …… = y這個模型。目前知網也在做這些事情。

轉自:https://www.cnblogs.com/txq157/p/7535837.html

相關文章