情感分析(支持向量机,逻辑回归)
生活随笔
收集整理的這篇文章主要介紹了
情感分析(支持向量机,逻辑回归)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
以某寶購物評論為例(表分為好評和差評)
好評
df = pd.read_excel("F:/文本大數據/購物評論.xlsx",sheet_name="正向",header=None) df標記為1
df['class']=1 df.head()差評
df1 = pd.read_excel("F:/文本大數據/購物評論.xlsx",sheet_name="負向",header=None) df1標記為0
df1['class']=0 df1.head()合并
df2 = df.append(df1,ignore_index=True) df2分詞和預處理
import jieba cuttxt = lambda x:" ".join(jieba.lcut(x)) df2["segment"]=df2[0].apply(cuttxt) df2.head()詞袋模型
from sklearn.feature_extraction.text import CountVectorizer # 詞袋模型 countvec = CountVectorizer() countvec = countvec.fit_transform(df2["segment"]) countvec from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_test = train_test_split(countvec,df2['class'],test_size=0) x_train from sklearn.svm import SVC clf = SVC()# 支持向量機 clf.fit(x_train,y_train) clf.score(x_train,y_train)這里會花較長的時間,需要耐心等待!
如果想提高準確率可以通過改變參數:
邏輯回歸模型
from sklearn.linear_model import LogisticRegression logistic = LogisticRegression() logistic.fit(x_train,y_train) logistic.score(x_train,y_train)模型評估
SVM
from sklearn.metrics import classification_report print(classification_report(y_test,clf.predict(x_test))) s = """輸入你想預測的評論""" s_seg = " ".join(jieba.lcut(s)) s_seg_vec = countvec.transform([s_seg]) result = clf.predict(s_seg_vec) result邏輯回歸
from sklearn.metrics import classification_report print(classification_report(y_test,logistic.predict(x_text))) s = """輸入你想預測的評論""" s_seg = " ".join(jieba.lcut(s)) s_seg_vec = countvec.transform([s_seg]) result = logistic.predict(s_seg_vec) result總結
以上是生活随笔為你收集整理的情感分析(支持向量机,逻辑回归)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么制作u启动失败 制作u启动盘失败怎么
- 下一篇: 情感分析--word2vec