机器学习和神经网络 - 页 57

 

10.2 专家组合



第 10.2 讲——专家的混合[机器学习的神经网络]

1990 年代初期开发的混合专家模型训练多个神经网络,每个神经网络专门处理数据的不同部分。这个想法是每个数据机制都有一个神经网络,一个管理器神经网络根据输入数据决定分配哪个专家。这种方法对于更大的数据集变得更加有效,因为它可以利用大量数据来改进预测。在训练期间,模型的权重会增加,以专注于它们表现更好的情况。这种专业化导致个别模型在某些领域表现出色,而在其他领域表现不佳。关键是让每个专家专注于预测其优于其他专家的案例的正确答案。

在模型的范围内,有局部模型和全局模型。本地模型,如最近的邻居,专注于特定的训练案例并存储它们的值以供预测。全局模型(例如将一个多项式拟合到所有数据)更加复杂并且可能不稳定。在这两者之间,存在中间复杂性模型,这些模型对于具有不同制度和不同输入输出关系的数据集很有用。

为了使不同的模型适应不同的制度,需要将训练数据划分为代表每个制度的子集。仅基于输入向量的聚类并不理想。相反,应该考虑输入输出映射的相似性。基于输入输出映射的分区允许模型更好地捕捉每个区域中的关系。

有两种错误函数:一种鼓励模型合作,另一种鼓励专业化。鼓励合作涉及将所有预测变量的平均值与目标进行比较,并一起训练预测变量以最小化差异。但是,如果模型比单独训练每个预测器更强大,这可能会导致过度拟合。相反,促进专业化的误差函数将每个模型的输出分别与目标进行比较。经理确定分配给每个模型的权重,代表选择该模型的概率。大多数专家最终会忽略大多数目标,只关注他们表现良好的训练案例的子集。

专家混合模型的体系结构由多个专家、一个管理器和一个 softmax 层组成。经理根据输入数据确定选择每个专家的概率。使用专家的输出和经理的概率计算误差函数。通过对误差函数进行微分,可以得到训练专家和管理者的梯度。对于特定情况概率较低的专家将具有较小的梯度,从而保留其参数。对门控网络的输出进行微分提供了基于概率的专业化。

基于混合模型还有一个更复杂的成本函数,它涉及到高斯预测和最大似然估计。该函数在专家预测分布的混合下最大化目标值的对数概率。目标是最小化作为成本函数的负对数概率。

专家混合模型利用专门的神经网络来处理不同的数据体系,并有效地利用大数据集来改进预测。

 

第 10.3 讲——完全贝叶斯学习的概念



第 10.3 讲——完全贝叶斯学习的思想[机器学习的神经网络]

在本视频中,我将讨论完整的贝叶斯学习及其工作原理。在完整的贝叶斯学习中,我们的目标是找到所有可能参数设置的完整后验分布,而不是搜索单个最优设置。然而,计算这种分布对于像神经网络这样的复杂模型来说是计算密集型的。一旦我们有了后验分布,我们就可以通过对不同参数设置的预测进行平均来进行预测,这些参数设置由它们的后验概率加权。虽然这种方法对计算要求很高,但它允许我们使用复杂的模型,即使数据有限。

将复杂模型拟合到小数据集时,过度拟合是一个常见问题。然而,通过获得参数的完整后验分布,我们可以避免过度拟合。频率论者方法建议在数据有限时使用更简单的模型,假设拟合模型意味着找到最佳参数设置。但是对于完整的后验分布,即使数据很少,由于不同的参数设置具有显着的后验概率,预测也可能是模糊的。随着我们收集更多的数据,后验分布变得更加关注特定的参数设置,从而导致更准确的预测。

过度拟合的例子涉及将一个五阶多项式拟合到六个数据点,这似乎完美地拟合了数据。相反,只有两个自由度的直线不能很好地拟合数据。然而,如果我们从五阶多项式的合理先验开始并计算完整的后验分布,我们会得到更模糊但更明智的预测。后验分布中的不同模型在给定的输入值下做出不同的预测,并且平均而言,它们与绿线所做的预测密切相关。

从贝叶斯的角度来看,收集的数据量不应影响对模型复杂性的先验信念。通过使用几个参数在神经网络中近似完全贝叶斯学习,我们可以使用基于网格的方法。我们在参数空间上放置一个网格,允许每个参数有几个可选值。这些值的叉积为我们提供了参数空间中的网格点。评估每个网格点在预测数据中的性能并考虑其先验概率,我们分配后验概率。尽管计算量大,但这种方法避免了梯度下降和局部最优问题。当数据有限时,它的性能优于最大似然法或最大后验法。

