让我们重复一下到目前为止所看到的内容,线性回归被归类为监督学习问题。给定数据,我们可以预测某物的价值,例如,给定 50 栋房屋的面积和价格数据,我们可以预测房屋的价格。为了进行预测,我们需要一个假设或函数,我们将数据输入该假设或函数,它将为我们提供输出。该假设必须符合数据,才能为我们提供最准确的输出。现在清楚了吗?如果现在我建议您回去再读一遍。如果您清楚了,让我们继续了解如何推导出 theta0 和 theta1。
成本函数
成本函数背后的理念是,我们 意大利手机号码列表 选择 theta0 和 theta1 的值,使得 h(x)(我们的假设,或者可以说是函数的输出)接近于训练示例 (x, y) 的 y(输出变量)。成本函数也称为平方误差函数。
成本函数
。另外,请注意,m=训练集的数量,½ 是为了便于后面的计算。让我们举一个例子来理解到目前为止我们看到的内容,以便更清楚地了解情况。我们在这个例子中的目标是找到 theta0 和 theta1 的值,以便它能给我们一个全局最小值。
假设 theta0 = 0 且 theta1 = 1,如果我们绘制假设,它看起来会像这样,
屏幕截图 117屏幕截图 118
现在我们有了 theta0 和 theta1,让我们找到我们的 J(theta),即成本函数。所有输出点和我们的假设完全匹配,因此它们之间的差异当然为零。这看起来像右侧的图像,J(theta1) 的值,即 J(1) 为 1。
现在让我们找到 theta0 = 0 和 theta1 = 0.5 的值,这样图表看起来会像这样,
屏幕截图 122屏幕截图 121
如您所见,输出值和预测值之间存在差异。现在,如果我们找到差异并将其放入成本函数方程中,它将给出接近 0.58 的值,如标记所示。
对于第三个示例,我们让 theta0 和 theta1 都等于零。这是 x 轴上的一条线。
屏幕截图 122屏幕截图 123
这将得到一个接近 2.3 的值,如标记所示。现在绘制不同的图表将得到如下结果,
屏幕截图 124
从中可以看出,J(theta) 的值在 J(1) 处最小,因此我们将选择它作为 theta 的值。现在您已经了解了有关线性回归机器学习 Python 的所有知识。
更进一步
梯度下降——这是一种一阶导数优化算法。现在我们有了假设和成本函数,为了优化它,我们将使用成本函数的导数。斜率定义了移动的方向,每一步的大小由学习参数alpha 决定。
例子
让我们来看一下 Python 回归 Python 代码,以便更清楚地了解我们之前看到的内容。实现任何机器学习算法的最佳方法是使用scikit-learn库。要了解有关 scikit-learn 的更多信息,请访问其官方网站。