上QQ阅读APP看书,第一时间看更新
4.3.5 整合函数
让我们检查一下是否所有工序都已就位:
·编写完成了关于样本数据准备的代码;
·完成了对predict()函数的升级;
·得到了无须升级loss()函数的结论;
·完成了对gradient()函数的升级。
检查……检查……检查……再检查。现在我们终于可以将这些变化应用到学习程序之中了:
我们花了几页纸的篇幅才完成了代码,但它与之前章节的代码十分相似。除了加载和样本数据准备这部分的代码之外,我们只改变了三行代码。注意,我们的函数具有一般性,它们不仅可以处理Roberto的三输入变量数据集,还可以处理任意数量的输入变量。
如果运行该程序,则可以得到如下结果:
损失函数值在每次迭代中都会减少,这表明程序确实是在学习。然而,我们的工作还没结束,因为在本章开头忽略了偏置参数以简化思路。其实我们很清楚,不应该期望在没有偏置参数的情况下得到良好预测。幸运的是,把偏置放回去看起来很容易。