为了对测试数据进行预测,我们通过对所有网格点的概率求和来计算给定测试输入的测试输出的概率。给定数据和先验的网格点的概率乘以给定输入和网格点得到测试输出的概率,决定了每个网格点的预测权重。我们还考虑了在生成测试答案之前修改网络输出的可能性。

在提供的说明完整贝叶斯学习的图像中,显示了一个具有四个权重和两个偏差的小网络。如果我们为每个权重和偏差考虑九个可能的值,则参数空间将有九个网格点的六次方。对于每个网格点,我们计算所有训练案例的观察输出概率,乘以特定于该网格点的先验概率。归一化这些概率为我们提供了所有网格点的后验概率。最后,我们使用这些网格点进行预测,通过其后验概率对每个预测进行权衡。

 

第 10.4 讲——让完整的贝叶斯学习变得实用



第 10.4 讲——使完整的贝叶斯学习实用[机器学习的神经网络]

在本视频中,我将解释如何使完整的贝叶斯学习适用于具有数千甚至数百万权重的大型神经网络。使用的技术是蒙特卡洛方法,乍一看似乎很奇怪。我们使用随机数生成器以随机方式探索权重向量的空间,但偏向于降低成本函数。正确完成后,这种方法有一个显着的特性:它根据后验分布中的概率对权重向量进行采样。通过对大量权重向量进行采样,我们可以获得完整贝叶斯方法的良好近似。

随着参数数量的增加,参数空间中的网格点数量呈指数增长。因此,当有足够的数据来呈现大多数参数向量极不可能时,为多个参数创建网格是不可行的。相反,我们可以专注于评估对预测做出重大贡献的一小部分网格点。使贝叶斯学习可行的一个想法是根据后验概率对权重向量进行采样。我们可以从总和中抽取项,而不是对等式中的所有项求和。我们为每个权重向量分配一个权重 1 或 0,这取决于它是否被采样。被采样的概率对应于权重向量的后验概率,从而得到正确的期望值。

右侧描述的标准反向传播通过沿着梯度移动并降低成本函数,沿着从初始点到最终单点的路径。相比之下,采样方法在每次权重更新时引入高斯噪声,导致权重向量不断游走并不断探索权重空间。这种游荡行为有利于低成本地区,并倾向于尽可能下坡。一个基本问题是权重访问空间中每个点的频率。红点代表游走时采集的样本,由于固有噪声,它们可能不在成本最低的区域。然而,经过充分的探索,马尔可夫链蒙特卡洛的一个显着特性出现了:权重向量成为来自真实后验分布的无偏样本。在后验概率下极有可能的权重向量比极不可能的权重向量更有可能用红点表示。这种称为马尔可夫链蒙特卡洛的技术可以使用具有数千个参数的贝叶斯学习。

前面提到的涉及添加高斯噪声的方法称为 Langevin 方法。虽然有效,但它不是最有效的方法。有更复杂的方法可用,它们在获得可靠样本之前需要更少的时间让权重向量探索空间。一种这样的方法是在完整的贝叶斯学习中使用小批量。在计算随机小批量成本函数的梯度时,我们获得了带有采样噪声的无偏估计。该采样噪声可用于提供马尔可夫链蒙特卡罗方法所需的噪声。 Welling 和合作者的一个聪明想法允许使用小批量方法从权重的后验分布中进行有效采样。这一进步应该使完整的贝叶斯学习对于需要用小批量训练来完成训练过程的更大的网络来说是可行的。

在完整的贝叶斯学习中使用小批量有几个优势。在计算随机小批量成本函数的梯度时,我们不仅获得了带有采样噪声的无偏估计,而且还利用了小批量方法的效率。这意味着我们可以训练更大的网络,否则这些网络无法通过完整的贝叶斯学习进行训练。

Welling 和他的合作者取得的突破允许使用小批量方法从权重的后验分布中进行有效采样。他们聪明的想法是利用小批量梯度估计中固有的采样噪声作为马尔可夫链蒙特卡罗方法所需的噪声。通过适当地结合这种噪声,他们成功地从后验分布中获得了可靠的样本,使完整的贝叶斯学习对更大的网络具有实用性。

随着这一进步,可以使用小批量训练具有数千甚至数百万权重的神经网络,并从权重的后验分布中获取样本。这在处理需要大量计算资源的大规模问题时特别有用。通过完整的贝叶斯学习结合不确定性的能力提供了对模型预测的更全面的理解,并可以改进决策。

