如何利用微调LLMs预测股票收益率

本文探讨了微调大型语言模型(LLMs)以利用财务新闻流预测股票回报的方法,比较了编码器和解码器LLMs在不同文本表示方法下的性能,并发现聚合表示通常能提升投资组合表现,其中Mistral模型在多个投资宇宙中表现稳健,而基于LLMs的回报预测比传统情感分析更能增强投资组合构建的效果。

1. 引言 (Introduction)

本章阐述了量化投资领域中利用财务文本数据进行投资组合构建的重要性,并强调了自然语言处理(NLP)技术,尤其是大型语言模型(LLMs)在文本分析中的先进能力。随着NLP技术的发展,财务文本数据的应用在量化投资中变得日益重要。作者指出,尽管LLMs在多种语言任务上展现出卓越的性能,但直接利用这些模型进行股票回报预测的研究还相对缺乏。因此,本文旨在探索微调LLMs以预测股票回报,提出了一种新颖的方法,即直接从财务新闻到股票回报的预测,这种方法可能比传统的特征提取和验证流程更为高效。此外,本文还将比较不同LLMs在文本表示上的差异,以及它们对投资组合性能的影响,旨在为投资者提供更深入的洞见和更有效的工具。

2. 相关工作 (Related Work)

本章探讨了利用财务文本数据进行股票市场预测的相关研究工作。首先回顾了早期研究中采用的基于词嵌入的技术,这些技术虽然能够提取文本数据中的信息,但缺乏对语境的深入理解。例如,一些研究通过分析金融新闻流中的情感分数、社交媒体帖子来预测股票价格,但这些方法未能充分利用文本的上下文信息。

接着,本章介绍了大型语言模型(LLMs)的分类和它们在量化投资中的应用。LLMs通过在大量文本数据上进行预训练,学习到了通用的语言模式。文中详细讨论了三种类型的LLMs:仅编码器模型、仅解码器模型和编码器-解码器混合模型,以及它们如何通过预训练和微调来适应特定的下游任务。特别提到了参数高效的微调技术,如低秩适应(LoRA),这种技术通过在预训练模型参数中引入低秩变化来减少计算和内存需求。

最后,本章还概述了近期的研究工作,这些工作利用LLMs作为特征提取器,直接从文本中提取预测信号。一些研究通过微调预训练的LLMs来进行更准确的财务情感分析,而其他研究则通过在生成性LLMs上使用prompt来提取金融新闻和价格历史中的关键因素。这些研究表明,LLMs在量化投资领域具有巨大的潜力,能够提供从文本到股票未来表现的直接建模能力。

3. 从财务新闻流到股票组合的LLMs (From Financial Newsflow to Stock Portfolios through LLMs)

3.1 问题陈述:

如何利用大型语言模型(LLMs)来预测股票回报以支持股票选择。在这一部分中,作者设定了一个包含多只股票的投资宇宙,并解释了量化投资者如何根据定量标准从这个宇宙中选择股票来构建投资组合。随着市场条件的不断变化,投资者需要定期更新或重新平衡他们的投资组合,这就需要一个有效的股票选择过程。

作者指出,传统的股票选择过程通常涉及多步骤的特征提取和验证,这可能耗时且需要额外的标记数据和持续的改进。为了简化这一过程,作者提出了利用LLMs直接从财务新闻文本中预测股票回报的方法。这种方法的核心是将文本数据转换为数值向量,这些向量能够捕捉文本的语义信息,并作为预测未来股票表现的特征。

在构建预测模型时,作者提出了一个由文本表示模块和预测模块组成的复合结构模型。文本表示模块负责将输入的文本序列编码为数值向量,而预测模块则基于这些向量来预测股票的n步未来回报。为了实现这一目标,作者使用了一种特殊的训练方法,即联合微调预训练的LLM作为文本表示模块,并训练一个密集层作为预测模块,以最小化预测值与真实值之间的均方误差。

