您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[国金证券]:Beta猎手系列之十二:RAG-ChatGPT提前布局热点概念领涨股 - 发现报告
当前位置:首页/其他报告/报告详情/

Beta猎手系列之十二:RAG-ChatGPT提前布局热点概念领涨股

2024-08-16高智威国金证券R***
Beta猎手系列之十二:RAG-ChatGPT提前布局热点概念领涨股

000 本篇报告继续探讨大语言模型在热点投资上的应用,是在《Beta猎手系列之七:追上投资热点——基于LLM的产业链图谱智能化生成》提出的“产业链Agent”模型的基础上做了进一步拓展,进一步提升了产业链与概念股梳理效果,并增加了识别概念领涨股的功能,帮助投资者更准确地把握行情。 RAG:What,Why,How? RAG是一种优化大语言模型输出质量的技术,通过在指定数据库中检索高相关信息来提升模型回答质量,适用于垂直领域知识增强、最新知识更新、扩展上下文长度等多种应用场景。通过“海底捞针”实验我们证明,尽管大模型支持输入更长上下文,但在处理较长文本时可能出现能力下降,这也是我们必须用RAG提炼信息,实现降本增效的原因。基于查询的RAG是当前较主流的RAG框架:检索出高相关文本后通过Prompt与查询一起输入大模型,提升回答的质量。我们可以从初始查询、检索器、生成器等方面对RAG框架进行优化,其中检索器是决定RAG效果的关键。检索器包括检索算法、Embedding模型以及向量数据库的选择等,能实现对检索结果的质量以及大数据下检索效率的提升,需要使用者根据应用的特征专门挑选检索方式。 产业链与概念股梳理全流程升级 我们推出“产业链Agent”模型v2.0版本,全流程提升梳理结果质量。首先,我们搭建了涵盖新闻、研报、公司公告等多个来源的知识库,并针对产业链梳理与概念股梳理两种不同的任务分别进行处理;考虑到中文金融文本的特性,我们选择混合检索的算法,并创新地提出了时间加权的概念,将信息的时效性纳入考虑;此外,我们也实现对文本做进一步浓缩,以及判断可能存在的概念股映射不准的问题,并最大化发挥不同大模型的优势。 产业链梳理结果上来看,提升检索文本质量之后,我们能直接生成任意概念的产业链图谱,也能给到更加完善的图谱结果;概念股梳理结果更加准确,且我们给出的概念股组合等权指数与Wind人工梳理构造的指数走势基本一致,表明我们给到的概念股范围有较高准确度。 概念领涨股特征识别与领涨组合构造 模型梳理得到的概念股数量较多,我们试图通过量价特征从中找出领涨股,帮助投资者更好把握热点行情。我们以AI手机、人形机器人、合成生物学与低空经济四个概念为例,通过复盘确认了各概念的行情启动时间点。通过检验,我们发现动量因子与非流动性因子在热点行情来临时具有一定选股效果。我们将两个因子做等权合成,同时叠加“尖峰右偏”特征做第二层筛选,并在市值大于50亿的个股上做筛选,构造领涨组合。从回测结果上来看,领涨组合在概念启动后的短期内相对概念指数以及Wind全A均有明显的超额收益。 风险提示 大语言模型输出结果具有一定随机性的风险;模型迭代升级、新功能开发可能会导致结论不同的风险;人工智能模型得出的结论仅供参考,可能出现错误答案的风险。 内容目录 内容目录2 图表目录2 一、RAG:What,Why,How?4 1.1为什么需要RAG?4 1.2为什么必须要RAG?RAGvs长上下文5 1.3RAG的架构流程与优化路径7 1.4如何选择适当的检索算法?8 二、产业链与概念股梳理全流程升级11 2.1多源知识库搭建11 2.2混合检索与时间加权12 2.3文本处理与大模型选择13 2.4模型效果提升——产业链梳理13 2.5模型效果提升——概念股梳理15 三、概念领涨股特征识别与领涨组合构造17 3.1热点行情复盘18 3.2领涨股具备什么特征?18 3.3领涨股组合增强方案20 四、总结23 参考文献23 风险提示24 图表目录 图表1:RAG通用架构4 图表2:GPT-4128k“大海捞针”测试结果5 图表3:Claude-2.1200k“大海捞针”测试结果6 图表4:各个大模型在中文版大海捞针SC-200K上的表现6 图表5:Query-basedRAG流程示意图7 图表6:RAG效果改进路径8 图表7:混合检索(HybridRetrieval)流程示意图10 图表8:“产业链Agent”运行流程图11 图表9:多源知识库融合流程12 图表10:知识库检索时间加权12 图表11:“华为产业链”图谱结果13 图表12:“低空经济”图谱结果14 图表13:“人形机器人”图谱结果14 图表14:“智能驾驶”图谱结果15 图表15:“华为产业链”概念股结果15 图表16:“AI手机”概念净值对比17 图表17:“人形机器人”概念净值对比17 图表18:“合成生物学”概念净值对比17 图表19:“低空经济”概念净值对比17 图表20:各概念启动时间点18 图表21:“AI手机”概念行情18 图表22:“人形机器人”概念行情18 图表23:“合成生物学”概念行情18 图表24:“低空经济”概念行情18 图表25:“AI手机”动量Top10组合累计收益19 图表26:“人形机器人”动量Top10组合累计收益19 图表27:“合成生物学”动量Top10组合累计收益19 图表28:“低空经济”动量Top10组合累计收益19 图表29:“AI手机”非流动性Top10组合累计收益20 图表30:“人形机器人”非流动性Top10组合累计收益20 图表31:“合成生物学”非流动性Top10组合累计收益20 图表32:“低空经济”非流动性Top10组合累计收益20 图表33:“AI手机”领涨因子Top5组合累计收益20 图表34:“人形机器人”领涨因子Top5组合累计收益20 图表35:“合成生物学”领涨因子Top5组合累计收益21 图表36:“低空经济”领涨因子Top5组合累计收益21 图表37:领涨组合构造方法21 图表38:“AI手机”领涨组合累计收益展示21 图表39:“人形机器人”领涨组合累计收益展示22 图表40:“合成生物学”领涨组合累计收益展示22 图表41:“低空经济”领涨组合累计收益展示22 图表42:各概念领涨组合持仓与收益表现23 一、RAG:What,Why,How? 1.1为什么需要RAG? 目前大模型展现出很强的生成能力,基本能够满足大部分日常问答,但在进行特定领域的问答时依旧容易出现脱离实际的不正确回答,我们称之为“幻觉”(Hallucination)现象。这一现象在某些对准确性要求较高的应用领域是令人难以接受的。“幻觉”的产生原因之一在于大模型的预训练数据中并不包含相关知识文本,或大模型对其中概念出现了混淆,在没有得到补充信息指引的情况下只能“强行”回答,也因此容易出错。对此,一个很朴素的想法是:如果将需要的知识告诉大模型,能否提升其表现? RAG(RetrievalAugmentedGeneration,检索增强生成)便基于这一想法诞生了。简单来说,RAG是一种优化大语言模型(LLM)生成质量的技术,在知识库中检索与用户输入高相关的信息,输入文本进行补充,并提升模型回答的质量。RAG能在应用端带来效果的快速提升,相比于微调等方式,它便于快速部署、无需大量的时间与算力资源投入,是一种更经济高效的改进方法。 图表1:RAG通用架构 来源:《Retrieval-AugmentedGenerationforAI-GeneratedContent:ASurvey》,国金证券研究所 具体来说,RAG适用于以下应用场景: 垂直领域知识增强。大模型预训练所掌握的更偏向于常识或通识类知识,对专业领域譬如医学、法律或化工等领域的知识掌握程度不高,更可能出现幻觉现象。RAG可以通过检索外部权威知识库来获取专业知识,提升回答的权威性,减少幻觉现象的发生。 最新知识及时更新。像金融、传媒等领域对信息的及时性有很高要求,但持续更新模型参数耗时长、投入成本大。RAG无需重新训练模型,能够经济高效地保持输出的时效性和准确性。 防止术语混淆,指引回答方向。同一个词汇在不同领域中可能具有不同的含义,而大模型在缺少指引时很可能会出现不同领域信息的混淆。RAG通过在我们指定的知识中做检索,能有效防止模型混淆,得到我们预期方向的回答。 拓展上下文长度。大模型对输入长度有限制,外部知识库信息无法全部输入。RAG技术帮助我们从中提取关键文段,相当于提升了输入文本的信息量,从而提高模型响应的质量。 更安全地利用自有知识库。若客户较为重视数据的隐私性,不想将自己的知识库上传到大模型云端进行微调,但同时也希望利用大模型的归纳能力对自己的知识库进行分析,RAG同样是较好的解决方案。 RAG技术能够满足使用者的各类需求,且能有效提升大模型的生成表现使其更贴合实际应用领域,是目前大语言模型复杂应用落地的最优解。 1.2为什么必须要RAG?RAGvs长上下文 当前大模型发展的一大趋势就是超长的上下文窗口。从GPT-4的128ktoken长度,到Claude2的200k,再到Gemini1.5Pro的1Mtoken,大模型在上下文长度方面的能力正以惊人的速度提升。当前微软最新提出的LongRoPE架构更是扩展至2048k上下文输入,并继续研究实现无限上下文窗口目标的技术。国内大模型如Kimi也实现了200万字长度的输入。 超长的上下文长度已足够把一本长篇小说的知识量同时输入大模型对话窗口供其分析,为什么还需要RAG呢?一个关键点在于,大模型的回答存在近期偏差(RecencyBias),即更偏向于关注最新输入的文字,且这个现象随着输入长度增加而愈发明显。 我们可以通过“大海捞针”(NeedleInAHaystack,NIAH)实验一窥究竟。NIAH是将目标信息藏在一段与其毫无关联的长文本中,并观察大模型能否从中找出该目标信息。实验控制变量包括:目标信息放置在长文本中的深度,从文本开头到文本结尾对应0%至100%;长文本的上下文长度,也即一次性输入的Token总量。 以下是对GPT-4和Claude-2.1进行NIAH测试的结果。可以看出,GPT-4模型的测试表现在64k上下文长度之后开始减弱,在100k之后下降更为明显。有趣的是在文本较长时,若“针”被藏在靠近文本开头的位置,GPT-4非常容易忽略它;反而是放在文本后半段处,模型依旧能保持稳定地找到“针”的位置。 图表2:GPT-4128k“大海捞针”测试结果 来源:月之暗面,国金证券研究所 Claude-2.1模型整体测试效果更弱,但也呈现出相同的分布,即搜寻的准确率随着文本长度上升而下降,且对文本靠前部分的识别能力下降更快。 图表3:Claude-2.1200k“大海捞针”测试结果 来源:月之暗面,国金证券研究所 中文语料方面的能力,也有SuperCLUE等机构给出了标准化的测评集与基准。SuperCLUE-200K(SC-200K)是一个大海捞针的中文升级版测试。以下为各个表现较好的大模型的测试结果,从中也能大致看出随着输入token长度的上升,模型准确度得分都会有一定下降。 图表4:各个大模型在中文版大海捞针SC-200K上的表现 来源:CLUE中文语言理解测评基准,国金证券研究所 超长token输入除了无法被模型有效识别利用之外,还会导致每次较高的推理费用,这同样是应用端需要控制的。 RAG则可以显著“降本增效”。RAG对输入的文本进行有效筛选,通过降低输入token长度来控制成本,同时保证模型能够有效利用信息。可以说,若用户希望实现大模型在特定垂域的应用增强,RAG是目前最可行且经济高效的技术路径。 1.3RAG的架构流程与优化路径 实际上,RAG也分为多种不同的架构,差别主要在于检索与生成的结合方式有所不同: 基于查询的RAG(Query-basedRAG,提示增强)是比较易于实现且主流的方法,会先将检索结果与原始查询进行结合,再输入大模型生成; 基于隐式表示的RAG(LatentRepresentation-basedRAG)则是将检索结果以编码形式放入生成模型中,在处理多模态数据方面有较大潜力; 基于对数似然的RAG(Logit-basedRAG)则是在大模型的解码过程中通过对数融合检索信息,从概率分布的层面改变生