要点总结 #
研究背景与问题:本文探讨了是否可以使用大型语言模型(LLM)如GPT-3.5-Turbo来进行归纳主题分析(TA)。主题分析是社会科学中常用的定性研究方法,依赖于人类分析师的解释能力。LLM作为生成式人工智能,虽然在语言处理上表现出色,但其基于结构和概率的语言处理方式与人类的理解方式不同。本文通过实验,试图验证LLM是否能够在不依赖预定义框架的情况下,从数据中归纳出主题。
方法论与贡献:本文使用了两组公开的半结构化访谈数据集,分别涉及游戏玩家和大学教授。通过将LLM的分析结果与之前的研究结果进行比较,发现LLM能够推断出大部分主要主题,表明使用LLM进行归纳主题分析是可行的,并具有一定的有效性。本文还提出了在定性分析中使用LLM的一些建议,强调了人类与AI协作的重要性。
关键要点 #
论文重要性 #
这项研究的重要性在于,它为社会科学领域提供了一种新的工具,能够辅助甚至部分替代传统的定性分析方法。随着LLM技术的快速发展,如何将其有效应用于定性研究成为一个重要课题。本文的实验结果表明,LLM在归纳主题分析中具有一定的有效性,尤其是在处理大规模数据时,能够显著提高分析效率。未来,随着技术的进步,LLM在定性分析中的应用将更加广泛,可能推动社会科学研究方法的革新。同时,本文也提出了在使用LLM时需要注意的伦理和方法论问题,为未来的研究提供了方向。
图表分析 #
ChatGPT 示例 #
🔼 该图展示了一个使用 ChatGPT 的示例。图中清晰地展示了用户输入提示(Prompt)后,模型如何生成响应(Response)。具体来说,用户在左上角输入了 “write me the names of the 3 most important Italian poets” (写出三位最重要的意大利诗人的名字)。之后,ChatGPT 在下方给出了一个结构化的答案,列出了三位诗人:Dante Alighieri(但丁·阿利吉耶里),Francesco Petrarch (Petrarca)(弗朗切斯科·彼特拉克),和 Giovanni Boccaccio(乔万尼·薄伽丘)。这个例子说明了 ChatGPT 可以理解自然语言的指令,并根据指令生成结构化、有意义的文本。图中的“Prompt”和“Response”标签清楚地表明了用户输入和模型输出之间的区别。这个简单的交互界面演示了 LLM 的基本工作模式,用户输入指令,模型生成相应的文本输出。这种能力使得 LLM 能够应用于多种任务,包括文本生成、信息检索和对话生成等。该图简洁地传达了 LLM 的工作原理,并提供了 LLM 如何应用于实际问题的一个典型例子。这个例子也强调了模型在理解用户请求和以清晰简洁的方式提供答案的能力。图中展示的用户界面元素,如提示输入框和响应输出区域,为用户理解 LLM 的交互方式提供了清晰的视觉参考。
更多图表分析
LLM工作流程示意图 #
🔼 该图展示了一个大型语言模型(LLM)处理任务的简化流程。整体流程分为三个主要部分:输入提示(Input Prompt)、预训练的LLM执行任务(Pre-trained LLM perform the Task)以及输出(Output)。在输入提示阶段,用户提供一个明确的任务指令,例如“写出三位最重要的意大利诗人的名字”。这个任务指令以自然语言的形式输入,是LLM接收的初始信息。接着,预训练的LLM接收到这个任务指令后,会根据其内部的算法和预训练知识执行这个任务。LLM的核心功能是对接收到的信息进行处理,并生成相应的输出。最后,在输出阶段,LLM会提供基于任务指令的响应结果。在此示例中,LLM输出“Alighieri, Petrarca, Boccaccio”,这是对任务指令的回应,列出了三位意大利诗人的名字。该图清晰地呈现了LLM从接收任务到生成结果的基本工作流程,突出了LLM处理自然语言并执行任务的能力。这个过程强调了LLM在无需进一步训练的情况下,直接根据接收到的指令生成回应,这体现了其强大的文本生成能力,并为后续的讨论,例如如何使用LLM做定性分析,奠定了基础。图中每个部分的文字描述都使用了清晰的标签,使得读者能够轻松理解整个流程。该图的目的在于解释LLM如何将用户输入的文本指令转换为文本输出,这对于理解LLM在定性分析中的应用至关重要。

