Hexo

凡事预则立,不预则废


  • Home

  • Tags

  • Archives

  • Navigation

  • Search

ML——直推式学习和归纳式学习

本文解释 直推式学习(Transductive Learning) 和 归纳式学习(Inductive Learning) 的区别


归纳式学习 (Inductive Learning)

  • 一句话定义 :通过训练数据学习一个通用的模型 ,然后将该模型应用于未知的测试数据
  • 目标 :从具体样本中归纳(名字来源)出一般规律,适用于任何未来的数据
  • 特点 :
    • 训练阶段和测试阶段是分开的
    • 模型在训练时不知道测试数据的具体情况
  • 典型场景 :大多数监督学习任务(如图像分类、文本分类等)
  • 核心特点 :训练时测试数据不可见

直推式学习 (Transductive Learning)

  • 一句话定义 :利用训练数据和特定的测试数据(未标注)共同学习,直接(名字来源)预测这些测试数据的标签
  • 目标 :针对当前已知的测试数据优化预测,而非构建通用模型
  • 特点 :
    • 训练时已知测试数据的特征(但无标签),利用这些信息优化预测
    • 模型仅适用于当前的测试数据,不能直接泛化到新数据
  • 典型场景 :半监督学习、图节点分类(如社交网络用户分类)
  • 核心特点 :训练时测试数据可见

附录:举例-垃圾邮件分类

  • 任务定义 :判断邮件是否为垃圾邮件

归纳式学习

  • 仅用已标注的训练数据(带“垃圾/正常”标签的邮件)训练一个模型(如SVM、神经网络)
  • 将模型应用于未来收到的任何新邮件

直推式学习

  • 同时利用已标注邮件和未标注邮件的特征分布(如词频、发件人)训练模型
  • 模型发现未标注邮件中某些特征与训练数据中的垃圾邮件相似,直接预测它们的标签
  • 特别说明 :模型针对这批特定的测试邮件优化 ,但不保证对新邮件的效果

为什么需要直推式学习?

  • 一般来说,大部分场景都使用归纳式学习即可
  • 当测试数据分布与训练数据分布不同时,直推式学习可以通过利用测试数据的特征分布提升当前任务的性能,但牺牲泛化性
  • 特别地,当训练数据和测试数据本身具有一定结构(如图数据、时空数据)时,直推式学习可以利用这些结构信息对无标签的测试数据做预测

ML——模型评估指标总结

各种模型评估指标总结,持续更新


分类模型

  • 参考:https://www.cnblogs.com/zongfa/p/9431807.html

Accuracy,准确率

  • 公式:$$ \text{Accuracy} = \frac{TP+TN}{TP+TN+FP+FN} $$
  • 直观,但不利于不平衡样本

Recall,召回率

  • 公式:$$ \text{Recall} = \frac{TP}{TP+FN} $$

Precision,精确率

  • 公式:$$ \text{Precision} = \frac{TP}{TP+FP} $$

F1 Score

  • 公式:$$ \text{F1 Score} = \frac{2 * \text{Precision} * \text{Recall}}{\text{Precision}+\text{Recall}} $$
  • 综合考虑模型”求精“和”求全“的能力
  • 关键词:F1-Score, F1 Score, F1 分数

AUC

  • 形式化定义:AUC是ROC曲线下方的面积,其中ROC曲线的横坐标是伪阳性率(也叫假正类率,False Positive Rate),纵坐标是真阳性率(真正类率,True Positive Rate)
  • 本质:任意取两个样本,一个正样本和一个负样本( \( \forall x^+, x^-\) ),模型预测正样本为正的概率分为 \(Score_\theta(y=1|x^+)\),模型预测正样本为正的概率分为 \(Score_\theta(y=1|x^-)\),则AUC为:
    $$ AUC_\theta = P(Score_\theta(y=1|x^+)>Score_\theta(y=1|x^-))$$
  • 真实实现时,可以统计所有正负样本对,若正样本预估值大于负样本,则累计分数+1,最后用累计分数除以所有可能的正负样本对数量
    $$ AUC_\theta = \frac{Count(S_+>S_-)}{Count(S_+) * Count(S_-)}$$
  • 具体代码实现:
    • 将样本按照预估分数倒序排列,从大到小
    • 定义四个变量:正样本总数 \(M\),负样本总数 \(N\),已访问负样本数量 \(X=0\),正样本大于负样本的样本对数量 \(Z=0\)
    • 依次访问所有样本:
      • 若为正样本,则 \(Z = Z + (N-X)\)
      • 若为负样本,则 \(X = X + 1\)
    • 最后计算: \(AUC = \frac{Z}{M * N}\)