通过利用蒙特卡罗方法(例如马尔可夫链蒙特卡罗),可以使完整的贝叶斯学习对大型神经网络变得实用。通过根据后验概率对权重向量进行采样,我们可以近似完整的贝叶斯方法,并获得对模型不确定性的宝贵见解。随着小批量方法的引入,现在可以实现从权重后验分布中进行有效采样,从而使完整的贝叶斯学习能够应用于更大的网络。

 

第 10.5 讲——辍学



第 10.5 讲 — Dropout [机器学习的神经网络]

Dropout 是一种无需单独训练每个模型即可组合大量神经网络模型的成功方法。在这种方法中,隐藏单元的随机子集被每个训练案例丢弃,导致每个案例的不同架构。这为每个训练案例创建了一个独特的模型,引发了关于如何在测试期间训练和有效平均这些模型的问题。

组合多个模型的输出的两种方法是平均它们的输出概率或使用它们概率的几何平均值。权重共享在该方法中起着至关重要的作用。 Dropout 为平均神经网络提供了一种有效的方法,尽管它的性能可能不如正确的贝叶斯方法。在训练过程中,隐藏单元以 0.5 的概率随机丢弃,导致大量架构共享权重。 Dropout 可以看作是模型平均,大多数模型没有被采样,每个采样模型只接受一个训练样例。模型之间的权重共享有效地规范了它们。在测试时,使用所有隐藏单元,但它们的输出权重减半以计算所有可能模型预测的几何平均值。通过在每层中应用 0.5 的 dropout,可以将 dropout 扩展到多个隐藏层。这种近似比平均单独的 dropout 模型更快,但提供了一个很好的近似。

此外,dropout 可以应用于保持输入的概率更高的输入层。该技术已用于去噪自动编码器,并显示出良好的效果。 Dropout 已被证明可有效减少深度神经网络中的错误并防止过度拟合。它鼓励隐藏单元的专业化,并防止可能导致新测试数据泛化不佳的复杂协同适应。通过强制隐藏单元与其他隐藏单元的不同组合一起工作,dropout 促进了个体有用的行为并阻止了对特定协作的依赖。这种方法通过允许每个单元以独特且边际有用的方式做出贡献来提高 dropout 网络的性能,从而产生出色的结果。

Dropout 是一种用于训练和组合神经网络模型的强大技术。它通过权重共享和隐藏单元的随机丢失来规范模型,从而解决了过度拟合的挑战。通过为每个训练案例创建不同的架构,dropout 鼓励个体单元专业化并减少复杂的共同适应。平均模型输出概率或使用几何平均值的过程提供了类似整体的效果,提高了网络的整体性能。尽管 dropout 可能无法达到与正确的贝叶斯方法相同的性能水平,但它提供了一种实用且高效的替代方案。当应用于多个隐藏层时,可以在每层中使用 dropout,dropout 概率为 0.5。这种近似称为“均值网”,有效地结合了 dropout 的优点和更快的计算速度。当计算资源有限时,它特别有用。

此外,dropout 可以通过应用保留输入概率更高的 dropout 扩展到输入层。这种技术有助于防止过度拟合,并已在各种应用中取得成功。重要的是要注意,dropout 不仅可以提高训练数据的性能,还可以增强对未见过的测试数据的泛化。通过鼓励个体单元行为和减少复杂的共同适应,辍学模型往往在新的和看不见的例子上表现良好。

Dropout 是组合神经网络模型的一种实用有效的方法。通过随机丢弃隐藏单元并鼓励个体单元行为,丢弃可以减轻过度拟合并提高泛化能力。它的简单性和高效性使其成为训练深度神经网络的宝贵工具。

 

第 11.1 讲 — 霍普菲尔德网



第 11.1 讲 — Hopfield Nets [机器学习的神经网络]

在此视频中,演示者介绍了 Hopfield 网络及其在 1980 年代对神经网络的兴趣复兴中的作用。 Hopfield 网络是一种简单的设备,用于将记忆存储为分布式活动模式。它们是基于能量的模型,具有二进制阈值单元和循环连接。

分析具有非线性单元和循环连接的网络可能具有挑战性,因为它们具有各种行为,例如趋于稳定状态、振荡甚至是混乱。然而,Hopfield 和其他研究人员意识到,如果连接是对称的,则可以为网络的每个二元配置定义一个全局能量函数。二元阈值决策规则与正确的能量函数相结合,使网络在能量上走下坡路,最终达到能量最小值。能量函数由表示连接权重和连接神经元二元状态乘积的局部贡献组成。

