NLP中embeding幹了什麼事?怎麼幹的?

基本常識

在做深度學習時,各種神經網絡只能處理數字,不能處理文字,所以在輸入前只能將文字轉換成數字輸入網絡。那麼embedding乾的事情就是把文字轉換成向量,且轉換後的向量儘可能保留原文字的語意信息。

1.word2index

顧名思義就是簡單的把詞或字轉換成相應的索引。(這種方式及其不推薦)

2.onehot

將字獨熱編碼,這樣稍好於第一種方法,但是缺陷也很明顯,首先如果NLP任務重詞量較大那麼onehot維度將會非常大,其次onehot相當於任意個詞之間是獨立了(這不符合邏輯,‘不喜歡’和‘討厭’語意相近。onehot他們是完全不相關的)

3.embedding

首先隨機初始化初始(N,dim)的權重,N爲訓練任務的詞的總個數(不重複的),dim是一個詞embedding後的維度。在訓練nlp任務時(N,dim)的權一起訓練。
也可以使用預訓練的方法來訓練embedding。在進行NLP任務之前,先利用CBOW的方法預訓練embedding,然後在把embedding的權重應用到自自己的NLP任務。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章