回归模型

  • 参考:https://www.cnblogs.com/HuZihu/p/10300760.html
  • 参考:https://blog.csdn.net/guolindonggld/article/details/87856780

MSE

  • MSE (Mean Square Error,均方误差)
  • 也常用作损失函数
    $$\text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2$$
    • \(n\):样本数量
    • \(y_i\):第 \(i\) 个样本的真实值
    • \(\hat{y}_i\):第 \(i\) 个样本的预测值

RMSE

  • RMSE (Root Mean Square Error,根均方误差)
    $$\text{RMSE} = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2}$$

MAE

  • MAE (Mean Absolute Error,平均绝对误差)
    $$\text{MAE} = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y}_i|$$

MAPE

  • MAPE (Mean Absolute Percentage Error,平均绝对百分比误差)
    $$\text{MAPE} = \frac{1}{n} \sum_{i=1}^{n} \left| \frac{y_i - \hat{y}_i}{y_i} \right| \times 100%$$
    • 注:这个指标对分母要求很高,分母存在极小值时指标波动会非常大
      • 比如当 \(y_i=0\) 时,MAPE 无定义,这是其核心缺陷

SMAPE

  • SMAPE (Symmetric Mean Absolute Percentage Error,对称平均绝对百分比误差)
    $$\text{SMAPE} = \frac{1}{n} \sum_{i=1}^{n} \frac{|y_i - \hat{y}_i|}{\frac{1}{2}(|y_i| + |\hat{y}_i|)} \times 100%$$
    • 结果范围为 \([0, 200%]\)
  • SMAPE 也有简化版定义:分母直接用 \(|y_i| + |\hat{y}_i|\),此时公式为
    $$\text{SMAPE} = \frac{2}{n} \sum_{i=1}^{n} \frac{|y_i - \hat{y}_i|}{|y_i| + |\hat{y}_i|} \times 100%$$
    • 结果范围为 \([0, 100%]\)
  • 两种形式均常见,均被广泛使用,需根据场景选择

WMAPE

  • WMAPE (Weighted Mean Absolute Percentage Error,加权平均绝对百分比误差)
    $$\text{WMAPE} = \frac{\sum_{i=1}^{n} |y_i - \hat{y}_i|}{\sum_{i=1}^{n} |y_i|} \times 100%$$
  • WMAPE 也有按自定义权重 \(w_i\) 的通用形式:
    $$\text{WMAPE} = \frac{\sum_{i=1}^{n} w_i |y_i - \hat{y}_i|}{\sum_{i=1}^{n} w_i |y_i|} \times 100%$$
    • 默认权重 \(w_i=1\) 时退化为之前的公式
    • WMAPE 解决了 MAPE 中 \(y_i=0\) 无定义的问题
  • WMAPE 是 MAPE 的加权改进版,避免了分母为 0 的问题,更适合实际业务场景

排序模型

  • 参考:https://www.cnblogs.com/by-dream/p/9403984.html

