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...