本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:【图】深度学习应用实践指南:七大阶段助你创造最佳新应用(2)

时间:2017-04-10 17:25来源:118图库 作者:开奖直播现场 点击:
深度学习需要大量的训练数据。你可能想知道「我需要多少训练数据」。网络中的参数数量与训练数据的数量相关。训练样本的数量将在第 6 阶段限制你的

深度学习需要大量的训练数据。你可能想知道「我需要多少训练数据」。网络中的参数数量与训练数据的数量相关。训练样本的数量将在第 6 阶段限制你的架构选择。训练数据越多,网络就越大而准确。因此,训练数据的数量取决于你在阶段 1 中定义的目标。

除了训练数据之外,你还需要更少的标签验证或测试数据。该测试数据应与训练数据相似但不一样。网络没有对测试数据进行训练,但它用于测试网络的泛化能力。

如果训练数据量非常有限,则考虑迁移学习(transfer learning)[9] 和域适应(domain adaptation)[10,11]。如果这是合适的,下载最接近你的数据的数据集用于预训练。另外,考虑创建合成数据。合成数据具有可以创建大量样本并使其多样化的优点。

项目目标也指导训练数据样本的选择。确保训练数据与任务直接相关,并且它的多样性足以覆盖问题空间。研究每个类别的统计数据。例如,类别是否平衡?平衡类别的一个例子是猫与狗,而不平衡的类别是猫与所有其它哺乳动物(如果你的问题本质上是不平衡的,向深度学习专家请教)。

什么预处理是可能的?你可以零均值并归一化数据吗?这使得网络的工作更容易,因为它消除了学习平均值的工作。通过在训练样本之间建立更大的相似性,归一化也使网络的工作更容易。

如上所述,调查是否有办法使用先验知识或已知启发法(heuristic)降低数据的维度。你不需要花时间人工确定启发法,因为目标是节省人力时间,你可以让网络学习自己的表征。只要知道网络必须筛选的无关数据越多,需要的训练数据就越多,训练网络的时间就越长。所以充分利用现有的技术。

阶段 3:找出你的应用程序与最相近的深度学习应用程序之间的相似点

专家知道不能每个项目都从头开始。这就是为什么他们被称为专家的原因。他们再使用以前的解决方案、搜索其他研究人员的深度学习文献来解决问题。即使没有人做过你想做的事情,你仍然需要利用专家的长处。

深度学习已被应用于各种应用。为了创建你的基线模型(baseline model)——即你的起点——你需要找到与你的应用程序相似的应用程序。你应该搜索深度学习文献,并考虑各种应用程序解决的「问题」与你在应用程序中需要解决的「问题」进行比较。找出这些问题之间的相似之处和类比。此外,请注意你的新应用程序与深度学习应用程序之间的差异,因为这些差异可能需要在阶段 6 中更改架构。

当你找到最相近的应用程序时,请查找代并下载。许多研究人员在开源环境中公开发表了他们的代,使代码可重复用于研究。你的第一个目标是在最接近的应用程序的论文中复制结果。然后在「了解」阶段修改各块代码,看看其对结果的影响。如果你幸运的话,会有几个代码可用,你应该复制所有代码的结果。这个对比将为你提供足够的信息,以便你可以在阶段 4 中创建基线。

有几种「经典」的深度学习应用程序和众所周知的解决方案。这些包括图像分类/对象识别(卷积网络)、处理如语言处理的顺序数据(RNN/LSTM/GRU)和复杂的决策制定(深度强化学习)。还有一些常见的其它应用,如图像分割(image segmentation)和超分辨率(super-resolution)(全卷积网络)以及相似匹配(孪生网络/Siamese network)。附录 A 列出了许多最近的深度学习应用程序和它们使用的架构以及描述应用程序的论文的链接。这些可以提供一些想法,但不应该作为寻找深度学习应用程序的来源。你应该仔细搜索谷歌学术(https://scholar.google.com)和 arXiv(https://arxiv.org)以获取深度学习的应用程序。

阶段 4:创建简单的基线模型

开始时始终保持简单、小巧和容易。使用比你预期需要的更小的架构。从共同的目标函数开始,使用超参数的常用设置,仅使用部分训练数据。这是一个能够部分实践敏捷软件方法论的好地方,如简单设计、单元测试(unit testing)和简短发布(short release)。现在只需要获得基本功能,并在阶段 6 中进行改进。也就是说,计划小步骤、持续更新、并迭代。

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容