Word2Vec提取關鍵詞,詞語相似度

2021-08-04 17:59:48 字數 2249 閱讀 7026

import sys

try:

reload(sys)

sys.setdefaultencoding('utf-8')

except:

pass

import codecs

from textrank4zh import textrank4keyword, textrank4sentence

from gensim import models as gmodel

import pandas as pd

model = gmodel.word2vec.load("./word2vec/word2vec_wx")

defgetkeywords

(text,num):

tr4w = textrank4keyword()

tr4w.analyze(text=text, lower=true, window=2) # py2中text必須是utf8編碼的str或者unicode物件,py3中必須是utf8編碼的bytes或者str物件

return tr4w.get_keywords(num, word_min_len=1)

defgetkeyphrases

(text,num):

tr4w = textrank4keyword()

tr4w.analyze(text=text, lower=true, window=2) # py2中text必須是utf8編碼的str或者unicode物件,py3中必須是utf8編碼的bytes或者str物件

return tr4w.get_keyphrases(keywords_num=num, min_occur_num= 2)

#textrank演算法查詢text文字中num個關鍵句子

defgetkeysentences

(text,num):

sentence = textrank4sentence()

sentence.analyze(text=text,lower=true)

s_list = sentence.get_key_sentences(num=num,sentence_min_len=5)

return s_list

#word2vec計算兩個詞的相似度

defcomputewordsimilar

(word1,word2):

sim = model.similarity(word1, word2)

return sim

#word2vec計算兩個詞列表的相似度

defcomputewordlistsimilar

(list1, list2):

list_sim = model.n_similarity(list1, list2)

return list_sim

##word2vec查詢最相近的詞

deffindmostsimilarword

(word):

result = model.most_similar(word)

return result

if __name__ == '__main__':

text1 = codecs.open('01.txt', 'r', 'utf-8').read()

text2 = codecs.open('02.txt', 'r', 'utf-8').read()

a=getkeywords(text1,10)

''''''

listb=

lista=

for item in a:

print(item.word, item.weight)

b=getkeywords(text2,10)

for item in b:

print(item.word, item.weight)

#computewordlistsimilar()

c=getkeyphrases(text1,20)

d=getkeyphrases(text2,20)

print('關鍵短語:' )

for phrase in c,d:

print(phrase)

# 匯入模型

e=findmostsimilarword([u'海賊王'])

print(pd.series(e))

f=computewordsimilar(u'活動',u'掌握')

print(f)

word2vec 高效word特徵提取

幾部分,暫時沒有加實驗章節,但其實感覺word2vec一文中實驗還是做了很多任務作的,希望大家有空最好還是看一下 要解決的問題 在神經網路中學習將word對映成連續 高維 向量,其實就是個詞語特徵求取。特點 1.不同於之前的計算cooccurrence次數方法,減少計算量 2.高效 3.可以輕鬆將乙...

與word2vec 原來word2vec那麼簡單

說到word2vec,它可謂非結構化資料裡面的佼佼者,尤其是在推薦和nlp當中,足以體現它的優勢所在,並且多年一直備受工業界喜愛.那麼word2vec到底是怎麼個原理的,發現身邊總是有很多人問,確不能準確的說出為什麼是兩個矩陣,到底是怎麼自動反向傳播的,以及對於softmax之後那麼大的維度資料,是...

關鍵詞提取

隱含主題模型優缺點 隱含主題模型可以很好地表示文件和標籤主題,有效降低標籤系統中噪音的影響。但是另外乙個方面,隱含主題相對於詞而言粒度較粗,對於具體實體 如人名 地名 機構名和產品名 的標籤沒有辦法做到很好地區分,因此對這些細粒度標籤推薦效果較差 典型的聚類演算法 層次聚類 hierarchical...