deeplearning.ai
神经网络和深度学习
1. 神经网络基础
逻辑回归
- 损失函数
- 成本(代价)函数
指的是考虑m个样本的成本 - List item
梯度下降法
- 学习率
- 计算图
- 搞清楚python编程中 使用’dvar‘表示梯度下降算法过程中所关心的变量的导数值
最有效率的计算方法是,从右向左计算导数。
- 搞清楚python编程中 使用’dvar‘表示梯度下降算法过程中所关心的变量的导数值
- logic回归中的梯度下降
- 反向
- m个样本的梯度下降
j(w, b)是一个平均值
向量化
尽可能不要使用显式循环
np.exp()
np.dot()
np.log()
np.ads()
np.maximum()
np.sum
python中的broadcast
reshape是o(1)操作,成本很低,在每一步确定输入尺寸
np.random.randn(5)
# 输出是一个秩为1的数组
a = np.random.randn(5,1) # 列
np.random.randn(1,5) # 行
# 输出行列向量
assert(a.shape == (5,1))
# 声明a为xx的矩阵(向量)
# 如果最后a为数组,可reshape
2. 浅层神经网络
- 右上角中括号表示第一层(隐藏层),角标表示该层的第几个元素,右上角小括号表示是第几个样本(数据集维度)
- 将样本维度的循环向量化
- 激活函数
必要,如果是线性激活函数,多层神经网络只是参数的再组合,最终还是z = wx+b,复杂度同一层神经网络。
线性激活函数只应该出现在回归问题的输出层
sigmoid只应出现在二分类问题的输出层,否则用relu