网易云课堂 课程链接: https://mooc.study.163.com/smartSpec/detail/1001319001.htm
课程架构
一.、神经网络和深度学习(https://mooc.study.163.com/course/2001281002#/info)
1 深度学习概论
2 神经网络基础
3 浅层神经网络
4 深层神经网络
二. 改善深层神经网络:超参数调试、正则化以及优化
三、 结构化机器学习项目
四、卷积神经网络
五、序列模型
本文是博主对 神经网络基础 部分的学习笔记,记录了重要公式、推导过程,用于分享、便于复习。
2.1 Binary Classification(二分分类)
训练样本:
m个样本的训练集:
更紧凑的写法: (nx行,m列的矩阵),
2.2 Logistic Regression (logistic 回归)
输入一个特征向量x, 是对y的预测值:
设参数 由b和w组成,则公式简化:
2.3 Logistic Regression cost function(为了训练w和b,需要定义一个成本函数/损失函数)
对单个样本定义损失函数 Loss(error) function:
对全体样本定义成本函数 Cost function (是个凸函数):
2.4 Gradient Descent(梯度下降法)
α 为自定义的学习率,对J求w的偏导, 重复 w := w - α dw, dw为导数/斜率,逐步向最优点。
2.5-2.8 讲了导数和导数计算的计算图,数学基础知识。
2.9 Logistic Regression Gradient descent(logistic回归中的梯度下降 —— 单个样本)
定义符号:
计算图(反向计算导数):
,
梯度下降:
2.10 Gradient descent on m examples (m个样本的梯度下降)
算法:
2.11 - 2.12 Vectorization (向量化,验证了python中向量运算比for循环快很多。)
2.13 - 2.14 Vectorizing Logistic Regression (向量化logistic回归,梯度下降的一次回归计算)
说明:w是[n,1]数组,X是[n,m]数组,Z是[1,m]数组,b会从一个实数自动转化为[1,m]数组(python中的broadcasting)
2.15 Broadcasting in Python (Python中的广播)
一个 [m,n] 矩阵, +-*/ 一个 [1,n] 或者 [m,1] 矩阵,则自动扩充为 [m,n] 矩阵,逐个元素 +-*/。
2.16 A note on python/numpy vectors (关于 python/numpy 向量的说明)
不建议使用秩为1的数组
2.17 Jupyter/ lpython 笔记本的快速指南
2.18 logistic损失函数的解释
测试和作业
https://github.com/stormstone/deeplearning.ai
https://blog.youkuaiyun.com/u013733326/article/details/79827273