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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【NLP】基于GloVe词向量的迁移学习

發(fā)布時間:2025/3/12 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【NLP】基于GloVe词向量的迁移学习 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

??作者 | Kourosh Alizadeh

編譯 | VK
來源 | Towards Data Science

在過去,我在為我的一個項目訓練詞向量,但我一直在碰壁。我在研究哲學史上的文本,試圖找到可以揭示作者如何使用一個詞的向量。但我一直得到這樣的結(jié)果:

如果你斜視得很厲害,也許這是有道理的。畢竟,愛確實與完美有關(guān),對吧?

但是相似性分數(shù)很小,我們不想為了讓結(jié)果有意義而瞇著眼睛看。

為了解決這個問題,我試著調(diào)整超參數(shù),但結(jié)果甚至比這更差。

但后來我靈機一動。我將使用GloVe預訓練好的詞向量作為基線,而不是單獨在我的數(shù)據(jù)集上訓練數(shù)據(jù)。這意味著基本上我的機器已經(jīng)知道基本的英語了,然后只需要微調(diào)以更準確地匹配我的數(shù)據(jù)。

這個過程比我預期的要困難一些,而且我找不到任何完整的教程,所以我想我應(yīng)該寫一個。這個過程基本上有三個步驟,我將按順序介紹它們。如果你只想得到一個結(jié)果,可以跳到最后查看筆記本。

本教程需要Gensim Word2Vec庫。

步驟1:加載向量

要訓練GloVe嵌入,你需要將嵌入加載到你的系統(tǒng)中。你可以在這里下載:https://nlp.stanford.edu/projects/glove/

一旦你有了一個文件,你可以用下面的代碼來加載它。

glove_file?=?datapath('YOUR_DATAPATH_HERE') tmp_file?=?get_tmpfile("test_word2vec.txt")_?=?glove2word2vec(glove_file,?tmp_file)glove_vectors?=?KeyedVectors.load_word2vec_format(tmp_file)

這實際上是從GloVe網(wǎng)站獲取的.txt文件,并以Gensim Word2Vec庫的適當格式加載它。此時,你可以執(zhí)行通常的相似性搜索來測試是否所有內(nèi)容都正確加載。

正如你所看到的,GloVe嵌入比我們之前得到的更有意義。

步驟2:建立一個玩具模型來更新

在這一步中,你基本上不需要使用GloVe就可以從數(shù)據(jù)構(gòu)建Word2Vec模型。此模型使你能夠捕獲新詞,并構(gòu)建包含特定數(shù)據(jù)集的詞匯表,如果你處理的文本不僅僅是普通英語,這將非常有用。

#?為了讓它工作,輸入將是一個標識的列表 #?因為我的數(shù)據(jù)是在一個數(shù)據(jù)幀中,我選擇了適當?shù)膕eries documents?=?df[df['school']?==?'rationalism']['sent_tokenized']#?然后列進列表 sentences?=?[sentence?for?sentence?in?documents]#?清理句子 stopwords?=?[YOUR_STOPWORDS_HERE] cleaned_sentences?=?[] for?sentence?in?sentences:cleaned?=?[word.lower()?for?word?in?sentence]cleaned?=?[word?for?word?in?cleaned?if?word?not?in?stopwords]cleaned_sentences.append(cleaned)#?在你的數(shù)據(jù)集中建立一個word2vec模型 base_model?=?Word2Vec(size=300,?min_count=5) base_model.build_vocab(cleaned_sentences) total_examples?=?base_model.corpus_count

很好,現(xiàn)在你有了一個蹩腳的模型可以作為基礎(chǔ)。

步驟3:再訓練

在這里,你將獲取現(xiàn)有模型,添加GloVe詞匯表和起始權(quán)重,并在數(shù)據(jù)集上重新訓練它。