为了找到能量最小值,Hopfield 网络中的单元按顺序更新,一次一个,随机顺序。每个单元根据导致最低全局能量的配置计算其状态。这种顺序更新可防止单元同时做出可能增加能量并导致振荡的决策。 Hopfield 网络适合存储记忆,因为记忆对应于网络中的能量最小值。记忆可能是部分的或损坏的,二元阈值决策规则可以清理它们并将它们恢复为完整的记忆。这种内容可寻址存储器允许基于部分内容信息访问存储的项目。

Hopfield 网络具有使它们能够抵抗硬件损坏的特性,因为即使移除了几个单元,它们仍然可以正常运行。网络中的权重提供有关神经元状态如何组合在一起的信息,类似于从几块骨头重建恐龙。 Hopfield 网络中的记忆存储规则很简单。通过根据活动的产品增加单元之间的权重,可以存储二进制状态向量。此规则只需要一次通过数据,使其成为在线规则。但它不是纠错规则,有利也有弊。

Hopfield 网络提供了一种直接的存储记忆的方法,并且具有一些有趣的特性,这些特性使它们对各种应用都很有价值。

 

第 11.2 讲——处理伪极小值



第 11.2 讲——处理伪极小值 [机器学习神经网络]

在本视频中,我将讨论 Hopfield 网络的存储容量以及它如何受到虚假记忆的限制。当附近的能量最小值结合在一起时,就会出现虚假记忆,从而在错误的位置产生新的最小值。消除这些虚假最小值的努力导致了一种在比基本 Hopfield 网络更复杂的系统中学习的有趣方法。

我还将谈到与增加 Hopfield 网容量相关的历史性重新发现。试图提高存储容量的物理学家偶然发现了感知器收敛过程,该过程最初是在 Hopfield 发明 Hopfield 网络作为记忆存储设备之后开发的。

使用全连接网络的 Hopfield 存储规则,Hopfield 网络的容量约为 0.15n 个内存,其中 n 表示二进制阈值单元的数量。此容量表示可以存储而不会混淆的内存数量。每个记忆由 N 个单元的随机配置组成,提供 n 位信息。因此,存储在 Hopfield 网络中的总信息约为 0.15N 平方位。

然而,这种存储方法不能有效地利用存储权重所需的位。如果我们分析在计算机中存储权重所需的位数,它超过 0.15N 平方位,表明局部能量最小值的分布式内存效率不高。

为了提高 Hopfield 网络的容量,我们需要解决能量最小值的合并问题,这限制了它的容量。每次记忆二进制配置时,我们都希望创建一个新的能量最小值。然而,附近的模式会导致最小值的合并,从而无法区分不同的记忆。这种合并现象限制了 Hopfield 网络的容量。

从提高 Hopfield 网络的能力中产生的一个有趣的想法是忘却的概念。 Unlearning 涉及允许网络从随机初始状态稳定下来,然后应用与存储规则相反的规则来消除虚假的最小值。 Hopfield、Feinstein 和 Palmer 证明忘却有效地增加了记忆容量,而 Crick 和 Mitchison 提出忘却可能发生在 REM 睡眠期间。

挑战在于确定应该完成多少学习。理想情况下,忘却应该是将模型拟合到数据的过程的一部分。模型的最大似然拟合可以自动合并 unlearning,为所需的 unlearning 量提供精确指导。

物理学家在寻找熟悉的数学概念和大脑功能之间的联系的愿望的驱使下,努力提高 Hopfield 网络的能力。 Elizabeth Gardner 提出了一种更有效的存储规则,该规则利用了权重的全部容量。该规则涉及多次循环遍历训练集并使用感知器收敛程序来训练每个单元的正确状态。

这种技术类似于统计中使用的伪似然法,您的目标是在给定所有其他维度上的值的情况下使一个维度正确。感知器收敛过程,对 Hopfield 网络中的对称权重进行了一些调整,可以实现更高效的内存存储。

通过使用感知器收敛过程并多次迭代数据,我们可以提高 Hopfield 网络的内存存储效率。这种技术类似于统计学中使用的伪似然法,其目标是根据所有其他维度的值使一个维度正确。感知器收敛过程,对 Hopfield 网络中的对称权重进行适当修改,可以实现更有效的内存存储。

