大型语言模型在探险小说中的应用
关键词:大型语言模型、计算文学研究、探险小说、数字人文
摘要
我们如何在数字人文领域使用大型语言模型(LLMs)?这篇博文旨在探讨在文学语境中使用生成式大型语言模型的方法。我们试图识别探险小说中构成刻板片段的特征。为此,我们利用 GPT-3.5 作为大规模标注工具。对模型性能的人工评估显示,自动标注与人工标注的一致性超过六成,表明模型足以胜任该任务,尽管在捕捉完全抽象和复杂的概念方面仍有不足。我们利用这些标注来训练一个能够以 86% 准确率识别 GPT 标注的模型。在将该模型推广到大型文学语料库后,我们讨论了其结果及其潜在影响。
引言
“冒险是小说的精髓”(Tadié,2013)。
冒险是向前的一跃,是身心投入不确定性的过程,是那种令人无法抗拒的冲动,让我们不禁问道:“这扇门后是什么?” 它是一种将自己置于危险之中,与现实对抗的状态,这不一定是令人愉快的。事实上,冒险的一跃引入了一种状态的扰动,一种偶然的爆发,即使是微量的,也可能导致死亡。这或许与扬凯莱维奇的思想不谋而合:“人渴望去做自己最恐惧的事情”(Jankélévitch,1963)。我们人类的状况使我们抵制对冒险的渴望,被困在理智与欲望之间。这种克尔凯郭尔式的焦虑[^1]束缚着我们,让我们害怕改变舒适的日常生活,同时又疯狂地渴望最终推开那扇门,发现隐藏在它背后的秘密。
回到引言中的那句话,小说是满足这种对未知渴望、对远方向往的众多方式之一。阅读小说是一种体验这种可能死亡的方式,仿佛它能以宣泄的方式化解这种焦虑,使其变得可以忍受。探险小说这一子类型无疑是冒险定义的最好体现。在法国语境中,探险小说在 Letourneux 的博士论文中得到了精确的定义(Letourneux, 2010)。他定义了一个特定时期(1870-1930年),使其能够识别该类型的一致性:“异国情调的重要性[...], 以及暴力行为的核心地位,使英雄面临死亡或至少身体上的危险”。探险小说不仅仅是包含冒险的小说,因为它没有冒险就无法存在。
这引出了激发本文研究的问题和回答这些问题的方法。整个小说创作与探险小说之间有什么联系?冒险在这些探险小说中是如何具体化的?我们能否在一些乍看之下似乎不适合冒险的小说中,发现适合冒险的片段?我们希望深入文本,理解究竟是哪些场景在区分哪些属于冒险、哪些不属于冒险中扮演着重要角色。相关的问题是,是否有可能在探险小说中找到托马切夫斯基所说的该类型的“主导元素”(Tomachevski,1966),即该类型的所有特定特征。
我们这里采用的是计算文学研究领域的方法,这个项目使我们能够测试一种在我们领域中占据越来越大空间的技术的优点和局限性:大型语言模型(LLMs)。
方法
我们从随机分割的文本开始,确保每个片段都以完整的句子开头。对于片段长度,我们选择了 3000 字(约 9 页)的任意值。这样做的目的是为了高效标注而选择相对较短的片段,但又不能太短,因为主要目标之一是比较原始文本嵌入与 BookNLP-fr (Lattice, 2021) 提取数据(一个能够提取有关人物特征或时空信息的语义信息的自然语言处理管道)生成的嵌入。
我们从一个探险小说语料库中随机抽取了 1000 个片段,并使用 GPT-3.5 turbo 对其进行自动标注。对于每个文本片段,API 调用都附带了一个指令,提供了我们想要检测的广义定义,具体来说就是探险场景。
instruction = "Give me as an output only one word, if this text is typical of the adventure novels genre; write ADVENTURE; elif unsure; write NON_ADVENTURE. Prefer NON_ADVENTURE when unsure. HELP: adventure novels are characterized by the importance of change of scenery (historical/geographical/ fantastical or social) and of violent action putting the hero in mortal danger or physical peril. Typical adventure scene: someone (described as brave/heroic) doing something dangerous in a heroic manner in a wild setting."
对 100 份 GPT 标注的检查显示,人机一致性(kappa 值)为 0.73。这表明 GPT-3.5 尚不能完全处理“冒险”等抽象概念,并且标注了太多元素(只要出现任何动作或描述的暗示)。尽管它仍有不足,但结果仍然有趣,我们决定训练一个模型来识别 GPT 标注。
结果
下一步是将这些标注推广到大型小说语料库中。为了节省不可扩展的博士奖学金(这是一种轻描淡写),并且不再进一步丰富 OpenAI,我们决定在这些合成数据上训练一个模型,并让它预测语料库的其余部分。为此,我们需要一种文本片段的表示方法,嵌入方法占据了主导地位。我们比较了 OpenAI 的 ADA 编码器与我们领域广泛使用的方法——段落向量或 Doc2vec (Quoc, 2014) 的性能。在合成数据上训练的 sklearn SVM 模型 (Pedregosa, 2011) 实现了高达 86% 的效率。对于剩余的 14%,很难确定这些错误是来自 GPT 的标注,还是来自嵌入模型,亦或是来自 SVM。该方法需要进一步加强,但性能似乎足以推广到整个语料库。
所有标记 | BookNLP 标记 | 随机标记 | |
---|---|---|---|
ADA 嵌入 | 0.86 | 0.77 | 0.72 |
DBoW | 0.78 | 0.67 | 0.63 |
表 1:基准评估
关于 BookNLP-fr 特征的结果:模型在这些元素上的表现出人意料地好!我们损失了大约 10 个性能点,但这仍然是一个惊喜,因为 BookNLP-fr 从每个 3000 字的片段中只检索大约 100 到 150 个标记,并且丢失了所有词序信息。因此,这些词(人物的动词和形容词、时空信息)中包含的信息对于该任务来说足够相关,这对于 BookNLP-fr 的质量和我们人类的确定性来说都是令人放心的:探险场景部分是由其时空陌生性来表征的。
多尺度分析
小说层面
《海底两万里》
我们最初评估方法有效性的想法是回到小说的层面,特别是法语世界最著名的探险小说:《海底两万里》。
几乎所有小说的片段都被我们的模型认为是探险类型的刻板片段,几乎所有分数都在 0.9 到 1 之间。这是一个片段的例子,其中包含片段 100 的几句话
在这段旅程中,我们连续几天在海面航行。大海似乎被遗弃了。几乎没有几艘帆船,满载着前往好望角的印度货物。有一天,我们被一艘捕鲸船的船只追赶,他们无疑把我们误认为是一些非常有价值的巨鲸。但尼莫船长不想浪费这些勇敢的人的时间和精力,他通过潜入水下结束了追逐。
这段摘录展现了叙述者乘坐“鹦鹉螺号”平静而似乎单调的旅程。连续几天在海面航行暗示着一种安抚人心的日常,但也伴随着一种孤独感,因为大海被描述为“似乎被遗弃”。船只的稀少,主要驶往好望角,进一步强化了这种孤立感。然而,当“鹦鹉螺号”被捕鲸船追逐时,冒险元素出现了。这为叙事增添了悬念和危险。捕鲸船的误判,将“鹦鹉螺号”错认为极具价值的鲸鱼,突显了这艘潜水艇的神秘和独特性。
《情感教育》
我们随后继续我们的验证工作,选取了一部刻意不具有代表性的探险小说:古斯塔夫·福楼拜的《情感教育》。下图显示了一个相当稳定但与儒勒·凡尔纳的小说相反的趋势。事实上,大多数片段被判定为探险场景的概率在 0% 到 0.2% 之间,这与我们对福楼拜小说所知的情况非常一致。然而,少数异常情况引起了我们的注意,特别是片段 121,它被判定为探险场景的概率几乎达到 80%。以下是摘录:
弗雷德里克正走在路上,突然一名哨兵与他刺刀相向。四个人抓住他,喊道:“他是他们中的一员!小心!搜他!强盗!流氓!” 他的惊讶如此之深,以至于他任由自己被带到关卡哨所,就在戈布兰大道和医院大道与戈德弗鲁瓦街和穆费塔尔街交汇的环岛处。四条道路的尽头形成了四座巨大的鹅卵石路障;火炬在这里那里闪烁;尽管尘土飞扬,他还是辨认出几名步兵和国民卫队,他们都面目漆黑,衣衫不整,面容憔悴。他们刚刚占领了这片地方,射杀了数人;他们的怒气仍未消散。弗雷德里克说他从枫丹白露来,是为了帮助一位住在贝勒丰街的受伤同志;起初,没有人相信他;他们检查了他的手,甚至闻了闻他的耳朵,以确保他身上没有火药味。
这段摘录明显包含冒险元素;福楼拜在此提及了 1848 年巴黎革命的事件,弗雷德里克在叙事中对此兴趣不大。然而,在这段落中,弗雷德里克突然遭遇冲突,并被哨兵指控。这里充满了紧迫感和紧张气氛,特别是士兵们表达了怀疑并使用了强烈的语言(“强盗!流氓!”)。路障、火炬和冲突后果的提及进一步营造了类似冒险的氛围。因此,赋予我们这段落的概率在这种情况下得到了很好的证实。
子类型层面
在接下来的段落中,我们将展示 10,000 个文本摘录的结果,这些摘录与我们的基础语料库(“章节”语料库,约 180,000 个 3000 字的片段)相比具有代表性。
从子类型尺度来看:回想塔迪耶的那句话:“冒险是小说的精髓”。冒险片段并不仅限于探险小说这一特定的小说类型。我们方法的另一种验证方式是观察其他小说子类型中是否存在类似冒险的片段,即那些包含显著位移或使小说主人公面临危险的场景。我们使用“章节”语料库进行了这项测试,该语料库收集了近 3000 部法国小说(Leblond,2022)。覆盖的时间跨度是两个世纪的小说创作,从 19 世纪到 20 世纪。该语料库的一个显著优势是,其中近三分之二的文本都标注了子类型标签。此标注基于法国国家图书馆的分类。我们选择将分析重点放在语料库中十个最主要的子类型上:探险小说、浪漫小说、侦探小说、青少年文学、回忆录、奇幻小说、历史小说、旅行小说、科幻小说和情色小说。
在上一图中,有趣的是,探险小说并非包含最多刻板冒险片段的子类型。事实上,探险小说中大约有 50% 的冒险片段,而旅行小说和科幻小说分别拥有 60% 和 57%。这很有道理,考虑到我们在冒险定义中强调了位移的重要性。然而,我们仍然观察到,我们的定义可能没有从危及冒险英雄的角度充分限制,尽管我们的冒险定义旨在更广泛。尽管如此,这些结果还是相当令人满意的,历史小说和奇幻小说的分数很高,而自传体小说、情色小说和浪漫小说的分数相对较低。
语料库层面
在“章节”语料库的 1/18 规模上
下图展示了两个世纪文学中按年份聚合的探险片段比例。结果令人震惊:典型探险片段随时间减少,从 19 世纪初的近 30% 降至 21 世纪初的 15%。这些结果应谨慎看待,但趋势似乎意义重大,并可能由几个因素解释:
第一个因素是冒险子类型的时间分布。事实上,它是“章节”语料库中产量最高的子类型(超过 360 部文本),所有这些都介于 1840 年和 1880 年之间。
第二个论点围绕着冒险作品消费媒介的潜在转变。这可能并非人们对冒险的兴趣减弱,而是他们不再通过文学来满足这种需求。对于 20 世纪后期,电影的兴起以及人们消费冒险作品的媒介转变可以解释这种总体趋势。因此,人们可能会观察到冒险作品扩散到其他形式和不同平台,而不仅仅是文学形式。然而,人们对这种叙事方式仍保持一定兴趣,20 世纪下半叶的某种平稳期就证明了这一点,这可以用科幻或奇幻等子类型的出现和持续存在来解释。
局限性与未来工作
应该投入更多时间进行标注,以评估 GPT 在多大程度上遵循指令,并为这些合成数据提供更多可信度。我们尚未深入探讨的一个主要问题是 GPT 3.5 的记忆能力。我们检索到的合成标注是否仅仅因为我们向大型语言模型提供了可能包含在训练语料库中的经典文本而表现良好?对这方面进行更严格的审查对于未来的方法似乎很重要,因为一个研究团队通过一个可用于确定模型对一本书记忆深度的实际测试证明了这些问题的重要性(Chang, 2023)。实质上,他们要求模型填写缺失字符的名字。通过进行测试,Chang 及其同事发现 GPT-4 详细地回忆了许多书籍。此外,这与某些其他任务的准确性有关,例如估计出版日期的准确性。这些结果乍一看似乎并不重要,但如果标注来自知名度较低的书籍(即 19 世纪历史语料库中 >98% 的书籍)的段落时,性能下降,则可能会出现实际问题。
结论
总而言之,这项初步实验表明大型语言模型是计算人文研究者有趣的工具。我们已经证明,首先,使用这些大型语言模型可以对特定案例进行自动化标注,尽管存在一些局限性(我们必须保持任务简单,不要太抽象……)。其次,这些标注可以蒸馏或推广到大型文学语料库中。
随着开放模型的发展以及对专门任务和语料库进行微调模型的探索,该方法在未来几个月可能会进一步发展。
然而,尽管大型语言模型带来了令人兴奋的研究可能性,但开放性、可信度以及它们是否是人文学者不可或缺的组成部分等问题仍悬而未决。
额外资源
本文所用代码和数据可在 Github 此处获取。
此处讨论的想法之前已在巴黎的一次人工智能文学语料库分析研讨会上提出,研讨会链接。
备注
[^1]: “当我们观察孩子时,我们发现焦虑更明确地体现为对冒险、奇迹和神秘的追求”(克尔凯郭尔,1844)。
参考文献
Jean-Yves Tadié。《冒险小说》(Le roman d’aventures)。收录于《Collection Tel》第 396 期。Gallimard,2013 年。ISBN 978-2-07-013966-8。
Vladimir Jankélévitch。《冒险、无聊、严肃》(L’aventure, l’ennui, le sérieux)。《Champs - Essais》。Flammarion,2023 年。ISBN 978-2-08-043573-6。网址
Søren Kierkegaard. 《焦虑的概念:从遗传罪的教义问题出发,进行一次简单的心理学导向的思考》(The concept of anxiety: a simple psychologically oriented deliberation in view of the dogmatic problem of hereditary sin)。Liveright Publishing Corporation,Liveright 平装版,2015。ISBN 978-1-63149-004-0。OCLC: 880566265。
Matthieu Letourneux. 《冒险小说:1870-1930》,2010 年。ISBN: 9782842875084 系列: Médiatextes。
Boris Tomachevski。主题论。载于 Cvetan Todorov 主编,《文学理论:俄国形式主义者文本》(Théorie de la littérature: textes des formalistes russes.),Roman Jakobson 序言,巴黎,Seuil,1966 年,第 263-307 页。修订和校正版,2001 年。ISBN 978-2-02-049749-7。
F. Mélanie, J. Barré, O. Seminck, C. Plancq, M. Naguib, M. Pastor, and T. Poibeau. 《BookNLP-fr》,2022 年。网址
Quoc V. Le 和 Tomás Mikolov。《句子和文档的分布式表示》,2014 年。
F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, J. Vanderplas, A. Passos, D. Cournapeau, M. Brucher, M. Perrot, 和 E. Duchesnay. Scikit-learn: Python 中的机器学习。Journal of Machine Learning Research,12:2825–2830,2011 年。
Aude Leblond。《章节语料库》(Corpus chapitres),2022 年 12 月。网址
Kent Chang、Mackenzie Cramer、Sandeep Soni 和 David Bamman。《说话吧,记忆:ChatGPT/GPT-4 已知书籍的考古学》(Speak, memory: An archaeology of books known to ChatGPT/GPT-4)。载于 Houda Bouamor、Juan Pino 和 Kalika Bali(编),《2023 年自然语言处理经验方法会议论文集》(Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing),第 7312-7327 页,新加坡,2023 年 12 月。计算语言学协会。网址