首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于神经网络的二维/三维阴影

基于神经网络的二维/三维阴影
EN

Stack Overflow用户
提问于 2013-08-31 16:49:30
回答 1查看 594关注 0票数 0

在用java编写了一个简单的backpropagated+feedforwarded神经网络类之后,我尝试了一个阴影机神经网络来检查一个四角体(或三角形)是否在一个顶点上投下阴影。

输入(标准化,8+2*targetNumber总计):

  • 点光坐标xL和yL
  • 三角形或四边形xt1,xt2,xt3,yt1,yt2,yt3坐标
  • 目标顶点坐标xT(i),yT(i)

输出(标准化,targetNumber总计):

  • (第一点):阴影(1.0F)或无阴影(0.0f)

问题:,它需要思考多少个神经元?我必须尝试所有的组合神经元数字-每隐层,隐层数,最小训练迭代,.?有什么办法能预见到吗?

问题:,对于数百万个顶点来说,这种方法的性能如何?(NN似乎比射线追踪器更令人尴尬)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-31 17:22:57

问:对于数百万个顶点来说,这种方法的性能如何?(NN似乎比射线追踪器更令人尴尬)?

您试图解决的问题似乎不是机器学习模型的问题。这类方法应该应用于复杂的统计数据的问题上,因为要想找到好的算法对人类来说太困难了。这样容易的问题(在这个意义上,你可以找到高效的算法),你可以深入分析(因为它只是2/3维数据),应该使用经典的方法,而不是神经网络(或任何其他的宏观学习模型)。

即使你尝试这样做,你对问题的描述也准备得很糟糕,网络不会通过向它展示这些数据来学习“影子的概念”,有两个模型可以用神经网络来表示与你的数据一致。即使是经过训练的网络的效率似乎也无法与“算法”替代方案相媲美。

总之,没有理由使用这些方法,事实上,使用这些方法:

  • 由于问题的代表性不好,所以不能很好地工作(而且我看不出“头上”有一个好的表象)
  • 即使它能起作用,也不会有效。

问:它需要思考多少个神经元?我必须尝试所有的组合神经元数字-每隐层,隐层数,最小训练迭代,.?有什么办法能预见到吗?

正如我前面说过的,不管您使用什么参数,它都不会很好地学习这类数据。但是对于“未来参考”--对于“简单”的神经网络,实际上,总是需要一个隐藏层。在大多数情况下,由于渐变现象的消失,更多的隐藏层实际上不会有帮助(对于这种现象,深度学习是一个成功的解决办法)。对于隐藏层的大小,有一些经验法则,但没有真正的数学答案。一个很好的选择是使用大量的隐藏单元,并增加强大的正则化,这将防止网络过度拟合,这可能是太大的隐藏层的结果。Regarind迭代次数--您应该,而不是,使用它作为参数。网络应该被训练,只要它不满足一些定义良好的停止标准-迭代次数不是其中之一。最经典和最有效的方法是测量泛化误差(独立验证集上的错误),以及当它开始上升时-停止学习过程。

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

https://stackoverflow.com/questions/18550469

复制
相关文章

相似问题

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