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

调试神经网络
EN

Data Science用户
提问于 2014-06-11 10:22:36
回答 2查看 2.2K关注 0票数 10

我使用scipy.optimize.minimize (共轭梯度)优化函数在python中建立了一个人工神经网络。

我已经实现了梯度检查,双重检查一切等等,我很确定它是正确的工作。

我已经运行了几次,它达到了“优化终止成功”,但是当我增加隐藏层的数量时,假设的成本在它成功终止后会增加(其他一切都保持不变)。

从直觉上看,当隐藏层的数量增加时,成本就会减少,因为它能够产生一个更复杂的假设,可以更好地拟合数据,但情况似乎并非如此。

我有兴趣了解这里发生了什么,或者我是否错误地实现了神经网络?

EN

回答 2

Data Science用户

发布于 2014-06-11 12:34:51

神经网络的错误有很多种方式,所以很难调试。另外,为了解决你的直觉,每一个额外的隐藏层都会让学习变得更加困难。话虽如此,以下是一些可能性:

  1. 你增加了重量衰减。增加更多的层,增加更多的权重,这增加了你的正则化成本。
  2. 这个问题很简单,一个单隐层的模型就足够了。增加更多的隐藏层会使网络更难学习(更困难的优化问题)。
  3. 优化方法做得不太好(比起scipy.optimize,我更喜欢渐进式)。
  4. 您正在使用sigmoid/tanh激活函数。sigmoid函数导致了梯度问题的消失,使得多层学习变得困难。尝试使用ReLu函数。

训练神经网络需要大量的练习、运气和耐心。祝好运。

票数 9
EN

Data Science用户

发布于 2014-06-12 07:22:16

在大多数情况下,增加标准神经网络的隐藏层数并不能改善结果。更改隐藏层的大小将。

这一事实(隐藏层的数量很少)实际上在历史上已经被注意到,也是深入学习领域背后的动机。深度学习是一种有效的训练多层神经网络的聪明方法,例如,在不同层次的训练中分离特征子集。

YouTube上关于这个主题的很好的介绍视频

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

https://datascience.stackexchange.com/questions/319

