机器学习实战:基于Scikit-Learn和TensorFlow—第四章笔记
一、学习目标
之前用了那么多的机器学习的模型,但是它们各自的训练算法在很大程度上还是一个黑匣子,我们对对系统内部的实现机制一无所知。所以本章就要研究下这些厉害的机器学习模型内部究竟是如何运作的呢?
二、线性回归
线性模型就是对输入特征加权求和,再加上一个我们称为偏置项(也称为截距项)的常数,以此进行预测。
公式1-1:线性回归模型预测
y^=θ0+θ1x1+...+θnxn\hat{y}=\theta_0+\theta_1x_1+...+\theta_nx_ny^=θ0+θ1x1+...+θnxn
-
y^\hat{y}y^是与预测值
-
n是特征数量
-
xix_ixi是第i个特征值
-
θj\theta_jθj是第j个模型参数(包括θ0,θ1,...,θn\theta_0,\theta_1,...,\theta_nθ0,θ1,...,θn)
可以用更加简洁的向量化形式表示:
公式1-2:线性回归模型预测(向量化)
y^=θT⋅X\hat{y}=\theta^T\cdot Xy^=θT⋅X
-
θ\thetaθ是模型的参数向量
-
θT\theta^TθT是θ\thetaθ的转置向量(为行向量,不再是列向量)
-
X是实例的特征向量,包括从x0x_0x0到xnx_nxn,x0x_0x0永远为1
-
θT⋅X\theta^T\cdot XθT⋅X是θT\theta^TθT和X的点积
我们该怎样训练线性回归模型呢?回想一下,训练模型就是设置模型参数直到模型最适应训练集的过程。要达到这个目的,我们首先需要知道怎么衡量模型对训练数据的拟合程度是好还是差。在第2章中,我们了解到回归模型最常见的性能指标是均方根误差(RMSE)。因此,在训练线性回归模型时,你需要找到最小化RMSE的θ值。在实践中,将均方误差(MSE)最小化比最小化RMSE更为简单,二者效果相同(因为使函数最小化的值,同样也使其平方根最小)
公式1-3:线性回归模型的MSE成本函数