1. 程式人生 > >深度學習使用word embedding(詞嵌入)的原因

深度學習使用word embedding(詞嵌入)的原因

1、基於神經網路的詞分佈表示,將單詞對映到低維連續向量

詞嵌入編碼了語義空間中的線性關係,向量不同部分表示不同的語義。比如“國王-往後”與“男-女”的類比反映中語義空間的線性關係。

2、相似詞對映到了相似方向,語義相似性被編碼

近義詞或者“相似”詞的鄰居詞分佈類似,同樣兩個詞鄰居詞分佈類似可以推出兩個詞語義相近。比如 “貓 寵物 主人 餵食 蹭 喵 ” 和 “狗 寵物 主人 餵食 咬 汪”這兩組詞可以推出 v(“貓”)≈v(“狗”)。

3、(優點的角度)

(1)對比one-hot高維稀疏向量,embedding維度低,連續向量,方便模型訓練;
(2)一個向量可以編碼一詞多義(歧義需要另外處理);
(3)天然有聚類後的效果;
(4)罕見詞也可以學到不錯的表示。

附錄:淺析word2vec

連續詞袋模型Continous Bag of Words Model(CBOW)和Skip-Gram Model。CBOW根據某個詞前面的C個詞或者前後C個連續的詞,來計算某個詞出現的概率。Skip-Gram Model相反,是根據某個詞,然後分別計算它前後出現某幾個詞的各個概率。以“我愛北京天安門”這句話為例。假設我們現在關注的詞是“愛”,C=2時它的上下文分別是“我”,“北京天安門”。CBOW模型就是把“我” “北京天安門” 的one hot表示方式作為輸入,也就是C個1xV的向量,分別跟同一個VxN的大小的係數矩陣W1相乘得到C個1xN的隱藏層hidden layer,然後C個取平均所以只算一個隱藏層。這個過程也被稱為線性啟用函式。然後再跟另一個NxV大小的係數矩陣W2相乘得到1xV的輸出層,這個輸出層每個元素代表的就是詞庫裡每個詞的事後概率。輸出層需要跟ground truth也就是“愛”的one hot形式做比較計算loss。這裡需要注意的就是V通常是一個很大的數比如幾百萬,計算起來相當費時間,除了“愛”那個位置的元素肯定要算在loss裡面,word2vec就用基於huffman編碼的Hierarchical softmax篩選掉了一部分不可能的詞,然後又用nagetive samping再去掉了一些負樣本的詞所以時間複雜度就從O(V)變成了O(logV)。Skip gram訓練過程類似,只不過輸入輸出剛好相反。

相關推薦

深度學習使用word embedding(嵌入)的原因

1、基於神經網路的詞分佈表示,將單詞對映到低維連續向量 詞嵌入編碼了語義空間中的線性關係,向量不同部分表示不同的語義。比如“國王-往後”與“男-女”的類比反映中語義空間的線性關係。 2、相似詞對映到了相似方向,語義相似性被編碼 近義詞或者“相似”詞的鄰居詞分佈類

97.5%準確率的深度學習中文分(字嵌入+Bi-LSTM+CRF)

摘要 深度學習當前在NLP領域發展也相當快,翻譯,問答,摘要等基本都被深度學習佔領了。 本文給出基於深度學習的中文分詞實現,藉助大規模語料,不需要構造額外手工特徵,在2014年人民日報語料上取得97.5%的準確率。模型基本是參考論文:http://www.aclw

深度學習embedding的含義

