(一)Deep L-layer neural network
1. 有多个隐藏层的神经网络
2. 但对于一个问题,事先难以知道使用几层的神经网络较好,解决该问题需要尝试,如先使用Logistic Regression,然后把隐藏层的层数设置为超参数,尝试多个不同的值,然后通过交叉验证或测试集进行评估
3.深度学习的常用注释
L---神经网络的层数,L=4,注意:神经网络计算时不把输入层计算在内。
n[i]--第i个隐藏层上节点的个数,n[1]=5,n[2]=5,n[3]=3,n[4]=n[L]=1
在这里,输入层记为n[0]=n[x]=3
a[i]---表示某层上的激活函数
w[i]---第i层的权重
b[i]----第i层的偏置单元
x=a[0],a[l]=y^
(二)Forward Propagation in a Deep Network
有多少层,就需要进行多少次的循环,使用for循环
矩阵的维度问题至关重要
(三)Getting your matrix dimensions right
用一张纸写下所解决问题的维度——用以检查代码的正确性
(四)Why deep representations?
1.为何使用深度学习会如此有效呢?
前几层的神经用以检测较简单的信息,随后的较为深入的几层可以将简单信息复合起来以便检测更为复杂的事物
如人脸识别、语音识别
但感觉这个还是不很清楚,有一点点迷喔,,,,
2.circuit theroy and deep learning
对于一个函数来说,深度神经网络每层节点数较少===浅层神经网络有居多的隐藏单元
对于解决一个问题,不建议滥用很多层的神经网络,甚至可以从逻辑回归尝试开始,然后尝试一个或两个的隐藏层,然后把隐藏层的层数当做要调整的参数或超参数来为神经网络找到合适的深度。
(五)Buildding blocks of deep neural networks
整个过程模拟了一次深度计算的过程,而迭代次数则控制了整个过程的循环次数。
(六)Forward and backward Propagation
主要讨论如何利用在五中的深度学习框架
在这个中,我想了一下的是关于,dW的问题,对于有m个样本的数据集来说,这一步相当于把原先的w矩阵给复原了,其维度是N[i]XN[i-1],即通过w使得最后的代价函数变化了多少,从而减去这部分的变化;而对于b来说,则是将其还原成N[i]XM,然后每一行加,最后算出平均的影响值,再减去。
关于dA的理解是:z[l]=w[l]*da[l-1],a[l]=g(z[l])所以对其理解是da[l-1]=w,而w中又包含a的元素,所以链式求导法则可以得出da[l-1]=w[l]*da[l]
可能得出的一个结论:机器学习算法起效是因为数据,而非成千上万行代码
(七)Parameters VS Hyperparameters
谈论如何调整深度神经网络中的参数问题
超参数的取值会影响参数的取值
比机器学习时代超参数的种类变多,对于超参数的选择可以采用尝试的办法,多尝试几次选取最优的值
(八)What does this have to do with the brain
讨论大脑与深度学习到底有什么相似性呢?
其实他们之间的相似度并不高