超越GPT-4 ,金融分析新突破:FinTral多模态大模型

news2024/9/19 23:53:18

人工智能咨询培训老师叶梓 转载标明出处

在金融领域,对大量非结构化数据的处理和分析一直是行业面临的重要挑战。为了解决这一问题,由不列颠哥伦比亚大学和Invertible AI的研究团队共同提出了一套名为FinTral的先进多模态大模型(LLMs)。FinTral模型专为金融分析而设计,它整合了文本、数值、表格和图像数据。金融文档通常包含密集的数字信息和特定领域的术语,模型具备高级的数字处理和推理能力。

图 1为FinTral与ChatGPT (GPT-3.5) 和 GPT-4在七个任务类别上的表现比较分析。这些任务包括情感分析(SA)、命名实体识别(NER)、数字理解(NU)、文本摘要(TS)、股票走势预测(SMP)、信用评分(CS)和公司披露(FD)。FinTral在没有经过特定任务训练的情况下就能展现出良好的性能。

FinSet数据集

在构建FinTral模型的过程中,研究团队开发了FinSet,这是一个高质量、20亿token的大规模数据集,专门用于金融领域的大型语言模型(LLM)训练。FinSet的建立基于2.9亿份文档,总计1359亿个token,这些文档经过精心清洗,以确保数据的相关性和准确性。清洗流程包括去除重复内容、过滤非金融领域文档、排除敏感信息,并且最终形成了20亿个token的精简数据集。图2为FinSET金融训练和评估基准,包括预训练数据、指令调整数据、多模态指令数据、金融AI反馈数据和下游任务。

预训练数据集是FinSet的基础,它包含了以下类型的文档:

  • C4:包含2.8亿份文档,124亿个token,清洗后剩下11.75亿个deduplicated tokens。
  • 新闻:5150万份文档,8.7亿个token,清洗后剩下5.65亿个deduplicated tokens。
  • SEC文件:430万份文档,3.1亿个token,清洗后剩下2.55亿个deduplicated tokens。
  • 社交媒体:71.7万份文档,820万个token,清洗后剩下787万个deduplicated tokens。
  • 新闻稿:12万份文档,310万个token,清洗后剩下155万个deduplicated tokens。

表格1提供了预训练资源的详细信息,包括文档数量、标记数量、去重复后的标记数量等。这些文档的截止日期为2023年8月1日。

为了提升模型的能力,研究团队收集了大量的指令调整数据集,这些数据集来源于与GPT-3.5和GPT-4的多种任务交互。通过去重和过滤流程,排除了非金融指令,专注于金融推理。例如,FLUPE数据集包含了123万个金融指令(表2)。

AI反馈对于调整语言模型至关重要。在这项工作中,研究团队采用了AI反馈,通过比较GPT-4生成的输出与其他模型(如FinMA-7B和LLaMa-7Bchat)生成的输出,选择GPT-4的输出作为“chosen”响应,而随机选择其他模型的输出作为“rejected”响应。这样的AI反馈数据包括了43k个样本。 

为了训练FinTral的视觉语言组件,研究团队使用了Llava预训练数据中的LAION、CC和SBU数据集,以及ChartQA训练集。他们还扩展了视觉预训练数据集,创建了名为FinVisPT的英语数据集,该数据集包含股票市场图表并提出了关于它们的问题。FinVis-IT数据集则包含更复杂的图表和多轮指令。

用于视觉金融指令的数据集

为了有效评估LLM的性能,研究团队开发了一个包含多种任务的广泛基准,这些任务包括图表理解、情感分析、命名实体识别、数字理解、文本摘要、股票走势预测、信用评分、公司披露和幻觉分析。这些任务覆盖了25个不同的数据集,并使用了相应的评估指标。表4总结了用于下游评估的数据集,包括不同的任务、指令数据类型、模态来源和评估使用的指标。

FinTral模型