Gardner 提出的这种增强存储规则代表了在最大化 Hopfield 网络容量方面的重大进步。通过循环遍历训练集并根据感知器收敛过程迭代调整权重,网络可以存储更多的记忆。

值得注意的是,这种方法牺牲了 Hopfield 网络的在线属性,它允许在单次传递中处理数据。然而,通过利用权重的全部容量实现的改进的存储效率证明了权衡是合理的。

正如 Hopfield、Feinstein 和 Palmer 所提议的那样,合并 unlearning 提供了一种消除虚假最小值并进一步增加记忆容量的方法。 Unlearning 允许分离合并的最小值,确保更好地回忆个人记忆。

有趣的是,Crick 和 Mitchison 对 REM 睡眠期间的忘却提出了功能性解释。他们提出做梦的目的是促进去除虚假的最小值,有效地将网络重置为随机状态并忘掉以前的模式。

为了解决确定最佳忘却量的数学挑战,一个潜在的解决方案是将忘却视为模型拟合过程的一部分。通过采用最大似然拟合,可以自动合并 unlearning,为优化模型性能所需的 unlearning 程度提供精确指导。

提高 Hopfield 网络容量的探索已经对记忆存储和学习过程产生了宝贵的见解。感知器收敛过程的发展,以及对忘却学习的探索,使我们更接近于利用 Hopfield 网络的全部潜力进行有效的记忆存储和检索。

 

第 11.3 讲——具有隐藏单元的 Hopfield 网络



第 11.3 讲 — 具有隐藏单元的 Hopfield 网络 [机器学习神经网络]

在本视频中,我将介绍一种利用 Hopfield 网络及其能量函数的新颖方法。通过将隐藏单元合并到网络中,我们的目标是根据这些隐藏单元的状态得出对感知输入的解释。关键概念是单元之间的权重对有利的解释施加了约束,通过找到低能量状态,我们可以发现对输入数据的良好解释。

Hopfield 网络结合了两个基本思想:使用对称连接的二进制阈值单元找到局部能量最小值的能力,以及这些局部能量最小值可能对应于记忆的概念。但是,还有一种替代方法可以利用寻找局部最小值的能力。我们可以利用它来构建对感官输入的解释,而不是仅仅将网络用于记忆存储。为了说明这个想法,让我们深入研究从图像中的二维线推断三维世界信息的细节。当我们观察一条二维线时,它可以起源于世界上各种三维边。由于图像中深度信息的丢失,多个 3D 边缘会导致视网膜上出现相同的外观。出现这种歧义是因为我们缺乏关于线两端深度的知识。

为了解决这个问题,我们假设世界中的直 3D 边缘会在图像中产生一条直的 2D 线。但是,此假设消除了与 3D 边缘每一端的深度相关的两个自由度。因此,整个 3D 边缘系列对应于同一条 2D 线,但我们一次只能感知其中一个。现在,让我们考虑一个示例,演示我们如何利用在二进制单元网络中找到低能量状态的能力来帮助解释感官输入。假设我们有一张线图,想将其解释为三维物体。对于每条潜在的二维线,我们分配一个相应的神经元。在任何给定的图像中,只有少数神经元会激活,代表当前的线条。

为了构建解释,我们引入了一组 3D 线单元,每个可能的 3D 边一个。由于每个 2D 线单元可以对应多条 3D 线,我们需要激发所有相关的 3D 线,同时确保它们之间的竞争,因为一次只能激活一条 3D 线。为实现这一目标,我们建立了从 2D 线单元到所有候选 3D 线的兴奋性连接,以及抑制性连接以实现竞争。

然而,神经网络的布线还没有完成。我们需要合并有关 3D 边如何连接的信息。例如,当两条二维线在图像中会聚时,它们很可能对应于在交界点具有相同深度的边缘。我们可以通过引入支持这种重合 3D 边缘的额外连接来表示这种期望。

此外,我们可以利用 3D 边以直角连接的常见情况。通过在深度一致并形成直角的两个 3D 边缘之间建立更强的连接,我们可以表明它们的内聚关系。这些由较粗的绿线表示的连接提供了有关世界中的边缘如何连接并有助于形成连贯的 3D 对象的信息。现在,我们的网络包含有关世界边缘排列以及它们如何投射以在图像中创建线条的知识。当我们将图像输入该网络时,它应该会产生解释。对于我展示的图像,有两种截然不同的解释,称为内克立方体。该网络将展示两个能量最小值,每个对应于 Necker 立方体的一种可能解释。

