社会偏见测量方法、系统和计算机介质

文档序号:32134468发布日期:2022-11-09 12:09阅读:47来源:国知局
社会偏见测量方法、系统和计算机介质

1.本发明涉及计算机深度学习领域,更具体地,涉及一种社会偏见测量方法、系统和计算机介质。


背景技术:

2.在使用预训练模型的自然语言处理(nlp)任务中,由于语料库中预训练语料库中存在许多不安全的特征。往往会导致在下游任务中暴露出社会偏见问题,影响下游任务在实际场景中的部署。并且社会偏见与其他显式表达的不安全特征不同,社会偏见通常都是使用隐式的词语向特定人群传达负面印象或偏见。因此社会偏见常常难以被准确检测,但是很多下游任务又是直接与用户交互。例如,对话系统是直接与用户产生交互,如果它产生的响应存在偏见会造成恶劣的影响,就会同时会阻碍基于大规模生成语言模型任务的部署和发展。因此,解决开放域对话情境中的社会偏见问题至关重要。目前,大多数研究都是聚焦于令牌或句子层面等上下文无关的任务。然而,上下文敏感安全性的研究对于用户来说至关重要,但这仍然是一个有待探索的领域。基于“预训练+微调”的范式被用于开放域对话社会偏见的细粒度测量任务,但是此范式可能会破坏预训练模型的原始表示空间进而产生过拟合。
3.除了“预训练+微调”范式外,基于“预训练+提示”的范式也被用于开放域对话社会偏见的细粒度测量任务。并且能很好地解决预训练模型的原始表示空间被破坏的问题,但是在给大规模的模型提供有毒提示时更有可能产生有毒反应。并且增加预训练模型规模只能更准确地对毒性进行分类,与偏见安全水平没有实质性的关系。
4.现有技术公开一种基于正则化的去社会偏见的语言模型及应用,具体在损失函数中加入了反映文本社会偏见项的正则化项来降低语言模型受原始带偏见文本库的影响来保证模型在文本预测时的公平性。该方案同样没办法很好的完成开放域对话社会偏见的细粒度测量任务。


技术实现要素:

