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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

情感分析--word2vec

發布時間:2024/9/30 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 情感分析--word2vec 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
分詞–list of list格式

(df2的來源請看上一篇博客https://blog.csdn.net/dongzixian/article/details/103474094)

import jieba df2['cut'] = df2[0].apply(jieba.lcut) df2.head()

from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_test = train_test_split(df2['cut'],df2['class'],test_size=0.3) x_train

from gensim.models.word2vec import Word2Vec model = Word2Vec(size=400,min_count=5) model.build_vocab(x_train) model.build_vocab(x_train)

model.wv.most_similar("好",topn=100)

model.wv.most_similar("不好",topn=100)

model.wv["不好"]

生成句向量
print(df2.cut[0])#(第一條) print("第一條評論分詞后詞個數為:",len(df2.cut[0]))

將第一條評論轉成word2vec矩陣
pd.DataFrame([model.wv[i] for i in df2.cut[0] if i in model.wv])

將第一條評論轉成向量
vec1 = pd.DataFrame([model.wv[i] for i in df2.cut[0] if i in model.wv]).mean() print(vec1)


生成word2vec句向量

def sen2vec(words):return pd.DataFrame([model.wv[i] for i in df2.cut[0] if i in model.wv]).mean() train_vec = pd.DataFrame([sen2vec(s) for s in x_train]) train_vec

分類模型–支持向量機

from sklearn.svm import SVC clf2 = SVC() clf2.fit(train_vec,y_train)

clf2.score(train_vec,y_train)

SVM

from sklearn.metrics import classification_report print(classification_report(y_train,clf2.predict(train_vec)))

生成測試集word2vec句向量

def sen2vec(words):return pd.DataFrame([model.wv[i] for i in words if i in model.wv]).mean() test_vec = pd.DataFrame([sen2vec(s) for s in x_test]) test_vec clf2.score(test_vec,y_test)

from sklearn.metrics import classification_report print(classification_report(y_test,clf2.predict(test_vec)))

預測新評論

s = """...新評論...""" s_seg1 = jieba.lcut(s) s_word2vec = pd.DataFrame([model.wv[i] for i in s_seg1 if i in model.wv]) s_word2vec s_vec = s_word2vec.mean() s_vec import numpy as np s_vec = np.array(s_vec) s_vec = s_vec.reshape(1,-1) result_svm = clf2.predict(s_vec) result_sum

總結

以上是生活随笔為你收集整理的情感分析--word2vec的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。