CN111008688B - 网络训练期间使用环路内数据增加的神经网络 - Google Patents
网络训练期间使用环路内数据增加的神经网络 Download PDFInfo
- Publication number
- CN111008688B CN111008688B CN201910904701.0A CN201910904701A CN111008688B CN 111008688 B CN111008688 B CN 111008688B CN 201910904701 A CN201910904701 A CN 201910904701A CN 111008688 B CN111008688 B CN 111008688B
- Authority
- CN
- China
- Prior art keywords
- training
- neural network
- class
- data
- images
- 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.)
- Active
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/044—Recurrent networks, e.g. Hopfield networks
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/772—Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本公开的实施例涉及网络训练期间使用环路内数据增加的神经网络。提供了用于利用增强数据来训练神经网络的方法和系统。获得包括多个类的数据集以用于训练神经网络。在训练开始之前,可以通过对数据集中的数据执行仿射变换来增强数据集,其中增强量由数据增强变量确定。利用增强数据集来训练神经网络。确定针对每个类的类精度差和训练损失。基于针对每个类的类精度和总损失来更新数据增强变量。通过根据经更新的数据增强变量对数据集中的数据执行仿射变换来增强数据集,并且利用经增强的数据集来训练神经网络。
Description
技术领域
本发明实施例涉及机器学习系统,并且具体地涉及在训练期间执行动态数据增强来改进神经网络的性能。
背景技术
深度神经网络通常需要大量训练数据来满足指定的性能标准。然而,收集这样的训练数据经常是耗时的并且可能是昂贵的。没有足够的训练数据或使用偏差的训练数据集可能导致所训练的神经网络也具有偏差,并且其中训练数据的分类易于过度拟合。因此,当应用于其他数据集时,所训练的神经网络可能不满足期望的性能标准。
发明内容
根据本发明的实施例,提供了用于利用增强数据来训练神经网络的方法、系统和计算机可读介质。获得包括多个类的数据集以用于训练神经网络。在训练开始之前,可以通过对数据集中的数据执行仿射变换来增强数据集,其中所生成的增强数据的量由数据增强变量确定。利用增强数据集来训练神经网络。确定针对每个类的类精度差和总损失(基于训练)。基于针对每个类的类精度和总损失来更新数据增强变量。通过根据经更新的数据增加变量对数据集中的数据执行仿射变换来增强数据集,并且利用经增强的数据集来训练神经网络。
应理解,发明内容并非旨在标识本公开的实施例的关键或必要特征,也不旨在用于限制本公开的范围。通过以下描述,本公开的其他特征将变得易于理解。
附图说明
通常,各个图中的相同附图标记用于表示相同的组件。
图1是根据本公开的实施例的用于利用动态增强数据集来训练神经网络的示例计算环境的框图。
图2是根据本公开的实施例的用于利用动态增强数据集来训练神经网络的示例操作的流程图。
图3是图2的方面的、并且更具体地是根据本公开的实施例的将增强变量的幅度更新的更详细的流程图。
图4是根据本公开的实施例的用于在神经网络的训练期间生成增强数据集的示例操作的流程图。
具体实施方式
当对广义数据进行操作时,本发明实施例可以改进在有限或有偏差量的数据上训练的神经网络的性能。为了实现该能力,在训练神经网络时,将数据增强步骤并入到训练环路中。在一些方面,在训练开始之前和在训练环路期间两者执行数据增强,以用于训练神经网络。
用于本发明实施例的示例环境在图1中被图示。具体地,环境包括一个或多个服务器系统10、一个或多个客户端或终端用户系统20、数据库30和网络45。服务器系统10和客户端系统20可以彼此远离并且可以通过网络45进行通信。可以由任何数目的任何合适的通信介质(诸如,广域网(WAN)、局域网(LAN)、互联网、内联网等)来实现网络。备选地,服务器系统10和客户端系统20可以是彼此本地的,并且可以经由任何适当的本地通信介质(诸如,局域网(LAN)、硬连线、无线链路、内联网等)进行通信。
客户端系统20使得用户能够将数据集提交给服务器系统10,以用于训练神经网络并且用于使用经训练的神经网络来分析数据。如本文所描述的,服务器系统10包括机器学习系统15,机器学习系统15包括数据引入(intake)模块105、数据增强模块110、批处理和混洗(shuffling)模块115、神经网络117、神经网络训练模块120和性能评估模块125。数据库30可以存储用于分析的各种信息,诸如,数据集32、经增强的数据集34、机器学习系统36的输出等。数据库系统可以由任何常规或其他数据库或存储单元来实现、可以是本地于或者远离服务器系统10和客户端系统20、并且可以经由任何适当的通信介质(诸如,局域网(LAN)、广域网(WAN)、互联网、硬连线、无线链路、内联网等)进行通信。客户端系统可以呈现图形用户界面(诸如,GUI等)或其他界面(诸如,命令行提示、菜单屏幕等),以从用户请求关于期望数据集和分析的信息,并且可以提供包括数据集的分析结果(诸如,将图像分类为不健全或非不健全状态、文本分析或其他信息等)的报告。
服务器系统10和客户端系统20可以由任何常规的或其他计算机系统来实现,计算机系统优选地配备有显示器或监视器、基座、可选的输入设备(诸如,键盘、鼠标或其他输入设备)、以及任何商业可用的和定制的软件(诸如,服务器/通信软件、机器学习系统软件、浏览器/接口软件等)。通过示例,基座包括至少一个处理器16、22、一个或多个存储器17、24和/或内部或者外部网络接口或通信设备18、26(诸如,调制解调器、网卡)和用户界面19、28等。可选的输入设备可以包括键盘、鼠标或其他输入设备。
备选地,一个或多个客户端系统20可以作为独立设备来执行数据集的增强和神经网络的训练。在该操作模式中,客户端系统存储或访问数据(诸如,数据集32)并生成经增强的数据集34以及机器学习系统36的输出。图形用户或其他界面28(诸如,GUI、命令行提示、菜单屏幕等)从对应的用户请求与期望分析有关的信息,并且可以提供包括分析结果(诸如,机器学习系统36的输出、用于确定神经网络性能的统计等)的报告。
机器学习模块15可以包括一个或多个模块或单元来执行本文所描述的本发明实施例的各种功能。各种模块(诸如,数据集引入模块105、数据增强模块110、批处理和混洗模块115、神经网络117、神经网络训练模块120和性能评估模块125等)可以通过任何数量的软件和/或硬件模块或单元的任何组合来实现,并且可以驻留在服务器的存储器17内以供处理器16执行。
数据集吸入模块105可以读取待增强的、并用于训练神经网络的数据集。数据集可以包括一个或多个类,并且可以是任何合适的格式(包括图像、csv、文本、excel、关系数据库格式等)。应当理解,不是合适格式的数据集可以进行预处理,以被置为可兼容以供数据集引入模块105摄取(ingestion)的格式。
数据增强模块110可以对由数据集引入模块105摄取的数据集执行各种仿射或其他操作。根据本发明的各方面,由数据集引入模块摄取的数据集可能很小或有偏差,并且因此通常不代表经训练的神经网络将对其操作的数据。使用已在有偏差的数据集上进行训练的神经网络可能导致未被优化的神经网络对广义数据进行操作。通过在神经网络训练之前和期间创建经增强的数据集,可以改进神经网络对广义数据的性能。
仿射操作可以包括但不限于旋转、平移、调整大小、模糊等。在图像数据集中,可以随机设置旋转度和放大/缩小因子。通常,图像可以被旋转约10-20度和/或平移达到约10%,但是可以使用其他范围。在一些方面,这些参数可以由用户设置或修改。
数据增强模块110还可以控制在环路内训练期间控制增强幅度的参数。关于图2和图3更详细地描述了这些过程。例如,可以根据本文提供的类精度的平衡来更新增强参数(Lc)的幅度。
批处理和混洗模块115可以例如通过跨越一个或多个数据集重新排列数据的顺序来将数据集混洗。对于大文件,可以将数据划分或批处理为被提供给机器学习系统的较小文件。例如,可以对某个回合(epoch)或整个数据集进行混洗并将其划分为多个较小的文件,每个较小的文件包含用于训练神经网络的数据集的一部分。
神经网络训练模块120使用经增强的数据集来训练神经网络117。神经网络117可以包括输入层中的任何数目的合适输入节点、隐藏层中的任何数目的隐藏节点或中间节点、以及输出层的一个或多个输出节点。神经网络117可以执行任何合适的功能,包括模式识别、分类、变量之间的关联的标识等。神经网络可以包括但不限于前馈或反馈神经网络、径向基函数神经网络、自组织神经网络、递归神经网络(RNN)、卷积神经网络。
性能评估模块125可以例如使用接收器操作员曲线或其他合适的特性来对经训练的神经网络的性能进行评估。如果尚未满足合适的性能特性,则神经网络可以经历附加的训练。
图2中提供了示例操作的流程图。由于利用更大、更广义的数据集来进行训练,因此经增强的数据集产生了对神经网络的性能的改进。可以在针对神经网络的初始训练环路之前以及在每次通过训练环路期间生成经增强的数据集。因此,不仅可以在训练环路之前,而且可以在训练环路期间执行数据增强和数据混洗。
在操作205处,将回合号(n)设置为零。除非另有说明,否则回合可以指代相同训练数据集被用来训练神经网络的次数。在操作210处,将增强模式设置为假,使得在学习的初始阶段期间不更新增强参数的幅度(Lc)。在操作215处,将增强参数的幅度(Lc)设置为指示针对类(c)的初始增强幅度(Lc,0)的值。
在操作220处,将类(c)初始化为零值。在一些方面,类可以指代具有特定属性的类别,其中该属性可以被用于分类。在操作225处,系统可以读入类c的训练数据集的数目(Mc)。在操作230和235处,表示类c的数据集索引(m)和经增强的样本索引(1)的变量都被设置为零。
在操作240-250处,系统进入环路,其中对数据集执行仿射变换或其他变换。在操作240处,系统可以以仿射方式随机变换第m个数据集,使得维持数据集的特征。例如,仿射变换可以保留某些特征,诸如,点、直线和平面、以及平行线集合和直线上的点之间的距离比。然而,可能无法保留其他特征,诸如,线之间的角度或点之间的距离。仿射变换的示例可以包括但不限于平移、缩放、反射、旋转、剪切映射、放大、缩小、相似变换或其任何组合。在操作245处,经增强的样本索引(I)递增。在操作250处,如果经增强的样本索引(I)小于针对类c的增强幅度(Lc),则重复操作240和245。当经增强的样本索引(I)大于或等于针对类c的增强幅度(Lc)时,系统前进到操作255,其中类c的数据集索引(m)递增。在操作260处,当类c的数据集索引(m)小于类c中的数据集的数目(Mc)时,系统返回到操作235,在不同的数据集上重复这些操作。当类c的数据集索引(m)大于或等于类c中的数据集的数目(Mc)时,系统进行到操作265来将类索引(c)递增。在操作270处,系统确定当前类索引(c)是否小于类的总数。如果否,则系统返回到操作225来将不同的类进行变换。因此,操作220-270可以循环通过类的数据集,以对训练数据集进行增强。可以针对每个类重复这些操作。
一旦将所有类进行了变换,系统就前进到操作275,其中可以对数据集进行混洗。可以执行混洗作为数据增强的一部分。针对每个回合,可以从原始的图像和/或经变换的图像生成N批次训练数据的集合。针对每个回合,混洗允许N批次的集合的每个批次不同。在操作280处,将训练数据划分为N批次。在一些情况下,N的值可以由用户确定。在操作285处,批次用于训练系统。在操作290处,如参考图3进一步描述的,更新增强参数的幅度(Lc)。在操作295处,递增回合号(n)。在操作300处,如果回合号小于最大回合号,则系统返回到操作220,以重复针对训练数据集的操作。否则,训练循环可以退出。
可以对初始增强幅度(Lc,0)进行设置来平衡针对每个类的训练样本的数目(参见各示例)。针对特定类,如果与回合训练之后的另一类相比,类精度大于类精度差的阈值(dacc th),则可以将增强幅度更新,使得在下一训练环路中,针对更精确类的训练样本的数目减少和/或不太精确的类中的训练样本的数目增加。在类精度达到平衡后,增强幅度的更新停止并且经训练的神经网络得以保留。当类精度之间的差低于类精度差的阈值时(参见图3),类精度被认为是平衡的。
图3示出了用于更新增强幅度的示例操作。在一些方面,增强幅度可以确定针对类的增强数据的大小。
在操作305处,可以确定基于训练结果的总损失。在操作310处,系统确定总损失是否小于损失阈值。如果总损失小于损失阈值,则系统进行到操作315,其中用于启用增强模式的标志被设置为真,从而允许将增强参数的幅度进行更新。如果总损失不小于损失阈值,则系统跳过操作315-340,并返回到操作295。可以基于由用户配置的损失函数来计算总损失。例如,如果用户决定使用交叉熵损失函数,则可以将交叉熵损失函数计算为针对整个训练数据的数据集的交叉熵损失的总和。
在操作320处,针对每个类来对类精度进行评估。类精度指代针对特定类的所有样本的准确预测比率。在操作325处,如果类精度差(dacc)小于类精度差的阈值(dacc th),则系统进行到操作330。(备选地,可以确定是否max(LcMc)/min(LcMc)>=Rth,其中Rth指代经增强的样本的数目之间的比率阈值。)针对特定类,与回合训练之后的另一类相比,如果类精度大于类精度差阈值(dacc th),则可以将增强幅度更新,使得在操作335、340处的下一训练环路中减少针对更精确类的训练样本的数目和/或增加不太精确的类中的训练样本的数目。例如,如果类A的精度为0.95,而类B的精度为0.1,则可以将针对类B的增强幅度(LB)更新(例如,LB=LB+1),使得与类A的训练样本数目LAMA相比,类B的训练样本的数目LBMB在下一增加训练环路中增加。如果存在三个或更多个类(例如,A、B、C),则可以针对所有类集合(例如,A和B之间、A和C之间、B和C之间)来计算差,并且这些差中的每一个均要求低于阈值。例如,如果类A的精度为0.95、类B的精度为0.1且类C的精度为0.9,则尽管A和B之间、B和C之间的差高于阈值,但是仅将针对类B的增强幅度更新一次。在其他情况下,如果类A的精度为0.95、类B的精度为0.1且类C的精度为0.1,则将针对类B和类C的增强幅度进行更新。因此,可以单独执行更新。
如果dacc小于类精度差的阈值(dacc th),则系统进行到操作330,其中将增强模式设置为假。如果dacc不小于类精度差,则操作跳过操作330。在操作335处,如果确定增强模式为真,则系统进行到操作340,其中根据类精度的平衡将增强幅度(Lc)更新。否则,如果确定增强模式为假,则系统跳过操作340并进行到操作295。
当类精度差低于类精度差的阈值时或者当(增强后具有最大样本数的类)/(增强后具有最小样本数的类)的比率等于或大于经增强的样本的数目之间的比率阈值时,增强幅度的更新结束。满足此条件时,增强模式标志被设置为假。
整体地并且关于图3,针对每个类的增强幅度可以不同。当总损失低于损失阈值时,可以根据训练结束时每个回合的类精度的平衡来自适应地更新幅度。增强幅度可以继续更新,直到类精度之间的差变得低于类精度差的阈值为止。
图4示出了利用环路内数据增强系统来训练神经网络,以用于动态地生成经增强的数据的示例高级操作。在操作410处,获得包括多个类的数据集,以用于训练神经网络。在操作420处,在训练开始之前,可以通过对数据集中的数据执行仿射变换来增强数据集,其中所生成的经增强的数据的量由数据增强变量确定。在操作430处,利用经增强的数据集来训练神经网络。在操作435处,确定针对每个类的总损失和精度差。在操作440处,基于针对每个类的总损失和类精度,将数据增强变量更新,根据经更新的数据增强变量,通过对数据集中的数据执行仿射变换来增强数据集,并且利用经增强的数据集来训练神经网络。
本技术提供优于其他常规技术的多个优点。例如,通过在神经网络训练之前和期间创建经增强的数据集,可以改进神经网络对广义数据的性能。现有技术在训练神经网络之前将训练数据增强。相比之下,本技术在神经网络的(环路内)训练之前和期间均增强。虽然使用本技术的收敛速度可能较慢,但是本技术提供了抑制过度拟合以及改进对广义数据的性能的附加益处。
应当理解,上面描述的和附图中图示的实施例仅表示实现用于改进具有有限训练数据的机器学习系统的性能的实施例的许多方式中的一些。
本发明实施例的环境可以包括以任何期望的方式布置的任何数目的计算机或其他处理系统(例如,客户端或终端用户系统、服务器系统等)以及数据库或其他存储库,其中本发明的实施例可以被应用于任何期望类型的计算环境(例如,云计算、客户端-服务器、网络计算、大型机、独立系统等)。本发明实施例所采用的计算机或其他处理系统可以由任何数量的任何个人或其他类型的计算机或处理系统(例如,台式电脑、膝上型电脑、PDA、移动设备等)来实现,并且可以包括任何商业可用的操作系统以及商用和定制软件的任何组合(例如,浏览器软件、通信软件、服务器软件、简档生成模块、简档比较模块等)。这些系统可以包括任何类型的监视器以及用以录入和/或查看信息的输入设备(例如,键盘、鼠标、语音识别等)。
应理解,本发明的实施例的软件(例如,机器学习系统15,包括数据集引入模块105、数据增强模块110、批处理和混洗模块115、神经网络117、神经网络训练模块120、性能评估模块125等)可以以任何期望的计算机语言来实现,并且可以由计算机领域的普通技术人员基于说明书中包含的功能描述和附图中所图示的流程图来开发。另外,本文对执行各种功能的软件的任何引用通常是指在软件控制下执行那些功能的计算机系统或处理器。备选地,本发明实施例的计算机系统可以由任何类型的硬件和/或其他处理电路来实现。
计算机或其他处理系统的各种功能可以以任何方式分布在任何数目的软件和/或硬件模块或单元、处理或计算机系统和/或电路上,其中计算机或处理系统可以在本地或彼此远离地布置,并经由任何合适的通信介质(例如,LAN、WAN、内联网、互联网、硬连线、调制解调器连接、无线等)进行通信。例如,本发明实施例的功能可以以各种方式分布在各种终端用户/客户端和服务器系统和/或任何其他中间处理设备上。可以以实现本文所描述的功能的任何方式来修改上面描述的以及流程图中图示的软件和/或算法。另外,流程图或说明书中的功能可以以实现期望操作的任何顺序来执行。
本发明实施例的软件(例如,机器学习系统15,包括数据集引入模块105、数据增强模块110、批处理和混洗模块115、神经网络117、神经网络训练模块120、性能评估模块125等)可以在固定或便携式程序产品装置或设备的、用于与由网络或其他通信介质连接的一个或多个独立系统一起使用的非瞬态计算机可用介质(例如,磁性或光学介质、磁光介质、软盘、CD-ROM、DVD、存储器设备等)上获得。
通信网络可以由任何数目、任何类型的通信网络(例如,LAN、WAN、互联网、内联网、VPN等)来实现。本发明实施例的计算机或其他处理系统可以包括任何常规的或其他通信设备,以经由任何常规的或其他协议在网络上进行通信。计算机或其他处理系统可以利用任何类型的连接(例如,有线、无线等)来访问网络。本地通信介质可以由任何合适的通信介质(例如,局域网(LAN)、硬连线、无线链路、内联网等)来实现。
系统可以采用任何数目的任何常规或其他数据库、数据存储装置或存储结构(例如,文件、数据库、数据结构、数据或其他存储库等)来存储信息(例如,机器学习系统15,包括数据集引入模块105、数据增强模块110、批处理和混洗模块115、神经网络117、神经网络训练模块120、性能评估模块125等)。数据库系统可以由任何数目的任何常规的或其他数据库、数据存储装置或存储结构(例如,文件、数据库、数据结构、数据或其他存储库等)来实现,以存储信息(例如,数据集32、经增强的数据集34、机器学习系统36的输出等)。数据库系统可以被包括在服务器和/或客户端系统内或耦合到服务器和/或客户端系统。数据库系统和/或存储结构可以远离计算机或其他处理系统或者在计算机或其他处理系统本地,并且可以存储任何期望的数据(例如,数据集32、经增强的数据集34、机器学习系统36的输出等)。
本发明实施例可以采用任何数目、任何类型的用户界面(例如,图形用户界面(GUI)、命令行、提示等)以用于获得或提供信息(例如,数据集32、经增强的数据集34、机器学习系统36的输出等),其中接口可以包括以任何方式布置的任何信息。接口可以包括设置在任何位置处的任何数目、任何类型的输入或致动机构(例如,按钮、图标、字段、框、链接等),以录入/显示信息并经由任何合适的输入设备(例如,鼠标、键盘等)来启动期望的动作。接口屏幕可以包括用于以任何方式在屏幕之间导航的任何合适的致动器(例如,链接、标签等)。
机器学习系统15的输出可以包括以任何方式布置的任何信息,并且可基于规则或其他标准来进行配置,以向用户提供期望的信息(例如,分类结果、图像分析结果、文本分析等)。
本发明实施例不限于上述特定任务或算法,而是可以被用于任何应用,其中用于训练机器学习模块的数据集的仿射变换或其他变换是有用的。例如,虽然本示例在神经网络的上下文中,但是这些技术可以被用于使用训练数据进行训练的各种不同类型的机器学习系统。训练数据可以包括作为时间序列图像数据的图像、文本、语音和视频。
本文所使用的术语仅用于描述特定实施例的目的,并不旨在限制本发明。如本文所使用的,除非上下文另有明确说明,否则单数形式“一(a)”、“一个(an)”和“该(the)”旨在也包括复数形式。将进一步理解,当在本说明书中使用时,术语“包括(comprise、comprising)”、“包含(include、including)”、“具有(has、have、having)”、“具有(with)”等指定存在所述特征、整数、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组。
以下权利要求中所有部件或步骤加上功能元件的对应结构、材料、动作和等同物旨在包括任何结构、材料或动作,其用于结合具体要求保护的其他元件执行功能。已出于说明和描述的目的呈现了本发明的描述,但是其并不旨在穷举或将本发明限于所公开的形式。在不脱离本发明的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是明显的。选择并描述实施例是为了最好地解释本发明的原理和实际应用,并且使得本领域普通技术人员能够理解具有适于预期特定用途的各种修改的本发明的各种实施例。
已出于说明的目的呈现了本发明的各种实施例的描述,但是本发明的各种实施例的描述并不旨在穷举或限于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是明显的。选择本文使用的术语是为了最好地解释实施例的原理、实际应用或对市场中发现的技术的技术改进,或者使得本领域其他技术人员能够理解本文所公开的实施例。
在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
示例
尽管以下示例是在肺炎的上下文中呈现的,但是它可以被应用于任何病症或疾病,其中放射学或其他图像可以用于诊断患有病症的患者。这些示例参考图2和图3中的流程图。
示例1.用以区分显示正常(不存在肺炎)和异常(存在肺炎)特征的图像的机器智能模型。
在该示例中,对机器智能模型进行训练来区分正常和异常特征,以标识患有肺炎的患者。在涉及疾病的成像和诊断的病例中,从数据集可获得更多正常患者的图像而不是患病患者的图像。因此,本文呈现的技术用于增强疾病数据集,以便改进神经网络的准确性和精确度。
在本例中,获得1000个正常图像和100个显示肺炎的患病图像。针对每个类的增强幅度值(Lc)被设置为使得正常图像的初始值为1且肺炎图像的初始值为10。通常,将初始值设置为使得每个类的样本数目(在这种情况下是正常类和患病类)在增强后是相同的。由于原始正常图像的数目是1000并且原始肺炎图像的数目是100,所以针对肺炎的幅度的初始值被设定为10,使得肺炎样本的数目将是1000。
数据增强环路根据图2的增强过程进行,直到达到增强倍率的停止条件。例如,如图3所示,在进行操作220至285之后,系统进行到操作290。基于操作305和310,计算总损失并将其与损失阈值进行比较。确定针对类的精度低于损失阈值(对于肺炎为0.8)。针对肺炎的增强幅度被更新为11(<-10+1)。
通常,在操作340处,当总损失变得低于损失阈值,并且类精度之间的差高于类精度差的阈值时,具有较低类精度的类的幅度将例如通过递增值1被更新。如果满足任一停止条件,则增强幅度的更新停止。如果针对肺炎的增强倍率达到上限(例如,当样本数达到20时,上限是正常图像的两倍),或者当类精度的精度差低于类精度差的阈值时,增强过程终止。
示例2.确定针对每个类的精度的调和平均数。
在该示例中,提供了1000个正常图像和100个肺炎。与示例1类似,增强倍率初始值对于正常情况被设定为1,并且对于肺炎情况被设定为10。确定总损失低于损失阈值,并且对于肺炎,针对每个类的精度降低0.8。相应地,针对肺炎的增强倍率被更新为11(<-10+1),并且执行更新和训练,直到针对肺炎的增强倍率达到20。
附加地,针对10至20的增强倍率来确定针对每个类的精度的调和平均数,并且在具有最大调和平均数的倍率下执行剩余回合的训练。调和平均数可以表示为:
调和平均数
(accc:类c精度)
当变量(例如,accc)中的至少一个具有接近零的值时,调和平均数具有接近于零的值,而与任何其他元素的值无关。当为最大调和平均数选择增强倍率时,可以在任何类中选择精度高的增强倍率。
示例3.增强试验
获得具有针对肺炎的800个原始训练样本、以及针对细胞侵入的7640个训练样本的数据集。还获得了具有针对肺炎的200个测试样本和针对细胞侵入的200个测试样本的测试数据集。
在数据增强的试验1期间,对于肺炎(8000),增强倍率被设置为10的值,并且对于细胞侵入(7640),增强倍率被设置为1的值。在20个回合之后,确定了损失:0.64->精度:肺炎为0.1、侵入为0.95(具有调和平均数:0.18)。
在数据增加的试验2期间,对于肺炎(16000),增强倍率被设置为20的值,对于侵入(7640),增强倍率被设置为1的值。在20个回合之后,确定了损失:0.58->精度:肺炎为0.82,侵入为0.35(调和平均数:0.49)。
在100个回合之后,肺炎的精度为0.76,侵入的精度为0.84(调和平均数:0.80)。
Claims (11)
1.一种用于利用经增强的图像来训练神经网络的方法,包括:
获得针对多个类的图像集以用于训练神经网络;
在训练开始之前,通过对所述图像集中的所述图像执行仿射变换来增强所述图像集,其中所生成的经增强的图像的量由图像增强变量确定;
利用经增强的所述图像集来训练所述神经网络;
确定针对每个类的总损失和类精度差;
基于针对每个类的所述总损失和类精度,更新所述图像增强变量;
根据经更新的所述图像增强变量,通过对所述图像集中的所述图像执行仿射变换来增强所述图像集;以及
利用经增强的所述图像集来训练所述神经网络。
2.根据权利要求1所述的方法,其中当所述总损失小于预先确定的损失阈值并且所述类精度差大于预先确定的类精度差阈值时,迭代地执行更新、增强和训练。
3.根据权利要求1所述的方法,其中与在训练开始之前仅利用增强图像训练的相同神经网络相比,所述神经网络表现出性能改进。
4.根据权利要求1所述的方法,其中更新、增强和训练的操作被执行,直到类精度得到平衡为止。
5.根据权利要求1所述的方法,其中所述仿射变换包括将所述图像旋转、模糊或平移。
6.根据权利要求1所述的方法,其中所述增强变量的幅度基于所述类的大小而被初始化。
7.根据权利要求1所述的方法,其中在训练之前,所述图像集的所述图像基于所述增强变量的幅度进行混洗和批处理。
8.根据权利要求1所述的方法,其中确定经增强的所述图像集训练所述神经网络的次数的回合值大于1。
9.一种用于利用经增强的图像来训练神经网络的系统,包括被配置为执行根据权利要求1-8中任一项所述的方法的至少一个处理器。
10.一种用于利用经增强的图像来训练神经网络的计算机可读存储介质,所述计算机可读存储介质具有与其一起实施的程序指令,所述程序指令由处理器可执行以执行根据权利要求1-8中任一项所述的方法。
11.一种用于利用经增强的图像来训练神经网络的系统,所述系统包括分别用于执行根据权利要求1-8中任一项所述的方法的步骤的模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/151,648 | 2018-10-04 | ||
US16/151,648 US11934944B2 (en) | 2018-10-04 | 2018-10-04 | Neural networks using intra-loop data augmentation during network training |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111008688A CN111008688A (zh) | 2020-04-14 |
CN111008688B true CN111008688B (zh) | 2023-10-10 |
Family
ID=70052192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910904701.0A Active CN111008688B (zh) | 2018-10-04 | 2019-09-24 | 网络训练期间使用环路内数据增加的神经网络 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11934944B2 (zh) |
CN (1) | CN111008688B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210035563A1 (en) * | 2019-07-30 | 2021-02-04 | Dolby Laboratories Licensing Corporation | Per-epoch data augmentation for training acoustic models |
CN114365180A (zh) * | 2019-11-29 | 2022-04-15 | 奥林巴斯株式会社 | 图像处理方法、学习装置以及图像处理装置 |
US11676406B2 (en) * | 2020-05-20 | 2023-06-13 | Applications Mobiles Overview Inc. | System and method of augmenting a three-dimensional objects training dataset |
CN111709459A (zh) * | 2020-05-27 | 2020-09-25 | 长春博立电子科技有限公司 | 一种基于云平台的机器视觉算法训练数据的管理系统及方法 |
CN111970584A (zh) * | 2020-07-08 | 2020-11-20 | 国网宁夏电力有限公司电力科学研究院 | 一种用于处理数据的方法、装置、设备以及存储介质 |
CN112085160A (zh) * | 2020-08-06 | 2020-12-15 | 珠海格力电器股份有限公司 | 一种图像样本扩充方法、装置及存储介质 |
KR20220046925A (ko) * | 2020-10-08 | 2022-04-15 | 삼성에스디에스 주식회사 | 딥러닝 모델 성능 평가 장치 및 방법 |
CN112580689A (zh) * | 2020-11-23 | 2021-03-30 | 北京迈格威科技有限公司 | 神经网络模型的训练方法、应用方法、装置和电子设备 |
US11887356B2 (en) * | 2020-12-03 | 2024-01-30 | Huawei Technologies Co., Ltd. | System, method and apparatus for training a machine learning model |
CN113033801A (zh) * | 2021-03-04 | 2021-06-25 | 北京百度网讯科技有限公司 | 神经网络模型的预训练方法、装置、电子设备和介质 |
CN113313250B (zh) * | 2021-05-13 | 2023-11-24 | 中国科学院计算技术研究所 | 采用混合精度量化与知识蒸馏的神经网络训练方法及系统 |
US20220383090A1 (en) * | 2021-05-25 | 2022-12-01 | International Business Machines Corporation | Sound anomaly detection with mixed augmented datasets |
CN113569992B (zh) * | 2021-08-26 | 2024-01-09 | 中国电子信息产业集团有限公司第六研究所 | 异常数据识别方法及装置、电子设备和存储介质 |
US20230252287A1 (en) * | 2022-02-07 | 2023-08-10 | Accenture Global Solutions Limited | Evaluation of reliability of artificial intelligence (ai) models |
US20240037189A1 (en) * | 2022-07-29 | 2024-02-01 | Plusai, Inc. | Data augmentation by manipulating object contents |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301387A (zh) * | 2017-06-16 | 2017-10-27 | 华南理工大学 | 一种基于深度学习的图像高密度人群计数方法 |
CN108140143A (zh) * | 2015-11-06 | 2018-06-08 | 谷歌有限责任公司 | 正则化机器学习模型 |
WO2018148526A1 (en) * | 2017-02-10 | 2018-08-16 | Google Llc | Batch renormalization layers |
CN108446667A (zh) * | 2018-04-04 | 2018-08-24 | 北京航空航天大学 | 基于生成对抗网络数据增强的人脸表情识别方法和装置 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040153445A1 (en) | 2003-02-04 | 2004-08-05 | Horvitz Eric J. | Systems and methods for constructing and using models of memorability in computing and communications applications |
US7912528B2 (en) | 2003-06-25 | 2011-03-22 | Siemens Medical Solutions Usa, Inc. | Systems and methods for automated diagnosis and decision support for heart related diseases and conditions |
CA2530595A1 (en) | 2003-06-25 | 2005-01-06 | Siemens Medical Solutions Usa, Inc. | Automated regional myocardial assessment for cardiac imaging |
US7574048B2 (en) | 2004-09-03 | 2009-08-11 | Microsoft Corporation | Freeform digital ink annotation recognition |
US8041659B2 (en) * | 2006-07-14 | 2011-10-18 | Ailive, Inc. | Systems and methods for motion recognition using multiple sensing streams |
US9697016B2 (en) | 2011-11-15 | 2017-07-04 | Microsoft Technology Licensing, Llc | Search augmented menu and configuration for computer applications |
JP5780136B2 (ja) | 2011-11-30 | 2015-09-16 | ブラザー工業株式会社 | サーバ |
US20140313665A1 (en) | 2011-12-05 | 2014-10-23 | Michael Delpier | A Computing System Including A First And Second Housing And Polar Magnets |
JP6191328B2 (ja) | 2013-08-19 | 2017-09-06 | コニカミノルタ株式会社 | 超音波診断装置、超音波画像解析方法、およびプログラム |
US9349105B2 (en) | 2013-12-18 | 2016-05-24 | International Business Machines Corporation | Machine learning with incomplete data sets |
EP3129896B1 (en) | 2014-04-09 | 2024-02-14 | Entrupy Inc. | Authenticating physical objects using machine learning from microscopic variations |
AU2015274283B2 (en) | 2014-06-14 | 2020-09-10 | Magic Leap, Inc. | Methods and systems for creating virtual and augmented reality |
WO2016000727A1 (de) | 2014-07-02 | 2016-01-07 | Herbert Boos | Verfahren und einrichtung zur steuerung der ausgabe produktbezogener werbebotschaften an kunden in verkaufsanlagen |
KR102445468B1 (ko) | 2014-09-26 | 2022-09-19 | 삼성전자주식회사 | 부스트 풀링 뉴럴 네트워크 기반의 데이터 분류 장치 및 그 데이터 분류 장치를 위한 뉴럴 네트워크 학습 방법 |
US20160140438A1 (en) | 2014-11-13 | 2016-05-19 | Nec Laboratories America, Inc. | Hyper-class Augmented and Regularized Deep Learning for Fine-grained Image Classification |
CN107427268B (zh) | 2014-11-14 | 2023-07-28 | 西门子保健有限责任公司 | 用于基于纯几何机器学习的血流储备分数的方法和系统 |
WO2016077786A1 (en) | 2014-11-14 | 2016-05-19 | Zoll Medical Corporation | Medical premonitory event estimation |
US10373054B2 (en) | 2015-04-19 | 2019-08-06 | International Business Machines Corporation | Annealed dropout training of neural networks |
US9734436B2 (en) | 2015-06-05 | 2017-08-15 | At&T Intellectual Property I, L.P. | Hash codes for images |
US10373073B2 (en) | 2016-01-11 | 2019-08-06 | International Business Machines Corporation | Creating deep learning models using feature augmentation |
JP5982597B1 (ja) | 2016-03-10 | 2016-08-31 | 株式会社Ffri | 情報処理装置、情報処理方法、プログラム及びプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP6827707B2 (ja) | 2016-04-13 | 2021-02-10 | キヤノン株式会社 | 情報処理装置および情報処理システム |
US10915817B2 (en) | 2017-01-23 | 2021-02-09 | Fotonation Limited | Method of training a neural network |
US9959272B1 (en) * | 2017-07-21 | 2018-05-01 | Memsource a.s. | Automatic classification and translation of written segments |
US11397413B2 (en) * | 2017-08-29 | 2022-07-26 | Micro Focus Llc | Training models based on balanced training data sets |
-
2018
- 2018-10-04 US US16/151,648 patent/US11934944B2/en active Active
-
2019
- 2019-09-24 CN CN201910904701.0A patent/CN111008688B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108140143A (zh) * | 2015-11-06 | 2018-06-08 | 谷歌有限责任公司 | 正则化机器学习模型 |
WO2018148526A1 (en) * | 2017-02-10 | 2018-08-16 | Google Llc | Batch renormalization layers |
CN107301387A (zh) * | 2017-06-16 | 2017-10-27 | 华南理工大学 | 一种基于深度学习的图像高密度人群计数方法 |
CN108446667A (zh) * | 2018-04-04 | 2018-08-24 | 北京航空航天大学 | 基于生成对抗网络数据增强的人脸表情识别方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20200110994A1 (en) | 2020-04-09 |
US11934944B2 (en) | 2024-03-19 |
CN111008688A (zh) | 2020-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111008688B (zh) | 网络训练期间使用环路内数据增加的神经网络 | |
CN111104962B (zh) | 图像的语义分割方法、装置、电子设备及可读存储介质 | |
US11645833B2 (en) | Generative adversarial network medical image generation for training of a classifier | |
AU2021259170B2 (en) | Supervised contrastive learning with multiple positive examples | |
US10540578B2 (en) | Adapting a generative adversarial network to new data sources for image classification | |
US10937540B2 (en) | Medical image classification based on a generative adversarial network trained discriminator | |
US20210004677A1 (en) | Data compression using jointly trained encoder, decoder, and prior neural networks | |
CN112699991A (zh) | 用于加速神经网络训练的信息处理的方法、电子设备和计算机可读介质 | |
US20190114742A1 (en) | Image upscaling with controllable noise reduction using a neural network | |
AU2019200270A1 (en) | Concept mask: large-scale segmentation from semantic concepts | |
CN111386536A (zh) | 语义一致的图像样式转换 | |
JP2023531350A (ja) | サンプル画像を増分する方法、画像検出モデルの訓練方法及び画像検出方法 | |
WO2022174578A1 (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN114424215A (zh) | 多任务适配器神经网络 | |
EP4016477A1 (en) | Method and apparatus for character recognition, electronic device, and storage medium | |
WO2021216310A1 (en) | Supervised contrastive learning with multiple positive examples | |
JP2023551787A (ja) | Oct画像データを正規化すること | |
EP4237997A1 (en) | Segmentation models having improved strong mask generalization | |
CN113490955A (zh) | 用于产生金字塔层的架构的系统和方法 | |
Jokela | Person counter using real-time object detection and a small neural network | |
CN115398446A (zh) | 使用符号编程的机器学习算法搜索 | |
WO2020182930A1 (en) | Compressed sensing using neural networks | |
CN112053362A (zh) | 图像分割方法、装置、电子设备及存储介质 | |
US20230244706A1 (en) | Model globalization for long document summarization | |
US11755883B2 (en) | Systems and methods for machine-learned models having convolution and attention |
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 |