前言
仅记录学习过程,有问题欢迎讨论
贝叶斯算法:
P(B1) = 结果为奇数
P(B2) = 结果为偶数
P(A) = 结果为5
P(A) = P(B1) * P(A|B1) + P(B2) * P(A|B2) = 1/2 1/3 + 1/20
支持向量机:less use now
svm尝试找一个最优的决策边界,来解决一个 二分类的问题解决不了线性不可分问题,只能以更高维来区分数据(升维 类似于bert中的 feed forward)使用 核函数解决高纬度向量内积问题
深度学习
TextRNN(LSTM):
是RNN的变体,相比于tansformer,没那么复杂,东西没那么多
一定程度规避传统RNN会导致信息遗忘和梯度消失的问题
(把前向和当前的信息做一定筛选【门】后保存)
CNN(一维):
是包含一定的语序信息的
通过一维卷积对文本进行编码,
编码后的文本通过pooling转化为向量,用于分类
Bert
取 【CLS】token对应的向量整句话的向量求MAX/AVG pooling需要再接一层来实现想要的需求,需要微调
(但是准确率还是比RNN高)
数据稀疏问题(新数据测试不理想):
添加标注数据!!
构造训练样本
换模型
调整阈值,用召回率换准确率(两者概率相反)
减少样本类别
标签不均衡问题:
过采样:复制指定类别样本,可以重复
降采样:随机下采样,可以减少类别样本数量
多标签分类问题:
1.分解为多个独立的二分类
(分为多个模型来判断数据是否属于该类)
2.转化为多分类问题(同时属于13/12/23类别)
代码
待补充