Embedding在數學上表示一個maping, f: X ->Y 也就是一個function,其中該函式是injective(就是我們所說的單射函式,每個Y只有唯一的X對應,反之亦然)和structure-preserving (結構儲存,比如在X所屬的空間上X1 < X2,那

深度學習Embedding層的個人理解

前一個月接觸到一個概念,Embedding層。直到今天,才理解其內在的作用,今天跟大家分享一下個人心得。 首先,我們有一個one-hot編碼的概念。 假設,我們中文,一共只有10個字。。。只是假設啊,那麼我們用0-9就可以表示完 比如,這十個字就是“我從哪裡來,

pytorch中embedding嵌入的作用

Embedding 詞嵌入在 pytorch 中非常簡單,只需要呼叫 torch.nn.Embedding(m, n) 就可以了,m 表示單詞的總數目,n 表示詞嵌入的維度,其實詞嵌入就相當於是一個大矩陣,矩陣的每一行表示一個單詞。 emdedding初始化 預設是隨機初始化的 im

深度學習Embedding層有什麼用?

這篇部落格翻譯自國外的深度學習系列文章的第四篇,想檢視其他文章請點選下面的連結,人工翻譯也是勞動,如果你覺得有用請打賞,轉載請打賞: 在深度學習實驗中經常會遇Eembedding層,然而網路上的介紹可謂是相當含糊。比如 Keras中文文件中對嵌入層

開源專案kcws程式碼分析--基於深度學習的分技術

分詞原理 本小節內容參考待字閨中的兩篇博文: 簡單的說,kcws的分詞原理就是: 對語料進行處理,使用word2vec對語料的字進行嵌入,每個字特徵為50維。 得到字嵌入後,用字嵌入特徵餵給雙向LSTM, 對輸出的隱層加一個線性層,然後加一個CRF就

[未完] 深度學習向量(Word Embedding)篇 :word2vec

歡迎參觀 一> 個人小站 一. 詞向量表示形式 在使用神經網路模型進行文字分類或者機器翻譯時,前提工作是要對整理好的文字資料進行詞向量化 (Word Embedding) ,既使用向量形式代表詞。 1.1 One-hot represen

無監督學習嵌入or向量(Word Embedding

  National Taiwan University (NTU)李巨集毅老師的《Machine Learning》的學習筆記,因此在全文對視訊出現的內容多次引用。初出茅廬,學藝不精,有不足之處還望大家不吝賜教。   歡迎大家在評論區多多留言互

[機器學習入門] 李巨集毅機器學習筆記-15 (Unsupervised Learning: Word Embedding;無監督學習嵌入

[機器學習入門] 李巨集毅機器學習筆記-15 (Unsupervised Learning: Word Embedding;無監督學習:詞嵌入) PDF VIDEO

吳恩達《深度學習》第五門課(2)自然語言處理與嵌入

星級 技術 ima lac 個數 應該 ras 時有 根據 2.1詞匯表征 (1)使用one-hot方法表示詞匯有兩個主要的缺點,以10000個詞為例,每個單詞需要用10000維來表示,而且只有一個數是零,其他維度都是1,造成表示非常冗余,存儲量大;第二每個單詞表示的向量相

嵌入 word embedding

原文連結:https://blog.csdn.net/ch1209498273/article/details/78323478  詞嵌入(word embedding)是一種詞的型別表示,具有相似意義的詞具有相似的表示,是將詞彙對映到實數向量的方法總稱。詞嵌入是自然語言處理的重要突破

斯坦福大學-自然語言處理與深度學習(CS224n) 筆記 第二課 向量(word vector)

課程概要 1、單詞含義 2、word2vec介紹 3、word2vec目標函式的梯度推導 4、目標函式優化:梯度下降法 一、單詞含義 含義(meaning)指的是由單詞表達的觀點。我們一般使用單詞含義的方法是,使用像WordNet那樣的分類詞典,給每個單詞對應的上下義關係以及同義

“什麼是Word Embedding嵌入)”的個人理解

首先貼上一下Wiki英文的定義: Word embedding is the collective name for a set of language modeling and feature learning techniques in natural language

吳恩達Coursera深度學習課程 deeplearning.ai (5-2) 自然語言處理與嵌入--程式設計作業(一):向量運算

Part 1: 詞向量運算 歡迎來到本週第一個作業。 由於詞嵌入的訓練計算量龐大切耗費時間長,絕大部分機器學習人員都會匯入一個預訓練的詞嵌入模型。 你將學到: 載入預訓練單詞向量,使用餘弦測量相似度 使用詞嵌入解決類別問題,比如 “Man is to

嵌入向量(Word Embedding)的原理和生成方法

Word Embedding 詞嵌入向量(WordEmbedding)是NLP裡面一個重要的概念,我們可以利用Word Embedding將一個單詞轉換成固定長度的向量表示,從而便於進行數學處理。本文將介紹Word Embedding的使用方式,並講解如何通過神經網路生成W

吳恩達Coursera深度學習課程 deeplearning.ai (5-2) 自然語言處理與嵌入--程式設計作業(二):Emojify表情包

Part 2: Emojify 歡迎來到本週的第二個作業,你將利用詞向量構建一個表情包。 你有沒有想過讓你的簡訊更具表現力? emojifier APP將幫助你做到這一點。 所以不是寫下”Congratulations on the promotion! L

淺談嵌入word embedding

今天在李巨集毅老師的公開課上學習了word embedding,中文就是詞嵌入的意思。故將學習內容整理一下,方便以後回顧。 1.       引入   計算機如何理解一句話,一篇文章的意思呢?計算機是用來做數值運算的,故需要將單詞或者片語轉換成數字,才能進行存入計算機進行計

13.深度學習(嵌入)與自然語言處理--HanLP實現

筆記轉載於GitHub專案:https://github.com/NLP-LOVE/Introduction-NLP 13. 深度學習與自然語言處理 13.1 傳統方法的侷限 前面已經講過了隱馬爾可夫模型、感知機、條件隨機場、樸素貝葉斯模型、支援向量機等傳統機器學習模型,同時,為了將這些機器學習模型應用於 N

深度學習的向量化表示

model ref res font 技術 訓練 lin 挖掘 body 如果要一句話概括詞向量的用處,就是提供了一種數學化的方法,把自然語言這種符號信息轉化為向量形式的數字信息。這樣就把自然語言理解的問題要轉化為機器學習的問題。 其中最常用的詞向量模型無非是 one-h