FinTral模型的开发是基于Mistral-7B-v0.1模型,该模型因其出色的性能和对数字进行单位分割的BPE分词器而被选作基础,这使得它特别适合处理数值任务。

研究团队对Mistral-7B-v0.1进行了基于FinSet数据集的进一步预训练,FinSet数据集包含20亿个token,来源于2.9亿份文档,这些文档经过清洗,以确保数据的相关性和准确性。预训练使用了flash attention 2技术,并采用LoRA技术,训练周期为一个epoch,学习率为2.5e-5。整个预训练过程使用了四块40GB的A100 GPU,耗时80小时。

FinTral模型采用了一种适合金融领域LLM的提示方法。模型被赋予了一个记忆代理(memetic proxy),作为一个金融专家,它需要逐步思考,并考虑可能包括文本、表格或图像的多样化输入。这种结构化方法对于在复杂的金融场景中获取模型的专注回答至关重要。

FinTral模型的提示方法

使用前面提到的指令调整数据集对预训练模型进行微调,采用了QLoRA技术,针对所有线性层作为目标模块进行微调,以接近全微调的性能。

为了解决大模型可能无法很好地响应自然提示的问题,研究团队使用了直接偏好优化(DPO),这是一种无需奖励模型就可以调整模型的方法。Tunstall等人介绍了一种使用LoRA通过DPO目标训练LLM的方法,称为蒸馏直接偏好优化(dDPO)。

模型通过添加<image> token并用图像嵌入替换,赋予了视觉理解能力。使用了CLIP模型作为视觉编码器,并使用2层MLP视觉抽象器将图像输入转换为文本嵌入。

为了解决LLM在处理定量任务时的挑战,研究团队将工具集成到模型中,例如Add()、Subtract()和Multiply()等函数,以生成结构化的输出,提高金融应用中的模型准确性。

研究团队部署了一个使用BGE模型的RAG系统,这些模型是文档检索的最新技术。这个系统有助于工具使用和在某些情况下从复杂数据中提取文本,使用了30,000份金融文档。

实验

研究团队在前面讲的下游任务上评估了本模型。以下表格中的符号表示不同类型的模型:♣、♠、♢、♡、 和■分别代表预训练模型、微调模型、指令微调模型、RL(强化学习)调整模型、工具和检索模型。接着,进行了幻觉指数准确性检查,以评估本模型如何缓解大模型面临的最大挑战之一。

研究团队介绍了三种版本的模型。FinTral-INST是通过对预训练模型进行指令微调得到的指令微调模型。注意,不评估预训练模型的性能,因为它是指令微调模型的中间步骤。其次,FinTral-DPO是基于FinTral-INST,利用AI反馈通过dDPO目标进行强化学习进一步训练的。最后FinTral-DPO-T&R,它将FinTral-DPO与工具和检索结合起来。

研究团队还比较了本模型与九个其他基线LLMs的性能。这些包括LLama-2、Mistral、三个版本的FinMA、Vicuna、ChatGPT、GPT-4。

如表5所示,指令微调模型FinTral-INST在平均得分0.49上超越了所有预训练和微调的开源模型。这里关注的一个原因是需要特定格式输出的任务,如数值理解和NER(命名实体识别)任务。在某些情况下,模型难以遵循指令,经常偏离任务要求的内容。像FinTral-DPO、ChatGPT和GPT-4这样经过AI反馈强化学习的模型,显示出更加显著的改进。增加RLAIF(AI反馈强化学习)显著提高了平均得分到0.59,导致FinTral-DPO超越了ChatGPT。特别是GPT-4以其最高的平均得分脱颖而出,表明其在多样化任务上的强大性能。其在NER、NU(数字理解)和FD(公司披露)上的高分表明了在理解复杂文本、识别特定实体和解释数字数据方面的卓越能力。