Python脚本示例 #
🔼 该图展示了一段使用Python脚本与OpenAI的GPT-3.5-turbo模型进行交互的代码示例,它主要用于说明如何通过API发送提示(prompt)并接收模型的响应(response)。代码片段首先导入了OpenAI库,并设置了API密钥。核心部分是一个名为
get_completion
的函数,该函数接受一个提示作为输入,调用GPT-3.5-turbo模型,并将模型的响应返回。温度参数设置为0,表示模型输出的随机性较低,每次运行相同的提示应产生相同的响应。接下来,定义了一个提示,要求模型列出三位最重要的意大利诗人,并将该提示传递给get_completion
函数。最后,脚本打印出模型返回的响应,即三位意大利诗人的名字:但丁·阿利吉耶里、弗朗西斯科·彼特拉克和乔万尼·薄伽丘。这段代码清晰地演示了如何通过Python脚本与OpenAI的API进行交互,发送文本提示并接收模型的文本响应。整个过程简洁明了,是理解如何使用API进行文本生成任务的良好示例。此图展示了LLM API调用过程的基本要素:导入库,设置API密钥,定义函数以调用LLM,构建提示,调用模型,接收并展示响应。此外,图中标注了“Function for using the LLM with the prompt”,“Prompt”和“Response”等关键步骤,有助于读者理解代码的每个部分。温度参数的注释也解释了如何通过改变这一参数来控制模型输出的多样性和随机性。

LLM 分析流程图 #
🔼 该图表展示了使用大型语言模型(LLM)进行文本数据分析的基本流程。该流程图清晰地描绘了三个主要阶段:输入、处理和输出。首先,在“输入”阶段,用户需要向 LLM 提供一个明确的“输入提示”,这个提示是用户希望 LLM 执行的任务指令,例如文本分类、主题提取或情感分析。同时,用户还需要提供待分析的“文本数据”。随后,这些文本数据和任务提示一起进入“预训练 LLM”的处理阶段。在这个阶段,LLM 会根据其训练好的模型对输入数据进行处理,执行用户在提示中指定的任务。最后,在“输出”阶段,LLM 会产生两种类型的输出结果:一是 LLM 对提示的响应,二是 LLM 对文本数据执行指定操作后产生的结果。这个流程图简化了 LLM 在文本分析中的作用,强调了 LLM 作为一种工具,能够根据用户指令对文本数据进行各种处理。值得注意的是,预训练的 LLM 是一个黑箱,用户无法直接了解其内部运作机制,但通过精心设计的提示,可以有效地利用 LLM 进行文本数据分析。该图对于理解 LLM 如何在实际研究中使用提供了清晰的框架,特别是对于那些希望采用 LLM 进行文本数据分析的科研人员或从业者来说,是不可或缺的参考。

LLM代码提取主题 #
🔼 该图展示了一段用于从文本数据中提取主题的 Python 代码。这段代码的核心是一个循环,它遍历一个名为
df
的数据结构(很可能是一个 pandas DataFrame),并且每次迭代都会处理Interview_chunk
列中的一个文本片段。对于每个文本片段,代码构建了一个提示词(prompt),指示大型语言模型(LLM)识别最多三个相关主题,为每个主题提供一个不超过三个词的名称,一个四行的描述,以及一个来自受访者的引述,所有这些都以 JSON 格式返回。代码使用了一个名为get_completion
的函数,这个函数很可能是用来调用 OpenAI 的 API 或其他 LLM 服务。该函数接受构建好的提示词作为输入,并将LLM的响应存储在response
变量中。然后,这段代码打印出LLM的响应。这段代码体现了如何结合编程和自然语言处理技术,实现对文本数据的自动化分析。主要步骤包括:1)准备数据:从DataFrame中读取文本;2)构建提示词:指导LLM分析文本;3)调用LLM:请求LLM进行文本分析;4)格式化输出:将LLM的分析结果整理成JSON格式。这段代码在文本分析中具有很强的实用性,特别是对于需要快速处理大量文本数据的研究项目。代码中的注释和变量名称都清晰地表达了其功能,这使得代码易于理解和维护。从本质上来说,这段代码通过编程方式将LLM集成到数据处理流程中,从而使研究人员能够高效地从文本数据中提取有意义的信息。这个过程不仅提高了效率,还为定性研究带来了一种新的数据分析工具,使得研究人员能够更快速地从大量文本数据中获得洞见。