5.本发明的首要目的是提供一种社会偏见测量方法,完成开放域对话社会偏见的细粒度测量任务。
6.本发明的进一步目的是提供一种社会偏见测量系统。
7.本发明的第三个目的是提供一种计算机介质。
8.为解决上述技术问题,本发明的技术方案如下:
9.一种社会偏见测量方法,包括以下步骤:
10.s1:划分数据集为训练集、验证集和测试集;
11.s2:使用bert对训练集进行表征,获得训练集中输入问答句子的表征ci;
12.s3:构建两阶段提示的对比学习神经网络,利用步骤s2得到表征ci进行训练,并输出代表社会偏见的标签信息,保存对比学习神经网络训练学习到的参数集;
13.s4:使用验证集验证对比学习神经网络在训练集上学习到的参数集,保存在验证集上效果最好的参数集作为最终参数集,并利用测试集对最终参数集进行测试,得到训练好的对比学习神经网络;
14.s5:利用训练好的对比学习神经网络进行社会偏见类别预测。
15.优选地,所述步骤s1中的数据集d从网络抓取并构建与社会偏见相关的对话数据,每个数据条目为由一对问答组成的两轮对话,包括四个子集:种族、性别、地区和职业,每个子集的数据又分成四个部分,分别是:无偏见相关的数据、反偏见相关的数据、中性偏见相关的数据和偏见相关的数剧。
16.优选地,所述步骤s1中按照8:1:1的比例将数据集划分为训练集t、验证集e和测试集v。
17.优选地,所述步骤s2中使用bert对训练集进行表征,获得训练集中输入问答句子的表征ci,具体为:
18.训练集t中每个序列的第一个标记是分类标记[cls],与该标记相对应的最终隐藏状态被用作分类任务的聚合序列表示,标记[sep]被用于对话的句子之间和整个序列的结尾处,对于一个给定的标记,其输入表示是由相应的标记xi、分割yi和位置嵌入zi相加而构建的,最终的隐藏状态被用作该句子的语义表示向量ci,因此,对话的表征ci被计算如下:
[0019]ci
=bert(xi,yi,zi)。
[0020]
优选地,所述步骤s3中的两阶段提示的对比学习神经网络,具体为:
[0021]
所述两阶段提示的对比学习神经网络先识别文本是否涉及公平性话题,再识别涉及公平性话题的文本的偏向性,包括:
[0022]
给定一系列n个词嵌入ce={c1,c2,

,cn},其中e是嵌入空间的维数,利用提示模板将输入的文本重构为“[cls]{question}[sep]{answer}这句回答[mask]存在社会偏见,内容上是[mask]偏见的[sep]”,参数其中p是提示模板的长度,两个参数拼接得到新的文本表征训练过程中,同时更新参数pe和ce,第一阶段的条件生成为pr
θ
(y1|c
new
),y1={0,1},标签0表示文本不涉及公平性话题,标签1表示文本涉及公平性话题,第二阶段的条件生成为pr
θ
(y2|c
new
),y2={0,1,2},标签0表示无偏见,标签1表示中性,标签2表示有偏见。
[0023]
优选地,分别为两个阶段构建相应的损失进行学习:
[0024][0025][0026]
对两个阶段的提示学习损失加权得到最终的损失:
[0027]
l
p
=α*l
p1
+(1-α)*l
p2
[0028]
l
p
是两阶段提示学习的结果,l
p1
是第一阶段提示学习损失,l
p2
是第二阶段提示学习的损失。α是可调节参数,且α∈{0,1}。
[0029]
优选地,所述两阶段提示的对比学习神经网络还加入对比学习,具体为:
[0030]
将一个批次中所有句子表示为{xi,yi}
i∈i
,其中i={1,
···
,k}是句子的索引,k
是该批次中包含的样本数量,yi∈{0,1,2,3},给定样本的第一阶段概率表示q1(ci),其索引为i,假设句子xi在该批次内其相同标签的样本集合定义为s={s:s∈i,y
p
=yi∧p≠i},大小为||,批次的反向对比损失是:
[0031][0032][0033]
其中τ是一个进行优化的温度参数,下标为i对应锚点样本,下标为s对应正样本,l
sup
是对比学习损失。
[0034]
优选地,两阶段提示的对比学习神经网络总的损失为:
[0035]
l=β*l
aup
+(1-β)*l
p
[0036]
l是两阶段提示的对比学习神经网络总的损失,l
sup
是对比学习损失,l
p
是提示学习损失,β是可调节参数,且β∈{0,1}。
[0037]
一种社会偏见测量系统,包括:
[0038]
划分模块,所述划分模块用于划分数据集为训练集、验证集和测试集;
[0039]
表征模块,所述表征模块用于使用bert对训练集进行表征,获得训练集中输入问答句子的表征ci;
[0040]
两阶段提示对比学习神经网络模块,所述两阶段提示对比学习神经网络模块用于构建两阶段提示的对比学习神经网络,利用表征模块得到表征ci进行训练,并输出代表社会偏见的标签信息,保存对比学习神经网络训练学习到的参数集;
[0041]
验证测试模块,所述训练模块用于使用验证集验证对比学习神经网络在训练集上学习到的参数集,保存在验证集上效果最好的参数集作为最终参数集,并利用测试集对最终参数集进行测试,得到训练好的对比学习神经网络;
[0042]
预测模块,所述预测模块利用训练好的对比学习神经网络进行社会偏见类别预测。
[0043]
一种计算机介质,所述计算机介质被处理器执行时,实现上述所述的社会偏见测量方法。
[0044]
与现有技术相比,本发明技术方案的有益效果是:
[0045]
本发明通过多阶段提示的对比学习神经网络,对社会偏见数据集的社会偏见进行分类,通过进行细粒度的社会偏见测量以减轻开放域对话输出应答中的偏见,同时本发明的推理计算成本非常低,这对于低资源的计算机系统非常方便。
附图说明
[0046]
图1为本发明的方法流程示意图。
[0047]
图2为本发明的两阶段提示的对比学习神经网络框架图。
[0048]
图3为本发明的系统模块示意图。
具体实施方式
[0049]
附图仅用于示例性说明,不能理解为对本专利的限制;
[0050]
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
[0051]
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
[0052]
下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0053]
实施例1
[0054]
一种社会偏见测量方法,如图1所示,包括以下步骤:
[0055]
s1:划分数据集为训练集、验证集和测试集;
[0056]
s2:使用bert对训练集进行表征,获得训练集中输入问答句子的表征ci;
[0057]
s3:构建两阶段提示的对比学习神经网络,利用步骤s2得到表征ci进行训练,并输出代表社会偏见的标签信息,保存对比学习神经网络训练学习到的参数集;
[0058]
s4:使用验证集验证对比学习神经网络在训练集上学习到的参数集,保存在验证集上效果最好的参数集作为最终参数集,并利用测试集对最终参数集进行测试,得到训练好的对比学习神经网络;
[0059]
s5:利用训练好的对比学习神经网络进行社会偏见类别预测。
[0060]
本实施例针对以往基于预训练语言模型的nlp任务,使用“预训练+微调”的开放域对话社会偏见细粒度测量方法,会破坏预训练模型的原始表示空间和在测试集上易导致过拟合等缺点。基于“预训练+提示”的方法,通过构建提示模板使用完形填空的方式完成下游任务。
[0061]
这项工作的重点是输入成对的问答到神经网络中进行学习输出预测的开放域对话社会偏见类别。针对不同类型的数据存在不同类型的神经网络(nn),必须根据应用进行选择。基于“预训练+微调”的范式也被用于开放域对话社会偏见测量,但是此范式可能会破坏预训练模型的原始表示空间进而产生过拟合。而基于“预训练+提示”的范式能很好地解决预训练模型的原始表示空间被破坏的问题。对比学习以最小化过滤嵌入和偏置词之间的相关性,还可以保留原始句子的丰富语义信息。本实施例基于提示学习与对比学习提出了第一个用于细粒度开放域对话社会偏见测量框架。该框架共包含三个模块:bert表征,两阶段提示学习,对比学习。首先,本实施例采用bert表征对对话文本进行表征,然后采用提示学习模块对文本进行两阶段的提示学习:先识别文本是否涉及公平性话题,再识别涉及公平性话题的文本的偏向性。此外,本实施例还采用了对比学习模块,进一步拉近相同标签样本的文本表示。本实施例提出了基于多阶段提示的对比学习开放域对话社会偏见测量方法。本系统推理计算成本非常低,这对于低资源的计算机系统非常方便。本实施例的是通过多阶段提示的对比学习神经网络,对社会偏见数据集的社会偏见进行分类,通过进行细粒度的社会偏见测量以减轻开放域对话输出应答中的偏见。
[0062]
所述步骤s1中的数据集d从网络抓取并构建与社会偏见相关的对话数据,每个数据条目为由一对问答组成的两轮对话,包括四个子集:种族、性别、地区和职业,每个子集的数据又分成四个部分,分别是:无偏见相关的数据、反偏见相关的数据、中性偏见相关的数据和偏见相关的数剧。
[0063]
所述步骤s1中按照8:1:1的比例将数据集划分为训练集t、验证集e和测试集v。
[0064]
所述步骤s2中使用bert对训练集进行表征,获得训练集中输入问答句子的表征ci,具体为:
[0065]
训练集t中每个序列的第一个标记是分类标记[cls],与该标记相对应的最终隐藏状态被用作分类任务的聚合序列表示,标记[sep]被用于对话的句子之间和整个序列的结尾处,对于一个给定的标记,其输入表示是由相应的标记xi、分割yi和位置嵌入zi相加而构建的,最终的隐藏状态被用作该句子的语义表示向量ci,因此,对话的表征ci被计算如下:
[0066]ci
=bert(xi,yi,zi)。
[0067]
本实施例使用两阶段提示学习方法,将任务都转换为文本生成,即将分类任务建模为条件生成模型pr
θ
(y|c),由构成其编码器和解码器的转换器的权重θ参数化,其中y是序列表示类标签的标记。提示是在生成y期间为模型添加额外信息以作为条件的方法,通过在输入c前添加一系列标记p(即提示模板)使模型可以最大化正确y的可能性。
[0068]
由于该任务无法直接建模在一个条件生成模型中,因此,本发明使用两阶段提示学习方法,所述两阶段提示的对比学习神经网络先识别文本是否涉及公平性话题,再识别涉及公平性话题的文本的偏向性,如图2所示,包括:
[0069]
给定一系列n个词嵌入ce={c1,c2,

,cn},其中e是嵌入空间的维数,利用提示模板将输入的文本重构为“[cls]{question}[sep]{answer}这句回答[mask]存在社会偏见,内容上是[mask]偏见的[sep]”,参数其中p是提示模板的长度,两个参数拼接得到新的文本表征训练过程中,同时更新参数pe和ce,第一阶段的条件生成为pr
θ
(y1|c
new
),y1={0,1},标签0表示文本不涉及公平性话题,标签1表示文本涉及公平性话题,第二阶段的条件生成为pr
θ
(y2|c
new
),y2={0,1,2},标签0表示无偏见,标签1表示中性,标签2表示有偏见。
[0070]
分别为两个阶段构建相应的损失进行学习:
[0071][0072][0073]
对两个阶段的提示学习损失加权得到最终的损失:
[0074]
l
p
=α*l
p1
+(1-α)*l
p2
[0075]
l
p
是两阶段提示学习的结果,l
p1
是第一阶段提示学习损失,l
p2
是第二阶段提示学习的损失。α是可调节参数,且α∈{0,1}。
[0076]
在提示学习的第一阶段中,模型易忽略了第二阶段的三个标签对第一阶段的提示任务的影响。因此,为了增强完整标签体系在第一提示阶段的影响与信息表示。本发明采用有监督对比学习来拉近相同标签的样本之间的概率表征q1(ci),鼓励编码器为来自同一类的所有样本提供紧密对齐的概率表征。从而反向传播导致表示空间的聚类,比从方程式生成的聚类更稳健。在两阶段提示学习后加入对比学习用于尽可能拉近第一阶段的完整标签体系下,正样本之间第一阶段概率表征,同时拉远负样本与正样本之间的距离。所述两阶段提示的对比学习神经网络还加入对比学习,具体为:
[0077]
将一个批次中所有句子表示为{xi,yi}
i∈i
,其中i={1,
···
,k}是句子的索引,k是该批次中包含的样本数量,yi∈{0,1,2,3},给定样本的第一阶段概率表示q1(ci),其索引为i,假设句子xi在该批次内其相同标签的样本集合定义为s={s:s∈i,y
p
=yi∧p≠i},大小为|s|,批次的反向对比损失是:
[0078][0079][0080]
其中τ是一个进行优化的温度参数,下标为i对应锚点样本,下标为s对应正样本,l
sup
是对比学习损失。
[0081]
两阶段提示的对比学习神经网络总的损失为:
[0082]
l=β*l
sup
+(1-β)*l
p
[0083]
l是两阶段提示的对比学习神经网络总的损失,l
sup
是对比学习损失,l
p
是提示学习损失,β是可调节参数,且β∈{0,1}。
[0084]
将划分好的测试集v输入到两阶段提示的对比学习神经网络的最佳参数模型rk(1≤k≤n)中输出预测测试集v社会偏见类别yi∈{0,1,2,3}。本发明的是通过多阶段提示的对比学习神经网络,对社会偏见数据集的测试集v的社会偏见进行分类yi∈{0,1,2,3},通过进行细粒度的社会偏见测量框架以减轻下游任务输出数据中的偏见。
[0085]
实验结果如表1所示,表中显示了对多阶段提示的对比学习神经网络的实验。实验结果显示在本次实验中多阶段提示的对比学习神经网络具有较好的性能,其在验证集e上有较高的精度。此方法很好地解决传统微调方法出现的过拟合问题,在测试集v上表现出了较高的精度。实验结果体现了多阶段提示的对比学习神经网络,用于社会偏见细粒度预测时具有良好的泛化能力。
[0086]
表1不同模型组合方法在验证集和测试集上的f
macro
分数
[0087]
模型验证集f
macro
测试集f
macro
bert0.6409-bert+lstm0.6417-bert+对抗训练0.6446-bert+lstm+对抗训练0.65470.5652bert+提示学习0.6383-bert+对比学习+提示学习0.64900.5828
[0088]
表1主要包括了各种不同的模型组会在验证集和测试集上的f
macro
分数。其中虽然在“bert+lstm+对抗训练”模型的验证集f
macro
分数更高,但是在测试集上却显示出了很差的效果。而“bert+对比学习+提示学习”模型,不仅在验证集上取得了很高的f
macro
分数,同时在测试集上显示出了较好的效果。
[0089]
实施例2
[0090]
本实施例提供一种社会偏见测量系统,如图3,包括:
[0091]
划分模块,所述划分模块用于划分数据集为训练集、验证集和测试集;
[0092]
表征模块,所述表征模块用于使用bert表征对训练集进行表征,获得训练集中输入问答句子的表征ci;
[0093]
两阶段提示对比学习神经网络模块,所述两阶段提示对比学习神经网络模块用于构建两阶段提示的对比学习神经网络,利用表征模块得到表征ci进行训练,并输出代表社会偏见的标签信息,保存对比学习神经网络训练学习到的参数集;
[0094]
验证测试模块,所述训练模块用于使用验证集验证对比学习神经网络在训练集上学习到的参数集,保存在验证集上效果最好的参数集作为最终参数集,并利用测试集对最终参数集进行测试,得到训练好的对比学习神经网络;
[0095]
预测模块,所述预测模块利用训练好的对比学习神经网络进行社会偏见类别预测。
[0096]
实施例3
[0097]
本实施例提供一种计算机介质,所述计算机介质被处理器执行时,实现实施例1所述的社会偏见测量方法。
[0098]
相同或相似的标号对应相同或相似的部件;
[0099]
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
[0100]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1