s 因为在英国隔离没啥事做,学完了deeplearning.ai课程中的Neural Networks 和 Sequence Models,但是飞快地过完了之后没有什么收获,想着可能是被动学习而没吸收什么东西,所以开始记笔记噜~有什么问题欢迎指正~
下面这个解题是我在网上找到最全的,谢谢作者大佬www
deeplearning.ai 深度学习专项课程 解题集合 ( 已更新完毕) 仅供参考juejin.im一 Foundations of Convolutional Neural Networks
神经网络识别人像步骤:
前几层检测边缘,中间几层检测人脸的一部分,最后几层检测整个对象。
同理与狗:
然后举了个例子,这个图像我们可以看到有很多垂直和水平的线段,第一步就是检测垂直和水平的边缘右侧两张黑色图片里的白色线段。
1 Edge Detection
1) Vertical Edge Detection
最开始我们有一个6*6的矩阵,然后我们用3*3的filter/kernal去做卷积得到一个4*4的矩阵。
卷积的具体步骤是在原矩阵找到一个3*3的矩阵,然后点乘我们的filter,得到一个数,比如上图的左上角点乘过滤器得到-5。接下来数字的得到跟上面步骤一样,红色框住的只需要把左上角3*3向右平移一个数字,然后继续点乘就好,其他同理,平移+点乘。
Filters:
2) 对于垂直边缘:
在这个6*6的矩阵中,左边亮,右边暗,可以看到是一个分割,经过卷积之后,我们得到中间的一列白色。
但如果是左暗右亮,我们可以得到:
对于水平边缘:
除了以上讲的两个,还有Sobel和Scharr过滤器,自己在做卷积的过程中,需要根据想要得到什么结果而选择不同的filter。
2 Padding(填充)
卷积的两个缺点是
-每次做一次卷积,图像的矩阵就会缩小(比如上面的6*6缩成4*4),如果做很多层神经网络的话,图像的
-对于原矩阵边缘的数字,我们只算过一遍,会丢失边缘的信息
为了消除这两个问题,我们引入padding
其实就是在原图像外面加一层或者几层像素,然后再做卷积。
比如像下图,外面加上一层像素,从6*6变成8*8,然后卷积后就又变成6*6了。
为了得到和原图像一样尺寸的矩阵,我们可求到
3 Stride convolution
这个就是左右上下横跳的步长,如下图
4 在RGB图像上做卷积
这样我们就有了三层,相应的,过滤器也得有三层:
多加了两层之后也是相似的,在每一层和过滤器做点乘,然后得到加和,然后平移,再得到加和。
-考虑多过滤器
如果有多个过滤器的话就单独做卷积然后叠起来,如下图:
二 Case studies
1 Classic Networks
-LeNet-5
主要用于辨认手写字体:
其实就是卷积--池化--卷积--池化的过程。
-AlexNet
-VGG-16
简化神经网络,更关注过滤器
2 ResNets (Residual Networks参差网络)
skip connection可以解决神经网络太多层所带来的梯度下降和爆炸等问题。
普通和ResNet区别:
传统过程:首先通过a[l]得到z[l+1]--然后用ReLu得到a[l+1]--然后再用得到的a[l+1]带入公式得到z[l+2]......
shortcut/ skip connection:
运用残差块可以搭建更深的神经网络:
直接把得到的a[l]拉入求a[l+2]中,加入残差块,改变最后一个公式。
3 1*1卷积
相当于加个权重来缩小我们的input的nc
4 Inception network
就是一个一个算,然后叠起来就好:
Inception network
计算成本:1*1过滤器形成的瓶颈层降低了计算数量
三 Object Localization
1 Object Localization
之前只是分类,现在要开始指出object的位置和边界框。(惯例左上角为(0,0) 右下角为(1,1))
那么我们就需要有
Target Label y:
对于空白背景的话,我们除了关心第一个pc外,其他都不关心。
2 Landmark Detection
比如人脸识别脸上的所有坐标和识别人体动作。
当然要用提前打好坐标的图片去train。
3 Object Detection
sliding windows detection
第一步有一个window,然后一步一步遍历(每一步都用ConvNet)在图片里面进行识别。
然后window一步一步增大,然后遍历,用卷积网络得到
4 Bounding Box Prediction
YOLO algorithm (You only loop once)
首先把图片划分出网格,然后看物体的中间点落在哪个网格。
举例说明:
一个分好grid的照片:
第一步,每个grid里找到两个box:
第二步,去掉低概率的box:
第三步: 用non-max suppression得到结果:
5 Non-max suppression
对于同一个物体的多个框,首先确定IoU大于某个值(两个框交集/并集)会找到有最高Pc值的框保留这个,删除另外的。
四 Face Recognition & Neural Style Transfer
(一) Face recognitoin
Face verification: 1对1,只需要确认是否是那个人
Face recognition:1对k,更加复杂
1 One-shot learning
-Siamese network:
对不同图片进行相同卷积神经网络的计算得出值进行比较:
-Triple Loss Function
三个同一个人的图片(A, P, N)进行比较:
-Binary Classification
(二) Neural Style Transfer
我们想要把图片C整成梵高模样:
1 Style Cost Function