Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【视频】文本挖掘专题:Python、R用LSTM情感语义分析实例合集|上市银行年报、微博评论、红楼梦、汽车口碑数据采集词云可视化

【视频】文本挖掘专题:Python、R用LSTM情感语义分析实例合集|上市银行年报、微博评论、红楼梦、汽车口碑数据采集词云可视化

作者头像
拓端
发布于 2025-03-18 12:12:27
发布于 2025-03-18 12:12:27
16900
代码可运行
举报
文章被收录于专栏:拓端tecdat拓端tecdat
运行总次数:0
代码可运行

原文链接:https://tecdat.cn/?p=41149

分析师:Zhenzhen Liu,Shuai Fung

作为数据科学家,我们始终关注如何从非结构化数据中提取高价值信息。本专题合集聚焦企业年报的文本分析技术,通过Python与R语言实战案例,系统展示如何利用自然语言处理(NLP)技术量化企业年报的情感倾向。以10家上市银行2010-2022年的130份年报为研究对象,我们构建了包含停用词过滤、情感词典匹配、LSTM神经网络分类等完整技术链路,最终生成可量化的乐观指标矩阵点击文末“阅读原文”获取完整代码、数据、文档)。

本专题合集的核心价值在于突破传统财务分析的局限性。当企业未披露数字化转型等非结构化指标时,文本挖掘技术可通过词频统计、语义分析等方法揭示深层信息。例如,通过分析"数字""智能"等关键词的出现频次与情感关联度,能够客观评估企业的技术投入态度。这种跨学科研究不仅为投资决策提供新维度,更为监管机构识别市场情绪波动提供技术支持。 专题合集包含4大技术模块:中文分词与情感计算、LSTM神经网络在社交媒体情感分析中的应用、R语言古典文本挖掘实战、汽车口碑数据采集词云可视化。特别值得关注的是LSTM模型在微博评论数据集上的学习实践。而《红楼梦》文本挖掘案例则展示了如何通过词云可视化与t检验分析,验证不同章节的作者风格差异。 本专题合集已分享在交流社群,阅读原文进群和500+行业人士共同交流和成长。数据科学的魅力在于连接技术与商业场景,我们期待与您共同探索文本数据中的商业密码。

企业年报语调分析:以上市银行为例

在当今的商业世界中,企业年报是了解企业经营状况和未来发展前景的重要窗口。然而,年报中的文字信息往往蕴含着丰富的情感和态度,这些信息对于投资者、分析师和监管者来说都具有重要的参考价值。传统的财务指标分析往往难以捕捉到这些非量化的信息,因此,文本分析技术应运而生。

故事的起源

在金融市场中,上市银行的年报是投资者关注的焦点之一。从2010年到2022年,这13年的时间里,金融市场风云变幻,上市银行面临着各种挑战和机遇。我们想要了解这些银行在不同年份的年报中所传达出的语气和态度,以此来洞察银行的经营信心和市场预期。但是,银行年报往往篇幅巨大,人工分析不仅耗时耗力,而且容易出现主观偏差。于是,我们决定借助Python编程语言,利用文本分析技术来完成这项任务。

准备工作

要进行年报语气评分,首先得有年报数据。我们把目标锁定在了巨潮资讯网,这是一个权威的上市公司信息披露平台。我们要模拟点击的方式,下载10家上市银行2010 - 2022年的年报,然后将这些年报转换为txt格式,这样就能方便后续的文本处理了。经过一番操作,我们一共得到了130个文本文件。 接下来,我们需要设置停用词表和情感词表。停用词是指在文本中频繁出现但没有实际意义的词语,比如“的”“是”“在”等,去除这些停用词可以提高文本分析的准确性。情感词表则分为积极情感词表和消极情感词表,用于判断文本中的积极和消极情感。 下面是读取词表文件的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def read\_file(file\_path):
 # 以只读模式打开文件,使用utf-8编码
 with open(file_path, 'r', encoding='utf-8') as file:
 # 读取文件的所有行
 content = file.readlines()
 # 去除每行末尾的换行符
 content = \[line.strip() for line in content\]
 # 替换特殊字符
 content = \[line.replace('"', '') for line in content\]
 return content
# 读取停用词文件
stopwords = read_file(r'E:\\python\\14weekpython\\stopwords.txt')
print(stopwords)
# 读取积极情感词典文件
posdict = read_file(r'E:\\python\\14weekpython\\posdict.txt')
# 读取消极情感词典文件
negdict = read_file(r'E:\\python\\14weekpython\\negdict.txt')

