警告:捕获异常/无法将网络重置为较小的学习率

B_B_ 成员职位:70大师
2018年11月编辑 帮助
在运行一个小型神经网络示例时收到此消息。没有得到堆栈跟踪消息。



< ?xml version="1.0" encoding="UTF-8" standalone="no"?>
<过程version = " 5.0 " >
> <上下文
<输入/ >
<输出/ >
<宏/ >
> < /上下文





< /操作符>


< /操作符>






< /操作符>

<枚举关键= "分区" >


< /枚举>

< /操作符>



< /操作符>



< /操作符>












> < /过程
< /操作符>


<枚举关键= "分区" >


< /枚举>

< /操作符>




< /操作符>





< /操作符>

<列出关键= " hidden_layers " >



< / >列表



< /操作符>




< /操作符>





< /操作符>

<列出关键= " application_parameters " / >
< /操作符>


<参数键="属性"值="预测(类)"" / >



< /操作符>




< /操作符>





< /操作符>

“参数”<列表键= >
<参数键= " NNTrain。learning_rate“价值= "[。1。9;3;线性]" / >
<参数键= " NNTrain。势头“价值= "(0.0,1.0,4;线性)" / >
< / >列表








<列出关键= " hidden_layers " / >



< /操作符>





> < /过程


<列出关键= " application_parameters " / >
< /操作符>




< /操作符>









> < /过程
< /操作符>


<列出关键= "日志" >



< / >列表
< /操作符>







> < /过程
< /操作符>

<列出关键= " name_map " >

< / >列表
< /操作符>

























> < /过程
< /操作符>
> < /过程

答案

  • 土地土地 RapidMiner认证分析师,RapidMiner认证专家,成员职位:2531年独角兽
    你好,
    似乎是神经网络依赖的库中的一个bug。尝试更改您的学习率参数设置。

    问候,
    塞巴斯蒂安。
  • chaosbringerchaosbringer 成员职位:21Maven
    你好,
    你指的是哪个图书馆?
    有可能很快修好吗?

    谢谢你!
  • 土地土地 RapidMiner认证分析师,RapidMiner认证专家,成员职位:2531年独角兽
    你好,
    抱歉,但目前这不是我们的首要任务。正如我所说:尝试使用不同的学习率参数。或者更好:如果可能的话,尝试其他的学习算法。根据我的经验,神经网络是强大的多工具,但可以被更专业的算法超越。

    问候,
    塞巴斯蒂安。
  • chaosbringerchaosbringer 成员职位:21Maven
    你好,
    很抱歉继续这条线,但我对这个问题又有几个问题。
    我也从rapidminer/joone-net和weka-multiperceptron中得到了“学习率太小”的错误。

    那么,如果它发生在两个神经网络实现中,它真的是一个实现错误吗?
    为什么学习率收敛到0,即使我没有设置衰减参数?这在反向传播中是正常的吗?
  • 土地土地 RapidMiner认证分析师,RapidMiner认证专家,成员职位:2531年独角兽
    你好,
    就我所知:没有。在我看来,这根本说不通。
    不幸的是,我没有时间深入研究代码来解决这个问题……但是如果有任何解决方案,请告诉我,我会立即包含到代码中。

    问候,
    塞巴斯蒂安。
  • 大卫大卫 成员职位:3.贡献我
    我不知道我的解是否适用于这个问题,但是....

    我在数据集上得到了同样的错误信息,对我来说,这是一个零除问题。我在我的数据集中有赔率,当我通过做1/赔率来计算它们的百分比时,赔率结果是零,我在尝试做参数优化时得到了这个错误。只要从数据集中去掉零概率就解决了我的问题。这些在我的示例数据集中显示为∞。
  • tdhollantdhollan 成员职位:2贡献我
    亲爱的所有人

    我也遇到了同样的问题。在使用rapidminer进行神经网络训练的两次尝试中,似乎有一次会出现这种情况。我使用的数据集是干净的,不包含缺失或无限值。改变学习率也无济于事。

    至少在我的经验中,如果没有适当的解决方案,这是一个可能阻止我进一步使用rapidminer的主要错误。关于这个话题有什么进展吗?

    提前感谢

    托马斯。
  • IngoRMIngoRM 管理员、版主、员工、RapidMiner认证分析师、RapidMiner认证专家、社区经理、RMResearcher、会员、大学教授职位:1751年RM创始人
    你好托马斯,

    谢谢你让我们想起这个问题。如果计算误差为无穷大,则学习率将自动除以2,这可能是由于数据错误或根本没有学到任何东西而发生的。如果这种情况发生得太频繁,学习率就会变得太小(接近于0),并呈现出消息。

    由于神经网络在我们的测试数据集上表现得非常好(由于几个原因,我们几乎没有在我们的项目中使用神经网络),不幸的是,我们无法重现这一点,并检查这里是否有任何问题,或者这是否确实是有意的行为。是否有可能与我们共享数据集和流程,以便我们尝试重现问题?

    如果有,请联系contact (at) rapidi.com。

    谢谢你的支持。欢呼,
    Ingo
  • tdhollantdhollan 成员职位:2贡献我
    嗨Ingo

    感谢您的及时回复。我给你发了一封电子邮件,附上了一个场景。

    关于当前的神经网络实现,我还有一些问题:
    1)根据帮助框中的说明,没有隐藏层我无法设置网络。
    2)在我看来,基本的“权重衰减”参数是缺失的?衰减复选框指的是学习率的降低,而不是权重的正则化(一个重要的调优参数)。
    3)激活功能还不能(尚)由用户控制,我说的对吗?
    4)我认为使隐藏神经元的数量从参数网格搜索算子中可控是有用的。

    最好的

    托马斯。
  • IngoRMIngoRM 管理员、版主、员工、RapidMiner认证分析师、RapidMiner认证专家、社区经理、RMResearcher、会员、大学教授职位:1751年RM创始人
    你好托马斯,

    谢谢你发来的bug报告。我们的开发人员会对此进行更深入的研究。也感谢其他的问题和评论。帮助文本似乎指的是旧版本的操作符,它确实更强大(没有隐藏层可能,激活函数可控),但速度很慢,并且提供了相当糟糕的预测性能。在重新设计过程中,这两个功能似乎被删除了(可能是出于一些很好的原因)。

    通过参数优化控制不仅对神经元的数量是不可能的,而且对所有基于列表的参数设置也是不可能的。解决这个问题远非微不足道,但这个问题在我们(不断增长的)待办事项清单上。

    欢呼,
    Ingo
  • churtadochurtado 成员职位:1贡献我
    大家好,我在使用神经网络算子训练预测模型时也遇到了同样的错误信息。我意识到训练数据集有一个空标签值,删除它,一切都很顺利。
登录注册置评。