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 树
          实现空间分割,局部对比
          均方差
          中位数
    • 目的
      预设文文本所属的类别
相关推荐
IT_陈寒1 小时前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
甲维斯2 小时前
Claude Opus5手搓“NewAPI Plus”首轮成果!
人工智能
程序猿DD2 小时前
分享两个我每天都在用的 Skill,拖进豆包就能跑,限时领 30 天会员
人工智能
阿里云大数据AI技术2 小时前
Agentic Search 2.0:从单轮对话迈向企业级 AI 搜索自动驾驶Agent
人工智能·elasticsearch·agent
东风破_2 小时前
从 messages 数组到 Memory:大模型到底是怎么“记住”上一轮对话的?
人工智能
AEI2 小时前
四年间大模型的演进历程
人工智能·面试·程序员
狂师3 小时前
阿里开源:skill-up,一款Agent Skill 评测工具!
人工智能·开源·agent
武子康3 小时前
同一套 Agent Runtime,为什么 Web、Headless 和 Python SDK 仍然不是同一个产品
人工智能·llm·agent
天天代码码天天3 小时前
一个纯 C 的 OCR Runtime,又向前走了一步:lw.PPOCR.C preview.5 发布
人工智能
程序员cxuan3 小时前
Claude 官方的学习教程,太强了。
人工智能·后端·程序员