机器视觉(AOI)之复合学习
复合学习为的是利用几种模式的知识,而不是一种。该方法认为,通过独特的组合或信息注入——包括静态和动态——与单一模式相比,深度学习能够在理解和性能方面不断地深入。迁移学习是复合学习的一个明显的例子,它的前提是模型的权重可以从一个在类似的任务上预先训练过的模型中借用,然后在特定任务上进行微调。像 Inception 或 VGG-6 这样的预训练模型,其结构和权重被设计成可以区分几种不同类别的图像。如果我要训练一个神经网络来识别动物(猫、狗等),我不会从头开始训练卷积神经网络,因为要达到不错的效果需要太长时间。相反,我会使用一个预先训练过的模型(比如 Inception,它已经存储了图像识别的基础知识),在数据集上额外进行几个 epoch 的训练。类似地,在 NLP 神经网络中,词嵌入会根据单词之间的关系在一个嵌入空间中将单词映射到实际距离较近的其他单词(例如,“apple”和“orange”的距离比“apple”和“truck”的距离更小)。像 GloVe 这样预先训练好的嵌入可以放到神经网络中,从单词到有意义的数字化实体的有效映射开始。较为隐秘的一点是,竞争也能促进知识增长。首先,生成式对抗网络借鉴了复合学习范式,从根本上使两个神经网络相互竞争。生成器的目标是欺骗判别器,而判别器的目标是不被骗。下文会将模型之间的竞争称为“对抗性学习”,不要与另一种 设计恶意输入并利用模型弱决策边界 的对抗性学习相混淆。对抗性学习可以增强模型,通常是不同类型的模型,在对抗性学习中,一个模型的性能可以用其他模型的性能来表示。在对抗性学习领域还有很多研究需要做,生成式对抗网络是这个子领域唯一突出的创新。另一方面,竞争性学习与对抗性学习类似,但是逐节点执行的:节点竞争对输入数据的一个子集作出响应的权利。竞争性学习是在一个“竞争层”中实现的,在这个“竞争层”中,除了某些权重随机分布外,神经元都是相同的。将每个神经元的权值向量与输入向量进行比较,然后激活(output = 1)相似度最高的“赢者全拿”神经元,其余神经元“不激活”(output = 0),这种无监督技术是 自组织映射 和 特征发现 的核心组成部分。复合学习的另一个有趣的例子是 神经结构搜索。简而言之,在强化学习环境中,神经网络(通常是 RNN)通过学习为数据集生成最好的神经网络——算法为你找出最好的架构!你可以点击这里了解更多理论知识:https://towardsdatascience.com/if-youre-hyped-about-gpt-3-writing-code-you-haven-t-heard-of-nas-19c8c30fcc8a点击这里查看其 Python 实现:https://towardsdatascience.com/automl-creating-top-performing-neural-networks-without-defining-architectures-c7d3b08cddc集成(Ensemble)方法也是一种重要的复合学习方法。深度集成方法已经被证明非常 有效,而且,端到端模型叠加,像编码器和解码器,已经变得越来越流行。复合学习的主要目的是找出在不同模型之间建立联系的独特方法。它的前提是:单个模型,即使是一个非常大的模型,其性能也不如几个小模型 / 组件,其中每一个都被委派专门处理一部分任务。复合模型性能更好,同时占用的空间更少,这应该没什么可奇怪的。此外,这些非线性拓扑可以用 Keras 函数式 API 这样的工具轻松构建。为了处理越来越多样化的数据类型,如视频和三维数据,研究人员必须建立创造性的复合模型。
郑重声明:
1、部分内容来源于网络,本文版权归原作者所有,转载文章仅为传播更多信息之目的。
2、本文仅供学术交流,非商用。如果某部分不小心侵犯了大家的利益,请联系删除。