AI测试 机器学习 01-1

唱跳rap打篮球 · 2025年07月05日 · 86 次阅读

大家好!我是新人唱跳 rap 打篮球,是一个立志 2025 年开始每周都能水一篇文章的人


最近业务上开始接触机器学习相关的东西,自己对这一块的东西完全摸不着头脑

没办法只能花时间去学习,至少懂一点点才能更好的去测试相关的东西,不然连预期结果是啥都搞不清楚了

去搜索了一下之前高飞哥写的一些文章,准备收藏着慢慢看,收藏了就算学过了😂

什么是机器学习

机器学习涵盖的内容太多了,这里写一下我学习的两种定义

机器学习之父Arthur Samuel对机器学习的定义是:在没有明确设置的情况下,使计算机具有学习能力的研究领域。

国际机器学习大会的创始人之一Tom Mitchell对机器学习的定义是:计算机程序从经验 E 中学习,解决某一任务 T,进行某一性能度量 P,通过 P 测定在 T 上的表现因经验 E 而提高。

用通俗的一个例子解释一下,想象一下这样一个场景

周末你约了两个同事老王、阿奇来打篮球,老王来了,阿奇没来。

你想打电话给阿奇,老万说:“你别打电话了,昨天阿奇加班了,而且和女朋友吵架了,再加上他平时很少打球,他肯定不想”

这种情况下,你觉得阿奇会来吗?

实际上我们运用了 “推理”。我们人们大脑做这样的推理似乎是自然而然的事儿。

但对于计算机来说,如果它也像小李那样有老王的 “历史数据”,知道他加班、知道他和女朋友吵架了、知道他很少打球,那计算机能推出这个结论吗?

对于长期以来只能按照人类预设规则解决问题的机器来说,这不是一件容易的事。

机器学习厉害之处就在于,它利用计算机的运算能力,从大量的数据中发现一个 “函数” 或 “模型”,并通过它来模拟现实世界事务间的关系,从而实现预测、判断等目的。

我们可以这样理解,机器学习的本质特征,就是从数据中发现规则。

虽然说我们希望机器最终能主动地去预测,但在此之前,机器具体选什么模型、如何训练、怎么调参,还是需要人去在这个过程中给机器很多指导。

数据集

就拿预测阿奇会不会来打球这件事来说,要预测阿奇来不来打球,可以建立一个 “预测阿奇来不来” 的函数

而 “加班”、“女朋友吵架”、“平时打球少” 都是输入这个函数的变量,我们设置为 x1、x2、x3,这些变量都会影响到函数的结果,也就是 f(x,y,z) 函数的建立

而 f(x1,x2,x3) 的结果就是阿奇来不来打球,y=f(x1,x2,x3),这里的 x1、x2、x3 叫自变量,y 叫做应变量

在机器学习中,这 x1,x2,x3 这些变量,就叫做特征(feature),y 叫做标签(label)。

而一批历史特征和一批历史标签的集合,就是机器学习的数据集。

知道这些,你可以已经有一点感觉了,机器到底是怎么学习的

就是在已知数据集的基础上,通过反复的计算,选择最贴切的函数去描述数据集中 x1,x2,x3...xn 和 y 之间的因果关系。

这个过程,就是机器学习中的训练,也叫拟合


最初用来训练的数据集,就是训练数据集(training dataset)。

当机器通过训练找到了一个函数,我们还需要验证和评估,也就是说,这时候我们要给机器另一批同类数据特征,看机器能不能用这个函数推出这批数据的标签。

这一过程就是在验证模型是否能够被推广、泛化,而此时我们用到的数据集,就叫验证数据集(validation dataset)。


在验证、评估的过程里,我们就是要验证这个模型函数到底好不好。

如果这个模型函数通过了评估,那就可以在测试数据集(test dataset)上做最终的测试;

如果通过不了,就需要找新的模型。

到这里,是不是发现机器学习好像也没那么难理解,也发现数据集很重要,数据集中的标签对机器学习模型有很重要的指导意义。

因为机器必须根据已有的数据来找到特征和标间之间的关系。

但其实机器学习也不一定要标签,具体可以分为三种情况看

  • 训练数据集全部有标签,叫监督学习(supervised learning)
  • 训练数据集没有标签,叫做无监督学习(unsupervised learning)
  • 在训练数据集中,有的数据有标签,有的数据没有标签,我们叫做半监督学习(semi-supervised learning)

目前,监督学习是应用最广泛的主流机器学习算法,后面有机会我们也会介绍相关的内容

今天就分享到这里了,做个好梦


我是新人唱跳 rap 打篮球,是一个立志 2025 年开始每周都能水一篇文章的人,希望我的文章可以给你带来好心情!

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册