线性回归与梯度下降的区别

这是基于作业的任务,我选择了机器学习作为我的主题。我还在读高中,所以对微积分了解不多。

我的最终目标是尝试使用机器学习算法来预测股票价值。但我想在不复制和分析现有代码的情况下理解我在做什么,这些代码执行我所需的功能。

这也不仅仅是与编程相关,更多的是关于理论部分的担忧?我阅读了关于线性回归的文章,并观看了斯坦福大学在其YouTube上的讲座。但我不明白。这些是我主要的困惑:

  1. 线性回归和梯度下降是不同的算法,还是一起使用的一组算法,用于预测或分类事物?
  2. y = mx + c 和 f(x) = ϴ0 + ϴx 是一样的吗?我可以用这个计算什么?
  3. 这个方程出现在线性回归部分,那么它到底做了什么?

回答:

我将尝试回答你提出的所有三个问题。

首先,让我将机器学习分类成一些类别。

  1. 回归 – 预测连续值输出(例如,股票预测)
  2. 分类 – 预测离散值输出(例如,垃圾邮件分类)

现在,回归也可以分类为线性回归或多项式回归。线性回归是最简单的。这是它的工作原理。

假设我有这些数据。

enter image description here

这些是房价与房屋大小对比的图表。现在我想找到一条直线,最好地拟合这些数据。也许我会试试这条线。

enter image description here

我会尝试越来越多的线条,看看哪条线真正最适合数据。现在,为了得到不同的线条,我会改变参数,如aby=a+bx中。这回答了你的第二个问题,这个方程代表了一条你试图拟合到数据的直线。

但是,我如何决定哪条线比另一条线更适合?我将计算一些值,这些值代表我的线在正确预测我的数据中所有x值的y值时所犯的错误。这实际上被称为成本函数。我可以选择这样的成本函数:enter image description here(如果看不懂可以忽略)。

但基本上我想让我的成本函数(代表错误的值)最小化,梯度下降就是这样一种可以最小化我的成本函数的算法。梯度下降实际上可以最小化任何一般的函数,因此它不仅仅用于线性回归,但它在线性回归中仍然很流行。这回答了你的第一个问题。

下一步是了解梯度下降是如何工作的。这是算法:enter image description here

这就是你在第三个问题中问的。这行代码实际上在最小化成本函数的同时调整你的拟合线(称为假设)。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注