Page 350 - 《软件学报》2026年第7期
P. 350

陈家源 等: 说话人信息引导的高性能音频对抗攻击                                                        3035


                 相关讨论. 第   5  节总结本文.

                  1   说话人识别系统

                                                                                 n 个说话人构成的说话人集合
                    当前, 说话人识别系统主要包含注册与识别两个阶段. 在注册阶段, 设有一个由
                 为  G = {1,2,...,n}. 系统首先利用背景模型将这些说话人的音频映射为对应的注册嵌入 (通常表示为一维向量). 背
                 景模型可采用高斯混合模型          [22] 、i-vector [23] 等传统模型, 也可选用如  d-vector [24] 、x-vector [25] 等深度神经网络模型.
                                                                                          S(·) 计算该嵌入与
                 在识别阶段, 对于一段未知音频          x, 系统同样通过背景模型提取其嵌入表示, 随后利用评分模块
                                                     n
                 n 个说话人的注册嵌入之间的匹配分数            S(x) ∈ R , 最终依据得分情况输出识别结果.
                    说话人识别系统通常可完成两类任务: 闭集识别任务 (close-set identification, CSI) 和开集识别任务 (open-set
                 identification, OSI). 在  CSI 任务中, 系统仅需在已知的说话人集合   G 中选择最可能的说话人, 而无需考虑集合外的
                 其他说话人. 具体而言, 对于输入音频           x, 系统首先计算其与     G  中所有说话人的匹配分数         S(x), 随后直接选择分数
                 最高的说话人作为识别结果          J(x), 即   J(x) CSI = MaxIndex(S(x) i ), 其中  MaxIndex(·) 返回向量中最大值所对应的索引.
                                                       i∈G
                 而在  OSI 任务中, 系统不仅需判断       x 属于  G  中的哪一个说话人, 还需考虑其是否可能为未知的冒充者. 具体流程
                 中, 系统在计算匹配分数后, 会进一步结合预设的分数阈值                 θ  来判断音频   x 进行如下决策,    J(x) OSI = −1 时为冒充者.

                                                  
                                                   MaxIndex(S(x) i ), if maxS(x) i ⩾ θ
                                                  
                                                  
                                                       i∈G          i∈G                               (1)
                                           J(x) OSI = 
                                                  
                                                    −1,          otherwise
                  2   基于说话人信息的对抗攻击
                  2.1   场景设定
                    本文构建了白盒攻击与黑盒攻击两类实验场景, 以全面评估不同对抗攻击算法的性能. 在白盒攻击场景中, 攻
                 击者完全掌握目标模型的内部信息, 包括模型架构、参数、训练算法及所用数据集等. 在黑盒攻击场景下, 攻击者
                 无法获知目标模型的任何内部信息, 仅能通过模型输入输出接口访问并获取预测结果. 在黑盒条件下, 常见的攻击
                 手段主要包括基于迁移的方法和基于查询的方法两类: 基于迁移的方法通过在替代模型上生成对抗音频, 并依赖
                 其跨模型迁移能力对黑盒目标实施攻击; 基于查询的方法则通过多次调用目标模型接口, 根据反馈逐步优化对抗
                 音频. 然而, 实际商业环境中, 多数说话人识别服务 (如京东语音                 API) 会对用户查询频率和次数施加严格限制, 例
                 如每秒最多    2  次查询, 每日上限    500  次, 并可能收取相应查询费用, 这使得基于查询的攻击成本显著增加. 为贴近
                 真实攻击条件, 本文设定所有基于查询的黑盒攻击算法在每个对抗音频的生成过程中最多可进行                                500  次查询.
                    不失一般性, 假设攻击者能够利用当前丰富的开源语音数据集训练替代模型. 同时, 攻击者已知目标系统中注
                 册说话人的身份信息, 并可通过公开渠道 (如社交媒体或现场录音) 获取该说话人的部分音频样本, 以供后续攻击
                 使用. 已有研究   [26] 表明, 源说话人与目标说话人的不同组合以及识别任务的差异可构成多种攻击场景. 根据文献                         [19]
                 的建议, 本文重点研究      OSI 任务下的两种典型攻击情景: 无目标攻击 (OSI-u) 与有目标攻击 (OSI-t). 在这两种情景
                 中, 攻击者均试图利用冒充者的原始音频生成对抗音频, 以误导目标说话人识别系统产生错误判断. 二者的区别在
                 于攻击目标不同: OSI-u 旨在使对抗音频被系统错误地接受为任意一个已注册说话人; 而 OSI-t 则力求使样本被识
                 别为某个特定的目标注册说话人. 考虑到             OSI 任务在实际应用中比       CSI 任务更具挑战性, 且目前尚无主流商业说
                 话人识别系统采用       CSI 任务架构  [19] , 本文将研究重点集中于更具现实意义的          OSI 任务场景.
                  2.2   对抗音频生成
                                                                                                     ′
                                                                                                    x
                    传统对抗攻击方法核心为构造一个人耳难以察觉的微小扰动                     δ, 将其添加至干净音频      x, 以得到对抗音频  , 即:

                                                         x = x+δ                                      (2)
                                                          ′
                    然而, 这种直接在原始音频上添加扰动的方法, 往往难以兼顾对抗样本的隐蔽性与迁移性. 为此, 本文提出了
                 SIAttack  框架 (如图  2  所示), 其核心思想是通过在音频     x 的说话人信息上添加一个微小的扰动             δ, 以生成具有高隐
   345   346   347   348   349   350   351   352   353   354   355