CN112418390A - 使用单调属性函数对图像进行对比解释 - Google Patents
使用单调属性函数对图像进行对比解释 Download PDFInfo
- Publication number
- CN112418390A CN112418390A CN202010827714.5A CN202010827714A CN112418390A CN 112418390 A CN112418390 A CN 112418390A CN 202010827714 A CN202010827714 A CN 202010827714A CN 112418390 A CN112418390 A CN 112418390A
- Authority
- CN
- China
- Prior art keywords
- image
- input image
- classification
- modified
- computer
- 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
- 230000000052 comparative effect Effects 0.000 title abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 98
- 238000013135 deep learning Methods 0.000 claims abstract description 16
- 230000015654 memory Effects 0.000 claims description 36
- 238000003860 storage Methods 0.000 claims description 35
- 238000012986 modification Methods 0.000 claims description 12
- 230000004048 modification Effects 0.000 claims description 12
- 230000002596 correlated effect Effects 0.000 claims description 9
- 230000000007 visual effect Effects 0.000 claims description 4
- 230000004075 alteration Effects 0.000 claims 2
- 230000006870 function Effects 0.000 abstract description 35
- 238000012545 processing Methods 0.000 description 89
- 238000013528 artificial neural network Methods 0.000 description 63
- 230000008569 process Effects 0.000 description 63
- 238000010586 diagram Methods 0.000 description 22
- 238000012549 training Methods 0.000 description 21
- 238000007792 addition Methods 0.000 description 15
- 238000010801 machine learning Methods 0.000 description 13
- 238000013145 classification model Methods 0.000 description 11
- 230000000875 corresponding effect Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 9
- 238000002156 mixing Methods 0.000 description 9
- 238000005457 optimization Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 239000000203 mixture Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000002591 computed tomography Methods 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002595 magnetic resonance imaging Methods 0.000 description 2
- 210000005171 mammalian brain Anatomy 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 210000004204 blood vessel Anatomy 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000036992 cognitive tasks Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000006386 neutralization reaction Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000004872 soft tissue Anatomy 0.000 description 1
- 235000014347 soups Nutrition 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H30/00—ICT specially adapted for the handling or processing of medical images
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/50—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/03—Recognition of patterns in medical or anatomical images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/05—Recognition of patterns representing particular kinds of hidden objects, e.g. weapons, explosives, drugs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Public Health (AREA)
- Epidemiology (AREA)
- Primary Health Care (AREA)
- Pathology (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及使用单调属性函数对图像进行对比解释。在实施例中,用于生成用于分类器预测的对比信息的方法包括:接收表示输入图像的图像数据,使用深度学习分类器模型预测输入图像的第一分类;使用对应于相应的高层级特征的多个分类器函数评估输入图像以识别输入图像中不存在的高层级特征中的一个或多个,以及从输入图像中不存在的高层级特征中识别负相关特征,如果该负相关特征被添加到输入图像中,则将导致深度学习分类器模型预测修改后的输入图像的第二分类,该第二分类不同于第一分类。在实施例中,方法包括创建正相关图像,该正相关图像是输入图像的修改版本,其具有第一分类以及少于输入图像的所有超像素的超像素。
Description
技术领域
本发明一般涉及机器学习。更特别地,本发明涉及解释深度学习系统。
背景技术
在过去的几年中,人工智能(AI)技术已经有了重大的发展。现代AI系统在比如将语音转换为文本、识别对象和图像或在不同语言之间进行翻译的认知任务上正在实现人类水平的性能。该发展有望用于许多行业中的新的和改进的应用。
人工神经网络(ANN)——也被简称为神经网络——是一种由许多简单、高度互连的处理元素(节点)组成的计算系统,这些处理元素通过它们对外部输入的动态状态响应来处理信息。ANN是根据哺乳动物大脑皮层神经元结构进行松散建模但是规模要小得多的处理设备(算法和/或硬件)。大型的ANN可能具有数百或数千个处理器单元,而哺乳动物的大脑具有数十亿个神经元,它们的整体交互和突现行为的量级相应增加。
深度学习神经网络(在本文中被称为深度神经网络(DNN)),是在输入层和输出层之间具有多个隐藏单元层的人工神经网络(ANN)。与浅层ANN相似,DNN可以对复杂的非线性关系进行建模。例如用于对象检测和解析的DNN架构生成组合模型,其中对象被表示为图像基元的分层组合。额外的层使得能够组合来自较低层的特征,从而给出了与类似表现的浅层网络相比用更少的单元来建模复杂数据的潜力。DNN通常被设计为前馈网络。
发明内容
说明性实施例提供了用于解释机器学习模型的方法、系统和计算机程序产品。在实施例中,该方法包括:由一个或多个处理器接收表示输入图像的图像数据;由一个或多个处理器使用DNN分类器模型预测输入图像的第一分类;由一个或多个处理器使用对应于相应的高层级特征的多个分类器函数评估输入图像,以识别输入图像中不存在的高层级特征中的一个或多个高层级特征,以及由一个或多个处理器从输入图像中不存在的高层级特征中识别负相关特征,如果该负相关特征被添加到输入图像中,则将导致DNN分类器模型预测修改后的输入图像的第二分类,该第二分类不同于第一分类。
实施例包括用于生成用于分类器预测的对比信息的计算机可用程序产品,该计算机可用程序产品包括计算机可读存储设备以及存储在该存储设备上的程序指令,所存储的程序指令包括由一个或多个处理器接收表示输入图像的图像数据的程序指令,由一个或多个处理器使用DNN分类器模型预测输入图像的第一分类的程序指令,由一个或多个处理器使用对应于相应的高层级特征的多个分类器函数评估输入图像以识别输入图像中不存在的高层级特征中的一个或多个高层级特征的程序指令,以及由一个或多个处理器从输入图像中不存在的高层级特征中识别负相关特征的程序指令,如果该负相关特征被添加到输入图像中,则将导致DNN分类器模型预测修改后的输入图像的第二分类,该第二分类不同于第一分类。在实施例中,该方法包括创建正相关图像,该正相关图像是输入图像的修改版本,其具有第一分类以及少于输入图像的所有超像素的超像素。
在实施例中,一种计算机系统包括处理器、计算机可读存储器和计算机可读存储设备,以及存储在存储设备上以由处理器经由存储器执行的程序指令,所存储的程序指令包括由一个或多个处理器接收表示输入图像的图像数据的程序指令,由一个或多个处理器使用DNN分类器模型预测输入图像的第一分类的程序指令,由一个或多个处理器使用对应于相应的高层级特征的多个分类器函数评估输入图像以识别输入图像中不存在的高层级特征中的一个或多个高层级特征的程序指令,以及由一个或多个处理器从输入图像中不存在的高层级特征中识别负相关特征的程序指令,如果该负相关特征被添加到输入图像中,则将导致DNN分类器模型预测修改后的输入图像的第二分类,该第二分类不同于第一分类。
附图说明
所附权利要求中阐述了被认为是本发明特性的新颖特征。然而,当结合附图阅读时,通过参考以下对说明性实施例的详细描述将最佳地理解本发明本身以及优选的使用模式、其进一步目标和优点,其中:
图1描绘了其中可以实现说明性实施例的数据处理系统的网络的框图;
图2描绘了其中可以实现说明性实施例的数据处理系统的框图;
图3描绘了用于提供图像分类的人工智能预测以及该预测的对比解释的示例配置的框图;
图4描绘了根据说明性实施例的用于使用生成对比解释的机器学习对数据进行分类的示例过程的流程图;
图5描绘了根据说明性实施例的来自用于使用生成对比解释的机器学习对数据进行分类的过程的示例性输出报告的框图;
图6描绘了根据说明性实施例的用于创建负相关图像的示例过程的流程图;以及
图7描绘了根据说明性实施例的用于创建正相关图像的示例过程的流程图。
具体实施方式
近年来,DNN已展现出做出非常准确的预测的能力,并已成为机器学习模型中的最新技术。现在,DNN在许多领域都优于其他方法,这些领域包括涉及图像识别的应用,诸如计算机视觉和图像分类。这意味着DNN在许多不同行业(包括医疗和运输行业)中的巨大使用潜力。例如,DNN有望用于诸如医学成像和自动驾驶车辆之类的应用。然而,由于难以理解DNN如何准确地达到它们的预测,DNN带来的好处目前被视为具有一定的风险。这有时被称为DNN的“黑匣子”问题:尽管它们始终展现出惊人的准确性,但仍然存在一定程度的不信任,因为预测是基于不容易理解的过程。例如,在医疗行业中,DNN在评估医学图像或基于冗长的患者记录制定护理计划方面的表现优于人类同行。然而,说明性实施例认识到,如果审查DNN的预测的医师无法理解导致结论的推理,那么医师难以决定对DNN的预测有多大的信心。因此,说明性实施例认识到由于缺乏对DNN预测的解释而引起的不信任对DNN的采用造成了障碍,特别是在比如医疗和运输应用的领域中,在这些领域中如果预测错误,则健康和安全性将面临风险。
说明性实施例认识到需要通过提供对由DNN做出的预测的人类可解释(humanly-interpretable)的解释(explanation)来提高深度神经网络(DNN)决策制定的透明度。例如,审查由DNN对医学图像是否指示医疗状况做出的预测的医师只有DNN的难以理解的预测,因此不能确定这是否是一个紧急情况,或者图像的哪些区域对DNN的预测贡献最大。如果没有理解DNN的预测背后的基本原理的能力,医师的决策制定能力可能会受到阻碍或不利的改变。例如,医师通常可能会谨慎行事并治疗接近负面的结果,但是当不知道DNN做出的预测的接近性(并且因此不知道DNN做出的预测的潜在错误的本质)时,就无法这样做。
理解DNN为什么做出一个特定的预测而不是另一个预测对于开发未来的机器学习模型也很重要。例如,仅使用错误的难以理解的预测很难对做出错误预测的DNN分类器进行排除故障。在错误源于对DNN的对抗攻击的情况下,错误决策的基本原理可能有助于更好地理解对抗攻击的性质以及将来如何防御这样的攻击。
此外,DNN具有改进(诸如在机场或其他安全领域的)许多不同安全应用的潜力。例如,DNN已显示出用于诸如面部识别、视网膜扫描和生物特征扫描之类的安全应用的潜力。由于对抗攻击或通过使DNN做出错误的预测而绕过安全性的其他尝试的潜在威胁,诸如这些安全应用之类的安全应用面临挑战。导致错误预测的DNN的基本原理可以帮助提高这样系统的健壮性,以使这样的攻击更加困难。
说明性实施例认识到当前可用的工具或解决方案不能满足这些需求或不能为这些需求提供适当的解决方案。用于描述本发明的说明性实施例通常通过提供由DNN做出的预测的人类可解释的解释来处理和解决上述问题以及与提高DNN决策制定的透明度有关的其他问题。
实施例可以被实现为软件应用。实现实施例的应用可以被配置为对现有图像分析系统的修改、与现有图像分析系统结合操作的单独应用、独立应用或其某种组合。
特别地,一些说明性实施例提供了一种方法,该方法利用DNN分类器对原始图像进行分类,然后生成原始图像的改变版本,该改变版本包括至少一个高层级特征,该至少一个高层级特征用作原始图像的DNN分类的人类可解释的对比解释。在一些这样的实施例中,原始图像的改变版本是人类可解释的“负相关”(或“PN”)图像,没有任何内容从该负相关图像中去除(即,原始图像的任何部分都没有被去除),并且(同样是人类可解释的)至少一个高层级特征被添加在该负相关图像中,这导致原始图像的相对小的变化和由DNN分类器进行的不同分类预测。
为了清楚起见,现在在图像的两个分类之间进行区分。第一分类的图像是在任何细节级别上都是机器可识别的图像,而第二分类的图像是在不借助机器的情况下对于典型的人眼是可识别的图像。太小而无法用人类肉眼分辨但是可以在显微镜的帮助下看到的显微图像是第一分类的图像的示例。可以用作人类可解释的解释的图像是第二分类的图像的示例,因为以数字图像形式的人类可解释的解释是可见图像,这意味着它足够大,以至于典型的人类肉眼在不借助机器的情况下就可以分辨图像。在下文中,对人类可识别的、或人类可解释的或人类可读的以及其他与人类能力有关的术语的任何引用是指相对于落入第二分类的人造物(artifact)的这样的操作或动作。如本文中所使用的,术语“高层级特征”通常是指第二分类的图像中的描绘,并且因此是人类可检测的图像或图像中的对象的描绘,诸如人类可识别的形状或项目。图像包括两种类型的特征:“高层级特征”和“低层级特征”。低层级特征是图像的精细细节,诸如线或点。低层级特征有时充当高层级特征的构建块。可以通过DNN检测图像中的高层级特征。可以通过卷积滤波器、方向梯度直方图(HOG)或尺度不变特征变换(SIFT)来检测图像中的低层级特征(诸如线或点)。HOG在块中分解碎片(patch),然后构建表示块中的梯度的直方图。SIFT将图像转换为局部特征向量(被称为SIFT键的局部描述符)的大集合,并且有时用于图像的特征转换。
例如,在一些实施例中,DNN在输入端口和输出端口之间包括多个层。在这样的实施例中,DNN的架构被布置为使得不同的层检测具有不同的粒度尺度的图案。例如,在一些实施例中,在低层级上,这包括检测低层级特征,诸如特定的像素图案,例如角、线或点。在高层级上,这包括检测高层级特征,诸如检测图案、面部或图形标记(例如,文本、标志或表情符号),比如在图像中检测到人或消息表示开心。
作为理解DNN分类器的基本原理的替代基础,一些实施例提供了一种方法,该方法利用DNN分类器对原始图像进行分类,并且然后生成原始图像的改变版本,该改变版本未添加任何内容但已从中去除了区域。保留的原始图像的部分指示DNN在预测原始图像分类时视为重要的原始图像的一个或多个区域。在一些这样的实施例中,改变的图像是人类可解释的“正相关”(或“PP”)图像,其是原始图像的改变版本,没有任何内容被添加到其中,并且图像的区域已被从中去除,使得剩余区域表示(也是人类可解释的)特征,这些特征最小限度地足以使DNN分类器继续预测与原始图像的分类相同的分类。
又另一个实施例允许基于多于一个人类可解释的对比解释来理解DNN分类器的基本原理。例如,一些实施例提供了一种方法,该方法利用DNN分类器对原始图像进行分类,并且然后生成人类可解释的PN图像,该PN图像是原始图像的改变版本,没有任何内容从该PN图像中去除,并且(也是人类可以解释的)至少一个高层级特征被添加在PN图像中,这导致原始图像的相对小的变化和由DNN分类器进行的不同分类预测,并且还生成了人类可解释的PP图像,该PP图像是原始图像的改变版本,没有任何内容被添加到PP图像中,并且图像的区域已从PP图像中去除,使得剩余区域表示(也是人类可解释的)特征,这些特征最小限度地足以使DNN分类器继续预测与原始图像的分类相同的分类。
如本文中所使用的,术语“对比解释”通常是指通过描述将导致不同决策的情况的差异来描述为何做出决策的解释。例如,在一些实施例中,用于DNN预测的对比解释包括PN,其是一种高层级特征,当该高层级特征被添加到原始图像时,与某些其他高层级特征被添加时相比,对原始图像的改变更少并且使DNN分类器预测改变后的图像的与原始图像的分类不同的分类。作为另一示例,在一些实施例中,用于DNN预测的对比解释包括PP,其通常是指原始图像的一个或多个区域,该一个或多个区域指示DNN分类器认为最小程度地足以证明分类器对原始图像的预测分类是合理的部分,例如,当由特定分类器评估时,将图像保留在其当前分类中的部分(例如,最小像素)。
实施例将图像分类模型配置为对由图像捕获设备查看或捕获的主体进行分类,该图像捕获设备可以是能够生成数字图像的任何设备,诸如相机、x射线扫描仪、磁共振成像(MRI)扫描仪或计算机断层扫描(CT)扫描仪。主体可以被实时查看或被捕获并在以后的时间被查看。在一个实施例中,图像分类模型是DNN。在配置过程期间,实施例使用各个主体的带标记的图像来训练基于神经网络的模型,以根据训练对图像的主体进行分类。例如,可以使用被标记为包括人脸的一组图像和被标记为不包括人脸的另一组图像来训练旨在将图像主体分类为人脸或除人脸之外的东西的图像分类模型。作为另一示例,可以使用被标记为包括特定的已知家居用品的一组图像和被标记为不包括特定的已知家居用品的另一组图像来训练旨在将图像主体分类为一组已知的家居用品(例如,椅子、书、桌子、电视、遥控器、沙发等)中的一个家居用品的图像分类模型。
实施例提供了一种方法,该方法利用DNN分类器对原始图像进行分类,并且然后生成人类可解释的PN图像,该PN图像是原始图像的改变版本,没有任何内容从PN图像中去除,并且(也是人类可以解释的)至少一个高层级特征被添加在PN图像中,这导致原始图像的相对小的变化和由DNN分类器进行的不同分类预测。
基于神经网络并且不利用神经网络的图像分类模型和深度分类模型也是可能的并且预期在说明性实施例的范围内。使用无监督学习或使用一组学习到的规则或静态规则的用于每个模型的其他配置方法也是可能的并且预期在说明性实施例的范围内。另外,一个实施例可以将模型配置实现为一次性过程,而另一实施例可以在不断发展的基础上实现模型配置,从而允许在使用实施例对场景中的对象进行分类时进行附加的模型细化。
一些实施例使用一个系统来配置分类器模型,然后使用不同的系统来执行所配置的模型,并且使用又一系统来生成对比解释。这样的实施例提供了基于较窄范围的任务来定制或选择的系统,从而允许更高效地利用资源。这样的实施例还允许某些任务的并行执行,诸如同时或在对于适用实施例重叠的时间帧期间生成PN和PP。替代地,在一些实施例中,可以使用单个系统来执行整个过程。
在一些实施例中,包括用于生成原始图像的图像捕获设备的专用装置还被配置为执行本文公开的其他任务中的至少一些任务。例如,CT扫描仪组合了从身体周围不同角度拍摄的一系列X射线图像,并使用计算机处理来创建身体内的骨骼、血管和软组织的横截面图像(切片)。一些实施例可以包括CT扫描仪,该CT扫描仪具有与其集成在一起或与其通信的计算机处理系统,该计算机处理系统被配置为执行本文公开的任务中的至少一些任务。可以包括本文描述的功能中的至少一些功能的专用设备的其他示例包括其他医疗设备,例如MRI扫描仪,或安全设备,例如安全检查系统或安全相机。
为了描述清楚起见,并且不暗示对其进行任何限制,使用一些示例配置来描述说明性实施例。从此公开中,本领域的普通技术人员将能够想到用于实现所描述的目的的所描述的配置的许多改变、调整和修改,并且这些改变、调整和修改预期在说明性实施例的范围内。
此外,在附图和说明性实施例中使用了数据处理环境的简化图。在实际的计算环境中,在不脱离说明性实施例的范围的情况下,可以存在本文未示出或未描述的附加的结构或组件,或与所示结构或组件不同但用于本文所述的相似功能的结构或组件。
此外,仅作为示例针对特定的实际或假设的组件来描述说明性实施例。由各种说明性实施例描述的步骤可以适于例如为由机器学习分类器模型做出的决策提供解释。
这些和其他类似工件的任何具体表现形式都不旨在限制本发明。可以在说明性实施例的范围内选择这些和其他类似工件的任何合适的表现形式。
本公开中的示例仅用于描述清楚,并且不限于说明性实施例。本文列出的任何优点仅是示例,并不旨在限制说明性实施例。通过特定的说明性实施例可以实现附加或不同的优点。此外,特定的说明性实施例可以具有上面列出的优点中的一些、全部优点或不具有上面列出的优点。
此外,可以关于任何类型的数据、数据源或通过数据网络对数据源的访问来实现说明性实施例。在本发明的范围内,任何类型的数据存储设备都可以在数据处理系统本地或通过数据网络将数据提供给本发明的实施例。在使用移动设备描述实施例的情况下,在说明性实施例的范围内,适合与移动设备一起使用的任何类型的数据存储设备都可以在移动设备本地或通过数据网络将数据提供给这样的实施例。
仅作为示例,说明性实施例使用具体代码、对比解释、计算机可读存储介质、高层级特征、历史数据、设计、架构、协议、布局、示意图和工具来描述,并且不限于说明性实施例。此外,在一些情况下,为了描述清楚,仅作为示例,说明性实施例使用特定的软件、工具和数据处理环境来描述。说明性实施例可以与其他可比较或类似目的的结构、系统、应用或架构结合使用。例如,在本发明的范围内,其他可比较的移动设备、结构、系统、应用或用于其的架构可以与本发明的这样的实施例结合使用。说明性实施例可以以硬件、软件或其组合来实现。
本公开中的示例仅用于描述清楚,并且不限于说明性实施例。从本公开中将可以想到附加的数据、操作、动作、任务、活动和操纵,并且这些附加的数据、操作、动作、任务、活动和操纵预期在说明性实施例的范围内。
本文列出的任何优点仅是示例,并不旨在限制说明性实施例。通过具体的说明性实施例可以实现附加或不同的优点。此外,特定的说明性实施例可以具有上面列出的优点中的一些、全部优点或不具有上面列出的优点。
参考附图,特别是参考图1和图2,这些附图是可以在其中实现说明性实施例的数据处理环境的示例图。图1和图2仅是示例,并且不旨在断言或暗示对于其中可实现不同实施例的环境的任何限制。特定的实现可以基于以下描述对所描绘的环境进行许多修改。
图1描绘了其中可以实现说明性实施例的数据处理系统的网络的框图。数据处理环境100是其中可以实现说明性实施例的计算机网络。数据处理环境100包括网络102。网络102是用于在数据处理环境100内连接在一起的各种设备和计算机之间提供通信链路的介质。网络102可以包括连接,诸如有线、无线通信链路或光缆。
客户端或服务器仅是连接到网络102的某些数据处理系统的示例角色,并不旨在排除这些数据处理系统的其他配置或角色。数据处理系统104耦合到网络102。软件应用可以在数据处理环境100中的任何数据处理系统上执行。被描述为在图1的处理系统104中执行的任何软件应用可以被配置为以类似的方式在另一数据处理系统中执行。在图1中的数据处理系统104中存储或产生的任何数据或信息可以被配置为以类似的方式在另一数据处理系统中存储或产生。诸如数据处理系统104之类的数据处理系统可以包含数据并且可以具有在其上执行计算过程的软件应用或软件工具。在实施例中,数据处理系统104包括存储器124,存储器124包括应用105A,应用105A可以被配置为实现根据一个或多个实施例的本文所述的数据处理器功能中的一个或多个。
服务器106与存储单元108一起耦合到网络102。存储单元108包括数据库109,该数据库109被配置为存储如关于各种实施例的本文所述的数据,例如图像数据和属性数据。服务器106是常规的数据处理系统。在实施例中,服务器106包括神经网络应用105B,神经网络应用105B可以被配置为实现根据一个或多个实施例的本文所述的处理器功能中的一个或多个。
客户端110、112和114也耦合到网络102。诸如服务器106之类的常规数据处理系统或客户端110、112或114可以包含数据,并且可以具有在其上执行常规计算过程的软件应用或软件工具。
仅作为示例,并且不暗示对这样的架构的任何限制,图1描绘了在实施例的示例实现中可使用的某些组件。例如,服务器106以及客户端110、112、114仅作为示例被描绘为服务器和客户端,并不暗示限于客户端-服务器架构。作为另一个示例,实施例可以跨若干数据处理系统以及如图所示的数据网络分布,而在说明性实施例的范围内另一个实施例可以在单个数据处理系统上实现。常规数据处理系统106、110、112和114还表示集群中的示例节点、分区和适合于实现实施例的其他配置。
设备132是本文描述的常规计算设备的示例。例如,设备132可以采取智能电话、平板计算机、膝上型计算机、固定或便携形式的客户端110、可穿戴计算设备或任何其他合适设备的形式。在实施例中,设备132将请求发送到服务器106以通过神经网络应用105B执行一个或多个数据处理任务,诸如神经网络的本文所述的启动过程。被描述为在图1中的另一常规数据处理系统中执行的任何软件应用可以被配置为以类似的方式在设备132中执行。在图1中的另一常规数据处理系统中存储或产生的任何数据或信息可以被配置为以类似方式在设备132中存储或产生。
服务器106、存储单元108、数据处理系统104以及客户端110、112和114和设备132可以使用有线连接、无线通信协议或其他合适的数据连接耦合到网络102。客户端110、112和114可以是例如个人计算机或网络计算机。
在所描绘的示例中,服务器106可以向客户端110、112和114提供诸如引导文件、操作系统映像和应用之类的数据。在此示例中,客户端110、112和114可以是服务器106的客户端。客户端110、112、114或其一些组合可以包括它们自己的数据、引导文件、操作系统映像和应用。数据处理环境100可以包括未示出的附加服务器、客户端和其他设备。
在所描绘的示例中,存储器124可以向处理器122提供诸如引导文件、操作系统映像和应用之类的数据。处理器122可以包括其自己的数据、引导文件、操作系统映像和应用。数据处理环境100可以包括未示出的附加存储器、处理器和其他设备。
在实施例中,如本文所述,数据处理系统104的神经网络应用105A和服务器106的神经网络应用105B中的一个或多个实现神经网络的实施例,诸如DNN。在特定实施例中,使用单个服务器或处理系统内的网络应用105A和网络应用105B中的一个来实现神经网络。在另一特定实施例中,使用在单个服务器或处理系统内的网络应用105A和网络应用105B两者来实现神经网络。服务器106包括多个GPU 107,其包括多个节点,其中每个节点可以包括如本文所述的一个或多个GPU。
在所描绘的示例中,数据处理环境100可以是因特网。网络102可以表示使用传输控制协议/互联网协议(TCP/IP)和其他协议彼此通信的网络和网关的集合。因特网的核心是主要节点或主机计算机之间的数据通信链路的骨干,包括路由数据和消息的数千个商业、政府、教育和其他计算机系统。当然,数据处理环境100也可以被实现为多种不同类型的网络,诸如例如内联网、局域网(LAN)或广域网(WAN)。图1旨在作为示例,而非作为对不同的说明性实施例的架构限制。
除了其他用途之外,数据处理环境100可以用于实现其中可以实现说明性实施例的客户端-服务器环境。客户端-服务器环境使软件应用和数据能够跨网络分布,使得应用通过使用常规客户端数据处理系统和常规服务器数据处理系统之间的交互性来运行。数据处理环境100还可以采用面向服务的架构,其中可以将跨网络分布的可互操作的软件组件封装为一致(coherent)的业务应用。数据处理环境100也可以采用云的形式,并采用服务交付的云计算模型,以用于实现对可以以最小的管理工作或与服务提供商的交互来快速供应和释放的可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机和服务)的共享池的方便、按需网络访问。
参考图2,此图描绘了其中可以实现说明性实施例的数据处理系统的框图。数据处理系统200是常规计算机的示例,诸如图1中的数据处理系统104、服务器106或客户端110、112和114,或实现过程的计算机可用程序代码或指令对于说明性实施例可以位于其中的另一种类型的设备。
数据处理系统200还表示常规数据处理系统或其中的配置,诸如图1中的实现示例性实施例的过程的计算机可用程序代码或指令可以位于其中的常规数据处理系统132。数据处理系统200仅作为示例被描述为计算机,而不限于此。以诸如图1中的设备132之类的其他设备形式的实现可以诸如通过添加触摸界面来修改数据处理系统200,并且甚至可以从数据处理系统200中去除某些所描绘的组件,而不脱离本文所述的数据处理系统200的操作和功能的一般描述。
在所描绘的示例中,数据处理系统200采用集线器架构,该集线器架构包括北桥和存储器控制器集线器(NB/MCH)202以及南桥和输入/输出(I/O)控制器集线器(SB/ICH)204。处理单元206、主存储器208和图形处理器210耦合到北桥和存储器控制器集线器(NB/MCH)202。处理单元206可以包含一个或多个处理器,并且可以使用一个或多个异构处理器系统来实现。处理单元206可以是多核处理器。在某些实现中,图形处理器210可以通过加速图形端口(AGP)耦合到NB/MCH 202。
在所描绘的示例中,局域网(LAN)适配器212耦合到南桥和I/O控制器集线器(SB/ICH)204。音频适配器216、键盘和鼠标适配器220、调制解调器222、只读存储器(ROM)224、通用串行总线(USB)和其他端口232并且PCI/PCIe设备234通过总线238耦合到南桥和I/O控制器集线器204。硬盘驱动器(HDD)或固态驱动器(SSD)226和CD-ROM 230通过总线240耦合到南桥和I/O控制器集线器204。PCI/PCIe设备234可以包括例如以太网适配器、附加卡和用于笔记本计算机的PC卡。PCI使用卡总线控制器,而PCIe不使用。ROM 224可以是例如闪存二进制输入/输出系统(BIOS)。硬盘驱动器226和CD-ROM 230可以使用例如集成驱动器电子设备(IDE)、串行高级技术附件(SATA)接口或诸如外部SATA(eSATA)和微型SATA(mSATA)之类的变体。超级I/O(SIO)设备236可以通过总线238连接到南桥和I/O控制器集线器(SB/ICH)204。
诸如主存储器208、ROM 224或闪存(未示出)之类的存储器是计算机可用存储设备的一些示例。硬盘驱动器或固态驱动器226、CD-ROM 230和其他类似可用的设备是包括计算机可用存储介质的计算机可用存储设备的一些示例。
操作系统在处理单元206上运行。操作系统协调并提供对图2中数据处理系统200内的各种组件的控制。该操作系统可以是用于任何类型的计算平台的商业上可获得的操作系统,包括但不限于服务器系统、个人计算机和移动设备。面向对象或其他类型的编程系统可以与操作系统结合操作,并提供从在数据处理系统200上执行的程序或应用对操作系统的调用。
用于操作系统、面向对象的编程系统以及应用或程序(诸如图1中的应用105)的指令(诸如以硬盘驱动器226上的代码226A的形式)位于存储设备上并且可以被加载到一个或多个存储器中的至少一个(诸如主存储器208)中以用于由处理单元206执行。处理单元206可以使用计算机实现的指令来执行说明性实施例的过程,该计算机实现的指令可以位于诸如例如主存储器208、只读存储器ROM224之类的存储器中,或者位于一个或多个外围设备中。
此外,在一种情况下,代码226A可以通过网络201A从远程系统201B下载,其中类似的代码201C被存储在存储设备201D上。在另一种情况下,代码226A可以通过网络201A下载到远程系统201B,其中下载的代码201C被存储在存储设备201D上。
图1-图2中的硬件可以根据实施方式而变化。除了图1-图2中所示的硬件之外或代替图1-图2中所示的硬件,可以使用其他内部硬件或外围设备,诸如闪存、等效的非易失性存储器或光盘驱动器等。另外,说明性实施例的过程可以应用于多处理器数据处理系统。
在一些说明性示例中,数据处理系统200可以是个人数字助理(PDA),其通常配置有闪存以提供用于存储操作系统文件和/或用户生成的数据的非易失性存储器。总线系统可以包括一个或多个总线,诸如系统总线、I/O总线和PCI总线。当然,可以使用任何类型的通信结构或架构来实现总线系统,该通信结构或架构提供在附接到该结构或架构的不同组件或设备之间的数据传输。
通信单元可以包括用于发送和接收数据的一个或多个设备,诸如调制解调器或网络适配器。存储器可以是例如主存储器208或高速缓存,诸如在北桥和存储器控制器集线器202中找到的高速缓存。处理单元可以包括一个或多个处理器或CPU。
图1-图2中所描绘的示例和上述示例并不意味着暗示架构限制。例如,数据处理系统200除了采用移动或可穿戴设备的形式之外,还可以是平板计算机、膝上型计算机或电话设备。
在将计算机或数据处理系统描述为虚拟机、虚拟设备或虚拟组件的情况下,虚拟机、虚拟设备或虚拟组件使用数据处理系统200中描绘的一些或全部组件的虚拟化表现形式以数据处理系统200的方式操作。例如,在虚拟机、虚拟设备或虚拟组件中,处理单元206表现为主机数据处理系统中可用的所有或一些数量的硬件处理单元206的虚拟化实例,主存储器208表现为主机数据处理系统中可能可用的主存储器208的所有或一些部分的虚拟化实例,并且盘226表现为为主机数据处理系统中可能可用的盘226的所有或一些部分的虚拟化实例。在这样的情况下,主机数据处理系统由数据处理系统200表示。
参考图3,此图描绘了根据说明性实施例的示例配置300的框图。该示例实施例包括神经网络应用302。在特定实施例中,应用302是图1的应用105A/105B的示例。
在一些实施例中,神经网络应用302包括训练模块304、分类模块306和对比解释模块308。在替代实施例中,神经网络应用302可以包括本文描述的但是被不同地分组到一个或多个模块中的功能中的一些或全部功能。在一些实施例中,本文描述的功能被分布在多个系统之间,该多个系统可以包括基于软件和/或硬件的系统的组合,例如专用集成电路(ASIC)、计算机程序或智能电话应用。
在一些实施例中,训练模块304基于DNN生成分类器模型。在实施例中,DNN选自和/或基于一个或多个已知的深度学习神经网络结构/系统。在实施例中,训练模块304包括模型训练器316,模型训练器316使用适合于正在被建模的当前领域的训练数据314来训练DNN。例如,在实施例中,分类模型旨在对衣物进行分类,模型训练器316使用示出各种衣物的图像来训练分类模型,例如由ZalandoSE开发的著名的Fashion-MNIST时尚产品数据库(Fashion-MNIST或与它相关联的任何标志是Zalando SE的财产)。此外,基于DNN生成的模型可以被称为深度学习模型或深度神经网络模型(DNN模型)。
在一些实施例中,训练模块304从历史数据存储装置310接收历史数据,并使用该历史数据来生成经训练的机器学习模型,以供分类模块306使用。如本文所用的术语“历史数据”是指试图训练机器学习模型的用户所熟悉的数据。例如,在一些实施例中,历史数据包括被设计为训练机器学习模型的训练数据集,该机器学习模型将能够足够泛化以准确地对新数据进行预测,例如对不是训练数据集一部分的特征或对象进行预测。在一些实施例中,训练模块304从数据存储装置310接收历史数据,并将其划分为训练数据集312和测试数据集314,使得在经训练的模型为消费者准备好之前,可以对经训练的模型针对问题(诸如过度拟合)进行测试。
在一些实施例中,训练模块304包括模型训练器316,模型训练器316接收训练数据314并尝试通过在输入和输出数据之间创建泛化映射(generalized mapping)来从训练数据314“学习”,以对其中输出变量未知的新输入进行预测。在一些实施例中,模型训练器316使用具有可调参数的各种已知算法中的任何算法,这些可调参数在训练阶段期间被调整,以提高模型对新输入的预测输出的准确性。
在一些实施例中,训练模块304包括模型测试器318,模型测试器318监视模型对测试数据集312做出预测的能力。例如,在一些实施例中,测试数据集312包括尚未由机器学习模型处理的数据以允许模型测试器318评估模型泛化和准确预测历史数据集312的新数据的能力。
在一些实施例中,分类模块306接收表示一个或多个原始图像的输入图像数据。在一些实施例中,输入图像数据,其是指从用户或其他系统或应用(例如从新数据存储装置322或图像捕获设备324)输入到分类模块306的图像数据。在实施例中,输入图像数据作为实时数据流被提供给分类模块306。另外,在实施例中,输入图像数据是数据(例如,存储在数据库、文件系统等中的数据或其组合)的集合。在实施例中,在使用模型对输入图像数据进行分类之前,分类模块306对输入图像数据进行预处理,或者在由另一系统或应用进行预处理之后接收输入图像数据。在实施例中,预处理包括数据的标准化、格式化、清理等,或其组合。
在一些实施例中,分类模块306使用经训练的模型来关于输入图像数据进行推断并做出预测。例如,在一些实施例中,图像分类器320将类别或标签指派给图像。在一些实施例中,图像分类器320使用分割算法将类别或标签指派给一组像素。在实施例中,图像分类器320预测输入图像数据的图像的分类,并将分类后的图像数据存储在预测存储装置328中。在一些实施例中,图像分类器320根据图像数据中图像的像素或超像素的特性对图像数据中的图像进行分类。
在一些实施例中,对比解释模块308包括正相关(PP)生成器330和负相关(PN)生成器332中的一个或两者,用于生成用作图像分类器320做出的分类预测的人类可解释的原因的对比解释。例如,在一些实施例中,图像分类器320包括DNN分类器模型,并且对比解释模块308生成用作DNN分类器模型做出的分类预测的人类可解释的原因的对比解释。
在一些实施例中,对比解释模块308为由图像分类器320分类的每个原始图像自动生成PP图像和PN图像之一或两者。在一些实施例中,PP和PN图像是原始图像的修改版本。在一些实施例中,通过在不改变剩余区域的情况下去除原始图像的区域来生成PP图像。在一些实施例中,通过向原始图像添加高层级特征而不改变或去除图像的其他区域来生成PN图像。
因此,在一些实施例中,PP生成器330修改原始图像以生成对应的正相关图像,其是原始图像的修改版本,其中修改被限制为去除原始图像的区域。此外,在一些实施例中,PN生成器332修改原始图像以生成相应的负相关图像,其是原始图像的修改版本,其中修改被限制为添加一个或多个高层级特征。
在一些实施例中,PP图像和PN图像提供指示对于DNN分类器对其原始图像的分类预测有影响的图像属性的视觉提示。在一些实施例中,PN和PP图像是针对将在下面结合图4更详细地讨论的相应的优化问题的解决方案。例如,在一些实施例中,为了生成PP图像,PP生成器330搜索原始图像的仍将通过DNN分类器获得与原始图像的分类相同的分类的最小区域。另外,在一些实施例中,为了生成PN图像,PN生成器332搜索原始图像的可以(通过添加(一个或多个)高层级特征)被更改以通过DNN分类器获得与原始图像的分类不同新的分类的最小区域。换句话说,PN生成器332搜索导致对原始图像的最小更改但是仍然使得DNN分类器更改修改后的原始图像的分类的(一个或多个)高层级特征。
因此,PP图像示出了原始图像的对DNN分类器有影响的(一个或多个)区域,因为显示的区域是需要保留在原始图像中以防止DNN更改其分类的区域。另一方面,PN图像示出了对DNN分类器有影响的已修改的原始图像的(作为添加的高层级特征的)(一个或多个)已修改区域,因为已修改区域是需要在已修改的原始图像中保持被修改以防止DNN将其分类更改回原始图像的分类的区域。
在一些实施例中,对比解释模块308仅在例如基于用户输入或软件指令而被指示生成PP图像和PN图像原始图像之一或两者时,才这样做。在一些实施例中,与图像分类器320对原始图像进行的分类并行地,对比解释模块308生成原始图像的PP版本和PN版本之一或两者。在一些实施例中,在图像分类器320对原始图像进行分类之后的任何时间,但是仅当原始图像及其分类可用或可以被提供给神经网络时,对比解释模块308生成原始图像的PP版本和PN版本之一或两者。
在一些实施例中,PN生成器332使用来自特征存储装置322的高层级特征。在一些实施例中,特征存储装置322是第三方图像数据库或任何种类的其他图像提供者。在一些实施例中,特征存储装置322是存储高层级特征的远程或外部计算机存储器。在一些实施例中,PN生成器332使用作为学习到的高层级特征(即,分开的表示)的高层级特征。例如,在一些实施例中,模型训练器316使用无监督训练,无监督训练产生从训练数据集314中的图像学习到的高层级特征集合。替代地,在一些实施例中,特征生成器338是使用无监督训练来生成被传递给PN生成器332以用于生成PN图像的高层级特征的集合的单独的模型训练器。在一些实施例中,特征生成器338是使用有监督的提取技术的单独的模型训练器,其中人们手动标记高层级特征,该高层级特征被提取以生成被传递给PN生成器332以用于生成PN图像的高层级特征的集合。
在一些实施例中,PP生成器330将生成的PP图像存储在PP存储装置334中,并且PN生成器332将生成的PN图像存储在PN存储装置340中。一旦分类后的图像、PP图像和PN图像准备好(或者分类后的图像以及PP图像和PN图像之一已准备好),该信息被提供给报告生成器342,报告生成器342然后生成可用作报告的数据,用于向用户通知原始图像的分类以及以PN和PP图像之一或两者的形式对图像分类进行对比解释。报告生成器342输出的报告数据346可以具有任何期望的格式,例如,xml、csv、json、pdf或其他。
参考图4,此图描绘了根据说明性实施例的用于使用生成对比解释的机器学习对数据进行分类的示例过程400的流程图。在特定实施例中,神经网络应用302执行过程400。在实施例中,过程400使用DNN模型对图像数据进行分类。在实施例中,DNN模型是分类模型,其需要增加的训练时间以换取更准确的预测。然而,在一些实施例中,使用除了DNN之外的机器学习和/或分类技术。
在实施例中,在框402处,神经网络应用302基于DNN生成分类器模型。在实施例中,DNN选自和/或基于一个或多个已知的深度学习神经网络结构/系统。在实施例中,神经网络应用302使用适合于正被建模的当前领域的训练数据来训练DNN。例如,在实施例中,分类模型旨在对衣物进行分类,神经网络应用302使用示出各种衣物的图像来训练分类模型,例如由Zalando SE开发的著名的Fashion-MNIST时尚产品数据库。此外,基于DNN生成的模型可以被称为深度学习模型或深度神经网络模型(DNN模型)。
在实施例中,在框404处,一旦模型被训练,神经网络应用302就采用该模型对表示一个或多个原始输入图像(或“原始图像”)的输入图像数据进行分类。在一些实施例中,输入图像数据,其是指从用户或其他系统或应用输入到神经网络应用302的图像数据。在实施例中,输入图像数据作为实时数据流被提供给神经网络应用302。另外,在实施例中,输入图像数据是数据(例如,存储在数据库、文件系统等中的数据或其组合)的集合。在实施例中,在使用模型对输入图像数据进行分类之前,神经网络应用302对输入图像数据进行预处理,或者在由另一系统或应用进行预处理之后接收输入图像数据。在实施例中,预处理包括数据的标准化、格式化、清理等,或其组合。
在一些实施例中,在框406处,图像分类器320使用经训练的模型来关于输入图像数据中的每个原始输入图像进行推断并做出预测。例如,在一些实施例中,图像分类器320将类别或标签指派给每个原始输入图像。在一些实施例中,图像分类器320使用分割算法将类别或标签指派给一组像素。在实施例中,图像分类器320预测输入图像数据的每个原始输入图像的分类,并将分类后的图像数据存储在计算机存储器中。在一些实施例中,图像分类器320根据图像数据中图像的像素或超像素的特性对图像数据中的图像进行分类。
在实施例中,在框408和410处,神经网络应用302生成用作DNN对原始输入图像的分类的人类可解释的原因的对比解释。在一些实施例中,神经网络应用为灰度图像、单色图像和彩色图像生成对比解释。在实施例中,神经网络应用302创建两种类型的对比解释:在框408处的“负相关”(或“PN”)图像和在框410处的“正相关”(或“PP”)图像。
正相关图像是原始输入图像的修改版本,其中修改限于去除原始图像的部分,并且没有任何内容被添加。正相关图像示出了原始图像的仍将通过DNN分类器获得与原始图像的分类相同的分类的最小区域。因此,正相关图像显示了原始图像的对DNN分类器有显著影响的区域,并且因此提供了关于DNN为什么做出了它所做的预测的一些见解。
作为简单的示例,数字“3”的灰度图像的负相关项(pertinent negative)可能是一条垂直线,因为向数字“3”的图像中添加类似“|”的垂直线可能会导致图像重新分类为大写“B”。如果另一个可能的类别是数字“88”,则另一个潜在的负相关项将是后跟大写epsilon的数字“8E”。存在多个潜在的负相关项,但是实际负相关图像是满足以下标准的原始图像的修改版本:
(1)至少一个高层级特征已被添加到原始图像;
(2)原始图像的任何部分都没有被去除;
(3)在框406处使用的DNN将原始图像的此修改版本分类为与原始图像的分类不同的分类;以及
(4)与被创建以满足(1)到(3)的原始图像的所有其他修改版本相比,负相关图像与原始图像最相似。换句话说,在具有不同分类的同时最类似于原始图像的原始图像的(即,通过添加高层级特征来修改的)修改版本是PN图像。
为了识别负相关项,对于灰度图像更容易定义添加,其中值为“0”的像素表示无信息,而将像素值增加至“1”指示添加。然而,对于具有丰富结构的彩色图像,没有明确的像素的“无信息”值,因此,对于像素值定义“添加”不是直截了当的,并且不太可能带来直观的结果。以朴素的方式定义添加,诸如简单地增加像素或红绿蓝(RGB)通道强度会导致无法解释的图像,因为在添加的部分不一定是可解释的情况下,可能不会维持相对结构。此外,即使对于灰度图像,仅增加像素的值也可能不会产生人类可解释的图像,或者,如果它是可解释的图像,则所添加的部分对于人类观察者而言将不一定是易于确定的。因此,本文公开的实施例利用高层级特征作为“添加物”。这些高层级特征解释提供了一种直观的、人类可解释的证据形式,其导致了现实的图像,并且添加也是可解释的,以帮助解释为什么模型做出了它所做的分类选择。
利用卷积神经网络(CNN)进行的深度学习使用卷积过滤器对数据进行分割,以定位和识别数据中学习到的、可观察的特征。CNN架构的每个过滤器或层都对输入数据进行转换,以增加数据的选择性和不变性。数据的此抽象允许神经网络应用关注它试图分类的数据中的特征,并忽略不相关的背景信息。深度学习是基于许多数据集包括高层级特征而高层级特征又包括低层级特征的理解来操作的。例如,在检查图像时,与寻找对象相比,寻找形成图案、形成部分、形成被寻找的对象的边缘更为高效。这些特征的层次结构可以在许多不同形式的数据(诸如语音和文本等)中找到。学习到的可观察特征包括由机器学习到的可量化规律性和对象。
在实施例中,在框408处,神经网络应用302通过搜索对图像的添加物来创建负相关图像,其中该添加物是高层级特征,该高层级特征如果被添加至原始图像,将是可以对图像所做的将改变图像的分类的最小更改。在实施例中,用于找到负相关项的算法包括以下符号:
·χ表示可行的输入空间,以(x0,t0)为例,使得x0∈χ并且t0是从神经网络分类器获得的预测标签。
·Mx表示对应于图像x=Mx(x0)的掩模。
·D(.)表示(基于生成对抗网络(GAN)或可变自动编码器(VAE)的)数据流形。
·z表示潜在表示,其中zx表示对应于输入x的潜在表示,使得x=D(zx)。
·k表示(可用或学习到的)(潜在或以其他方式的)可解释特征的数量,该可解释特征表示有意义的概念(即胡子、眼镜、微笑)并且gi(.),是作用于这些特征的对应函数,其中较高的值指示某个视觉概念的存在,而较低的值指示其不存在。
例如,假设创建了一个KitchenEquip数据集,其包括厨房设备的数千个图像,包括盘子、汤锅、搅拌碗和长柄勺的图像。这样的数据集可能具有可用于区分一项与另一项的许多潜在的不同高层级(可解释的)特征。例如,高层级特征可能包括侧壁和手柄,其中侧壁将汤锅和盘子区分开来,而手柄将长柄勺和搅拌碗区分开来。这样的高层级特征可以潜在地用于为每个特征构建二进制分类器,例如,其中“1”表示特征存在,而“0”表示特征不存在。这些分类器将是gi(.)函数。另一方面,对于没有高层级可解释特征的数据集,我们可以通过学习分开的表示来找到潜在特征,然后选择可解释的那些潜在特征(以及范围)。此处gi(.)函数将是一个恒等映射或负恒等映射,这取决于哪个方向添加了某个概念(即无袖衬衫到长袖衬衫)。在实施例中,这些属性函数在因果图中用作生成器的潜在特征,或者在给定期望属性的因果图的情况下,神经网络应用302使用已知方法学习这些函数。
在实施例中,神经网络应用302遵循用于找到负相关项的过程,该过程涉及解决在作为输出图像的变量δ上的优化问题。在实施例中,神经网络应用输出示例图像x的分类器模型的分类预测f(x),其中f(·)是输出针对所有类别的预测得分的向量的任何函数,预测得分诸如预测概率和在神经网络中广泛使用的logits(未归一化的概率)。
在实施例中,神经网络应用找到负相关项,该负相关项导致创建可分辨的图像,DNN预测该图像与原始输入图像的类别不同,并且其中最小数量的事物已被“添加”到原始输入图像而不删除任何内容以获得新图像。如果神经网络应用找到了这样的图像,则添加到输入图像中的事物被称为负相关项。添加了负相关项的修改后的输入图像被称为负相关图像。
在实施例中,神经网络应用使用可用于数据集的高层级可解释特征来搜索负相关项。多个公共数据集具有高层级可解释特征,而对于其他公共数据集,则可以使用针对k个高层级特征的分类器来学习这样的特征,这些分类器定义为函数gi(.),其中在这些函数中的每个函数中,较高的值指示添加了特征并且较低的值指示特征不存在。在实施例中,神经网络应用使用这些函数来将添加定义为将更多概念引入图像而不删除任何现有概念。形式上,这对应于从不基于输入图像从其原始值减小gi(.),而是增大它们。神经网络应用还寻求改变类别的高层级特征,该高层级特征将导致对输入图像进行最少数量的添加,这对应于将导致最终图像处于不同的类别中的尽可能少的gi(.)的值(在其允许的范围内)增加。神经网络应用还寻求现实的或至少可分辨的负相关图像,因此神经网络应用学习它在其上扰动图像的流形D,因为它寻求在添加之后也在流形D上的最终负相关图像。在实施例中,上述目标和条件引起以下优化问题:
上面的目标函数(1)中的第一项鼓励为最终图像添加高层级特征gi(.),而不小于其原始值。第二项鼓励最少地添加可解释特征。第三项是设计的损失函数,其鼓励DNN分类器模型将修改后的图像δ预测为与输入图像t0=arg maxi[f(x0)]i不同的类别,其中[f(δ)]i是δ的第i个类别预测得分。铰链状损失函数将修改后的输入图像δ推到位于与x0不同的类别中。参数κ≥0是一个置信参数,其控制[f(δ)]t0和之间的间隔。第四项(η>0)和第五项(ν>0)鼓励最终图像在输入空间和潜在空间中接近原始图像。在实施例中,神经网络应用302具有针对每个高层级特征gi(.)的阈值,其中仅值的超过该阈值的增加将暗示着有意义的添加。以此方式定义添加的好处是,不仅最终图像是可解释的,而且添加也是可解释的,并且我们可以清楚地阐明维持原始分类应必需缺少的东西(概念)。
在实施例中,神经网络应用使用目标函数(1)求解负相关项。L1正则化项惩罚涉及数据流形D的优化变量δ的非同一性和复杂函数||g(D(zδ))||1,因此近似方法不适用。替代地,神经网络应用使用标准次梯度下降的大量迭代(例如,在500到1500次迭代的范围内,诸如1000个间隔)来求解函数(1)。在实施例中,神经网络应用通过将负相关项设置为在解δ*的预测得分至少为的所有迭代中与x0的隐藏码具有最小的L2距离‖zx0-zδ‖2的迭代来找到负相关项。
在实施例中,过程[图6]用于识别负相关项。在实施例中,在框410处,神经网络应用302通过搜索重要的像素或超像素的最小集来创建正相关图像,这些重要像素或超像素本身足以使分类器输出与原始示例相同的类别。更正式地讲,对于示例图像x0,我们的目标是找到一个图像使得argmaxi[Pred(x0)]i=argmaxi[Pred(δ)]i(即相同的预测),其中δ包含来自原始图像的尽可能少的超像素和可解释的概念。这导致以下优化问题:
上面的目标函数(2)中的第一项惩罚属性的添加,以鼓励稀疏的正相关解释。第二项是设计的损失函数,其鼓励DNN分类器模型将修改后的图像δ预测为与输入图像相同的类别,并且在[f(δ)]t0大于至少κ≥0时被最小化,κ为裕度/置信参数。参数γ,c,β≥0是相关联的正则化系数。
在实施例中,神经网络应用使用以上公式对超像素进行优化,以上公式将仅使用像素的情况包括在内,以在图像数据集上提供更多可解释的结果。
在实施例中,神经网络应用通过首先将超像素上的二元掩模Mδ放宽为实值(每个条目在[0,1]之间)并且然后应用算法(例如,著名的标准迭代软阈值算法(ISTA),该算法有效地解决具有L1正则化的优化问题)来解决这样的优化问题,来使用目标函数(2)求解正相关项。在实施例中,神经网络应用运行数次ISTA迭代(例如,在70到130次迭代的范围内,诸如100次迭代),并且获得具有最小的L1范数并且满足δ*在至少的裕度κ内的预测的解Mδ*,然后根据它们的值按降序对Mδ*中的条目进行排序,并且随后添加排序后的超像素,直到DNN分类器模型预测掩模图像为预测
参考图5,此图描绘了根据说明性实施例的由神经网络应用302生成的用于报告包括生成对比解释的分类过程的结果的输出报告500的实施例的框图。在实施例中,报告500包括三个重复行:分类行502、图像行504和对比解释行506。在实施例中,报告500包括三列:输入图像列508、负相关列510和正相关列512。
在实施例中,图像行504和输入图像列508的相交处的框示出了输入图像,例如在图3中的框504处输入的。分类行502和输入图像列508的相交处的框示出了分类器模型针对对应的输入图像预测的分类,例如如由DNN分类器模型在图3中的框506处预测的。对比解释行506和负相关列510的相交处的框示出了由寻找负相关项的过程而产生的属性(例如,高层级特征),例如如在图4中的框408处找到的。图像行504和负相关列510的相交处的框示出了负相关图像,其是已被改变为包括对应的负相关项的输入图像的修改后的版本。分类行502和负相关列510的相交处的框示出了分类器模型针对对应的负相关图像预测的分类。对比解释行506和正相关列512的相交处的框示出了由寻找正相关项的过程产生的多个特征(例如,超像素),例如如在图4中的框410处找到的。图像行504和正相关列512的相交处的框示出正相关图像,其是仅包括输入图像的最小部分的输入图像的修改版本,该输入图像的修改版本仍然可以导致其被分类为与输入图像相同。由于根据定义正相关图像将具有与输入图像相同的分类,因此不使用正相关列512和分类行502的相交处的框。由于在整个过程的初始输入和分类阶段期间没有对比解释信息被生成,因此不使用对比解释行506和输入图像列508的相交处的框。
报告500提供直观且人类可读的解释,以帮助理解分类器做出的决策。例如,第一图像行502示出了被分类为“衬衫”的输入图像。负相关图像具有新的分类,即“外套”,并且添加的负相关特征是“更宽的袖子、腰部”。这指示分类器模型关注图像在袖子和腰部周围的部分,以确定图像是衬衫还是外套。正相关图像还提供了对分类器做出决策的过程的见解。分类器至少需要15个超像素/特征来将此图像分类为“衬衫”,并且大部分决策基于图像在衣领和纽扣周围的部分。
作为另一示例,第二图像行502示出了被分类为“裤子”的输入图像。负相关图像具有新的分类,即“裙子”,并且添加的负相关特征是“中间的一件织物”。这指示分类器模型关注裤子腿之间的间隙部分,以确定图像是裤子还是裙子。正相关图像也支持此结论,因为保留了原始图像的大约一半,这足以开始看到分开的裤子腿。
参考图6,此图描绘了根据说明性实施例的用于创建PN图像的示例过程600的流程图。在特定实施例中,PN生成器332执行过程600。在实施例中,使用一组k个高层级特征gi(.),以修改原始图像的相应副本(i=1至k),以识别与原始图像最相似但被DNN不同地进行分类的修改后的原始图像。
在实施例中,在框602处,过程获得原始输入图像的副本。接下来,在框604处,该过程使用高层级特征gi(.),通过将高层级特征gi(.)添加到原始图像来创建修改后的图像(i)。例如,在实施例中,原始输入图像是搅拌碗,而高层级特征gi(.)是锅柄,原始输入图像被修改以示出具有锅柄的搅拌碗。接下来,在框606处,DNN分类器预测修改后的图像的类别。继续其中搅拌碗的图像被修改为具有锅柄的前面的示例,在一些实施例中,由于添加了手柄,正确地将搅拌碗分类为搅拌碗的DNN将把修改后的图像分类为炒锅而不是搅拌碗。在其它实施例中,锅柄不足以使DNN对搅拌碗进行不同的分类。在框608处,该过程确定修改后的图像是否具有与原始图像的分类不同的分类。如果是这样,则过程继续到框610处,在框610处计数器i被递增。如果否,则过程继续到框612处,在框612处过程检查此修改后的图像是否是与原始图像不同地被分类的唯一的修改后的图像。如果是这样,则过程继续到框614处,在框614处过程将修改后的图像(i)作为潜在的PN图像存储在电子存储器中。否则,过程继续到框616处。在框616处,过程计算修改后的图像(i)和原始输入图像之间的差异。在框618处,过程确定修改后的图像(i)是否比随后存储的潜在PN图像更类似于原始输入图像。如果是这样,则过程继续到框614处,在框614处过程将修改后的图像(i)作为潜在的PN图像存储在电子存储器中。在一些实施例中,任何先前的潜在PN图像被覆盖或以其他方式删除。
在一些实施例中,在框614之后,过程继续到框610处,在框610处计数器i被递增。在一些实施例中,如果仍然存在要检查的高层级特征(i≤k),则过程继续回到框602处的开始。否则,过程继续进行至框620处,在框620处保持存储为潜在PN图像的修改后的图像被认为是PN图像。
参考图7,此图描绘了根据说明性实施例的用于创建PP图像的示例过程700的流程图。在特定实施例中,PP生成器330执行过程700。在实施例中,过程700使用优化算法来迭代地去除原始输入图像的副本的部分,并使用DNN来预测修改后的图像的分类,这将持续直到DNN不再将修改后的图像分类为与原始图像具有相同的类别为止。仍具有与原始图像相同的类别的修改后的图像的最后一个版本将被保存在经过相同过程但去除了不同图案的原始图像的其他副本的阵列中。最终的PP图像选自该阵列。
在实施例中,在框702处,该过程获得原始输入图像的副本。接下来,在框704处,过程通过去除图像的一部分来创建修改后的图像。在一些实施例中,过程从图像中去除所选择的像素。在一些实施例中,过程从图像中去除所选择的超像素或超像素组。接下来,在框706处,DNN分类器预测修改后的图像的类别。在框708处,过程确定修改后的图像是否具有与原始图像的分类不同的分类。如果分类仍然是相同的(在框708处为“否”),则过程继续到框710处,在框710处修改后图像的副本被存储。在一些实施例中,如果从框706到712的循环的先前迭代中存储了较少修改的图像,则当前图像将覆盖先前存储的图像,使得所存储的图像始终是已被进行最大修改而在框708处没有被重新分类的图像。接下来,在框712处,过程去除修改后的图像的更多部分。然后,过程循环回到框706处,在框706处DNN分类器预测修改后的图像的类别。
最终,图像将被修改到DNN将针对修改后的图像预测不同类别的程度。在这时,过程继续到框724处,在框724处,在框710处存储的图像以验证其是否满足其他参数,诸如L正则化参数。如果是这样,则图像被添加到从框702至712的过程获得的图像阵列中。在框716处,算法控制器通过返回到框702处来确定是否继续原始图像的另一个副本。否则,过程继续到框718处,在框718处保存的图像阵列被排序,以找到在原始输入图像的最小剩余部分中具有更多可识别结果的图像。在框720处,最满足标准的图像作为PP图像被输出。
以下定义和缩写用于解释权利要求和说明书。如本文所使用的,术语“包括(comprises、comprising)”、“包含(includes、including)”、“具有(has、having)”、“含有(contains、containing)”或其任何其他变型旨在覆盖排他性的包含。例如,包括一系列元素的组合物、混合物、过程、方法、物品或装置不一定仅限于那些元素,而是可以包括未明确列出的或这样的组合物、混合物、过程、方法、物品或装置固有的其他元素。
另外,术语“说明性”在本文中用来指“用作示例、实例或说明”。本文描述为“说明性”的任何实施例或设计不必被解释为比其他实施例或设计更优选或有利。术语“至少一个”和“一个或多个”应理解为包括大于或等于一的任何整数,即一个、两个、三个、四个等。术语“多个”应理解为包括大于或等于2的任何整数,即两个、三个、四个、五个等。术语“连接”可以包括间接“连接”和直接“连接”。
说明书中对“一个实施例”,“实施例”、“示例实施例”等的引用指示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例可以包括或可以不包括该特定的特征、结构或特性。而且,这样的短语不一定指代相同的实施例。此外,当结合实施例描述特定的特征、结构或特性时,可以认为,无论是否明确描述,结合其他实施例来影响这样的特征、结构或特性均在本领域技术人员的知识范围内。
术语“大约”、“基本上”、“近似地”及其变型旨在包括与基于提交申请时可用的设备的特定数量的测量结果相关联的误差程度。例如,“大约”可以包括给定值的±8%或5%或2%的范围。
已经出于说明的目的给出了对本发明的各种实施例的描述,但是这些描述并不旨在是详尽的或限于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是明显的。选择本文使用的术语是为了最好地解释实施例的原理、对市场上存在的技术的实际应用或技术改进,或者使本领域的其他普通技术人员能够理解本文所述的实施例。
已经出于说明的目的给出了对本发明的各种实施例的描述,但是这些描述并不旨在是详尽的或限于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是明显的。选择本文使用的术语是为了最好地解释实施例的原理、对市场上存在的技术的实际应用或技术改进,或者使本领域的其他普通技术人员能够理解本文所述的实施例。
因此,在说明性实施例中提供了计算机实现的方法、系统或装置以及计算机程序产品,用于管理对在线社区的参与和其他相关特征、功能或操作。在关于设备的类型描述实施例或其一部分的情况下,计算机实现的方法、系统或装置、计算机程序产品或其一部分适于或被配置为与该类型设备的适当的且可比较的表现形式一起使用。
在将实施例描述为在应用中实现的情况下,可以在说明性实施例的范围内预期以软件即服务(SaaS)模型的应用交付。在SaaS模型中,通过在云基础设施中执行应用,将实现实施例的应用能力提供给用户。用户可以通过诸如web浏览器(例如,基于web的电子邮件)之类的瘦客户端界面或其他轻量级客户端应用来使用各种客户端设备来访问应用。用户不管理或控制包括网络、服务器、操作系统或云基础设施的存储装置的底层云基础设施。在一些情况下,用户甚至可能不管理或控制SaaS应用的功能。在一些其他情况下,应用的SaaS实现可能会允许有限的特定于用户的应用配置设置的可能例外。
在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (16)
1.一种用于生成用于分类器预测的对比信息的计算机实现的方法,所述计算机实现的方法包括:
由一个或多个处理器接收表示原始输入图像的图像数据;
由一个或多个处理器使用深度学习分类器模型预测所述输入图像的第一分类;
由一个或多个处理器通过将一组高层级特征中的每一个高层级特征添加到所述原始图像的相应副本来创建一组修改后的输入图像;
由一个或多个处理器使用所述深度学习分类器模型预测相应的修改后的输入图像的分类,以识别与所述原始输入图像不同地被分类的一个或多个修改后的输入图像;以及
由一个或多个处理器从与所述原始输入图像不同地被分类的所述一个或多个修改后的输入图像中识别与所述原始输入图像最相似的负相关图像。
2.如权利要求1所述的计算机实现的方法,还包括:
生成包括所述负相关图像的视觉表示的报告。
3.如权利要求1所述的计算机实现的方法,还包括:
由一个或多个处理器创建正相关图像,所述正相关图像是所述输入图像的修改版本,所述输入图像的修改版本包括少于所述输入图像的所有超像素的超像素,但仍由所述深度学习分类器模型预测为与所述输入图像处于相同的第一分类中。
4.如权利要求3所述的计算机实现的方法,还包括:
比较多个修改后的图像以识别候选的修改后的图像,所述候选的修改后的图像具有剩余的所述量的输入图像同时仍与所述输入图像一起被分类在所述第一分类中,其中所述修改后的图像是具有少于所述输入图像的所有部分的所述输入图像的修改后的版本。
5.如权利要求1所述的计算机实现的方法,其中,对所述负相关图像的识别包括从对所述原始输入图像的其他潜在修改中,确定所述负相关图像是对所述输入图像进行最小更改的结果。
6.如权利要求1所述的计算机实现的方法,其中,所述输入图像是多色图像。
7.如权利要求1所述的计算机实现的方法,其中,所述识别包括识别所述负相关图像将由所述深度学习分类器模型分类为不同于所述第一分类的第二分类。
8.一种用于生成用于分类器预测的对比信息的计算机可用程序产品,所述计算机可用程序产品包括计算机可读存储设备以及存储在所述存储设备上的程序指令,所存储的程序指令包括:
用于由一个或多个处理器接收表示原始输入图像的图像数据的程序指令;
用于由一个或多个处理器使用深度学习分类器模型预测所述输入图像的第一分类的程序指令;
用于由一个或多个处理器通过将一组高层级特征中的每一个高层级特征添加到所述原始图像的相应副本来创建一组修改后的输入图像的程序指令;
用于由一个或多个处理器使用所述深度学习分类器模型预测相应的修改后的输入图像的分类,以识别与所述原始输入图像不同地被分类的一个或多个修改后的输入图像的程序指令;以及
用于由一个或多个处理器从与所述原始输入图像不同地被分类的所述一个或多个修改后的输入图像中识别与所述原始输入图像最相似的负相关图像的程序指令。
9.如权利要求8所述的计算机可用程序产品,还包括用于由一个或多个处理器生成包括所述负相关图像的视觉表示的报告的程序指令。
10.如权利要求8所述的计算机可用程序产品,还包括用于由一个或多个处理器创建正相关图像的程序指令,所述正相关图像是所述输入图像的修改版本,所述输入图像的修改版本包括少于所述输入图像的所有超像素的超像素,但仍由所述深度学习分类器模型预测为与所述输入图像处于相同的第一分类中。
11.如权利要求10所述的计算机可用程序产品,还包括用于比较多个修改后的图像以识别候选的修改后的图像的程序指令,所述候选的修改后的图像具有剩余的所述量的输入图像,同时仍与所述输入图像一起被分类在所述第一分类中,其中所述修改后的图像是具有少于所述输入图像的所有部分的所述输入图像的修改后的版本。
12.如权利要求8所述的计算机可用程序产品,其中,对所述负相关图像的识别包括从对所述原始输入图像的其他潜在修改中,确定所述负相关图像是对所述输入图像进行最小更改的结果。
13.如权利要求8所述的计算机可用程序产品,其中,所述输入图像是多色图像。
14.如权利要求8所述的计算机可用程序产品,其中,所述识别包括识别所述负相关图像将由所述深度学习分类器模型分类为不同于所述第一分类的第二分类。
15.一种计算机系统,包括处理器、计算机可读存储器和计算机可读存储设备以及存储在所述存储设备上的用于由所述处理器经由所述存储器执行的程序指令,所存储的程序指令包括用于执行如权利要求1至7中任一项的方法中的步骤的程序指令。
16.一种装置,包括被配置为执行如权利要求1-7中任一项的方法中的步骤的模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/549,394 | 2019-08-23 | ||
US16/549,394 US11222242B2 (en) | 2019-08-23 | 2019-08-23 | Contrastive explanations for images with monotonic attribute functions |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112418390A true CN112418390A (zh) | 2021-02-26 |
CN112418390B CN112418390B (zh) | 2024-06-11 |
Family
ID=74646264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010827714.5A Active CN112418390B (zh) | 2019-08-23 | 2020-08-17 | 使用单调属性函数对图像进行对比解释 |
Country Status (2)
Country | Link |
---|---|
US (2) | US11222242B2 (zh) |
CN (1) | CN112418390B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113269241A (zh) * | 2021-05-18 | 2021-08-17 | 中南大学 | 一种遥感图像对抗样本的软阈值防御方法 |
CN114119803A (zh) * | 2022-01-27 | 2022-03-01 | 浙江大学 | 一种基于因果图谱的场景图像生成方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11868436B1 (en) | 2018-06-14 | 2024-01-09 | Amazon Technologies, Inc. | Artificial intelligence system for efficient interactive training of machine learning models |
US11875230B1 (en) | 2018-06-14 | 2024-01-16 | Amazon Technologies, Inc. | Artificial intelligence system with intuitive interactive interfaces for guided labeling of training data for machine learning models |
US11222242B2 (en) * | 2019-08-23 | 2022-01-11 | International Business Machines Corporation | Contrastive explanations for images with monotonic attribute functions |
US11669753B1 (en) * | 2020-01-14 | 2023-06-06 | Amazon Technologies, Inc. | Artificial intelligence system providing interactive model interpretation and enhancement tools |
EP3855355A1 (en) * | 2020-01-23 | 2021-07-28 | Robert Bosch GmbH | Method for determining explainability mask by neural network, system and medium |
CN111541505B (zh) * | 2020-04-03 | 2021-04-27 | 武汉大学 | 一种面向ofdm无线通信系统的时域信道预测方法及系统 |
US11335048B1 (en) * | 2020-11-19 | 2022-05-17 | Sony Group Corporation | Neural network-based image colorization on image/video editing applications |
US11763135B2 (en) * | 2021-03-01 | 2023-09-19 | Robert Bosch Gmbh | Concept-based adversarial generation method with steerable and diverse semantics |
US20230376633A1 (en) * | 2022-05-19 | 2023-11-23 | Deeping Source Inc. | Method for de-identifying privacy-related region within image and de-identifying device using the same |
US20230409832A1 (en) * | 2022-06-16 | 2023-12-21 | International Business Machines Corporation | System and method for generating contrastive explanations for text guided by attributes |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101283362A (zh) * | 2005-10-25 | 2008-10-08 | 布拉科成像S.P.A.公司 | 用于自动处理和评估图像、特别是诊断图像的方法和系统 |
CN108428231A (zh) * | 2018-03-19 | 2018-08-21 | 南京信息工程大学 | 一种基于随机森林的多参数零件表面粗糙度学习方法 |
US20190026681A1 (en) * | 2015-12-23 | 2019-01-24 | Pymetrics, Inc. | Systems and methods for data-driven identification of talent |
US20190238568A1 (en) * | 2018-02-01 | 2019-08-01 | International Business Machines Corporation | Identifying Artificial Artifacts in Input Data to Detect Adversarial Attacks |
CN110135301A (zh) * | 2019-04-30 | 2019-08-16 | 百度在线网络技术(北京)有限公司 | 交通牌识别方法、装置、设备和计算机可读介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9514390B2 (en) * | 2014-12-17 | 2016-12-06 | Facebook, Inc. | Systems and methods for identifying users in media content based on poselets and neural networks |
JP6725547B2 (ja) | 2015-03-20 | 2020-07-22 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | 人工ニューラルネットワークの関連性スコア割当て |
EP3580718A4 (en) * | 2017-02-09 | 2021-01-13 | Painted Dog, Inc. | METHODS AND APPARATUS FOR DETECTING, FILTERING AND IDENTIFYING OBJECTS IN CONTINUOUS VIDEO |
US10417524B2 (en) * | 2017-02-16 | 2019-09-17 | Mitsubishi Electric Research Laboratories, Inc. | Deep active learning method for civil infrastructure defect detection |
CN107766933B (zh) | 2017-10-24 | 2021-04-23 | 天津大学 | 一种解释卷积神经网络的可视化方法 |
CN110956060A (zh) * | 2018-09-27 | 2020-04-03 | 北京市商汤科技开发有限公司 | 动作识别、驾驶动作分析方法和装置及电子设备 |
RU2721187C1 (ru) * | 2019-03-29 | 2020-05-18 | Общество с ограниченной ответственностью "Аби Продакшн" | Обучение языковых моделей с использованием текстовых корпусов, содержащих реалистичные ошибки оптического распознавания символов (ocr) |
US11222242B2 (en) * | 2019-08-23 | 2022-01-11 | International Business Machines Corporation | Contrastive explanations for images with monotonic attribute functions |
-
2019
- 2019-08-23 US US16/549,394 patent/US11222242B2/en active Active
-
2020
- 2020-08-17 CN CN202010827714.5A patent/CN112418390B/zh active Active
-
2021
- 2021-12-03 US US17/541,480 patent/US11640532B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101283362A (zh) * | 2005-10-25 | 2008-10-08 | 布拉科成像S.P.A.公司 | 用于自动处理和评估图像、特别是诊断图像的方法和系统 |
US20190026681A1 (en) * | 2015-12-23 | 2019-01-24 | Pymetrics, Inc. | Systems and methods for data-driven identification of talent |
US20190238568A1 (en) * | 2018-02-01 | 2019-08-01 | International Business Machines Corporation | Identifying Artificial Artifacts in Input Data to Detect Adversarial Attacks |
CN108428231A (zh) * | 2018-03-19 | 2018-08-21 | 南京信息工程大学 | 一种基于随机森林的多参数零件表面粗糙度学习方法 |
CN110135301A (zh) * | 2019-04-30 | 2019-08-16 | 百度在线网络技术(北京)有限公司 | 交通牌识别方法、装置、设备和计算机可读介质 |
Non-Patent Citations (3)
Title |
---|
FLYINGWARRIOR: "解释机器学习模型的一些方法(二)——在受监管的行业使用机器学习", 《HTTPS://WWW.CNBLOGS.COM/WMX24/P/9356937.HTML》, pages 1 - 12 * |
PATRICK SCHOBER等: "Correlation Co", 《SPECIAL ARTICLE》, pages 1763 - 1768 * |
企鹅号 - AI科技评论: "深度学习的可解释性研究(一):让模型 "说人话"", 《HTTPS://CLOUD.TENCENT.COM/DEVELOPER/NEWS/226498》, pages 1 - 13 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113269241A (zh) * | 2021-05-18 | 2021-08-17 | 中南大学 | 一种遥感图像对抗样本的软阈值防御方法 |
CN113269241B (zh) * | 2021-05-18 | 2022-05-06 | 中南大学 | 一种遥感图像对抗样本的软阈值防御方法 |
CN114119803A (zh) * | 2022-01-27 | 2022-03-01 | 浙江大学 | 一种基于因果图谱的场景图像生成方法 |
CN114119803B (zh) * | 2022-01-27 | 2022-05-10 | 浙江大学 | 一种基于因果图谱的场景图像生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112418390B (zh) | 2024-06-11 |
US11222242B2 (en) | 2022-01-11 |
US11640532B2 (en) | 2023-05-02 |
US20210056355A1 (en) | 2021-02-25 |
US20220092360A1 (en) | 2022-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112418390B (zh) | 使用单调属性函数对图像进行对比解释 | |
Mahadevkar et al. | A review on machine learning styles in computer vision—techniques and future directions | |
Thabtah et al. | Data imbalance in classification: Experimental evaluation | |
Kauffmann et al. | Towards explaining anomalies: a deep Taylor decomposition of one-class models | |
Fong et al. | Interpretable explanations of black boxes by meaningful perturbation | |
Eslami et al. | Attend, infer, repeat: Fast scene understanding with generative models | |
Ren et al. | Ensemble based adaptive over-sampling method for imbalanced data learning in computer aided detection of microaneurysm | |
US9111375B2 (en) | Evaluation of three-dimensional scenes using two-dimensional representations | |
Bird et al. | Cifake: Image classification and explainable identification of ai-generated synthetic images | |
Wu et al. | U-GAN: Generative adversarial networks with U-Net for retinal vessel segmentation | |
EP3602424A1 (en) | Sensor data processor with update ability | |
Juneja et al. | Computer vision‐enabled character recognition of hand gestures for patients with hearing and speaking disability | |
Das et al. | On supervised class-imbalanced learning: An updated perspective and some key challenges | |
Güçlü et al. | End-to-end semantic face segmentation with conditional random fields as convolutional, recurrent and adversarial networks | |
Başaran | Classification of white blood cells with SVM by selecting SqueezeNet and LIME properties by mRMR method | |
Karanam et al. | Study on image processing using deep learning techniques | |
Schutera et al. | Automated phenotype pattern recognition of zebrafish for high-throughput screening | |
Teneggi et al. | Fast hierarchical games for image explanations | |
Xu et al. | On improving temporal consistency for online face liveness detection system | |
Fantin Irudaya Raj et al. | Application of deep learning and machine learning in pattern recognition | |
CN116569210A (zh) | 归一化oct图像数据 | |
Ahmed et al. | Robust adversarial uncertainty quantification for deep learning fine-tuning | |
Si et al. | U-Net with attention mechanism for retinal vessel segmentation | |
Hemanth et al. | Diabetic retinopathy diagnosis in retinal images using hopfield neural network | |
Fruend et al. | Human sensitivity to perturbations constrained by a model of the natural image manifold |
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 |