功能是如何“训练”和“trainNetwork”不同的下面吗?

29日视图(30天)
功能是如何“训练”和“trainNetwork”不同的下面吗?当我应该使用“训练”而不是“trainNetwork”,反之亦然?

接受的答案

MathWorks支万博1manbetx持团队
“训练”和“trainNetwork”及其相关函数对应于网络学习的两个完全独立的宇宙。“训练”和相关函数用于创建和培养一个“浅神经网络”,这是有用的近似函数和聚类。另一方面,“trainNetwork”及其相关函数用于创建和培养“深层神经网络”* 哪一个 * 主要是用于图像分类。
功能“训练”和“trainNetwork”坐上完全独立的代码库。他们是同一个工具箱的一部分(神经网络工具箱),但彼此独立的。
虽然你可以训练深网络或浅网络与功能,有一些原因使培训深网络“trainNetworks”更容易:
  • 深的网络通常需要大量的训练数据,通常不适合在RAM中(如果训练或GPU GPU)。“trainNetwork”功能设计时,考虑使用算法是随机梯度下降,和亚当优化算法,mini-batches工作,同时保持其他的训练数据的内存。
  • 函数“trainNetwork”(和所有相关的功能)更紧密集成与cuDNN (NVIDIA的底层库做神经网络在gpu)(例如,支持快速操作,比如旋转)。万博1manbetx
  • “trainNetwork”周围的生态系统密切跟随深度学习的新趋势,而一个“训练”侧重于经典算法用于训练神经网络。
如果你设置相同的网络体系结构的功能,代码优化网络参数会有所不同,和这样做的算法也将是不同的。“训练”功能提供了更多的各种各样的算法。函数“trainNetwork”提供了算法在最近的研究深度学习。

更多的答案(0)

s manbetx 845


释放

R2017b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!