请注意,此示例作为类比来理解使用低能量状态作为感知数据解释的概念。构建一个准确解释内克立方体翻转的综合模型将比此处描述的简化场景复杂得多。如果我们决定使用低能量状态来表示合理的感知解释,则会出现两个关键挑战。首先,我们需要解决搜索问题——如何防止隐藏单元陷入局部能量极小值。较差的最小值反映了基于我们当前模型和权重的次优解释。有没有比简单地从随机起始状态降低能量更好的方法?

第二个挑战更加艰巨——如何学习隐藏单元之间以及可见单元和隐藏单元之间的连接权重。考虑到没有外部主管指导学习过程,是否有直接的学习算法来调整这些权重?我们的目标是让网络接收输入并在代表合理解释的隐藏单元中构建有意义的活动模式。这提出了相当大的挑战。

总之,以一种新颖的方式利用 Hopfield 网络及其能量函数涉及合并隐藏单元来推导感知输入的解释。单位之间的权重代表对良好解释的约束,找到低能量状态使我们能够发现有利的解释。

然而,还有一些挑战需要克服。第一个挑战是搜索问题,它涉及避免陷入局部能量极小值。这些最小值代表次优解释,找到有效的搜索方法至关重要。第二个挑战是学习隐藏单元之间以及可见单元和隐藏单元之间的连接权重。由于缺乏主管或外部指导,这项任务变得复杂。需要一种合适的学习算法来调整权重,使网络能够构建对感官输入的有意义的解释。请务必注意,所提供的示例涉及将 2D 线条图解释为 3D 对象,这是一个类比,用于说明使用低能量状态进行解释的概念。构建一个综合模型来处理更复杂的感知现象需要更复杂的方法。

在下一个视频中,我们将深入研究搜索问题并探索潜在的解决方案,以避免陷入能量函数的局部极小值。

 

第 11.4 讲——使用随机单位改进搜索



第 11.4 讲——使用随机单位改进搜索[机器学习神经网络]

在本视频中,我将解释向系统添加噪声如何帮助它们逃避局部最小值。具体来说,我将向您展示如何以适当的方式将噪声合并到 Hopfield 网络的单元中。

Hopfield 网络总是做出减少能量的决定。这使得爬出局部最小值变得困难。如果我们被困在局部最小值中,我们将无法克服能量障碍以达到更好的最小值。

然而,通过添加随机噪声,我们可以摆脱较差的极小值,尤其是那些较浅且缺乏显着能量势垒的极小值。最有效的策略是从高噪声开始,允许在粗尺度上探索空间并找到总体上好的区域。随着噪声水平的降低,焦点转移到最佳附近的最小值。

模拟退火是一种逐渐降低噪声水平以引导系统走向深度最小值的技术。它利用物理或模拟系统中的温度,其中较高的温度会使能量景观变平,从而更容易跨越障碍,而较低的温度会提高概率比率,有利于从一个最小值过渡到另一个最小值。

为了将噪声引入 Hopfield 网络,我们将二进制阈值单元替换为二进制随机单元,这些单元会做出有偏差的随机决策。噪音水平由称为温度的参数控制。提高噪声水平对应于减少配置之间的能隙。

在玻尔兹曼机的背景下理解热平衡的概念很重要。在固定温度下,热平衡是指概率分布趋于平稳分布,由能量函数确定。热平衡配置的概率与 e 的幂减去其能量成正比。

达到热平衡涉及运行多个具有相同权重的随机系统并应用随机更新规则。尽管单个系统不断更改配置,但每个配置中的系统比例保持不变。这类似于在大型赌场中洗牌,直到初始顺序变得无关紧要,并且每个可能的顺序中有相同数量的牌组。

模拟退火是克服局部最优的有效方法,但本课程不会进一步讨论它,因为它可能会分散您对玻尔兹曼机的理解。相反,将使用温度为 1 的二元随机单位(标准逻辑函数)。

向 Hopfield 网络和 Boltzmann 机等系统添加噪声有助于逃避局部最小值并探索更有利的区域。噪声水平受温度控制,达到热平衡涉及每个配置中的系统部分保持不变,而各个系统不断改变其状态。

 

第 11.5 讲——玻尔兹曼机如何对数据建模



第 11.5 讲 — 玻尔兹曼机如何对数据建模 [机器学习的神经网络]

在本视频中,我将解释玻尔兹曼机如何对二进制数据向量建模。首先,我将讨论对二进制数据向量建模的原因以及这种模型的潜在应用。然后,我将深入研究分配给二进制数据向量的概率是如何由玻尔兹曼机中的权重确定的。

