大语言模型在金融领域的创新应用框架:FinGPT
摘要
01
FinGPT介绍
1.1. FinGPT概述
FinGPT是一个专用于金融领域的开源大语言模型,它通过互联网海量数据训练得到,可以产生符合金融语境的内容生成。同时,它可以实时采集动态金融数据,并实现定期微调。与私有模型不同,FinGPT采用可访问和透明的数据资源,自动数据清洗流程和轻量级大语言模型微调技术,为研究人员和从业者开发自己的金融大语言模型提供了思路参考。
FinGPT目前实现和开源了几类应用,包括机器人投资顾问、量化交易策略、实时情绪分析以及易于开发的低代码平台等。
1.2. FinGPT的目的与意义
首先,开源FinGPT的出现使得以互联网级别海量数据为基础的金融大语言模型能够普及化应用。其次,FinGPT加速了金融业务的智能化。基于FinGPT,可以实现投资建议、量化交易、金融研究等方面的智能化。这有助于提高工作效率与效果,实现业务的规模化运作,降低业务成本。
投资领域,FinGPT在未来可能被看做智能投研发展的里程碑。它首次集成了从信息获取到投资决策全流程的自动化投资框架。虽然该框架当前的功能还比较基础,仅能提供比较简单的自动化投资决策与建议,但是它首次真正将人工智能技术应用于投资策略与管理的全流程,实现了端到端自动投资的构想。
02
FinGPT工作原理
FinGPT 主要由数据采集、数据清理、语言模型和应用四大模块组成。每个模块在FinGPT处理海量动态数据和复杂市场环境中发挥关键作用
FinGPT工作流程的开始为数据源,模型从互联网上收集文字,数据集等数据。接下来,将数据推送到数据工程部分,对数据进行清洗,标记处理和提示工程。然后,处理后的数据被推送到大语言模型(LLMs),用户可以选择不同的方式使用LLMs。有条件的用户可以使用收集到的数据来训练微调模型,或者使用这些数据和训练好的模型API来支持应用程序。最后一部分将是应用程序部分,如机器人投资顾问和量化交易等。
2.1. 数据采集
FinGPT工作流程的起点是数据源层,它负责从各种在线来源采集大量金融数据。该层通过整合来自新闻网站、社交媒体平台、财务报表、市场趋势等数据,从而保证数据的时效性和全面性,确保用以训练模型和下游应用的数据集涵盖最新市场信息。
相比人工采集,FinGPT的数据源层可以自动化和持续性地采集各类金融数据,不受时间和体力的限制,能够最大限度地满足对高质量、高速度、高准确度数据需求。同时,跨渠道的数据融合也可以提供数据的全面性,弥补个别数据源的不足,如社媒的时效性较高但准确度难免偏颇,而官方数据准确性高但更新频率低等。
综上,FinGPT的数据源层通过采用自动化和持续化的方式采集和融合多渠道金融数据,为其后续的NLP建模和应用提供了高质量的输入基础。这是其实现全面覆盖市场变化和高敏捷性的先决条件,也是其区别于人工分析方法的重要优势之一。
2.2. 数据工程
金融市场实时运作,并且对新闻和情绪高度敏感。证券价格可以迅速根据新信息变化,处理这些信息的延迟可能导致错失机会或增加风险。因此,实时处理对于金融NLP来说是至关重要的。
FinGPT的数据源层和数据工程模块可以实时监测和采集各类金融数据,并在获取新数据的第一时间内完成清洗、编码等预处理,为NLP模型提供实时数据输入。
FinGPT的数据工程主要有以下几个目的:
1)数据清洗:实时数据由于自动采集,难免会存在各类噪声、异常值和错误,这会对后续的NLP模型产生干扰。因此,实时数据清洗涉及去除不相关数据,处理缺失值,文本规范化(如大小写),以及错误更正。
2)词编码:在实时应用中,标注词必须在处理中实时进行。FinGPT将文本流分解成更小的单元或标记,并实现词编码。
3)标注:利用事件发生后的金融市场真实反应,标注事件所对应的情绪。FinGPT使用每个新闻相关的股票价格变化百分比作为输出标签,使用阈值将标签分成三组(积极的,消极的和中立的),将它们作为新闻情感的标签。
4)提示工程:创建有效的提示,以引导语言模型的生成过程,并产生理想的输出。要求模型选择其中一个正面的,负面的和中性的作为输出,以便模型充分利用预训练信息。
2.3. 大语言模型训练/调用
数据齐备后,可以推送至大语言模型用以生成有提示意义的金融分析。FinGPT在大语言模型层主要使用了以下两种方案:
1)大语言模型API调用:现有的大语言模型API提供了基准的语言能力,FinGPT支持用户调用ChatGPT等大模型的API实现语言模型观点输出。
2)微调模型:除了调用API外,用户也可以在本地通过低秩技术微调大模型。通过LoRa,FinGPT将本地大语言模型的参数数量从61.7亿个缩小到367万个。
表3为经过微调后的FinGPT模型在情绪分类任务上与原始ChatGLM模型的对比。在ACC和F1的评价视角下,微调后模型性能都有所提升。尤其对于剔除中性化样本后的分类任务,性能提升显著。
2.4. 产品开发与应用
FinGPT在金融领域实现了一系列的应用,包括机器人顾问,量化交易,金融情绪分析,低代码开发和金融教育等。
机器人顾问:根据个人需求和偏好实时提供金融建议,提高了获取建议的便利程度,降低了获得服务的成本。FinGPT可以学习大量历史案例和研究报告,在此基础上,它可以总结出投资策略与建议。用户可以直接使用这些建议,或根据实际情况进行适当调整,这可以极大提高工作效率
量化交易:基于FinGPT的大量金融数据训练,可以发现事件的情绪对资产的影响模式,可将这种模式用到量化交易策略中,由FinGPT实时产生交易信号以自动执行交易。这种数据驱动的量化交易策略可以更快地对市场变化进行响应。
03
FinGPT的启发与展望
3.1. FinGPT的创新与贡献
截止目前,应用于金融领域的大语言模型很少,其中以BloombergGPT和FinGPT为私有模型和开源模型的主要代表。BloombergGPT是金融领域的第一个大语言模型,作为私有模型的代表,其有以下几个特点:
1)能力强:专有数据获得了训练金融语言模型的优势,模型专业能力突出;
2)训练昂贵:BloombergGPT需要大量的计算资源。它训练需要大约130万个GPU小时,根据AWS(Amazon web service)云2.3美元的价格计算,每次训练的成本约为300万美元,训练模型的成本非常昂贵;
3)封闭与黑盒:BloombergGPT模型的数据和训练方案由公司开发和拥有。这意味着模型的详细内容(如结构、参数、训练数据等)并不向公众开放,只有特定组织可以使用和运营。其次,私有模型需要付费才能使用。私有模型由开发组织进行产品化与商业化运营,访问的限制也较多,不利于模型的普及和平民化应用。总体而言,专有模型实现了商业化与产品化,但也保存了较高的黑盒性与封闭性,用户难以主导模型的运营与发展。
FinGPT作为开源的金融大模型,主要有以下几点创新与贡献:
1) 低训练成本
金融行业是高度动态的,信息和数据以较高频率更新。BloombergGPT的定期训练成本非常昂贵,因此轻量级适应在金融领域非常有利。FinGPT可以快速微调以与新数据保持一致,而不是随着金融环境的每一次重大变化从头开始重新训练模型,估算每次训练不到300美元。
2) 数据、模型平民化
BloombergGPT需要拥有特权数据访问和API才能访问。FinGPT提供了一个更容易触达的替代方案。它优先考虑模型的轻量和适应性,利用一些最好的开源大语言模型,然后将金融数据输入这些大语言模型并对进行微调。数据方面,FinGPT使用多种可自动更新的数据渠道,数据的可访问性增强。
3) 端到端的架构
FinGPT采用了一个四层框架来开发金融大规模语言模型,实现了从信息端到投资端的全流程应用架构。四个层分别是数据源层->数据工程层->大语言模型层->应用层。
3.2. FinGPT目前的问题及不足
FinGPT作为一款自动化投资解决方案,其当前版本还存在一定的弱点和限制,主要体现在以下几个方面:
1)底层技术不成熟:FinGPT使用的底层技术是大语言模型。该领域尚未完全成熟且存在争议。FinGPT依赖的技术仍需不断进步与优化,其性能和稳定性还需要提高。
2)决策能力薄弱:FinGPT目前的投资决策能力主要基于其对结构化数据的分析,以及对非结构化数据的简单判断。它难以全面模拟人类投资者在不同层面上的深入分析与判断,其决策过程相对比较简单和依赖模型,缺乏人工投资者的切身判断与思考。所以,其投资决策的逻辑和深度还比较薄弱。
3)功能较单一:FinGPT当前主要面向比较简单的数据分析与建议场景,在处理复杂问题上仍有较大提高空间,应用范围还需要拓展。
3.3. FinGPT的未来发展及影响
FinGPT这种人工智能驱动的自动化投资框架,未来可能会对投资行业产生较大影响和变革。主要体现在以下几个方面:
1)传统人工投研和分析模式面临冲击。FinGPT可以自动执行大量数据分析和信息研究工作,替代人工完成数据获取、清洗、特征提取等工作,这可能会冲击传统的人工投研模式。
2. 量化交易和机器人投顾将更加普及。依托FinGPT等AI框架,个人和机构可以更容易开发自动化的量化策略和机器人投资顾问,这将推动相关应用的普及与发展。
3. 投资决策转向数据与AI驱动。FinGPT可以提供数据分析和AI建议作为投资决策的重要依据,投资者将更多依赖于数据和模型,而非主观判断,这将改变投资行业的决策模式。
4. 个性化专业服务实现规模化。FinGPT通过AI技术,可以为大量投资者或客户提供个性化的投资管理与建议。这可以实现投资专业服务的规模化,降低服务成本,惠及更多投资者。
所以,总体来说,FinGPT这类AI驱动的自动化投资框架,将在多个层面对投资行业产生比较深远的影响与改变。它们将改写相关工作模式,推动新应用和体验,提高市场质量,最终惠及更广大的投资者群体。
04
总结
FinGPT是金融领域的大语言模型,通过大量金融数据训练,可以产生符合金融语境的回复与生成。它改善了通用大语言模型在金融专业领域的适用性问题。除此之外,它通过实时数据采集和处理,轻量级微调技术,一定程度上调和了金融的高度动态和大模型训练高成本之间的矛盾。最后,它首次实现了全流程自动化的投资,这一点在智能投资领域具有开创性的意义。
FinGPT受限于底层技术和模型,还存在一些问题需要解决,但是它是金融AI前进道路上的重要探索,它代表了方向而不是结果。我们需要耐心跟随其发展演进。
05
风险提示
大语言模型虽然取得了巨大的进步和关注,但是其生成内容的准确性、真实性依旧存在争议。由大语言模型生成的内容应当被看作提示和建议,而非客观真相或事实。
大语言模型更趋于产生读起来通顺的词句,但往往不能充分符合客观事实。这可能导致其生成内容并不完全准确客观。
报告作者:
陈奥林 从业证书编号 S1230523040002
陆达 从业证书编号 S1230122070032
详细报告请查看2023年7月4日发布的浙商证券金融工程专题报告《大语言模型在金融领域的创新应用框架:FinGPT》
法律声明:
本公众号为浙商证券金工团队设立。本公众号不是浙商证券金工团队研究报告的发布平台,所载的资料均摘自浙商证券研究所已发布的研究报告或对报告的后续解读,内容仅供浙商证券研究所客户参考使用,其他任何读者在订阅本公众号前,请自行评估接收相关推送内容的适当性,使用本公众号内容应当寻求专业投资顾问的指导和解读,浙商证券不因任何订阅本公众号的行为而视其为浙商证券的客户。
本公众号所载的资料摘自浙商证券研究所已发布的研究报告的部分内容和观点,或对已经发布报告的后续解读。订阅者如因摘编、缺乏相关解读等原因引起理解上歧义的,应以报告发布当日的完整内容为准。请注意,本资料仅代表报告发布当日的判断,相关的研究观点可根据浙商证券后续发布的研究报告在不发出通知的情形下作出更改,本订阅号不承担更新推送信息或另行通知义务,后续更新信息请以浙商证券正式发布的研究报告为准。
本公众号所载的资料、工具、意见、信息及推测仅提供给客户作参考之用,不构成任何投资、法律、会计或税务的最终操作建议,浙商证券及相关研究团队不就本公众号推送的内容对最终操作建议做出任何担保。任何订阅人不应凭借本公众号推送信息进行具体操作,订阅人应自主作出投资决策并自行承担所有投资风险。在任何情况下,浙商证券及相关研究团队不对任何人因使用本公众号推送信息所引起的任何损失承担任何责任。市场有风险,投资需谨慎。
浙商证券及相关内容提供方保留对本公众号所载内容的一切法律权利,未经书面授权,任何人或机构不得以任何方式修改、转载或者复制本公众号推送信息。若征得本公司同意进行引用、转发的,需在允许的范围内使用,并注明出处为“浙商证券研究所”,且不得对内容进行任何有悖原意的引用、删节和修改。
本篇文章来源于微信公众号: Allin君行