前面简单了解了大模型和专业模型的区别:
简单了解 GPT 模型
今天简单了解下机器学习的定义。
最早定义机器学习的,很可能是那位写出了第一个拥有机器学习能力的跳棋程序的IBM第一代程序员塞缪尔,他认为只要不用程序员显式地给机器编程就能够实现某些功能便是机器学习。 第一个在学术上符合今天机器学习思想的定义,是由司马贺在1959年所提出的: “如果某个系统可以从经验中改进自身的能力,那这便是学习的过程。” 这句话十分的简洁却极为有力,直接揭示了机器学习最本质的特征“从经验中改进自身”。 1998年,卡内基梅隆大学的汤姆·米切尔(Tom Mitchell,1951—)教授在他撰写的《机器学习》一书中,对司马贺的定义进行了一系列补充。
这个定义可以理解为:“假设某项评价指标可作为系统性能的度量(Performance,简称P),而这个指标可以在某类任务(Task,简称T)的执行过程中随着经验(Experience,简称E)增加而不断自我改进的话,那么我们就称该过程‘Process<P, T, E>’是一种学习行为”。
这个定义里明确列出了“任务T”“度量P”“经验E”“学习过程Process<P, T, E>”这几个符号,使得它读起来显得有一点拗口,但这些符号都是必要的,它们构成了机器学习一种最基础的形式体系,只要再结合几个具体例子,就可以使得这个定义变得形象。
比如“人机对弈”,机器学习采用每步落子位置对全局胜率的影响(度量P)来评价系统性能,在每一次对弈(任务T)中,基于机器学习算法的人机对弈软件,是根据历史棋局的对局数据(经验E),来修正用于根据棋盘局面推算每一步的最优落子位置的模型,通过越来越接近最佳落子位置的模型的输出结果,计算出当前形势下相对胜率最高的落子位置。
再譬如,人工智能另一个备受关注的应用方向“汽车自动驾驶”,机器学习采用各种路况下正确的驾驶操作的概率(度量P)来评价系统性能,在不同的路况的行驶过程(任务T)中,无人车是基于机器学习训练出来的模型实现自动驾驶的,而不是依赖程序员的代码编程来判断各种路况。
因为程序编码几乎不可能穷举出所有的可能的路况,必须根据长期行驶的路况和操作记录的分析结果,根据人类对各种路况应对的操作经验(经验E)来修正这个驾驶模型,然后由这个模型来决定在图像、速度等传感器提供的信息下,机器应该采取什么样的驾驶操作才是正确的。
上面这些机器学习的定义和例子,都是从机器学习的本质出发,即从它“是什么”、要“做什么”的角度来解释机器学习这个概念。
还有另一种在教科书中常见的表达形式,是从机器学习的过程元素入手,将机器学习分解为学习其执行过程中的三个部分,以机器学习是“怎么做”的角度来定义它的概念。
在李航老师的《统计学习方法》一书中,就提出机器学习由“模型”“策略”和“算法”三个要素构成:
机器学习=模型 策略 算法
● 模型是指机器学习所要产出的内容,它一般会以一个可被计算的决策函数或者条件概率分布函数的形式存在。把未知的新数据代入到这个模型中计算,就会得到符合真实情况的输出结果。
● 策略是指要按照什么样的准则进行学习,具体一点是按照什么样的准则选择出最优的模型。从宏观角度讲,一般我们都会以“减少模型的输出结果与真实情况差距”作为学习的准则,这里的“差距”同样也是以一个可被计算函数的形式来描述的,被称为“损失函数”。
● 算法是指如何依靠历史数据,把正确的模型中涉及的未知参数都找出来。在确定寻找最优模型的策略后,机器学习的问题便归结为寻找出模型最优参数的优化的问题。
机器学习是在追求让人类不用再去思考和设计的可能,让人类只需收集到足够的经验数据,让计算机能够自己去琢磨,找到模拟的办法,进而解决问题。
在大方向上,机器学习最初是从基于规则的机器学习开始的,现在正在朝着基于数据的机器学习在持续迈进。
基于规则和基于数据两种思维,分别对应了人类对现象规律和对现象表现的研究,也反映了符号主义学派和连接主义学派各自对机器学习的看法。
就像人类想要成长起来,无外乎读万卷书,行万里路,阅人无数,名师指路,几种方式的框架里面来了。