适合初学者的 10 大机器学习算法
由kuailian创建,最终由small_q 被浏览 180 用户
英国数学家、计算机科学家、逻辑学家和密码分析家艾伦·图灵推测机器:
“这就像一个学生从他的老师那里学到了很多东西,但在他自己的工作中增加了很多东西。发生这种情况时,我觉得人们有义务将机器视为显示智能。”
举一个机器学习影响的例子,Man group 的 AHL Dimension 计划是一个价值 51 亿美元的对冲基金,部分由 AI 管理。成立后,到 2015 年,其机器学习算法为基金贡献了一半以上的利润,尽管其管理的资产要少得多。
阅读此博客后,您将能够了解一些流行且资源丰富的机器学习算法背后的基本逻辑,这些算法已被交易社区使用,并作为您踏上创建最佳机器学习的基石算法。他们是:
- 线性回归
- 逻辑回归
- KNN分类
- 支持向量机 (SVM)
- 决策树
- 随机森林
- 人工神经网络
- K-means 聚类
- 朴素贝叶斯定理
- 递归神经网络 (RNN)
线性回归
它最初是在统计学中发展起来的,用于研究输入和输出数值变量之间的关系,后来被机器学习社区采用,基于线性回归方程进行预测。
线性回归的数学表示是一个线性方程,它结合一组特定的输入数据 (x) 来预测该组输入值的输出值 (y)。线性方程为每组输入值分配一个因子,称为由希腊字母 Beta (β) 表示的系数。
下面提到的等式表示具有两组输入值 x 1和 x 2的线性回归模型。y代表模型的输出,β 0、β 1和β 2是线性方程的系数。
y = β 0 + β 1 x 1 + β 2 x 2
当只有一个输入变量时,线性方程表示一条直线。为简单起见,假设 β 2等于 0,这意味着变量 x 2不会影响线性回归模型的输出。在这种情况下,线性回归将表示一条直线,其方程如下所示。
y = β 0 + β 1 x 1
线性回归方程模型图如下所示
线性回归可用于查找股票在一段时间内的总体价格趋势。这有助于我们了解价格走势是积极的还是消极的。
逻辑回归
在逻辑回归中,我们的目标是产生一个离散值,1 或 0。这有助于我们为我们的场景找到明确的答案。
逻辑回归可以在数学上表示为,
逻辑回归模型计算输入变量的加权和,类似于线性回归,但它通过特殊的非线性函数、逻辑函数或 sigmoid 函数运行结果以产生输出 y。
sigmoid/logistic 函数由以下等式给出。
y = 1 / (1+ e -x )
简单来说,逻辑回归可以用来预测市场的走向。
KNN分类
K 最近邻(KNN)分类的目的是将数据点分成不同的类别,以便我们可以根据相似性度量(例如距离函数)对它们进行分类。
KNN 在进行过程中学习,从某种意义上说,它不需要明确的训练阶段,并开始对由其邻居的多数票决定的数据点进行分类。
该对象被分配给在其 k 个最近邻居中最常见的类。
让我们考虑将绿色圆圈分类为第 1 类和第 2 类的任务。考虑基于 1-最近邻的 KNN 的情况。在这种情况下,KNN 会将绿色圆圈分类为第 1 类。现在让我们将最近邻的数量增加到 3 个,即 3-最近邻。如图所示,圆圈内有“两个”2 类对象和“一个”1 类对象。KNN 将绿色圆圈分类为第 2 类对象,因为它占大多数。
支持向量机 (SVM)
支持向量机最初用于数据分析。最初,一组训练示例被输入到SVM算法中,属于一个或另一个类别。然后,该算法构建一个模型,该模型开始将新数据分配给它在训练阶段学习的类别之一。
在 SVM 算法中,创建了一个超平面,作为类别之间的分界线。当SVM 算法处理一个新数据点时,根据它出现的一侧,它将被分类到其中一个类中。
当与交易相关时,可以构建一个 SVM 算法,将股票数据分类为有利的买入、卖出或中性类别,然后根据规则对测试数据进行分类。
决策树
决策树基本上是一种树状的支持工具,可用于表示原因及其结果。由于一个原因可能会产生多种影响,因此我们将它们列出(很像一棵有树枝的树)。
我们可以通过组织输入数据和预测变量,并根据我们将指定的一些标准来构建决策树。
构建决策树的主要步骤是:
- 检索金融工具的市场数据。
- 引入预测变量(即技术指标、情绪指标、广度指标等)
- 设置目标变量或所需的输出。
- 在训练数据和测试数据之间拆分数据。
- 生成训练模型的决策树。
- 测试和分析模型。
决策树的缺点是由于其固有的设计结构,它们容易过拟合。
随机森林
随机森林算法旨在解决决策树的一些限制。
随机森林由决策树组成,这些决策树是代表其行动过程或统计概率的决策图。这些多棵树映射到称为分类和回归(CART) 模型的单个树。
为了根据对象的属性对对象进行分类,每棵树都会给出一个分类,该分类被称为为该类“投票”。然后,森林选择票数最多的分类。对于回归,它考虑不同树的输出的平均值。
随机森林的工作方式如下:
- 假设案例数为N。将这N个案例中的一个样本作为训练集。
- 考虑 M 为输入变量的数量,选择一个数 m,使得 m < M。使用 m 和 M 之间的最佳分割来分割节点。随着树木的生长,m 的值保持不变。
- 每棵树都长得尽可能大。
- 通过聚合n棵树的预测(即分类的多数票,回归的平均值),预测新数据。
人工神经网络
在我们扮演上帝的过程中,人工神经网络是我们的最高成就之一。如图所示,我们创建了多个相互连接的节点,这些节点模仿了我们大脑中的神经元。简单来说,每个神经元通过另一个神经元接收信息,对其进行工作,然后将其作为输出传递给另一个神经元。
每个圆形节点代表一个人工神经元,一个箭头代表从一个神经元的输出到另一个神经元的输入的连接。
如果我们使用神经网络来发现各种资产类别之间的相互依赖关系,而不是试图预测买入或卖出选择,那么神经网络会更有用。
K-means 聚类
在这种机器学习算法中,目标是根据数据点的相似性来标记数据点。因此,我们没有在算法之前定义集群,而是算法在前进时找到这些集群。
一个简单的例子是,给定足球运动员的数据,我们将使用K-means 聚类并根据他们的相似性对其进行标记。因此,这些集群可以基于前锋在任意球或成功铲球上得分的偏好,即使在算法没有预先定义的标签开始时也是如此。
K-means 聚类对那些认为不同资产之间可能存在表面上看不到的相似性的交易者是有益的。
朴素贝叶斯定理
现在,如果您还记得基本概率,您就会知道贝叶斯定理的表述方式是,我们假设我们对与前一个事件相关的任何事件都有先验知识。
例如,要检查您上班迟到的概率,您想知道您在路上是否遇到任何交通。
然而,朴素贝叶斯分类器算法假设两个事件是相互独立的,因此,这在很大程度上简化了计算。最初只是一个学术练习,朴素贝叶斯已经证明它在现实世界中也非常有效。
朴素贝叶斯算法可用于在没有完整数据的情况下找到不同参数之间的简单关系。
递归神经网络 (RNN)
你知道 Siri 和 Google Assistant 在他们的编程中使用 RNN 吗?RNN 本质上是一种神经网络,每个节点都有一个内存,这使得处理顺序数据变得容易,即一个数据单元依赖于前一个数据单元。
解释RNN优于普通神经网络的一种方法是,我们应该逐个字符地处理一个单词。如果这个词是“交易”,一个普通的神经网络节点会在它移动到“d”时忘记字符“t”,而循环神经网络会记住这个字符,因为它有自己的记忆。
结论
根据 Preqin 的一项研究,已知有 1,360 只量化基金在其交易过程中使用计算机模型,占所有基金的 9%。如果个人的机器学习策略在测试阶段赚钱,公司会为个人的机器学习策略组织现金奖励,事实上,他们将自己的钱投资并在实时交易阶段拿走。因此,为了在竞争中领先一步,每个人,无论是数十亿美元的对冲基金还是个人交易,都试图在他们的交易策略中理解和实施机器学习。