混淆八度和 python
Confused between octave and python
最近我完成了 Andrews Ng 在 coursera 上的 ML 课程。这是一个很棒的课程。在整个课程中我都在使用 Octave。但是,与八度相比,python 更受欢迎。所以,我现在开始学习python。我正在使用 python 实现线性回归。我什么都不做。简单地调用线性回归的预定义函数。但是,在 Octave 中,我曾经从头开始编写代码。我必须使用梯度下降算法找到参数。但是,python 中没有这样的东西。我参考了以下 link:
https://towardsdatascience.com/linear-regression-python-implementation-ae0d95348ac4
我的问题是,我们不会使用梯度下降等算法来学习参数 Theta 吗?一切都在 python 中预定义了吗?
谢谢。
Python 是一种编程语言,就像 Octave。因此,在 Octave 中可以完成的所有事情也可以使用 Python 来完成。如果你想使用 Python 从头开始实现 Linear Regression
算法以验证你的理解,你当然可以这样做(我也这样做过)。为什么止步于线性回归,您可以在 Python 中从头开始实现 SVM
、Decision Trees
甚至 Deep Neural Networks
。这是对这些算法进行具体理解的好方法。
然而,多年来,所有这些都已在 Python 库中实现,如 Sklearn 等。因此,随着数据的复杂性和数量增加,您可能希望使用这些库或框架之一。为什么?因为这些都是高度优化的实现。为了获得高层次的感觉 - 使用简单的列表和 for 循环实现线性回归,然后使用 Numpy 对其进行矢量化,您将看到性能上的差异。
总而言之 - 如果您好奇,请继续从头开始实施算法以获得扎实的理解。随着复杂性和数据量的增加,开始使用库和框架。希望这有帮助。
最近我完成了 Andrews Ng 在 coursera 上的 ML 课程。这是一个很棒的课程。在整个课程中我都在使用 Octave。但是,与八度相比,python 更受欢迎。所以,我现在开始学习python。我正在使用 python 实现线性回归。我什么都不做。简单地调用线性回归的预定义函数。但是,在 Octave 中,我曾经从头开始编写代码。我必须使用梯度下降算法找到参数。但是,python 中没有这样的东西。我参考了以下 link: https://towardsdatascience.com/linear-regression-python-implementation-ae0d95348ac4
我的问题是,我们不会使用梯度下降等算法来学习参数 Theta 吗?一切都在 python 中预定义了吗?
谢谢。
Python 是一种编程语言,就像 Octave。因此,在 Octave 中可以完成的所有事情也可以使用 Python 来完成。如果你想使用 Python 从头开始实现 Linear Regression
算法以验证你的理解,你当然可以这样做(我也这样做过)。为什么止步于线性回归,您可以在 Python 中从头开始实现 SVM
、Decision Trees
甚至 Deep Neural Networks
。这是对这些算法进行具体理解的好方法。
然而,多年来,所有这些都已在 Python 库中实现,如 Sklearn 等。因此,随着数据的复杂性和数量增加,您可能希望使用这些库或框架之一。为什么?因为这些都是高度优化的实现。为了获得高层次的感觉 - 使用简单的列表和 for 循环实现线性回归,然后使用 Numpy 对其进行矢量化,您将看到性能上的差异。
总而言之 - 如果您好奇,请继续从头开始实施算法以获得扎实的理解。随着复杂性和数据量的增加,开始使用库和框架。希望这有帮助。