通过揭示潜在的解释结构,快速准确地解释基于距离的分类器
《Pattern Recognition》:Fast and accurate explanations of distance-based classifiers by uncovering latent explanatory structures
【字体:
大
中
小
】
时间:2026年05月02日
来源:Pattern Recognition 7.6
编辑推荐:
弗洛里安·布莱(Florian Bley)| 雅各布·考夫曼(Jacob Kauffmann)| 西蒙·莱昂·克鲁格(Simon León Krug)| 克劳斯-罗伯特·穆勒(Klaus-Robert Müller)| 格雷瓜尔·蒙塔冯(Grégoire Montavon)
弗洛里安·布莱(Florian Bley)| 雅各布·考夫曼(Jacob Kauffmann)| 西蒙·莱昂·克鲁格(Simon León Krug)| 克劳斯-罗伯特·穆勒(Klaus-Robert Müller)| 格雷瓜尔·蒙塔冯(Grégoire Montavon)
柏林学习与数据基础研究所(BIFOLD)
德国柏林,邮编10587
**摘要**
基于距离的分类器,如k最近邻(k-nearest neighbors)和支持向量机(support vector machines),仍然是机器学习中的主力工具,在科学和工业领域得到广泛应用。在实践中,为了从这些模型中获取洞察,确保其预测结果具有可解释性也非常重要。尽管可解释人工智能(Explainable AI)领域提供了原则上适用于任何模型的方法,但也强调了潜在结构(例如神经网络中的层序列)在生成解释中的作用。在本文中,我们揭示了基于距离的分类器中隐藏的神经网络结构(由线性检测单元和非线性池化层组成),从而使可解释人工智能技术(如逐层相关性传播(Layer-wise Relevance Propagation,LRP)得以应用。通过定量评估,我们证明了我们提出的新解释方法相对于几种基线的优势。我们还通过两个实际案例展示了解释基于距离的模型的整体实用性。
**1. 引言**
基于距离的分类器长期以来一直是机器学习(ML)的核心工具。它们在科学和工业领域仍然被广泛使用,并且通常是处理表格数据或其他设计良好的特征表示的最佳方法[1]、[2],而深度神经网络有时难以达到最佳性能[3]。一旦构建了有意义的距离函数,就可以轻松应用k最近邻(KNN)或支持向量机(SVM)等模型,因为它们具有较少的超参数、能够快速找到全局最小值[4]、可控地引入非线性以及正则化特性[5]。基于距离的ML模型也越来越用于阐明现实世界数据中的非线性输入-输出关系[6]、[7]。例如,[8]将SVM和KNN模型与SHAP[9]解释技术结合使用,以识别对工业轴承故障分析有用的时频特征。类似的方法已在机械工程[10]、化学[2]、金融[11]或地震学[12]等领域得到应用。
除了预测功能外,基于距离的模型还具有内在的基于实例的可解释性——可以通过查找最近邻或支持向量来检查其预测结果(参见[12])。然而,这种基于实例的检查或通用XAI技术的应用不足以保证对其输入-输出关系的系统化、完整且计算效率高的描述。例如,简单的最近邻查找无法解释分类结果,因为它缺乏相关特征或对比示例的概念。在临床环境中,仅查看具有相同医疗条件的相似患者子集也无法揭示医疗条件的根本原因。相反,需要与健康受试者进行对比才能找到这些原因。通用基于特征的XAI技术(将模型视为黑箱)也有其局限性:它们依赖于多次使用人工扰动输入特征的模型评估,这会增加计算成本并可能导致不准确性。虽然这些技术问题可以通过特定于模型的XAI方法(如LRP[13])来解决,该方法利用潜在表示作为有序且计算效率高的解释过程的一部分,但据我们所知,尚未为基于距离的分类器设计出特定的XAI方法。这些模型的一个挑战是缺乏可用作起点的潜在表示。
核方法(如SVM)和最近邻模型仍然是许多模式识别流程的核心,通常在结构化特征空间上运行。我们的目标是实现快速、准确的、特定于模型的解释,揭示预测中最相关的特征。在本文中,我们为此提出了一种新方法。受[14]中提出的“神经化-传播”方法的启发,我们的方法分为两个步骤:(1)将基于距离的分类器重写为精确复制原始模型行为的神经网络,即保留精确的决策边界而不进行任何近似,同时暴露潜在的解释结构;(2)设计一种LRP归属程序,利用这些潜在结构并根据输入特征解释模型的预测结果。我们的新方法针对两种基于距离的分类器进行了实现,即使用欧几里得距离和高斯核的KNN和SVM——这两种是实际中最常用的设置。该方法还可以进一步扩展到回归模型(参见第5节)。
与模型不可知的方法相比,我们的方法速度显著更快——只需要两次函数评估。运行时实验(参见补充说明H)证实了这一速度优势。通过定量评估,我们展示了我们的方法在解释准确性方面优于模型不可知方法,适用于各种数据集和ML模型。我们的方法不需要重新训练,并能解释原始的未修改模型。最后,我们通过两个案例(葡萄酒品鉴和量子化学数据集)展示了我们提出的可解释基于距离的模型在揭示数据中的复杂非线性关系方面的实用性,这些关系超出了线性模型或相关分析的能力范围。
**2. 相关工作**
在考虑可解释人工智能领域时,特别是通过ML模型提取数据中的非线性关系,我们可以区分三种通用方法。下面简要讨论这些方法,并引用相关文献。
**2.1. 本质可解释的ML模型**
第一种方法是开发本质上可解释的ML架构。线性模型[15]或广义加性模型(GAMs)[16]、[17]通过总结输入特征或这些特征的非线性变换来满足这一要求。在这些模型中,每个输入特征的贡献可以直接从求和项中识别出来。类似的想法也可以在图像分类中找到,其中称为“全局平均池化”的求和操作被放置在卷积层的输出端[18]、[19]。池化中最大的值可以解释为图像中最重要的空间位置。虽然GAMs和其他本质可解释的ML模型有助于制定解释问题,但它们的受限结构限制了可以从数据中提取的非线性关系的范围,可能导致洞察力有限。
**2.2. 模型不可知的XAI技术**
另一种称为“模型不可知”的方法试图通过应用于任何非线性ML模型来提取更广泛的非线性关系。例如集成梯度(IG)[20]将ML模型视为一个函数,并通过沿输入域中的某些路径反复评估该函数及其梯度来进行解释。然后从收集到的梯度中得出特征贡献。基于遮挡的方法[21]通过测试从输入数据中移除每个输入特征对模型输出的影响来进行解释。一种流行的基于遮挡的方法是SHAP方法[9],该方法在Shapley值[22]框架的基础上进行理论构建,并考虑了同时移除多个特征的效果。大多数模型不可知的XAI方法的共同点是它们都通过局部评估模型及其梯度来测量效果。因此,它们面临一个权衡:进行更多评估可以提高解释准确性,但会增加计算成本(参见[23]、[24])。
**2.3. 特定于模型的XAI技术**
另一种方法旨在克服模型不可知XAI方法的局限性,即利用流行ML模型中存在的特定内部结构,例如神经网络的隐藏层。一种方法是逐层相关性传播(LRP)[13]。LRP通过单次反向传播通过模型生成解释,该过程利用了每一层中的激活值和非线性。LRP方法已扩展到多种神经网络架构,包括Transformer[25]和Mamba[26]。在[27]中,发现了基于距离的异常模型中的潜在距离池化结构,使得LRP方法可以应用于这些非神经网络模型。在[14]中,类似的潜在结构也在k均值聚类模型中被发现。在非LRP方法中,我们找到了为特定模型(如处理二进制输入特征的SVM[28]或决策树[29])开发的高效Shapley值算法。虽然这些特定于模型的XAI方法能够为其各自模型类别提供快速准确的解释,但它们不适用于本文关注的基于距离的分类器。
**3. 揭示基于距离的分类器中的解释结构**
可解释人工智能在解释复杂、先进的神经网络的预测结果方面特别成功。这种成功可以归因于这些模型中存在的中间表示,这些表示可以作为识别相关特征过程中的解释结构[13]、[25]、[26]。然而,这些结构似乎在基于距离的分类器中不存在,而这是我们的目标模型类别。我们通过展示基于距离的分类器可以重新表述为等效的神经网络来做出贡献。我们发现的这些神经网络的独特之处在于它们提供了促进解释所需的必要结构。
**3.1. SVM的神经网络等价物**
SVM模型[30]、[31]、[32]通过核函数对数据点的相似性进行加权分类,这里假设核函数为高斯函数。SVM选择一组相关的训练数据——支持向量(SVs),并使用模型优化过程中找到的对偶参数α对它们进行加权。一个训练有素的高斯核SVM根据函数f(x)的符号对数据点x进行分类:
f(x) = ∑?=1 ny??α?exp(?γ?‖x?u?‖2) + θ
其中γ>0是核平滑参数,θ∈R是模型偏置,u?是带有类别标签y?∈{?1, +1}的支持向量。函数f(x)的一个示例如图1(左)所示。该图突出了训练数据附近的局部极值,梯度通常不指向决策边界,因此无法支持可解释性。
为了克服这一限制,我们提出了一个包含可解释层次结构的等效神经网络。我们提出的网络由三层组成,精确保留了方程(1)提供的原始决策边界(完整的逐步推导见补充说明A):
- 下载高分辨率图像(31KB)
- 下载全尺寸图像
神经网络如图1(中间)所示。第一层可以解释为检测层,由一对相反类别的支持向量索引的神经元组成,每个神经元计算一个线性激活值wij=2(ui?uj),偏置bij=γ?1log(αi/αj),以及支持向量中点mij=(ui+uj)/2。这些激活值随后传递到另外两层,可以解释为池化层:对于正类支持向量,使用平滑最大值(smaxiγ{ai}=γ?1log∑iexp{γai});对于负类支持向量,使用平滑最小值(sminiγ{ai}=smaxi?γ{ai})。为了包含模型偏置θ,如果偏置为正,则需要在C+池中添加项z0=?γ?1log(|θ|);如果偏置为负,则在C?池中添加。关键的是,除了揭示的线性和池化解释结构外,还可以证明f(x)和g(x)始终具有相同的符号,从而实现相同的决策边界(参见补充说明A)。我们的神经网络重新表述与其他SVM重新表述(如RBF网络[33]或随机特征模型[34])的不同之处在于它专注于支持可解释性。我们的神经化SVM的线性结构可以从其参数中轻松识别出来,它们与决策边界的对齐在图1(右侧)中g(x)的绘制中可以清晰看到。下载:下载高分辨率图像(511KB)下载:下载全尺寸图像图1. 提出的SVM神经网络重构以提高其可解释性。左侧:在二维数据上训练的高斯SVM的输出f(x)。红色表示正类,蓝色表示负类。函数f(x)在训练数据附近饱和。中间:神经化SVM的图示,包括一个线性层,后面跟着两个池化层。神经元根据选定测试点的激活状态进行颜色编码(左侧面板中的‘×’)。右侧:神经化模型的输出g(x)。请注意,神经化模型保留了原始SVM的决策边界,同时消除了饱和现象,从而揭示了一个有助于解释的分段线性结构。3.2. KNN的神经网络等价物我们现在将神经化策略扩展到KNN分类器。这些分类器收集与测试数据点最接近的k个训练点子集,并根据其邻居的多数类别进行分类,即根据函数的符号进行分类:(2)f(x)=∑?=1ny??1{‖x?u?‖≤dk(x)}其中u?表示带有其类别标签y?∈{?1,+1}的训练输入样本,dk(x)=‖x?uk‖是到第k个最近邻居的距离。假设超参数是一个奇数,即k=2q?1,其中q∈Z+。直观地说,分类是由每个类别的第q个最近邻居决定的:如果第q个最近的正类邻居比第q个最近的负类邻居更近,则结果为正类(反之亦然)。我们注意到,由于方程(2)不可微分,使用传统方法特别难以解释;特别是基于梯度的解释方法不适用。我们建议将KNN的决策边界重新表述为以下三层网络(完整推导见补充说明B):下载:下载高分辨率图像(29KB)下载:下载全尺寸图像与SVM的神经化类似,第一层由成对的反类别邻居索引的线性检测单元组成。每个单元计算一个预激活值zij,其中mij和wij的定义类似于方程,并包含对比反类别点的方向信息。得到的激活值再次通过池化层,这次是先对正类邻居进行排序最大值处理,然后对负类邻居进行排序最小值处理,rmin/rmax是排序最小/最大值运算符,即rmini∈Iq{ai}返回集合{ai}i∈I中的第q小值。所提出的神经网络结合了每类的第q个邻居比较,在决策上等同于原始的KNN模型(证明见补充说明B)。直观地说,其检测单元评估模式(x?mij)与每个类别的对应邻居差异是正相关还是负相关。池化层保留了最能上下文化预测的邻居对的效果。4. LRP解释对于SVM和KNN在第3节中建立了基于距离的分类器的神经网络等价物后,我们现在推导出逐层相关性传播(LRP)[13]规则,这些规则将这些网络中的预测逐层反向传播,直到达到输入特征。接下来,我们首先讨论通过两个池化层的相关性传播,然后是线性检测层。4.1. 池化层中的传播SVM和KNN的软池化和排名池化层作为最活跃的支持向量/邻居对激活的选择器。我们的相关性传播通过推导出重新分配权重来逆转这种选择,将这些权重重新发送回成对的检测单元。我们首先介绍SVM(软池化)的情况,然后是KNN(排名池化)的情况。为了通过神经化SVM的池化层进行传播,我们遵循[14]、[27]中的方法,其中模型的输出通过LRP规则重新分配给池化输入zij:(3)Rij=exp(βzij)∑i′exp(βzi′j)︷pi?exp(?βhj)∑j′exp(?βhj′)︷pj?g(x)项pi和pj是‘softargmax’和‘softargmin’函数,类似于前向传播中的softmax和softmin函数。超参数β∈R+控制重新分配的“刚性”:对于较大的β,它接近于argmax/argmin,将所有相关性分配给最接近的支持向量对对应的检测单元;而对于较小的β,它变得更加均匀,将相关性分配给更远的支持向量。当选择β=γ时,传播规则可以用池化层输出对其输入的梯度来表示。有趣的是,方程(3)中的第一项可以被证明对所有j都是等价的,因此可以用没有索引j的因子pi来表示(见补充说明C)。对于神经化KNN的池化层,我们首先回想一下,分类仅由两个q=(k+1)/2最近邻居决定。与SVM情况类似,我们提出了一个平滑的相关性分布,不仅针对第q个最近的数据点,还针对围绕它的索引邻域。具体来说,我们引入了一个参数κ来定义以第q个邻居为中心的“索引带”,我们分别用P和N表示正类和负类数据点(具体规范见补充说明C)。然后我们根据LRP规则在这些索引上均匀重新分配:(4)Rij=1{i∈P}∑i′1{i′∈P}︷pi?1{j∈N}∑j′1{j′∈N}︷pj?g(x)这与描述SVM情况的方程(3)具有相同的结构,即神经化模型的输出乘以概率分数pi和pj。类似于SVM情况中的β,参数κ控制重新分配的带宽。对于κ=0,只有每类的第q个最近邻居对有贡献。对于κ=1,相关性还会分配给排名q-1和q+1的神经元对。因此,增加κ会逐步包含更多的邻居对。4.2. 检测层中的传播在通过池化层传递相关性之后,我们的下一步是通过检测层进一步传播相关性。在这最后一步中,我们通过线性单元检测到的输入空间特征将成对的相关性映射到特征级相关性。为此,我们首先分析根据方程(4)和(3)分配给检测层输出的相关性。这三个项都依赖于x,但以复杂非线性的方式,这使得以适当的方式将这个量传播到输入特征变得困难。为了解决这个问题,我们采用了类似于[14]、[35]中的策略,即构建一个“相关性模型”。具体来说,我们的相关性模型构建了Rij的以下局部扩展:(5)R?ij=[pipj]cst?zij其中zij线性依赖于x,而pi和pj被视为局部常数(详细分析见补充说明D,包括当SVM偏移θ非零的情况)。直观地说,这种相关性模型在检测单元输出与其分配的相关性之间强加了一个局部比例关系。具体来说,当没有检测到模式时,相关性为零。当一对支持向量(i,j)在池中占主导地位时,即pipj≈1,或者当同类别邻居接近且类别之间的距离较大时,这种建模选择特别准确。在方程(5)中定义了相关性模型R?ij之后,我们现在继续将分类器的证据重新分配给输入特征。为此,我们考虑一阶泰勒展开R?ij(x)=R?ij(x?)+(x?x?)?(wij?pipj),其中x?是一个参考点,点积的元素标识了要重新分配到每个输入特征的数量。R?ij(x?)是泰勒展开的零阶项,可以解释为一个本质上不能重新分配给输入的常量偏移。我们建议在段[0,mij]上选择x?,具体来说,我们将其参数化为x?=η?mij,其中η∈[0,1]是一个超参数,用于控制参考点在段上的位置。这允许我们在汇总通过所有检测单元传递的相关性后,以封闭形式表达对输入特征的整体重新分配:(6)Eη(x)=∑i∈C+∑j∈C?(x?η?mij)⊙(wij?pipj)较大的η值意味着每个检测单元的解释相对于其最活跃的输入空间范围。这种参考上下文化使得解释能够很好地适应模型响应的不连续性,并且如补充说明G中的超参数分析所支持的,更适合解释更非线性的分类器。相反,较低的η值设置了一个统一的参考x?=0,适用于所有检测单元的相关范围较宽的情况,例如,当决策函数接近线性时。算法1总结了我们方法的概念流程:基于距离的模型的神经化和激活收集,然后通过LRP类型的相关性重新分配进行解释。下载:下载高分辨率图像(134KB)下载:下载全尺寸图像4.3. 计算成本直接计算方程(6)需要对所有数据点对进行求和,因此引入了与邻居或支持向量数量二次方的计算复杂性。然而,值得注意的是,任何选择的η的解释都可以表示为两个极端情况的线性组合,即Eη=(1?η)?Eη=0+η?Eη=1,对于这两个极端情况,嵌套求和可以分解为两个单独的求和(见补充说明E)。这意味着我们方法的解释成本与支持向量或最近邻居的数量成线性关系。具体来说,计算成本相当于只对原始分类器进行两次评估。这使得我们的方法比基于重复函数评估的其他解释技术(如集成梯度、Occlusion或SHAP)更高效。在真实世界数据集上的相应墙钟运行时间测量结果见补充说明H。它们证实了这些理论预测,显示出比SHAP快两个数量级的加速。在高维输入(例如MNIST变体)上,LRP-KNN在不到30秒内计算出1000个解释,而SHAP则需要超过一个小时。此外,由于我们方法的成本主要由前向传播决定,因此对底层模型推理的任何加速(例如,支持向量剪枝或硬件并行化)都会直接转化为我们解释的等效加速。5. 扩展到回归和多类SVM虽然我们为二元SVM和KNN模型开发了我们的方法,但它可以扩展到实践中常用的更广泛的模型类别。在第6节进行实证评估之前,我们下面简要讨论了对回归和多类情况的两种扩展。扩展到回归基于距离的回归模型在机器学习应用中是一个流行的选择[36]、[37]。常见的回归公式如核岭回归(KRR)或支持向量回归可以将其输出表示为:(7)f(x)=∑?=1nα?exp(?γ‖x?x?‖2)+θ,其中α?∈R和θ∈R是模型的参数。这个表达式与高斯SVM的方程(1)有很强的相似性,不同之处在于y?缺失,且α?可能是正数或负数。对于我们的目的,即将神经化/LRP应用于这类模型,如果我们将(8)(α?y?)←(|α?|sign(α?)),则可以消除这两个方程之间的差异,使得α?>0和α?<0的点分别充当正类和负类支持向量,检测单元由相反符号的对组成。尽管方法上很直接,但由于问题的回归性质,需要进一步小心处理。神经化保留了f(x)的符号,但不保留原始的实数值输出。因此,实践者必须在解释模型之前仔细选择一个参考值c(即等高线水平)。技术上,可以通过修改偏置项θ′=θ?c来简单地移动模型输出,使得决策边界与所需的等高线重合。在解释过程中,截距可以类似于高斯SVM情况来处理(见补充说明D)。然而,这种操作不会改变系数α?,并且不会将输入解释上下文化到所选的级别。或者,特别是对于KRR,可以通过在偏移目标上重新训练来吸收参考级别。利用KRR解的线性,可以廉价地获得更新后的系数α′=α?c?Δα,其中Δα=(K+λI)?11可以预先计算一次,将决策边界放置在任何所需的等高线c上。这种转换使预测器重新居中,使得y>c的训练点通常获得正系数,而y在这种公式中,每个成对的分类器都会为其预测的类别投票。如果我们用fck(x)表示类别c和k之间的判别函数,那么关于类别c的投票模式总结可以表示为:(9)vc(x)=∑k≠cσ(fck(x)),其中σ是阶跃函数(或其某种软变体)。特别是,argmax_c vc(x)可以再现多类SVM的决策过程。我们的神经化/LRP方法可以通过利用与二元SVM中相同的判别概念自然地扩展到这种多类设置中,但这次是在投票计算上。具体来说,可以通过将其投票数与最接近的竞争者的投票数进行比较来获得某个给定类别c的判别函数:(10)gc(x)=min_k≠c{vc(x)?vk(x)},现在支持类别c的决策可以表示为谓词gc(x)>0。通过结合方程(9)和(10),可以实现这种多类判别函数与单个二元SVM输出之间的连接,形成一个嵌套的求和池化和最小池化结构,这适合我们的解释框架。此外,可以通过在方程2a–2c中的三层神经化SVM之上添加这种嵌套结构,从而将多类输出与输入特征连接起来,从而形成一个五层网络。一旦网络构建完成,就可以通过设计特定的LRP规则来解释每一层。
6. 实证评估
我们在第3节“揭示基于距离的分类器中的解释结构”和第4节“SVM和KNN的LRP解释”中提出了一种结合神经化和通过LRP规则进行传播的方法,用于解释两类基于距离的分类器:核SVM和KNN。为了评估我们的方法(以下称为“LRP-SVM”和“LRP-KNN”),我们将其解释准确性与其他基线方法进行了比较,并涵盖了多种分类任务和模型。随后的消融研究考察了我们方法的两个组成部分(神经化和传播)各自对提高解释准确性的贡献。我们的方法产生的解释示例在第7节“用例1:解释葡萄酒质量”和第8节“用例2:解释偶极矩预测”中提供。
6.1. 评估指标
解释的准确性通常被理解为其指明真正对模型输出有贡献的特征的能力。为了量化这一点,我们依赖于一种称为“像素翻转”[13]、[38]的技术,该技术根据解释的重要性递减顺序移除输入特征,并监测这些移除对分类器输出的影响程度。具体来说,在每次特征移除步骤之后,我们记录分类结果(+1:原始分类,-1:翻转后的分类),这个过程可以表示为翻转曲线(FC)。解释准确性被量化为该翻转曲线下的面积(AUFC),并取所有数据点的平均值。AUFC越低,解释效果越好。在我们的设置中,AUFC的值范围是从-1到1。作为一种测试特征移除对模型输出影响的方法,AUFC从模型的角度评估解释质量,即模型如何看待输入-目标关系。为了实现更广泛的验证,我们还在第6.4节中包括了在包含真实相关特征的合成数据上的评估。
6.2. 数据集和模型
我们在多个领域的多样化分类数据集上进行了评估。我们在补充说明F中提供了数据集的URL和数据集特征。我们使用了来自UCI机器学习库的四个二元表格分类数据集:乳腺癌、糖尿病风险、葡萄干和水稻。我们还包括了来自MedMNIST基准的两个二元图像分类任务:BreastMNIST和PneumoniaMNIST。此外,我们将UCI汽车评估数据集改编为一个二元任务,预测汽车是否被评为“不可接受”。我们还从四个回归数据集中派生了二元分类任务。对于UCI葡萄酒质量数据集,我们根据中位数分数将葡萄酒分类为高质量或低质量。在UCI混凝土抗压强度数据集中,我们根据样本的抗压强度是否超过第90百分位数来进行分类。对于UCI房地产评估数据集,我们区分价格高于或低于中位数的房产。最后,对于OCM催化剂数据集[39],我们遵循[2]中提出的分类任务,根据C2产量是否超过13%来进行分类,并复制了他们的特征选择程序。所有数据集都应用了统一的预处理。我们首先使用固定的随机种子对数据进行了洗牌,出于计算原因将其子采样到最多5000个数据点,然后进行了80/20的训练-测试分割。基于训练分割的统计数据,我们将特征标准化到零均值和单位方差,然后重新缩放数据以实现单位中位数成对距离,确保不同数据集之间的γ值可比,并使γ=1与中位数启发式一致[40]。预处理统计信息仅在训练分割上拟合一次。对于解释评估(AUFC),我们使用了在所有解释方法中共享的测试分割中随机选取的300个样本子集。我们在每个数据集的训练分割上训练了一个高斯SVM和一个KNN模型。模型超参数是通过5折分层交叉验证选择的,不进行折叠洗牌,使用sklearn.GridSearchCV进行评估,评估标准是在训练分割上的准确性。通过按训练数据中类别频率的倒数加权来处理类别不平衡。我们在补充说明I中提供了预处理、模型选择协议、超参数网格、解释设置和使用的软件版本的完整概述和额外细节。
6.2.1. 超参数选择和基线方法
我们从第4节回忆起,我们的方法基于带有超参数的LRP规则:η控制检测层中解释的上下文化程度,而κ和β决定了解释在最近数据点或支持向量方面的局部化程度。虽然可以在每个数据集的基础上微调解释超参数(例如,使用像素翻转和交叉验证),但这需要实践者付出大量努力。相反,我们基于实证分析(补充说明G)发现,可以根据模型的尺度参数γ和k适当地设置这些参数,从而得出表1中的启发式规则。正如我们的结果所展示的,这些启发式规则在各种数据集上表现稳健。直观地说,较大的η为检测单元提供了更多的局部参考点,因此对于更非线性、变化迅速的决策函数有益,这在RBF SVM中由较大的γ引起。在KNN中,我们发现高检测层上下文化在各种数据集和k设置中都表现稳健。在池化层中,我们发现β=γ对于SVM来说效果最好,使重分布带宽与前向传递带宽相匹配,而对于KNN,最宽的允许带宽κ=(k?1)/2(即,每个类别包含k个邻居)表现最佳。
我们的方法针对几个已建立的解释基线进行了测试。首先,我们考虑了使用原始模型输入梯度的Gradient×[41]进行评估。此外,我们还考虑了使用数据原点作为参考点并执行10个积分步骤的集成梯度[20]。在基于梯度的解释基线中,我们还考虑了敏感性分析[42]、[43],它使用平方输入梯度来解释SVM模型输出。作为非基于梯度的基线,我们考虑了遮挡分析[21],将独立特征设置为数据均值,以及Shapley值采样[9](我们称之为SHAP),使用10个随机特征移除序列。最后,我们还测试了基于替代品的解释LIME[44]和Kernel SHAP[9]。
表1. 根据模型特征(γ和k)为每层和每个模型设置LRP超参数(η、β和κ)的提议启发式规则。median{0,?,1}操作符将参数限制在[0,1]区间内。SVM的启发式规则假设输入数据已标准化,使得样本之间的中位数欧几里得距离为一。这些启发式规则用于我们在第6.3节中的评估。
6.3. 结果
我们的评估结果如表2所示。我们的方法在各种模型类型和数据集中都展示了优越的解释准确性。对于SVM,我们的LRP-SVM方法在11个数据集中的8个数据集中排名第一或第二,特别是在高γ(高度非线性)模型中,AUFC的改进尤为显著,因为在这些情况下输入空间中的局部极值问题最为明显。在这些情况下,AUFC与第二好方法的差异通常是估计标准差的倍数。对于KNN分类器,在梯度基方法不适用的情况下,我们的LRP-KNN方法在11个数据集中的9个数据集中表现优于遮挡和基于替代品的LIME和Kernel SHAP基线,且AUFC差异较大。虽然遮挡和SHAP在KNN上的表现明显不如在SVM上好——可能是因为单个遮挡步骤无法修改离散的KNN输出——但LRP通过我们的神经化检测单元引入的方向性保持了强大的性能。LRP在像MNIST变体这样的高维数据集上表现优异,其中单个特征的遮挡仅限于局部探测,而LIME/Kernel SHAP由于难以拟合准确的局部替代品而不够稳健。总体而言,SHAP由于能够采取更大的步骤来探测输入空间并可能绕过局部极值而排名第二。虽然SHAP偶尔在SVM上表现优于LRP,但这些可解释性的提升代价较高且计算成本显著更高。实际上,LRP-SVM/LRP-KNN的低样本成本使其能够大规模地进行解释(例如,对于大型测试集或高维输入),而SHAP的较高计算成本可能在这种设置中变得不可行。
为了确定模型参数对解释准确性的影响,我们在糖尿病数据集上进行了控制实验:对于RBF-SVM,我们改变了核带宽γ;对于KNN,我们改变了邻居数量k,重新训练每个设置,并通过AUFC评估解释准确性(图2)。LRP超参数使用表1中的启发式规则设置。对于接近线性的SVM,在小γ值时,所有比较的解释方法产生的AUFC相似。随着γ的增加(非线性边界增加),LRP-SVM有所改进,而Gradient×
?Input和Occlusion则退化,这与更局部的极值使得基于局部扰动的解释信息量减少一致。对于KNN,LRP-KNN在测试的k值范围内保持稳健,没有明显的变化趋势。Occlusion随着k的增加而改进(但仍受LRP-KNN的支配),这与较大邻域可以平滑离散投票响应的事实相符:扰动会产生更细粒度的邻居类别计数变化,而对于小k值,量化多数投票可能会掩盖较小的效应大小。
表2. 不同解释方法对SVM和KNN的AUFC结果。较低的值表示更好。每个数据集的最佳解释用粗体突出显示。第二好的解释用下划线标出。表示计算成本较高的方法。Max std. err.表示该数据集行中所有解释方法的平均AUFC值的最大标准误差。
数据集 Model GI (?f)2 Occlusion SHAP Kernel SHAP LIME LRP-SVM
BreastMNIST SVM γ=30.2 2 0.33 8 0.70 4 0.18 5? 0.34 5 0.76 4 0.69 9 0.04 ±0.065
Breast Cancer SVM γ=0.01 0.50 5 0.50 5? 0.70 3 0.50 5 0.58 3 0.69 8 0.50 3±0.036
Car Evaluation SVM γ=30.2 0.30 5 0.30 5 0.09 0.03 9 0.03 3? 0.058 ±0.021
Catalyst SVM γ=3 0.04 3 0.04 7 0.60 6 0.18 6 0.04 0.41 3 0.32 1 0.11 6? ±0.077
Concrete SVM γ=3 0.71 8 0.67 8 0.67 8 0.67 9 0.68 8 0.65 5±0.031
Diabetes Risk SVM γ=3 0.35 1 0.35 2 0.63 4 0.31 8? 0.33 6 0.41 2 0.37 1 0.23 ±0.048
PneumoniaMNIST SVM γ=3 0.58 9 0.58 6 0.88 4 0.49 4? 0.58 7 0.89 3 0.86 8 0.35 ±0.039
Raisin SVM γ=0.3 0.64 6 0.60 6 0.74 9 0.61 0.60 5 0.60 5? 0.61 ±0.020
Real Estate SVM γ=10 0.57 3 0.42 8 0.38 3 0.41 1 0.41 2 0.38 5? ±0.044
消融研究
为了分析我们方法的两个组成部分(即(1)神经化和(2)通过LRP规则进行传播)的个别影响,我们进行了一项消融研究,逐步引入这两个组成部分,针对每对数据集和SVM模型。我们的起点是应用于原始函数f(x)的基本Gradient×
?Input(GI)。然后在神经化模型g(x)上执行相同的GI。最后,用我们提出的LRP规则替换GI。结果显示在图3中。我们观察到,单独引入神经化就可以一致地提高所有数据集/SVM对的AUFC分数。这表明,神经化通过移除训练数据附近的虚假局部极值来降低决策函数的饱和度,本身就有效提高了解释质量。添加传播步骤(即我们特意定义的LRP规则)进一步提高了解释质量,表现为AUFC分数的进一步降低。与表2的结果类似,我们看到SVM的参数γ与AUFC降低的程度之间存在关系,较大的γ值获得了最大的改进。此外,我们还可以观察到神经化和传播都各自显著降低了AUFC分数。仅神经化导致的AUFC降低可以通过后者降低原始SVM函数的饱和度来解释,从而去除其附近的局部极值。由于传播效应导致的额外AUFC降低,可以归因于我们的LRP规则提供进一步上下文化的能力(通过较大的η值),这对于解释SVM的整体非线性响应至关重要。下载:下载高分辨率图像(117KB)下载:下载全尺寸图像图2. 模型超参数对糖尿病数据集解释质量(AUFC)的影响。左图:不同核带宽γ下的RBF-SVM。右图:不同邻域大小k下的KNN。比较的方法包括:LRP(黑色)、Gradient×Input(灰色;仅SVM)和Occlusion(紫色)。AUFC越低越好。在左图中观察到,增加γ倾向于改善LRP-SVM的性能,而基线方法则没有显示出类似的改进;在右图中,LRP-KNN与k之间没有明显的一致性关系。下载:下载高分辨率图像(161KB)下载:下载全尺寸图像图3. 逐步引入我们LRP-SVM方法的神经化和传播步骤的消融研究。结果显示与表2中相同的数据集和SVM模型。观察灰色、深灰色和黑色条形图,分别对应于添加神经化和然后是LRP传播的情况。6.4. 使用受控真实值验证特征相关性我们对真实世界数据集的评估必然依赖于AUFC等替代指标,因为无法观察到真正的特征相关性。为了进一步测试我们的解释方法结合适当的基于距离的模型来恢复数据中真正有信息量的特征的能力,我们进行了一个受控的合成实验,在该实验中,数据生成过程提供了输入维度相关性的真实值。我们使用Scikit-learn的make_classification生成了五个二分类数据集,每个数据集有5000个样本,每个类别2个簇,共40个特征,其中20个是具有类别信息量的特征,20个是噪声特征(种子0-4)。我们在每个数据集上训练了一个RBF SVM和一个KNN分类器,并应用了第6.2节中相同的分割、预处理和模型选择协议。我们使用表1中的超参数启发式方法对每个分类器进行解释。为了验证真实信息量特征的恢复情况,我们分析了按真实信息量特征和非信息量特征分组的绝对相关性值的经验分布,并在图4中报告了结果。LRP一致地将更高的相关性幅度赋予真实信息量特征(更高的中位数和四分位数),而不是噪声特征,这表明成功恢复了区分类别的维度。这种效果在SVM中比在KNN中更为明显,可能是因为KNN更依赖于局部数据几何结构,因此更容易受到特征噪声的影响,而SVM则通过支持向量更明确地编码了区分类别的边界。下载:下载高分辨率图像(116KB)下载:下载全尺寸图像图4. 综合分类数据集上产生的(绝对)LRP相关性分数分布的箱形图(橙色为信息量特征,绿色为非信息量特征)。箱形图显示了LRP-SVM(上)和LRP-KNN(下)在五个数据集重复实验中的中位数和四分位数范围。橙色(信息量特征)和绿色(非信息量特征)箱形图之间的垂直间隔表明成功识别了真实特征。观察到信息量特征始终获得比非信息量特征更高的绝对相关性,这从橙色箱形图与绿色箱形图相比更高的四分位数范围可以看出。7. 使用案例1:解释葡萄酒质量在这个使用案例中,我们重新审视了[45]对UCI葡萄酒质量数据集的分析,该数据集包含1599个红葡萄酒样本和4894个白葡萄酒样本。每个样本包括物理化学测量值(例如pH值、硫含量)以及由至少三名盲品师给出的质量评分(1-10分)。在他们最初的研究中,作者分析了高斯SVM的预测。特别是,他们不仅查找了最近的支持向量,还进行了基于特征的预测质量敏感性分析。然而,由于没有专门的XAI方法,他们的方法没有揭示输入特征与葡萄酒质量之间的明确正相关或负相关关系。因此,我们应用我们的LRP-SVM方法来揭示整个数据集中的这些定向关系。我们专注于数量较多的白葡萄酒样本,并考虑将它们分类为质量评分高于或低于5分。我们训练了一个γ值为10^-4的SVM和一个γ值为0.2的SVM。正则化参数C是通过网格搜索并优化模型准确性来设置的。LRP-SVM参数根据表1中的启发式方法进行设置。由于解释训练数据点的预测会导致过拟合偏差,我们反复将数据集分成五个折叠的训练集和测试集。对于每次分割,我们在训练集上训练SVM并为测试集上的预测生成解释。这种方法使我们能够为数据集中的每个数据点获得解释。图5显示了我们分析的输出,特别是输入值与其对模型输出的贡献之间的全数据集范围内的关系。当数据由低γ值的SVM建模时,我们的分析揭示了特征与葡萄酒味道之间的基本线性联系。当数据由更具表现力的高γ值SVM建模时,我们的分析揭示了更丰富的非线性关联。例如,在考虑糖含量与味道的关系时,我们的分析表明,残糖含量适中的葡萄酒通常味道更好,而偏离这些水平的葡萄酒则不太受欢迎。下载:下载高分辨率图像(979KB)下载:下载全尺寸图像图5. 散点图评估了我们的LRP-SVM方法推断出的化学性质与葡萄酒高质量的相关性。第一行通过低γ值的SVM探索输入-输出关系,而第二行考虑了高γ值的SVM。垂直虚线表示数据集范围内的平均特征值,水平虚线表示零相关性。在图的底部,基于高/低氯化物含量分析了糖的相关性,以及基于高/低糖含量分析了pH值的相关性。我们的分析突出了特征之间的相互作用,表明氯化物含量决定了糖与味道之间的关系,而高糖含量增强了酸度对味道的影响。观察到第二行中的非线性输入-相关性关系,以及糖和pH值的强烈变化的输入-相关性关系,这由青色和橙色的散点图显示。当我们考虑氯化物水平时,糖的作用变得更加明显。在低氯化物含量的葡萄酒中,糖与质量呈负二次关系——中等水平的糖最为有益——而在高氯化物含量的葡萄酒中,糖含量的增加会系统地降低质量。一种可能的解释是糖可能会增强高氯化物葡萄酒中的咸味感知[46],[47],从而降低味道。pH值和糖之间也存在类似的相互作用:虽然酸度有利于甜葡萄酒,但在低糖含量的葡萄酒中似乎是有害的。这种效应可能源于甜味和酸度相互抵消的已知效果[48],从而创造出更为适中的味道。8. 使用案例2:解释偶极矩预测在这个第二个使用案例中,我们考虑了一个量子化学应用,探讨了分子几何结构如何影响通过偶极矩测量的正负电荷的分布。建模这种类型的关系构成了一个回归任务,可以使用我们在第5节中介绍的回归扩展方法来解释得到的预测结果。我们继续我们的化学使用案例,以QM9数据集[49]为起点,并训练KRR模型来预测偶极矩范数。为了强调分子几何结构对电荷分布的影响,我们将分析限制在特定的结构异构体上,这里是C7H10O2和C7H11NO,数据集中分别存在6094种和5858种不同的配置。我们考虑了两种常见的分子几何表示方法:首先,库仑矩阵(CM)[50],通过原子核电荷的乘积除以原子间距离来表示每对原子。结果矩阵的行和列按照它们的L1范数进行排序。其次,我们考虑了键袋(BOB)[36]表示方法,它按原子对类型划分原子间欧几里得距离,并将它们记录为排序列表。这两种表示方法都编码了对旋转、平移和原子索引的不变性。我们将目标值最小-最大标准化到[0, 1],并将最小训练集偶极矩视为我们解释的参考水平。使用80/20的训练-测试分割,我们为每种异构体集训练了一个KRR模型,使用CM和BOB输入表示方法。在每种情况下,我们设置γ=3和C=10。BOB实现了更低的平均绝对误差(0.465和0.403 Debye),而CM为0.513和0.477 Debye。LRP参数根据表1中的启发式方法进行设置。图6显示了使用两种表示方法对每个分区的高偶极矩样本的KRR预测进行解释。图6显示了与原子间距离相关的相关性值及其直方图。正偶极矩相关性在两种分子中都与特定方向对齐(分子1中的垂直方向,分子2中的水平方向)。两种表示方法都强调了氧在分子边缘的重要性(分别位于分子1和2的位置A和B)。从基本的静电角度来看,这很容易归因于氧与其他元素之间的电荷差异,导致氧具有负部分电荷。这种效应在BOB表示中尤为明显,其中负相关性和正相关性连接了原子簇。当我们考虑氯化物水平时,糖的作用更加明显。在低氯化物含量的葡萄酒中,糖与质量呈负二次关系——中等水平的糖最为有益——而在高氯化物含量的葡萄酒中,糖含量的增加会系统地降低质量。一个可能的解释是糖可能会增强高氯化物葡萄酒中的咸味感知[46],[47],从而降低味道。pH值和糖之间也出现了类似的相互作用:虽然酸度有利于甜葡萄酒,但在低糖含量的葡萄酒中似乎是有害的。这种效应可能源于甜味和酸度相互抵消的已知效果[48],从而创造出更为适中的味道。8. 使用案例2:解释偶极矩预测在这个第二个使用案例中,我们考虑了一个量子化学应用,探讨了分子几何结构如何影响正负电荷的分布,这是通过偶极矩来测量的。建模这种类型的关系构成了一个回归任务,可以使用我们在第5节中介绍的回归扩展方法来解释得到的预测结果。我们继续我们的化学使用案例,以QM9数据集[49]为起点,并训练KRR模型来预测偶极矩范数。为了强调分子几何结构对电荷分布的影响,我们将分析限制在一组特定的结构异构体上,这里是C7H10O2和C7H11NO,数据集中分别存在6094种和5858种不同的配置。我们考虑了两种常见的分子几何表示方法:首先,库仑矩阵(CM)[50],通过原子核电荷的乘积除以原子间距离来表示每对原子。结果矩阵的行和列按照它们的L1范数进行排序。其次,我们考虑了键袋(BOB)[36]表示方法,它按原子对类型划分原子间欧几里得距离,并将它们记录为排序列表。这两种表示方法都编码了对旋转、平移和原子索引的不变性。我们将目标值最小-最大标准化到[0, 1],并将最小训练集偶极矩视为我们解释的参考水平。使用80/20的训练-测试分割,我们为每种异构体集训练了一个KRR模型,使用CM和BOB输入表示方法。在每种情况下,我们设置γ=3和C=10。BOB实现了更低的平均绝对误差(0.465和0.403 Debye),而CM为0.513和0.477 Debye。LRP参数根据表1中的启发式方法进行设置。图6显示了使用两种表示方法对每个分区的高偶极矩样本的KRR预测进行解释。图6显示了与原子间距离相关的相关性值及其直方图。正偶极矩相关性在两种分子中都与特定方向对齐(分子1中的垂直方向,分子2中的水平方向)。两种表示方法都强调了氧在分子边缘的重要性(分别位于分子1和2的位置A和B)。从基本的静电角度来看,这很容易归因于氧与其他元素之间的电荷差异,导致氧具有负部分电荷。这种效应在BOB表示中尤为明显,其中负相关性和正相关性连接了原子簇。这揭示了KRR如何模拟了两个不同的电荷中心主导偶极矩。这种对两个学习到的电荷中心的强调与之前的观察结果一致[51]。下载:下载高分辨率图像(450KB)下载:下载全尺寸图像图6. KRR偶极矩预测的LRP解释。第一行显示了使用键袋表示方法的解释,第二行使用了库仑矩阵表示方法。每一列展示了一个具有高偶极矩范数的结构异构体分子。在每个面板的左侧,原子位置以彩色圆圈显示(氢为灰色,碳为黑色,氧用带有“O”的白色圆圈突出显示),原子间距离相关性以红色(对偶极矩的正面贡献)和蓝色(负面贡献)突出显示。在右侧,直方图按原子对类型分组显示了原子间距离,并叠加了聚合的相关性,用红色和蓝色阴影表示。两种表示方法(CM和BOB)都揭示了由外围氧原子驱动的清晰的方向模式(分子1中的位置A和位置B)。观察到BOB强调了中/长距离相互作用(跨越整个分子的较长红色连接线),而CM强调了较短范围的高核电荷距离(主要是连接黑色碳原子的较短红色线)。在更技术层面上,我们可以观察到基于不同数据表示的KRRs之间的明显策略差异。虽然BOB表示主要依赖于长距离相互作用,但CM表示明显偏向于高核电荷元素之间的短距离(即除了氢之外的所有元素)。这可以通过CM主要由原子间的高能量主导,并且这些能量被原子核电荷乘以来解释。我们的发现也在这些解释的直方图表示中清晰可见(参见图6),其中CM模型主要由小距离的贡献主导(直方图的左侧部分),而BOB则倾向于大距离(例如C-H、O-H)。总之,我们的解释揭示了KRR模型学习了化学上可解释的偶极矩预测策略:识别出由氧原子主导的外围位置之间的长距离相互作用。我们的分析还揭示了当表示方法抑制这些长距离相互作用时的微妙策略差异,CM保留了相关性的整体方向性,但依赖于短距离相互作用。最后,我们回想一下,使用我们的扩展对核回归进行解释是在选定的参考目标水平背景下产生的。因此,相关性值应定性解释为偶极矩范数高于或低于此参考水平的证据。9. 结论基于距离的分类器,如SVM和KNN,仍然是机器学习中的基本工具,因为它们能够高效地找到全局最优解,有序地引入非线性,并且超参数数量较少。然而,它们在输入空间中倾向于表现出局部极值,这对解释学习到的预测策略是一个显著的障碍。本文通过引入将基于距离的分类器重新表述为具有内置解释结构的正式等效神经网络来解决这一限制。具体来说,新开发的神经网络采用了一种池化-检测结构,该结构能够更好地传递决策函数的方向性,并在保留原始分类器决策边界的同时消除问题性的局部极值。此外,我们还通过新颖的LRP规则利用了这些解释结构,这些规则在不同程度的模型非线性下都能产生稳健的解释,其参数可以通过简单的封闭形式启发式方法进行设置,从而在多个数据集之间稳健地迁移而无需针对每个数据集进行单独调整。我们提出的方法LRP-SVM和LRP-KNN在计算上效率很高,只需要对原始分类器进行两次评估即可。通过对多种数据集和模型的全面定量评估,证明了我们的方法能够始终提供稳健的解释,并且在处理高度非线性模型时表现优于现有基线方法。评估涵盖了多种现实世界场景,包括表格数据和图像任务、低维和高维(包括二进制)输入空间,以及分类和回归问题,并通过具有已知真实特征相关性的受控合成数据集来验证解释的准确性。消融研究显示,仅神经化本身就能提高模型的可解释性,而结合我们提出的LRP规则后,解释能力得到了进一步提升。最后,两个探索性用例展示了我们方法的实际应用价值:一个是用它来解释葡萄酒质量的SVM模型,揭示了影响口味的化学成分之间的复杂非线性相互作用;另一个是用它来解释分子偶极矩回归器,突出了与化学直觉一致的方向性特征,同时也揭示了由输入表示选择引入的偏差。这些用例共同体现了我们方法的两个互补优势:(i)使非线性的、由相互作用驱动的输入-相关性关系变得明确;(ii)在科学环境中产生稳定且具有物理意义的解释。
然而,所提出的LRP-SVM和LRP-KNN方法也存在一些局限性。首先,它们继承了基于距离的分类器的局限性,例如依赖于固定的输入几何形状以及对维数灾难的敏感性[52],这可能会在非常高维或噪声较大的环境中降低预测和解释的稳定性。这些问题可以通过仔细的特征选择、降维或使用更灵活的距离度量(如马氏距离)来缓解。尽管这些改进可能与我们的框架[27]、[53]兼容,但它们也可能引入新的限制,例如降维可能会产生难以解释的特征。其次,我们的方法目前仅适用于特定类型的基于距离的模型,即具有高斯核和欧几里得距离度量的分类器和回归器。因此,该方法最适合于欧几里得相似性是一个平滑且有意义的归纳偏好的场景,而对于需要高度不规则或非平滑相似性度量的数据可能不太适用。最后,与所有基于模型的解释一样,这些解释反映了学习到的分类器行为,而非领域内的因果关系。
在未来的工作中,我们的方法可以扩展到分类和回归之外的领域,例如基于距离的不确定性模型(如高斯过程),遵循[54]中的策略。同样,我们的方法也可以扩展到更广泛的核函数类别,包括重尾核,以利用它们更高的建模灵活性。此外,降维策略与我们的方法之间的相互作用提出了一个有趣的研究问题,即如何在解释基于距离的模型时最优地缓解高维问题。最后,未来的工作可以重点关注对我们的基于距离的XAI流程(例如带有LRP-SVM的SVM)进行基准测试,并结合专家参与评估或受控的模拟/数据生成环境,以便识别真实的相关因素。
作者贡献声明:
Florian Bley:撰写——审稿与编辑、撰写——初稿、可视化、验证、软件开发、方法论、调查、形式分析、概念化。
Jacob Kauffmann:撰写——审稿与编辑、撰写——初稿、方法论、调查、形式分析、概念化。
Simon León Krug:撰写——审稿与编辑、撰写——初稿、验证、调查。
Klaus-Robert Müller:撰写——审稿与编辑、撰写——初稿、监督、资源获取。
Grégoire Montavon:撰写——审稿与编辑、撰写——初稿、监督、方法论、形式分析、概念化。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号