企业官方网站建设规划,做笔记的网站源码,网站防止非法链接怎么做,asp网站制作免费模板下载1、引言 
今天#xff0c;我们将深入探讨机器学习中的三个关键概念#xff1a;线性回归、代价函数和梯度下降。这些概念构成了许多机器学习算法的基础。起初#xff0c;我决定不写一篇关于这些主题的文章#xff0c;因为它们已经被广泛涉及。不过#xff0c;我改变了主意我们将深入探讨机器学习中的三个关键概念线性回归、代价函数和梯度下降。这些概念构成了许多机器学习算法的基础。起初我决定不写一篇关于这些主题的文章因为它们已经被广泛涉及。不过我改变了主意因为理解这些概念对于理解神经网络等更高级的主题至关重要。 
闲话少说我们直接开始吧 
2、问题引入 
与任何机器学习问题一样我们首先要回答一个具体的问题。在本例中我们的朋友马克正在考虑出售他 2400 平方英尺的房子并向我们寻求帮助以确定最合适的挂牌价格。  
凭直觉我们首先要查找朋友所在社区的同类房屋。经过一番挖掘我们找到了附近三栋房子的清单并查看了它们的售价。当然一个典型的数据集会有数千甚至数万个数据点但我们只用这三栋房子就够了。  接着让我们来绘制这些数据  
通过观察数据房屋价格似乎与房屋面积呈线性关系。为了模拟这种关系我们可以使用一种称为线性回归的机器学习技术。这需要在散点图上画出一条最能代表数据点模式的线。我们的模型可能是这样的  
根据这条线2400 平方英尺的房子应该卖多少钱  
大概$260,000。这就是答案。 
现在最大的问题是我们如何确定数据的最佳拟合线 
3、 确认最佳拟合方程 
经过上述分析我们的问题转化为如何确定数据的最佳拟合线我画的线可能有点偏就像这样  
我们可以清楚地知道这种情况下对数据的拟合程度远不如第一种情形。要找出最佳的拟合线我们首先要做的就是用数学方法来衡量一条糟糕的线。 让我们来看看这条 相对糟糕 的拟合线根据这条线一栋 2000 平方英尺的房子应该卖 14 万美元而我们知道它实际上卖了 30 万美元 线上其他数值也有明显差异 平均而言这条线的上预测差额约为 94,000 美元50,000 美元  160,000 美元  72,000 美元/3。 事实上我们有预测差额更小的预测线如下 这条线路的平均预测差额约为 44 000 美元这要好得多。这 4.4 万美元被称为使用这条线的cost。cost就是用来衡量这条线与真实数据的偏差程度。与真实数据偏差最小或cost最低的预测线就是最佳选择。要找出哪条线是最佳线我们需要使用损失cost函数。 
4、损失函数 
以上章节我们利用平均绝对误差 (MAE) 代价函数来确定实际房价与预测房价的偏差。这基本上是计算实际房价用 y 表示因为它代表 y 轴上的值与预测房价用 ŷ 表示偏离程度的平均值。我们可以这样用以下数学公式来计算 MAE  注在计算 MAE 时使用绝对值因为绝对值可确保预测值与实际值之间的差值始终为正值无论预测值是高还是低。这样就可以公平地比较不同预测值之间的误差因为如果不采用绝对值正负差值就会抵消。 根据不同机器学习算法我们可以采用不同类型的成本代价函数也叫损失函数。对于我们的问题我们将不使用 MAE而是采用一种更加常用的方法即平均平方误差 (MSE)它计算的是预测房价与实际房价之差的平方平均数。  
归根结底任何代价函数的目的都是使其取值最小化并尽可能降低损失。 
5、 直线方程 
在深入研究损失函数之前让我们先回顾一下基础知识。下面是一条直线的示例 y  1  2x第一项数字称为截距它告诉我们起始线应该有多高。  
第二项告诉我们直线的角度或专业术语斜率  
既然我们已经理解了直线方程的工作原理那么我们只需要确定这两个值的最佳值–斜率和截距就可以得到线性回归问题的最佳拟合线。为了让事情变得更简单让我们假设我们已经神奇地得到了斜率值 0.069。因此我们的线性回归线方程如下  
要获得某一面积房屋的预测价格我们只需输入截距值和所需房屋面积。例如如果房屋面积为 1000 平方英尺截距为 0时如下  
得出预测房价为 69,000 美元。因此我们现在要做的就是找到截距的最佳值从而得到线性回归模型。 
6、求解截距 
如何来求解截距呢有一种方法我们很快就会发现这种方法非常乏味而且并不有趣是暴力枚举即反复猜测截距值画一条 LR 线然后计算 MSE。为了实验起见让我们尝试一下这种方法。 首先随机猜测一个截距值从 0 开始然后绘制直线  
然后我们计算这条线的 MSE  
为了获得直观的理解让我们在图表上绘制截距值和相应的 MSE  
接下来我们将测试另一个截距值比如 25绘制相应的直线并计算 MSE。  
我们可以用不同的截距值0、25、50、75、100、125、150 和 175继续这一过程直到最后得到如下图形 从图中绘制的点可以看出当截距设置为 100 时MSE 最低。不过在 75 和 100 之间可能还有另一个截距值会导致更低的 MSE。寻找最小 MSE 的一种缓慢而痛苦的方法是如下图所示为截距设置更多的值 尽管我们做出了努力但仍无法确定我们已经找到了最低的 MSE 值。测试多个截距值的过程既繁琐又低效。幸运的是梯度下降可以帮助我们解决这个问题以更高效的方式找到最优解。这正是我们将在本系列第二部分中探讨的问题