此外,作者还描述了如何构建用于训练的数据实例集合。每个实例都是通过将投资宇宙中的股票标识符与相关新闻链接起来,并使用回顾时间窗口来选择可用新闻。这种方法允许模型学习新闻文本与股票未来表现之间的关系。

3.2 方法论:

探讨了构建基于LLM的股票回报预测模型的方法论,这一模型由文本表示模块和预测模块组成,旨在将财务新闻文本转化为股票回报的数值预测。文本表示模块利用预训练的LLM将输入的文本序列转换成高维向量表示,这些向量捕捉了文本的语义信息。具体来说,作者讨论了编码器-only和解码器-only LLMs在文本表示上的差别,编码器模型如BERT和DeBERTa通过遮蔽语言建模任务学习上下文嵌入,而解码器模型如GPT-3和Mistral通过自回归的下一个词预测任务进行训练。这些模型的不同预训练目标导致它们在处理文本时采用不同的策略,从而影响最终的文本表示。

此外,本节还介绍了两种将LLMs生成的token级向量整合到预测模块的方法:瓶颈表示和聚合表示。瓶颈表示通过在输入序列末尾添加一个特殊的结束序列(EOS)标记,利用其向量表示来压缩整个序列的信息。这种方法对于编码器模型在微调过程中与预训练的一致性可能更为有利。相对地,聚合表示则是通过简单平均或更复杂的机制(如注意力机制)将所有token的向量表示合并起来,以获得整个序列的统一表示。作者选择了简单平均方法来实现聚合表示,因为它不需要额外的训练参数,并且可以清晰地与瓶颈表示进行比较。

最后,第3.2节还讨论了模型的实现细节,包括使用低秩适应(LoRA)技术对LLMs进行微调,以及其他技术如梯度检查点、混合精度训练和DeepSpeed来减少GPU内存使用。这些技术的运用使得模型能够在有限的资源下进行有效的训练。通过这些方法,研究者能够在不同的投资宇宙上进行实验,评估模型在股票回报预测任务上的性能,并探索不同类型LLMs在量化投资策略中的适用性。

4. 实验 (Experiments)

本章详细记录了利用大型语言模型(LLMs)进行股票回报预测的实证研究过程和分析结果。研究使用了2003年至2019年间的公司级财务新闻流数据,这些数据包括了新闻内容和相关公司标识符。同时,研究涵盖了北美、欧洲和新兴市场的股票投资宇宙数据集,包含了股票标识符和对应日期的真实月度前向回报。

实验中,每个数据实例是通过将投资宇宙数据中的股票标识符与相关新闻通过回溯时间窗口(例如一周)链接起来构建的。具体来说,北美市场的数据集包含了630只股票,平均每只股票有2.5条新闻,共有366011个训练实例和241367个测试实例;欧洲市场的数据集包含了350只股票,平均每只股票有1.9条新闻,共有100403个训练实例和121705个测试实例;新兴市场的数据集则包含了370只股票,平均每只股票有2.6条新闻,共有71610个训练实例和183608个测试实例。

模型训练使用了批量大小为32,学习率为1e-5,并采用了100步的预热阶段后接线性衰减的策略。LLMs的微调采用了低秩适应(LoRA)技术,所有模型均在最大上下文长度为4k的情况下训练了10个周期,并使用了2个A100 GPU。

在投资组合构建方面,Long-only投资组合是通过选择基于回报预测排名位于顶部9/10的股票构建的,而long-short投资组合则包括了排名在顶部9/10和底部1/10的股票。所有投资组合中的股票均采用等权重。

回测评估采用了月度再平衡的方式,模拟了每月构建的投资组合的交易情况,并报告了累积回报图表和测试期间的性能统计数据,如年化回报和夏普比率。

具体到评估指标,研究使用了分位数RMSE、分位数精确度和分位数回报三个指标来衡量预测模型的性能。分位数RMSE衡量了基于预测排名的分位数内实际回报与预测回报之间的误差;分位数精确度表示了实际高回报股票被正确预测在高回报分位数的比例;分位数回报则是基于预测分位数的股票实际回报。

