在深度学习中,我们是否根据训练数据集学习了一个连续分布?

人工智能 神经网络 深度学习 概率分布 计算学习理论
2021-10-31 11:05:27

至少在某种程度上,也许并非总是端到端的,但深度学习总是学习一个函数,本质上是从域到范围的映射。至少在大多数情况下,域和范围将是多变量的。

那么,当模型学习映射时,考虑到域空间中的每个点都有一个映射,它是否会尝试根据训练集及其对应的映射来学习一个连续分布,并从这个学习的分布中映射出不可见的示例?可以这样说所有的预测算法吗?

如果是,那么二进制分类是否可以与在特定内核空间中具有超平面(如支持向量分类)进行比较,并且可以将使用超平面的分类问题的想法一般扩展到任何深度学习问题学习映射?

它还将解释为什么深度学习需要大量数据,以及为什么它在简单问题上比其他学习算法效果更好。

1个回答

好吧,这里有一些问题......

它(深度学习)是否尝试根据训练集及其对应的映射来学习连续分布,并从该学习分布中映射未见过的示例?

是的。谈到深度人工神经网络,他们尝试使用每个神经元中的连续激活函数来学习连续分布。因此,输出也是一个连续函数来表示一个连续的概率分布。看不见的例子的问题是在训练集中需要类似的例子;否则,网络的权重和偏差将不会在未见示例周围的空间区域中进行调整。想象一个神经网络学习一个函数 y = x,如果我们在训练期间只呈现 0 到 10 之间的值,我们应该期望它只能对 y 的值在 0 到 10 之间做出好的预测。这并不意味着它不会预测其他值,但预测不会那么准确或与预期相差甚远。这是因为网络并没有试图猜测用于生成 y 的函数是什么,而只是试图调整其参数以使其内部函数为给定的 x 生成预期的 y。这就是深度神经网络需要大量数据的原因。在一维空间中更容易提供覆盖我们希望网络学习的域子集的示例。当我们使用多维空间时,我们需要更多的例子来很好地表示用作域的超空间。

可以对所有预测算法说这个(地图看不见的例子)吗?

是的,它应该。否则,该算法将无法很好地泛化。一个好的预测算法是可以使用更少的训练样本预测看不见的例子的算法。

使用超平面分类问题的想法是否可以普遍扩展到任何学习映射的深度学习问题?

在深度神经网络的情况下,结果更像是,对于给定的输入值,返回它属于某个类的概率。对于二元分类,网络将有一个输出。sigmoid 函数将此输出调制到 0 和 1 之间的范围内。我们可以将输出解释为属于两个可能类别中的一个的概率。要知道另一个类的概率,我们从 1 中减去它。对于三个或更多类,我们将需要三个或更多从 0 到 1 的输出,每个输出是属于其中一个类的概率。在这种情况下,输出也通过 softmax 函数进行归一化,保证所有输出的总和等于 1,作为概率分布。

还将解释为什么深度学习需要大量数据,以及为什么它在解决简单问题时通常比其他学习算法效果更好。

已经部分解释了......需要大量数据是为了对用作域的超平面有一个很好的表示。深度神经网络之所以能很好地工作,是因为它们能够代表不同的模型。它们是一个非常“灵活”的函数,可以弯曲以近似训练集中数据与预期目标之间存在的关系。更简单的算法,例如线性模型,具有较少的表示能力,它们仅限于较小的模型集。尽管许多模型可以线性逼近(因为输入和输出几乎遵循线性关系),但神经网络将能够更好地学习数据集的细微差别。这也可能是神经网络的祸根,因为它们可能会尝试学习训练集的每一个细节