当前位置: 首页 > news >正文

NLP 文本分类任务核心梳理

解决思路

  • 分解为多个独立二分类任务
  • 将多标签分类转化为多分类问题
  • 更换 loss 直接由模型进行多标签分类

数据稀疏问题

标注更多数据,核心解决方案:

  • 自己构造训练样本
    数据增强,如使用 chatGPT 来构造数据
  • 更换模型
    减少数据需求
  • 增加规则弥补
  • 调整阀值,用召回率替换准确率
  • 重新定义类别(类别合并)

标签不均衡问题

  • 过采样
    复制指定类别样本,在采样中重复
  • 降采样
    减少多样本类别的采样,随机使用部分样本
  • 增加标注数据
  • 调整样本权重
    调整损失函数的权重
  • 非神经网络的方法
    • 贝叶斯
      • 全概率公式
        在这里插入图片描述
      • 贝叶斯公式
        在这里插入图片描述
        • 核心在于词频的统计
        • 需要做词的独立性假设,形成每个事件在某个事件下发生概率的相乘
          这种假设是没有保障的,需要加一平滑等策略,保证概率不为0,没有考虑语序,没有词义。在这里插入图片描述
      • 适用于样本分布较均衡的语料
        • 简单高效
        • 训练结果有一定的可解释性
        • 训练数据可以分批处理
    • SVM 支持向量机
      • 找到一个决策边界
        • 即一条直线、平面或超平面
          • 实现数据的线性可分
        • 距离两个类别最近的样本距离最远
      • 是非线性不可分的
        • 可以通过使用特别的映射关系,将数据映射到高维解决
        • 通过核函数解决高维度计算耗时问题
      • 主要靠核函数寻找决策边界
      • 没有像贝叶斯很好的可解释性,没有神经网络的效果好
  • 神经网络方法
    • fastText
      • 结构简单
        1. embedding
        2. mean pooling
        3. fc -> class_num
      • 参数少,所以效果不会很好
        抛弃了语序信息
    • TextCNN
      对位相乘再相加,是有语序信息的,可以堆叠多层使用。
      • 分类
        • LSTM
        • GRU
    • Gated CNN
      在这里插入图片描述
      • 过滤 AB 相乘后为 0 部分
      • 放缩 B 中在 0-1 的部分
    • Bert
      实现方式:
      1. 取[cls] token 对应的向量
      2. 将整句话的向量取 max/average pooling
      3. 将 bert 编码后的向量再输入 LSTM 或者 CNN
      4. 将bert 中间层的结果取出,加入运算
    • Bert + RNN 或 CNN
      由于Bert 权重不是随机的,RNN 或 CNN 权重随机,为防止Bert 权重失去意义,RNN 最多一层或双向,或 CNN 最多 2-3 层。
    • 拓展
      • 对比学习
      • 海量向量查找
        • 向量数据库
          Annoy
          在多个接近的分支上查找
        • KD 树
          实现空间分割,局部对比
          均方差
          中位数
    • 目的
      预设文文本所属的类别
http://www.lryc.cn/news/444191.html

相关文章:

  • k8s中pod的创建过程和阶段状态
  • NSSCTF刷题篇1
  • [数据集][目标检测]棉花叶子病害检测数据集VOC+YOLO格式977张22类别
  • 产品经理面试整理-常见面试问题
  • 数据库(选择题)
  • 粒子向上持续瀑布动画效果(直接粘贴到记事本改html即可)
  • 卷积神经网络(CNN):深度学习中的视觉奇迹
  • Vue:加载本地视频
  • 论文阅读:A Generalization of Transformer Networks to Graphs
  • 中国计量大学《2022年801+2022年819自动控制原理真题》 (完整版)
  • 创客匠人运营课堂|增强用户的参与度和忠诚度,这一个工具就能实现!
  • k8s 微服务 ingress-nginx 金丝雀发布
  • Elasticsearch不停机切换(上云)方案
  • 归纳一下Invoke,beginInvoke,还有InvokeRequire
  • Prompt最佳实践|指定输出的长度
  • 离散制造 vs 流程制造:锚定精准制造未来,从装配线到化学反应,实时数据集成在制造业案例中的多维应用
  • 教你一招:在微信小程序中为用户上传的图片添加时间水印
  • MySQL --基本查询(上)
  • mysql学习教程,从入门到精通,SQL 删除数据(DELETE 语句)(19)
  • RoguelikeGenerator Pro - Procedural Level Generator
  • 反病毒技术和反病毒软件(网络安全小知识)
  • 位图与布隆过滤器
  • 【题解】—— LeetCode一周小结38
  • EvilScience靶机详解
  • 算法练习题24——leetcode3296移山所需的最小秒数(二分模拟)
  • excel 单元格一直显示年月日
  • 【线程】线程的控制
  • 掌握 Spring:从新手到高手的常见问题汇总
  • 机器学习——Bagging
  • 日志体系结构与框架:历史、实现与如何在 Spring Cloud 中使用日志体系