实验结果显示,在北美市场中,使用聚合表示的Mistral和Llama模型在long-only投资组合中实现了较高的年化回报,分别为25.15%和27.00%,夏普比率分别为1.20和1.32。在long-short投资组合中,使用聚合表示的DeBERTa和Mistral模型也展现出了较高的年化回报和夏普比率,分别为12.87%和1.49,以及18.30%和1.26。在欧洲市场中,Mistral的聚合表示在long-only投资组合中表现最佳,年化回报为15.12%,夏普比率为1.02;在long-short投资组合中,同样使用聚合表示的Mistral模型年化回报为9.07%,夏普比率为1.04。新兴市场的结果与北美和欧洲市场类似,其中Llama的聚合表示在long-only投资组合中年化回报最高,为12.76%,夏普比率为0.90。

在这里插入图片描述

与基于情感分析的投资组合相比,基于LLMs的预测投资组合在多数情况下表现更佳。例如,在北美市场中,基于FinBERT和FinVader情感分析的long-only投资组合年化回报分别为20.64%和12.26%,夏普比率分别为1.22和0.72,而基于DeBERTa聚合表示的预测投资组合年化回报为25.15%,夏普比率为1.20。在long-only投资组合中,基于情感分析的投资组合表现不佳,特别是FinBert,年化回报和夏普比率均为负值。

在这里插入图片描述

此外,研究还发现,虽然聚合表示在某些情况下提供了更高的分位数回报,但这并不总是意味着较低的分位数RMSE。例如,在北美市场中,DeBERTa和Mistral的聚合表示在顶部9/10分位数的分位数回报较高,但相应的分位数RMSE也较高。这表明,尽管预测可能不够精确,但只要预测结果仍然落在正确的分位数内,投资组合的回报就不会受到影响。

5. 结论 (Conclusion)

本文证明了通过微调大型语言模型(LLMs)来直接建立财务新闻文本表示与股票未来回报之间的关系是可行的,并且能够为量化投资组合构建提供有价值的信号。研究发现,使用LLMs的token级嵌入的聚合表示通常能够提高仅多头和多空投资组合的表现;在较大的投资宇宙中,基于解码器的LLMs预测模型能够产生更强的投资组合,而在较小的投资宇宙中,不同模型的表现则没有一致性。在所研究的三种LLMs(DeBERTa、Mistral、Llama)中,Mistral在不同投资宇宙中表现更为稳健。此外,基于LLMs文本表示的回报预测相较于传统情感分析方法,在投资组合构建中表现更佳。尽管如此,论文也指出了一些未解决的问题,例如需要进一步研究编码器-only模型在大型投资宇宙中表现不佳的原因,以及不同小宇宙中性能变化的原因,为未来的研究提供了方向。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LLMs的embedding方法可以通过将待分析的文本转化为embedding向量来实现。这可以使用原始的LLMs生成embedding向量,这样可以方便地操作,并在检索过程中保留LLMs的"思维过程"。首先,需要将所有文档中的文本转化为embedding向量,并将这些原始文本的embedding向量和原数据存储在Milvus中。在查询时,可以使用相同的模型将问题转化为embedding向量,然后搜索相似性高的相关问题,并将这些相关问题作为输入,生成答案。这种方法可以结合其他推荐系统技术一起使用,以避免一些缺点并获得更好的效果。例如,可以提取基于嵌入的特征用于协同过滤,或与"Two Tower"架构结合使用等等。\[1\]\[2\] #### 引用[.reference_title] - *1* [探索将大语言模型用作推荐系统](https://blog.csdn.net/Baihai_IDP/article/details/130679043)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [LLMs 诸神之战:LangChain ,以【奥德赛】之名](https://blog.csdn.net/weixin_44839084/article/details/130731843)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [使用langchain打造自己的大型语言模型(LLMs)](https://blog.csdn.net/weixin_42608414/article/details/129493302)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值