最全算法:24种人工智能算法原理、优缺点及投资使用场景
由qxiao创建,最终由qxiao 被浏览 619 用户
至2021年,前30家百亿私募量化机构中29家在官网介绍了其人工智能开发,或正在招募人工智能人才。
编号 | 公司简称 | 成立时间 | 是否涉及AI | 编号 | 公司简称 | 成立时间 | 是否涉及AI |
---|---|---|---|---|---|---|---|
1 | 鸣石投资 | 2i010/12/9 | 是 | 11 | 幻方量化 | 2015/6/11 | 是 |
2 | 天演资本 | 2014/8/5 | 是 | 12 | 衍复投资 | 2019/7/25 | 是 |
3 | 世纪前沿资产 | 2015/8/24 | 是 | 13 | 盛泉恒元 | 2014/7/8 | 是 |
4 | 金戈量锐 | 2014/11/12 | 是 | 14 | 诚奇资产 | 2013/9/24 | 是 |
5 | 佳期投资 | 2014/11/28 | 是 | 15 | 进化论资产 | 2014/6/4 | 是 |
6 | 因诺资产 | 2014/9/24 | 是 | 16 | 明泓投资 | 2014/4/17 | 是 |
7 | 启林投资 | 2015/5/28 | 是 | 17 | 金锝资产 | 2011/11/25 | |
8 | 宁波幻方量化 | 2016/2/15 | 是 | 18 | 黑翼资产 | 2014/5/5 | 是 |
9 | 灵均投资 | 2014/6/30 | 是 | 19 | 千象资产 | 2014/7/4 | 是 |
10 | 九坤投资 | 2012/4/12 | 是 | 20 | 呈瑞投资 | 2010/5/31 | —— |
注:是否涉及AI标准为公司官网明确表述及对外招聘启事
数据/资料来源:公司官网、金融阶
那机器学习各算法都是啥基础原理,各算法优缺点究竟怎么样?应用到投资投资领域有什么具体场景?
算法 | 基础原理 | 优点 | 缺点 | 应用场景 |
---|---|---|---|---|
线性回归 | 最小二乘法 | 思想简单,实现容易,建模迅速,对于小数据量、简单的关系更有效 \n 线性回归模型十分容易理解,结果具有很好的可解释性,有利于决策分桥 | 对于非线性数据或者数据特征间具有相关性多因子模型项式回归难以建模 \n 难以很好地表达高度复杂的数据 | 因子模型ARIMAGARCH |
Logistic Regression | 线性回归+Sigmoid函数(非线形)映射 | 实现简单 \n 分类时计算量非常小,速度很快,存储资源低 \n 便利的观测样本概率分数 \n 结合正则化允许多重共线性 \n 计算代价不高,易于理解和实现 | 当特征空间很大时,逻辑回归的性能一般 \n 容易欠拟合,一般准确度不太高 \n 不能很好地处理大量多类特征或变量 \n 只能处理两分类问题,且必须线性可分 \n 对于非线性为征,需要进行X换 | 信用评估 \n 预测收益 \n 风险事件预测 \n 经济预测 |
朴素贝叶斯 | 培合先验概率和后验概率,假设目标值互相独立 | 数学基础强,分类效率稳定 \n 对超大规模的训练集速度较快 \n 对小规模的数据表现很好,能个处理多分类任务,适合增量式训练 \n 对缺失数据不太敏感,算法较简单朴素贝叶斯对结果解轻较容易 | 需要计算先验概率对输入数据的形式敏感 \n 样本属性有关联时效果不好 | 文本分类 \n 文本情感分桥 |
KNN | 釆用向量空间模型分类,输入包含特征空间(Feature Space)中的k个最接近的训练样本 | 理论成熟,思想简单,既可以用来做分类也可以用来做回归 \n 可用于非线性分类 \n 对数据没看假设,准确度高,对奇异值不敏感 \n 新数据可以直按加入数据集而不必进行至新训练 | 样本不平衡问题效果差; \n 对于样本容量大的数据集计算量比较大,需要大量内存 \n 样本不平衡时,预测偏差比较大KNN每一次分类都会至新进行一次全局运算 \n k值大小的选择没看理论选择最优 | 文本分类 \n 模式识别 \n 聚类分析 \n 多分类问题 |
SVM | 对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面(maximum-marginhyperplane) | 可以解决高维问题 \n 解决小样本下机器学习问题 \n 能够处理非线性为征的相互作用 \n 无局部极小值问题 \n 无需依赖整个数据集 \n 泛化能力较强 | 当观测样本很多时,效率不高 \n 対非线性问题没有通用解决方案,找到一个合适的核函数较难 \n 对于核函数的高维映射解释力不强,尤其是径向基函数 \n 常规SVM具支持二分类 \n 对缺失数据敏感 | 涨跌分类 \n 违约分类 |
决策树 | 一颗由多个判断节点组成的树,在树的每个节点做参数判断,进而存树的最末枝(叶结点)能够所关心变量的取值作出最佳判断 | 决策树易于理解和解轻,可以可视化分析,容易提取出规则 \n 可以同时处理标称型和数值型数据 \n 比较适合处理有缺失属性的样本 \n 能培处理不相关的特征 \n 测试数据集时,运行速度比较快 \n 在相对短的时间内能够对大型数据源做出可行且效果良好的结果 | 容易发生过拟合 \n 容易忽路数据集中属性的相互关联 \n 对于那些各类别样本数量不一致的数据,在决策树中,进行属性划分时,不同的判定准则会带来不同的属性选择倾向 \n ID3算法计算信息增益时结果偏向数值比较多的特征 | 投资决策 \n 公司信用判断 |
随机森林 | 随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个体树输出的类别的众数而定 | 随机森林具有防止过拟合能力,精度比大多数单个算法要好 \n 随机森林分类器可以处理缺失值 \n 在训练过程中,能够检测到特征间的互相影响,计算特征的重要性 \n 每棵树可以独立、同时生成,容易并行化 \n 具有一定的特征选择能力 | 随机森林己经被证明在某些噪音较大的分类或回归问题上会过拟合 \n 对于看不同取值的属性的数据,取值划分较多的属性会对随机森林产生更大的影响,所以随机森林存这种数据上产出的属性权值不可信 | 信用分类问题 \n 收益率预测 |
Adaboosting | Adaboost是模型为加法模型,学习算法为前向分步学习算法,损失函数为指数函数的算法 | 高精度的分类器 \n 可以使用各种方法构建子分类器,Adaboost算法提供的是枢架 \n 当使用简单分类器时,计算出的结果是可以理解的 \n 弱分类器的构造简单 \n 不用做特征筛选 \n 不易发生过拟合 | 对outlier比较敏感 \n AdaBoost迭代次数不好设定,可以使用交叉验证来进行 \n 确定数据不平衡导致分类精度下降 \n 训练比较耗时,每次重新选择当前分类器最好切分点 | 市场模式识别 \n 收益率预测 |
GBDT | 每一次建立模型是在之前建立模型损失函数的梯度下降方向 \n 弱学习器限定具能使用CART回归树模型 | GBDT属于强分类器,一般情况下比逻辑回归和决策树预测精度要高 \n GBDT可以自己选择损失函数,当损失函数为指数函数时,GBDT变为Adaboost算法 \n GBDT可以做特征组合,往往在此基础上和具他分类器进行配合 | 弱学习器之间存在依赖关系,难以并行训练数据和其他树模型一样,不适合高维稀疏特征 | 小特征空间 \n 收益率预测 |
XGBoost | 对梯度提升算法的改进,求解损失函数极值时使用了牛顿法,将损失函数泰勒展开到二阶,损失函数中加入了正则化项 | 对为征值进行提钱排序,实现一定程度的并行运算,提升运算速度 | 只适合处理结构化数据,不适合处理超高维特征数据 | 小特征空间 \n 收益率预测 |
LightGBM | 基于GBDT算法的框架,支持高效率的并行训练,并且具有更快的训练速度、更低的内存消耗、更好的准确率、支持分布式 \n 可以快速处理海量数据 | 更快的训练速度和更高的效率 \n 更低的内存占用 \n 由于存训练时间上的缩减,具有处理大数据的能力支持并行学习 | 可能会长出比较深的决策树,产生过拟合 \n 由于LightGBM是基于偏差的算法,所以会对噪点较为敏感 \n 在寻找最优解时,依据的是最优切分变量,没有将最优解是全部特征的综合这一可能考虑进去 | 大特征空间 \n 信用基差预测 \n 收益率预测 |
神经网络 | 模仿了生物神经元信号相互传递的方式,人工神经网络(ANN)由节点层蛆成,包含一个输入层,一个或多个隐蔽层和一个输出层 | 分类的准确度高 \n 并行分布处理能力强,分布存储及学习能力强 \n 对噪声神经有较强的鲁棒性和容错能力 \n 具备联想记忆的功能,能充分逼近复杂的非线性关系 | 神经网络需要大量的参数,如网络拓扑结构、权值和阈值的初始值 \n 黑盒过程,不能观察之间的学习过程,输出结果难以解释,影响到结果的可信度 \n 学习时间过长, \n 容易过拟合而且易陷入局部最优 | 信用违约 \n 自然语言处理 \n 衍生品定价 |
CNN | 由一个或多个卷枳层和顶端的全连接层(对应和池化层经典的神经网络)组成,同时也包括关联权重和池化层(pooling layer),这一结构使得卷枳神经网络能够利用输入数据的二维结构 | 重共享策略减少了需要训练得参数,相同得权值可以让滤波器不受信号位置的影响来检测信号的特性,使得训练出来的模型的泛化能力更强 \n 池化运算可以降低网络的空间分辨率,从而消除信号的微小偏移和扭曲,从而对输入数据的平移不变性要求不高 | 容易出现梯度消散 | 图像处理检测分类 \n 目标检测 |
RNN | 基于神经网络,其中节点之间的连按形成一个有向图沿着序列,允许展示时间序列的时间动态行为 | 模型是时间维度上的深度模型,可以对序列内容建模 | 需要训练的参数多,容易造成梯度消散或梯度爆炸问题 \n 不具看特征学习能力长时依赖问题(Long-TermDependencies) | 自然语言处理 \n 语音识别 |
LSTM | 基于RNN,通过遗忘门和输出门忘记部分信息来解决梯度消失的问题 | 通过遗忘门和输出门忘记部分信息来解决梯度消失的问题 | 信息在过远的距离中损失很大 \n 无法很好地并行 | 大数据量时间序列 |
K-Means | 基于欧式距离的聚类算法,其认为两个目标的距离越近,相似度越大 | 算法简单,容易实现,速度很快对处理大数据集,该算法是相对可伸缩的和高效率的,因为它的复杂度大约是O(nkt),其中n是所有对象的数目,k是簇的数目,t是迭代的次数,通常k«n,这个算法通常局部收敛 \n 当簇是密集的,球状或团状的,且簇与簇之间区别明量时,聚类效果较好 | 对数据类型要求较高,适合数值型数据 \n 可能收敛到局部最小值,在大规模数据上收敛较慢 \n 分组的数目k是一个输入参数,不合话的k可能返回较差的结果 \n 对初值的簇心值敏感,对于不同的初始值,可能会导致不同的聚类结果 \n 不适合于发现非凸面形状的簇,或者大小差别很大的簇 \n 对于“噪声”和孤立点数据敏感,少量的该类数据能够对平均值产生极大影响 | 无标记的文本分类 |
EM最大期望算法 | 渔过迭代进行极大似然估计(Maximum Likelihood Estimation,MLE)的优化算法,通常作为牛顿迭代法(Newton-Raphson method)的替代用于对包含隐变量或缺失数据的概率模型进行参数估计 | 比K-means算法计算结果稳定、准确 | 比K-means算法计算复杂,收敛也较慢 \n 不适于大规模数据集和高维数据 | 低维特征空间 \n 小规模数据聚类 |
密度聚类 | 假设聚类结构能通过样本分布的紧密程度确定。通常情形下,密度聚类算法从样本密度的角度来考察样本之间的可连接性,并基于可连接样本不断扩展聚类簇以获得最终的聚类结果 | 可以对任意形状的稠密数据集进行聚类,相对的K均值之类的聚类算法一般具适用于凸数据集 \n 可以在聚类的同时发现异常点,对数据集中的异常点不敏感 \n 初始值对聚类结果影响不大 | 如果样本集的密度不均匀,聚类间距差相差很大时,聚类质量较差 \n 如果样本集较大时,聚类收敛时间较长,此时可以对搜索最近邻时建立的KD树或球树进行规模限制来改进 \n 调参相对于传统的K-Means之类的聚类算法稍复杂,不同的参数组合对最后的聚类效果有较大影响 | 文本数据分类 |
层次聚类 | 通过计算不同类别数据点间的相似度来创建一棵有层次的嵌套聚类树、存聚类树中,不同类别的原始数据点是树的最低层,树的顶层是一个聚类的根节点 | 距离和规则的相似度容易定义,限制少不需要预先制定聚类数 \n 可以发现类的层次关系 \n 可以聚类成其它形状 | 计算复杂度太高 \n 对奇异值敏感 \n 算法很可能聚类成链状 | 产业链聚类 |
GRU | 基于RNN,取消了LSTM中的cellstate,在使用了hiddenstate,并且使用更新门来替换LSTM中的输入门和遗忘门,取消了LSTM中的输出门,新增了重置门 | GRU的参数量少,减少过拟合的风险 | 学习效率不高 | 小数据量 \n 时间序列 |
RBM | 一种无向图,属于生成式随机双层神经网络,该网络由可见单元和隐蔽单元构成,可见变量和隐蔽变量都是二元变量 | 能辂处理缺失/不规则数据 \n 不需要数据的标签信息 | 计算时间长 \n 对抽样噪音敏感 | 降维 \n 分类 \n 特征学习 \n 主题建模 |
GAN | 一种生成模型,模型包括生成器(Generator)和判别器(Discriminator)两个网络,训练的过程用到了二人零和博弈的思想 | 能更好建模数据分布 \n 理论上,GANs能训练任何一种生成器网络。其他的框架需要生成器网络和一些特定的函数形式,比如输出层是高斯的 \n 无需利用马尔科夫链反复釆样,无需在学习过程中进行推断 | 难训练,不稳定,生成器和判别器之间需要很好的同步,但是存实际训练中很容易D收敛,G发散 \n GANs的学习过程可能出现模式缺失,生成器开始退化,重复生成同样的样本点,无法继续学习 | 自动提取特征 \n 自动判断和优化 |
自编码器 | 一种利用反向传播算法使得输出值等于输入值的神经网络,它先将输入压缩成潜在空间表征,然后同过这种表征来重构输出 | 泛化性强 \n 无斐督不需要数据标注 \n 训练速度快 | 需要大量清洁数据 \n 信息损失较大 | 异常监测 \n 数据去噪 \n 数据降维 |
强化学习 | 描述和解决智能体(agent)在与环境的交互过程中通过学习策路以达成回报最大化或实现特定目标的问题 | 不需要带标签的输入输出 \n 对无需对非最优解的精输地纠正 \n 擅长实现长期目标 | 缺乏可扩展性 \n 需要大量数据 \n 计算资源需求大 | 组合构建 \n 高频交易 \n 策略优化 |
来源: