设计和运行实验训练和比较深入学习网络
的实验管理器应用程序允许您创建深度学习实验训练网络下多个初始条件和比较结果。例如,您可以使用深度学习实验:
席卷一系列hyperparameter值或使用贝叶斯优化找到最佳的培训方案。贝叶斯优化需要统计和机器学习的工具箱™。
使用内置的函数trainNetwork
或定义自己的自定义功能训练。
比较使用不同的数据集或测试的结果不同的深度网络架构。
快速设置您的实验,你可以从一个预配置模板开始。实验模板支持工作流,包括图像分类、图像回归,序列分金宝app类、语义分割,和自定义训练循环。
实验管理器提供可视化工具,如培训情节和混淆矩阵,过滤器来完善你的实验结果,并注释记录你的观察。改善再现性,每次运行的一个实验,实验管理器存储复制实验的定义。您可以访问过去实验定义跟踪hyperparameter组合产生你的每一个结果。
在一个经理组织你的实验和实验结果项目。
你可以在同一个项目中存储几个实验。
每个实验包含一组结果每次运行的实验。
每组由一个或多个结果试用hyperparameters的对应一个不同的组合。
默认情况下,实验管理器运行一个审判。如果你有并行计算工具箱™,您可以配置您的实验同时运行多个试验或运行一个试验在多个gpu,集群上,或在云中。有关更多信息,请参见并行使用实验管理器来训练网络。
的实验的浏览器窗格显示在项目层次结构的实验和结果。例如,这个项目有两个实验,每一个都有几集的结果。
蓝瓶表明一个内置的训练实验使用trainNetwork
函数。绿色的烧杯显示一个自定义训练实验,依赖于不同的训练功能。打开配置一个实验并查看其结果,双击的名称或一组实验的结果。
MATLAB®将来发布:应用程序选项卡,在机器学习和深度的学习,点击应用程序图标。
MATLAB命令提示:输入experimentManager
。
这个例子展示了如何使用实验模板供全面hyperparameters图像分类。使用这个模板,您可以迅速建立一个实验,使用内置的培训trainNetwork
函数。更多的与实验管理器,解决图像分类问题的例子创建一个分类深度学习实验和并行使用实验管理器来训练网络。横扫hyperparameters的另一种策略的更多信息,参见通过使用贝叶斯优化调整实验Hyperparameters。
打开示例加载一个预配置实验的项目,你可以检查和运行。开放实验,实验的浏览器面板,双击实验的名称(Experiment1
)。
另外,您可以通过以下步骤配置实验自己。
1。开放实验管理器。一个对话框提供了入门教程的链接和你最近的项目,以及按钮来创建一个新项目或打开文档的一个例子。
2。下新中,选择项目。对话框列出了几个模板,支持工作流包括图像分类、图像回归,序列分类、语义分割,和自定义金宝app训练循环。
3所示。下图像分类实验中,选择通过全面Hyperparameters图像分类。
4所示。指定新项目的名称和位置。实验管理器打开一个新的实验项目。的实验窗格中显示了描述、hyperparameters设置功能,定义实验的标准。
5。在描述字段中,输入一个描述的实验:
数字分类,使用各种初始学习速率。
6。下Hyperparameters,取代的价值myInitialLearnRate
与0.0025:0.0025:0.015
。验证策略被设置为详尽的扫描
。
7所示。下设置函数,点击编辑。setup函数MATLAB编辑器中打开。setup函数指定了训练数据,网络体系结构,实验和培训选项。在这个实验中,setup函数有三个部分。
负荷训练数据定义了图像数据存储包含训练和验证实验数据。实验使用数字数据集合,它由10000 28-by-28像素灰度图像的数字从0到9,由它们所代表的数字分类。这个数据集的更多信息,请参阅图像数据集。
定义网络体系结构定义了一个简单的卷积神经网络的体系结构深度学习分类。
指定培训选项定义了一个
实验对象。在这个实验中,setup函数加载的初始学习速率的值trainingOptions
myInitialLearnRate
hyperparameter表中的条目。
当您运行实验,实验经理列车网络设置函数定义的六倍。每个试验使用的一个学习利率hyperparameter表中指定。默认情况下,实验管理器运行一个审判。如果你有并行计算工具箱,您可以同时运行多个试验。为达到最佳效果,在你运行你的实验,开始与尽可能多的工人gpu并行池。有关更多信息,请参见并行使用实验管理器来训练网络和GPU的金宝app支持版本(并行计算工具箱)。
运行一个审判的一次实验,在实验管理器将来发布,点击运行。
同时运行多个试验,点击使用并行然后运行。如果没有当前并行池、实验管理器启动一个集群使用默认配置文件。实验管理器然后执行多个同时试验,根据并行工人的数量。
一个表的结果显示每个试验的准确性和损失。
在实验时,点击培训策划显示培训策划和跟踪每个试验的进展。你也可以监控培训进展MATLAB命令窗口。
点击混淆矩阵验证数据的混淆矩阵显示在每个试验完成。
当实验结束时,您可以对表进行排序的列或通过使用过滤试验过滤器窗格。你也可以通过添加注释记录观察结果表。有关更多信息,请参见排序、过滤和注释的实验结果。
来测试一个人的性能试验,导出训练网络或审判的培训信息。在实验管理器将来发布,选择出口>训练网络或出口>培训信息,分别。有关更多信息,请参见净
和信息
。
关闭试验,实验的浏览器窗格中,右键单击项目并选择的名称关闭项目。实验管理器关闭所有的实验和结果包含在项目中。
这个例子展示了如何使用图像的实验模板扫hyperparameters回归。使用这个模板,您可以迅速建立一个实验,使用内置的培训trainNetwork
函数。为解决回归问题的另一个例子与实验经理,看看创建一个深度学习实验回归。横扫hyperparameters的另一种策略的更多信息,参见通过使用贝叶斯优化调整实验Hyperparameters。
打开示例加载一个预配置实验的项目,你可以检查和运行。开放实验,实验的浏览器面板,双击实验的名称(Experiment1
)。
另外,您可以通过以下步骤配置实验自己。
1。开放实验管理器。一个对话框提供了入门教程的链接和你最近的项目,以及按钮来创建一个新项目或打开文档的一个例子。
2。下新中,选择项目。对话框列出了几个模板,支持工作流包括图像分类、图像回归,序列分类、语义分割,和自定义金宝app训练循环。
3所示。下形象回归实验中,选择图像通过全面Hyperparameters回归。
4所示。指定新项目的名称和位置。实验管理器打开一个新的实验项目。的实验窗格中显示了描述、hyperparameters设置功能,定义实验的标准。
5。在描述字段中,输入一个描述的实验:
回归预测角度旋转的数字,使用各种初始学习速率。
6。下Hyperparameters,取代的价值myInitialLearnRate
与0.001:0.001:0.006
。验证策略被设置为详尽的扫描
。
7所示。下设置函数,点击编辑。setup函数MATLAB编辑器中打开。setup函数指定了训练数据,网络体系结构,实验和培训选项。在这个实验中,setup函数有三个部分。
负荷训练数据将实验的训练和验证数据定义为4 - d数组。培训和验证数据分别由5000从数字图像数据集。每个图像显示一个数字从0到9,旋转一定的角度。回归值对应于旋转的角度。这个数据集的更多信息,请参阅图像数据集。
定义网络体系结构定义了一个简单的卷积神经网络的体系结构深度学习回归。
指定培训选项定义了一个
实验对象。在这个实验中,setup函数加载的初始学习速率的值trainingOptions
myInitialLearnRate
hyperparameter表中的条目。
当您运行实验,实验经理列车网络设置函数定义的六倍。每个试验使用的一个学习利率hyperparameter表中指定。默认情况下,实验管理器运行一个审判。如果你有并行计算工具箱,您可以同时运行多个试验。为达到最佳效果,在你运行你的实验,开始与尽可能多的工人gpu并行池。有关更多信息,请参见并行使用实验管理器来训练网络和GPU的金宝app支持版本(并行计算工具箱)。
运行一个审判的一次实验,在实验管理器将来发布,点击运行。
同时运行多个试验,点击使用并行然后运行。如果没有当前并行池、实验管理器启动一个集群使用默认配置文件。实验管理器然后执行多个同时试验,根据并行工人的数量。
表的结果显示均方误差(RMSE)为每个审判和损失。
在实验时,点击培训策划显示培训策划和跟踪每个试验的进展。你也可以监控培训进展MATLAB命令窗口。
当实验结束时,您可以对表进行排序的列或通过使用过滤试验过滤器窗格。你也可以通过添加注释记录观察结果表。有关更多信息,请参见排序、过滤和注释的实验结果。
来测试一个人的性能试验,导出训练网络或审判的培训信息。在实验管理器将来发布,选择出口>训练网络或出口>培训信息,分别。有关更多信息,请参见净
和信息
。
关闭试验,实验的浏览器窗格中,右键单击项目并选择的名称关闭项目。实验管理器关闭所有的实验和结果包含在项目中。
这个例子展示了如何使用图像分类的训练实验模板使用自定义训练循环。使用这个模板,您可以迅速建立一个定制的培训实验。
打开示例加载一个预配置实验的项目,你可以检查和运行。开放实验,实验的浏览器面板,双击实验的名称(Experiment1
)。
另外,您可以通过以下步骤配置实验自己。
1。开放实验管理器。一个对话框提供了入门教程的链接和你最近的项目,以及按钮来创建一个新项目或打开文档的一个例子。
2。下新中,选择项目。对话框列出了几个模板,支持工作流包括图像分类、图像回归,序列分类、语义分割,和自定义金宝app训练循环。
3所示。下图像分类实验中,选择图像分类使用自定义训练循环。
4所示。选择一个新项目的位置和名称。实验管理器打开一个新的实验项目。的实验窗格显示描述,hyperparameters和训练函数定义的实验。
3所示。在描述字段中,输入一个描述的实验:
数字分类,使用各种初始学习速率。
4所示。下Hyperparameters,取代的价值myInitialLearnRate
与0.0025:0.0025:0.015
。验证策略被设置为详尽的扫描
。
5。下培训功能,点击编辑。培训在MATLAB函数打开编辑器。训练函数指定了训练数据,网络体系结构,培训方案和培训过程所使用的实验。在这个实验中,训练函数有四个部分。
负荷训练数据将实验的训练数据定义为四维数组。实验使用数字数据集合,它由5000 28-by-28像素灰度图像的数字从0到9,由它们所代表的数字分类。这个数据集的更多信息,请参阅图像数据集。
定义网络体系结构定义了一个简单的卷积神经网络的体系结构深度学习分类。培训网络使用一个自定义训练循环,代表了网络的训练函数dlnetwork
对象。
指定培训选项定义使用的培训选择实验。在这个实验中,训练函数加载的初始学习速率的值myInitialLearnRate
hyperparameter表中的条目。
火车模型定义了自定义训练循环使用的实验。对于每个时代,定制培训循环打乱数据和遍历mini-batches的数据。对于每个mini-batch,自定义训练循环评估模型梯度,状态,和损失,决定了基于时间的学习速率衰减学习速率时间表,并更新网络参数。跟踪培训的进度并记录培训的价值损失,训练函数使用experiments.Monitor
对象监控
。
当您运行实验,实验经理列车网络的训练函数定义的六次。每个试验使用的一个学习利率hyperparameter表中指定。默认情况下,实验管理器运行一个审判。如果你有并行计算工具箱,您可以同时运行多个试验。为达到最佳效果,在你运行你的实验,开始与尽可能多的工人gpu并行池。有关更多信息,请参见并行使用实验管理器来训练网络和GPU的金宝app支持版本(并行计算工具箱)。
运行一个审判的一次实验,在实验管理器将来发布,点击运行。
同时运行多个试验,点击使用并行然后运行。如果没有当前并行池、实验管理器启动一个集群使用默认配置文件。实验管理器然后执行多个同时试验,根据并行工人的数量。
一个表为每个审判结果显示培训损失。
在实验时,点击培训策划显示培训策划和跟踪每个试验的进展。
当实验结束时,您可以对表进行排序的列或通过使用过滤试验过滤器窗格。你也可以通过添加注释记录观察结果表。有关更多信息,请参见排序、过滤和注释的实验结果。
来测试一个人的性能试验,导出培训输出试验。在实验管理器将来发布,选择出口。在这个实验中,训练的输出是一个结构,包含培训的价值损失和训练网络。
关闭试验,实验的浏览器窗格中,右键单击项目并选择的名称关闭项目。实验管理器关闭所有的实验和结果包含在项目中。
这个例子展示了如何设置一个内置的训练实验使用实验管理器应用程序。依赖于内置训练实验trainNetwork
功能和支持工作流如图像分类金宝app、图像回归,序列分类和语义分割。
内置训练实验由一个描述,hyperparameters表,设置函数,和一组度量函数对实验的结果进行评估。
在描述字段中,输入一个描述的实验。
下Hyperparameters实验中,选择要使用的策略。
席卷一系列hyperparameter值集策略来详尽的扫描
。在hyperparameter表,指定的值hyperparameters用于实验。您可以指定hyperparameter值作为标量或矢量数字,逻辑或字符串值。例如,这些都是有效的hyperparameter规格:
0.01
0.01:0.01:0.05
(0.01 - 0.02 0.04 - 0.08)
["个" rmsprop”“亚当”)
当您运行实验,实验管理器使用的每一个组合列车网络hyperparameter值中指定的表。
找到最优利用贝叶斯优化训练选项,设置策略来贝叶斯优化
。在hyperparameter表,指定这些属性中使用的hyperparameters试验:
范围——输入一个双元素向量给出了下界和上界的一个真正的或整数值hyperparameter,或一个字符串数组或单元阵列直言hyperparameter可能值的列表。
类型——选择真正的
(实值hyperparameter),整数
(整数值hyperparameter),或分类
(分类hyperparameter)。
变换——选择没有一个
(没有变换)日志
(对数变换)。为日志
,hyperparameter必须真正的
或整数
和积极的。采用这一选项,hyperparameter搜索和建模在对数刻度。
当您运行实验,实验管理器搜索hyperparameters的最佳组合。每个实验在实验中使用的新组合hyperparameter值基于前面试验的结果。
指定你的实验的持续时间,贝叶斯优化选项,输入的最长时间(以秒为单位)和试验运行的最大数量。请注意,实际的运行时间和数量的试验实验可以超过这些设置,因为实验管理器检查这些选项只有当审判执行完毕。
贝叶斯优化需要统计和机器学习工具。有关更多信息,请参见通过使用贝叶斯优化调整实验Hyperparameters。
的设置函数配置培训数据、网络体系结构和培训选择实验。setup函数的输入是一个结构从hyperparameter表与字段。setup函数的输出必须匹配的输入trainNetwork
函数。此表列出了支持签名的设置功能。金宝app
实验的目标 | 设置函数签名 |
---|---|
训练一个网络图像分类和回归任务使用指定的图像和响应图片 和培训选项定义的选项 。 |
函数(图像、层选项)= Experiment_setup (params)…结束 |
使用指定的图像训练网络图片 规定和响应反应 。 |
函数(图像、反应层、期权)= Experiment_setup (params)…结束 |
训练一个网络或时间序列分类和回归任务序列(例如,一个LSTM或格勒乌网络)使用指定的序列和响应序列 。 |
函数[序列、图层选项]= Experiment_setup (params)…结束 |
使用指定的序列训练网络序列 规定和响应反应 。 |
函数(序列,它、层、期权)= Experiment_setup (params)…结束 |
训练一个网络特性分类或回归任务(例如,多层感知器、延时网络)使用指定的特性数据和响应特性 。 |
函数[特性、层选项]= Experiment_setup (params)…结束 |
使用指定的特性数据训练网络特性 规定和响应反应 。 |
函数(特性、反应层、期权)= Experiment_setup (params)…结束 |
请注意
实验管理器不支持并行执行多个试验当你设定培训选项金宝appExecutionEnvironment
来“multi-gpu”
或“平行”
或者当你使培训选项DispatchInBackground
。使用这些选项来加速你的训练只有如果你想运行一个试验的一次实验。有关更多信息,请参见并行使用实验管理器来训练网络。
的指标部分指定函数对实验的结果进行评估。度量函数的输入是一个结构有三个字段:
trainedNetwork
是SeriesNetwork
对象或DAGNetwork
返回的对象trainNetwork
函数。有关更多信息,请参见训练网络。
trainingInfo
返回的是一个包含培训信息的结构吗trainNetwork
函数。有关更多信息,请参见培训信息。
参数
是一个从hyperparameter表结构字段。
度量函数的输出必须是一个标量数字,逻辑值,或一个字符串。
如果您的实验使用贝叶斯优化,选择优化的一个度量优化列表。在方向列表中,指定您想要最大化
或最小化
这个指标。实验管理器使用这个指标来确定hyperparameters做实验的最佳组合。你可以选择一个标准的培训或验证指标(如准确性、RMSE或损失)或一个自定义指标表。
这个例子展示了如何设置一个自定义训练实验使用实验管理器应用程序。定制培训实验支持工作流需要以外的培训功能金宝apptrainNetwork
。这些工作流程包括:
训练一个网络,并不是由一层图。
训练一个网络使用自定义学习速率的时间表。
更新可学的网络通过使用一个自定义函数的参数。
培训生成敌对的网络(甘)。
训练一个暹罗网络。
定制培训实验由一个描述,hyperparameters表和培训功能。
在描述字段中,输入一个描述的实验。
下Hyperparameters实验中,选择要使用的策略。
席卷一系列hyperparameter值集策略来详尽的扫描
。在hyperparameter表,指定的值hyperparameters用于实验。您可以指定hyperparameter值作为标量或矢量数字,逻辑或字符串值。例如,这些都是有效的hyperparameter规格:
0.01
0.01:0.01:0.05
(0.01 - 0.02 0.04 - 0.08)
["个" rmsprop”“亚当”)
当您运行实验,实验管理器使用的每一个组合列车网络hyperparameter值中指定的表。
找到最优利用贝叶斯优化训练选项,设置策略来贝叶斯优化
。在hyperparameter表,指定这些属性中使用的hyperparameters试验:
范围——输入一个双元素向量给出了下界和上界的一个真正的或整数值hyperparameter,或一个字符串数组或单元阵列直言hyperparameter可能值的列表。
类型——选择真正的
(实值hyperparameter),整数
(整数值hyperparameter),或分类
(分类hyperparameter)。
变换——选择没有一个
(没有变换)日志
(对数变换)。为日志
,hyperparameter必须真正的
或整数
和积极的。采用这一选项,hyperparameter搜索和建模在对数刻度。
当您运行实验,实验管理器搜索hyperparameters的最佳组合。每个实验在实验中使用的新组合hyperparameter值基于前面试验的结果。
指定你的实验的持续时间,贝叶斯优化选项,输入的最长时间(以秒为单位)和试验运行的最大数量。请注意,实际的运行时间和数量的试验实验可以超过这些设置,因为实验管理器检查这些选项只有当审判执行完毕。
贝叶斯优化需要统计和机器学习工具。有关更多信息,请参见使用贝叶斯优化自定义训练实验。
的培训功能指定了训练数据、网络架构、培训方案和培训过程中使用的实验。输入训练函数是:
从hyperparameter表字段的结构
一个experiments.Monitor
对象,您可以使用它来跟踪培训的进展,在结果表中更新信息字段,记录值的指标使用的培训,和生产培训的阴谋
实验管理器保存的输出训练功能,所以你可以出口到MATLAB工作区当培训完成。
请注意
信息和指标列显示对你的实验结果表中的数值。此外,度量值被记录在培训的阴谋。使用信息的列值,您想要显示在结果表中而不是训练的阴谋。
如果您的实验使用贝叶斯优化指标节,在优化,输入指标优化的名称。在方向列表中,指定您想要最大化
或最小化
这个指标。实验管理器使用这个指标来确定hyperparameters做实验的最佳组合。你可以选择任何度量定义使用experiments.Monitor
培训对象的功能。
实验管理器为中断实验提供了两个选择:
停止是任何运行试验停止
并保存结果。当实验停止,您可以显示培训情节和导出输出这些试验。
取消是任何运行试验取消了
和丢弃他们的结果。当实验停止,不能显示培训情节或导出输出这些试验。
两个选项保存任何完成试验的结果并取消任何排队试验。通常情况下,取消是速度比停止。
而一个实验,你可以停止个人试验运行或取消个人排队审判。在进步结果表的列,单击停止或取消按钮的审判。
培训完成后,你可以重启的审判,你停止或取消。在进步结果表的列,点击启动按钮的审判。
或者,你取消重启所有的试验,在实验中经理将来发布,点击重启都取消了。
请注意
使用贝叶斯优化只支持的实验金宝app取消选择。此外,这些实验不支持取消试验的重启。金宝app
自定义训练实验,用详尽的扫描只支持金宝app停止选择。
这个例子展示了如何比较你的结果和记录你的观察后运行一个实验。
当您运行一个实验,实验经理多次列车网络设置定义的函数。hyperparameters的每个试验使用不同的组合。当实验结束时,一个表显示训练和验证指标(如准确性、RMSE和损失)为每个审判。比较一个实验的结果,您可以使用这些指标来对结果进行排序表和筛选试验。
对试验结果进行排序表,使用下拉菜单列对应的培训或验证指标。
头的一列,你想。
点击三角形图标。
选择按升序排序或按照降序排列。
过滤试验结果表,使用过滤器窗格。
在实验管理器将来发布,选择过滤器。
的过滤器结果窗格显示直方图的数字指标表。删除的直方图过滤器窗格中,在结果表中,打开下拉菜单中相应的列和清晰显示过滤器复选框。
调整滑块的直方图在培训或你想过滤验证指标。
表只显示试验结果的度量值的选择范围。
恢复所有的试验结果表中,关闭实验结果面板和开放的结果实验的浏览器窗格。
记录对你的实验的结果,添加一个注释。
细胞在结果表中单击右键,然后选择添加注释。另外,选择一个细胞在结果表中,在实验管理器将来发布,选择注释>添加注释。
在注释窗格中,在文本框中输入你的观察。
您可以添加多个注释结果表中的每个单元格。每个注释使用时间戳标记。
强调细胞对应于一个注释,点击上面的链接注释。
打开注释面板和查看你所有的注释,在实验管理器将来发布,选择注释>看注释。
这个例子展示了如何检查配置产生一个给定的实验结果。
在运行一个实验之后,您可以打开实验源窗格中看到一个只读复制实验的描述和hyperparameter表,以及链接的所有函数使用的实验。您可以使用此窗格中的信息来跟踪数据的配置,网络,和培训选项产生你的每一个结果。
例如,假设您多次运行一个实验。每次运行的实验,你改变的内容设置功能但总是使用相同的函数名。您第一次运行实验,使用提供的默认网络实验模板图像分类。第二次你运行实验,修改设置函数加载pretrained GoogLeNet网络取代最后一层转移学习的新层。为例,使用这两种网络架构,明白了创建一个分类深度学习实验。
在第一次实验结果窗格中,单击查看实验源链接。实验管理器打开一个实验源窗格包含实验的定义产生了第一组的结果。点击链接底部的面板打开设置函数,您第一次使用运行实验。你可以复制这个设置函数来重新运行实验使用的简单分类网络。
在第二个实验结果窗格中,单击查看实验源链接。实验管理器打开一个实验源窗格包含实验的定义产生了第二组的结果。点击链接底部的面板打开设置函数,使用第二次运行实验。你可以复制这个设置函数来重新运行实验使用转移学习。
实验管理器存储所有的副本您所使用的功能,所以你不需要手动重命名这些函数当你修改并重新运行一个实验。
可视化、构建和训练一个网络没有全面hyperparameters,您可以使用深层网络设计师应用。你训练你的网络后,生成一个脚本作为一个起点为您深度学习实验。有关更多信息,请参见调整代码生成深陷网络设计师用于实验管理器。
使用MATLAB在线并行运行一个实验,你必须能够访问云中心集群。有关更多信息,请参见使用并行计算与云中心集群在MATLAB工具箱(并行计算工具箱)。
导航实验管理器使用鼠标不是一个选项时,使用键盘快捷方式。有关更多信息,请参见实验管理器的键盘快捷键。
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。