分词与情感分析

有了年报数据和词表,接下来就是对年报进行分词和情感分析了。我们使用jieba库对文本进行分词,然后过滤掉停用词。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import jieba
import re
# 对文本进行分词并过滤停用词
def segment(text):
 seg_list = jieba.cut(text)
 filtered\_words = \[word for word in seg\_list if word not in stopwords\]
 return filtered_words

分词完成后,我们要统计年报中积极和消极语调的数量。具体来说,我们会计算积极语调、消极语调、积极词汇数量、消极词汇数量、段落总词数、停用词数量和总句数量。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 计算积极语调、消极语调、积极词汇数量、消极词汇数量、段落总词数、停用词数量、总句数量
def analyze_text(text):
 pos_count = 0
 neg_count = 0
 pos\_word\_count = 0
 neg\_word\_count = 0
 word_count = 0
 stopword_count = 0
 sentence_count = 0
 # 将文本按段落分割
 paragraphs = re.split('\\n|\\r', text)
 for para in paragraphs:
 if not para.strip():
 continue
 # 将段落分割成句子
 sentences = re.split('\[-!?。\]', para)
 for sentence in sentences:
 if not sentence.strip():
 continue
 # 将句子分词并过滤停用词
 words = segment(sentence)
 word_count += len(words)
 stopword_count += sum(\[1 for word in words if word in stopwords\])
 pos\_word\_count += len(\[word for word in words if word in posdict\])
 neg\_word\_count += len(\[word for word in words if word in negdict\])
 # 判断句子的情感倾向
 if pos\_word\_count > neg\_word\_count:
 pos_count += 1
 elif pos\_word\_count < neg\_word\_count:
 neg_count += 1
 sentence_count += 1
 return pos\_count, neg\_count, pos\_word\_count, neg\_word\_count, word\_count, stopword\_count, sentence_count

计算乐观指标

为了量化年报的语气,我们引入了乐观指标。乐观指标的计算公式为:乐观指标 = 积极语调数量 / (积极语调数量 + 消极语调数量)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 计算乐观指标
def calculate\_optimism(pos\_count, neg\_count, sentence\_count):
 if pos\_count + neg\_count == 0:
 return 0
 optimism = pos\_count / (pos\_count + neg_count)
 return optimism

处理年报文件

最后,我们要读取所有的年报文件,并对每个文件进行分析,将计算得到的乐观指标等信息输出到excel表中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import os
# 读取年报文件并分析文本
def analyze\_report(file\_path):
 with open(file_path, 'r', encoding='utf-8') as f:
 text = f.read()
 pos\_count, neg\_count, pos\_word\_count, neg\_word\_count, word\_count, stopword\_count, sentence\_count = analyze\_text(text)
 optimism = calculate\_optimism(pos\_count, neg\_count, sentence\_count)
 return {'pos\_count': pos\_count, 'neg\_count': neg\_count, 'pos\_word\_count': pos\_word\_count,
 'neg\_word\_count': neg\_word\_count, 'word\_count': word\_count, 'stopword\_count': stopword\_count,
 'sentence\_count': sentence\_count, 'optimism': optimism}
# 读取目录下的所有年报文件并分析
def analyze\_reports(dir\_path):
 company_reports = {}
 for root, dirs, files in os.walk(dir_path):
 for file in files:
 if file.endswith('.txt'):
 company_name = file.split(':')\[0\]
 file_path = os.path.join(root, file)
 report\_data = analyze\_report(file_path)
 if company\_name in company\_reports:
 company\_reports\[company\_name\].append(report_data)
 else:
 company\_reports\[company\_name\] = \[report_data\]
 return company_reports
# 设置年报文件目录
dir_path = "年报"
company\_reports = analyze\_reports(dir_path)

结果与启示

通过对这10家上市银行2010 - 2022年的年报进行语气评分,我们可以得到每个银行在不同年份的乐观指标。这些指标可以反映出银行在不同时期的经营信心和市场预期。例如,如果某家银行在某一年的乐观指标较高,说明该银行在年报中传达出了积极的态度,可能意味着该银行在这一年的经营状况较好,对未来的发展充满信心。相反,如果乐观指标较低,则可能表示银行面临着一些挑战和压力。 这种文本分析方法不仅适用于上市银行的年报分析,对于其他难以量化的指标或者难以针对每个企业衡量的指标,也具有很好的应用价值。比如当前较热的数字化转型,企业可能没有专门披露这一指标,我们就可以通过对其年报进行分析,了解企业在数字化转型方面的进展和态度。 总之,文本分析技术为我们打开了一扇了解企业的新窗口,让我们能够从文字信息中挖掘出更多有价值的信息。随着技术的不断发展,相信文本分析在金融领域和企业研究中的应用会越来越广泛。

