【发布时间】:2016-01-04 07:11:32
【问题描述】:
我将使用 NEAT(Encog C# 版本)分析数据。然后,我想确认学习收敛时的网络结构和网络权重。虽然我一直在阅读 Encog 文档,但我找不到文章和示例代码。能否告诉我如何做到这一点(示例代码或其他方式)。
【问题讨论】:
-
感谢您纠正拼写错误。
我将使用 NEAT(Encog C# 版本)分析数据。然后,我想确认学习收敛时的网络结构和网络权重。虽然我一直在阅读 Encog 文档,但我找不到文章和示例代码。能否告诉我如何做到这一点(示例代码或其他方式)。
【问题讨论】:
我建议您查看Pluralsight courses by Abishek Kumar 您可以通过注册免费试用来观看课程。
要“确认网络权重”,我建议您从 Kumar 的“ENCOG 3 机器学习简介”开始。从他的“弹性传播”或“快速传播”训练算法示例开始,因为这些是最容易设置的(为许多其他训练算法设置参数很棘手)。这些算法将设置您网络的权重。
要“确认网络结构”,我会推荐 Kumar 的“使用 ENCOG 进行高级机器学习”课程,该课程有两个关于网络调优的部分。我建议你只使用一个隐藏层,并使用他的教程(或可下载代码)中描述的“修剪”技术来选择隐藏层中的神经元数量。
要确定“学习何时收敛”,我建议您按照他的示例(或下载他的示例代码)并使用 StopTrainingStrategy(这样当全局错误开始增加时您会自动停止训练)和 EarlyStoppingStrategy(这样您会自动当交叉验证错误开始增加时停止训练。
【讨论】: