ChatGPT是一个很好的人格识别者吗?初步调研
摘要
近年来,个性被视为一种有价值的个人因素,已被纳入情感分析和产品推荐等众多任务中。这引起了对基于文本的个性识别任务的广泛关注,旨在根据给定文本识别个人的个性。考虑到ChatGPT最近在各种自然语言处理任务中表现出显著能力,我们对ChatGPT在基于文本的个性识别任务中的表现进行了初步评估,以生成有效的个性数据。具体来说,我们采用了多种提示策略来探索ChatGPT从给定文本中识别个性的能力,尤其是我们设计的层次化提示策略,用于指导ChatGPT在指定层次分析给定文本。在两个具有代表性的真实世界数据集上的实验结果表明,使用零样本链式思维提示的ChatGPT展示了令人印象深刻的个性识别能力,并能够通过基于文本的逻辑推理提供自然语言解释。此外,通过使用层次化提示策略优化零样本链式思维提示,ChatGPT与对应的最先进模型之间的性能差距进一步缩小。然而,我们观察到ChatGPT对某些敏感人口属性(如性别和年龄)表现出不公平性。此外,我们发现激发ChatGPT的个性识别能力有助于提高其在情感分类和压力预测等与个性相关的下游任务中的表现。
1 介绍
作为基本的个体特征之一,个性描述了个体在行为、思维和情感方面相对稳定的模式。在近年来,越来越多的研究人员认为个性是一种有价值的因素,并将其纳入到各种任务中(例如,机器翻译、产品推荐、情感分析和心理健康分析),从而显著提高了任务的性能表现。为了自动获取大规模的用户个性数据,设计了基于文本的个性识别任务,以根据用户生成的文本推断用户的个性。随着预训练大型语言模型(LLMs)的快速发展(例如,BERT、RoBERTa、GPT-3、PaLM 和 LLaMA),越来越多基于LLMs的方法被提出用于基于文本的个性检测任务,并取得了显著的性能提升。
最近,ChatGPT 以其令人印象深刻的一般语言处理能力引起了大量关注,激发了对其能力边界的探索。几项研究对ChatGPT在各种常见任务上的表现进行了初步评估,例如机器翻译、产品推荐、情感分析和心理健康分析。因此,在本研究中,我们有兴趣评估ChatGPT在基于文本的个性识别任务中的表现,以生成有效的个性数据。我们还希望了解,激发ChatGPT的个性识别能力是否有助于提高其在其他下游任务中的表现。具体来说,我们提出了以下研究问题(RQs):
RQ1:不同的提示策略如何影响ChatGPT识别个性的能力?
RQ2:当ChatGPT作为个性识别器处理各种敏感人口属性时,其表现有多不公平?
RQ3:ChatGPT推断出的个性是否有助于提高其在其他下游任务中的表现?
为了回答这些研究问题,我们在两个具有代表性的基于文本的个性识别数据集(即Essays和PAN)上进行实验,比较ChatGPT、传统神经网络(例如循环神经网络(RNN))、微调的RoBERTa和相应的最新(SOTA)模型的表现。具体来说,我们采用三种经典的提示策略来激发ChatGPT的个性识别能力,包括零样本提示、零样本连锁思维(CoT)提示和单样本提示。此外,考虑到研究人员通常在不同层次(例如,词汇层次、句子层次和文档层次)分析文本以获得有价值的信息,我们设计了零样本层次导向的CoT提示,以引导ChatGPT在指定层次上分析给定文本,从而更有针对性地理解文本,并更准确地识别个性。根据实验结果,我们的发现可以总结如下:
-
在三种经典提示策略中,零样本CoT提示能够更好地激发ChatGPT基于给定文本预测个性的能力,从而在两个数据集上表现最佳,尽管与SOTA模型相比仍存在一定的性能差距。此外,采用零样本CoT提示的ChatGPT可以通过基于文本的逻辑推理生成更自然的语言解释,从而增强预测结果的可解释性。此外,在零样本层次导向的CoT提示的帮助下,ChatGPT能够进行更有针对性的文本分析,使其能够完成更准确的个性预测。
-
ChatGPT在基于文本的个性识别任务中对某些敏感人口属性表现出不公平性。根据ChatGPT的分析,与男性组相比,女性组更可能具有较高水平的开放性、责任心和亲和性。此外,与年轻组相比,老年组更有可能具有较低的开放性。
-
ChatGPT推断出的个性可以提高其在情感分类任务和压力预测任务中的表现,这可能为其他与个性相关的任务(例如机器翻译和产品推荐)提供新的见解。
通过这些研究,我们可以进一步了解如何利用ChatGPT在个性识别和其他相关任务中的潜力,并改进其提示策略以获得更好的性能和公平性。
2 背景和相关工作
大五因素(BFF)模型和迈尔斯-布里格斯类型指标(MBTI)是两种最流行的人格评估模型[28]。具体来说,BFF模型基于五个特征来描述人格:开放性(O)、责任心©、外向性(E)、亲和性(A)和神经质(N) [29]。表1显示了个体在不同人格特征和水平下的倾向。相反,MBTI根据四个维度来描述人格,包括外向/内向、感知/直觉、思考/感觉、判断/感知[30]。与BFF模型相比,MBTI在学术界的[31,32]中仍然面临着争议。因此,本文采用BFF模型来描述个体的个性。
近年来,越来越多的研究人员将大五人格视为一个有价值的个人因素,并将其纳入他们的模型中,从而使各种任务[33,34,35,36]的表现显著提高。例如,Wu等人[34]采用了用户的大五人格来个性化推荐多样性,为用户的多样性需求。Ban等人[33]利用学习者的大五人格对个体差异进行建模,以更好地预测学习者的知识水平。这激发了研究人员对有效获取大五人格的兴趣。
传统上,识别一个人的大五人格通常是通过人格问卷(如NEO-FFI问卷[37]、BFI-44[38]、BFI-10[39]和BFMS[40])进行的。这些人格问卷通常由心理学专家精心设计,要求个体使用Likert量表来评估他们的行为,这既耗时又费力[41, 42]。为了在各种领域(如机器翻译[2, 3]、产品推荐[4, 5]、情感分析[6]和心理健康分析[7])大规模应用大五人格,研究人员尝试从各种用户生成内容(UGC)中隐式获取大五人格,包括文本[8, 9, 10, 16, 17]、手写[43, 44, 45]、语音[46, 47]、脑电图(EEG)[48, 49]等。由于心理学研究的大量证据表明用户生成文本与用户的大五人格之间存在相关性[50, 51],研究人员对基于文本的个性识别进行了广泛探索。然而,相关方法通常将基于文本的个性识别任务视为文本分类的一个特例。他们大多利用机器学习算法构建个性识别器,使用如语言询问与词汇计数(LIWC)[52, 53]和语言提示结构化编程(SPLICE)[54, 55]等文本特征。此外,随着深度学习的快速发展,越来越多的方法使用深度神经网络来解决基于文本的个性识别任务,因为深度神经网络可以自动从用户生成文本中提取高阶文本特征[56]。例如,Majumder等人[56]设计了一个使用Word2Vec嵌入[57]的深度卷积神经网络进行个性检测。Xue等人[58]提出了一个两级层次化神经网络,学习用户帖子深层语义表示来识别用户的大五人格。Lynn等人[59]利用消息级注意力学习用户帖子相对权重以评估用户的大五人格。Zhu等人[9]通过对比图变换网络学习帖子嵌入进行个性检测。Zhu等人[10]提出了一种词汇心理语言学知识引导的图神经网络,用个性词典丰富用户帖子语义。最近,LLMs在众多自然语言处理(NLP)任务中取得的显著性能提升[60, 61, 62]促使研究人员探索在基于文本的个性预测任务中利用LLMs[16, 17]。例如,Mehta等人[63]进行了广泛的BERT实验以找到个性检测的最佳配置。Ren等人[64]利用BERT生成句子级嵌入进行个性识别,同时使用情感词典在个性预测过程中考虑情感信息。
最近,由于ChatGPT具有令人难以置信的通用语言处理能力,ChatGPT的发布引起了越来越多的关注。因此,越来越多的研究人员试图探索ChatGPT的能力边界,并对其在各种任务中进行评估,包括机器翻译[21]、产品推荐[22]、情绪分析[20]、心理健康分析[23]等。因此,在本研究中,我们有兴趣通过不同的提示策略来探索ChatGPT的人格识别能力来获得有效的人格数据。
3 实验
3.1 数据集
在我们的实验中,我们采用了两个著名的公开数据集来进行基于文本的五大人格识别任务:
- (1)Essays[65]:这个意识流数据集由心理学学生写的2467篇论文组成,学生的大五人格水平(即低水平和高水平)是通过标准化的自我报告问卷获得的。
- (2) PAN:此数据集来自PAN2015数据科学竞赛,包含四种语言子数据集(即荷兰语、英语、意大利语和西班牙语)。在这项工作中,我们选择了英语子数据集,其中包含294名用户的推文及其大五人格评分。用户的大五人格评分是通过BFI-10问卷[39]获得的。需要注意的是,与[66]类似,对于每一个人格特质,我们采用相应的平均值将人格评分转换为两个等级(即低等级和高等级)。具体来说,低于相应平均值的人格评分被转换为低等级,而等于或高于相应平均值的人格评分则被转换为高等级。
与[10]类似,我们将Essays和PAN数据集随机分割为训练集、验证集和测试集,比例为8:1:1。两个数据集的统计数据如图1所示。
3.2 提示策略
我们采用三种经典的提示策略来探索ChatGPT的性格识别能力,包括零样本提示(zero-shot prompting)、零样本链式思考提示(zero-shot CoT prompting)和单样本提示(one-shot prompting)。单样本提示策略的使用是因为ChatGPT对输入长度有一定限制。考虑到Essays和PAN数据集中的文本通常较长(即Essays和PAN数据集的平均文本长度分别为749和1,405),我们在输入中只提供一个示例(即单样本提示),而不提供更多示例(如双样本提示)。
此外,受到现有NLP研究在不同层次(如词级、句子级和文档级)挖掘有价值文本信息的启发[24, 25, 26, 27],我们设计了层级导向提示策略,指导ChatGPT在指定层次分析文本。具体而言,我们将层级导向提示策略与零样本链式思考提示相结合,构建零样本层级导向链式思考提示。构建零样本层级导向链式思考提示的原因是,与零样本提示和单样本提示相比,零样本链式思考提示在两个数据集上的整体表现更好(见第3.6节)。因此,我们希望看到层级导向提示策略是否可以进一步增强零样本链式思考提示的效果。需要注意的是,这四种提示策略要求ChatGPT同时输出基于给定文本的五个性格特质(即O、C、E、A和N)的等级。
-
零样本提示(Zero-Shot prompting)
- 分析用户生成的文本,确定其开放性、责任心、外向性、宜人性和神经质的等级。仅返回低或高。
- Text: “[文本]”
- Level:
-
零样本链式思考提示(Zero-Shot CoT prompting)
- 分析用户生成的文本,确定其开放性、责任心、外向性、宜人性和神经质的等级。仅返回低或高。
- Text: “[文本]”
- Level: 让我们一步步思考:
-
单样本提示(One-Shot prompting)
- 分析用户生成的文本,确定其开放性、责任心、外向性、宜人性和神经质的等级。仅返回低或高。
- Text: “[示例文本]”
- Level: [示例文本的开放性等级] 开放性,[示例文本的责任心等级] 责任心,[示例文本的外向性等级] 外向性,[示例文本的宜人性等级] 宜人性,[示例文本的神经质等级] 神经质
- Text: “[文本]”
- Level:
为最小化示例选择导致的方差,我们随机选择三个示例进行实验并报告平均表现。
- 零样本层级导向链式思考提示(Zero-Shot Level-Oriented CoT prompting)
- 我们将零样本链式思考提示修改如下,构建零样本层级导向链式思考提示,其中[指定层级]可以设定为词级、句子级或文档级。
- 从[指定层级]分析用户生成的文本,确定其开放性、责任心、外向性、宜人性和神经质的等级。仅返回低或高。
- Text: “[文本]”
- Level: 让我们一步步思考:
通过这些策略,我们旨在更全面地评估ChatGPT在文本基础上识别性格的能力。
3.3 基线
根据我们的文献研究,我们选择以下代表性模型作为基线:
(1) RNN [67]:使用RNN生成文本表示来识别五大人格。此外,还使用预先训练好的GloVe模型[68]来初始化单词嵌入。
(2) RoBERTa [69]:微调预先训练好的RoBERTaBase模型,并利用[CLS]的表示与一个线性层进行人格分类。
(3) HPMN(BERT)[10]:是SOTA人格预测模型之一,它使用人格词汇来整合相关的外部知识,以增强人生成文本的语义意义。它在论文和PAN数据集上的性能被引用自原始论文。
3.4 评估指标
从图1中可以看出,Essays和PAN数据集在五种人格特征中保持了阶级平衡。因此,我们使用准确性(越高越好)的[70]作为评估指标,用于衡量人格分类绩效。此外,为了进行更直观的比较,我们采用精度改进百分比(AIP)来测量ChatGPT对SOTA模型(即HPMN(BERT))的精度改进百分比,计算方法为:
3.5 实现细节
3.6 Overall Performance (RQ1)
3.7 ChatGPT在人格识别上的公平性 (RQ2)
3.8 ChatGPT对下游任务的人格识别能力(RQ3)
我们将ChatGPT生成的人格数据应用于其他下游任务中,以验证ChatGPT的人格识别能力的有效性。具体来说,我们选择情感分类任务和压力预测任务作为下游任务,因为现有的心理学研究表明,大五人格与情感表达[73]以及压力易感性[74]之间存在相关性。对于每个任务,为了更全面地评估ChatGPT生成的人格数据对影响的影响,我们首先采用ChatGPT𝐶𝑜𝑇和经过微调的RoBERTa分别基于给定文本生成相应的大五人格。然后,我们使用基本提示来引发ChatGPT的任务相关能力(即情感分类能力和压力预测能力)。最后,我们通过结合不同的大五人格特征修改基本提示,并观察ChatGPT在不同修改基本提示下的任务相关能力。
具体而言,对于情感分类任务,我们采用Yelp数据集的一个子集[75]进行实验。我们之所以没有使用完整的Yelp数据集,是考虑到使用ChatGPT的API的成本。具体来说,我们从Yelp-2数据集的测试集中随机选择了500个正样本和500个负样本来构建这个子集。而对于压力预测任务,我们选择了Dreaddit数据集,该数据集的测试集包含715个样本(369个正样本和346个负样本)。特别地,考虑到PAN数据集、Yelp数据集和压力数据集中的文本都是网络帖子,我们使用在PAN数据集上进行微调的RoBERTa来生成人格数据。此外,由于这两个任务都是二元分类任务,我们采用准确率(越高越好)作为评估指标。另外,情感分类任务和压力预测任务使用的基本提示是由文献[20]和[23]提出的。详细的未修改/修改后基本提示请参考表5。
实验结果如图13所示。这里,ChatGPT𝑏𝑎𝑠𝑖𝑐表示带有基本提示的ChatGPT,而ChatGPT𝑏𝑎𝑠𝑖𝑐_𝑃 𝐶 和 ChatGPT𝑏𝑎𝑠𝑖𝑐_𝑃 𝑅 分别表示集成了由ChatGPT𝐶𝑜𝑇 和经过微调的RoBERTa生成的人格数据的ChatGPT。可以观察到,在集成了ChatGPT𝐶𝑜𝑇 预测的人格数据之后,ChatGPT在情感分类任务和压力预测任务中的表现有所提升。例如,在情感分类任务中,与ChatGPT𝑏𝑎𝑠𝑖𝑐 相比,ChatGPT𝑏𝑎𝑠𝑖𝑐_𝑃 𝐶 的分类准确率从96.6%提高到了97.6%。而在压力预测任务中,ChatGPT𝑏𝑎𝑠𝑖𝑐_𝑃 𝐶 的分类准确率从71.3%提高到了73.0%。这证明了ChatGPT𝐶𝑜𝑇 生成的人格数据的有效性。通过了解个体的大五人格特征,ChatGPT可以更个性化地分析其情感表达和压力状况。
另一个有趣的发现是,经过微调的RoBERTa生成的人格数据能够帮助改善ChatGPT在情感分类任务中的表现,但实际上却降低了它在压力预测任务中的表现。我们认为可能的原因是,经过PAN数据集微调的RoBERTa在Dreaddit数据集上泛化能力不佳,导致在压力预测任务上人格预测的性能较差。相比之下,ChatGPT仅依赖零样本的CoT提示来引发其人格预测能力,并不需要训练数据,因此在不同数据集上展现出更强的泛化性能。
4 结论和未来方向
在本研究中,我们评估了不同提示策略下ChatGPT的人格识别能力,并在两个具有代表性的基于文本的人格识别数据集上与RNN、微调RoBERTa和相应的SOTA模型进行了比较。随着零样本CoT提示的诱发,ChatGPT表现出惊人的人格识别能力,对其预测结果具有很强的可解释性。此外,我们发现指导ChatGPT在特定水平上分析文本有助于提高其人格预测能力,这证明了水平导向提示策略的有效性。此外,我们发现ChatGPT对一些敏感的人口统计学属性表现出不公平,导致在预测人格时对某些特定群体的不公平对待。此外,我们将ChatGPT推断出的人格数据应用于其他下游任务中,实现了一定程度上的绩效提高。这证明了ChatGPT的人格预测能力是有效的,并且具有较高的泛化性能。
对于未来的工作,一方面,我们希望将面向层次的提示策略应用于更多的NLP任务,以观察其在文本信息挖掘中的有效性。另一方面,随着各种llm的不断出现,我们感兴趣的是基于心理数据构建特定领域的llm的构建,以提高llm的人格识别能力。