“ 股票趋势预测通过分析历史数据和市场指标来预测未来价格走势。随着机器学习的发展,图神经网络(GNNs)被用于股票预测,但现有GNN股票预测器改进有限,因其只关注历史时空依赖,忽视历史和未来模式的相关性。本文提出一种新的基于蒸馏的可感知未来的GNN框架(DishFT-GNN)用于股票趋势预测,通过训练教师模型和学生模型,教师模型学习捕捉历史和未来数据分布变化的相关性,为学生模型提供中间监督,使其学习未来感知的时空嵌入以进行准确预测。通过在两个真实世界数据集上的实验,验证了DishFT-GNN的性能。”
01.背景
股票市场是众多公司和投资者进行交易的金融投资平台,随着人工智能的发展,深度学习技术为投资者提供了更多通过股票投资增加财富的机会。基于深度学习的股票交易方法通常基于股票的未来动态可从其历史模式中揭示这一基本假设,如基于递归神经网络(RNN)及其变体(LSTM或GRU)的方法用于分析历史股票价格指标中的潜在时间动态。图神经网络(GNNs)构建股票图,纳入股票之间明确的关系(空间)依赖。然而,仅依赖明确关系会导致关系特征的聚合有偏差和不完整,因此有研究开始关注用基于深度学习的图表示方法探究隐含关系。此外,股票数据具有高度非平稳性,仅依靠历史价格指标的股票预测器应用到现在性能可能次优,这促使本文认为不仅历史股票数据特征分析很重要,历史和未来数据分布变化的相关性也很重要。
02.问题定义
将股票趋势预测定义为一个二元节点分类任务。动态股票图在交易日t可定义为
其中v=({v_{1}, v_{2},…, v_{N}}是N个股票的集合,X代表历史L个交易日的M个价格指标,A^{t}是表示股票之间关系的归一化关系矩阵。数学上,问题被表述为
其中g是基于GNN的模型,f是预测层,y是输出的二元变量集合,y_{n}^{tau=1)表示第n个股票将上涨,否则为0。
03.方法
3.1 总体架构
DishFT-GNN包含两个训练过程,即教师模型和学生模型的训练。教师模型先对历史股票图和未来趋势信息进行编码,生成历史时空和高级未来嵌入,然后通过一种新的基于注意力的多通道特征融合方法将这些嵌入整合,生成未来感知的时空表示,将其输入预测模块得到预测结果,与真实值比较优化教师模型。之后,教师模型的未来感知时空表示作为中间监督指导学生模型学习历史-未来分布相关性。
3.2 时空GNN模块
时空嵌入可计算为
其中ST可以是任何时空GNN模型,具体计算过程为先进行时间上的计算,再进行空间上的计算。
3.3 未来趋势编码器
是一个前馈网络(FNN),用于编码股票未来趋势,生成新的未来趋势嵌入
其中f_{n}^{[t: t+T)}代表v_{n}在接下来T个交易日的未来趋势。
3.4 未来感知教师模型训练
未来感知时空编码:教师模型利用未来趋势编码器将股票未来趋势编码为新的高级嵌入
再用时空GNN模块生成历史时空嵌入
为了对不同的历史-未来分布变化进行建模,提出一种新的基于注意力的多通道融合方法,将q_{n}{t+}和P_{n}{t}整合为高级未来感知时空表示。具体通过多次向量-矩阵-向量(VMV)乘法生成多通道结果,每个通道代表历史和未来分布之间的潜在相关性
然后利用注意力机制评估每个通道的重要性,最后进行缩放点积注意力操作进行特征融合
预测和优化:得到h_{n}^{t+}后,将其输入预测模块
进行股票趋势预测,最后通过最小化交叉熵损失
学习参数。
3.5 基于蒸馏的学生模型训练
学生模型利用经过收敛训练的教师模型监督自身训练,分为两个阶段。首先,学生模型对历史股票图进行编码,生成历史时空表示
,然后将其输入与教师模型有相同参数的共享预测模块进行预测
为了基于h_{n}{t}推断未来模式,学生模型通过最小化h_{n}{t}和h_{n}{t+}之间的蒸馏损失进行训练,最初使用均方误差L_{d}=MSE(h_{n}{t}, h_{n}^{t+}),由于表示高度非线性,后来使用希尔伯特-施密特独立性准则(HSIC)
学生模型的最终目标是在基于历史股票数据生成未来模式的同时尽可能准确地预测股票趋势
04.实验
4.1 数据集
使用来自美国股票指数(标准普尔100和纳斯达克100)的两个数据集,时间跨度从2019年1月1日到2023年9月30日。将数据集分为85%用于训练,7.5%用于验证,7.5%用于测试。为确保数据完整性,消除有缺失数据的股票,分别从标准普尔100和纳斯达克100中选择了96和94只股票,并利用行业数据表示明确的股票关系。
4.2 实验设置
将DishFT-GNN与七种GNN股票预测方法(GCN、GAT、TGC、ADGAT、MGAR、VGNN和MDGNN)进行比较。使用准确率(ACC)和马修斯相关系数(MCC)作为评估指标。所有模型的参数使用Adam优化器在单个NVIDIA RTX 4070Ti GPU上进行训练,批量大小设置为64,每个实验独立重复五次并报告均值和标准差。
4.3 实验结果
性能比较:如表所示,DishFT - GNN显著提高了所有基线模型的预测性能,在大多数情况下准确率提高超过2%,在与MGAR集成时提高了5.41%,在两个数据集上MCC提高了82.3%到218%。此外,以经典GCN为骨干进行投资利润的回测比较,结果表明DishFT-GNN的利润差距随着时间逐渐扩大,进一步验证了其有效性。
消融研究:对GCN、GAT、VGNN和MDGNN进行消融研究,构建了DishFT-GNN w/o H(用MSE替换HSIC)和DishFT-GNN w/o F(用简单连接替换基于注意力的多通道特征融合模块)以及原始的DishFT-GNN。结果表明所有组件在ACC和MCC方面都对DishFT-GNN的性能有积极影响,HSIC有助于学生模型学习更广泛的非线性特征,基于注意力的多通道融合方法有效提高了预测性能。
如何学习大模型 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 的正确特征了。