CN110188620A - 对抗测试看图说话系统的方法和相关装置 - Google Patents
对抗测试看图说话系统的方法和相关装置 Download PDFInfo
- Publication number
- CN110188620A CN110188620A CN201910381831.0A CN201910381831A CN110188620A CN 110188620 A CN110188620 A CN 110188620A CN 201910381831 A CN201910381831 A CN 201910381831A CN 110188620 A CN110188620 A CN 110188620A
- Authority
- CN
- China
- Prior art keywords
- words
- combination
- picture
- predetermined
- observation
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 191
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000012795 verification Methods 0.000 claims description 185
- 230000006870 function Effects 0.000 claims description 114
- 230000003042 antagnostic effect Effects 0.000 claims description 44
- 230000000694 effects Effects 0.000 claims description 31
- 238000012935 Averaging Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 10
- 230000004083 survival effect Effects 0.000 abstract 3
- 238000010276 construction Methods 0.000 abstract 1
- 238000012549 training Methods 0.000 description 31
- 238000013527 convolutional neural network Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000012163 sequencing technique Methods 0.000 description 4
- 238000010998 test method Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 241000287196 Asthenes Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000005018 casein Substances 0.000 description 1
- BECPQYXYKAMYBN-UHFFFAOYSA-N casein, tech. Chemical compound NCCCCC(C(O)=O)N=C(O)C(CC(O)=O)N=C(O)C(CCC(O)=N)N=C(O)C(CC(C)C)N=C(O)C(CCC(O)=O)N=C(O)C(CC(O)=O)N=C(O)C(CCC(O)=O)N=C(O)C(C(C)O)N=C(O)C(CCC(O)=N)N=C(O)C(CCC(O)=N)N=C(O)C(CCC(O)=N)N=C(O)C(CCC(O)=O)N=C(O)C(CCC(O)=O)N=C(O)C(COP(O)(O)=O)N=C(O)C(CCC(O)=N)N=C(O)C(N)CC1=CC=CC=C1 BECPQYXYKAMYBN-UHFFFAOYSA-N 0.000 description 1
- 235000021240 caseins Nutrition 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- XDDAORKBJWWYJS-UHFFFAOYSA-N glyphosate Chemical compound OC(=O)CNCP(O)(O)=O XDDAORKBJWWYJS-UHFFFAOYSA-N 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Machine Translation (AREA)
Abstract
本公开提供了一种对抗测试看图说话系统的方法及相关装置。该方法包括:构造目标函数;对所述目标函数中具有求最大值符号的算项,指定对抗噪声,基于所述对抗噪声,确定具有求最大值符号的算项最大时算项中的未知变量值,将所述目标函数中所述具有求最大值符号的算项去最大值符号后的部分作为剩余函数,将求出的未知变量值代入所述剩余函数中求解使剩余函数值最小时的对抗噪声,替代之前指定的对抗噪声,反复迭代;将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识别的图片上。本公开实施例不但能够使看图说话系统生成的图像描述语句含有指定的词,还能够指定这些词出现的位置,即在指定的位置出现指定的词。
Description
技术领域
本公开涉及看图说话领域,具体涉及一种对抗测试看图说话系统的方 法、装置、对抗测试组件和介质。
背景技术
看图说话系统是这样一种系统,它利用机器学习的原理,当将图片输 入到该系统后,该系统就会识别图片的内容,输出解说图的语句,或说出 解说图的话。看图说话系统对于人工智能机器人解析图片和视频等具有重 大的意义。对抗测试看图说话系统是指对看图说话系统要识别的图片加噪 声,干扰看图说话系统的识别,使之输出与图片内容不符的解析语句或语 音,甚至让其解析出对抗测试者想要其输出的语句或语音,以此分析看图说话系统对抗各种干扰的性能,在后续过程中进行改进。
目前,对抗测试看图说话系统的技术只有Show-And-Fool。这种技术提 供了两种类型的对抗测试,分别是对整句话的对抗测试(targeted captions)和针对句子中关键词的对抗测试(targeted keywords)。 Show-And-Fool对句子中关键词对抗测试仅仅是要求生成的图像描述语句 中含有指定的关键词,但是无法指定其出现的位置。
发明内容
本公开的一个目的在于提出一种对抗测试看图说话系统的方法、装置、 对抗测试组件和介质,它不但能够使看图说话系统生成的图像描述语句含 有指定的词,还能够指定这些词出现的位置,即在指定的位置出现指定的 词。
根据本公开实施例的一方面,公开了一种对抗测试看图说话系统的方 法,所述方法包括:
构造目标函数,所述目标函数基于第一对数和第二对数的差,所述第 一对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声时,所 述看图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组 合的概率的对数,所述第二对数是给定在看图说话系统要识别的图片上将 要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的 词的组合不为预定观测词组合的概率的对数;
对所述目标函数中具有求最大值符号的算项,指定对抗噪声,基于所 述对抗噪声,确定具有求最大值符号的算项最大时算项中的未知变量值, 将所述目标函数中所述具有求最大值符号的算项去最大值符号后的部分作 为剩余函数,将求出的未知变量值代入所述剩余函数中求解使剩余函数值 最小时的对抗噪声,替代之前指定的对抗噪声,进行下一轮迭代,直至满 足迭代终止条件;
将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识别的图片 上,以期望所述看图说话系统识别出的语句的预定观测位置出现指定的词。
在一个实施例中,所述目标函数为所述对抗噪声的二范数的平方的预 定比例,减去给定将要叠加的对抗噪声时所述看图说话系统输出语句在预 定观测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输 出语句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数 在非预定观测位置出现的不同词组合下的最大值,加上给定将要叠加的对 抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为 预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现 的词组合不是各不同词组合的联合概率的对数与松弛变量的和在预定观测 位置出现的不同词组合和在非预定观测位置出现的不同词组合下的最大 值,所述松弛变量等于预定正常数乘以预定倍数,其中,所述预定倍数等 于所述看图说话系统输出语句在预定观测位置出现的词的组合中的词与预 定观测词组合对应位置中的词不同的数目。
在一个实施例中,所述确定具有求最大值符号的算项最大时算项中的 未知变量值,包括:
对于给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观 测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输出语 句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数在非 预定观测位置出现的不同词组合下的最大值这样一个具有求最大值符号的 算项,确定该联合概率最大时所述看图说话系统输出语句在非预定观测位 置出现的词组合,作为所述未知变量值;
对于给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观 测位置出现的词的组合不为预定观测词组合、以及所述看图说话系统输出 语句在非预定观测位置出现的词组合不是各不同词组合的联合概率的对数 与松弛变量的和的最大值这样一个具有求最大值符号的算项,确定该和最 大时所述看图说话系统输出语句在预定观测位置出现的词的组合、以及所 述看图说话系统输出语句在非预定观测位置出现的词组合,作为所述未知 变量值。
在该实施例中,所述去最大值符号包括:
在所述目标函数中,将所述联合概率的对数在非预定观测位置出现的 不同词组合下的最大值,替换成给定将要叠加的对抗噪声时所述看图说话 系统输出语句在预定观测位置出现的词的组合为预定观测词组合、以及所 述看图说话系统输出语句在非预定观测位置出现的词组合是确定的该联合 概率最大时所述看图说话系统输出语句在非预定观测位置出现的词组合的 联合概率的对数;
在所述目标函数中,将所述和在预定观测位置出现的不同词组合和在 非预定观测位置出现的不同词组合下的最大值,替换成给定将要叠加的对 抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为 该和最大时所述看图说话系统输出语句在预定观测位置出现的词的组合、 以及所述看图说话系统输出语句在非预定观测位置出现的词组合不是该和 最大时所述看图说话系统输出语句在非预定观测位置出现的词组合的联合 概率,替换后的目标函数作为剩余函数。
在一个实施例中,所述迭代终止条件包括以下中的至少一个条件:
当前轮迭代中解出的对抗噪声与上一轮迭代中解出的对抗噪声的差值 绝对值小于预定对抗噪声差值绝对值阈值;
当前轮迭代中确定的所述未知变量值与上一轮迭代中确定的所述未知 变量值一致。
在一个实施例中,在构造目标函数之前,所述方法还包括:
从看图说话系统的验证图片集中取出多个对抗测试对象图片;
对于每个对抗测试对象图片,在所述验证图片集中选取混淆依据图片;
在混淆依据图片对应的语句上的预定观测位置上取词,取出的词的组 合作为预定观测词组合,取出的对抗测试对象图片作为看图说话系统要识 别的图片;
在将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识别的图 片上,以期望所述看图说话系统识别出的语句的预定观测位置出现指定的 词之后,所述方法还包括:
将从所述看图说话系统输出的语句的预定观测位置上提取的词的组合 与所述预定观测词组合进行比对,获得验证指标;
利用所述多个对抗测试对象图片的所述验证指标,验证对抗测试看图 说话系统的效果。
在一个实施例中,所述验证指标是命中率,其中,如果从所述看图说 话系统输出的语句的预定观测位置上提取的词的组合与所述预定观测词组 合相同,则命中率=1;反之,则命中率=0;所述利用所述多个对抗测试对 象图片的所述验证指标,验证对抗测试看图说话系统的效果,包括:将所 述多个对抗测试对象图片的命中率取平均,得到平均命中率,如果平均命 中率大于预定平均命中率阈值,则验证成功。
在一个实施例中,所述如果平均命中率大于预定平均命中率阈值,则 验证成功,包括:
如果平均命中率大于预定平均命中率阈值,获取叠加在所述多个对抗 测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均 值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
在一个实施例中,所述验证指标是精准率,其中,所述精准率为从所 述看图说话系统输出的语句的预定观测位置上提取的词与所述预定观测词 组合中相应位置上的词相同的个数除以从所述看图说话系统输出的语句的 预定观测位置上提取的词的总数;所述利用所述多个对抗测试对象图片的 所述验证指标,验证对抗测试看图说话系统的效果,包括:将所述多个对 抗测试对象图片的精准率取平均,得到平均精准率,如果平均精准率大于 预定平均精准率阈值,则验证成功。
在一个实施例中,所述如果平均精准率大于预定平均精准率阈值,则 验证成功,包括:
如果平均精准率大于预定平均精准率阈值,获取叠加在所述多个对抗 测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均 值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
在一个实施例中,所述验证指标是召回率,其中,所述召回率为从所 述看图说话系统输出的语句的预定观测位置上提取的词与所述预定观测词 组合中相应位置上的词相同的个数除以述预定观测词组合的词总数;所述 利用所述多个对抗测试对象图片的所述验证指标,验证对抗测试看图说话 系统的效果,包括:将所述多个对抗测试对象图片的召回率取平均,得到 平均召回率,如果平均召回率大于预定平均召回率阈值,则验证成功。
在一个实施例中,所述如果平均召回率大于预定平均召回率阈值,则 验证成功,包括:
如果平均召回率大于预定平均召回率阈值,获取叠加在所述多个对抗 测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均 值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
在一个实施例中,所述在混淆依据图片对应的语句上的预定观测位置 上取词,取出的词的组合作为预定观测词组合,包括:
在混淆依据图片对应的语句上分别取预定的不同数目个观测位置上的 词,分别形成第一多个预定观测词组合;
在混淆依据图片对应的语句上分别取预定的不同数目个非观测位置以 外的位置上的词,分别形成第二多个预定观测词组合;
所述将从所述看图说话系统输出的语句的预定观测位置上提取的词的 组合与所述预定观测词组合进行比对,获得验证指标,包括:
将从所述看图说话系统输出的语句的预定的不同数目个观测位置上提 取的词的组合与所述第一多个预定观测词组合中相应的观测词组合进行比 对,获得多个第一验证指标;
将从所述看图说话系统输出的语句的预定的不同数目个非观测位置以 外的位置上提取的词的组合与所述第二多个预定观测词组合中相应的观测 词组合进行比对,获得多个第二验证指标;
在将从所述看图说话系统输出的语句的预定观测位置上提取的词的组 合与所述预定观测词组合进行比对,获得验证指标之后,所述方法还包括:
基于所述多个第一验证指标和对应的观测位置数目,确定所述验证指 标随观测位置数目的变化关系;
基于所述多个第二验证指标和对应的非观测位置数目,确定所述验证 指标随非观测位置数目的变化关系。
在一个实施例中,所述预定比例是多个预定比例;所述构造概率对数 函数,包括:分别构造在所述多个预定比例下各自的概率对数函数;所述 将从所述看图说话系统输出的语句的预定观测位置上提取的词的组合与所 述预定观测词组合进行比对,获得验证指标,包括:将从所述多个预定比 例中的每一个预定比例下看图说话系统输出的语句的预定观测位置上提取 的词的组合与所述预定观测词组合进行比对,分别获得在多个预定比例下 各自的验证指标;在将从所述看图说话系统输出的语句的预定观测位置上 提取的词的组合与所述预定观测词组合进行比对,获得验证指标之后,所 述方法还包括:基于所述多个预定比例和在所述多个预定比例下各自的验 证指标,确定所述验证指标随预定比例的变化关系。
在一个实施例中,所述预定正常数是多个预定正常数;所述构造概率 对数函数,包括:分别构造在所述多个预定正常数下各自的概率对数函数; 所述将从所述看图说话系统输出的语句的预定观测位置上提取的词的组合 与所述预定观测词组合进行比对,获得验证指标,包括:将从所述多个预 定正常数中的每一个预定正常数下看图说话系统输出的语句的预定观测位 置上提取的词的组合与所述预定观测词组合进行比对,分别获得在多个预 定正常数下各自的验证指标;在将从所述看图说话系统输出的语句的预定 观测位置上提取的词的组合与所述预定观测词组合进行比对,获得验证指 标之后,所述方法还包括:基于所述多个预定正常数和在所述多个预定正 常数下各自的验证指标,确定所述验证指标随预定正常数的变化关系。
在一个实施例中,所述看图说话系统是多个看图说话系统;所述构造 概率对数函数,包括:针对所述多个看图说话系统分别构造与每个看图说 话系统对应的概率对数函数;所述将从所述看图说话系统输出的语句的预 定观测位置上提取的词的组合与所述预定观测词组合进行比对,获得验证 指标,包括:将从所述多个看图说话系统中每一个看图说话系统输出的语 句的预定观测位置上提取的词的组合与所述预定观测词组合进行分别比 对,获得与每个看图说话系统对应的验证指标;在将从所述看图说话系统 输出的语句的预定观测位置上提取的词的组合与所述预定观测词组合进行 比对,获得验证指标之后,所述方法还包括:基于与每个看图说话系统对 应的验证指标,对各看图说话系统进行排序。
在一个实施例中,所述在混淆依据图片对应的语句上的预定观测位置 上取词,取出的词的组合作为预定观测词组合,包括:在混淆依据图片对 应的语句上取词序的倒序上不同顺序的词以外的其它词,取出的词的组合 作为与不同顺序对应的预定观测词组合;所述将从所述看图说话系统输出 的语句的预定观测位置上提取的词的组合与所述预定观测词组合进行比 对,获得验证指标,包括:将从所述看图说话系统输出的语句的取词序的 倒序上不同顺序的词以外的其它词得到的词的组合与所述预定观测词组合 进行比对,获得与不同顺序对应的验证指标;在将从所述看图说话系统输 出的语句的预定观测位置上提取的词的组合与所述预定观测词组合进行比 对,获得验证指标之后,所述方法还包括:基于所述不同顺序和与不同顺 序对应的验证指标,确定所述验证指标随所述顺序的变化关系。
根据本公开实施例的一方面,提供了一种对抗测试看图说话系统的装 置,所述方法包括:
目标函数构造单元,用于构造目标函数,所述目标函数基于第一对数 和第二对数的差,所述第一对数是给定在看图说话系统要识别的图片上将 要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的 词的组合为预定观测词组合的概率的对数,所述第二对数是给定在看图说 话系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出语 句在预定观测位置出现的词的组合不为预定观测词组合的概率的对数;
迭代单元,用于对所述目标函数中具有求最大值符号的算项,指定对 抗噪声,基于所述对抗噪声,确定具有求最大值符号的算项最大时算项中 的未知变量值,将所述目标函数中所述具有求最大值符号的算项去最大值 符号后的部分作为剩余函数,将求出的未知变量值代入所述剩余函数中求 解使剩余函数值最小时的对抗噪声,替代之前指定的对抗噪声,进行下一 轮迭代,直至满足迭代终止条件;
对抗噪声施加单元,用于将迭代终止后得到的对抗噪声叠加到所述看 图说话系统要识别的图片上,以期望所述看图说话系统识别出的语句的预 定观测位置出现指定的词。
根据本公开实施例的一方面,公开了一种对抗测试组件,包括:存储 器,存储有计算机可读指令;处理器,读取存储器存储的计算机可读指令, 以执行如上所述的方法。
根据本公开实施例的一方面,公开了一种计算机程序介质,其上存储 有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使 计算机执行如上所述的方法。
本公开实施例中,是要找到要叠加在看图说话系统要识别的图片上 的对抗噪声,使所述看图说话系统识别出的语句的预定观测位置出现指定 的词。本公开实施例构造了一种目标函数,所述目标函数基于第一对数和 第二对数的差,所述第一对数是给定在看图说话系统要识别的图片上将要 叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词 的组合为预定观测词组合的概率的对数,所述第二对数是给定在看图说话 系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出语句 在预定观测位置出现的词的组合不为预定观测词组合的概率的对数。如果 找到合适的对抗噪声,给定在看图说话系统要识别的图片上将要叠加的对 抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词的组合为 预定观测词组合的概率与给定在看图说话系统要识别的图片上将要叠加的 对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词的组合 不为预定观测词组合的概率应该非常大,第一对数与第二对数的差也应该 非常大。因此,找到要叠加在看图说话系统要识别的图片上的对抗噪声, 转化为了求目标函数为最大值的对抗噪声问题。为了求目标函数为最大 值时的对抗噪声,本公开实施例针对所述目标函数中具有求最大值符号的 算项,将所述目标函数中所述具有求最大值符号的算项去最大值符号后的 部分作为剩余函数,对所述算项指定对抗噪声,求出该算项最大时算项中的未知变量值,再代入所述剩余函数中求解使剩余函数值最小时的对抗噪 声,替代之前指定的对抗噪声,这样反复在求最大值符号的算项和剩余函 数之间进行迭代,从而得到对抗测试所用的对抗噪声,达到使所述看图说 话系统识别出的语句的预定观测位置出现指定的词的目的。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地 通过本公开的实践而习得。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并 不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特 征及优点将变得更加显而易见。
图1示出了根据本公开一个实施例的对抗测试看图说话系统的方法应 用的体系构架图。
图2A-F示出了根据本公开一个实施例的对抗测试看图说话系统的方法 应用在对Show-Attend-and-Tell(SAT)看图说话系统进行对抗测试的具体 场景下出现的界面图。
图3示出了根据本公开一个实施例的对抗测试看图说话系统的方法的 流程图。
图4示出了根据本公开一个实施例的对抗测试看图说话系统的方法的 流程图。
图5示出了看图说话系统的通用结构图。
图6A示出了根据本公开一个实施例的对对抗噪声和联合概率最大时所 述看图说话系统输出语句在非预定观测位置出现的词组合进行迭代求解的 流程图。
图6B示出了根据本公开一个实施例的对对抗噪声以及所述和最大时所 述看图说话系统输出语句在预定观测位置出现的词的组合、和所述看图说 话系统输出语句在非预定观测位置出现的词的组合进行迭代求解的流程 图。
图7A-B示出了根据本公开一个实施例的对Show-Attend-and-Tell(SAT) 看图说话系统进行对抗测试的效果展示对比图。
图8A示出了根据本公开一个实施例的命中数量、平均命中率随观测词 在看图说话系统输出的话中的顺序而变化的曲线图。
图8B示出了根据本公开一个实施例的在看图说话系统输出的整句话都 是观测词时,命中数量、平均命中率随整句话的词数而变化的曲线图。
图9示出了根据本公开一个实施例的对抗测试看图说话系统的装置的 框图。
图10示出了根据本公开一个实施例的对抗测试组件的硬件结构图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能 够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这 些示例实施方式使得本公开的描述将更加全面和完整,并将示例实施方式 的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解, 并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因 而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个 或更多示例实施方式中。在下面的描述中,提供许多具体细节从而给出对 本公开的示例实施方式的充分理解。然而,本领域技术人员将意识到,可 以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以 采用其它的方法、组元、步骤等。在其它情况下,不详细示出或描述公知 结构、方法、实现或者操作以避免喧宾夺主而使得本公开的各方面变得模 糊。
附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独 立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多 个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器 装置和/或微控制器装置中实现这些功能实体。
下面先参照图1描述一下本公开实施例所应用的体系构架。
如图1所示,根据本公开实施例的对抗测试看图说话系统的方法所应用 的体系构架包括对抗测试组件101和看图说话系统102。
看图说话系统102的定义在背景技术中已讨论。看图说话系统102可以 是一个单独的硬件设备,例如笔记本电脑、桌面电脑、车载终端、PDA、电 视终端、机器人终端等各种形式的终端或服务器,也可以作为云上的一个 节点,如一台云服务器。另外,看图说话系统102也可以由硬件设备上的一 部分实现,例如通过虚拟机的形式将一部分硬件设备上的资源划分给看图 说话系统102,其它资源留给其它用途。它也可以作为云服务器上的一部分功能实现。
对抗测试组件101是看图说话系统102的前置组件,是实现本公开实施 例的对抗测试看图说话系统的方法的主体。按照本公开实施例的对抗测试 看图说话系统的方法,开发该对抗测试组件101后,拦截待识别图片,放进 本公开实施例的对抗测试组件,由本公开实施例的对抗测试组件叠加对抗 噪声后,输入看图说话系统102,使所述看图说话系统识别出的语句的预定 观测位置出现指定的词。对抗测试组件101也可以是一个单独的硬件设备, 例如笔记本电脑、桌面电脑、车载终端、PDA、电视终端、机器人终端等各 种形式的终端。另外,对抗测试组件101也可以由硬件设备上的一部分实现, 例如通过虚拟机的形式将一部分硬件设备上的资源划分给对抗测试组件 101,其它资源留给其它用途。在一个实施例中,对抗测试组件101、看图 说话系统102可以存在于一个硬件设备中,例如是同一硬件设备中的两台虚 拟机。
图5示出了通用的看图说话系统的原理构架图。目前通用的看图说话系 统一般都是CNN+RNN的串联结构。CNN即卷积神经网络(Convolutional Neural Network),是一类包含卷积计算且具有深度结构的前馈神经网络, 是深度学习的代表算法之一。RNN即循环神经网络,它是根据"人的认知是 基于过往的经验和记忆"这一观点提出的,它与CNN不同的是:它不仅考虑 前一时刻的输入,而且赋予了网络对前面的内容的一种记忆功能,即一个序 列当前的输出与前面的输出也有关,具体的表现形式为网络会对前面的信 息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接 而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻 隐藏层的输出。
如图5所示,看图说话系统由一个CNN后依次串联若干个RNN构成,RNN 的数目不定。从待识别的图片中识别出的句子有多少个词,RNN的数目就是 该词数加2。待识别的图片先输出CNN,由CNN产生一个输出结果。CNN的输 出结果输入给第一个RNN,由第一个RNN输出一个“开始符”,第一个RNN输 出的开始符输入给第二个RNN,由第二个RNN根据第一个RNN输出的结果和目 前已识别出的词来输出其预测的下一个词。由于第一个RNN输出的是“开始 符”,目前还没有识别出任何词,因此,第二个RNN输出的是识别出的句子 的第一个词,即词1。第二个RNN将识别出的“词1”输出给第三个RNN,目 前识别出的所有词为“词1”,第三个RNN根据这两个因素输出识别的第二 个词,即“词2”。第三个RNN将识别出的“词2”输出给第四个RNN,目前 识别出的所有词为“词1+词2”,第四个RNN根据这两个因素输出识别的第三个词,即“词3”,以此类推。第(N+1)个RNN输出的是识别出句子的第 N个词,即词N。第(N+1)个RNN将识别出的“词N”输出给第(N+2)个RNN, 目前识别出的所有词为“词1+词2+……+词N”,第(N+2)个RNN根据这两 个因素输出识别的下一个词是“结束符”,则识别完成。看图说明系统输 出的句子就是“词1+词2+……词N”。
图2A-F示出了根据本公开一个实施例的对抗测试看图说话系统的方法 应用在对Show-Attend-and-Tell(SAT)看图说话系统进行对抗测试的具体 场景下出现的界面图。目前三种比较主流的看图说话系统有 Show-Attend-and-Tell(SAT),self-criticalsequence training(SCST) 和Show-and-Tell(ST)系统。Show-Attend-and-Tell(SAT)是其中一种主流 的看图说话系统。
将如图2A所示的原始待识别图片输入Show-Attend-and-Tell(SAT)看 图说话系统。该图片上,浴室里有洗手池、淋浴器和镜子。将该图片输入 Show-Attend-and-Tell(SAT)看图说话系统后,Show-Attend-and-Tell(SAT) 看图说话系统输出如图2B的界面。在原始图片的下面显示识别出的句子“A bathroom with a shower and a sink and amirror(有淋浴器、洗手池和 镜子的浴室)”。这是没有对抗测试时的情况。
当应用本公开实施例的对抗测试看图说话系统的方法后,在待识别图 片上要施加的对抗噪声图片如图2C所示,期望看图说话系统识别出的语句 的整句话为“A manriding a bike down a street(在街上骑自行车的人)”。 当将图2C所示的对抗噪声图片叠加在图2A的原始待识别图片上后,输入 Show-Attend-and-Tell(SAT)看图说话系统,Show-Attend-and-Tell(SAT) 看图说话系统输出图2D所示的界面。图2D上的图片是图2C所示的对抗噪 声图片叠加在图2A的原始待识别图片上后的结果。界面上显示“A man ridinga bike down a street(在街上骑自行车的人)”。即,明明图片上 显示的仍然是有有淋浴器、洗手池和镜子的浴室,经过本公开实施例的对 抗测试,识别成了在街上骑自行车的人。
上面描述的是对识别成的句子的整句话进行对抗测试的情况。还有一 种情况更普遍,是期望所述看图说话系统识别出的语句的预定观测位置出 现指定的词。图2C和图2D所示的整句话对抗测试的情况只是这种普遍情 况的特例。在这种更普遍的情况下,在待识别图片上要施加的对抗噪声图 片如图2E所示,期望看图说话系统识别出的语句为“A manriding a__ down a street”,其中未划横线的位置是预定观测位置,期望这些位置出 现该语句中相应位置的上述词。划横线的位置是隐藏位置,可以出现任何 词,不作限定。当将图2E所示的对抗噪声图片叠加在图2A的原始待识别 图片上后,输入Show-Attend-and-Tell(SAT)看图说话系统 Show-Attend-and-Tell(SAT)看图说话系统输出图2F所示的界面。图2F上 的图片是图2E所示的对抗噪声图片叠加在图2A的原始待识别图片上后的 结果。界面上显示“A man riding a horse down a street(在街上骑马 的人)”。即,未划横线的那些位置,都出现了指定的词。划横线的那些位 置,出现的词不固定,有可能与对抗噪声图片中相应位置的词相同,也可 能不同。
如图3所示,根据本公开一个实施例,提供了一种对抗测试看图说话 系统的方法。该方法由图1中的对抗测试组件101执行。所述方法包括:
步骤210、构造目标函数,所述目标函数基于第一对数和第二对数的差, 所述第一对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声 时,所述看图说话系统输出语句在预定观测位置出现的词的组合为预定观 测词组合的概率的对数,所述第二对数是给定在看图说话系统要识别的图 片上将要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置 出现的词的组合不为预定观测词组合的概率的对数;
步骤220、对所述目标函数中具有求最大值符号的算项,指定对抗噪声, 基于所述对抗噪声,确定具有求最大值符号的算项最大时算项中的未知变 量值,将所述目标函数中所述具有求最大值符号的算项去最大值符号后的 部分作为剩余函数,将求出的未知变量值代入所述剩余函数中求解使剩余 函数值最小时的对抗噪声,替代之前指定的对抗噪声,进行下一轮迭代, 直至满足迭代终止条件;
步骤230、将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识 别的图片上,以期望所述看图说话系统识别出的语句的预定观测位置出现 指定的词。
下面分别对上述步骤进行详细描述。
在步骤210中,构造目标函数。
所述目标函数是将在看图说话系统要识别的图片上将要叠加的对抗噪 声作为自变量构造出的函数,通过求函数最大或最小值的方式可以找到作 为自变量的对抗噪声的目标值。在本公开实施例中,通过对数边缘似然间 隔来构造目标函数。其基于这样的事实:当对抗噪声合适时,在所述看图 说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合的概 率的对数与在预定观测位置出现的词的组合不为预定观测词组合的概率的 对数的差应该足够大,即在所述看图说话系统输出语句在预定观测位置出 现的词的组合为预定观测词组合的概率与在预定观测位置出现的词的组合 不为预定观测词组合的概率应该分得足够开。找到对抗噪声的问题变成了 求解目标函数为最大值时的对抗噪声问题。
看图说话系统有许多内部参数,将这所有参数用θ表示。对抗测试的实 质是叠加一个对抗噪声图像,相当于在要识别的图片的每个像素上叠加一 个噪声元素,该噪声元素具有像素分量R、G、B的值。叠加了对抗噪声图 像后的要识别的图片可以表示为I=I0+∈∈[0,1]3×W×H,其中I0表示原始的图 片,其可以看作是该图片上每个像素的像素值形成的矩阵;∈表示要叠加的 对抗噪声,其是一个3×W×H的三维矩阵,W为矩阵的宽度,即原始图片宽 度方向上的像素个数,H为矩阵的宽度,即原始图片高度方向上的像素个数, 因此该三维矩阵一维表示像素分量R、G、B的值,一维表示原始图片宽度 方向上的像素个数,一维表示原始图片高度方向上的像素个数,R、G、B的 值的取值在【0,1】中;I表示叠加了对抗噪声后的要识别的图片。
假设看图说话系统对要识别的图片输出的描述语句为S,那么在要识别 的图片为I0、要叠加的对抗噪声为∈、看图说话系统的参数为θ的情况下, 对要识别的图片输出的描述语句为S的概率为:
其中,S={S1,...,St,...,SN}表示一组N个变量的序列,即描述语句S的第 一个词的位置用S1表示,描述语句S的第t个词的位置用St表示,描述语句 S的第N个词的位置用SN表示。S1,...,St,...,SN中的每一个的值都来自于一个 RV={R1,R2,…,R|ν|}的候选集合,{R1,R2,…,R|ν|}是一个候选词的候选集合, 相当于一个词典,1,2,…,|V|对应着词典中词的顺序,S1,...,St,...,SN中的每一 个的值都是可以取词典中的任何词的。另外,S<t={S1,...,St-1},其表示当要 输出描述语句S的第t个词前,已经输出的描述语句S的词集合。当t=0时, 我们定义看图说话系统每多输出一个词,看图说话系统输出的这句话的目前所有词的概率就等于看图说话系统输出的这句话的在当前词之前 的所有词的概率乘以在这句话的在当前词之前的所有词固定下来的情况下 输出的当前词是特定词的后验概率,因此,可以用上面的公式1计算在要 识别的图片为I0、要叠加的对抗噪声为∈、看图说话系统的参数为θ的情况 下,对要识别的图片输出的描述语句为S的概率。P(St|S<t,I0,∈;θ)表示看图 说话系统输出的描述语句的第t个词之前的(t-1)个词为S<t、要识别的图 片为I0、要叠加的对抗噪声为∈、看图说话系统的参数为θ的情况下输出的 第t个词是St的后验概率。为了简化,之后的描述中省略符号I0和θ。
期望所述看图说话系统输出语句在预定观测位置出现的词的组合为预 定观测词组合,其中预定观测位置是指看图说话系统输出的描述语句的若 干个词的位置,在一个实施例中,它可以用词序号来表示。例如,对于期 望看图说话系统识别出的语句为“Abaseball player is___a bat on__ field”,其中未划横线的位置是预定观测位置,用词序号表示为 “1,2,3,4,6,7,8,10”。预定观测词组合是在这些预定观测位置上期望出 现的词的组合。在上例中,预定观测词组合是“A baseball player is a bat on field”。
将所述看图说话系统输出语句在预定观测位置出现的词的组合为预定 观测词组合表示为o表示被观测到(observed)的预定观测位置。在上 例中可以取“1,2,3,4,6,7,8,10”中的值。上例中,为“A baseball player is a bat on field”。将所述看图说话系统输出语句在预定观测 位置以外出现的词的组合表示为H表示未被观测到(unobserved)的位 置,即隐藏的位置。在上例中可以取“5,9”中的值。上例中,为划横线上的值。定义其中N为看图说明系统输出的描述语句的词数。其中Stst,St代表看图说话系统输出语句在中一个t位 置上的词的抽象表示,而st则是看图说话系统输出语句在中一个t位置上 的词的具体值(具体词),V是词典中词的集合,st∈V表示在看图说话系 统输出语句在中一个t位置上的词的具体值可以取词典中的任一一个词。 输出语句在所有预定观测位置出现的词的组合即预定观测词组合,表示为 所述看图说话系统输出语句在预定观测位置以外出现的词的组合定义为其中符号\表示“除 了”,即从整个集合中减掉一个子集,表示从集合S中减掉子集另外,在要叠加的对抗噪声为∈的情况下,所述看图说话系统输出语句在预 定观测位置出现的词的组合为的后验概率实际上可以表示为,在 要叠加的对抗噪声为∈的情况下,所述看图说话系统输出语句在预定观测位 置出现的词的组合为所述看图说话系统输出语句在非预定观测位置出现的词的组合为的联合概率在各不同情况下的加和,即
目标函数基于第一对数和第二对数的差 为第一对数,抽象地指代看图说话系统输出语句在预定观测 位置出现的词的组合,是看图说话系统输出语句在各预定观测位置出现 的一个具体词组合,即想要的预定观测词组合,因此,第一对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声∈时,所述看 图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合 的概率的对数。为第二对数。第二对数是给定在看图说话系 统要识别的图片上将要叠加的对抗噪声∈时,所述看图说话系统输出语句 在预定观测位置出现的词的组合不为预定观测词组合的概率的对数。
在一个实施例中,可以直接将作为目标函 数。在另一个稍复杂一些的实施例中,可以将下式作为目标函数:
其中,
上式的可以看作是 是常量,因此上式等于 其中与有相同的变化趋势,而即因此 是基于第一对数与第二对数的差的函数。
‖∈‖2是对抗噪声的二范数。对抗噪声的二范数是衡量对抗噪声的噪声水 平的量度。该值越小越好。λ为预定比例,叫做权衡参数。为规范因 子。用减掉可以综合考虑到 噪声带来的影响。是松弛变量,它可以在运行中允许一定范围的错 误,保持计算时的灵活性。
由可知,所述看图说话系 统输出语句在预定观测位置出现的词的组合中的一个词与预定观测词组合 对应位置中的词不同,就记录一个ζ。有多少个词与预定观测词组合对应位 置中的词不同,就将多少个ζ相加,最后就等于预定正常数ζ乘以预 定倍数,其中,所述预定倍数等于所述看图说话系统输出语句在预定观测 位置出现的词的组合中的词与预定观测词组合对应位置中的词不同的数 目。
综上,在该实施例中,目标函数为所述对抗噪声∈的二范数的平方的预 定比例减去给定将要叠加的对抗噪声∈时所述看图说话系统输出语 句在预定观测位置出现的词的组合为预定观测词组合、以及所述看图说话 系统输出语句在非预定观测位置出现的词组合是各不同词组合的联合概率 的对数在非预定观测位置出现的不同词组合下的最大值 加上给定将要叠加的对抗噪声∈时所述看图说话系统输 出语句在预定观测位置出现的词的组合不为预定观测词组合、以及所述看 图说话系统输出语句在非预定观测位置出现的词组合不是各不同词组合的 联合概率的对数与松弛变量的和在预定观测位置出现的不同词组合和在非预定观测位置出现的不同词组合下的最大值
该实施例的好处是,由于上述公式考虑了规范因子和松弛变量的影响, 可以抑制噪声的影响,并且在运行中允许一定范围的错误,保持计算时的 灵活性。
在步骤220中,对所述目标函数中具有求最大值符号的算项,指定对 抗噪声,基于所述对抗噪声,确定具有求最大值符号的算项最大时算项中 的未知变量值,将所述目标函数中所述具有求最大值符号的算项去最大值 符号后的部分作为剩余函数,将求出的未知变量值代入所述剩余函数中求 解使剩余函数值最小时的对抗噪声,替代之前指定的对抗噪声,进行下一 轮迭代,直至满足迭代终止条件。
算项是指多项式中的单项式。单项式由加减号连接,组成多项式。目 标函数中具有求最 大值符号的算项是和对它 们指定一个对抗噪声∈,例如∈的每个元素为0.001,即在要识别的图片的 每个像素上叠加的噪声R、G、B值都是0.001。基于这个∈,就可以求出 和这两个算项最大时的未知 变量值。中的未知变量值是通过一次升序的序列推断 求解(已知方法),求解出该算项最大时的即 中的未知变量值是 最大时的表示为则:
这个推理问题也可以以升序的顺序有序地求解。特别地,给定已推断出的 配置的推理可以由以下两步解决:
1.当时,
2.当时,其中t为看图说话系统输出语 句的一个位置。
通过上述方法,可以得到这样,就得到了算项最大时的未知变量 中的得到是常数, 可以忽略。所述目标函数中所述具有求最大值符号的算项去最大值符号后 得到的部分叫做剩余函数。上例中,剩余函数为 这样,将求出的未知变量值与代 入所述剩余函数中求解使剩余函数值最小 时的对抗噪声∈。上式中带有∈的三项的梯度很容易通过训练深度神经网络的梯度优化方法算出。因此,可以求出∈。用求出的∈替代之前指定的对抗 噪声∈,重复执行步骤220,即进行下一轮迭代,直至满足迭代终止条件。
综上,在一个实施例中,所述确定具有求最大值符号的算项最大时算 项中的未知变量值,包括:
对于给定将要叠加的对抗噪声∈时所述看图说话系统输出语句在预定 观测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输出 语句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数 在非预定观测位置出现的不同词组合下的最大值 这样一个具有求最大值符号的算项,确定该联合概率最大 时所述看图说话系统输出语句在非预定观测位置出现的词组合作为未 知变量值;
对于给定将要叠加的对抗噪声∈时所述看图说话系统输出语句在预定观测位置出现的词的组合不为预定观测词组合、以及所述看图说话系统输 出语句在非预定观测位置出现的词组合不是各不同词组合的联合概率的对最大时所述看图说话系统输出语句在预定观测位置出现的词的组合以 及所述看图说话系统输出语句在非预定观测位置出现的词组合作为未 知变量值;
所述去最大值符号包括:
在所述目标函数中,将所述联合概率的对数在非预定 观测位置出现的不同词组合下的最大值替换成给定将 要叠加的对抗噪声∈时所述看图说话系统输出语句在预定观测位置出现的 词的组合为预定观测词组合以及所述看图说话系统输出语句在非预定 观测位置出现的词组合是确定的该联合概率最大时所述看图说话系统输出 语句在非预定观测位置出现的词组合的联合概率的对数
在所述目标函数中,将所述和在预定观测位置出图说话系统输出语句在预定观测位置出现的词的组合不为该和最大时所述 看图说话系统输出语句在预定观测位置出现的词的组合以及所述看图 说话系统输出语句在非预定观测位置出现的词组合不是该和最大时所述看 图说话系统输出语句在非预定观测位置出现的词组合的联合概率替换后的目标函数作为剩余函数
在一个实施例中,所述迭代终止条件包括以下中的至少一个条件:
当前轮迭代中解出的对抗噪声∈与上一轮迭代中解出的对抗噪声∈的差 值绝对值小于预定对抗噪声差值绝对值阈值;
当前轮迭代中确定的所述未知变量值与上一轮迭代中确定的所述未知 变量值一致。
上述当前轮迭代中确定的所述未知变量值与上一轮迭代中确定的所述 未知变量值一致,可以指当前轮迭代中确定的所述未知变量值与中 的一个与上一轮迭代中确定的所述未知变量值与中相应的一个一 致,也可以指当前轮迭代中确定的所述未知变量值与中的每一个都 与上一轮迭代中确定的所述未知变量值与中相应的一个一致。
所述迭代终止条件包括两个条件中的至少一个条件可以是指,在当前 轮迭代中解出的对抗噪声∈与上一轮迭代中解出的对抗噪声∈的差值绝对值 小于预定对抗噪声差值绝对值阈值时,或当前轮迭代中确定的所述未知变 量值与上一轮迭代中确定的所述未知变量值一致时,就达到了迭代终止条 件。其也可以是指,在当前轮迭代中解出的对抗噪声∈与上一轮迭代中解出 的对抗噪声∈的差值绝对值小于预定对抗噪声差值绝对值阈值,且当前轮迭 代中确定的所述未知变量值与上一轮迭代中确定的所述未知变量值一致时,才达到迭代终止条件。
该实施例的好处是,提高了迭代终止设置的灵活性。
上述实施例中,同时将带有求最大值符号的算项替换成没有最大值符号的算项 替换成没有最大值符号的算项在另一个实施例中,可以如图6A和图6B那样分步进行,即在图6A中先将 带有求最大值符号的算项替换成没有最大值符号的算项
如图6A所示,在步骤310中,先固定一个对抗噪声∈,更新该联合概 率最大时看图说话系统输出语句在非预定观测位置出现的词 组合在步骤320中,利用上述迭代终止条件判断是否迭代终止。如果 终止,在步骤340中输出对抗噪声∈,以此对抗噪声∈进行对抗测试。如果 不终止,在步骤330中,固定该联合概率最大时看图说话系统输 出语句在非预定观测位置出现的词组合在去最大值符号的式 子中求使该式子最小时 的对抗噪声∈。如何求使该式子最小时的对抗噪声∈在图6B中介绍。更新 后,在步骤350中,利用上述迭代终止条件判断是否迭代终止。如果终止, 在步骤360中输出对抗噪声∈,以此对抗噪声∈进行对抗测试。如果不终止, 将这个对抗噪声∈代入步骤310,作为步骤310用到的对抗噪声∈,如此反 复迭代。
图6B示出了如何求使 最小时的对抗噪声∈。即 步骤330的详细过程。在步骤3301中,固定该对抗噪声∈,更新使得 最大时所述看图说话系统输出语句在预定观测位置出 现的词的组合以及看图说话系统输出语句在非预定观测位置出现的词 的组合在步骤3302中,利用上述迭代终止条件判断是否迭代终止。 如果终止,在步骤3303中利用图6A的终止判断来判断从整体上是否所述 迭代终止条件满足,如整体上也满足,输出对抗噪声∈,以此对抗噪声∈进 行对抗测试。如果不终止,在步骤3304中,固定最大 时所述看图说话系统输出语句在预定观测位置出现的词的组合以及看 图说话系统输出语句在非预定观测位置出现的词的组合在将去最大值符号得到的剩 余函数中求解使该剩余函数最小的∈。然 后,在步骤3305中,利用上述迭代终止条件判断是否迭代终止。如果终止, 在步骤3306中利用图6A的终止判断来判断从整体上是否所述迭代终止条 件满足,如整体上也满足,输出对抗噪声∈,以此对抗噪声∈进行对抗测 试。如果不终止,将这个对抗噪声∈代入步骤3301,作为步骤3301用到的 对抗噪声∈,如此反复迭代。
在步骤230中,将迭代终止后得到的对抗噪声叠加到所述看图说话系 统要识别的图片上,以期望所述看图说话系统识别出的语句的预定观测位 置出现指定的词。
如图7A的上行所示,要识别的图片的描述语句是“A bathroom with a showerand a sink and a mirror(有淋浴器、洗手池和镜子的浴室)”。 如果想要让看图说话系统输出的整句话都是期望的话“A man riding a bike down a street(在街上骑自行车的人)”,这时,预定观测位置是看 图说话系统输出的语句的所有词位置。用根据本公开实施例的方法得到的 对抗噪声叠加到要识别的图片上,这时看图说话系统输出的图片与要识别 的图片区别不大,但输出的语句变成“A man riding a bike down a street”。如图7B的上行所示,如果想要让看图说话系统输出的语句的 多数位置的词都是期望的词,如“Aman riding a__down a street”, 其中未划横线的位置都是期望有预定观测词的观测位置。用根据本公开实 施例的方法得到的对抗噪声叠加到要识别的图片上,这时看图说话系统输 出的图片与要识别的图片区别不大,但输出的语句变成“A man riding a bike downa street”。划横线的词凑巧与噪声图片原有配的文字一样, 但实际上可以不一样。如果想要让看图说话系统输出的语句的少数位置的 词是期望的词,如“__ __riding__ __ __ ____”,其中未划横线的位 置是期望有预定观测词的观测位置。用根据本公开实施例的方法得到的对 抗噪声叠加到要识别的图片上,这时看图说话系统输出的图片与要识别的 图片区别不大,但输出的语句变成“A small riding a small metal on a toilet”。图7A-B的下行与上行类似,也证明了利用本公开实施例的方法, 可以让看图说话系统输出的一整句话变成期望的一整句话,也可以让看图 说话系统输出的语句的多数位置的词变成期望的词,也可以让看图说话系 统输出的语句的少数位置的词变成期望的词。
本公开实施例除了提供了如上所述的对抗测试看图说话系统的方法之 外,还提供了一种能自动对抗测试看图说话系统并验证对抗测试的效果的 方法,它不但能够自动对抗测试看图说话系统,还能对对抗测试的效果自 动评价,如果评价不达标重新对抗测试,从而提升了对抗测试质量。
在本公开实施例中,可以在三个目前主流的基于CNN+RNN的看图说话 系统上实施上述对抗测试看图说话系统的方法,这三种系统即 Show-Attend-and-Tell(SAT),self-critical sequence training(SCST) 和Show-and-Tell(ST)。
用PyTorch在三种不同的模型上实现了根据本公开实施例的对抗测试 方法。使用ResNet-101做为SAT和SCST模型的CNN结构,同时,为了与 Show-and-Fool公平比较,我们采用Inception-V3做为ST模型的CNN部分。 设置最大的迭代次数为50。采用ADAM做为更新对抗噪声∈的方法,学习率初 始值设为0.001,如果没有特殊说明,公式中的λ设为0.1。
如图5所示,在一个实施例中,在步骤210之前,所述方法还包括:
步骤201、从看图说话系统的验证图片集中取出多个对抗测试对象图 片;
步骤202、对于每个对抗测试对象图片,在所述验证图片集中选取混淆 依据图片;
步骤203、在混淆依据图片对应的语句上的预定观测位置上取词,取出 的词的组合作为预定观测词组合,取出的对抗测试对象图片作为看图说话 系统要识别的图片。
在步骤230之后,所述方法还包括:
步骤240、将从所述看图说话系统输出的语句的预定观测位置上提取的 词的组合与所述预定观测词组合进行比对,获得验证指标;
步骤250、利用所述多个对抗测试对象图片的所述验证指标,验证对抗 测试看图说话系统的效果。
下面对以上过程进行详细描述。
在步骤201中,对抗测试对象图片是作为对抗测试对象的、要在其上 叠加对抗噪声的要识别的图片。
无论是Show-Attend-and-Tell(SAT)、self-critical sequence training(SCST)和Show-and-Tell(ST)中的哪种系统,都有基准数据集, 其中有训练图片集、验证图片集、测试图片集。训练图片集即训练看图说 话系统采用的训练图片组成的集合。验证图片集是用于调整参数、提取特 征、并做出与学习算法相关的其他决策,从而交叉验证训练图片集训练出 来的看图说话系统的图片的集合。在交叉验证过程中还会对训练出的看图 说话系统进行调整。测试图片集是用来检验最终训练出的看图说话系统的 图片的集合。
以Microsoft COCO 2014(MSCOCO)为例,其中包括113287张训练图 像,5000张验证集和5000张测试集。在一个例子中,从5000张验证集中 筛选出1000张图片作为要对抗测试的图片。
在步骤202中,混淆依据图片是从其描述语句中选取对抗测试所用的 预定观测词组合的图片。无论是训练图片、验证图片、测试图片,都对应 有描述语句。混淆依据图片选定后,就从其对应的描述语句中选取对抗测 试所用的预定观测词组合。例如,如果选定了关于“A man riding a bike down a street”的图片,其描述语句是“A baseball playeris holding a bat on a field”,对抗测试所用的预定观测词组合就从它的预定观测 位置上选取。
对于每个对抗测试对象图片,在所述验证图片集中选取混淆依据图片 可以采取随机选取的方式,也可以采取按验证图片集中图片序号选取的方 式。可以对于每个对抗测试对象图片,在所述验证图片集中选取一张混淆 依据图片,也可以在所述验证图片集中选取多张混淆依据图片。
在上述例子中,对于ST,SAT和SCST模型,可以从剩下的4000张验证 集图片中,对每个对抗测试图片选取5个不同的混淆依据图片,按照这5 个不同的混淆依据图片的描述语句,来生成5个不同的目标描述语句。
在步骤203中,在混淆依据图片对应的语句上的预定观测位置上取词, 取出的词的组合作为预定观测词组合,取出的对抗测试对象图片作为看图 说话系统要识别的图片。例如,选定了关于“A man riding a bike down a street”的图片,其描述语句是“A manriding a bike down a street”, 预定观测位置是“1 2 3 4 6 7 8”,则“A man riding ahorse down a street”中划横线的词的组合为预定观测词组合,期望看图说话系统最后输出的语句的这些位置出现上述预定观测词组合。
在步骤203后,由于预定观测词组合和看图说话系统要识别的图片已 确定,可以执行步骤210-230的过程。然后,在步骤240中,将从所述看 图说话系统输出的语句的预定观测位置上提取的词的组合与所述预定观测 词组合进行比对,获得验证指标。验证指标是用于验证对抗测试看图说话 系统的结果的指标。它包括命中率、精准率、召回率。
命中率是反映看图说话系统输出的语句的预定观测位置上提取的词的 组合与所述预定观测词组合是否一致的度量。如果从所述看图说话系统输 出的语句的预定观测位置上提取的词的组合与所述预定观测词组合相同, 则命中率=1;反之,则命中率=0。命中率表示为:
1.
success-sign代表命中率,表示从所述看图说话系统输出的语句的预 定观测位置上提取的词的组合,SO表示预定观测词组合。
平均命中率是反映对于所有输入看图说话系统的要识别的图片,其中 有多少比例看图说话系统输出的语句的预定观测位置上提取的词的组合与 所述预定观测词组合一致,即对抗测试成功的度量。它等于对于所有输入 看图说话系统的要识别的图片分别得到的命中率取平均。在一个实施例中, 步骤250包括:将所述多个对抗测试对象图片的命中率取平均,得到平均 命中率,如果平均命中率大于预定平均命中率阈值,则验证成功。如果平均命中率大于预定平均命中率阈值,说明对抗测试成功的比例高于期望的 比例,认为验证成功。
在一个实施例中,不仅根据平均命中率来进行验证,还根据对抗噪声 的二范数进行验证。这是因为二范数反映了叠加的对抗噪声的大小,如果 对抗噪声过大,叠加到原始图片,容易引起比较大的变化,引起被对抗测 试方注意。因此,除了考虑平均命中率外,二范数也是一个重要的考虑因 素。二范数越小,对抗测试效果越好。
在该实施例中,所述如果平均命中率大于预定平均命中率阈值,则验 证成功,包括:
如果平均命中率大于预定平均命中率阈值,获取叠加在所述多个对抗 测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均 值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
即,如果对于选定的多个对抗测试对象图片,平均命中率大于预定平 均命中率阈值,获取叠加在所述多个对抗测试对象图片的每一个上的对抗 噪声的二范数,它可以通过对已得到的对抗噪声求二范数而求出。这样, 对每个对抗测试对象图片,可以获得一个对抗噪声的二范数。将对每个对 抗测试对象图片获得的对抗噪声的二范数求平均值,该平均值反映了对所 述多个对抗测试对象图片,平均施加的对抗噪声大小。如果所述二范数的平均值小于预定二范数平均值阈值,说明对抗噪声大小是可接受的,则验 证成功。反之,则验证失败。
精准率为从所述看图说话系统输出的语句的预定观测位置上提取的词 与所述预定观测词组合中相应位置上的词相同的个数除以从所述看图说话 系统输出的语句的预定观测位置上提取的词的总数。它反映了看图说话系 统输出的语句的预定观测位置上与期望的词相同的比例。该比例越大,说 明在看图说话系统输出的语句的预定观测位置上出现的词与期望词一致的 概率越大,这种对抗测试越精准。它不是用看图说话系统输出的整句话是 否达到期望来衡量,而是衡量其中有多少比例达到了期望。它可以表示为:
Precision为精准率,表示从所述看图说话系统输出的语句的预定观 测位置上提取的词的组合,SO表示预定观测词组合。表示从所述 看图说话系统输出的语句的预定观测位置上提取的词的组合、和预定观测 词组合的重合词数,表示从所述看图说话系统输出的语句的预定观测 位置上提取的词的组合的词数。
平均精准率是反映对于所有输入看图说话系统的要识别的图片的精确 率的平均值,它反映了对于宏观上来说,看图说话系统输出的整句话的预 定观测位置的词中,有多少比例能够达到期望。在一个实施例中,步骤250 包括:将所述多个对抗测试对象图片的精准率取平均,得到平均精准率, 如果平均精准率大于预定平均精准率阈值,则验证成功。
在一个实施例中,不仅根据平均精准率来进行验证,还根据对抗噪声 的二范数进行验证。二范数越小,对抗测试效果越好。
在该实施例中,所述如果平均精准率大于预定平均精准率阈值,则验 证成功,包括:
如果平均精准率大于预定平均精准率阈值,获取叠加在所述多个对抗 测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均 值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
即,如果对于选定的多个对抗测试对象图片,平均精准率大于预定平均 精准率阈值,获取叠加在所述多个对抗测试对象图片的每一个上的对抗噪 声的二范数,并将对每个对抗测试对象图片获得的对抗噪声的二范数求平 均值。如果所述二范数的平均值小于预定二范数平均值阈值,说明对抗噪 声大小是可接受的,则验证成功。反之,则验证失败。
该实施例相对于仅验证平均精准率阈值,能够更好地提高验证效果。
召回率为从所述看图说话系统输出的语句的预定观测位置上提取的词 与所述预定观测词组合中相应位置上的词相同的个数除以述预定观测词组 合的词总数。它反映了预定观测词组合中的所有词中有多少比例的词被看 图说话系统正确输出了。该比例越大,说明所述预定观测词组合中的词被 看图说话系统依期望输出的概率越大,这种对抗测试越精准。它不是用看 图说话系统输出的整句话是否达到期望来衡量,而是衡量预定观测词组合 中的所有词中有多少比例的词被看图说话系统按期望输出了。它可以表示 为:
Recall为召回率,表示从所述看图说话系统输出的语句的预定观测位 置上提取的词的组合,SO表示预定观测词组合。表示从所述看图 说话系统输出的语句的预定观测位置上提取的词的组合、和预定观测词组 合的重合词数,表示预定观测词组合的词数。
平均召回率是反映从宏观上来说,预定观测词组合中的所有词中会有 多少比例的词被看图说话系统按期望输出。在一个实施例中,步骤250包 括:将所述多个对抗测试对象图片的召回率取平均,得到平均召回率,如 果平均召回率大于预定平均召回率阈值,则验证成功。
在一个实施例中,不仅根据平均召回率来进行验证,还根据对抗噪声 的二范数进行验证。二范数越小,对抗测试效果越好。
在该实施例中,所述如果平均召回率大于预定平均召回率阈值,则验 证成功,包括:
如果平均召回率大于预定平均召回率阈值,获取叠加在所述多个对抗 测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均 值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
即,如果对于选定的多个对抗测试对象图片,平均召回率大于预定平均 召回率阈值,获取叠加在所述多个对抗测试对象图片的每一个上的对抗噪 声的二范数,并将对每个对抗测试对象图片获得的对抗噪声的二范数求平 均值。如果所述二范数的平均值小于预定二范数平均值阈值,说明对抗噪 声大小是可接受的,则验证成功。反之,则验证失败。
该实施例相对于仅验证平均召回率阈值,能够更好地提高验证效果。
在一个实施例中,在利用所述多个对抗测试对象图片的所述验证指标, 验证对抗测试看图说话系统的效果之后,所述方法还包括:如果验证失败, 从构造概率对数函数的步骤起重复执行。也就是说,如果验证失败,说明 对抗噪声构造得不好,需要重新构造对抗噪声,重新对抗测试,直到验证 效果达到期望,才停止。本公开实施例通过这种对抗测试、评价的不断迭 代,提高了对抗测试效果。
另外,本公开实施例还可以在对抗测试看图说话系统的方法的基础上, 自动评价验证指标(平均命中率、平均精准率、平均召回率)随观测位置 数目的变化关系、以及随非观测位置数目的变化关系,以为构造合理的观 测位置数目和非观测位置数目提供依据,从而反过来进一步提升对抗测试 看图说话系统的对抗测试效果。
为了验证验证指标(平均命中率、平均精准率、平均召回率)随观测 位置数目的变化关系、以及随非观测位置数目的变化关系,在一个实施例 中,步骤203包括:
在混淆依据图片对应的语句上分别取预定的不同数目个观测位置上的 词,分别形成第一多个预定观测词组合;
在混淆依据图片对应的语句上分别取预定的不同数目个非观测位置以 外的位置上的词,分别形成第二多个预定观测词组合。
例如,混淆依据图片对应的描述语句为“A man riding a horse down a street(在街上骑马的人)”,可以从中分别取1个、2个、3个预定的观 测位置的词,让其为观测词,则分别得到“__ __ __ __horse__ __ __”, “__ __ __a horse__ __ __”,“__ __ridinga horse__ __ __”, 其中未划横线的词为观测词,“horse”,“a horse”,“riding a horse”为第一多个预定观测词组合。然后,对于“A man riding a horse down a street”,从中分别取1个、2个、3个预定的非观测位置的词,让其为非 观测词,则分别得到“A man ridinga__down a street”,“A man riding __ __down a street”,“A man__ __ __down astreet”,其中未 划横线的词为观测词,“A man riding a down a street”,“A manriding down a street”,“A man down a street”为第二多个预定观测词组合。
在该实施例中,步骤240包括:
将从所述看图说话系统输出的语句的预定的不同数目个观测位置上提 取的词的组合与所述第一多个预定观测词组合中相应的观测词组合进行比 对,获得多个第一验证指标;
将从所述看图说话系统输出的语句的预定的不同数目个非观测位置以 外的位置上提取的词的组合与所述第二多个预定观测词组合中相应的观测 词组合进行比对,获得多个第二验证指标。
这里的验证指标可以是平均命中率、平均精准率、平均召回率。当一 些要识别的图片输入看图说话系统时,利用本公开实施例的方法叠加对抗 噪声进行对抗测试,针对第一多个预定观测词组合的一个,即一种词数目 的预定观测词组合,也在看图说话系统输出的语句中找到同样个数观测位 置上的词的组合,将找到的词组合与该数目的预定观测词组合进行比较, 获得一个第一验证指标。这样,针对第一多个预定观测词组合,就可以找到多个第一验证指标。找到多个第二验证指标的方式类似于找到多个第一 验证指标的方式,故不赘述。
例如,验证指标是平均精准率。将从所述看图说话系统输出的语句的 预定的1个、2个、3个观测位置上提取的词的组合与所述第一多个预定观 测词组合中相应数目的观测词组合进行比对,分别得到1个观测位置对应 的第一验证指标(1个观测位置对应的第一平均精准率)、2个观测位置对 应的第一验证指标(2个观测位置对应的第一平均精准率)、3个观测位置 对应的第一验证指标(3个观测位置对应的第一平均精准率)。将从所述看 图说话系统输出的语句的预定的1个、2个、3个非观测位置以外的位置上 提取的词的组合与所述第二多个预定观测词组合中相应数目的观测词组合 进行比对,分别得到1个非观测位置以外的位置对应的第二验证指标(1个 非观测位置对应的第二平均精准率)、2个非观测位置以外的位置对应的第 二验证指标(2个非观测位置对应的第二平均精准率)、3个非观测位置以 外的位置对应的第二验证指标(3个非观测位置对应的第二平均精准率)。
在该实施例中,在步骤240之后,所述方法还包括:
基于所述多个第一验证指标和对应的观测位置数目,确定所述验证指 标随观测位置数目的变化关系;
基于所述多个第二验证指标和对应的非观测位置数目,确定所述验证 指标随非观测位置数目的变化关系。
基于所述多个第一验证指标和对应的观测位置数目,确定所述验证指 标随观测位置数目的变化关系,可以通过以观测位置数目为横轴,第一验 证指标为纵轴由机器自动绘制所述验证指标随观测位置数目的变化曲线来 实现。基于所述多个第二验证指标和对应的非观测位置数目,确定所述验 证指标随非观测位置数目的变化关系,可以通过以非观测位置数目为横轴, 第二验证指标为纵轴由机器自动绘制所述验证指标随非观测位置数目的变 化曲线来实现。
表1
上述表1给出了针对看图说话系统是SAT系统的情形,得到的验证指 标随非观测位置数目、观测位置数目的变化情况的一个例子。从中可知: (1)对于没有非观测位置的情况,即看图说话系统输出的整个一句话都是 观测位置,平均命中率达到了0.9806,意味着在增加噪声后,5000个目标 语句中只有97个没有成功生成,同时其对应的平均精准率和平均召回率达 到了0.9892和0.9889,意味着即使在失败的例子中,许多单词也是被正确 预测的。它的噪声二范数||∈||2为5.1678。图像上所添加的噪声是人眼所无 法察觉出来的。(2)对于1到3个非观测位置的情况,根据表1可以知道, 随着非观测位置个数的增加,对抗测试结果都逐渐变差,其中平均命中率、 平均精准率、平均召回率下降,噪声二范数增大。其原因我们分析是因为 随着隐变量个数增加,对于其位置预测的不确定性也逐渐增加,同时在这 些隐变量位置之后的所观测位置的单词也将会影响这些的不确定性。(3) 对于带有1到3个被观测单词的对抗测试方法,其结果没有固定的规律。
在一个实施例中,在步骤240之后,所述方法还包括:
确定所述多个第一验证指标中最佳第一验证指标对应的非观测位置。
在该实施例中,步骤203进一步包括:在混淆依据图片对应的语句上 的确定的非观测位置之外的位置上取词。
在表1的例子中,1个非观测位置对应的第一验证指标是所有多个第一 验证指标中最佳的(包括平均命中率、平均精准率、平均召回率、噪声二 范数),因此,在步骤203中,在混淆依据图片对应的语句上的确定的该1 个非观测位置之外的位置上取词。
通过这种确定最佳的非观测位置数目,反馈到选取预定观测词组合的 过程中,可以进一步提升看图说话系统的对抗测试效果。
如上所述,所述因变量为所述看图说话系统输出语句在预定观测位置 出现的词的组合为预定观测词组合的概率的对数减去所述对抗噪声的二范 数的平方的预定比例的差。不同的预定比例的设置,对对抗测试效果也有 一定影响。本公开实施例可以自动测试不同的预定比例对对抗测试效果的 影响,并可以自动选择预定比例,提高对抗测试效果。
在一个实施例中,所述预定比例是多个预定比例。步骤210包括:分 别构造在所述多个预定比例下各自的概率对数函数;步骤240包括:将从 所述多个预定比例中的每一个预定比例下看图说话系统输出的语句的预定 观测位置上提取的词的组合与所述预定观测词组合进行比对,分别获得在 多个预定比例下各自的验证指标。在步骤240之后,所述方法还包括:基 于所述多个预定比例和在所述多个预定比例下各自的验证指标,确定所述 验证指标随预定比例的变化关系。
基于所述多个预定比例和在所述多个预定比例下各自的验证指标,确 定所述验证指标随预定比例的变化关系,可以通过以所述预定比例为横坐 标,在各预定比例下的验证指标为纵坐标,由机器自动描绘验证指标随预 定比例的变化曲线的方式执行。
在一个实施例中,所述预定正常数是多个预定正常数。步骤210包括: 分别构造在所述多个预定正常数下各自的概率对数函数。步骤240包括: 将从所述多个预定正常数中的每一个预定正常数下看图说话系统输出的语 句的预定观测位置上提取的词的组合与所述预定观测词组合进行比对,分 别获得在多个预定正常数下各自的验证指标。在步骤240之后,所述方法 还包括:基于所述多个预定正常数和在所述多个预定正常数下各自的验证指标,确定所述验证指标随预定正常数的变化关系。
基于所述多个预定正常数和在所述多个预定正常数下各自的验证指 标,确定所述验证指标随预定正常数的变化关系,可以通过以所述预定正 常数为横坐标,在各预定正常数下的验证指标为纵坐标,由机器自动描绘 验证指标随预定正常数的变化曲线的方式执行。
下面的表2示出了看图说话系统采用SAT系统时不同预定比例下的不 同验证指标的一个例子。
表2
根据表2可以看出,当λ=0.01,ζ=0.1,对抗测试的平均命中率的值达到 了0.9728,噪声二范数的值是6.2199;而当λ=1,ζ=10,对抗测试的平均命 中率的值达到了0.8026,噪声二范数的值是3.2207。随着λ值的增大,对 抗噪声的平均值逐渐变小,同时损失值却逐渐增大,最终导致对抗测试效 果的下降;ζ的数值对于对抗测试效果也有很大影响,但是不成线性比例。
在一个实施例中,构造概率对数函数时所用的预定比例是所述验证指 标中最佳验证指标对应的预定比例。也就是说,在所述多个预定比例下各 自的验证指标中选择最佳的验证指标对应的预定比例,作为步骤210构造 概率对数函数时所用的预定比例。通过此方法找到的预定比例,能够进一 步优化对抗测试效果。
同理,在一个实施例中,构造概率对数函数时所用的预定正常数是所 述验证指标中最佳验证指标对应的预定正常数。也就是说,在所述多个预 定正常数下各自的验证指标中选择最佳的验证指标对应的预定正常数,作 为步骤210构造概率对数函数时所用的预定正常数。通过此方法找到的预 定正常数,能够进一步优化对抗测试效果。
在一个实施例中,可以对多个看图说话系统进行对抗测试,根据对抗 测试效果选择最合适的看图说话系统进行对抗测试,进一步优化对抗测试 效果。
在该实施例中,所述看图说话系统是多个看图说话系统,例如SAT系 统、SCST系统、和ST系统。
所述步骤210包括:针对所述多个看图说话系统分别构造与每个看图 说话系统对应的概率对数函数;步骤240包括:将从所述多个看图说话系 统中每一个看图说话系统输出的语句的预定观测位置上提取的词的组合与 所述预定观测词组合进行分别比对,获得与每个看图说话系统对应的验证 指标;在步骤240之后,所述方法还包括:基于与每个看图说话系统对应 的验证指标,对各看图说话系统进行排序。
在一个实施例中,所述基于与每个看图说话系统对应的验证指标,对 各看图说话系统进行排序,包括:当所述验证指标是平均命中率、平均精 准率、或平均召回率时,按照平均命中率、平均精准率、或平均召回率的 从高到低的顺序,对各看图说话系统进行排序;当所述验证指标是噪声二 范数时,按照噪声二范数从低到高的顺序,对各看图说话系统进行排序。
表3
表3给出了针对看图说话系统是SCST系统的情形,得到的验证指标随 非观测位置数目、观测位置数目的变化情况。从表3可以看出,在SCST模 型上的对抗测试效果的规律与在SAT上的规律基本一致。其原因是因为两 个模型结构是相似的,都是从相同的CNN结构提取出特征做为RNN每一步 的输入。
表4
表4给出了针对看图说话系统是ST系统的情形,得到的验证指标随非 观测位置数目、观测位置数目的变化情况。从表4可以看出,ST模型上的 对抗测试效果要比SAT模型和SCST模型都要差。其主要的原因是因为ST 模型的结构显著地区别与另外两个模型,其中ST模型的CNN特征只应用于 RNN开始的步骤,然而在SAT和SCST模型中,CNN的特征会应用到RNN的 每一步中,因此,对于SCST模型和SAT模型,被观测单词的梯度可以直接 地反向传播到输入图像,而对于ST模型,对于被观测的单词和未被观测的 单词梯度必须先累加然后才能反向传播到输入图像中,这样每个被观测的 单词的影响都会被减弱。
在一个实施例中,所对抗测试的看图说话系统是与各看图说话系统对 应的验证指标中最佳验证指标对应的看图说话系统。可以选取上述与各看 图说话系统中二范数最小,或平均命中率最大,或平均精准率最大,或平 均召回率最大的看图说明系统,作为对抗测试目标,可以提高对抗测试效 果。
另外,在一个实施例中,当预定观测位置的数量一定(例如是1)时, 到底选择哪个或哪些观测位置作为预定观测位置,可以达到最好的对抗测 试效果,也可以进行优化。
在一个实施例中,步骤203包括:在混淆依据图片对应的语句上取词 序的倒序上不同顺序的词,取出的词作为与不同顺序对应的预定观测词。 即,在混淆依据图片对应的语句上取倒数第一个词、倒数第二个词……, 分别作为与顺序1、2……相对应的预定观测词。例如,混淆依据图片对应 的语句是“A man riding a bike down a street”,分别取倒数第一个词、 倒数第二个词……作为预定观测词,得到“__ __ __ __ __ __a street”、“__ __ __ __ __ __ __street”……其中未划横线的词为预定观测词。
在该实施例中,步骤240包括:将从所述看图说话系统输出的语句的 取词序的倒序上不同顺序的词与所述预定观测词进行比对,获得与不同顺 序对应的验证指标。
如上例,将从所述看图说话系统输出的语句倒数第一个词、倒数第二 个词……分别与“street”、“a”……进行比对,获得与顺序1、顺序2…… 对应的验证指标。
在该实施例中,在步骤240之后,所述方法还包括:基于所述不同顺 序和与不同顺序对应的验证指标,确定所述验证指标随所述顺序的变化关 系。基于所述不同顺序和与不同顺序对应的验证指标,确定所述验证指标 随所述顺序的变化关系,可以通过以上述顺序号为横坐标,验证指标为纵 坐标,机器自动绘制验证指标随顺序号变化的直方图来实现。如图8A是命 中数量、平均命中率随观测词在看图说话系统输出的语句中的倒数顺序变 化的曲线图。图中可见,观测词越接近于句子的末尾,那么这种情况越难 对抗测试成功。随着观测词位置往后推移,平均命中率的值逐渐降低。
在一个实施例中,预定观测位置为混淆依据图片对应的语句的所有词 位置,其中,混淆依据图片对应的语句为多个具有不同词数的语句。
在该实施例中,步骤240包括:从所述看图说话系统输出的不同词数 的语句与所述预定观测词组合进行比对,获得与不同词数对应的验证指标; 在步骤240之后,所述方法还包括:基于所述不同词数和与不同词数对应 的验证指标,确定所述验证指标随所述词数的变化关系。基于所述不同词 数和与不同词数对应的验证指标,确定所述验证指标随所述词数的变化关 系,可以通过以上述词数为横坐标,验证指标为纵坐标,机器自动绘制验 证指标随词数变化的直方图来实现。如图8B是验证指标随词数变化的曲线 图。图中可见,词数越多,那么这种情况越难对抗测试成功。随着词数增 多,平均命中率的值逐渐降低。
如图9所示,提供了一种对抗测试看图说话系统的装置,所述装置包 括:
目标函数构造单元410,用于构造目标函数,所述目标函数基于第一对 数和第二对数的差,所述第一对数是给定在看图说话系统要识别的图片上 将要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现 的词的组合为预定观测词组合的概率的对数,所述第二对数是给定在看图 说话系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出 语句在预定观测位置出现的词的组合不为预定观测词组合的概率的对数;
迭代单元420,用于对所述目标函数中具有求最大值符号的算项,指定 对抗噪声,基于所述对抗噪声,确定具有求最大值符号的算项最大时算项 中的未知变量值,将所述目标函数中所述具有求最大值符号的算项去最大 值符号后的部分作为剩余函数,将求出的未知变量值代入所述剩余函数中 求解使剩余函数值最小时的对抗噪声,替代之前指定的对抗噪声,进行下 一轮迭代,直至满足迭代终止条件;
对抗噪声施加单元430,用于将迭代终止后得到的对抗噪声叠加到所述 看图说话系统要识别的图片上,以期望所述看图说话系统识别出的语句的 预定观测位置出现指定的词。
在一个实施例中,所述目标函数为所述对抗噪声的二范数的平方的预 定比例,减去给定将要叠加的对抗噪声时所述看图说话系统输出语句在预 定观测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输 出语句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数 在非预定观测位置出现的不同词组合下的最大值,加上给定将要叠加的对 抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为 预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现 的词组合不是各不同词组合的联合概率的对数与松弛变量的和在预定观测 位置出现的不同词组合和在非预定观测位置出现的不同词组合下的最大 值,所述松弛变量等于预定正常数乘以预定倍数,其中,所述预定倍数等 于所述看图说话系统输出语句在预定观测位置出现的词的组合中的词与预 定观测词组合对应位置中的词不同的数目。
在一个实施例中,所述确定具有求最大值符号的算项最大时算项中的 未知变量值,包括:
对于给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观 测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输出语 句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数在非 预定观测位置出现的不同词组合下的最大值这样一个具有求最大值符号的 算项,确定该联合概率最大时所述看图说话系统输出语句在非预定观测位 置出现的词组合,作为所述未知变量值;
对于给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观 测位置出现的词的组合不为预定观测词组合、以及所述看图说话系统输出 语句在非预定观测位置出现的词组合不是各不同词组合的联合概率的对数 与松弛变量的和的最大值这样一个具有求最大值符号的算项,确定该和最 大时所述看图说话系统输出语句在预定观测位置出现的词的组合、以及所 述看图说话系统输出语句在非预定观测位置出现的词组合,作为所述未知 变量值。
在该实施例中,所述去最大值符号包括:
在所述目标函数中,将所述联合概率的对数在非预定观测位置出现的 不同词组合下的最大值,替换成给定将要叠加的对抗噪声时所述看图说话 系统输出语句在预定观测位置出现的词的组合为预定观测词组合、以及所 述看图说话系统输出语句在非预定观测位置出现的词组合是确定的该联合 概率最大时所述看图说话系统输出语句在非预定观测位置出现的词组合的 联合概率的对数;
在所述目标函数中,将所述和在预定观测位置出现的不同词组合和在 非预定观测位置出现的不同词组合下的最大值,替换成给定将要叠加的对 抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为 该和最大时所述看图说话系统输出语句在预定观测位置出现的词的组合、 以及所述看图说话系统输出语句在非预定观测位置出现的词组合不是该和 最大时所述看图说话系统输出语句在非预定观测位置出现的词组合的联合 概率,替换后的目标函数作为剩余函数。
在一个实施例中,所述迭代终止条件包括以下中的至少一个条件:
当前轮迭代中解出的对抗噪声与上一轮迭代中解出的对抗噪声的差值 绝对值小于预定对抗噪声差值绝对值阈值;
当前轮迭代中确定的所述未知变量值与上一轮迭代中确定的所述未知 变量值一致。
根据本公开实施例的电子地图中的站点聚合方法可以由图10的对抗测 试组件101实现。图10显示的对抗测试组件101仅仅是一个示例,不应对 本公开实施例的功能和使用范围带来任何限制。
如图10所示,对抗测试组件101以通用计算设备的形式表现。对抗 测试组件101的组件可以包括但不限于:上述至少一个处理单元810、上 述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理 单元810)的总线830。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理 单元810执行,使得所述处理单元810执行本说明书上述示例性方法的描 述部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理 单元810可以执行如图3中所示的各个步骤。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存 取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包 括只读存储单元(ROM)8203。
存储单元820还可以包括具有一组(至少一个)程序模块8205的程 序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一 个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个 或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总 线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多 种总线结构中的任意总线结构的局域总线。
对抗测试组件101也可以与一个或多个外部设备900(例如键盘、指 向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该对抗测 试组件101交互的设备通信,和/或与使得该对抗测试组件101能与一个 或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等) 通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,对抗测 试组件101还可以通过网络适配器860与一个或者多个网络(例如局域网 (LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示, 网络适配器860通过总线830与对抗测试组件101的其它模块通信。应当 明白,尽管图中未示出,可以结合对抗测试组件101使用其它硬件和/或 软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述 的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方 式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式 体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM, U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可 以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开 实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机程序介质,其上存 储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时, 使计算机执行上述方法实施例部分描述的方法。
根据本公开的一个实施例,还提供了一种用于实现上述方法实施例中 的方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括 程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程 序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序 的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结 合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可 以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于 电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以 上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一 个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只 读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、 便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述 的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的 数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种 形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信 号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发 送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合 使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限 于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明 操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如 Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似 的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在 用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部 分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在 涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包 括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连 接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若 干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的 实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一 个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征 和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤, 但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是 必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以 省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤 分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描 述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件 的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品 的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是 CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算 设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根 据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想 到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或 者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原 理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说 明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权 利要求指出。
Claims (15)
1.一种对抗测试看图说话系统的方法,其特征在于,所述方法包括:
构造目标函数,所述目标函数基于第一对数和第二对数的差,所述第一对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合的概率的对数,所述第二对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词的组合不为预定观测词组合的概率的对数;
对所述目标函数中具有求最大值符号的算项,指定对抗噪声,基于所述对抗噪声,确定具有求最大值符号的算项最大时算项中的未知变量值,将所述目标函数中所述具有求最大值符号的算项去最大值符号后的部分作为剩余函数,将求出的未知变量值代入所述剩余函数中求解使剩余函数值最小时的对抗噪声,替代之前指定的对抗噪声,进行下一轮迭代,直至满足迭代终止条件;
将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识别的图片上,以期望所述看图说话系统识别出的语句的预定观测位置出现指定的词。
2.根据权利要求1所述的方法,其特征在于,所述目标函数为所述对抗噪声的二范数的平方的预定比例,减去给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数在非预定观测位置出现的不同词组合下的最大值,加上给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合不是各不同词组合的联合概率的对数与松弛变量的和在预定观测位置出现的不同词组合和在非预定观测位置出现的不同词组合下的最大值,所述松弛变量等于预定正常数乘以预定倍数,其中,所述预定倍数等于所述看图说话系统输出语句在预定观测位置出现的词的组合中的词与预定观测词组合对应位置中的词不同的数目。
3.根据权利要求2所述的方法,其特征在于,所述确定具有求最大值符号的算项最大时算项中的未知变量值,包括:
对于给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合是各不同词组合的联合概率的对数在非预定观测位置出现的不同词组合下的最大值这样一个具有求最大值符号的算项,确定该联合概率最大时所述看图说话系统输出语句在非预定观测位置出现的词组合,作为所述未知变量值;
对于给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合不是各不同词组合的联合概率的对数与松弛变量的和的最大值这样一个具有求最大值符号的算项,确定该和最大时所述看图说话系统输出语句在预定观测位置出现的词的组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合,作为所述未知变量值;
所述去最大值符号包括:
在所述目标函数中,将所述联合概率的对数在非预定观测位置出现的不同词组合下的最大值,替换成给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合是确定的该联合概率最大时所述看图说话系统输出语句在非预定观测位置出现的词组合的联合概率的对数;
在所述目标函数中,将所述和在预定观测位置出现的不同词组合和在非预定观测位置出现的不同词组合下的最大值,替换成给定将要叠加的对抗噪声时所述看图说话系统输出语句在预定观测位置出现的词的组合不为该和最大时所述看图说话系统输出语句在预定观测位置出现的词的组合、以及所述看图说话系统输出语句在非预定观测位置出现的词组合不是该和最大时所述看图说话系统输出语句在非预定观测位置出现的词组合的联合概率,替换后的目标函数作为剩余函数。
4.根据权利要求1所述的方法,其特征在于,所述迭代终止条件包括以下中的至少一个条件:
当前轮迭代中解出的对抗噪声与上一轮迭代中解出的对抗噪声的差值绝对值小于预定对抗噪声差值绝对值阈值;
当前轮迭代中确定的所述未知变量值与上一轮迭代中确定的所述未知变量值一致。
5.根据权利要求2所述的方法,其特征在于,在构造目标函数之前,所述方法还包括:
从看图说话系统的验证图片集中取出多个对抗测试对象图片;
对于每个对抗测试对象图片,在所述验证图片集中选取混淆依据图片;
在混淆依据图片对应的语句上的预定观测位置上取词,取出的词的组合作为预定观测词组合,取出的对抗测试对象图片作为看图说话系统要识别的图片;
在将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识别的图片上,以期望所述看图说话系统识别出的语句的预定观测位置出现指定的词之后,所述方法还包括:
将从所述看图说话系统输出的语句的预定观测位置上提取的词的组合与所述预定观测词组合进行比对,获得验证指标;
利用所述多个对抗测试对象图片的所述验证指标,验证对抗测试看图说话系统的效果。
6.根据权利要求5所述的方法,其特征在于,所述验证指标是命中率,其中,如果从所述看图说话系统输出的语句的预定观测位置上提取的词的组合与所述预定观测词组合相同,则命中率=1;反之,则命中率=0;
所述利用所述多个对抗测试对象图片的所述验证指标,验证对抗测试看图说话系统的效果,包括:将所述多个对抗测试对象图片的命中率取平均,得到平均命中率,如果平均命中率大于预定平均命中率阈值,则验证成功。
7.根据权利要求6所述的方法,其特征在于,所述如果平均命中率大于预定平均命中率阈值,则验证成功,包括:
如果平均命中率大于预定平均命中率阈值,获取叠加在所述多个对抗测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
8.根据权利要求5所述的方法,其特征在于,所述验证指标是精准率,其中,所述精准率为从所述看图说话系统输出的语句的预定观测位置上提取的词与所述预定观测词组合中相应位置上的词相同的个数除以从所述看图说话系统输出的语句的预定观测位置上提取的词的总数;
所述利用所述多个对抗测试对象图片的所述验证指标,验证对抗测试看图说话系统的效果,包括:将所述多个对抗测试对象图片的精准率取平均,得到平均精准率,如果平均精准率大于预定平均精准率阈值,则验证成功。
9.根据权利要求8所述的方法,其特征在于,所述如果平均精准率大于预定平均精准率阈值,则验证成功,包括:
如果平均精准率大于预定平均精准率阈值,获取叠加在所述多个对抗测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
10.根据权利要求5所述的方法,其特征在于,所述验证指标是召回率,其中,所述召回率为从所述看图说话系统输出的语句的预定观测位置上提取的词与所述预定观测词组合中相应位置上的词相同的个数除以述预定观测词组合的词总数;
所述利用所述多个对抗测试对象图片的所述验证指标,验证对抗测试看图说话系统的效果,包括:将所述多个对抗测试对象图片的召回率取平均,得到平均召回率,如果平均召回率大于预定平均召回率阈值,则验证成功。
11.根据权利要求10所述的方法,其特征在于,所述如果平均召回率大于预定平均召回率阈值,则验证成功,包括:
如果平均召回率大于预定平均召回率阈值,获取叠加在所述多个对抗测试对象图片的每一个上的对抗噪声的二范数;
计算叠加在所述多个对抗测试对象图片上的对抗噪声的二范数的平均值;
如果所述二范数的平均值小于预定二范数平均值阈值,则验证成功。
12.根据权利要求5所述的方法,其特征在于,所述在混淆依据图片对应的语句上的预定观测位置上取词,取出的词的组合作为预定观测词组合,包括:
在混淆依据图片对应的语句上分别取预定的不同数目个观测位置上的词,分别形成第一多个预定观测词组合;
在混淆依据图片对应的语句上分别取预定的不同数目个非观测位置以外的位置上的词,分别形成第二多个预定观测词组合;
所述将从所述看图说话系统输出的语句的预定观测位置上提取的词的组合与所述预定观测词组合进行比对,获得验证指标,包括:
将从所述看图说话系统输出的语句的预定的不同数目个观测位置上提取的词的组合与所述第一多个预定观测词组合中相应的观测词组合进行比对,获得多个第一验证指标;
将从所述看图说话系统输出的语句的预定的不同数目个非观测位置以外的位置上提取的词的组合与所述第二多个预定观测词组合中相应的观测词组合进行比对,获得多个第二验证指标;
在将从所述看图说话系统输出的语句的预定观测位置上提取的词的组合与所述预定观测词组合进行比对,获得验证指标之后,所述方法还包括:
基于所述多个第一验证指标和对应的观测位置数目,确定所述验证指标随观测位置数目的变化关系;
基于所述多个第二验证指标和对应的非观测位置数目,确定所述验证指标随非观测位置数目的变化关系。
13.一种对抗测试看图说话系统的装置,其特征在于,所述方法包括:
目标函数构造单元,用于构造目标函数,所述目标函数基于第一对数和第二对数的差,所述第一对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词的组合为预定观测词组合的概率的对数,所述第二对数是给定在看图说话系统要识别的图片上将要叠加的对抗噪声时,所述看图说话系统输出语句在预定观测位置出现的词的组合不为预定观测词组合的概率的对数;
迭代单元,用于对所述目标函数中具有求最大值符号的算项,指定对抗噪声,基于所述对抗噪声,确定具有求最大值符号的算项最大时算项中的未知变量值,将所述目标函数中所述具有求最大值符号的算项去最大值符号后的部分作为剩余函数,将求出的未知变量值代入所述剩余函数中求解使剩余函数值最小时的对抗噪声,替代之前指定的对抗噪声,进行下一轮迭代,直至满足迭代终止条件;
对抗噪声施加单元,用于将迭代终止后得到的对抗噪声叠加到所述看图说话系统要识别的图片上,以期望所述看图说话系统识别出的语句的预定观测位置出现指定的词。
14.一种对抗测试组件,其特征在于,包括:
存储器,存储有计算机可读指令;
处理器,读取存储器存储的计算机可读指令,以执行权利要求1-12中的任一个所述的方法。
15.一种计算机程序介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1-12中的任一个所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910381831.0A CN110188620B (zh) | 2019-05-08 | 2019-05-08 | 对抗测试看图说话系统的方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910381831.0A CN110188620B (zh) | 2019-05-08 | 2019-05-08 | 对抗测试看图说话系统的方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110188620A true CN110188620A (zh) | 2019-08-30 |
CN110188620B CN110188620B (zh) | 2022-11-04 |
Family
ID=67714278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910381831.0A Active CN110188620B (zh) | 2019-05-08 | 2019-05-08 | 对抗测试看图说话系统的方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110188620B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018076137A1 (zh) * | 2016-10-24 | 2018-05-03 | 深圳大学 | 一种高光谱图像特征描述子的获取方法及装置 |
CN108009154A (zh) * | 2017-12-20 | 2018-05-08 | 哈尔滨理工大学 | 一种基于深度学习模型的图像中文描述方法 |
CN108228700A (zh) * | 2017-09-30 | 2018-06-29 | 北京市商汤科技开发有限公司 | 图像描述模型的训练方法、装置、电子设备及存储介质 |
CN108305296A (zh) * | 2017-08-30 | 2018-07-20 | 深圳市腾讯计算机系统有限公司 | 图像描述生成方法、模型训练方法、设备和存储介质 |
CN108694443A (zh) * | 2017-04-05 | 2018-10-23 | 富士通株式会社 | 基于神经网络的语言模型训练方法和装置 |
CN108805260A (zh) * | 2017-04-26 | 2018-11-13 | 上海荆虹电子科技有限公司 | 一种图说生成方法及装置 |
US20180373979A1 (en) * | 2017-06-22 | 2018-12-27 | Adobe Systems Incorporated | Image captioning utilizing semantic text modeling and adversarial learning |
CN109525607A (zh) * | 2019-01-07 | 2019-03-26 | 四川虹微技术有限公司 | 对抗攻击检测方法、装置及电子设备 |
CN109685116A (zh) * | 2018-11-30 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 图像描述信息生成方法和装置及电子装置 |
-
2019
- 2019-05-08 CN CN201910381831.0A patent/CN110188620B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018076137A1 (zh) * | 2016-10-24 | 2018-05-03 | 深圳大学 | 一种高光谱图像特征描述子的获取方法及装置 |
CN108694443A (zh) * | 2017-04-05 | 2018-10-23 | 富士通株式会社 | 基于神经网络的语言模型训练方法和装置 |
CN108805260A (zh) * | 2017-04-26 | 2018-11-13 | 上海荆虹电子科技有限公司 | 一种图说生成方法及装置 |
US20180373979A1 (en) * | 2017-06-22 | 2018-12-27 | Adobe Systems Incorporated | Image captioning utilizing semantic text modeling and adversarial learning |
CN108305296A (zh) * | 2017-08-30 | 2018-07-20 | 深圳市腾讯计算机系统有限公司 | 图像描述生成方法、模型训练方法、设备和存储介质 |
CN108228700A (zh) * | 2017-09-30 | 2018-06-29 | 北京市商汤科技开发有限公司 | 图像描述模型的训练方法、装置、电子设备及存储介质 |
CN108009154A (zh) * | 2017-12-20 | 2018-05-08 | 哈尔滨理工大学 | 一种基于深度学习模型的图像中文描述方法 |
CN109685116A (zh) * | 2018-11-30 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 图像描述信息生成方法和装置及电子装置 |
CN109525607A (zh) * | 2019-01-07 | 2019-03-26 | 四川虹微技术有限公司 | 对抗攻击检测方法、装置及电子设备 |
Non-Patent Citations (7)
Title |
---|
HONGGE CHEN 等: "Attacking Visual Language Grounding with Adversarial Examples: A Case Study on Neural Image Captioning", 《ARXIV》 * |
KELVIN XU 等: "Show, Attend and Tell: Neural Image Caption Generation with Visual Attention", 《PROCEEDINGS OF THE 32ND INTERNATIONAL CONFERENCE ON MACHINE LEARNING》 * |
PIERRE DOGNIN 等: "IMPROVED ADVERSARIAL IMAGE CAPTIONING", 《ICIL 2019》 * |
YUANCHENG LI 等: "Defense Against Adversarial Attacks in Deep Learning", 《APPLIED SCIENCES》 * |
汤鹏杰 等: "LSTM 逐层多目标优化及多层概率融合的图像描述", 《自动化学报》 * |
王耀杰 等: "基于生成对抗网络的信息隐藏方案", 《计算机应用》 * |
邓珍荣 等: "融合word2vec和注意力机制的图像描述模型", 《计算机科学》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110188620B (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11610130B2 (en) | Knowledge sharing for machine learning systems | |
US11790238B2 (en) | Multi-task neural networks with task-specific paths | |
CN109190537B (zh) | 一种基于掩码感知深度强化学习的多人物姿态估计方法 | |
US11514694B2 (en) | Teaching GAN (generative adversarial networks) to generate per-pixel annotation | |
JP2018516412A (ja) | 畳み込みニューラルネットワークに基づいたフルリファレンス画像品質評価方法 | |
CN110135582B (zh) | 神经网络训练、图像处理方法及装置、存储介质 | |
US20220147877A1 (en) | System and method for automatic building of learning machines using learning machines | |
US9047566B2 (en) | Quadratic regularization for neural network with skip-layer connections | |
CN111724370B (zh) | 基于不确定性和概率的多任务图像质量评估方法及系统 | |
WO2017197330A1 (en) | Two-stage training of a spoken dialogue system | |
CN109766557A (zh) | 一种情感分析方法、装置、存储介质及终端设备 | |
CN111639247A (zh) | 用于评估评论的质量的方法、装置、设备以及计算机可读存储介质 | |
CN113435430B (zh) | 基于自适应时空纠缠的视频行为识别方法、系统、设备 | |
CN116596916B (zh) | 缺陷检测模型的训练和缺陷检测方法及其装置 | |
CN112002346A (zh) | 基于语音的性别年龄识别方法、装置、设备和存储介质 | |
Subakan et al. | REAL-M: Towards speech separation on real mixtures | |
CN114386580A (zh) | 决策模型训练、决策方法、装置、电子设备及存储介质 | |
CN110704668B (zh) | 基于网格的协同注意力vqa方法和装置 | |
CN113689514B (zh) | 一种面向主题的图像场景图生成方法 | |
CN110222578B (zh) | 对抗测试看图说话系统的方法和装置 | |
CN110188620B (zh) | 对抗测试看图说话系统的方法和相关装置 | |
CN115457365B (zh) | 一种模型的解释方法、装置、电子设备及存储介质 | |
CN114792097A (zh) | 预训练模型提示向量的确定方法、装置及电子设备 | |
CN111506753B (zh) | 推荐方法、装置、电子设备及可读存储介质 | |
CN109741250B (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 |