玻尔兹曼机,也称为具有隐藏单元的随机 Hopfield 网络,可有效地对二进制数据进行建模。通过利用隐藏单元,这些机器可以将模型拟合到一组二元训练向量,并为每个可能的二元向量分配一个概率。

二进制数据建模有多种实际应用。例如,如果您有不同的二元向量分布,您可能想要确定新的二元向量属于哪个分布。通过使用隐藏单元为每种文档类型的分布建模,您可以为给定的二进制向量识别最可能的文档类别。

此外,玻尔兹曼机可用于监控复杂系统和检测异常行为。假设你有一个核电站,各种表盘的二进制读数指示电站的状态。您可以构建正常状态的模型并检测与规范的偏差,而不是依赖需要危险状态示例的监督学习。这样,您可以在事先不知道这些状态的情况下识别异常状态。

要计算特定分布生成观测数据的后验概率,您可以使用贝叶斯定理。给定观察到的数据,它来自特定模型的概率是该模型生成该数据的概率除以所有模型的相同数量的总和。

有两种主要的方法来生成数据模型,特别是二元向量。因果模型方法涉及首先生成潜在变量的状态,然后将其用于生成二元向量。该模型依赖于潜在单元和可见单元之间的加权连接和偏差。因子分析是使用连续变量的因果模型的一个例子。

另一方面,玻尔兹曼机是一种基于能量的模型,不会因果生成数据。相反,它根据可见和隐藏单元的联合配置的能量来定义一切。联合配置的概率要么直接根据能量定义,要么在更新随机二元单元直到达到热平衡后按程序计算。联合配置的能量由偏差项、可见-可见相互作用、可见-隐藏相互作用和隐藏-隐藏相互作用组成。

为了计算不同可见向量的概率,我们可以通过一个例子来计算。通过写下可见单元的所有可能状态、计算它们的负能量、对这些能量取幂并对概率进行归一化,我们可以确定关节配置和单个可见向量的概率。

对于较大的网络,由于项的指数数量,计算分区函数变得不可行。在这种情况下,我们可以使用马尔可夫链蒙特卡罗方法从模型中获取样本。通过根据它们的能隙随机更新单元,我们可以达到平稳分布并从模型中获取样本。样本的概率与负能量的幂 e 成正比。

此外,我们可能有兴趣从给定数据向量的隐藏配置的后验分布中获取样本,这是学习所必需的。通过使用 Markov chain Monte Carlo 将可见单元固定在数据向量上,我们可以只更新隐藏单元并从后验分布中获取样本。此信息对于为观察到的数据找到良好的解释和指导学习过程至关重要。

在玻尔兹曼机中学习的过程涉及调整权重和偏差以提高模型对训练数据的拟合度。这种学习过程通常是通过称为对比发散的算法来实现的。

对比散度是一种用于估计对数似然函数梯度的近似方法。它使我们能够有效地更新玻尔兹曼机中的权重和偏差。对比散度背后的基本思想是执行吉布斯采样的几个步骤,其中涉及从数据向量开始在更新隐藏单元和更新可见单元之间交替。

为了更新隐藏单元,我们可以根据由可见单元和隐藏单元的联合配置能量确定的概率对它们的状态进行采样。然后,我们根据隐藏单元的新状态更新可见单元。这个过程重复几次迭代,直到马尔可夫链达到近似平衡。

一旦我们从隐藏配置的后验分布中获得了一个样本,我们就可以用它来计算可见单元和隐藏单元之间的正负关联。正关联是通过获取数据向量和采样的隐藏配置的外积来计算的。负关联以类似的方式计算,但使用从 Gibbs 抽样过程中获得的可见单位。

通过获取正关联和负关联之间的差异,我们可以计算对数似然函数的梯度。然后使用该梯度通过学习规则(例如随机梯度下降)更新玻尔兹曼机的权重和偏差。

学习过程通过重复应用对比散度、从后验分布中采样以及更新权重和偏差来继续。随着时间的推移,玻尔兹曼机学会捕捉训练数据中存在的潜在模式和分布。

请务必注意,训练玻尔兹曼机可能是一项具有挑战性的任务,尤其是对于具有许多隐藏单元的大型网络。计算复杂度随着单元的数量呈指数增长,使得执行精确计算变得困难。然而,对比散度等近似方法为玻尔兹曼机的学习提供了一种实用的解决方案。

