CN117272253B - 一种在大语言模型生成文本中嵌入及检测数字水印的方法 - Google Patents

一种在大语言模型生成文本中嵌入及检测数字水印的方法 Download PDF

Info

Publication number
CN117272253B
CN117272253B CN202311572980.8A CN202311572980A CN117272253B CN 117272253 B CN117272253 B CN 117272253B CN 202311572980 A CN202311572980 A CN 202311572980A CN 117272253 B CN117272253 B CN 117272253B
Authority
CN
China
Prior art keywords
text
embedding
watermark
content
generated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311572980.8A
Other languages
English (en)
Other versions
CN117272253A (zh
Inventor
徐青伟
范娥媚
尤元岳
谢鑫
严长春
裴非
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xinghe Zhiyuan Technology Co ltd
Zhiguagua Tianjin Big Data Technology Co ltd
Original Assignee
Zhiguagua Tianjin Big Data Technology Co ltd
Beijing Zhiguagua Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhiguagua Tianjin Big Data Technology Co ltd, Beijing Zhiguagua Technology Co ltd filed Critical Zhiguagua Tianjin Big Data Technology Co ltd
Priority to CN202311572980.8A priority Critical patent/CN117272253B/zh
Publication of CN117272253A publication Critical patent/CN117272253A/zh
Application granted granted Critical
Publication of CN117272253B publication Critical patent/CN117272253B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本申请公开了一种在大语言模型生成文本中嵌入及检测数字水印的方法。该方法根据用户输入,利用大语言模型生成面向领域任务的机器文本(参考文本),对该参考文本划分标识水印嵌入范围和内容水印嵌入范围,分别记为第一文本段和第二文本段;基于公钥系统,使用私钥对用户唯一标识进行加密并嵌入到所述第一文本段内,同时将所述用户唯一标识记录到数据库;以所述用户唯一标识为密钥,将内容数字水印嵌入到所述第二文本段内;将经过加密标识嵌入和内容水印嵌入后的整个文本输出给用户。本申请实现了机器生成文本的隐蔽数字水印嵌入和精准检测,达到了文本数字水印嵌入和溯源的双重目标。

Description

一种在大语言模型生成文本中嵌入及检测数字水印的方法
技术领域
本申请属于自然语言处理技术领域,涉及一种于大模型中嵌入以及检测数字水印的方法。
背景技术
随着以ChatGPT为代表的大模型在各行各业的普遍应用,其为产业赋能、提质增效的同时,也引起了人们对检测和防止大模型在虚假信息和学术造假等任务中滥用的担忧。如何控制和检测生成式文本的滥用已经成为了业内的一项核心研究任务。
当前的防止机器生成文本滥用的可控机器生成文本一般基于人工和自动检测、添加数字水印并检测等方法实现。随着大模型能力的快速提升,其生成的文本越来越接近与人工撰写的内容,通过人工和自动的方法进行检测越来越困难。而数字水印通过模型生成时自动添加的方式,能够从源头上控制文本的分布,结合配套的检测工具能够快速高效的准确检测生成文本,溯源内容来源,有效防止文本的恶意传播和滥用。
目前,多家大型科技公司已达成协议,为人工智能的开发设置更多防护措施,包括开发水印系统等,来控制误导信息的传播和其他风险。亚马逊、Anthropic、谷歌、Inflection、Meta、微软和OpenAI七家主要人工智能公司做出自愿承诺,帮助实现AI技术安全、可靠和透明的发展。
现有机器生成文本中嵌入数字水印,在嵌入和检测阶段使用同样的密钥,如果用户共享密钥,会导致检测阶段信息泄露的风险,恶意用户从而能够逃避甚至去除文本中嵌入的数字水印。另外,现有实现方法无法区分文本来源,在信息传播和恶意使用场景下的取证和溯源缺乏有效的检测和预防文本滥用的技术手段。
发明内容
本申请提供一种在大语言模型生成文本中嵌入及检测数字水印的方法,能够实现实现了机器生成文本的隐蔽数字水印嵌入和准确检测。
第一方面,一种在大语言模型生成文本中嵌入数字水印的方法,包括:
参考文本生成:根据用户输入,利用大语言模型生成面向领域任务的机器文本,记为参考文本;对所述参考文本划分标识水印嵌入范围和内容水印嵌入范围,分别记为第一文本段和第二文本段;
加密标识嵌入:基于公钥系统,使用私钥对用户唯一标识进行加密并嵌入到所述第一文本段内,同时将所述用户唯一标识记录到数据库;
内容水印嵌入:以所述用户唯一标识为密钥,将内容数字水印嵌入到所述第二文本段内;
内容发布:将经过加密标识嵌入和内容水印嵌入后的整个文本输出给用户。
可选地,在加密标识嵌入环节,同时将所述用户唯一标识、参考文本的生成时间、参考文本记录到数据库。
可选地,对所述参考文本划分标识水印嵌入范围和内容水印嵌入范围,具体是:
根据不同文本段落的重要程度,重要部分作为内容水印嵌入范围,其余部分作为标识水印嵌入范围;
或者,采用文本前后顺序进行划分,前面部分作为标识水印嵌入范围,后面部分作为内容水印嵌入范围。
可选地,所述加密标识嵌入,具体包括:
使用私钥对用户唯一标识ID进行加密,得到加密的用户标识SIDr;
将原词表V(大语言模型所学习的词汇表)进行随机打乱得到词表Vt,依据加密的用户标识SIDr对打乱后的词表Vt分区,并且令其中的一个分区中的词表概率增加,经过归一化之后,得到一个新的词表概率分布/>,根据当前的词表概率分布进行采样,记为当前时间t的生成字符Xt;当前时间t的采样过程结束,进入到下一时间t+1的采样过程;
经过不断的循环迭代,直至生成到第一文本段结束。
可选地,所述内容水印嵌入,具体包括:
使用用户唯一标识ID作为种子随机生成与大语言模型词表长度相同的数字序列,作为数字水印密钥序列;
将用户输入的提示前缀X-p: −1以及嵌入加密标识的第一文本段拼接在一起得到X-p: M,重新输入大语言模型,继续让大语言模型生成第二文本段,使生成的概率分布受到所述数字水印密钥序列的影响,从而将内容数字水印添加进第二文本段内。
第二方面,一种在大语言模型生成文本中检测数字水印的方法,包括:
获取经上述在大语言模型生成文本中嵌入数字水印的方法得到的文本,记为待检测文本;
利用私钥将用户唯一标识从待检测文本中提取出来,根据该用户唯一标识实现溯源;
用户唯一标识为密钥对待检测文本进行内容数字水印检测验证。
可选地,若对于待检测文本,无法提取出目标用户唯一标识,则遍历系统数据库中所有用户的用户唯一标识,通过穷举的方式以每一个用户唯一标识取待检测文本中存在的内容数字水印;直到某个用户唯一标识可以检测出显著性水平达到设定阈值,则终止循环,输出该用户唯一标识及其显著性水平,并且输出检测得到的内容数据水印,判定待检测文本为该用户唯一标识所属用户用大语言模型生成的文本。
第三方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述在大语言模型生成文本中嵌入数字水印的方法。
第四方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述在大语言模型生成文本中检测数字水印的方法。
相比现有技术,本申请至少具有以下有益效果:
本申请以大语言模型为基础,综合利用公钥系统、数字水印等技术手段,实现了机器生成文本的隐蔽数字水印嵌入和精准检测,达到了文本数字水印嵌入和溯源的双重目标。加密用户标识的嵌入和提取,实现了用户唯一标识的准确识别,能够对于恶意传播的机器生成文本进行溯源和取证。以用户标识为密钥实现的无损水印嵌入,能够在最大程度上保持原有生成文本质量的同时,实现灵敏、精准、鲁棒的水印检测。
本申请还前瞻性地考虑到针对文本转述、改写导致原始文本内容变化显著导致密钥损坏的情形,提供鲁棒性算法实现文本中存在的数字水印检测。
附图说明
图1为本申请一个实施例中嵌入以及检测数字水印的整体流程示意图;
图2为本申请一个实施例中嵌入以及检测数字水印的具体逻辑原理示意图;
图3为本申请一个实施例中对于用户转述文本情形下的鲁棒性检测的原理示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本申请的描述中:除非另有说明,本申请中的术语“第一”、“第二”等旨在区别指代的对象,而不具有技术内涵方面的特别意义(例如,不应理解为对重要程度等方面的强调)。“包括”、“包含”、“具有”等表述方式,同时还意味着“不限于”(某些步骤、模块等)。
在一个实施例中,如图1所示,一种在大语言模型生成文本中嵌入数字水印的方法,包括:
参考文本生成:根据用户输入,利用大语言模型生成面向领域任务的机器文本,记为参考文本;对所述参考文本划分标识水印嵌入范围和内容水印嵌入范围,分别记为第一文本段和第二文本段;
加密标识嵌入:基于公钥系统,使用私钥对用户唯一标识进行加密并嵌入到所述第一文本段内,同时将所述用户唯一标识记录到数据库;
内容水印嵌入:以所述用户唯一标识为密钥,将内容数字水印嵌入到所述第二文本段内;
内容发布:将经过加密标识嵌入和内容水印嵌入后的整个文本输出给用户。
对应地,一种在大语言模型生成文本中检测数字水印的方法,包括:
获取经前述方法嵌入有数字水印的文本,记为待检测文本;
利用私钥将用户唯一标识从待检测文本中提取出来,根据该用户唯一标识实现溯源;
用户唯一标识为密钥对待检测文本进行内容数字水印检测验证。
特别地,对于文本转述、改写导致原始文本内容变化显著时用户标识提取失败的情形,系统通过遍历数据库中的用户标识,基于内容水印的鲁棒性通过穷举的方式检测文本中存在的数字水印。
以下结合图2进一步具体说明本实施例。
一、文本生成
根据用户输入利用大语言模型生成面向领域任务的机器文本,记为参考文本。系统根据参考文本划分标识水印嵌入和内容水印嵌入文本范围。
大语言模型包括闭源模型和开源模型两类。闭源模型不公开模型参数,通过公开的API调用方式使用,如OpenAI的ChatGPT、GPT4,谷歌的BARD等。开源模型是公开模型代码和参数,通过本地私有化部署的方式使用,如Llama/Llama2、ChatGLM、baichuan等。通过大模型LLM生成文本的方式为:
X=LLM.generate(P)
其中,P为提示信息输入文本,X为模型生成的输出文本(参考文本),LLM为选择的大模型,generate为大模型的条件生成接口。提示信息通过指令模版将用户输入和指令进行格式化构建后输入模型。
用户标识是系统分配给用户的唯一ID(根据系统设计的用户容量确定,可以取32位整数)。系统将用户标识、参考文本的生成时间(例如某参考文本于2023年11月12日生成,则该项信息可记录为2023/11/13)、参考文本记录到数据库。划分标识水印嵌入和内容水印嵌入文本范围可以根据不同文本段落的重要程度,重要部分的文本执行内容水印嵌入,其余部分进行标识水印嵌入;也可以简单采用文本前后顺序进行划分,前面部分嵌入标识水印,后面部分嵌入内容水印。
为了使算法描述更加清晰,本实施例中采用文本前后顺序的方式进行嵌入标识水印,嵌入内容水印的操作,并且假设此大模型依据用户输入的提示前缀生成出来的文本有2段内容,我们定义第一段内容为文本前部分内容,用来嵌入标识水印,第二段内容为文本后部分内容,用来嵌入内容水印。并且计算第一段的文本长度为M,第二段的文本长度为N。
二、标识水印嵌入
应用公钥密码系统,使用私钥对用户唯一标识进行加密,作为标识水印嵌入到生成文本指定部分中(上一步骤已划分)。
输入:用户标识,提示信息
输出:嵌入加密用户标识的生成文本
私钥-公钥可以通过现有公钥系统工具(如openssl)生成。以openssl工具为例,生成公钥-私钥对的步骤算法如下:
/* 进入openssl */
#openssl
/* 生成私钥 */
#genrsa -out rsa_private_key.pem [指定长度,默认长度是2048] /* 生成的私钥在rsa_private_key.pem文件中 */
/* 生成共钥 */
#rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem/* 生成的共钥在rsa_public_key.pem文件中 */
对用户标识进行加/解密的算法如下:
/* 使用私钥加密用户标识(输入明文存储在文件input.txt中) */
openssl rsautl -encrypt -inkey rsa_private_key.pem -in input.txt -outoutput.txt/* 生成的密文用户标识存储在output.txt文件中 */
/* 使用私钥解密用户标识 (输入明文存储在文件input.txt中)*/
# openssl rsautl -decrypt -inkey rsa_private_key.pem -in input.txt -out output.txt /* 生成的明文用户标识存储在output.txt文件中 */
应用辗转相除法将加密用户标识SID转换成以r为基底的r进制的消息SIDr。
应用以下算法1,将加密用户标识SIDr嵌入到模型生成文本中。
算法1:加密用户标识嵌入
输入:大语言模型LLM;模型词表V;输入提示前缀X-p: −1;难度系数δ > 0;加密用户标识,其中r为嵌入消息基底,b为消息长度;伪随机数生成函数f;随机采样函数sample;窗口宽度h。
输出:嵌入用户标识的模型生成文本
for t = 0, 1, · · · do
(1)将X-p: t−1输入语言模型LLM,获得当前位置t的字符概率向量l (t),长度为模型词表V的大小|V|。
l (t) ← LLM(·|X:t-1)
(2)从消息中随机选取一位,索引采样函数为sample,当前位置消息值记为m:
i←sample([0, b-1]) /* 随机选择索引 */
m←SIDr [i] /*索引位置消息内容 */
(3)以窗口宽度内的文本为种子生成随机数:
s = f(Xt-h:t-1)。
(4)以s为种子,对模型词表V进行随机排列,得到Vt
(5)将Vt进行平均划分,得到r个分区:
Vt = [Vt0, · · · ,Vt(r-1)]
(6)将Vtm中的所有字符在l (t) 中的概率增加δ。使用softmax函数重新计算l (t)中各字符的归一化概率:
(7)依据概率分布,采样下一个字符,得到Xt
对算法1进一步描述,在算法1中,输入为用户输入的提示前缀,记为X-p: −1,其余输入依据算法1输入部分所示。总体逻辑就是,先将词表V进行随机打乱得到Vt,依据于加密的用户标识SIDr对打乱后的词表分区,并且令其中的一个分区中的词表概率增加δ,经过归一化之后,便会得到一个新的词表概率分布,根据当前的词表概率分布进行采样,记为当前时间t的生成字符Xt。当前时间t的采样过程结束,进入到下一时间t+1的采样过程,经过不断的循环迭代,直到生成到第一段内容结束,此时经过大模型重新生成出来的第一段文本内容就是经过加密的用户标识嵌入之后的文本。
名词解释:用户输入的提示前缀,是指为了引导模型生成符合特定要求的语言输出而设计的一段文本。这段提示文本可以包含合适的词汇、语法、上下文和主题等元素,其目的是为了更好地控制模型的输出结果。例如,当用户想要获取一段关于某个特定主题(领域)的文章时,可以在输入的提示中明确指出这个主题(领域),这样模型在生成文本时就会重点围绕这个主题(领域)来展开。
三、内容水印嵌入
以用户标识作为密钥,将内容水印嵌入到生成文本指定部分(步骤一中已划分)中。具体实现方式如以下算法2所示。
输入:用户标识,输入信息(提示信息+上一步骤已生成文本),
输出:嵌入内容水印的生成文本
算法2:内容水印嵌入
输入:大语言模型LLM;输入文本X;数字水印密钥序列
输出:嵌入水印的模型生成文本Y
for t = 0, 1, · · · do
/* 将X-p: t−1输入语言模型LLM,获得当前位置t的字符概率向量l (t) */
l (t) ← LLM(·|X:t-1)
/* 解码输出添加数字水印的文本Yt , L为大模型词表长度 */
/* 返回嵌入水印的模型生成文本 */
return Y
此算法的功能是以顺序方式对后部分内容添加内容数字水印,此例子中为,对第二段生成的文本添加内容数字水印。算法2的输入为大语言模型LLM。依据于算法1生成出来的用户标识嵌入后的第一段的文本长度为M,此部分生成的文本记作XM,则算法2中的输入为用户输入用户提示前缀X-p: −1以及第一段生成出来的文本内容拼接在一起为X-p: M。特别需要强调的是输入中的数字水印密钥序列为使用用户唯一标识ID作为种子随机生成与大模型词表长度相同的数字序列当做数字水印密钥序列。而大模型的任务就是以X-p: M为输入,继续让大模型生成后边第二段的文本内容,此时生成的概率分布受到了数字水印密钥序列的影响,从而将内容数字水印添加进第二段的文本内容当中。
四、内容发布
将嵌入用户标识及内容水印的机器生成文本发布给用户。发布渠道可以选择邮件、网站、IM工具等。
五、检测及溯源
包括文本溯源和水印检测。文本溯源是利用私钥将用户标识从待检测文本中提取出来,根据用户标识实现溯源。水印检测以用户标识为密钥对待检测文本进行数字水印检测。
输入:待检测文本
输出:用户标识,检测结果
加密用户标识提取步骤如算法3所示,提取输出的加密用户标识记为SIDr。应用解密工具使用私钥对加密用户标识进行解密,执行辗转相除法对消息进行基底变换后得到明文用户标识ID。应用算法4、算法5执行内容水印检测。
算法3:加密用户标识提取
输入:大语言模型词表V;输入文本X1:T,长度为T;加密用户标识的消息基底r,消息长度b;伪随机数生成函数f;随机采样函数sample;窗口宽度h。
输出:加密用户标识SIDr
/* 初始化位置计数数组C,维度为[b,r] */
for p in [0,b-1] do
for m in [0,r-1] do
C [p][m] = 0
/* 统计字符是否在颜色标记列表中 */
for t in [h+1,T] do
/* 以窗口宽度内文本为种子生成随机数 * /
s = f(Xt-h:t-1)
i←sample([0, b-1])
for m in [0,r-1] do
以s为种子,对模型词表V进行随机排列,得到Vt
将Vt进行平均划分,得到r个分区:
Vt = [Vt0, · · · ,Vt(r-1)]
if
C[i][m] += 1
/* 预测加密用户标识内容 */
SIDr = “” /* 用户标识初始化为空 */
for i in [0,b-1] do
m ← argmax(C[i])
SIDr += str(m)
/* 返回加密用户标识 */
return SIDr
算法3的功能就是通过输入一段未知文本内容从而提取出加密的用户标识。假定输入至本算法中的输入为经过加密用户标识嵌入的文本内容,并且该文本内容是通过算法1嵌入的。为提取出加密的用户标识SIDr,首先初始化一个二维矩阵,该矩阵长为r,宽为b,r为SIDr的基底,b为SIDr的长度。因通过系统自动生成的SID的长度是一致的,经过r基底变换后的SIDr的长度都是一致的,因此r和b在该部分是已知的数字。以h窗口长度逐渐向右进行移动,以窗口长度内的文本内容当作种子,令m在0-r之间遍历,对词表V进行打乱得到Vt,并且划分r个区域,如果当前时刻字符Xt处于Vtm分区内,则在二维矩阵的i行m列加一计数。经窗口移至输入文本长度末尾时,统计二维矩阵的各个数值,查找每一行中最大的数字,以字符的形式拼接起来即为用户的加密标识,SIDr。再将SIDr进行辗转相除以及私钥解密的方式,即可得到用户的唯一标识ID。
然后,内容水印检测是检测文本中是否存在数字水印。具体方式为:以用户标识为种子,生成与词表长度相同的数字水印密钥序列ξ。执行统计检测算法进行文本数字水印检查,得到显著性水平
算法4:内容水印检测
输入:大语言模型LLM;输入待检测文本;统计检测函数/>;重采样长度T,数字水印密钥序列/>, 与ξ长度相同的随机分布v。
输出:检测显著性水平p-value
for t = 0, · · ·,T do
ξ(t) ~v /* 依v分布进行随机采样 */
return /* 返回 */
算法4的功能就是输入一段文本,给出该文本是否包含内容数字水印的可能性。经过算法3从输入文本段得到加密的r底用户标识SIDr,再经过辗转相除复原加密的用户标识SID,最后使用私钥解密得到用户唯一标识ID。得到用户标识后,即可以当前用户标识为种子,随机生成出大模型词表长度的数字水印密钥序列,该过程与算法2前以用户标识生成水印密钥过程一致。此外,还要生成一个与水印密钥长度相同的随机分布v。然后对输入的文本每一个token都进行依据v分布的随机采样从而采样得到其中的数字水印的某个值ξ(t)将该值送入至统计检测函数中,该检测函数会输出一个检测结果当此过程循环迭代了T次,该T为重采样长度,则对该T次的检测结果进行整合返回一个整体检测显著水平。
算法5:函数
输入:大语言模型LLM;输入待检测文本;统计检测函数/>;数字水印密钥序列, 与ξ长度相同的随机分布v,分块大小k,增删操作成本γ,替换操作成本函数d0
输出:检测统计值
/* 定义距离度量函数 */
/* 计算最小距离 */
for i = 0, · · ·,len(Y)-k do
for j = 0, · · ·,len(ξ)-1 do
算法5中实现的文本-密钥最小距离度量,对于具有文本的增删改操作较好的鲁棒性,使得基于该距离对数字水印密钥的检测结果不易受到随机修改部分文本的影响。其中为编辑距离(Levenshtein cost)成本函数,y2:代表对于输入文本y从索引2开始到最后的文本内容,/>代表对于密钥序列/>,从第二位索引到最后的序列内容。/>为Y中的任意一个token,/>为ξ中的任意一位序列。算法5首先要计算文本与密钥的最小距离度量,该度量取三种算法当中的最小值。第一部分定义了文本密钥最小距离度量函数,第二部分就开始使用真实的待检测文本Y与用户密钥ξ循环寻找最小的文本密钥距离并且返回,作为此部分统计检测函数的统计值。
特别地,对于文本转述、改写导致原始文本内容变化较大时用户标识提取失败的情形,系统通过遍历数据库中的用户标识,以每一个用户标识取检测内容水印,基于内容水印的鲁棒性通过穷举的方式检测文本中存在的数字水印。
输入:待检测文本
输出:用户标识,检测结果
具体步骤如算法6所示:
算法6:鲁棒性内容水印检测
输入:大语言模型LLM;输入待检测文本;统计检测函数/>;重采样长度T,与数字水印密钥ξ长度相同的随机分布v,用户标识记录D(数字水印密钥库),检测显著性水平阈值p0
输出:检测显著性水平p-value
初始化为最大值,默认未检测出内容水印 */
for ξ in D do /* 遍历数据库中所有用户标识,将当前用户标识作为种子随机生成词表长度的序列作为数字水印密钥ξ */
for t = 0, · · ·,T do
ξ(t) ~v /* 依v分布进行随机采样 */
算法6针对机器生成的文本经过转述之后没有办法再提取出嵌入其中的用户标识的情形,这时候可以通过遍历系统数据库中所有的用户数据标识,如图3,对每一个用户都进行算法4、5的验证,一旦有某个用户标识可以检测出显著性水平达到某一阈值,则终止循环,输出该用户标识,以及该显著性水平,并且输出检测出内容水印,当前文本即为该用户标识的用户用大模型生成的文本内容。
以下给出一个具体样例,以便于直观地理解用户输入的提示前缀、常规生成的参考文本、嵌入区域的划分、嵌入完成后的文本(最终发布的文本)。
1.用户输入的提示前缀(指令),此部分对应着算法1中的X-p: −1
“请写一篇有关小明和仙人掌的小故事”;
2.常规生成的参考文本,即模型不进行水印添加时正常生成的文本内容:
“小明是一个喜欢冒险的小男孩,他住在一个美丽的小村庄。这个村庄四周环绕着高高的山脉,山上生长着各种各样的植物。有一天,小明在山上玩耍时,无意间发现了一片神秘的仙人掌林。这片仙人掌林里长满了各种形状和颜色的仙人掌,有的高有的矮,有的圆有的扁,五颜六色,非常漂亮。小明从未见过如此美丽的仙人掌,他决定要带一些回家种植。
小明挑选了一些最漂亮的仙人掌,小心翼翼地将它们挖出,带回了家。他找了一个空闲的花盆,将仙人掌种下。每天早晨,小明都会给仙人掌浇水,晚上还会给它们施肥。他希望这些仙人掌能够茁壮成长,开出美丽的花朵。然而,日子一天天过去,仙人掌却没有任何变化,依然只是一株普通的仙人掌。
小明感到非常困惑,他不明白为什么自己明明已经尽力照顾这些仙人掌,但它们却没有任何变化。于是,他决定去请教村里的老人家。老人家告诉他,仙人掌是一种非常特殊的植物,它们需要阳光、空气和水分,但更需要的是耐心和关爱。只有用心去呵护,仙人掌才会慢慢地成长,最终绽放出美丽的花朵。
听了老人家的话,小明恍然大悟。他明白了自己之前只是机械地给仙人掌浇水施肥,而没有真正地去关心它们。于是,他开始每天都和仙人掌说话,告诉它们自己的喜怒哀乐,还为它们唱歌、讲故事。渐渐地,小明发现自己和仙人掌之间建立起了一种奇妙的联系,仿佛他们之间有了一种特殊的默契。
终于有一天,当小明再次走进阳台时,他惊喜地发现仙人掌上竟然长出了一朵娇艳的花朵。这朵花朵犹如一颗璀璨的明珠,闪耀着耀眼的光芒。小明激动地跑进屋子,告诉家人这个好消息。从那以后,小明的仙人掌越长越好,不仅开出了更多的花朵,而且还结出了果实。小明和家人一起品尝了这些美味的果实,感受到了仙人掌带给他们的快乐和幸福”。
3.用户标识嵌入区域、内容水印嵌入区域的划分:
可简单依据段落进行划分,将前两段划分为用户标识嵌入区域,后三段划分为内容水印嵌入区域;
4.嵌入完成后的文本(最终发布的文本):
首先对用户标识嵌入区域进行重新生成,输入为“请写一篇有关小明和仙人掌的小故事”,即为算法1中的X-p: −1,并且进行加密用户标识嵌入,首先生成长度为M的前两段内容,此时记作XM(与前面的定义是一致的),此过程模型重新生成的结果例子如下:
“小明是一个热爱植物的小男孩,他住在一个繁华的城市里。然而,由于城市的高楼大厦遮挡了阳光,小明发现很难在家里种植一些需要充足阳光的植物。有一天,他在一家花店里看到了一种名叫仙人掌的植物,店主告诉他,仙人掌是一种非常耐旱、耐阴的植物,只需要很少的水和阳光就可以生长得很好。小明听后,决定买一盆仙人掌回家种植。
小明把仙人掌放在了阳台上,每天都会按时给它浇水、施肥。然而,过了一段时间后,小明发现仙人掌并没有长得很好,反而显得有些萎靡不振。他开始担心仙人掌是不是生病了,于是决定去请教一下花店的老板。老板告诉他,仙人掌是一种特殊的植物,它的生长速度非常慢,而且不需要太多的水和肥料。小明这才恍然大悟,原来自己之前的做法是错误的”。
X-p: M就是将用户指令X-p: −1与加密用户标识嵌入部分生成的XM进行拼接,对应的结果如下:
“请写一篇有关小明和仙人掌的小故事:《小明是一个热爱植物的小男孩,他住在一个繁华的城市里。然而,由于城市的高楼大厦遮挡了阳光,小明发现很难在家里种植一些需要充足阳光的植物。有一天,他在一家花店里看到了一种名叫仙人掌的植物,店主告诉他,仙人掌是一种非常耐旱、耐阴的植物,只需要很少的水和阳光就可以生长得很好。小明听后,决定买一盆仙人掌回家种植。
小明把仙人掌放在了阳台上,每天都会按时给它浇水、施肥。然而,过了一段时间后,小明发现仙人掌并没有长得很好,反而显得有些萎靡不振。他开始担心仙人掌是不是生病了,于是决定去请教一下花店的老板。老板告诉他,仙人掌是一种特殊的植物,它的生长速度非常慢,而且不需要太多的水和肥料。小明这才恍然大悟,原来自己之前的做法是错误的”。
接着继续生成内容水印嵌入部分的内容,将上述X-p: M将当作此部分输入,依据算法2进行内容水印嵌入,从而生成后面三段的内容。假如此部分生成长度为N,此部分内容记作XN,则此例中XN为:
“回到家后,小明开始按照老板的建议来照顾仙人掌。他减少了给仙人掌浇水的次数,也不再给它施肥。渐渐地,小明发现仙人掌开始慢慢恢复了生机,它的叶子变得绿油油的,而且还长出了一些小芽。小明非常高兴,他知道自己的努力没有白费。
随着时间的推移,仙人掌越长越大,它的茎上还长出了许多小刺。小明觉得这些小刺非常有趣,他开始研究仙人掌的生长习性。他发现,仙人掌的小刺其实是一种自我保护的机制,它们可以防止动物啃食仙人掌的茎。小明觉得大自然真是神奇,竟然能创造出这么有趣的植物。
经过一段时间的照顾,小明的仙人掌已经长得非常高大,它的茎上长满了小刺,看起来非常健康。小明非常喜欢这盆仙人掌,他觉得它就像自己的一个朋友,陪伴着自己度过了许多快乐的时光。他还把仙人掌的生长过程记录在了日记里,希望以后还能和更多的人分享这个有趣的故事”。
最后将生成的经过水印嵌入的文本XM和XN进行拼接得到,即为嵌入完成后最终发布的文本,如下:
“小明是一个热爱植物的小男孩,他住在一个繁华的城市里。然而,由于城市的高楼大厦遮挡了阳光,小明发现很难在家里种植一些需要充足阳光的植物。有一天,他在一家花店里看到了一种名叫仙人掌的植物,店主告诉他,仙人掌是一种非常耐旱、耐阴的植物,只需要很少的水和阳光就可以生长得很好。小明听后,决定买一盆仙人掌回家种植。
小明把仙人掌放在了阳台上,每天都会按时给它浇水、施肥。然而,过了一段时间后,小明发现仙人掌并没有长得很好,反而显得有些萎靡不振。他开始担心仙人掌是不是生病了,于是决定去请教一下花店的老板。老板告诉他,仙人掌是一种特殊的植物,它的生长速度非常慢,而且不需要太多的水和肥料。小明这才恍然大悟,原来自己之前的做法是错误的。
回到家后,小明开始按照老板的建议来照顾仙人掌。他减少了给仙人掌浇水的次数,也不再给它施肥。渐渐地,小明发现仙人掌开始慢慢恢复了生机,它的叶子变得绿油油的,而且还长出了一些小芽。小明非常高兴,他知道自己的努力没有白费。
随着时间的推移,仙人掌越长越大,它的茎上还长出了许多小刺。小明觉得这些小刺非常有趣,他开始研究仙人掌的生长习性。他发现,仙人掌的小刺其实是一种自我保护的机制,它们可以防止动物啃食仙人掌的茎。小明觉得大自然真是神奇,竟然能创造出这么有趣的植物。
经过一段时间的照顾,小明的仙人掌已经长得非常高大,它的茎上长满了小刺,看起来非常健康。小明非常喜欢这盆仙人掌,他觉得它就像自己的一个朋友,陪伴着自己度过了许多快乐的时光。他还把仙人掌的生长过程记录在了日记里,希望以后还能和更多的人分享这个有趣的故事”。
本实施例以大语言模型为基础,利用公钥系统进行用户标识加密,通过多比特位消息水印嵌入技术,在机器生成文本中嵌入加密用户标识和水印信息。以用户标识为密钥,在不改变原有模型文本生成质量的同时,实现了无损内容水印嵌入。系统设计的配套检测工具,实现对机器生成文本中用户标识进行提取,对隐蔽数字水印嵌入进行精准检测,达到了文本数字水印嵌入检测和溯源的双重目标。
该大模型嵌入水印以及检测水印的方法,能够从源头上控制机器生成文本的检测和溯源,定位内容来源、追踪传播轨迹,有效防止文本的恶意生成、传播和滥用,为相关部门对文本来源和传播的监管提供了一种可行且有效的方案。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,该计算机设备通过加载运行计算机程序以实现上述在大语言模型生成文本中嵌入及检测数字水印的方法。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

Claims (8)

1.一种在大语言模型生成文本中嵌入数字水印的方法,其特征在于,包括:
参考文本生成:根据用户输入,利用大语言模型生成面向领域任务的机器文本,记为参考文本;对所述参考文本划分标识水印嵌入范围和内容水印嵌入范围,分别记为第一文本段和第二文本段;
加密标识嵌入:基于公钥系统,使用私钥对用户唯一标识进行加密并嵌入到所述第一文本段内,同时将所述用户唯一标识记录到数据库;
内容水印嵌入:以所述用户唯一标识为密钥,将内容数字水印嵌入到所述第二文本段内;
内容发布:将经过加密标识嵌入和内容水印嵌入后的整个文本输出给用户;
所述加密标识嵌入,具体包括:
使用私钥对用户唯一标识ID进行加密,得到加密的用户标识SIDr;
将原词表V进行随机打乱得到词表Vt,依据加密的用户标识SIDr对打乱后的词表Vt分区,并且令其中的一个分区中的词表概率增加,经过归一化之后,得到一个新的词表概率分布/>,根据当前的词表概率分布进行采样,记为当前时间t的生成字符Xt;当前时间t的采样过程结束,进入到下一时间t+1的采样过程;
经过不断的循环迭代,直至生成到第一文本段结束。
2.根据权利要求1所述的在大语言模型生成文本中嵌入数字水印的方法,其特征在于,在加密标识嵌入环节,同时将所述用户唯一标识、参考文本的生成时间、参考文本记录到数据库。
3.根据权利要求1所述的在大语言模型生成文本中嵌入数字水印的方法,其特征在于,对所述参考文本划分标识水印嵌入范围和内容水印嵌入范围,具体是:
根据不同文本段落的重要程度,重要部分作为内容水印嵌入范围,其余部分作为标识水印嵌入范围;
或者,采用文本前后顺序进行划分,前面部分作为标识水印嵌入范围,后面部分作为内容水印嵌入范围。
4.根据权利要求1所述的在大语言模型生成文本中嵌入数字水印的方法,其特征在于,所述内容水印嵌入,具体包括:
使用用户唯一标识ID作为种子随机生成与大语言模型词表长度相同的数字序列,作为数字水印密钥序列;
将用户输入的提示前缀X-p: −1以及嵌入加密标识的第一文本段拼接在一起得到X-p: M,重新输入大语言模型,继续让大语言模型生成第二文本段,使生成的概率分布受到所述数字水印密钥序列的影响,从而将内容数字水印添加进第二文本段内。
5.一种在大语言模型生成文本中检测数字水印的方法,其特征在于,包括:
获取经权利要求1所述在大语言模型生成文本中嵌入数字水印的方法得到的文本,记为待检测文本;
利用私钥将用户唯一标识从待检测文本中提取出来,根据该用户唯一标识实现溯源;
用户唯一标识为密钥对待检测文本进行内容数字水印检测验证。
6.根据权利要求5所述的在大语言模型生成文本中检测数字水印的方法,其特征在于,若对于待检测文本,无法提取出目标用户唯一标识,则遍历系统数据库中所有用户的用户唯一标识,通过穷举的方式以每一个用户唯一标识取待检测文本中存在的内容数字水印;直到某个用户唯一标识可以检测出显著性水平达到设定阈值,则终止循环,输出该用户唯一标识及其显著性水平,并且输出检测得到的内容数据水印,判定待检测文本为该用户唯一标识所属用户用大语言模型生成的文本。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述在大语言模型生成文本中嵌入数字水印的方法。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求5或6所述在大语言模型生成文本中检测数字水印的方法。
CN202311572980.8A 2023-11-23 2023-11-23 一种在大语言模型生成文本中嵌入及检测数字水印的方法 Active CN117272253B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311572980.8A CN117272253B (zh) 2023-11-23 2023-11-23 一种在大语言模型生成文本中嵌入及检测数字水印的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311572980.8A CN117272253B (zh) 2023-11-23 2023-11-23 一种在大语言模型生成文本中嵌入及检测数字水印的方法

Publications (2)

Publication Number Publication Date
CN117272253A CN117272253A (zh) 2023-12-22
CN117272253B true CN117272253B (zh) 2024-02-23

Family

ID=89218278

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311572980.8A Active CN117272253B (zh) 2023-11-23 2023-11-23 一种在大语言模型生成文本中嵌入及检测数字水印的方法

Country Status (1)

Country Link
CN (1) CN117272253B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118608367B (zh) * 2024-08-07 2024-10-18 浙江大学 一种针对大模型生成文本的水印嵌入、检测方法及装置
CN118656810A (zh) * 2024-08-19 2024-09-17 北京天数智芯半导体科技有限公司 文本水印检测和水印添加方法、程序产品、设备及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1812541A (zh) * 2005-12-27 2006-08-02 浪潮电子信息产业股份有限公司 一种视频节目的数字版权和数字水印保护方法
CN102760221A (zh) * 2011-04-27 2012-10-31 航天信息股份有限公司 基于数字水印和加密的iptv数字版权管理方法及装置
US8345876B1 (en) * 2012-03-06 2013-01-01 Robert Samuel Sinn Encryption/decryption system and method
CN103186731A (zh) * 2011-12-29 2013-07-03 北京中文在线数字出版股份有限公司 一种混合方式的数字版权保护方法和系统
CN114462018A (zh) * 2022-01-10 2022-05-10 电子科技大学 一种基于Transformer模型和深度强化学习的密码猜测系统及方法
CN114925658A (zh) * 2022-05-18 2022-08-19 电子科技大学 开放性文本生成方法以及存储介质
CN115982675A (zh) * 2023-01-12 2023-04-18 北京百度网讯科技有限公司 文档处理方法、装置、电子设备以及存储介质
CN116346336A (zh) * 2023-03-22 2023-06-27 华中科技大学 一种基于多层密钥生成中心的密钥分发方法及相关系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1812541A (zh) * 2005-12-27 2006-08-02 浪潮电子信息产业股份有限公司 一种视频节目的数字版权和数字水印保护方法
CN102760221A (zh) * 2011-04-27 2012-10-31 航天信息股份有限公司 基于数字水印和加密的iptv数字版权管理方法及装置
CN103186731A (zh) * 2011-12-29 2013-07-03 北京中文在线数字出版股份有限公司 一种混合方式的数字版权保护方法和系统
US8345876B1 (en) * 2012-03-06 2013-01-01 Robert Samuel Sinn Encryption/decryption system and method
CN114462018A (zh) * 2022-01-10 2022-05-10 电子科技大学 一种基于Transformer模型和深度强化学习的密码猜测系统及方法
CN114925658A (zh) * 2022-05-18 2022-08-19 电子科技大学 开放性文本生成方法以及存储介质
CN115982675A (zh) * 2023-01-12 2023-04-18 北京百度网讯科技有限公司 文档处理方法、装置、电子设备以及存储介质
CN116346336A (zh) * 2023-03-22 2023-06-27 华中科技大学 一种基于多层密钥生成中心的密钥分发方法及相关系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NAZIR A. LOAN等.Secure and Robust Digital Image Watermarking Using Coefficient Differencing and Chaotic Encryption.《IEEE ACCESS》.2018, *

Also Published As

Publication number Publication date
CN117272253A (zh) 2023-12-22

Similar Documents

Publication Publication Date Title
CN117272253B (zh) 一种在大语言模型生成文本中嵌入及检测数字水印的方法
CN104573028B (zh) 实现智能问答的方法和系统
Haight et al. Optimizing any-aged management of mixed-species stands: II. Effects of decision criteria
Shehab et al. Watermarking relational databases using optimization-based techniques
Morfi et al. Few-Shot Bioacoustic Event Detection: A New Task at the DCASE 2021 Challenge.
CN110019216B (zh) 基于区块链的知识产权数据存储方法、介质及计算机设备
CN107181797A (zh) 一种区块链的区块压缩方法和系统
CN109522416A (zh) 一种金融风险控制知识图谱的构建方法
CN110210016A (zh) 基于风格引导的双线性神经网络虚假新闻检测方法及系统
CN109886021A (zh) 一种基于api全局词向量和分层循环神经网络的恶意代码检测方法
CN113032001B (zh) 一种智能合约分类方法及装置
CN104794223B (zh) 一种基于图像检索的字幕匹配方法和系统
CN105446955A (zh) 一种自适应的分词方法
CN107992466A (zh) 一种基于句式控制的宋词载体文本信息隐藏方法、系统
CN111524214B (zh) 一种植被生物群落的制作方法及装置
CN108595975A (zh) 一种基于近重复图像检索的无载体信息隐藏方法
Wikström A solution method for uneven-aged management applied to Norway spruce
Dye Social transformation in old Hawai'i: a bottom-up approach
CN113312058B (zh) 一种智能合约二进制函数的相似性分析方法
CN106803047A (zh) 数据库水印标记方法
CN108717445A (zh) 一种基于历史数据的在线社交平台用户兴趣推荐方法
Kavasidis et al. Generation of ground truth for object detection while playing an online game: Productive gaming or recreational working?
CN108595618A (zh) 一种自动生成主题报告的大数据平台
CN108170657A (zh) 一种自然语言长文本生成方法
CN109101806A (zh) 一种基于风格迁移的隐私人像数据标注方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: No. 401-1, 4th floor, podium, building 3 and 4, No. 11, Changchun Bridge Road, Haidian District, Beijing 100089

Patentee after: Beijing Xinghe Zhiyuan Technology Co.,Ltd.

Country or region after: China

Patentee after: Zhiguagua (Tianjin) Big Data Technology Co.,Ltd.

Address before: No. 401-1, 4th floor, podium, building 3 and 4, No. 11, Changchun Bridge Road, Haidian District, Beijing 100089

Patentee before: Beijing Zhiguagua Technology Co.,Ltd.

Country or region before: China

Patentee before: Zhiguagua (Tianjin) Big Data Technology Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240507

Address after: No. 401-1, 4th floor, podium, building 3 and 4, No. 11, Changchun Bridge Road, Haidian District, Beijing 100089

Patentee after: Beijing Xinghe Zhiyuan Technology Co.,Ltd.

Country or region after: China

Address before: No. 401-1, 4th floor, podium, building 3 and 4, No. 11, Changchun Bridge Road, Haidian District, Beijing 100089

Patentee before: Beijing Xinghe Zhiyuan Technology Co.,Ltd.

Country or region before: China

Patentee before: Zhiguagua (Tianjin) Big Data Technology Co.,Ltd.