【清华AI自强计划-计算机视觉课程-第三讲课程笔记2】

神经网络为什么有效?
神经网络有一个性质:Universality_——“全包了”(普遍性)——即可代替所有的函数画出决策边界
简化模型到只有w和b两个参数,激活函数为sigmoid函数,而激活函数的跳变点和-b/w有关。
在这里插入图片描述
如果启用隐藏层神经元,同时令w1和w2的绝对值相等,符号相反,并且s1和s2设置为不同取值,则就会出现形如方波信号的图像。
在这里插入图片描述
再扩展一步,隐藏层每2个神经元可以画出一个形似方波信号的函数图像,并且能控制这个方波信号的宽度和高度
在这里插入图片描述

引入极限思想,无限的扩充隐藏层的神经元数量,就可以用无数的“小方波”去无限接近想要画出的任何函数图像。每一个“方波”相当于神经网络画出的“一笔”,理论上我们可以画出无数笔,来一点点描摹我们想要的任何决策边界
在这里插入图片描述
这也是为什么神经网络具有universality的原因。
有一个外国小哥有关神经网络写了一本电子书,是很好的入门材料:
http://neuralnetworksanddeeplearning.com/chap1.html

反向传播(back propagation)

如果说模型是个胖子,那么损失函数是一杆秤,衡量究竟有多胖模型有多好。
多分类情况下每一个训练集的y(真实值)展开写为one-hot编码矩阵在这里插入图片描述在one-hot编码矩阵里,属于哪一类,哪一位上就是1。
二分类的反向传播示意图:
在这里插入图片描述

反向传播传播的是误差,传播方向和前馈传播相反。
每个误差是针对每个神经元的,要先将前馈传播算出来之后才能做反向传播。
结构和符号说明:
在这里插入图片描述
BP流程说明:
在这里插入图片描述

在这里插入图片描述

有关反向传播的具体解释:
下文将公式推导说得很清楚
https://www.cnblogs.com/charlotte77/p/5629865.html
BP-偏导计算过程
在这里插入图片描述
在这里插入图片描述
延伸:

Jupyder和spyder使用区别比较

Jupyter实时反馈,处理.ipynb 文件(可以用这个一句一句写代码再放到大体系中去),spyder处理py文件
spyder将编程过程透明化,调试更加清晰,和matlab设计思路一致。
spyder可以选中某些行,右击点击run cell,实现单步调试。spyder的debug功能不好用

人工智能发展历程:

1955年达特茅斯会议标志着AI 的诞生;
1957年罗森布拉特发明第一款神经网络Perceptron,将人工智能推向第一个高峰,因计算能力未能突破陷入低谷;
1986年BP 神经网络使得大规模神经网络算法成为可能,将算法AI推向第2个黄金期,因人工智能计算机DARPA没能实现,政府投入缩减,AI进入第二次低谷。
2006年Hinton提出“深度学习”神经网络使得人工智能性能获得突破性进展,算法进入智能感知时代。

要知道自己喜欢什么。迷茫很正常,想要做这个,想要做那个,但只要选对了一个方向,愿意坚持做下去,就没问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值