代码示例表 #
🔼 该图表是一个表格,展示了用于文本分析的代码示例,包括索引、代码、描述和引用的内容。索引列为每条记录提供了唯一的标识符,从0开始递增。代码列则列出了具体的代码名称,例如“Importance of Data An”、“Providing Data Sets”、“Teaching Critical Thinki”和“Misleading Graphs”,这些代码可能用于标记和分类文本数据中的不同主题或概念。描述列提供了对每个代码含义的简要说明,例如“The respondent considers it one of the most important classes I teach because regardless of what career they go”,这解释了“Importance of Data An”代码的背景。引用列提供了支持该代码的原始文本示例,展示了这些代码是如何从原始数据中提取的,例如“And I asked the students, you know, &€œWhat does this mean? Do you know what this means?”这句话支持了“Teaching Critical Thinki”代码。此表格结构清晰,每列标题明确,方便用户快速理解表格内容。代码,描述和引用之间的关联也很明确,有助于理解代码的应用语境。该表格对于理解文本分析过程中如何应用代码进行数据标注和提取有很大帮助,特别是在理解定性数据分析的流程中。表格中展示的代码和解释,反映了研究者在数据分析中的思路,例如:重视数据,提供数据集,教授批判性思维以及警惕误导性图表等。该表在研究方法上支持了使用代码分析文本数据,并为读者提供了具体的示例。总的来说,此表有效地概括了如何对文本数据进行编码和解释,是文章中进行方法论展示的重要组成部分。

LLM 代码去重提示 #
🔼 该图展示了论文中用于减少大型语言模型 (LLM) 分析中重复代码的提示。此提示旨在使用户能够从主题列表中识别唯一的项,这是执行主题分析的关键步骤。提示首先指示 LLM 确定给定列表中的唯一项,然后要求以 JSON 格式组织响应,将项分组在 ‘items’ 下,并将项本身及其索引分别存储在 ’topic’ 和 ‘indices’ 键下。\n\n此提示在研究的第二阶段使用,其中 LLM 初始生成了 161 个来自“游戏”数据集的代码和 101 个来自“教学”数据集的代码,这些代码在数据集的分析中很可能会重复。作者通过使用此提示来减少代码,将“游戏”数据集中的代码从 161 个减少到 89 个,并将“教学”数据集中的代码从 101 个减少到 63 个。这种减少对于保持代码可管理,并在后续阶段避免超出 LLM 的令牌限制至关重要。通过使用此提示,作者确保了分析更简洁,并降低了因重复主题而可能出现偏差的风险,同时能够维护 LLM 提取的关键主题。
需要注意的是,最初的提示是使用 “主题” 而不是 “代码” 的词,因为其发现这在提示中效果更好。尽管如此,为清晰起见,他们识别的是初始 “代码”。在早期尝试时,系统会产生幻觉,并根据现有代码名称生成新的代码名称。作者通过在提示中传递代码名称以及数据帧索引,有效地减轻了此问题,确保了更好的输出质量和可重复性。此提示是使用 LLM 进行定性数据分析中的有效提示工程的示例,其突出显示了微调输入以实现一致可靠结果的重要性。