如前所述,检索和工具的使用在增强模型FinTral-DPO-T&R的能力方面发挥了关键作用,与它们对GPT-4的影响类似。将这些功能整合到这些模型中,允许模型访问更广泛的信息,并应用更专业的处理技术,从而在各种任务上显著提高了性能。在FinTral-DPO-T&R的情况下,将FinTral-DPO模型与检索和工具能力结合起来证明特别有效。FinTral-DPO模型准确遵循指令提示的能力,使其能够与外部工具和检索数据无缝集成。GPT-4-Turbo的性能也很优秀,其最新更新包含了工具和检索。在5个下游任务中,FinTral-DPO-T&R超越了GPT-4,而GPT-4在两个下游任务上超越了FinTral-DPO-T&R。由于GPT-4在这两个任务上做得非常好,其平均性能略好于FinTral-DPO-T&R(0.72对比0.70,如表6所示)。FinTral-DPO-T&R和GPT-4比其他模型的优势证明了将复杂的AI模型与额外的数据和工具集成,以获得更精细和准确的输出的潜力。

为了评估本金融多模态模型,研究团队使用了ChartQA和FinVis数据集。他们比较了各种最新的多模态大模型(MLLMs),如GPT-4V、Gemini-Pro、QwenVL-Plus、LLaVa-NEXT,以及FinTral-VL模型,该模型包括CLIP和FinTral-DPO。如表7所示,GPT-4V表现最佳,在ChartQA上得分0.79,在FinVis上得分0.89,平均得分0.84。Gemini-Pro紧随其后,在两个数据集上表现一致,平均得分0.78。其他模型如Qwen-VL-Plus、FinTral-VL和LLaVa-NEXT显示出不同程度的效果:Qwen-VL-Plus在ChartQA上的表现(0.78)明显优于FinVQA(0.64),而FinTral-VL和LLaVa-NEXT则落后,表明它们在视觉数据解释能力方面有待提高。FinTral-VL在FinVQA数据集上表现良好,非常适合多模态金融用途。

由于金融幻觉可能难以衡量,研究团队使用了三种不同的方法和数据集来量化幻觉。首先,评估模型在选定金融术语定义时的幻觉程度。然后,基于第一个任务,对顶级LLM模型的响应适当性进行了人类评估。最后,研究团队在FinanceBench数据集上评估了它们,这是一个需要数学工具和检索的复杂数字问答数据集。

在FinTerms-MCQ数据集中,研究团队将Investopedia(2024年)的金融术语定义转换为多项选择格式,使用正确的定义和三个其他密切相关的定义。然后让模型选择正确的定义。研究团队根据模型在这项多项选择任务中的性能,得出了一个幻觉指数(HI),定义为每个模型正确生成定义的比例(越高越好)。如表8所示,模型在HI上的表现差异显著。GPT-4和ChatGPT分别以98%和95%的异常高得分领先。所有的三个模型都优于其他开源LLM。特别是,FinTral-DPO-T&R以97%的HI表现出色。

研究团队使用在FinTerms-MCQ上表现最好的三个模型(即GPT-4、ChatGPT和FinTral-DPO+T&R)生成了与FinTerms-Gen数据集中的金融术语相关的问题的答案(n=150,见表4)。然后让两位至少有四年金融背景的人类,用图6中显示的四种正确性标签对响应进行标记。两位注释者以0.85的Cohen's kappa值达成一致。FinTral-DPO-T&R比ChatGPT产生了更多正确且满意的响应(图6中的类别A),但不及GPT-4。

FinanceBench(Islam等人,2023年)是一个专有数据集,旨在评估LLMs在开放书籍金融问答(QA)方面的功能。完整版本包括与公开交易公司相关的10,231个问题,每个问题都附有证据字符串和相关答案,研究团队使用Islam等人(2023年)提供的FinanceBench的开源样本150个问题来评估本模型。如图7所示,FinTral-DPO-T&R在该数据集上表现非常好,超越了其他模型,包括GPT-4、Claude和Llama-70B。在FinTral-DPO-T&R中使用检索和工具证明了其效率,并使该模型领先于所有其他模型。