LSTM神经网络模型在微博中文文本评论情感分析|附数据代码

分析师:Shuai Fung

本文将通过视频讲解,展示如何用python的LSTM模型对中文文本评论情感分析,并结合一个TensorFlow的长短期记忆神经网络(LSTM)、指数移动平均法预测股票市场和可视化实例的代码数据,为读者提供一套完整的LSTM模型分类预测的实践数据分析流程。

基于LSTM模型的中文文本评论情感分析

研究背景

在自然语言处理(NLP)领域,情感分析一直是研究的热点之一。尽管国外研究人员在早期就针对英文文本开展了情感分析的研究,但由于中英文在语法结构、词汇含义以及表达方式上存在显著差异,中文文本情感分析面临着独特的挑战。尤其是随着微博等社交媒体的兴起,网络文本呈现出短小精悍、数据稀疏、上下文信息有限等特点,使得传统的基于情感词典的分析方法难以直接应用。

因此,中文文本情感分析的研究不仅具有理论价值,更具有重要的现实意义。通过对海量互联网评论文本进行情感分析,不仅可以实现异常或突发事件的检测和监控,还能助力网络舆情监控系统的完善,为企业的市场营销策略提供有力支持。此外,情感分析在心理学、语言学、教育学、社会学、金融预测等多个领域也具有广泛的应用前景。

研究内容

本研究主要基于长短期记忆网络(Long Short-Term Memory, LSTM)实现中文文本情感分析。具体研究内容包括:

  • 数据集的收集、整理与分析,以及对数据集进行词向量等预处理操作,以适应LSTM模型的输入要求。
  • 构建一个情感分析模型,利用PyTorch框架搭建LSTM网络,并将此网络模型应用于中文文本情感分析任务中。通过训练模型,使其能够准确识别文本的情感倾向,并输出混淆矩阵等评价指标。

研究流程

本研究遵循以下流程进行:

  • 数据获取:使用微博情感分析数据集,该数据集包含积极情感和消极情感两种标签,共计约12万条数据。
  • 数据预处理:利用公开的Vocab和腾讯发布的词向量预训练模型,对文本数据进行词向量预处理,以便后续模型训练。
  • 搭建模型:使用PyTorch框架搭建LSTM网络模型,设置合适的网络结构和参数。
  • 模型训练:通过调整batch_size、epoch等超参数,对模型进行训练,并输出训练日志以监控训练过程。
  • 模型评估:在测试集上评估模型的性能,输出混淆矩阵,并采用精准率、召回率、F1值等指标对模型进行综合评价。

算法原理

LSTM是一种特殊的循环神经网络(RNN),它通过引入门控机制来解决RNN在处理长序列时存在的梯度消失和梯度爆炸问题。LSTM包含三个门:遗忘门、输入门和输出门,以及一个记忆单元。在每个时间步,LSTM都会根据当前输入和上一时刻的输出更新记忆单元和门控状态,从而实现对长序列信息的有效处理。

在情感分析任务中,LSTM网络通过学习文本序列中的依赖关系,能够捕捉文本中的情感信息,并输出相应的情感倾向。通过训练LSTM网络模型,我们可以实现对中文文本情感分析任务的有效处理。

模型搭建

LSTM模型通过引入门控机制,能够处理长序列数据中的依赖关系,适用于情感分析任务。在模型搭建过程中,我们设置了合适的网络结构和参数,包括隐藏层大小、学习率、批次大小(batch size)等超参数。

原始数据

超参数

预处理一一分割文本、划分训练集

首先,对原始数据集进行文本分割,将长文本切分为适合模型输入的短文本序列。接着,将数据集划分为训练集、验证集和测试集,确保模型在训练过程中能够有效利用数据,并通过验证集进行模型调优,最终在测试集上评估模型的性能。

预处理一一张量转化

将预处理后的文本数据转化为张量(tensor)格式,以适应PyTorch等深度学习框架的输入要求。通过词嵌入(word embedding)技术,将文本中的每个词映射为一个固定维度的向量,从而捕获文本的语义信息。

