这是您将要学习的第一个也是最基本的机器学习算法。
在此基础上开发的逻辑回归算法是构建神经网络模型的最基本单元。
让我们深入学习一下吧!
第二篇文章还是主要讲概念和公式
因为这是非常基础的知识,所以一定要掌握。
学术上:
线性回归是一个回归问题
包含单线性回归和多元线性回归
图片解释开始:
让我们从一个变量的线性回归开始
模型训练所用样本的定义参见上一篇文章《初步探索》。 样本可以是音频、图片、点集等,这里我用一个简单的点集作为我们的样本解释,如图
可以看到这些离散点都有自己的坐标值。 事实上,这是一个非常小的数据集。 您完全可以将其与实际应用中的值进行比较。
(我们这里用吴教授喜欢解释的房价比喻)
例如这些点的横轴值,
你可以理解为某个地方的房屋的使用面积,
纵轴值代表对应的价格。
可以看出,随着面积的增加,价格波动幅度加大。
(暂时忽略影响价格发展不平衡的其他因素或特征值)
这里的面积就是需要输入到模型中的特征值。 未来,神经网络将对这些区域进行反复训练,使其获得的房价(预测值)在纵轴上不断接近房价(实际值)。
事实上,线性回归也在做同样的事情。
我们如何得到自己的预测数据来与真实值进行比较?答案是,画一条直线,如图
一开始,这条直线与真实值之间的差距可能非常大。 经过我们的训练(调整这条直线的参数),我们的直线(预测值)和真实值之间的差距继续变得最小,变成如图所示。 看起来不错!
机器学习中线性回归方程的表达式为:
hθ (x)= θ0+ θ1*x
θ0 θ1 是影响预测值的参数
θ1表示输入特征值x对预测值的影响程度(权重)
θ0 用于向上或向下调整整个模型(截距)
如果有多个特征值怎么办?
换句话说,决定价格的因素有很多。
例如,有两个区域:区域X1和地理位置X2。
那么我们应该如何解决呢? ——画剖面
Y仍然是我们的房价
两个参数影响的离散分布如图所示
我们通过调整三个参数得到一个切片
表示每组特征值的预测值(X1 X2)
二元线性回归方程
令X0=1,得到第二行求和的形式
以下是便于矩阵运算的矢量化表示。
θ 是 (3x1) 矩阵/列向量,T 表示转置
X是样本的特征集(3x1)的矩阵/列向量
多元线性回归实际上增加了特征值的维数。
输入值 X1 X2 ````Xn
真实值是多维离散点——由多个X值确定
那么得到的预测值模型就是一个多维曲面。
(这里就理解一下)
其参数θ有n+1个
θi表示Xi对改变预测值hθ(x)的影响
θ0为整个模型的上下调整
最后还有两个问题:
1、参数如何调整?
让预测值曲面与真值曲面拟合(误差接近最小值)
那个说肉眼就能看出来的同学,你是认真的吗?
简而言之,就是对代价函数取偏导数,计算每个权重对误差的影响,然后不断迭代更新到最小值。