示例:波士顿房价预测

1. 线性回归模型

假设房价和各影响因素之间能够用线性关系来描述:

模型的求解即是通过数据拟合出每个wjw_jwj​和bbb。其中,wjw_jwj​和bbb分别表示该线性模型的权重和偏置。一维情况下,wjw_jwj​ 和 bbb 是直线的斜率和截距。

2. 使用Python和NumPy实现波士顿房价预测任务

示例:波士顿房价预测_第1张图片

2.1 数据处理

数据处理包含五个部分:数据导入、数据形状变换、数据集划分、数据归一化处理和封装load data函数。数据预处理后,才能被模型调用。

2.2 模型设计

实现模型“前向计算”(从输入到输出)的过程。

2.3 训练配置

模型设计完成后,需要通过训练配置寻找模型的最优值,即通过损失函数来衡量模型的好坏。

2.4 训练过程

训练过程是深度学习模型的关键要素之一,其目标是让定义的损失函数LossLossLoss尽可能的小,也就是说找到一个参数解www和bbb,使得损失函数取得极小值。

梯度下降法

现实中存在大量的函数正向求解容易,但反向求解较难

这种情况特别类似于一位想从山峰走到坡谷的盲人,他看不见坡谷在哪(无法逆向求解出LossLossLoss导数为0时的参数值),但可以伸脚探索身边的坡度(当前点的导数值,也称为梯度)

找出一组[w5​,w9​]的值,使得损失函数最小,实现梯度下降法的方案如下:

  • 步骤1:随机的选一组初始值,例如:[w5,w9]=[−100.0,−100.0][w_5, w_9] = [-100.0, -100.0][w5​,w9​]=[−100.0,−100.0]
  • 步骤2:选取下一个点[w5′,w9′][w_5^{'} , w_9^{'}][w5′​,w9′​],使得L(w5′,w9′)
  • 步骤3:重复步骤2,直到损失函数几乎不再下降。
  • 沿着梯度的反方向,是函数值下降最快的方向

示例:波士顿房价预测_第2张图片

 

  • 构建网络,初始化参数w和b,定义预测和损失函数的计算方法。
  • 随机选择初始点,建立梯度的计算方法和参数更新方式。
  • 从总的数据集中抽取部分数据作为一个mini_batch,计算梯度并更新参数,不断迭代直到损失函数几乎不再下降。

你可能感兴趣的:(笔记,机器学习,人工智能)