DCG

  • DCG(Discounted Cumulative Gain,累计收益折扣)
  • 核心作用:衡量排序结果的质量,考虑位置对价值的衰减(越靠前的结果权重越高)
    $$\text{DCG}_p = \sum_{i=1}^{p} \frac{\text{rel}_i}{\log_2(i + 1)}$$
  • 等价形式(更常用,便于与 IDCG 对齐):
    $$\text{DCG}_p = \text{rel}_1 + \sum_{i=2}^{p} \frac{\text{rel}_i}{\log_2(i)}$$
    • \(p\): 排序结果的截断位置(如 Top-10 则 \(p=10\))
    • \(\text{rel}_i\): 第 \(i\) 个位置结果的相关性分数(通常为非负整数,如0=不相关、1=相关、2=高度相关)
    • \(\log_2(i+1)$/$\log_2(i)\): 位置折扣因子,体现“越靠前的结果越重要”的特性
  • 补充:DCG 还有另一种常见形式(引入指数缩放相关性):
    $$\text{DCG}_p = \sum_{i=1}^{p} \frac{2^{\text{rel}_i} - 1}{\log_2(i + 1)}$$
    • 该形式会放大高相关性结果的权重,适用于对“高度相关结果”更敏感的场景(如搜索排序)

NDCG

  • NDCG(Normalized Discounted Cumulative Gain,归一化累计收益折扣)
  • 核心作用:将 DCG 归一化到 [0,1] 区间,消除不同查询/任务间的结果尺度差异,便于跨场景比较
    $$\text{NDCG}_p = \frac{\text{DCG}_p}{\text{IDCG}_p}$$
    • \(\text{IDCG}_p\)(Ideal DCG,理想累计收益折扣):将所有结果按相关性从高到低完美排序后得到的 \(\text{DCG}_p\),即当前数据集下的最大可能 DCG 值,计算公式为:
      $$\text{IDCG}_p = \sum_{i=1}^{|REL_p|} \frac{\text{rel}^*_i}{\log_2(i + 1)} \quad (\text{或对应DCG的等价形式})$$
      • \(\text{rel}^*_i\) 为第 \(i\) 个位置的理想相关性分数,\(|REL_p|\) 为前 \(p\) 个位置中理想排序的结果数量
  • NDCG 的取值范围为 \([0,1]\): \(\text{NDCG}_p=1\) 表示排序结果完全理想,\(\text{NDCG}_p=0\) 表示排序结果完全无价值;
  • 当所有结果均无相关性(\(\text{rel}_i=0\))时,\(\text{DCG}_p=\text{IDCG}_p=0\),此时约定 \(\text{NDCG}_p=1\);
  • DCG/NDCG 是排序任务(如推荐系统、搜索引擎)的核心评估指标, \(p\) 的选择需贴合业务场景(如推荐系统常用 Top-5/Top-10,搜索常用 Top-20)

AP(Average Precision)与 MAP(Mean Average Precision)

  • AP 和 mAP 指标可参考:

校准模型

  • 参考:推荐系统(2)—— 评估指标
  • 参考:阿里妈妈展示广告预估校准技术演进之路

COPC

  • COPC(Click over Predicted Click)
    • COPC = 实际的点击率/模型预测的点击率
    • COPC 主要衡量model整体预估的偏高和偏低,同样越接近1越好,一般情况下在1附近波动
    • COPC 指标在展示广告上应用多一些

PCOC

  • PCOC(Predicted Click over Click)
    • PCOC = 模型预估的点击率/实际点击率,与COPC用途相同
    • COPC的倒数

PCOC指标是校准之后的点击率与后验点击率(近似真实概率)的比值,越接近于1,意味着在绝对值上越准确,大于1为高估,小于1为低估,是一种常用的高低估评价指标。但是PCOC存在一定局限性,举个例子:2万个样本,其中1万个样本的预估概率是0.2,后验概率是0.4,计算出PCOC是0.2/0.4=0.5,是显著低估的,另1万个样本PCOC是0.8/0.6= 1.3,明显是高估的。所以校准效果并不好,但是样本放一起看,校准后概率是(0.2+0.8)/2=0.5,后验概率是(0.4+0.6)/2=0.5,整体PCOC是1.0,表现完全正常。所以单一PCOC指标不能表征样本各维度下的校准水平。


净胜率模型

  • ANLP
    • 参考:论文《Scalable Bid Landscape Forecasting in Real-time Bidding》
    • 链接:https://arxiv.org/pdf/2001.06587.pdf
1…282283284…352
San Ye

San Ye

Stay Hungry. Stay Foolish.

704 posts
53 tags
© 2026 San Ye
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4