深度学习
深度学习:是机器学习的一个分支
逻辑回归不能处理线性不可分的情况,这个时候我们需要讲一些数据转换,
坐标移动,比如在向量上变成椭圆
深度学习软件:caffe pytorch tensorflow keras
cpu vS gpu gpu就会算,处理不了逻辑
深度学习实质:
x--一层--两层--多层--输出(多分类使用softmax,二分类使用LR)
每一层可以理解为特征组合,中间的这些被称为线性交换+激活
把神经网络做的窄而深更好,模型变深还有很多学习上的障碍需要解决
深度学习的梯度下架法和链式法则
图片
在多层神经网络中,用sigmod函数作为激活函数,越靠
前的神经元w,表现的越不好,因此导数趋近于0,会出
现梯度消失的问题,w学习的东西越来越少(类似参加高
考,没必要学习幼儿园的知识)
sigmoid是造成梯度消失的原因,解决梯度消失就要换导数相对比较大的激活函数
梯度下降
解决梯度消失的问题是因为sigmod的范围在0-0.25
tan=e*z-e*z/e*z+e*z取值在-1-1的范围内可以在中间,不适合在最后,没有概率意义
tanh的导数在0处为1,sigmod在0处是0.5
tanh可以缓解梯度消失,但是解决不了这个问题
relu当横坐标大于0时,斜率为1,小于0时,始终为0
relu简单粗暴,要么为0,要么为1,足够简单,解决了梯度消失的问题
tanh和sigmoid是慢慢为0的
在最后一层有概率意义,不能随便弄
总结:对梯度的理解
1多层单神经元+sigmoid 梯度消失的时候
2多层多元神经元+sigmod 多了一个和符号
3多层多元神经元+softmax在2的基础上对最后做了处理
梯度消失的本质:激活函数的导数小,多次相乘趋近于0,
第一个必须在面试前推到出来,本质上就是让你解释梯度消失的问题