#?添加GloVe的詞匯和權(quán)重 base_model.build_vocab([list(glove_vectors.vocab.keys())],?update=True)#?訓練你的數(shù)據(jù) base_model.train(cleaned_sentences,?total_examples=total_examples,?epochs=base_model.epochs) base_model_wv?=?base_model.wv

結(jié)果將是一組新的單詞向量,它們使用GloVe的原始權(quán)重,但現(xiàn)在也在你自己的數(shù)據(jù)上調(diào)整了。下面是一個結(jié)果示例:

你可能不太了解理性主義哲學,但相信我,這是非常有道理的。他們的主要焦點之一是上帝,我們可以看到,在討論上帝的愛時,幾乎所有這些都是有意義的——上帝愛我們是因為他是好人,他的恩典是愛的表現(xiàn),他給我們自由是因為他愛我們,等等。

另一個更好的測試方法是,在你的特定數(shù)據(jù)集中運行。most_similar來檢驗?zāi)愕男孪蛄亢驮瓉淼腉loVe向量。下面是我得到的結(jié)果的一個例子:

你可以看到,在哲學語料庫中,“哲學”與科學和形而上學相聯(lián)系,而在基本語料庫中,沒有這種聯(lián)系。

這很有道理。形而上學在英語口語中(與占星術(shù)和超自然有關(guān))和哲學(是一個主要的分支領(lǐng)域)有著截然不同的含義。

所以當哲學家談?wù)撜軐W時,形而上學總是在討論中,但是當普通人談?wù)撜軐W時,他們幾乎不會把它與形而上學聯(lián)系起來。哲學家也認為自己是科學的,或者在與自然科學的對話中,一般公眾通常看不到哲學和科學之間的緊密聯(lián)系。

額外步驟:將所有內(nèi)容整合在一起

好,太好了!現(xiàn)在,你有了一個漂亮的詞嵌入,可以用它來生成對語料庫的見解,也可以用在深度學習或其他應(yīng)用程序中。

剩下的就是在一個單一的函數(shù)中把所有的函數(shù)集合起來:

def?train_glove(source,?glove_vectors,?threshold=10,?stopwords=[],min_count=20):#?隔離數(shù)據(jù)幀的相關(guān)部分documents?=?df[df['source']?==?source]['sent_tokenized']#?格式化要使用的系列sentences?=?[sentence?for?sentence?in?documents]#?如果需要,刪除停止詞stopwords?=?[]cleaned?=?[]for?sentence?in?sentences:cleaned_sentence?=?[word.lower()?for?word?in?sentence]cleaned_sentence?=?[word?for?word?in?sentence?if?word?not?in?stopwords]cleaned.append(cleaned_sentence)#?這些后續(xù)步驟不在我們最初的描述中,因為它們對任務(wù)來說不是必要的#?如果這些短語足夠常見的話,它們可以讓你得bigrams,甚至是trigrams#?獲取bigramsbigram?=?Phrases(cleaned,?min_count=min_count,?threshold=threshold,?delimiter=b'?')bigram_phraser?=?Phraser(bigram)bigramed_tokens?=?[]for?sent?in?cleaned:tokens?=?bigram_phraser[sent]bigramed_tokens.append(tokens)#?獲取trigramstrigram?=?Phrases(bigramed_tokens,?min_count=min_count,?threshold=threshold,?delimiter=b'?')trigram_phraser?=?Phraser(trigram)trigramed_tokens?=?[]for?sent?in?bigramed_tokens:tokens?=?trigram_phraser[sent]trigramed_tokens.append(tokens)#?創(chuàng)建一個玩具模型來更新model?=?Word2Vec(size=300,?min_count=5)model.build_vocab(trigramed_tokens)total_examples?=?model.corpus_count#?添加GloVe的詞匯和權(quán)重model.build_vocab([list(glove_vectors.vocab.keys())],?update=True)#?訓練我們的數(shù)據(jù)model.train(trigramed_tokens,?total_examples=total_examples,?epochs=model.epochs)model_wv?=?model.wv#?刪除模型以節(jié)省內(nèi)存,并返回詞向量進行分析del?modelreturn?model_wv

