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