从系列中:深层神经网络
乔•Hicklin MathWorks
“实验管理器”应用程序允许您在各种初始条件下设置用于培训、微调和解释深度学习网络的实验。通过以下步骤的详细演练,了解如何设置深度学习实验:
嗨。我叫乔·希克林。我是MathWorks的高级开发人员。在我的上一个视频中,我向你们展示了实验管理器是如何自动化你们为深度学习系统所做的很多实验的。在这段视频中,我将向你展示如何让实验管理器运行我的实验。
要配置“实验管理器”以运行实验,请遵循四个步骤。首先,您需要制作运行某种深度学习实验的脚本。你可能已经有类似的东西了。
下一步是将其转换为函数。在这里,我在开头添加了一个function语句,在结尾添加了一个end语句。此函数必须返回三个内容。它必须返回包含您的数据、网络层和培训选项的数据存储。这需要一个叫做params的参数,我将在一分钟内进一步讨论。另外,取消对trainnetwork的呼叫,因为实验经理会为您这样做。
第三步是最重要的工作。必须根据param参数的值使函数执行不同的试验。在这种情况下,我将使用一个更大或更小的数据集,我将根据这个参数的值来增加数据或不增加数据。我就是这样做的。我有一个switch语句,它查看参数的数据集字段,并基于该字段将其关闭。根据这些字符串中的哪一个,我使用的是更大或更小的数据集,我是否在进行扩充。我们现在指望实验管理器使用param.dataset的不同值调用此函数,对于这些值中的每一个,我将做不同的事情。
最后一步是告诉实验管理器您的功能。如果我到实验管理器,说New Experiment,他想知道函数的名字,就是我刚写的,参数的名字,让我们看一下。这就是数据集——以及该参数的可能值。我刚好把它们放在这里。
就是这样。现在当我运行这个实验时,实验管理器会调用我的函数,对于数据集参数的值,我们会一次传入一个不同的字符串。结果就是这个数据集,就是我之前做的,产生这个。另外两个实验的设置完全相同。在第二个实验中,我改变了网络架构,因此在函数中添加了switch语句,打开另一个参数net,并根据其值创建四种不同类型的网络之一。
为了告诉实验经理这一点,我们去了网络定义,告诉它,这是我的函数名,这是我的参数名,还有可能的值。这就是我所做的一切。
在最后一个实验中,我改变了一些训练选项,在那个实验中,它有点不同。我只是直接将参数值传递给trainingOptions命令。我有一个求解器,epoch, miniBatchSize,和learnRate,就像我说的,我只是直接通过这些。为了告诉实验经理这些,我做了同样的事情。这是函数名。这是我使用的每个参数的名称,这是值。
这就是为我建立这54项试验所需要的一切。我希望我已经向您展示了“实验管理器”是自动化、记录和存储深度学习实验的绝佳方式。如果您想了解更多信息,请按照页面底部的链接进行操作。
您还可以从以下列表中选择网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家/地区网站未针对您所在地的访问进行优化。