1、损失函数J(w,b)的定义:
其中,?(?)是训练样本的预测值,即:σ(?(?)) = σ(???(i)+b)
2、逻辑回归计算公式:
- z=x+b;
- ?=a=σ(z)=1/(1 + );
- L(a, y)=-(y*log(a)) + (1-y)log(1-a);
接下来要做的是计算这些微分,并且求出平均值,从而得到全局的梯度值,然后将它应用到梯度下降的算法中;
代码流程如下:
//首先初始化 J,dw1, dw2, db
- 但这种计算中有两个缺点,也就是说应用此方法在逻辑回归上你需要编写两个for循环。第一个for循环是一个小循环遍历m个训练样本,第二个 for 循环是一个遍历所有特征的for循环。
- 当你应用深度学习算法,你会发现在代码中显式地使用for循环使你的算法很低效,同时在深度学习领域会有越来越大的数据集。所以能够应用你的算法且没有显式的 for 循环会是重要的,并且会帮助你适用于更大的数据集。所以这里有一些叫做向量化技术,它可以允许你的代码摆脱这些显式的 for 循环。