CN112183714A - 基于人工神经网络的自动化数据切片 - Google Patents

基于人工神经网络的自动化数据切片 Download PDF

Info

Publication number
CN112183714A
CN112183714A CN202010473418.XA CN202010473418A CN112183714A CN 112183714 A CN112183714 A CN 112183714A CN 202010473418 A CN202010473418 A CN 202010473418A CN 112183714 A CN112183714 A CN 112183714A
Authority
CN
China
Prior art keywords
ann
data
data slice
nodes
layer
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.)
Pending
Application number
CN202010473418.XA
Other languages
English (en)
Inventor
R·博瑞尔
E·法尔彻
O·拉兹
A·兹罗尼克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN112183714A publication Critical patent/CN112183714A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Complex Calculations (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种用于基于人工神经网络(ANN)进行自动化数据切片的方法、装置和计算机程序产品。该方法包括:获得ANN,其中ANN被配置为提供对数据实例的预测、其中ANN包括在节点之间具有互连的节点集合;基于ANN的节点的子集确定属性向量;基于属性向量,确定多个数据切片;获得包括测试数据实例的测试数据集;对于每个数据切片,计算ANN在该数据切片上的性能测量,其中所述计算基于ANN在映射到数据切片的每个测试数据实例上的应用;以及基于数据切片的性能测量的至少一部分来执行动作。

Description

基于人工神经网络的自动化数据切片
技术领域
本公开一般而言涉及验证人工神经网络(ANN),并且特别地涉及针对不同数据集来执行数据切片以验证ANN。
背景技术
在一些机器学习(ML)用例中,特别是在计算机视觉中,当前的范例是让人工神经网络(ANN)学习属性,而不是让人类定义属性。在一些示例性实施例中,深度神经网络(DNN)可以是具有若干层的ANN。在一些情况下,DNN具有若干个计算“隐藏”特征的层,然后具有若干个组合隐藏特征以产生分类或最终分数的全连接层。
可以利用不同的性能和准确性度量来评估机器学习模型的性能,诸如F1-分数、准确性等。准确性可以作为正确分类的总项目的百分比来测量。F1-分数是查准率(例如,在被识别为阳性的总项目中被正确识别为阳性的项目数)和查全率(例如,在总真阳性中被正确识别为阳性的项目数)的调和平均值(harmonic mean)。
发明内容
所公开的主题的一个示例性实施例是一种方法,包括:获得人工神经网络(ANN)。ANN可以被配置为提供对数据实例的预测。ANN可以包括在其之间具有互连的节点集合。该方法还包括基于ANN的节点的子集来确定属性向量。该方法还包括基于属性向量确定多个数据切片。该方法还包括获得包括测试数据实例的测试数据集。该方法还包括对于每个数据切片计算ANN在该数据切片上的性能测量。所述计算可以基于ANN在映射到数据切片的每个测试数据实例上的应用。该方法还包括基于数据切片的性能测量的至少一部分来执行动作。
所公开的主题的另一个示例性实施例是一种具有处理器和耦合的存储器的计算机化的装置,该处理器适于执行以下步骤:获得人工神经网络(ANN)。ANN可以被配置为提供对数据实例的预测。ANN可以包括在其之间具有互连的节点集合。该方法还包括基于ANN的节点的子集来确定属性向量。该方法还包括基于属性向量来确定多个数据切片。该方法还包括获得包括测试数据实例的测试数据集。该方法还包括对于每个数据切片计算ANN在该数据切片上的性能测量。所述计算可以基于ANN在映射到数据切片的每个测试数据实例上的应用。该方法还包括基于数据切片的性能测量的至少一部分来执行动作。
所公开的主题的又一个示例性实施例是一种计算机程序产品,其包括保持程序指令的非暂态计算机可读存储介质,该程序指令在被处理器读取时使处理器执行一种方法,该方法包括:获得人工神经网络(ANN)。ANN可以被配置为提供对数据实例的预测。ANN可以包括在其之间具有互连的节点集合。该方法还包括基于ANN的节点的子集来确定属性向量。该方法还包括基于属性向量确定多个数据切片。该方法还包括获得包括测试数据实例的测试数据集。该方法还包括对于每个数据切片计算ANN在该数据切片上的性能测量。所述计算可以基于ANN在映射到数据切片的每个测试数据实例上的应用。该方法还包括基于数据切片的性能测量的至少一部分来执行动作。
附图说明
从以下结合附图的详细描述中,将更充分地理解和认识到本公开的主题,在附图中,对应或相似的数字或字符指示对应或相似的组件。除非另有指示,否则附图提供本公开的示例性实施例或方面,并且不限制本公开的范围。在附图中:
图1A示出了根据所公开的主题的一些示例性实施例的方法的流程图;
图1B示出了根据所公开的主题的一些示例性实施例的方法的流程图;
图2示出了根据所公开的主题的一些示例性实施例的装置的框图;以及
图3示出了根据所公开的主题的一些示例性实施例的其中可以利用所公开的主题的示例性ANN的示意图。
具体实施方式
所公开的主题处理的一个技术问题是核实预测模型是否有效。在一些示例性实施例中,诸如F1-分数、准确性等的性能度量可以用于测量预测模型的性能。可以在预测模型的整个训练数据集、预测模型的整个测试数据集等上计算性能度量。但是,可能存在数据集的切片,其中预测模型在其上可能表现低于阈值,而在同一数据集的其它切片上表现高于另一个阈值。由于其它切片中高于标准(above-par)的性能,因此此类低于标准(below-par)的性能可能被隐藏在总体性能度量中。作为示例,数据集中可能存在某个切片,在该切片上,预测模型的性能可能低于阈值,诸如低于85%、低于80%等;而数据集中可能存在另一个切片,在该切片上,预测可能表现高于阈值,诸如高于95%、高于98%等。但是,使用常规的性能度量,预测模型可能具有超过90%、超过92%等的平均性能。这样的性能会被视为良好的性能,即使预测模型在一些数据切片上可能表现不佳。因此,可能期望提供一种在数据的切片上核实模型的性能的方法。
所公开的主题处理的另一个技术问题是自动创建数据切片。代替手动定义数据切片,可能期望具有一种自动化的方式来识别实例空间中的不同切片,以单独评估每个切片。可能期望提供一种方法,该方法实现基于特征将数据实例映射到数据切片的自动化部件。
一种技术解决方案是在不同的数据切片上为预测模型计算不同的性能测量。在一些示例性实施例中,可以基于预测模型的属性向量自动确定预测模型的数据上的数据切片。在一些示例性实施例中,可以使用ANN来实现预测模型。可以基于包括数据实例的数据集来训练ANN。ANN可以被配置为提供对数据实例的预测。当将ANN应用于数据实例时,可以预测标签。数据集可以包括训练数据,该训练数据包括数据实例及其标签。
在一些示例性实施例中,可以基于ANN的节点的子集来确定属性向量。在一些示例性实施例中,属性向量可以包括ANN的层的节点。作为示例,层可以是ANN的全连接层。作为另一个示例,层可以是ANN的第一全连接层、出现在ANN中的第一非卷积层等。属性向量可以是具有比表示数据实例的特征向量的维度明显更小的维度的特征向量。在一些示例性实施例中,基于属性向量,可以确定数据实例的数据切片。数据切片可以定义数据实例的子集。在一些示例性实施例中,可以通过计算属性向量的值来确定实例的数据切片,这可以通过将实例馈送到ANN(或其一部分)中来执行。
在一些示例性实施例中,对于每个数据切片,可以计算ANN的性能测量。性能测量可以是F1-分数、准确性等。在一些示例性实施例中,性能测量可以测量将ANN应用于数据切片所包括的数据实例的结果。附加地或替代地,仅当由数据切片所包括的数据实例的数量高于阈值时,才可以利用诸如F1-分数、准确性等的性能测量。阈值可以是100个数据实例、500个数据实例、1000个数据实例等。响应于确定数据切片的性能测量的至少一部分低于阈值,可以执行动作。在一些示例性实施例中,即使在数据切片的另一部分上的性能测量的总体结果高于阈值,在数据切片上的低于预定阈值的性能测量也可以指示表现较差的模型。阈值可以是绝对阈值(例如,100个数据实例、10个数据实例、5个数据实例、0个数据实例)或相对阈值(例如,数据集的总尺寸的1%、最大数据集的10%等)。在一些示例性实施例中,性能度量可以指示包括数据切片的数据实例的数量。尺寸低于阈值的数据切片可以指示ANN的体系架构的选择不当、指示数据集存在问题等。
在一些示例性实施例中,可以使用来自属性向量的属性的组合来定义数据切片。在一些示例性实施例中,可以使用不同属性(及其值)的组合来定义不同的数据切片。作为示例,可以有四个属性:A、B、C和D。可以使用这四个属性的值的每个逐n(n-wise)组合来定义数据切片。例如,可以利用每对属性(例如,A,B;A,C;A,D;B,C;B,D),并且可以使用每个这样的属性的不同估值(valuation)来定义不同的数据切片(例如,对于A,B对,用于其中A=a1,B=b1的实例的数据切片、用于其中A=a1,B=b2的实例的数据切片、用于其中A=a2,B=b1的实例的数据切片,以及用于其中A=a2,B=b2的实例的数据切片)。
在一些示例性实施例中,响应于数据切片的性能测量低于阈值而执行的动作可以包括获得第二预测模型。第二预测模型可以是与所述预测模型不同的、对于数据切片中的实例表现优于所述预测模型的预测模型。在一些示例性实施例中,第二预测模型可以是具有不同体系架构的ANN,诸如具有不同数量的层、在层的一部分中具有不同数量的节点等、可以是利用不同方法(诸如决策树、线性回归等)的预测模型、手动定义的预测模型或手动预测。
附加地或替代地,在两个或更多个预测模型可用的情况下,可以比较它们在每个不同数据切片中的性能度量。因此,当期望针对实例的预测时,可以利用相关数据切片中表现最佳的预测模型来提供预测。附加地或替代地,可以利用由两个或更多个预测模型的预测的组合,同时在基于其选择最终预测时考虑该两个或更多个预测模型在相关数据切片中们的对应性能测量。作为示例,取决于不同实例的相应数据切片并基于这些数据切片中的性能测量,赋予不同模型的权重对于该不同实例可能不同。
在一些示例性实施例中,动作可以包括获得另一个训练数据集并基于其训练ANN模型,以便增强ANN的性能测量。在一些示例性实施例中,用另一个训练数据集训练ANN可以改进预测模型的准确性。在一些示例性实施例中,可能期望确保另一个训练数据集包括相应数据切片中的训练数据集,以便确保预测模型有机会关于数据切片改进其预测能力。要注意的是,如果这种训练没有改进性能测量,那么这可以用作该模型不适合处理数据切片中的实例的指示。这可能是由于ANN的体系架构、由于作为ANN的模型的性质或由于任何其它原因而引起的。
在一些示例性实施例中,动作可以包括向用户通知ANN性能测量低于阈值。可以通过发送电子邮件、通过提供弹出消息、发送文本消息等来发出通知。
另一个技术解决方案是基于属性向量将数据实例自动映射到数据切片。在一些示例性实施例中,用于定义属性向量中的属性的ANN中的节点的值可以是非离散值。可以诸如基于绝对值、基于相对值(例如,百分位数)等来确定离散值。为了确定实例的数据切片,可以针对实例计算ANN的一部分的值。ANN的一部分可以包括基于其定义属性的节点、其值相对于对其定义属性的节点具有影响力的节点等。
利用所公开的主题的一种技术效果是相对于数据切片验证预测模型,从而与在整个训练集、测试集等上测量预测模型的性能相比,产生更好的验证。
所公开的主题的另一个技术效果是用于基于学习的“隐藏”特征等创建数据切片的白盒方法。在一些示例性实施例中,可以基于可能不具有语义含义的“隐藏”特征来创建数据切片。
所公开的主题的又一个技术效果是一种自动化方法,该方法用于定义数据切片,同时从ANN中提取领域相关的信息,而无需人类领域专家来识别切片。ANN可以自动学习与其预测活动相关的重要特征,并且这些重要特征在无需人类甚至理解它们为何是重要的情况下被使用。由于这些特征的重要性,它们可以用于以有效的方式区分数据切片。
利用所公开的主题的另一个技术效果是通过与多个机器学习模型一起工作来改进数据切片上的机器学习性能,该多个机器学习模型由它们的超参数的值来区分。使用所公开的主题,可以取决于传入的输入数据记录映射到的数据切片,基于其特征值,建议不同的变体用于操作。
所公开的主题可以提供对任何现有技术以及本领域中先前已成为常规或惯例的任何技术的一种或多种技术改进。根据本公开,其它技术问题、解决方案和效果对于本领域普通技术人员而言可以是显而易见的。
现在参考图1A,其示出了根据所公开的主题的一些示例性实施例的方法的流程图。
在步骤100,可以获得ANN。可以利用训练数据来训练ANN。ANN可以是深度神经网络(DNN)、卷积神经网络(CNN)、递归神经网络(RNN)等。ANN可以包括若干层。第一层可以是输入层,并且最后一层可以是输出层。在输入层和输出层之间可以包括附加层。这样的层可以是部分连接层、全连接层、卷积层等。
在步骤110,可以基于ANN确定属性向量。在一些示例性实施例中,可以基于ANN的节点的子集来确定属性向量。节点的子集可以用于定义属性向量中属性的值。例如,诸如节点340a之类的节点可以接收非离散值(例如,在0与1之间)。基于节点的值,可以定义对应属性的离散值。例如,0到1的范围可以被划分为0到0.1、0.1到0.5以及0.5到1的子范围。因此,属性的值可以是A、B、C中的任一个,其中每一个表示不同的范围。可以使用绝对值来定义范围。附加地或替代地,可以使用观察到的值的百分位数来定义范围,诸如可以将25%百分位数、50%百分位数和75%百分位数用作四个范围的边缘。类似地,使用节点340b的值,可以计算第二属性的值。
在一些示例性实施例中,节点的子集可以是出现在单个层中的节点。例如,可以利用图3中所示的层340的全部或一些节点。所利用的层可以是全连接层。可以基于先前层的每个节点的值来计算全连接层的每个节点。全连接层可以是节点的层,其中每个节点都连接到先前层的所有节点。作为示例,并且参考图3中所示的ANN 300,层340和350是全连接层。例如,节点340a连接到先前层(层330)的每个节点,类似于层340的每个其它节点。作为另一个示例,节点350a以及层350的每个其它节点连接到先前层(层340)的每个节点。
在一些示例性实施例中,ANN可以是CNN。CNN可以是包括一个或多个部分连接层,后面跟着一个或多个全连接层的ANN。在CNN中,可以基于全连接层的值来定义输出层。ANN300可以图示CNN的示例。ANN 300包括输入层310,后面跟着若干个部分连接层(层320-330),再后面跟着若干个全连接层(层340、350)以及基于全连接层(层350)的值确定的输出层390。在一些示例性实施例中,层330可以是卷积层,其中先前层(层320)的每个子部分被馈送到相应的节点(或多个节点)中。在一些示例性实施例中,CNN的特征可以在于使用卷积层来确定局部属性并且使用随后的全连接层基于局部属性来执行高级推理。
在一些示例性实施例中,节点的子集可以包括CNN中的第一全连接层(例如,层340)的节点。附加地或替代地,节点的子集可以包括输出层之前的最后一层(例如,层350)的节点。
附加地或替代地,节点的子集可以包括其它内部层(诸如层320-350)中的节点。例如,子集可以包括层340的节点340a和层350的节点350a。
在一些示例性实施例中,子集中的节点的数量可以相对较高。为了减少属性的数量,可以执行维度降维(步骤115)。降维可以创建变量集合,其值是基于节点的子集的值定义的,但是具有较小的尺寸。在一些示例性实施例中,可以通过应用主成分分析(PCA)、通过应用自动编码器等来执行降维。
在步骤120,可以基于属性向量来确定多个数据切片。每个数据切片可以由属性向量中的一个或多个属性的值集合来定义。每个数据切片可以对应于尺寸t的属性的特定值组合,并且可以包括映射到该特定值组合的所有实例。在一些示例性实施例中,尺寸t可以诸如由用户提供、被自动确定为限制数据切片的数量(例如,数据切片的数量可以随着t的增加而增加)等。给定某个实例,可以将ANN应用于该实例(或实例的一部分,该实例的一部分至少包括节点的子集中的所有节点和潜在地影响其值的所有节点),以确定节点的子集的值。基于节点的子集的值,可以确定属性向量的估值,并将其用于识别实例所映射到的数据切片。
在步骤130,可以获得测试数据。测试数据可以包括数据项。作为示例,数据项可以是视频格式、音频格式、图像格式、文本格式等。在一些示例性实施例中,可以对数据进行标记。附加地或替代地,数据可以是未标记的。
在步骤140,对于每个数据切片,可以计算性能测量。性能测量可以是F1-分数、准确性等。性能测量可以指示当提供预测或分析数据切片内的实例时,ANN工作状况如何。ANN可以相对于不同的数据切片在工作上有很大不同,诸如在一个切片中表现良好并提供质量预测,而在另一个数据切片中表现较差。
附加地或替代地,由于稀疏信息不能用于提取统计上有效的声明,因此在测试数据中映射到数据切片的实例的数量低于阈值的情况下,可以相应地设置性能测量。例如,在分配给数据切片的实例少于100个的情况下,虽然F1-分数可能相对高,但性能测量可以被设置为低F1-分数。附加地或替代地,性能测量可以被设置无效值,其指示测试数据中小尺寸的数据切片。
基于性能测量的结果,可以执行相应的动作。在一些示例性实施例中,在数据切片的性能测量低于预定阈值的情况下,或者在性能测量指示实例的小集合的情况下,可以获得附加的数据集(步骤150)。在步骤155,可以使用附加数据集来重新训练ANN,以便相对于数据切片改进其性能。之后,可以重新评估ANN相对于数据切片的性能测量。在一些示例性实施例中,附加数据集可以是包括映射到数据切片的实例的数据集。可以检查每个潜在实例,以确定其是否被映射到数据切片并且要被添加到附加数据集。附加地或替代地,在数据切片的尺寸低于阈值的情况下,附加数据集可以包括数据切片中的实例,并且其尺寸可以至少等于阈值减去如先前所确定的数据切片的尺寸。例如,如果阈值为1000个实例,并且先前在测试数据中只有900个实例映射到数据切片,那么附加数据集的尺寸可以是100。可以将附加数据集添加到测试数据以允许分析数据切片和计算性能测量(步骤140)。
注意的是,在重新训练ANN时,可以修改用作属性向量的基础的节点。可以保留和使用ANN的旧版本。在一些情况下,不影响属性向量的值的每个节点可以被截断并从ANN的旧版本中移除,以改进性能和避免不必要的计算。附加地或替代地,可以重新执行步骤110-120,并且可以确定和利用新的数据切片集合。可以在不保留关于先前确定的数据切片的任何信息的情况下计算和使用所有新数据切片的性能测量。
附加地或替代地,代替相对于表现欠佳的数据切片来重新训练和改进ANN,可以选择第二预测模型来用于该数据切片(步骤160)。可以为具有低于阈值的性能测量的数据切片选择第二预测模型。附加地或替代地,仅当第二预测模型在数据切片中的性能测量优于ANN的性能测量时,才可以为该数据切片选择该不同预测模型。注意的是,第二预测模型可以是包括非ANN模型的任何类型,诸如随机森林分类器、支持机器向量(SMV)等。
作为示例,可以训练模型以便识别图片中的猫。当将模型应用于相对深色背景的图像时,其性能测量可能低于阈值。第二预测模型可以是可用的,该第二预测模型相对于此类图像表现得比所述模型更好。第二预测模型可以是先验可用的、可以诸如使用不同的方法或不同的ANN体系架构来定义,并经过回顾训练等。可以检查要分类的图像以确定它是否是相关的数据切片(例如,深色背景),并且如果是,那么可以利用第二模型对图像进行分类。否则,可以利用原始模型对图像进行分类。注意的是,在以上示例中,数据切片是使用语义上一致的含义—深色背景—定义的。但是,数据切片可以基于在ANN的节点内编码的并且不一定具有任何人类可理解的含义的图像的性质来定义。
附加地或替代地,在步骤170,可以将输出提供给用户。在一些示例性实施例中,输出可以向用户指示ANN相对于特定数据切片表现不佳。相应地,用户可以尝试减轻这种情况。在一些示例性实施例中,输出可以提供数据切片中的实例的样本,从而允许用户尝试理解数据切片的语义含义。附加地或替代地,相关特征的可视化,例如,帧中有助于实例被映射到数据切片的事实的像素可以被提供给用户。
现在参考图1B,其示出了根据所公开的主题的一些示例性实施例的方法的流程图。
在步骤140,可以相对于多个模型为每个数据切片计算性能测量。例如,可能有ANN、另一个ANN和随机森林模型。可以计算每个实例上每个模型的性能测量。注意的是,可以仅基于模型之一(例如,ANN)的节点、基于其一部分的组合等来确定数据切片。
在步骤180,基于计算出的性能测量,可以确定每个数据切片的最佳性能模型。
一旦获得用于预测的实例(182),就可以识别该实例的相关数据切片(184),并且可以选择(186)诸如在步骤180中所确定的与该数据切片对应的模型。在步骤188,可以将所选择的模型应用于实例以进行分类或以其它方式提供与其相关的预测。该预测可以在步骤190被输出。在一些情况下,预测可以与所选择的模型的标识一起被输出。
附加地或替代地,所有模型都可以应用于实例。可以基于每个模型的置信度测量和数据切片中的性能测量来确定输出的预测。作为示例,考虑对出现在图像中的人的年龄的预测。如果有三个准确性为90%、80%和80%的模型,并提供了年龄为20、50、25岁的预测,那么输出的年龄可以是预测的加权平均值,其中权重基于模型在相关数据切片中的准确性。注意的是,在不同的数据切片中,可能有不同的权重。
现在参考图2,其示出了根据所公开的主题的一些示例性实施例的装置的框图。
在一些示例性实施例中,装置200可以包括一个或多个处理器202。处理器202可以是中央处理单元(CPU)、微处理器、电子电路、集成电路(IC)等。处理器202可以用于执行装置200或其任何子组件所需的计算。
在所公开的主题的一些示例性实施例中,装置200可以包括输入/输出(I/O)模块205。I/O模块205可以用于向用户提供输出和从用户接收输入,诸如,例如,向用户提供关于ANN在数据切片上的性能的输出。在一些示例性实施例中,I/O模块205可以被配置为获得ANN、第二预测模型、数据集等。
在一些示例性实施例中,装置200可以包括存储器单元207。存储器单元207可以是硬盘驱动器、闪存盘、随机存取存储器(RAM)、存储器芯片等。在一些示例性实施例中,存储器单元207可以保留可操作以使处理器202执行与装置200的任何子组件相关联的动作的程序代码。在一些示例性实施例中,存储器单元207可以存储数据集、测量性能结果等。
存储器207可以包括一个或多个如下详细描述的组件,其被实现为可执行程序、库、静态库、函数或任何其它可执行组件。
在一些示例性实施例中,ANN模型210可以被配置为预测数据实例的标签。ANN模型210可以包括多个层。每一层可以包括节点集合。在一些示例性实施例中,节点可以彼此连接。附加地或替代地,ANN模型210可以包括多个层、多个部分连接层、全连接层等。附加地或替代地,ANN模型210可以是CNN。
在一些示例性实施例中,属性向量确定器220可以被配置为确定属性向量。在一些示例性实施例中,确定属性向量可以基于ANN模型210的至少一层。附加地或替代地,可以基于全连接层、基于全连接层的组合、基于全连接层中的第一层等来确定属性向量。在一些示例性实施例中,属性向量确定器220可以获得将用于定义和计算属性向量中属性的值的节点的子集。在一些示例性实施例中,属性向量确定器220可以对节点的子集执行降维。可以通过将PCA应用于节点的子集、通过将节点提供给自动编码器等来执行降维。
在一些示例性实施例中,数据切片确定器230可以被配置为确定数据切片。数据切片可以定义基于属性向量中至少一些属性的值的数据实例的子集。在一些示例性实施例中,每个数据切片可以与属性向量或其一部分的不同估值相关联。在一些情况下,可以使用属性的n向(n-way)交互来定义数据切片。在一些示例性实施例中,数据切片可以彼此排斥(例如,每个实例可以与单个数据切片相关联)。附加地或替代地,数据切片之间可能存在重叠,并且单个实例可以被映射到若干个不同的数据切片。
在一些示例性实施例中,性能计算器240可以被配置为计算预测模型(诸如ANN模型210)的性能。在一些示例性实施例中,性能计算器240可以相对于数据切片计算模型的性能。性能测量可以是例如F1-分数、准确性等。在一个性能测量低于阈值的情况下,该模型可以被认为对于相应的数据切片无效。附加地或替代地,在被映射到数据切片的实例的数量低于阈值的情况下,可以不计算性能测量,而是可以将其设置为低性能测量、最小性能测量、指示小尺寸数据切片的无效值(例如,在仅提供正值的测量中,可以利用指示数据切片的尺寸的负值)等。
在一些示例性实施例中,完全没有实例匹配的数据切片可以被认为是无法到达的空数据切片。如果数据切片组合了指示受试者的性别是男性且受试者怀孕的节点的值,那么可能是这种情况。虽然模型可能不是有效的并且实际上没有相对于空数据切片进行检查,但是可以将空数据切片的性能测量设置为高于阈值,或者以其它方式,所公开的主题可以避免关于空数据切片要求修改。
在一些示例性实施例中,动作执行器250可以被配置为执行动作。可以响应于确定性能测量低于数据切片的阈值来执行动作。动作可以包括获得与数据切片匹配的附加实例,以及用附加实例重新训练ANN模型210。
附加地或替代地,动作执行器250可以被配置为为每个数据切片设置所选择的模型。在一些示例性实施例中,可以为每个数据切片调用性能计算器240以计算ANN模型210和第二模型的性能测量。动作执行器250可以被配置为选择要用于每个数据切片的最佳执行模型。附加地或替代地,动作执行器250可以被配置为设置权重以组合不同模型的预测,其中权重在不同数据切片中可以是不同的并且基于不同数据切片中的模型的性能测量来确定。附加地或替代地,动作执行器250可以被配置为仅在性能测量低于阈值的数据切片中干扰ANN模型210的使用。因此,在ANN模型210充分执行的数据切片中,可以不使用具有更好性能测量的另一个模型。
附加地或替代地,动作执行器250可以被配置为向用户提供输出。
现在参考图3,其示出了根据所公开的主题的一些示例性实施例的示例性ANN的示意图。
ANN 300可以是包括输入层310、层320、330、全连接层340、350和输出层390的预测模式。
当被划分为诸如特征315之类的特征时,输入层310可以是数据实例。
层320可以是部分连接层,因为其中的节点未连接到先前层310中的所有节点。在一些示例性实施例中,可以存在多个部分连接层。在一些示例性实施例中,层320可以是卷积层,并且可以表示数据的局部属性。
如可以认识到的,层330、340、350具有比输入层310和层320少的节点。
层340可以是ANN 300中的第一个全连接层,因为层340中的每个节点都连接到先前层(层330)中的所有节点。
在一些示例性实施例中,可以基于ANN 300来确定属性向量。属性向量可以包括其值由节点340a、节点340b、层340、节点350等定义的属性。
注意的是,提供ANN 300仅用于说明性目的。ANN 300中可能还有附加层。例如,在层340之前可能有附加的部分连接层,并且在层340之后可能有附加的全连接层。也可以在其它地方引入附加层。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是--但不限于--电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本文所使用的术语仅是为了描述特定实施例的目的,并不旨在限制本发明。如本文所使用的,单数形式的“一”、“一个”和“该”也旨在包括复数形式,除非上下文另外明确指出。还将理解的是,术语“包括”在本说明书中使用时,指定存在所述特征、整数、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整数、步骤、操作、元素、组件和/或其组。
所附权利要求书中的所有单元或步骤加上功能元件的相应结构、材料、作用和等同物旨在包括用于与具体要求保护的其它要求保护的元件组合地执行功能的任何结构、材料或作用。已经出于说明和描述的目的给出了本发明的描述,但是其并不旨在是穷举的或将本发明限于所公开的形式。在不脱离本发明的范围和精神的情况下,许多修改和变型对于本领域普通技术人员将是显而易见的。选择和描述实施例是为了最好地解释本发明的原理和实际应用,并使本领域的其它普通技术人员能够理解本发明的各种实施例,这些实施例具有适于预期的特定用途的各种修改。

Claims (15)

1.一种方法,包括:
获得人工神经网络(ANN),其中所述ANN被配置为提供对数据实例的预测,其中所述ANN包括在节点之间具有互连的节点集合;
基于所述ANN的所述节点的子集来确定属性向量;
基于所述属性向量,确定多个数据切片;
获得包括测试数据实例的测试数据集;
对于每个数据切片,计算所述数据切片上的所述ANN的性能测量,其中所述计算基于所述ANN在映射到所述数据切片的每个测试数据实例上的应用;以及
基于所述数据切片的性能测量的至少一部分来执行动作。
2.如权利要求1所述的方法,其中数据切片的性能测量指示映射到所述数据切片的测试数据实例的数量是否低于阈值。
3.如权利要求1所述的方法,其中所述ANN包括多个层,其中每层包括节点集合,其中所述属性向量基于所述ANN的层。
4.如权利要求3所述的方法,其中所述层是全连接层。
5.如权利要求3所述的方法,其中所述属性向量基于所述层和基于所述ANN的第二层。
6.如权利要求1所述的方法,其中所述ANN是卷积神经网络(CNN),其中所述CNN包括部分连接层的集合,后面跟着全连接层的集合,其中所述属性向量是基于所述全连接层的集合中的全连接层确定的。
7.如权利要求6所述的方法,其中所述全连接层是连接到所述部分连接层的集合中的部分连接层的层。
8.如权利要求1所述的方法,其中所述确定属性向量包括:
获得所述节点的所述子集;以及
执行降维以确定属性向量。
9.如权利要求1所述的方法,其中所述执行动作包括:
响应于确定数据切片的性能测量低于阈值,获得附加数据集;
使用所述附加数据集重新训练所述ANN。
10.如权利要求1所述的方法,其中所述执行动作包括:
为数据切片选择所选择的模型,其中在所述ANN和第二预测模型之间执行所述选择,其中所述选择基于所述ANN对数据切片的性能测量与第二预测模型对数据切片的性能测量之间的比较;
获得用于预测的实例;
确定所述实例被映射到数据切片,其中所述确定基于所述实例的属性向量的估值;以及
应用所选择的模型以提供对所述实例的预测。
11.如权利要求1所述的方法,其中所述执行动作包括向用户提供输出。
12.如权利要求1所述的方法,其中确定所述属性向量的估值包括基于所述ANN的节点的所述子集中的节点的非离散值来确定属性的离散值。
13.一种计算机程序产品,包括保存程序指令的非暂态计算机可读存储介质,所述程序指令在被处理器读取时使所述处理器执行权利要求1-12中的任一项所述的方法。
14.一种具有处理器和耦合的存储器的计算机化装置,所述处理器适于执行权利要求1-12中的任一项所述的方法的步骤。
15.一种计算机系统,包括用于执行权利要求1-12中的任一项所述的方法的步骤的模块。
CN202010473418.XA 2019-07-03 2020-05-29 基于人工神经网络的自动化数据切片 Pending CN112183714A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/502,073 2019-07-03
US16/502,073 US11514311B2 (en) 2019-07-03 2019-07-03 Automated data slicing based on an artificial neural network

Publications (1)

Publication Number Publication Date
CN112183714A true CN112183714A (zh) 2021-01-05

Family

ID=73919548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010473418.XA Pending CN112183714A (zh) 2019-07-03 2020-05-29 基于人工神经网络的自动化数据切片

Country Status (2)

Country Link
US (1) US11514311B2 (zh)
CN (1) CN112183714A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11544406B2 (en) * 2020-02-07 2023-01-03 Microsoft Technology Licensing, Llc Privacy-preserving data platform

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086640B2 (en) 2008-05-30 2011-12-27 Caterpillar Inc. System and method for improving data coverage in modeling systems
US10452992B2 (en) 2014-06-30 2019-10-22 Amazon Technologies, Inc. Interactive interfaces for machine learning model evaluations
US10467220B2 (en) 2015-02-19 2019-11-05 Medidata Solutions, Inc. System and method for generating an effective test data set for testing big data applications
US10290040B1 (en) * 2015-09-16 2019-05-14 Amazon Technologies, Inc. Discovering cross-category latent features
WO2018236761A1 (en) 2017-06-19 2018-12-27 Vettd, Inc. SYSTEMS AND METHODS FOR DETERMINING AND USING SEMANTIC CONNECTION BETWEEN MULTIPLE SOURCES IN NATURAL LANGUAGE TO DETERMINE FORCES AND WEAKNESSES
US11003982B2 (en) * 2017-06-27 2021-05-11 D5Ai Llc Aligned training of deep networks
US10679129B2 (en) * 2017-09-28 2020-06-09 D5Ai Llc Stochastic categorical autoencoder network
US10410111B2 (en) * 2017-10-25 2019-09-10 SparkCognition, Inc. Automated evaluation of neural networks using trained classifier
US10410121B2 (en) * 2017-10-25 2019-09-10 SparkCognition, Inc. Adjusting automated neural network generation based on evaluation of candidate neural networks
US10210860B1 (en) * 2018-07-27 2019-02-19 Deepgram, Inc. Augmented generalized deep learning with special vocabulary

Also Published As

Publication number Publication date
US20210004671A1 (en) 2021-01-07
US11514311B2 (en) 2022-11-29

Similar Documents

Publication Publication Date Title
US11409992B2 (en) Data slicing for machine learning performance testing and improvement
CN109189767B (zh) 数据处理方法、装置、电子设备及存储介质
US20230004604A1 (en) Ai-augmented auditing platform including techniques for automated document processing
CN112860841B (zh) 一种文本情感分析方法、装置、设备及存储介质
US11914963B2 (en) Systems and methods for determining and using semantic relatedness to classify segments of text
CN110377733B (zh) 一种基于文本的情绪识别方法、终端设备及介质
JP2017224027A (ja) データのラベリングモデルに係る機械学習方法、コンピュータおよびプログラム
US20180260735A1 (en) Training a hidden markov model
US20170185913A1 (en) System and method for comparing training data with test data
CN111160959B (zh) 一种用户点击转化预估方法及装置
US20230045330A1 (en) Multi-term query subsumption for document classification
JP2017527013A (ja) サービスとしての適応特徴化
CN114144770A (zh) 用于生成用于模型重新训练的数据集的系统和方法
US11003859B2 (en) Machine-learning automated structural quality analysis
CN110059743B (zh) 确定预测的可靠性度量的方法、设备和存储介质
CN112183714A (zh) 基于人工神经网络的自动化数据切片
US20170161389A1 (en) Determining an object referenced within informal online communications
JP6026036B1 (ja) データ分析システム、その制御方法、プログラム、及び、記録媒体
US20210342642A1 (en) Machine learning training dataset optimization
TW202324202A (zh) 從基於注意力之模型提取解釋
CN112561569B (zh) 基于双模型的到店预测方法、系统、电子设备及存储介质
US11727109B2 (en) Identifying adversarial attacks with advanced subset scanning
CN114238968A (zh) 应用程序检测方法及装置、存储介质及电子设备
JP2023520313A (ja) 不確定区間を有する性能予測の生成
Manivannan Semi-supervised imbalanced classification of wafer bin map defects using a Dual-Head CNN

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