FinTral模型的提出,为金融领域带来了新的分析工具,它通过结合先进的技术和策略,有效地解决了金融文档分析中的复杂性问题。随着金融科技的不断发展,FinTral有望成为金融专业人士和研究人员的宝贵资源。

论文链接:https://arxiv.org/abs/2402.10986

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2044739.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

云计算实训26——部署LVS负载均衡项目(上)

LVS LVS是linux virtural server的简称——免费、开源、四层负载均衡 工作原理&#xff1a; 通过linux达到负载均衡好和linux操作系统实现高性能高可用的linux服务集群&#xff0c;具有良好的可靠性、可扩展性、可操作性、可扩展性、从而实现以低廉的成本实现最优的性能。LV…

前端案例:Alloy Team|腾讯全端项目(响应式)

前言 这是一个简单的响应式项目&#xff0c;模仿了Alloy Team|腾讯全端部分内容&#xff0c;模拟了可以适应不同类型的设备 项目总览 整体布局 屏幕大于1200px概况&#xff1a; 头部标签hover 轮播图 屏幕在小于992px概况 头部背景变色 固定 屏幕在小于992px概况 屏幕大于7…

基于YOLOv8的手部检测(1)- 手部数据集获取(数据集下载、数据清洗、处理与增强)

前言 在进行手部姿态估计、手势识别时&#xff0c;需要先检测出手的位置。本文对网上公开的手部数据集进行获取、清洗、处理与数据增强&#xff0c;用于YOLO等目标检测网络的训练。 1.手部检测数据集概览 1.1 HaGRID手势识别数据集 项目地址&#xff1a; https://github.com/…

[C++] STL (multi)map/(multi)set简介

标题&#xff1a;[C] STL (multi)map/(multi)set简介 水墨不写bug 目录 前言&#xff1a; 一、set简介 1.set简介 2.set的常见用法 二、map简介 1.map简介 2.map使用 三、multiset简介 1.multiset简介 2.multiset使用 四、multimap简介 1.multimap简介 2.multim…

DVWA-IDS测试(特殊版本)

起因 浏览DVWA历史更新记录发现有版本带有IDS插件&#xff0c;可以用于平时没有相关设备等场景演示用&#xff0c;所以开启本次测试。 下载 官方最新版本是移除了IDS插件&#xff0c;原因是“从不使用”&#xff0c;所以需要下载移除该插件之前的版本。 https://github.com/…

【QuikGraph】图算法之Prim最小生成树求解

介绍 最小生成树概念与算法介绍 QuikGraph的PrimMinimumSpanningTreeAlgorithm的API地址 示例 测试代码&#xff1a; using Microsoft.VisualStudio.TestTools.UnitTesting; using QuikGraph; using QuikGraph.Algorithms.MinimumSpanningTree; using QuikGraph.Algorithm…

【Python 滑块图片复原】将steam蒸汽平台混乱的滑块背景图复原

文章日期&#xff1a;2024.08.16 使用工具&#xff1a;Python 文章类型&#xff1a;复原steam蒸汽平台里的滑块图片 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 AES解密处理&#xff08;直接解密即可&#xff09;&#xff08;crypto-js…

【ElementUI】el-table值相同时合并行

效果图&#xff1a; 大致思路&#xff1a;el-table里添加合并行或列的计算方法span-method <el-table :data"tableList" :span-method"objectSpanMethod"> // 在获取到列表数据tableData后调用此方法 handleTableData(tableData) {let rowSpanArr …

探索JUnit源码:揭秘编程高手的秘密武器

摘要 本文将带领读者深入探索JUnit测试框架的源码&#xff0c;揭示其中蕴含的编程智慧和技巧。通过分析JUnit的实现原理&#xff0c;我们将学习到如何编写高质量、可维护的代码&#xff0c;并掌握一些高级编程技巧。 引言 在软件开发的世界里&#xff0c;测试是保证代码质量…

