文本情感分析-机器学习实验三(代码片段)

Time木0101 Time木0101     2022-12-09     261

关键词:

情感分析-机器学习实验三

实验目的:
通过实验,掌握文本分析的整体流程,了解文本分类、情感分析、自动摘要等内容
通过给定的文本内容,完成分词、文本向量化、文本分类、情感分析等相关实验
实验可从文本分类、情感分析、自动摘要中任选一个,进行完整实验

1、导入pandas库

import pandas as pd


2、读入“购物评论”的数据集,并打印出前10行。

# 读入原始数据集
dfpos = pd.read_excel("购物评论.xlsx", sheet_name = "正向", header=None)
dfpos['y'] = 1
dfneg = pd.read_excel("购物评论.xlsx", sheet_name = "负向", header=None)
dfneg['y'] = 0
df0 = dfpos.append(dfneg, ignore_index = True)
df0.head(10)


3、导入“jieba”库
Jieba库的分词原理:利用一个中文词库,确定汉字之间的关联概率,汉字间概率大的组成词组,形成分词结果。

import jieba

安装“jieba”教程:anaconda安装jieba
4、进行分词和预处理。
查看分词结果:

# 分词和预处理
cuttxt = lambda x: " ".join(jieba.lcut(x)) # 这里不做任何清理工作,以保留情感词
df0["cleantxt"] = df0[0].apply(cuttxt) 
df0.head()


5、忽略少于5个文档中出现的术语

from sklearn.feature_extraction.text import CountVectorizer
countvec = CountVectorizer(min_df = 5) # 出现5次以上的才纳入

wordmtx = countvec.fit_transform(df0.cleantxt)
wordmtx


6按照7:3的比例生成训练集和测试集

# 按照7:3的比例生成训练集和测试集
from sklearn.model_selection import train_test_split

x_train, x_test, y_train, y_test = train_test_split(
    wordmtx, df0.y, test_size=0.3) # 这里可以直接使用稀疏矩阵格式
x_train[0]


7使用SVM进行建模

# 使用SVM进行建模
from sklearn.svm import SVC

clf=SVC(kernel = 'rbf', verbose = True)
clf.fit(x_train, y_train) # 内存占用可能较高
clf.score(x_train, y_train)


8对模型效果进行评估

# 对模型效果进行评估
from sklearn.metrics import classification_report

print(classification_report(y_test, clf.predict(x_test)))

clf.predict(countvec.transform([df0.cleantxt[0]]))[0]

10使用模型对实际文本进行处理,查看预测效果

# 模型预测
import jieba

def m_pred(string, countvec, model) : 
    words = " ".join(jieba.lcut(string))
    words_vecs = countvec.transform([words]) # 数据需要转换为可迭代格式
     
    result = model.predict(words_vecs)
    
    if int(result[0]) == 1:
        print(string, ":正向")
    else:
        print(string, ":负向")
        

comment = "外观美观,速度也不错。上面一排触摸键挺实用。应该对得起这个价格。当然再降点大家肯定也不反对。风扇噪音也不大。"
m_pred(comment, countvec, clf)

comment = "作为女儿6.1的礼物。虽然晚到了几天。等拿到的时候,女儿爱不释手,上洗手间也看,告知不好。竟以学习毛主席来反驳我。我反对了几句,还说我对主席不敬。晕。上周末,告诉我她把火鞋和风鞋拿到学校,好多同学羡慕她。呵呵,我也看了其中的人鸦,只可惜没有看完就在老公的催促下睡了。说了这么多,归纳为一句:这套书买的值。"
m_pred(comment, countvec, clf)  


总结:在这次试验中,我基本掌握了文本分析的整体流程,了解了情感分析的内容,并进行了购物评论的情感分析。
结合课本和实验我了解到,情感分析就是对文本内容所表达出来的主观情感额色彩进行挖掘和分析的过程。这次实验也用到了Jieba库,“jieba”的分词原理是利用一个中文词库,确定汉字之间的关联概率,汉字间概率大的组成词组,从而形成分词结果。

关注公众号:Time木
回复:文本情感分析
可获得相关代码,数据,文档
更多大学课业实验实训可关注公众号回复相关关键词
学艺不精,若有错误还望指点

)

可视化分析(机器学习)(代码片段)

...内容二、实验过程1、算法思想:2、算法原理3、算法分析(1)需求分析(2)数据预处理(3)分析与建模(4)模型评价与优化(5)部署三、源程序代码四、运行结果及分析五、实验总结... 查看详情

情感分析-r与spark机器学习库测试分类比较

...习软件包:说明:此两个包是R机器学习包。RTextTools包含文本处理,e1071包含分类器。>install.packages("RTextTools")>install.packages("e1071") 2    实验步骤研究对象:http://ww 查看详情

datawhale九月组队学习--情感分析--task01(代码片段)

...;本文对RNN原理不做详细的解读)、IMDB数据集来构建了一个文本情感分析任务的Baselin 查看详情

阿旭机器学习实战33中文文本分类之情感分析--朴素贝叶斯knn逻辑回归(代码片段)

