美文网首页
文本情感分类

文本情感分类

作者: dreampai | 来源:发表于2019-12-30 18:35 被阅读0次

    传统模型——基于情感词典

    • 输入句子,预处理
    • 文本分词
    • 训练情感词典(积极消极词汇、否定词、程度副词等)
    • 判断规则(算法模型)
    • 情感分类

    文本预处理

    使用正则表达式,过滤掉我们不需要的信息(如 Html 标签等)

    句子自动分词

    • jieba 中文分词
    • HanLp 中文分词
    • 中科院分词
    • ...

    载入情感词典

    • 积极情感词典
    • 消极情感词典
    • 否定词典
    • 程度副词词典

    文本情感分类

    • 每个积极情感词语赋予权重 1
    • 每个消极情感词语赋予权重 -1
    • 否定词会导致权值反号
    • 程度副词则让权值加倍
    • 最后,根据总权值的正负性来判断句子的情感

    优化点

    • 考虑句子的类型(祈使句、疑问句等)
    • 每个词语(考虑主语、谓语、宾语等)
    • 情感词典的自动扩充(无监督式的词频统计)
      通过已有的模型对评论数据进行情感分类,然后在同一类情感(积极或消极)的评论集合中统计各个词语的出现频率,最后将积极、消极评论集的各个词语的词频进行对比。某个词语在积极评论集中的词频相当低,在消极评论集中的词频相当高,那么我们就有把握将该词语添加到消极情感词典中,或者说,赋予该词语负的权值。

    深度学习模型

    标准模型

    • 标注语料的收集
    • 模型阈值选取问题
    • word2vec 将词语转换为向量
    • CNN、RNN、LSTM 等网络模型,特征抽取句子向量

    算法步骤

    • 分词
    • 词向量
    • 句向量(LSTM)
    • 分类

    分词 OR 不分词

    “端到端”的模型:能够直接将原始数据和标签输入,然后让模型自己完成一切过程——包括特征的提取、模型的学习。

    • one hot:以字为单位,不分词,将每个句子截断为200字(不够则补空字符串),然后将句子以“字-one hot”的矩阵形式输入到LSTM模型中进行学习分类
    • one embedding:以字为单位,不分词,,将每个句子截断为200字(不够则补空字符串),然后将句子以“字-字向量(embedding)“的矩阵形式输入到LSTM模型中进行学习分类
    • word embedding:以词为单位,分词,,将每个句子截断为100词(不够则补空字符串),然后将句子以“词-词向量(embedding)”的矩阵形式输入到LSTM模型中进行学习分类

    更好的更新方案

    设定一个阈值为0.6,那么模型对某个正样本的输出大于0.6,我就不根据这个样本来更新模型了,模型对某个负样本的输出小于0.4,我也不根据这个样本来更新模型了,只有在0.4~0.6之间的,才让模型更新,这时候模型会更“集中精力”去关心那些“模凌两可”的样本,从而使得分类效果更好

    修正的交叉熵损失

    相关文章

      网友评论

          本文标题:文本情感分类

          本文链接:https://www.haomeiwen.com/subject/dpgmoctx.html