训练

在模型训练过程中,我们使用训练集数据对模型进行迭代训练,通过反向传播算法和梯度下降优化器更新模型的参数。同时,我们记录了训练过程中的损失函数值和准确率等指标,以便对模型的训练过程进行监控和调优。

模型评估

在模型训练完成后,我们使用测试集数据对模型进行评估。评估指标包括精准率(Precision)、召回率(Recall)和F1值等。通过输出混淆矩阵(Confusion Matrix),我们可以更直观地了解模型在不同情感类别上的表现。

此外,我们还通过可视化工具展示了模型在训练过程中的损失函数值和准确率变化曲线,以便对模型的训练效果进行更深入的分析。

模型局限

尽管基于LSTM的模型在中文文本情感分析任务中取得了不错的效果,但仍存在一些局限性:

  • 长期依赖处理:LSTM模型虽然能够处理长期依赖关系,但在某些情况下可能无法完全捕捉到较长距离之间的依赖关系,导致模型在处理一些复杂的情感语义时出现困难。
  • 数据不平衡问题:在情感分析任务中,积极和消极情感的数据往往不平衡,这可能导致模型在学习时偏向于出现更多的样本数量较多的情感类别。为了解决这个问题,可以采用数据增强、重采样等技术来平衡数据集。
  • 语义理解挑战:情感分析需要对文本的语义进行准确的理解,而LSTM模型可能无法完全捕捉到复杂的语义关系。为了提高模型的语义理解能力,可以引入注意力机制(Attention Mechanism)等技术来增强模型对关键信息的关注。
  • 知识表示限制:LSTM模型通常使用词嵌入来表示文本的语义信息,但词嵌入可能无法准确地捕捉到一些特定领域或文化背景中的情感表达。为了解决这个问题,可以引入领域知识或文化背景信息来丰富词嵌入的表示能力。

针对以上局限性,未来的研究可以探索更先进的模型架构和算法,以提高中文文本情感分析的准确性和效率。

R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析|附数据代码

作为中国古典文学的瑰宝,《红楼梦》具有极高的文学价值和丰富的主题内涵。近年来,随着大数据和文本挖掘技术的发展,对《红楼梦》等古典文学作品的深度分析成为可能。本研究采用R语言作为分析工具,对《红楼梦》全文进行文本挖掘,通过词频统计、词云可视化以及前后对比分析,以期深入探索这部经典小说的主题演变和人物塑造。

读入数据

将需要分析的文本放入记事本中,保存到相应路径,并在R中打开。这儿我导入的是《红楼梦》的文本。

先导入rJava和Rwordseg两个包

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(Rwordseg)

分词+统计词频

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
words=unistlapplyX=lecture, UN=sgmntCN))
#unlist将list类型的数据,转化为vector  
#lapply()返回一个长度与X一致的列表,每个元素为FUN计算出的结果,且分别对应到X中的每个元素。

table统计数据的频数

降序排序

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
v=rev(sort(v))

过滤掉1个字的结果和词频小于100的结果

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
d1=subset(d, nchr(ascharctr(d$词汇))>1 & d$词频.Freq>=100)

