记录一次文本挖掘 情感分析的项目过程

本文详细记录了一次文本挖掘情感分析项目的全过程,包括构建语料库(数据爬取、清洗、标注和质量检查)、建立模型(词向量生成、训练与评估)以及情感分析(可视化和深度挖掘)。通过词向量方法如CBOW和Skip-Gram进行模型训练,并使用seaborn等工具进行可视化分析。

一、构建语料库

  1. 确定数据源,并利用python爬取数据,注意清洗无效数据
  2. 建立标签系统,作为标注依据
    本次采用的是BIO 标签系统:
    B代表Begin,表示开始;
    I代表Intermediate,表示中间;
    O代表Other,表示其他,用于标记无关字符。
    同时,采用E和A分别代表实体和属性,用户最为关注的属性用"A+?“来表示,例如位置就是"AL”。
    为了随后的情感分析,还可将正面情感和负面情感划分为B-P和B-N。
  3. 标注
  4. 质量检查(reviews_check.py)
    由于在标注过程中会出现格式上的错误,例如多了空格,多了斜杠/,或是没有标标签系统中的既定标签,不区分大小写等情况。因此,需要一个格式检查程序来进行检查。
    这里的质量检查不包括内容,仅包括格式上的。

二、建立模型

  • 语料预处理

  • 生成词语、词性、标签三者的对应数据表

  • 建立三类词典

  • word2vec创建词向量

  • 词向量:通俗理解就是将词语转化成为机器可读的数据格式。
    例如,“今天天气很好”这句话转化为词向量就分别为[1,0,0,0,0,0][0,1,0,0,0,0][0,0,1,0,0,0][0,0,0,1,0,0][0,0,0,0,1,0][0,0,0,0,0,1],这种编码被称为one-hot编码,又称为独热编码,即使用和文本等长的N位特征寄存器来存储样本,保证每个样本中的单个特征只有1位处于状态1,其他的都是0。
    但是使用了one-hot编码会发现,一些样本量较大的词汇表是难以表示的,会非常占用内存。这个时候就出现了词向量,类似于空间向量。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值