使用electron-vite创建桌面应用

使用electron-vite创建桌面应用 一、框架搭建二、项目目录三、preload.js解读 一、框架搭建 官网地址https://cn.electron-vite.org npm create quick-start/electronlatest按步骤操作即可 二、项目目录 1、main 主进程窗口&#xff1a;存放窗口代码 2、preload 预加载模块…

项目代码全自动国际化翻译工具

项目代码全自动国际化翻译工具 在当今全球化的时代&#xff0c;软件的国际化已不再是可选项&#xff0c;而是必需品。为了使软件能够覆盖更广泛的用户群体&#xff0c;支持多语言已成为每个开发团队的重要目标之一。然而&#xff0c;处理项目中的国际化问题并非易事&#xff0…

基于深度学习的图像特征优化识别复杂环境中的果蔬【多种模型切换】

文章目录 有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博主项目介绍图像特征优化方法模型原理及实验对比模型训练每文一语 有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博主 项目介绍 基于深度学习的图像识别技术广泛应…

企业发展与数字化转型:创新驱动未来增长的关键策略

引言 在当今全球化和信息化高度融合的时代&#xff0c;数字化转型已经成为企业寻求增长和保持竞争优势的关键战略。随着技术的飞速进步&#xff0c;数字化不仅改变了商业模式和市场格局&#xff0c;还深刻影响了企业的内部运作和外部生态系统。大数据、人工智能、物联网等新兴技…

【免费】企业级大模型应用推荐:星环科技无涯·问知

无涯问知是星环科技发布的大模型应用系统&#xff0c;那么我们先简单了解下星环科技吧&#xff01; 星环科技&#xff08;股票代码&#xff1a;688031&#xff09;致力于打造企业级大数据和人工智能基础软件&#xff0c;围绕数据的集成、存储、治理、建模、分析、挖掘和流通等数…

【保姆级教程】用pycharm连接远程数据库,并用sql语句进行增添语句

1.远程连接 检查是否连接成功 然后就能连接成功了。 2.可视化 双击&#xff0c;即可查看该表&#xff0c;左侧应该显示详细信息&#xff0c;类似navicat 3.增删改查&#xff08;前提&#xff1a;你有权限&#xff09; 3.1.非语句版 双击进行修改 点击箭头保存提交 3.2 sql语…

4.2 数据定义语言(DDL)

欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;欢迎订阅相关专栏&#xff1a; 工&#x1f497;重&#x1f497;hao&#x1f497;&#xff1a;野老杂谈 ⭐️ 全网最全IT互联网公司面试宝典&#xff1a;收集整理全网各大IT互联网公司技术、项目、HR面试真题.…

spring data:spring-data-jdbc spring-data-relational 源码解析 (2)

文章目录 简介项目特点解决的主要问题关联的项目如何引入到项目工程中源码分析框架 最近这几年在做数据中台相关的项目&#xff0c;有个技术点就是要支持多款数据库&#xff0c;尤其是一些国产数据库&#xff0c; sql 语法多样&#xff0c;如何做统一就是一个我们面临的一个难题…

采购oled全透明显示屏需要注意什么

采购OLED全透明显示屏时&#xff0c;需要注意以下几个方面以确保选择到符合需求的高品质产品&#xff1a; 一、明确需求与预算 应用场景&#xff1a;首先明确OLED全透明显示屏将用于何种场景&#xff0c;如零售展示、展览展示、智能家居、车载显示等&#xff0c;以便选择合适的…

前端新手必看:掌握CSS样式优先级和!important,让你的样式不再冲突!(CSS优先级和!important的用法)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 CSS样式优先级 📒📝 CSS样式优先级基础📝 选择器的特异性(Specificity)📝 源(Source)顺序🚀 !important的使用📝 使用!important的场景📝 如何使用!important🚧 注意事项与最佳实践📝 替代方法⚓️ 相关链…