ML 模型和函数之间的根本区别是什么?

人工智能 机器学习 比较 数学 定义 楷模
2021-10-24 15:27:45

模型可以粗略地定义为能够解决 ML 任务的任何设计模型的示例是神经网络、决策树、马尔可夫网络等。

函数可以定义为一组有序对,具有从域到共域/范围的一对多映射。

从形式上讲,它们之间的根本区别是什么?

4个回答

作为一组函数的模型

在机器学习的某些情况下,模型可以被认为是一组函数,所以这是第一个区别。

例如,具有任意参数向量的神经网络θRm通常表示为模型,那么这些参数的特定组合就代表了特定的功能。更具体地说,假设我们有一个具有 2 个输入、1 个隐藏神经元的神经网络(具有 ReLU 激活函数,表示为ϕ,遵循输入的线性组合)和 1 个输出神经元(具有 sigmoid 激活函数,σ)。输入连接到唯一的隐藏单元,这些连接具有实值权重。如果我们忽略偏差,那么有3个参数,可以在参数向量中分组θ=[θ1,θ2,θ3]R3. 该神经网络表示的函数集定义如下

(1)f(x1,x2)=σ(θ3ϕ(x1θ1+x2θ2)),

在这种情况下,方程1表示模型,给定参数空间Θ=R3. 对于任何特定的值θ1,θ2,θ3可以,我们有一个特定的(确定的)函数f:R[0,1].

例如,θ=[0.2,10,0.4]表示一些特定的功能,即

(2)f(x1,x2)=σ(0.4ϕ(x10.2+x210.0))
您可以为某些输入值绘制此函数(使用 Matplotlib)以查看其外观。注意x1x2可以是任意的(因为这些只是输入,我假设它们是实数)。

这种对模型的解释大致相当于计算学习理论中对假设类(或空间)的定义,它本质上是一组函数因此,模型的这个定义对于理解神经网络的通用逼近定理很有用,它表明你可以找到一组特定的参数,这样你就可以在满足某些条件的情况下任意地近似计算某个给定的函数。

这种解释也可以应用于决策树、HMM、RNN 和所有这些 ML 模型。

强化学习模型

术语模型有时也用于指代概率分布,例如,在强化学习的上下文中,其中p(s,rs,a)是下一个状态的概率分布s和奖励r给定当前状态s和行动a在那个状态下拍摄s. 检查此问题以获取更多详细信息。概率分布也可以被认为是一组(可能是无限大的)函数,但它不仅仅是一组函数,因为您还可以从概率分布中采样(即概率分布存在一些随机性)。因此,概率分布可以被认为是一个统计模型,也可以用来表示它。检查这个答案

作为模型的函数

一个特定的函数(例如2) 也可以是模型,因为它模拟(或近似)另一个函数。换句话说,人们可能会使用术语模型来指代试图逼近您想要建模/逼近/计算的另一个函数的函数。

任何模型都可以被认为是一个函数。术语“模型”仅表示以特定方式使用的函数,即逼近一些其他感兴趣的函数。

每个模型都是一个函数。并非每个功能都是模型。

一个函数唯一地将某个集合的元素映射到另一个集合的元素,可能是同一个集合。

每个 AI 模型都是一个函数,因为它们是作为计算机程序实现的,每个计算机程序都是一个函数,它在程序启动时将内存和存储中的位序列组合以及输入唯一地映射到内存和存储中的位序列,加上输出,在程序终止时。

但是,“模型”非常具体地表示某物。取逻辑曲线:

f(x)=L1+ek(xx0)

给定任意实数值L,k, 和x0,这是一个函数。然而,鉴于从数据中学到的更具体的价值,它可以成为人口增长的模型。

类似地,权重初始化为全零的神经网络是一个函数,但它是一个非常无趣的函数,具有相当有限的 codomain{0}. 但是,如果您随后通过向网络提供一堆数据来训练网络,直到权重收敛以给出与某些现实世界生成过程大致对应的预测或动作,那么您现在就拥有了该生成过程的模型。

简单来说,神经网络模型是一种函数逼近器,它试图拟合假设函数的曲线。函数本身有一个方程,它会生成一条固定曲线:

在此处输入图像描述

如果我们有方程(即函数),我们就不需要神经网络来处理它的输入数据。然而,当我们只有一些关于它的曲线(或输入和输出数据)的概念时,我们会寻找一个函数逼近器,以便对于新的、看不见的输入数据,我们可以生成输出。

训练这个神经网络就是尽可能接近原始(未知函数)。