梯度下降,向量化,广播

1.成本函数J(w,b)是一个凸函数

2.梯度下降法就是从初始点开始朝最陡的方向走一步,一次次迭代往下走,

最终会得到一个全局最优解

3.w = w-αdJ(w,b)/dw,α是指学习效率,dJ(w,b)/dw是指w的更变或变化

.在深度学习中会出现很多数据集,如果过通过for循环一次次地遍历会降低

效率,可以通过向量化来进行运算,效率更高,要快300倍左右

4.向量化vectorized

例如:计算n个y = w^Tx+b,可以使用numpy库中的dot()函数

z = np.dot(w,x)+b,其中dot(w,x)就是表示w^T

5.dz^i = a^i - y^i

6.dz求和:
db = 1/m*np.sum(dz^i)

7.总体:完成一次训练集m的梯度下降
Z = w^T*X+b =np.dot(w.T,X)+b
A = 符号(Z)
dZ = A-Y
dw = i/m*dZ^T
db = i/m*np.sum(dZ)
w = w - αdw
b = b - αdb

8.对矩阵中的每一列求和,并且求每一列占比例

1)先使用np包中的np.array()创建矩阵

A = np.array()

2)再使用 矩阵变量名.sum(axis = 0)求第一列的和,axis=0表示竖立求和

当axis = 1就是水平求和

cal = A.sum(axis = 0)

3)使用100*矩阵变量名/每列和变量.reshape(1,4)#表示矩阵的函数1,4指行列

percentage = 100*A/cal.reshape(1,4)

9.当我们进行矩阵运算时,除法如果不确定矩阵的大小直接使用reshape()函数
就可以

10.如果一个向量跟一个数相加,那么将这个数字展开为列向量相加

11.如果后面的一个矩阵的行列阶数比前面一个少,那么会复制自己与前面一样

posted @ 2021-08-25 21:37  求知律己  阅读(81)  评论(0)    收藏  举报