在集成学习概述中已经知道了常用的集成算法有两种:Bagging 和 Boosting。而在 Bagging 中,随机森林(Random Forest,RF)又是其中典型的代表了。没错,这篇文章我们就是来介绍随机森林的。
什么是随机森林我们介绍了单个决策树的形成过程,简单来说,如果采用 Bagging 方式来将多个决策树集成在一起就是随机森林了。从名字中可以看出包含了两个关键词:“随机”和“森林”。森林的意思是指多个决策树,那随机的意思呢?其实随机有两个含义,一个是数据的随机性,另一个是特征的随机性。关于随机的含义下面会更具体介绍。
随机森林是 Bagging 中的一种,所以随机森林的示意图可以用下图表示:
算法流程对随机森林有个简单了解之后,我们来看下随机森林的算法流程。假设要我们要生成 T 个决策树,原始的训练集包含 m 个样本,特征个数为 n,那么整个流程如下:
从原始的包含了 m 个样本的数据集中随机地有放回地采样 m 次,得到 m 个样本(会有重复样本)
使用采样生成的数据集训练一个决策树
重复步骤1和2共 T 次,得到 T 个训练好的决策树
采用投票法(分类树)或简单平均法(回归树)从 T 个决策树的预测结果中生成最终的结果
可以看到,由于采用随机地有放回地采样得到训练集,这样不同的树用到的训练集会有所差异;其次,每个树在结点分裂时并非是从所有的特征中选择最优特征和划分点,而是先随机地从所有特征 n 中选择一个包含了 k 个特征的特征子集,然后从特征子集中选择最优特征和划分点,通过改变 k 的大小可以控制随机性的引入程度。随机森林中的“随机”含义指的就是前面说的这两个随机:数据随机和特征随机。
需要说明的是,如果在随机选择的特征子集只包含一个特征时,相当于每次随机选择一个特征进行划分;如果特征子集包含的特征个数等于所有特征个数 n,这时候与经典的决策树没有区别。
袋外误差前面已经知道,对于每棵树训练时所用到的样本都是随机且有放回地采样得到的,大约有 36.8% 的样本没有被采样到,也就是说,在生成某棵树的训练样本时,这些没有被采样到的样本称为该树的袋外数据(Out Of Bag,OOB)。通过袋外数据,我们可以计算出袋外误差来评估模型的性能。
对于袋外数据,我们可以计算出袋外错误率,计算过程如下:
对于每个样本,计算它作为某棵树的袋外数据时该树对它的预测结果
由于一个样本可以是多颗树的袋外数据,所以采用投票法或简单平均法生成该样本最后的预测结果
根据每个袋外数据的预测结果与其真实结果可以计算出对应的误差
最后,简单介绍下随机森林的优点。由于随机森林在生成 T 个数据集以及训练模型的时候彼此之间没有依赖,所以它可以做到并行化,这对于数据量较大的情况下训练速度的提升很明显。其次,如果特征较多时,通过控制随机选择特征的个数也可以优化训练速度。
量化金融分析师(简称AQF,Analyst of Quantitative Finance)由量化金融标准委员会(Standard Committee of Quantitative Finance,SCQF)主考并颁证,是代表量化金融领域的专业水平证书。
AQF证书课程适合人群:
金融工程/数学专业背景的同学/工作人士,希望进一步学习Python编程以及在量化投资的实战应用;
非金融工程专业背景的同学/工作人士,希望迅速成为宽客;
金融相关人员,希望学习如何系统的做量化策略;
个人投资者,希望系统学习掌握量化投资相关的实务技能,从模型开发,回测,策略改进,搭建稳定的量化交易系统。
金程AQF实训项目量化金融分析师AQF核心课程体系:
1、《量化投资基础》
主要涵盖了量化投资领域的必备知识,包括:基本面分析、技术分析、数量分析、固定收益、资产组合管理、权益、另类投资等内容。
2、《Python语言编程基础》
包含了Python环境搭建、基础语法、变量类型、基本函数、基本语句、第三方库、金融财务实例等内容。旨在为金融财经人提供最需要的编程方法。
3、《基于Python的经典量化投资策略》
包含了最富盛名,最基本的量化交易思想和交易策略。例如:海龟交易模型、Logistics模型、配对交易模型、波动扩张模型、Alpha模型、机器学习(随机森林模型、主成分分析)、深度学习(人工神经网络)等内容。
4、《量化交易系统设计》
旨在学习量化交易系统的具体知识,包括过滤器,进入信号,退出信号,仓位管理等详细内容,并指导学员设计涵盖个人交易哲学的量化交易系统。
5、《量化实盘交易》
旨在为解决实际量化交易策略搭建过程中的一些问题提供最优解决方案。
掌握Python及量化投资技能,我们能做什么?
1、熟悉中国主要金融市场及交易产品的交易机制;
2、熟知国内外期货交易、股市交易的异同点和内在运行机制;
3、掌握经典量化交易策略细节及其背后的交易哲学;
4、掌握金融、编程和建模知识基础,拥有量化交易实盘操作能力;
5、具备独立自主地研发新量化交易策略的能力;
6、掌握量化交易模型设计的基本框架,以及风险管理和资产组合理论的实际运用;
7、掌握从策略思想——策略编写——策略实现饿完整量化投资决策过程;具备量化投资实战交易能力。
网友评论