...数据处理2.1提取数据与标签2.2过滤停用词2.3TfidfVectorizer将文本向量化3.利用不同模型进行训练与评估3.1朴素贝叶斯模型3.2k近邻模型3.3逻辑回归模型1.查看原始数据结构关注GZH:阿旭算法与机器学习,回复:“ML33”即可... 查看详情

nlp文本情感分析(代码片段)

...办法复原,惨兮兮/(ㄒoㄒ)/,具体内容今天来补上文本情感分析一、情感分析简介二、文本介绍及语料分析三、数据集分析四、LSTM模型五、重点函数讲解plot_modelnp_utils.to_categoricalmodel.summary()特别感谢一、情感分析简介 ... 查看详情

python基于机器学习的微博情感分析与研究(代码片段)

...为情感标签,0表示负面,1表示正面其余后面部分都是微博文本微博表情都被转义成[xx]的格式,如:微博话题/地理定位/视频、文本超链接等都转义成了%xxxx%的格式,使用正则可以很方便地将其清洗文件说明train.txt:10000条语料,根据... 查看详情

机器学习--实验三(代码片段)

博客班级AHPU机器学习作业要求K-近邻算法及应用作业目标理解K-近邻算法原理,能实现算法K近邻算法学号3180701118目录实验目的】【实验内容】实验报告要求】高斯朴素贝叶斯算法基本思想:python程序:scikit-learn实例朴素贝叶斯算... 查看详情

用rnn&cnn进行情感分析-pytorch(代码片段)

....预处理数据集二、利用RNN进行情感分析1.使用RNN表示单个文本2.加载预训练的词向量3.训练和评估模型4.预测三、利用CNN进行情感分析1.一维卷积2.textCNN模型3.加载预训练词向量4.训练和评估模型5.预测一、情感分析及数据集情感分... 查看详情

#夏日挑战赛#ffh从零开始的鸿蒙机器学习之旅-nlp情感分析(代码片段)

...dCoreNLP1.2.2解压,并引入lib中右键文件夹,点击addaslibrary2.情感分析2.1新建JAVA类,NLP_EMOTIONpackagecom.example.nlpdemo.utils;importedu.stanford.nlp.ling. 查看详情

keras深度学习实战(28)——利用单词向量构建情感分析模型(代码片段)

...获取到的单词向量,学习如何构建情感分类器分析给定的文本。1.模型与数据集分析1 查看详情

机器学习:基于神经网络对用户评论情感分析预测(代码片段)

机器学习:基于神经网络对用户评论情感分析预测作者:AOAIYI作者简介:Python领域新星作者、多项比赛获奖者:AOAIYI首页😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁... 查看详情

基于imdb评论数据集的情感分析(代码片段)

...的问题总结前言本文的主要内容是基于IMDB评论数据集的情感分析,文中包括大型电影评论数据集介绍、环境配置、实验代码、运行结果以及遇到的问题这几个部分 查看详情

streamlit+flair开发微博情感分析应用含源码(代码片段)

...这个教程将学习如何使用streamlit和flair开发一个twitter微博情感分析的应用。相关链接:Streamlit开发手册1、streamlit概述并不是每个人都是数据科学家,但是每个人都需要数据科学带来的力量。Streamlit帮我们解决了这个问题&... 查看详情

机器学习朴素贝叶斯(代码片段)

....4.2案例计算2.4.3文章分类计算2.5小结3案例:商品评论情感分析2.1api介绍3.2商品评论情感分析3.2.1步骤分析3.2.2代码实现3.3总结4朴素贝叶斯算法总结4.1朴素贝叶斯优缺点4.2朴素贝叶斯内 查看详情

tensorflow在文本处理中的使用——doc2vec情感分析(代码片段)

代码来源于:tensorflow机器学习实战指南(曾益强译,2017年9月)——第七章:自然语言处理代码地址:https://github.com/nfmcclure/tensorflow-cookbook数据:http://www.cs.cornell.edu/people/pabo/movie-review-data/rt-polaritydata.tar.gz在word2vec的方法中,处... 查看详情

pai文本分析实验:常用文本分析组件及案例实战

...个详细的阐述。这次我们还是继续实战,认识机器学习在文本分析领域是如何工作的。先贴出官方的教程:机器学习PAI眼中的《人民的名义》。准备开始还是在阿里PAI环境下,我们从实验模板:人民的名义分析进入,然后点击去... 查看详情

机器学习:基于主成分分析(pca)对数据降维(代码片段)

机器学习:基于主成分分析(PCA)对数据降维作者:AOAIYI作者简介:Python领域新星作者、多项比赛获奖者:AOAIYI首页😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏Ὄ... 查看详情

kaggle经典测试,泰坦尼克号的生存预测,机器学习实验----02(代码片段)

...预测,机器学习实验----02一、引言二、问题三、问题分析四、具体操作1、读取数据并且进行预处理2、划分标签以及特征并且初始化参数3、开始线性回归4、测试模型并且进行打分5、保存数据结果五、完整代码六、本算法的... 查看详情