如果你想看到實際的結(jié)果,你可以查看Philosophy數(shù)據(jù)項目的單詞使用分析頁面:http://philosophydata.com/w2v.html。

代碼地址:https://github.com/kcalizadeh/phil_nlp

感謝閱讀!

往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統(tǒng)計學習方法》的代碼復現(xiàn)專輯 AI基礎(chǔ)下載機器學習的數(shù)學基礎(chǔ)專輯黃海廣老師《機器學習課程》課件合集 本站qq群851320808,加入微信群請掃碼:

總結(jié)

以上是生活随笔為你收集整理的【NLP】基于GloVe词向量的迁移学习的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 无码国产色欲xxxx视频 | 明里柚番号| 中国老头性行为xxxx | 国产福利av| 狼人综合av| 国产电影免费观看高清完整版视频 | 日韩中文一区二区 | 欧美在线观看一区二区三区 | 影院一区 | 一区二区手机在线 | 911成人网 | 51精品 | 爱操综合| 亚洲尤物视频 | 99精品偷自拍 | 男人天堂网在线 | 丰满护士巨好爽好大乳 | 久久视频精品在线 | 欧美三级午夜理伦 | 激情开心成人网 | 青青国产在线观看 | 打开免费观看视频在线播放 | 成年免费视频黄网站在线观看 | 国产日韩网站 | 欧美性色黄| 黄色在线免费观看网站 | 可以免费看av | 亚洲一二三av | 成人免费毛片日本片视频 | 日本中文字幕在线观看 | 成人亚洲综合 | 国产特黄级aaaaa片免 | 日本三级中国三级99人妇网站 | 日韩电影一区二区三区四区 | 欧美特级特黄aaaaaa在线看 | 午夜老司机免费视频 | 日韩av电影网站 | 欧美黄色一级片视频 | 狠狠操欧美 | 国产又粗又大又爽视频 | 精品久久国产视频 | 性无码专区无码 | 91丨九色丨黑人外教 | 日韩中文字幕有码 | 亚州av网站 | 69精品久久久 | 久久依人网| av在线免费网站 | 欧美日韩资源 | 777av| 免费观看黄色的网站 | 欧美 另类 交 | 久久66热这里只有精品 | 极品色影视| 玖玖免费 | 国产乱码久久久 | 日韩少妇内射免费播放18禁裸乳 | 国产一级二级三级在线 | 国产日韩欧美二区 | a级片在线观看视频 | 日韩亚洲欧美中文字幕 | 国产福利在线视频 | 国产精品第一区 | 美女狠狠干 | 亚洲成人一级片 | 中文字幕一区二区三区手机版 | 91丨porny丨首页| 大陆明星乱淫(高h)小说 | 日本一级视频 | 青青草自拍视频 | 久久久噜噜噜www成人网 | 日韩麻豆视频 | 二区不卡| 99久久人妻无码中文字幕系列 | 天天躁日日躁狠狠躁欧美 | 18禁男女爽爽爽午夜网站免费 | 久热网| 日本免费小视频 | 99热这里有| 波多野结衣乳巨码无在线观看 | 香蕉久久夜色精品国产使用方法 | 99精品国产一区二区 | h视频免费在线 | 日韩一区二区三区三四区视频在线观看 | 日韩免费二区 | 精品乱码一区二区三四区视频 | 中文字幕乱码亚洲精品一区 | 精品人妻一区二区三区久久夜夜嗨 | 日本高清在线观看 | 久草福利资源在线 | 成为性瘾网黄的yy对象后 | 欧美一级二级在线观看 | 国产aaaaaaa | 91口爆一区二区三区在线 | 日韩美女中文字幕 | 日韩视频 中文字幕 | a极黄色片 | 好紧好爽再浪一点视频 | 国产青草视频 |