首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设计神经网络

设计神经网络
EN

Stack Overflow用户
提问于 2013-06-13 03:23:04
回答 4查看 16.2K关注 0票数 33

我正在学习神经网络和反向传播。我想我知道网络是如何工作的,从输入、输出、隐藏层、权重、偏差等方面。但是,我仍然不能完全理解如何设计一个适合问题的网络。例如,我想要一个神经网络来学习如何玩跳棋,我该如何将这个问题转化为神经网络设计?干杯:)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-06-14 03:26:51

在设计神经网络时,肯定有很多决策要做,而且没有一个正确的答案。但是,有几个一般性问题通常对思考很有帮助:

  1. 您尝试生成什么作为输出?使用神经网络玩跳棋似乎是一种具有挑战性的游戏,因为有很多潜在的走法,而且每一轮都会有不同的可用走法,但你可能希望下一步是输出。
  2. 你的输入是什么?这应该包括您认为对做出您希望神经网络做出的决策有用的任何东西。在草稿示例中,您可能需要向神经网络提供board.
  3. Recurrent或前馈上所有碎片的位置?通常,除非有一个非常重要的原因,否则最好使用前馈,因为它使您能够使用反向传播来训练网络。例如,对于草稿,你可能想要使用前馈网络。
  4. 你需要一个隐藏层吗?这是一个很难知道答案的问题,可能需要一些实验,除非你对你的输入所占据的高维空间有很多了解。草稿很复杂,看起来需要一个隐藏层,但很难确定。

显然,关于神经网络的设置可以/必须做出更多的决定,但希望这些决定能让你继续前进。

票数 25
EN

Stack Overflow用户

发布于 2014-05-20 17:57:16

嗯,我认为你的问题是任何其他神经网络设计者的问题...你必须始终记住的一件事是,神经网络是启发式模型。因此,他们从经验中学习,和我们一样..你不能将纯粹的知识“插入”到神经网络中(这在其他机器学习算法中是可能的)我解决你的问题的方法,或者我面临的任何一般问题,都是从这样的问题开始的:“我如何将这些知识教给别人?”,“我将提出什么练习,让这个人可以学习它?”

你必须知道/定义游戏规则,以及你可以使用的变量和你想要实现的目标。然后,你必须训练网络(获取数据),目标是赢得游戏,就像它是一个孩子一样。在足够的数据和权重变化之后,神经网络应该能够回答合理的游戏以赢得比赛……随着你得到更多的数据,你可能会有更准确的答案,因此,一个更好的玩家!

尽管这看起来很简单,但在训练神经网络或任何其他机器学习算法时,您必须考虑许多方面,例如定义模型类型、适当的损失函数、适当的体系结构微调、训练/测试数据采样等。

这不是决定性的,也不是线性的,但这是我的观点;)祝你好运!

票数 6
EN

Stack Overflow用户

发布于 2013-06-13 04:00:28

使用神经网络(或任何其他类型的模型)对问题进行建模是一个具有挑战性的问题;没有灵丹妙药可以解决这个问题。我建议您阅读其他人开发的技术,看看您是否可以将这些技术应用于您的问题。你可以从下面这样的引用开始,

https://en.wikipedia.org/wiki/Types_of_artificial_neural_networks

并在谷歌学者中搜索更多的例子。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17073598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档