画出标签云

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wordcloud(d1$词

性格分析:宝玉

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
xinggefenxi("宝玉")

从关键词“丫头”“出去”“姐姐”这些来看,贾宝玉是一个又奇又俗的人物。自幼深受祖母贾母疼爱,住贾母院。因此娇生惯养,构成他性格的主要特征是叛逆。他行为“偏僻而乖张”,是封建社会的叛逆者。他鄙视功名利禄,不愿走“学而优则仕”的仕途。他痛恨“八股”,辱骂读书做官的人是“国贼禄蠹”,懒于与他们接触拜会。

红楼梦前八十回与后四十回是否同一个人写的?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lecture<-read.csv("红楼梦前80回.txt", tringAsFactorsALSEheade=FALSE)  
   
words=ulit(lppl
#unlist将list类型的数,转化为vector  
#lapply()返回一个长度与X一致的列表,每个元素为FUN计算出的结果,且分别对应到X中的每个元素。  
word=lapply()

画出标签云

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lecture<-read.csv("红楼梦后40回.txt", stringsAFacors=FLSE,header=FALSE)

前后红楼梦词频对比

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
qianword=qiwor\[which(qiaword\[ ,1\] %in% gongtngword),  \]  
  
houword=uword\[whih(houod\[ ,1\] %in% gongtonword),  \]

前红楼梦:

后红楼梦:

t检验

t检验是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著。用于比较前后红楼梦的关键词出现频率的区别差异。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
t.test(qianod\[,3\],huord\[,3\])

从结果来看,t检验的p值显著小于0.05,因此拒绝原假设。有95%的把握可以认为前后的红楼梦不是一个人所做。

R语言汽车口碑数据采集抓取、文本数据分词和词云可视化实现

本文以R语言为工具,帮助客户对汽车网站的口碑数据进行抓取,并基于文本数据分词技术进行数据清理和统计。通过词频统计和词云可视化,对口碑中的关键词进行分析,挖掘出消费者对汽车的评价和需求,为汽车制造商和销售商提供重要的市场参考。

随着社会经济的不断发展,汽车已经成为人们日常生活中不可或缺的交通工具。汽车口碑对于消费者购车决策起着至关重要的作用,同时也是汽车制造商和销售商了解市场需求、改进产品质量和服务的重要依据。传统的汽车口碑调查方式往往需要耗费大量的人力物力,而网络上的汽车口碑数据正逐渐成为研究汽车市场和消费者需求的重要数据来源。然而,如何高效地获取和分析这些数据变得越来越重要。因此,本文利用R语言的数据抓取和文本数据分词技术,对汽车网站的口碑数据进行抓取和分析,旨在为汽车行业提供更准确、更快速的市场研究手段。

本文主要实现以下两个目标:

  • 基于R语言的数据抓取部分。这一部分里面所有的结果都要实现
  • 基于R语言的文本数据分词

在每一页评价内容的抓取中 , 依然使用 xpath SApply 函数,再输入特定的 XML 路径来抓取网页上的用户评价内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(RCurl)


 Also load the other required package.  
library("methods")  
xpath <- '//div\[@class=\\"co81\\"\]'  
  
url <-"www.chekb.com/suonata/koubei/"
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pagetree <- htmlTreeParse(webpage, error=function(...){}, useInternalNodes = TRUE,encoding="UTF-8")  
   pagetree  
   value <- getNodeSet(pagetree,xpath)  
   
  i <- length(value)                     统计满足条件的值个数,一般情况为1

读入数据

将需要分析的文本放入记事本中,保存到相应路径,并在R中打开。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
head(lecture)

数据清理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lecture$评价=gsub(pattern="\[1|2|3|4|5|6|7|8|9|0\]"," ",lecture$评价);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  
lecture$评价=gsub(pattern="/"," ",lecture$评价);&nbsp;&nbsp;&nbsp;  
lecture$评价=gsub(pattern="!"," ",lecture$评价);
......

grepl 函数的 regexpr 函数、regmatches 函数,并结合正则表达式来匹配出“非灰色用户”的主页链接

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
grepl(pattern = "中国",x = lecture$网友)

分词+统计词频

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
word=lapply(X=words, FUN=strsplit, " ")  
v=table(unlist(word))

统计数据的频数

对词频进行排序table函数得到各词组的词频,最后运用 sort 函数让其按词频降序排列,生成文档词矩阵

创建数据框

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
d=data.frame(词汇=names(v), 词频=v)  
d

过滤掉1个字的结果和词频小于100的结果

筛选标准大家可以根据自己的需求进行修改

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
d1=subset(d, nchar(as.character(d$词汇))>1 & d$词频.Freq>=2)

词频统计结果(节选)如下:

画出标签云

(2)设置字体类型和字体颜色

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mycolors <- brewer.pal(12,"Paired")

(3)画出标签云

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
dcloud(d1$词汇,d1$词频.Freq,random.order=FALSE,random.color=TRUE,colors=mycolors,family="myFont")

关于分析师

在此对Zhenzhen Liu对本文所作的贡献表示诚挚感谢,她在浙江财经大学完成了金融专业的硕士学位,专注数据采集与金融分析领域。擅长Matlab、Python编程,精通常规金融分析与文本挖掘技术。

Shuai Fung是拓端研究室(TRL) 的研究员。在此对他对本文所作的贡献表示诚挚感谢,他在香港大学完成了数据科学专业的硕士学位,专注机器学习、数据分析、时间序列预测、深度学习、数理金融。擅长R语言、Python、SQL。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 拓端数据部落 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析
作为中国古典文学的瑰宝,《红楼梦》具有极高的文学价值和丰富的主题内涵(点击文末“阅读原文”获取完整代码数据)。
拓端
2023/11/22
8160
R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析
手把手教你对抓取的文本进行分词、词频统计、词云可视化和情感分析
前几天星耀群有个叫【小明】的粉丝在问了一道关于Python处理文本可视化+语义分析的问题,如下图所示。
Python进阶者
2022/03/09
3K1
手把手教你对抓取的文本进行分词、词频统计、词云可视化和情感分析
Python做文本挖掘的情感极性分析
「情感极性分析」是对带有感情色彩的主观性文本进行分析、处理、归纳和推理的过程。按照处理文本的类别不同,可分为基于新闻评论的情感分析和基于产品评论的情感分析。其中,前者多用于舆情监控和信息预测,后者可帮助用户了解某一产品在大众心目中的口碑。 目前常见的情感极性分析方法主要是两种:基于情感词典的方法和基于机器学习的方法。 1. 基于情感词典的文本情感极性分析 笔者是通过情感打分的方式进行文本情感极性判断,score > 0判断为正向,score < 0判断为负向。 1.1 数据准备 1.1.1 情感词典及对应分
机器学习AI算法工程
2018/03/14
5.3K0
Python做文本挖掘的情感极性分析
Python 文本挖掘:使用情感词典进行情感分析(算法及程序设计)
情感分析就是分析一句话说得是很主观还是客观描述,分析这句话表达的是积极的情绪还是消极的情绪。 原理 比如这么一句话:“这手机的画面极好,操作也比较流畅。不过拍照真的太烂了!系统也不好。” ① 情感词 要分析一句话是积极的还是消极的,最简单最基础的方法就是找出句子里面的情感词,积极的情感词比如:赞,好,顺手,华丽等,消极情感词比如:差,烂,坏,坑爹等。出现一个积极词就+1,出现一个消极词就-1。 里面就有“好”,“流畅”两个积极情感词,“烂”一个消极情感词。那它的情感分值就是1+1-1+1=2. 很明显这个分
机器学习AI算法工程
2018/03/14
21.2K4
Python 文本挖掘:使用情感词典进行情感分析(算法及程序设计)
文本挖掘:情感分析详细步骤(基础+源码)
词典型情感分析大致有以下几个步骤: 训练数据集、neg/pos情感词典、分词+数据清洗清洗(一、二、三级清洗步骤)、计算情感得分、模型评价 (1)在分析过程中,难免会产生很多中间变量,它们会占用大量内存。书中提到通常会将所有的临时中间变量命名为temp,只需要保证下一个temp出现之前,临时变量不会再延用就可以了。 (2)毫无疑问,如果不追求高大上的算法的话,词典法不失为一种好方法,其实有时候我们使用了很多方法,结果发现并没有什么质变,也浪费了大量时间; 比如在优化词典的时候,我希望使用高大上的算法解决
机器学习AI算法工程
2018/03/13
8.7K0
文本挖掘:情感分析详细步骤(基础+源码)
R语言汽车口碑数据采集抓取、文本数据分词和词云可视化实现
本文以R语言为工具,帮助客户对汽车网站的口碑数据进行抓取,并基于文本数据分词技术进行数据清理和统计。通过词频统计和词云可视化,对口碑中的关键词进行分析,挖掘出消费者对汽车的评价和需求,为汽车制造商和销售商提供重要的市场参考。
拓端
2023/12/05
2250
文本情感识别系统python+Django网页界面+SVM算法模型+数据集
文本情感分析系统,使用Python作为开发语言,基于文本数据集,使用Word2vec对文本进行处理。通过支持向量机SVM算法训练情绪分类模型。实现对文本消极情感和文本积极情感的识别。并基于Django框架开发网页平台实现对用户的可视化操作和数据存储。
子午Python
2023/07/14
4780
爱数课实验 | 中文商品评论情感判定
简介:商品评论可以帮助购买用户更加了解产品,做出更优的购买决策,也可以帮助商家获知商品的优缺点,获取消费者的喜好。本次实验我们将学习中文商品情感判定,通过构建SVM模型和高斯朴素贝叶斯模型对商品评论进行分类。
数据科学人工智能
2022/04/01
7611
爱数课实验 | 中文商品评论情感判定
【可视化大屏】用Python开发「淄博烧烤」微博热评舆情分析大屏
自从2023.3月以来,"淄博烧烤"现象持续占领热搜流量,体现了后疫情时代众多网友对人间烟火气的美好向往,本现象级事件存在一定的数据分析实践意义。
无双0516
2025/03/19
1830
【可视化大屏】用Python开发「淄博烧烤」微博热评舆情分析大屏
R语言豆瓣数据文本挖掘 神经网络、词云可视化和交叉验证
在网络技术高速发展的背景下,信息纷乱繁杂,如何能够获得需要的文本信息,成了许多企业或组织关注的问题。
拓端
2023/02/06
4130
京东商品评论情感分析:数据采集与词向量构造方法
最近实习期间在做一个对新闻文本情感分析的项目。在此,用京东的商品评论练手,从数据采集到模型实现完整地写一遍,以备未来回顾所需。事实上,我采用的方法并不困难,甚至有点naive,所以权且作为练手吧。 本文代码在公众号 datadw 里 回复 京东 即可获取。 数据采集 在这里为了避免人工标注的麻烦,使用的是京东iPad的用户评论 https://item.jd.com/4675696.html#none 事实上,NLP情感分析中最花时间的就是人工标注。 仔细查看调试台可以很容易地发现商品的评论信息都是用
机器学习AI算法工程
2018/03/15
2.1K0
京东商品评论情感分析:数据采集与词向量构造方法
情感词典构建_文本情感分析的意义
当今社会媒体的发展导致了金融舆论数据的爆炸式增长。因此,针对金融舆论数据的情感分析受到广大股民和金融公司的热切关注。目前,情感分析应用主要分为两种:基于词汇的方法和机器学习方法。当然,它们都面临着获取大量人类标记训练数据和语料的挑战。我提出一种基于词汇的针对金融数据情感分析的方法:将一篇短文本划分为不同的部分并给予不同的权重,再以词汇为基本颗粒进行分数计算;同时,在已有的权威字典的基础上,针对性的添加或修改金融方面的词汇,并且使用N-Gram方法来进行新词的挖掘,最终获得更好的性能。
全栈程序员站长
2022/09/23
9810
情感词典构建_文本情感分析的意义
基于文本挖掘和情感分析的物流客户满意度测算研究
摘 要: 为合理评价电商平台物流客户满意度情况,提出一种基于评论大数据的物流客户满意度测算方法。首先,以生鲜电商为研究对象爬取大量在线评论,进行分词等操作并基于TF-IDF算法得出生鲜电商物流满意度的关键因素及其权重,随后构建物流属性词向量模型,结合词语权重和其与物流关键因素之间的相似性,区分每句话中的物流属性,确定用户重点关注的物流属性。然后,构建情感分析模型对物流相关评论进行情感分析,计算用户对物流各属性的满意度情况,得到评论中不同物流属性的客户满意度情况。
用户9868602
2022/09/02
9580
基于文本挖掘和情感分析的物流客户满意度测算研究
爱数课实验 | 第五期-基于机器学习方法的商品评论情感判定
简介:商品评论可以帮助购买用户更加了解产品,做出更优的购买决策,也可以帮助商家获知商品的优缺点,获取消费者的喜好。本次实验我们将学习中文商品情感判定,通过构建高斯朴素贝叶斯模型和SVM模型和对商品评论进行分类。
数据科学人工智能
2022/06/27
1.5K1
爱数课实验 | 第五期-基于机器学习方法的商品评论情感判定
【数据挖掘】文本挖掘:语义分析的一些方法
语义分析,本文指运用各种机器学习方法,挖掘与学习文本、图片等的深层次概念。 1 文本基本处理 在讲文本语义分析之前,我们先说下文本基本处理,因为它构成了语义分析的基础。而文本处理有很多方面,考虑到本文主题,这里只介绍中文分词以及Term Weighting。 1.1 中文分词 拿到一段文本后,通常情况下,首先要做分词。分词的方法一般有如下几种: 基于字符串匹配的分词方法。此方法按照不同的扫描方式,逐个查找词库进行分词。根据扫描方式可细分为:正向最大匹配,反向最大匹配,双向最大匹配,最小切分(即最短路径);总
陆勤_数据人网
2018/02/27
9.3K0
【数据挖掘】文本挖掘:语义分析的一些方法
轻松搞懂【TF-IDF、word2vec、svm、cnn、textcnn、bilstm、cnn+bilstm、bilstm+attention实现】英文长文本分类[通俗易懂]
项目来源:https://www.kaggle.com/c/word2vec-nlp-tutorial/
全栈程序员站长
2022/09/13
8320
轻松搞懂【TF-IDF、word2vec、svm、cnn、textcnn、bilstm、cnn+bilstm、bilstm+attention实现】英文长文本分类[通俗易懂]
一条龙搞定情感分析:文本预处理、加载词向量、搭建RNN
相比于计算机视觉,NLP可能看起来没有那么有趣,这里没有酷炫的图像识别、AI作画、自动驾驶,我们要面对的,几乎都是枯燥的文本、语言、文字。但是,对于人工智能的征途来说,NLP才是皇冠上的那颗珍珠,NLP是AI完全问题,当NLP的问题解决了,机器才真正具备了理解、思考的能力,我们才敢说实现了真正的“智能”。
beyondGuo
2019/05/13
3.2K3
一条龙搞定情感分析:文本预处理、加载词向量、搭建RNN
R语言文本挖掘、情感分析和可视化哈利波特小说文本数据
一旦我们清理了我们的文本并进行了一些基本的词频分析,下一步就是了解文本中的观点或情感。这被认为是情感分析,本教程将引导你通过一个简单的方法来进行情感分析。
拓端
2021/07/16
2K0
R语言文本挖掘、情感分析和可视化哈利波特小说文本数据
【视频讲解】LSTM神经网络模型在微博中文文本评论情感分析和股市预测应用附代码数据
本文将通过视频讲解,展示如何用python的LSTM模型对中文文本评论情感分析,并结合一个TensorFlow的长短期记忆神经网络(LSTM)、指数移动平均法预测股票市场和可视化实例的代码数据,为读者提供一套完整的LSTM模型分类预测的实践数据分析流程(点击文末“阅读原文”获取完整代码数据)。
拓端
2025/04/26
1810
【视频讲解】LSTM神经网络模型在微博中文文本评论情感分析和股市预测应用附代码数据
Python人工智能 | 二十二.基于大连理工情感词典的情感分析和情绪计算
从本专栏开始,作者正式研究Python深度学习、神经网络及人工智能相关知识。前一篇文章分享了CNN实现中文文本分类的过程,并与贝叶斯、决策树、逻辑回归、随机森林、KNN、SVM等分类算法进行对比。这篇文章将详细讲解通过自定义情感词典(大连理工词典)实现情感分析和情绪分类的过程,并与SnowNLP进行对比,为后续深度学习和自然语言处理(情感分析、实体识别、实体对齐、知识图谱构建、文本挖掘)结合做基础,希望对您有所帮助~
Eastmount
2024/02/23
1.3K0
Python人工智能 | 二十二.基于大连理工情感词典的情感分析和情绪计算
推荐阅读
R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析
8160
手把手教你对抓取的文本进行分词、词频统计、词云可视化和情感分析
3K1
Python做文本挖掘的情感极性分析
5.3K0
Python 文本挖掘:使用情感词典进行情感分析(算法及程序设计)
21.2K4
文本挖掘:情感分析详细步骤(基础+源码)
8.7K0
R语言汽车口碑数据采集抓取、文本数据分词和词云可视化实现
2250
文本情感识别系统python+Django网页界面+SVM算法模型+数据集
4780
爱数课实验 | 中文商品评论情感判定
7611
【可视化大屏】用Python开发「淄博烧烤」微博热评舆情分析大屏
1830
R语言豆瓣数据文本挖掘 神经网络、词云可视化和交叉验证
4130
京东商品评论情感分析:数据采集与词向量构造方法
2.1K0
情感词典构建_文本情感分析的意义
9810
基于文本挖掘和情感分析的物流客户满意度测算研究
9580
爱数课实验 | 第五期-基于机器学习方法的商品评论情感判定
1.5K1
【数据挖掘】文本挖掘:语义分析的一些方法
9.3K0
轻松搞懂【TF-IDF、word2vec、svm、cnn、textcnn、bilstm、cnn+bilstm、bilstm+attention实现】英文长文本分类[通俗易懂]
8320
一条龙搞定情感分析:文本预处理、加载词向量、搭建RNN
3.2K3
R语言文本挖掘、情感分析和可视化哈利波特小说文本数据
2K0
【视频讲解】LSTM神经网络模型在微博中文文本评论情感分析和股市预测应用附代码数据
1810
Python人工智能 | 二十二.基于大连理工情感词典的情感分析和情绪计算
1.3K0
相关推荐
R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档