复制
相关文章
YouTube API
YouTube API 能够让你搜索 YouTube 上的视频并且把它们显示在你的站点上。而且可以让你通过 API 上传视频。
Denis
2023/04/13
1.7K0
rails api+react+jwt验证教程
5.在models的application_record.rb中添加has_secure_password字段
不知雨
2019/01/14
1.5K0
「简单实战」YouTube Iframe API 的使用
业务需求需要在自己的网页上嵌入油管( youtube )上的视频,所以去踩了油管 IFrame Player API 的坑。其实和大多数国内视频网站的 ifram Embed 方式是相似,比如说爱奇艺、腾讯视频、优酷等。在这些视频网站上你会发现都有分享功能,其中有一项就是通用代码。油管提供的 IFrame Player API 也是类似的方案。
拾贰
2019/08/28
4.4K0
「简单实战」YouTube Iframe API 的使用
Rails MVC 和 CRUD(12)
保存成功就直接显示,如果保存失败,就重绘 new 页面,new 页面中加入了对错误信息的显示
franket
2021/11/25
2620
Rails MVC 和 CRUD(3)
要在 Rails 中显示“My first test” 的静态页面,需要新建一个控制器和视图
franket
2021/11/24
7260
Rails MVC 和 CRUD(5)
创建了一个叫 ArticlesController 的类,继承自 ApplicationController
franket
2021/11/24
3460
Rails MVC 和 CRUD(7)
(这里的 /articles 明明对应两个方法,GET、POST ,有点不太明白,为什么这样指定就一定成了POST请求)
franket
2021/11/24
2010
Rails MVC 和 CRUD(9)
保存数据 修改 create 方法,对提交的数据进行保存 [root@h202 blog]# vim app/controllers/articles_controller.rb [root@h202 blog]# cat app/controllers/articles_controller.rb class ArticlesController < ApplicationController def new end def create # render plain: params
franket
2021/11/25
1940
Rails MVC 和 CRUD(15)
点击 【Destroy】 后会根据我们的定义弹出提示 连续删除几次后所剩无几 目前已经通过 Rails 实现了文章的 新建、显示、列出、更新、删除 操作 ---- 命令汇总 rails server -b 0.0.0.0 rails generate controller welcome index cat app/views/welcome/index.html.erb vim config/routes.rb grep -v " #" config/routes.rb | grep -v
franket
2021/11/25
3590
Rails MVC 和 CRUD(2)
MVC 分块设计有助于管理复杂的应用程序,因为可以在一段时间内只用关注一个方面;例如,可以在不依赖业务逻辑的情况下专注于视图设计;同时也让应用程序的测试更加容易;MVC 分层同时也简化了分组开发;不同的开发人员可同时开发视图、控制器逻辑和业务逻辑
franket
2021/11/24
3790
Rails MVC 和 CRUD(13)
定义 update 方法,并且添加 edit 链接和 show 链接 [root@h202 blog]# vim app/controllers/articles_controller.rb [root@h202 blog]# cat app/controllers/articles_controller.rb class ArticlesController < ApplicationController def new @article = Article.new end def
franket
2021/11/25
1710
Rails MVC 和 CRUD(8)
再次提交一回 ---- 创建模型 Rails 提供了一个生成器用来创建模型 [root@h202 blog]# bin/rails generate model Article title:string text:text Running via Spring preloader in process 13216 invoke active_record create db/migrate/20160422140912_create_articles.rb c
franket
2021/11/25
2740
Rails MVC 和 CRUD(1)
Rails 的相关基础,详细可以参考 官方文档 和 Ruby China 的 Rails 入门
franket
2021/11/24
3510
Rails MVC 和 CRUD(10)
再次加载 可以成功显示了 ---- 列出所有文章 [root@h202 blog]# vim app/controllers/articles_controller.rb [root@h202 blog]# cat app/controllers/articles_controller.rb class ArticlesController < ApplicationController def new end def create # render plain: params[:ar
franket
2021/11/25
1900
Rails MVC 和 CRUD(6)
不过,通过查看源码,我们可以看到 action 部分指向的是当前页面 action="/articles/new" , 而这个页面 (Restfull API) 应该是用来进行显示的,而不是进行处理的
franket
2021/11/24
2740
Rails MVC 和 CRUD(11)
列表页面多出来两个链接,点击 【New article】 成功跳转到了添加页面,随便输入点什么,提交 自动跳转到了显示页面,点击【Back】 跳转回了所有列表页面 Tip: 之所以每做一次修改都能直接生效,是因为在开发模式下(默认),每次请求 Rails 都会自动重新加载程序,因此修改之后无需重启服务器 ---- 数据验证 我们常常有对输入进行校验的需求,以避免接受到了无效或不合规范的数据 [root@h202 blog]# vim app/models/article.rb [root@h
franket
2021/11/25
2800
Rails MVC 和 CRUD(14)
删除文章 在 controllers 中定义 destory 方法 然后在 index 视图中加入 Destroy 链接 [root@h202 blog]# vim app/controllers/articles_controller.rb [root@h202 blog]# cat app/controllers/articles_controller.rb class ArticlesController < ApplicationController def new @article
franket
2021/11/25
2230
Rails MVC 和 CRUD(4)
结果展示了当前的一系列 Restfull API 与 Controller#Action 的对应关系
franket
2021/11/24
4170
Rails布局和视图渲染
基于“多约定,少配置”原则,在 index 动作末尾并没有指定要渲染的视图,Rails会自动在控制器的视图文件夹中寻找 action_name.html.erb 模板,然后渲染。这里渲染的就是 app/views/books/index.html.erb
用户1515472
2019/07/24
3.4K0
rails -help
rails new APP_PATH [选项] //APP_PATH项目名称
不知雨
2018/11/13
2.6K0

相似问题

如何防止CSS动画在页面加载?

16

如何让webrat / selenium“等待”页面的CSS加载?

21

防止CSS3动画在页面加载后触发

24

页面加载后等待元素加载

20

Jquery等待/页面加载

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文