深度解读 #
LLM与定性分析 #
本文探讨了使用大型语言模型(LLM)进行归纳性主题分析(TA)的可行性。LLM如GPT-3.5-Turbo在自然语言处理方面表现出色,但其基于统计和结构的方式与人类基于语义的理解存在本质差异。通过实验,作者发现LLM能够从半结构化访谈数据中推断出与人类分析相似的主题,表明LLM在定性分析中具有一定的有效性。然而,LLM的局限性在于其无法真正理解文本的深层含义,且在处理复杂主题时可能出现“幻觉”现象。尽管如此,LLM在自动化编码和主题生成方面的潜力为社会科学研究提供了新的工具,尤其是在处理大规模数据集时。未来的研究应进一步探讨如何优化LLM在定性分析中的应用,尤其是在人类与AI协作的框架下,确保分析的准确性和可靠性。
主题分析六阶段 #
本文基于Braun和Clarke(2006)提出的主题分析六阶段模型,探讨了LLM在每一阶段的应用潜力。实验表明,LLM能够在编码生成、主题搜索和主题定义等阶段表现出色,但在数据熟悉和报告撰写阶段则存在明显局限性。特别是在数据熟悉阶段,LLM由于缺乏记忆能力,无法像人类研究者那样通过反复阅读数据形成深刻的理解。此外,LLM在主题定义阶段的表现依赖于提示词的设计,提示词的微小变化可能导致截然不同的输出。尽管如此,LLM在自动化编码和主题生成方面的能力为研究者提供了新的可能性,尤其是在处理大规模数据集时,LLM可以显著减少人工编码的工作量。未来的研究应进一步探讨如何优化LLM在主题分析中的应用,尤其是在人类与AI协作的框架下,确保分析的准确性和可靠性。
提示工程与温度 #
本文强调了提示工程和温度参数在LLM定性分析中的重要性。提示词的设计直接影响LLM的输出质量,而温度参数则控制模型的创造性和随机性。实验表明,较高的温度值(如T=1)可以增加模型的创造性,但也可能导致输出的不一致性。相比之下,较低的温度值(如T=0.5)则能产生更为一致的结果。提示工程的关键在于如何设计清晰且有效的提示词,以引导LLM生成符合研究目标的输出。此外,温度参数的调整可以帮助研究者验证主题的稳定性,特别是在主题审查阶段,通过多次运行模型并比较输出,可以识别出哪些主题是稳定的,哪些可能是随机生成的。未来的研究应进一步探讨如何优化提示词设计和温度参数设置,以提高LLM在定性分析中的表现。
人类与AI协作 #
本文提出了人类与AI协作的框架,认为LLM不应完全取代人类研究者,而是作为辅助工具。LLM在自动化编码和主题生成方面的能力可以显著减少人工工作量,但其输出的准确性和可靠性仍需人类研究者进行验证。特别是在主题审查和定义阶段,人类研究者的主观判断仍然是不可或缺的。实验表明,LLM能够识别出一些人类研究者可能忽略的主题,但其输出的某些主题可能与研究目标不符,甚至出现“幻觉”现象。因此,未来的研究应进一步探讨如何建立有效的人类与AI协作机制,确保LLM的输出能够为人类研究者提供有价值的参考,而不是完全依赖其自动化分析。此外,研究者还应关注LLM在定性分析中的伦理问题,特别是在处理敏感数据时,确保数据的匿名性和隐私保护。
未来研究方向 #
本文指出了未来研究的几个重要方向,包括提示工程的标准化、温度参数的优化以及人类与AI协作机制的建立。提示工程的标准化可以帮助研究者设计出更为有效的提示词,从而提高LLM在定性分析中的表现。温度参数的优化则可以帮助研究者验证主题的稳定性,特别是在主题审查阶段,通过多次运行模型并比较输出,可以识别出哪些主题是稳定的,哪些可能是随机生成的。此外,人类与AI协作机制的建立是未来研究的重点,LLM不应完全取代人类研究者,而是作为辅助工具,帮助研究者处理大规模数据集并生成初步分析结果。未来的研究还应关注LLM在定性分析中的伦理问题,特别是在处理敏感数据时,确保数据的匿名性和隐私保护。通过这些研究方向的探索,LLM在定性分析中的应用将更加成熟和可靠。
完整论文 #






