在玻尔兹曼机中学习涉及通过对比散度调整权重和偏差,这近似于对数似然函数的梯度。通过从后验分布中迭代采样并更新模型参数,玻尔兹曼机可以学习对二进制数据中的潜在模式进行建模。

 

第 12.1 讲——玻尔兹曼机器学习



第 12.1 讲 — 玻尔兹曼机器学习 [机器学习的神经网络]

在上一个视频中,我演示了如何将玻尔兹曼机用作二进制数据向量的概率模型。现在,让我们深入研究玻尔兹曼机器学习算法。

最初,玻尔兹曼机器学习算法速度慢且噪音大,因此不切实际。然而,开发了几种技术来显着加速算法,使其更加实用和有效。事实上,它已成功用于百万美元的机器学习竞赛。

玻尔兹曼机器学习算法是一种无监督学习算法,这意味着它不需要标记数据。相反,它旨在通过最大化玻尔兹曼机分配给训练向量的概率的乘积来构建一组输入向量(或输出向量)的模型。这也可以通过最大化对数概率之和或获得训练案例的概率来实现。

为了训练玻尔兹曼机,我们遵循一个在没有外部输入的情况下多次稳定分布的过程。然后我们对可见向量进行采样并多次重复此过程以从后验分布中获取样本。

由于权重之间的相互作用,玻尔兹曼机中的学习可能具有挑战性。每个权重都需要了解其他权重以确定适当的变化方向。令人惊讶的是,仅使用本地信息的简单学习算法就足够了。学习规则基于两个相关性的差异,捕获权重更新所需的信息。

学习规则由两项组成。第一项增加的权重与呈现数据时观察到的单位活动的乘积成比例。该术语类似于 Hopfield 网络中的存储术语。然而,如果没有控制,权重会不断增加,导致不稳定。当从模型的分布中抽样时,第二项减少了与单位活动的乘积成比例的权重。此项有助于消除虚假最小值并保持稳定性。

可见向量的对数概率相对于权重的导数非常简单。它可以表示为两个相连的单元活动的乘积。这种简单性源于对数概率和能量函数之间的线性关系,而能量函数又与权重成线性关系。

学习过程中的消极阶段用于忘记或减少某些配置的影响。它侧重于降低对分区函数有重大贡献的项的能量,从而减少它们的影响。

为了收集学习规则所需的统计数据,通常使用一种称为对比散度的方法。在正阶段,数据向量被夹在可见单元上,隐藏单元被更新,直到达到热平衡。然后对单元对之间的相关性进行采样,并对所有数据向量进行平均。在负相中,没有数据被钳位,并且允许网络在没有外部干扰的情况下稳定到平衡。单元对之间的相关性再次被多次采样。

确定负相所需的迭代次数可能具有挑战性,因为玻尔兹曼机的能量景观可能包含多种模式。这些模式代表具有相似能级的不同配置,需要重复采样才能有效捕获它们。

在处理玻尔兹曼机时,考虑负相位所需的重复次数至关重要。由于能源格局中存在多种模式,该算法需要广泛采样以确保充分代表所有模式。

玻尔兹曼机中的学习过程涉及根据从正相和负相获得的相关性迭代更新权重。通过比较这些阶段的相关性,算法可以调整权重以改进模型对数据的表示。

需要注意的一个重要方面是玻尔兹曼机器学习算法是赫布学习的一种形式。它遵循唐纳德·赫布 (Donald Hebb) 在 1940 年代或 50 年代提出的原理,表明大脑中的突触基于神经元的共同激活加强了神经元之间的联系。在玻尔兹曼机中,正相按数据呈现期间观察到的单位活动的乘积增加权重,类似于赫布的想法。

但是,如果没有平衡机制,权重将无限增长,导致不稳定。当从模型的分布中抽样时,负相通过减少基于单位活动的产品的权重来达到这个目的。这种平衡确保玻尔兹曼机在学习过程中保持稳定。

值得一提的是,玻尔兹曼机器学习算法具有与能量函数和概率分布相关的理论基础。热平衡时全局配置的概率遵循其能量的指数函数。权重和对数概率之间的线性关系允许进行直接的导数计算并促进有效的权重更新。

玻尔兹曼机器学习算法是一种无监督学习方法,旨在构建输入或输出向量模型。通过最大化分配给训练向量的概率,该算法使用正相关和负相关的组合来调整权重。这种学习过程以及对比发散等技术有助于玻尔兹曼机捕获数据中的复杂模式。