AI相关概念
Top准确率
Top-1准确率
- Top-1 准确率是指「模型预测」的「最可能的类别」(即概率最高的类别)与「真实类别」一致的「比例」。
文章分类
Top-1准确率
x= 把一篇新闻文章给「文本分类模型」,它认为这篇文章「最可能属于"科技"类别」,而这篇文章的真实标签确实属于"科技"类别。继续用同样的方式测试模型对其他新闻文章的分类能力,记录所有预测正确的情况。假设测试了100篇新闻文章,模型正确预测了其中的92篇,预测的准确率是92%
f(x)=「是Top-1准确率」
Top-5准确率
Top-5 准确率是指在「模型预测」的「前五个最可能的类别」中,至少有一个与「真实类别」一致的「比例」。
识别动物
Top-5准确率
x={假设(动物识别模型)预测图片中的动物种类,对于某张(包含猫的图片),模型的预测结果按概率排序如下: 1.狗 2. 狮 3. 猫 🟢4. 狼 5. 熊
尽管猫不是模型预测的最高概率类别,但它在前五个选项中,因此这个样本被认为是正确分类的。继续用同样方式对其他图片进行分类,假设测试了100张图片,模型正确预测了其中的92张,预测的准确率是92%}
f(x)={是Top-5准确率}
「准确率」「模型评估指标」「机器学习任务评估方法」「深度学习模型评估」
mAP
mAP
在机器学习中,尤其是在目标检测和信息检索领域,mAP(mean Average Precision)是一个常用的性能评估指标。它衡量的是模型在预测时的准确性和稳定性。下面我将详细解释mAP的概念,并给出一个例子来帮助理解。
mAP的定义
-
Precision(精确率):在所有被「模型预测为正类」的样本中,「真正为正类」的比例。计算公式为:
-
Recall(召回率):在「所有实际为正类」的样本中,被「模型正确预测为正类」的比例。计算公式为:
-
AP(Average Precision):对于单个类别,AP是精确率在各个召回率水平上的平均值。通常通过绘制Precision-Recall曲线,然后计算曲线下的面积来得到AP。
-
mAP(mean Average Precision):在多类别问题中,mAP是所有类别AP的平均值。对于每个类别,计算其AP,然后求这些AP的平均值。
例子
-
真正例(True Positives, TP):
-
真正例是指模型正确预测为正类的样本数量。换句话说,就是模型预测为正类,而实际上也确实为正类的样本。
-
例如,在疾病检测中,如果模型预测某个病人患有疾病,而实际上这个病人确实患有这种疾病,那么这就是一个真正例。
-
-
假正例(False Positives, FP):
-
假正例是指模型错误预测为正类的样本数量。也就是说,模型预测为正类,但实际上这些样本并不是正类的。
-
继续上面的例子,如果模型预测某个病人患有疾病,但实际上这个病人并没有这种疾病,那么这就是一个假正例。
-
-
假负例(False Negatives, FN):
-
假负例是指模型错误预测为负类的样本数量。也就是说,模型预测为负类,但实际上这些样本是正类的。
-
在疾病检测的例子中,如果模型预测某个病人没有疾病,但实际上这个病人确实患有这种疾病,那么这就是一个假负例。
-
假设我们有一个目标检测任务,模型需要识别图像中的猫和狗。我们有以下预测结果:
-
猫:
-
真正例(TP):5
-
假正例(FP):2
-
假负例(FN):1
-
-
狗:
-
真正例(TP):4
-
假正例(FP):1
-
假负例(FN):2
-
对于猫:
-
精确率和召回率的组合可能是:
-
召回率 = 0.83, 精确率 = 0.71
-
召回率 = 1.00, 精确率 = 0.5
-
对于狗:
-
精确率和召回率的组合可能是:
-
召回率 = 0.67, 精确率 = 0.80
-
召回率 = 1.00, 精确率 = 0.67
-
计算每个类别的AP:
-
猫的AP = $${(0.71 + 0.5)}{2} = 0.605$$
-
狗的AP = $${(0.80 + 0.67)}{2} = 0.735$$
最后,计算mAP:
- mAP = $${0.605 + 0.735}{2} = 0.67$$
这个mAP值告诉我们,模型在猫和狗的检测任务上平均表现良好,尤其是在狗的检测上表现更好。
mAP是一个非常有用的指标,因为它同时考虑了模型的精确率和召回率,能够更全面地评估模型的性能。
独热编码
独热编码
「One hot encode」(独热编码)是一种常用的数据编码方式,特别用于将类别特征转换为可用于机器学习算法的数值型特征。其核心概念内涵如下:
独热编码将每个类别(category)用一个长度为类别数的向量表示,其中只有对应类别的那个维度为1,其余均为0。这样可以避免类别之间的顺序或大小关系的错误假设,使类别数据适合输入到多数机器学习模型中。
数学表达:
假设有n个类别,第i个类别的独热编码为一个n维向量,只有第i位是1,其余是0。
自然语言词汇编码(正例)
假设有3个单词:[“cat”, “dog”, “bird”]
- “cat” → [1, 0, 0]
- “dog” → [0, 1, 0]
- “bird” → [0, 0, 1]
在文本分类、情感分析等NLP任务中,词汇常用独热编码进行向量化。
医学中的血型分类(正例)
假设有血型A、B、AB、O四种类别,采用独热编码:
- A型 → [1, 0, 0, 0]
- B型 → [0, 1, 0, 0]
- AB型 → [0, 0, 1, 0]
- O型 → [0, 0, 0, 1]
这样可以用于医学数据分析、疾病预测等模型输入。
「身高」进行独热编码(反例)
身高是连续数值型变量(如160cm、170cm、180cm),用独热编码是不合适的。
- 如果把每个身高数值都当成一个类别,编码会变成极高维且稀疏,且丢失了身高的大小关系和连续性。
正确做法:数值型特征应标准化或归一化,而不是独热编码。