日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

深度学习之循环神经网络(12)预训练的词向量

發(fā)布時間:2023/12/15 循环神经网络 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深度学习之循环神经网络(12)预训练的词向量 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

深度學(xué)習(xí)之循環(huán)神經(jīng)網(wǎng)絡(luò)(12)預(yù)訓(xùn)練的詞向量


?在情感分類任務(wù)時,Embedding層是從零開始訓(xùn)練的。實(shí)際上,對于文本處理任務(wù)來說,領(lǐng)域知識大部分是共享的,因此我們能夠利用在其它任務(wù)上訓(xùn)練好的詞向量來初始化Embedding層,完成領(lǐng)域知識遷移。基于預(yù)訓(xùn)練的Embedding層開始訓(xùn)練,少量樣本時也能取得不錯的效果。

?我們以預(yù)訓(xùn)練的GloVe詞向量為例,演示如何利用預(yù)訓(xùn)練的詞向量模型提升任務(wù)性能。首先從官網(wǎng)上下載預(yù)訓(xùn)練的GloVe詞向量表,我們選擇特征長度100的文件glove.6B.100d.txt,其中每個詞匯使用長度為100的向量表示,下載后解壓即可。

GloVe詞向量模型文件


利用Python文件IO代碼讀取單詞的編碼向量表,并存儲到Numpy數(shù)組中。代碼如下:

import os import numpy as npprint('Indexing word vectors.') embeddings_index = {} # 提取單詞及其向量,保存在字典中 # 詞向量模型文件存儲路徑 GLOVE_DIR = r'/Users/XXX/Documents/深度學(xué)習(xí)/glove' with open(os.path.join(GLOVE_DIR, 'glove.6B.100d.txt')) as f:for line in f:values = line.split()word = values[0]coefs = np.asarray(values[1:], dtype='float32')embeddings_index[word] = coefsprint('Found %s word vectors.' % len(embeddings_index))


運(yùn)行結(jié)果如下所示:

Indexing word vectors. Found 400000 word vectors.


?GloVe.6B版本共存儲了40萬個詞匯的向量表。前面實(shí)戰(zhàn)中我們只考慮最多1萬個常見的詞匯,我們根據(jù)詞匯的數(shù)字編碼表一次從GloVe模型中獲取其詞向量,并寫入對應(yīng)位置。代碼如下:

num_words = min(MAX_NUM_WORDS, len(word_index)) + 1 embedding_matrix = np.zeros((num_words, EMBEDDING_DIM)) # 詞向量表for word, i in word_index.items():if i > MAX_NUM_WORDS:continue # 過濾掉其他詞匯embedding_vector = embeddings_index.get(word) # 從GloVe查詢詞向量if embedding_vector is not None:# words not found in embedding index will be all-zeros.embedding_matrix[i] = embedding_vector print(embedding_matrix.shape)


運(yùn)行結(jié)果如下所示:

Found 0 unique tokens. (1, 100)


?在獲得了詞匯表數(shù)據(jù)后,利用詞匯表初始化Embedding層即可,并設(shè)置Embedding層不參與梯度優(yōu)化。其它部分均保持一致。我們可以簡單地比較通過預(yù)訓(xùn)練的GloVe模型初始化的Embedding層的訓(xùn)練結(jié)果和隨機(jī)初始化的Embedding層的訓(xùn)練結(jié)果,在訓(xùn)練完50個Epochs后,預(yù)訓(xùn)練模型的準(zhǔn)確率達(dá)到了84.7%,提升了約2%

總結(jié)

以上是生活随笔為你收集整理的深度学习之循环神经网络(12)预训练的词向量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。