20180802-华泰证券-华泰人工智能系列之十三_人工智能选股之损失函数的改进_22页_2mb
报告摘要
金工研究:人工智能选股之损失函数改进总结
核心内容
本文探讨了人工智能在多因子选股中的应用,重点分析了对数损失函数的改进方法,提出了两种创新方案:加权损失函数和广义损失函数,以提升模型在样本不均衡和换手率控制方面的表现。通过在XGBoost分类模型中实现这些改进,测试了不同参数设置下的模型效果,并对改进方案进行了深入讨论。
主要观点
-
损失函数的重要性
损失函数在机器学习模型训练中起到关键作用,决定了模型的优化方向。对数损失函数是二分类模型中最常用的损失函数,它在预测错误时对假阳性与假阴性误差赋予相等权重。 -
加权损失函数
- 用于解决样本不均衡问题,通过引入权重参数 $\beta$ 来调整两类样本的损失项权重。
- 在样本不均衡的情况下,加权损失函数能够提升模型对未来表现较好的股票的预测能力。
- 在行业中性选股策略下,加权损失函数表现更稳定,优于普通损失函数。
- 但对最大回撤的提升不明显。
-
广义损失函数
- 通过引入额外的损失项和权重参数 $\lambda$,控制模型的换手率。
- 随着 $\lambda$ 增大,模型的换手率单调下降,同时年化超额收益率和夏普比率也有所下降。
- 在 $\lambda = 0.1$ 时,模型的年化超额收益率、夏普比率和 RankIC 值达到最优。
- 该方案将收益预测与换手率控制整合,是一种创新方法。
-
测试结果
- 加权损失函数在年化超额收益率、信息比率、Calmar 比率等方面表现优于普通损失函数,尤其是在样本不均衡的情况下。
- 广义损失函数在降低换手率方面效果显著,但过大的 $\lambda$ 会导致模型预测能力下降。
- 两种改进方案均在不同策略下展现出不同优势,且模型的性能与参数选择密切相关。
-
模型评价指标
- 模型的评价指标包括年化收益率、年化波动率、夏普比率、最大回撤、年化超额收益率、信息比率、Calmar 比率等。
- 换手率的降低有助于减少交易成本,但也可能影响模型的收益表现。
关键信息
- 样本不均衡处理:通过设置超额收益率阈值(如3%、4%、5%),生成正负样本不均衡的训练集,使用加权损失函数提高模型对少数类样本的识别能力。
- 换手率控制:广义损失函数通过约束预测值的变化,降低模型的换手率,有助于优化投资组合。
- 模型训练方式:改进方案1使用过去9个月的因子数据进行训练,改进方案2使用过去72个月的因子数据进行训练,均采用月度滚动训练方法。
- 回测方式:使用行业中性选股和个股等权选股两种策略进行回测,分析模型在不同策略下的表现。
- Python实现:文章附有对普通、加权和广义损失函数的Python实现代码,便于进一步研究和应用。
附录与图表说明
- 附录1:XGBoost损失函数的修改及推导过程,详细说明了如何实现加权和广义损失函数。
- 附录2:分类模型的评价指标,包括RankIC、信息比率、夏普比率等,用于评估模型性能。
- 图表目录:
- 图表1:逻辑回归模型
- 图表2:$\lambda$ 值对训练结果的影响
- 图表3:测试流程图
- 图表4:改进方案1的样本标注方法
- 图表5:选股模型中涉及的全部因子及其描述
- 图表6:改进方案1测试结果对比
- 图表7:加权与普通损失函数的超额收益表现
- 图表8:加权与普通损失函数的回测分析表(行业中性)
- 图表9:加权与普通损失函数的回测分析表(个股等权)
- 图表10:广义损失函数与普通损失函数的RankIC值对比
- 图表11:广义损失函数与普通损失函数的回测绩效对比
- 图表12:广义损失函数与普通损失函数的超额收益表现
- 图表13:广义损失函数与普通损失函数的RankIC值累积曲线
风险提示
- 损失函数的改进方案需要根据具体应用场景进行设计,设计不当可能导致模型效果不佳。
- 机器学习模型基于历史数据进行训练,若未来市场环境发生变化,模型可能失效。
- 本文的改进方法仍需进一步研究,尤其是在广义损失函数的结构优化方面。
总结与展望
- 本文通过改进损失函数,提升了人工智能在多因子选股中的应用效果,特别是在处理样本不均衡和控制换手率方面。
- 未来研究可以进一步优化广义损失函数的结构,探索其在不同目标序列下的应用,如因子暴露度的调整等。
- 两种改进方案各有优势,可根据实际需求选择合适的损失函数进行模型训练与优化。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载