CN111898635A - 神经网络的训练方法、数据获取方法和装置 - Google Patents
神经网络的训练方法、数据获取方法和装置 Download PDFInfo
- Publication number
- CN111898635A CN111898635A CN202010594053.6A CN202010594053A CN111898635A CN 111898635 A CN111898635 A CN 111898635A CN 202010594053 A CN202010594053 A CN 202010594053A CN 111898635 A CN111898635 A CN 111898635A
- Authority
- CN
- China
- Prior art keywords
- domain
- feature
- data
- training
- features
- 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
Links
- 238000012549 training Methods 0.000 title claims abstract description 418
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 302
- 238000000034 method Methods 0.000 title claims abstract description 159
- 230000006870 function Effects 0.000 claims description 53
- 230000015654 memory Effects 0.000 claims description 46
- 238000000605 extraction Methods 0.000 claims description 45
- 238000012545 processing Methods 0.000 claims description 34
- 230000003044 adaptive effect Effects 0.000 claims description 21
- 230000004927 fusion Effects 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 abstract description 16
- 238000013508 migration Methods 0.000 abstract description 12
- 230000005012 migration Effects 0.000 abstract description 12
- 239000010410 layer Substances 0.000 description 86
- 230000008569 process Effects 0.000 description 75
- 239000013598 vector Substances 0.000 description 33
- 238000010586 diagram Methods 0.000 description 27
- 238000004364 calculation method Methods 0.000 description 22
- 239000011159 matrix material Substances 0.000 description 17
- 238000001514 detection method Methods 0.000 description 16
- 238000003062 neural network model Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 15
- 238000009826 distribution Methods 0.000 description 13
- 230000001537 neural effect Effects 0.000 description 10
- 238000013500 data storage Methods 0.000 description 9
- 230000004913 activation Effects 0.000 description 7
- 210000002569 neuron Anatomy 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000005265 energy consumption Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000003042 antagnostic effect Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 239000004576 sand Substances 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000002355 dual-layer Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007499 fusion processing Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000009828 non-uniform distribution Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了人工智能领域中的一种神经网络的训练方法、数据获取方法和装置。该神经网络的训练方法包括:获取训练数据;使用训练数据对所述神经网络进行训练,使得神经网络从训练数据中学习分解域不变特征和域特定特征。通过从训练数据中分解域不变特征和域特定特征,使得域不变特征能够与域特定特征解耦;其中,所述域特定特征为表征所述训练数据所属的领域的特征,所述域不变特征为与所述训练数据所属领域无关的特征。由于本申请的方法训练的神经网络使用特征解耦得到的域不变特征来执行任务,避免了域特定特征对于神经网络的影响,从而提升了神经网络在不同领域之间的迁移性能。
Description
技术领域
本申请涉及人工智能领域,具体涉及一种神经网络的训练方法、数据获取方法和装置。
背景技术
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。
例如,在计算机视觉相关的应用场景中,以机器学习方式训练的神经网络可用于完成目标分类/检测/识别/分割/预测等多种任务。在很多应用场景下,训练样本和测试样本很可能来自不同的域,这会为神经网络的实际应用带来问题。例如,在车辆检测的应用场景下,源域数据可能是晴天拍摄的交通场景图像,而目标域数据却是雾天拍摄的交通场景图像。此时使用源域数据训练得到的目标检测模型就很难在目标域数据场景下取得好的效果。为了解决这种由于训练样本和测试样本之间的域偏差所带来的模型应用问题,域自适应(domain adaptation,DA)学习作为机器学习的重要研究领域在近几年受到了广泛的关注。
域自适应学习通常使用分布对齐的方法来对齐源域和目标域的数据之间的概率分布,以缓解域偏差对域自适应学习任务带来的不利影响。由于这种分布对齐的过程只是在整体特征表示层面进行的,使得域自适应学习任务不可避免受到不同领域的特定特征的影响,因此,训练出的神经网络仍然存在迁移性能差的问题。
发明内容
本申请提供一种神经网络的训练方法、数据获取方法和装置,能够更好地提升神经网络在不同领域之间的迁移性能。
第一方面,提供了一种神经网络的训练方法,包括:获取训练数据;使用所述训练数据对神经网络进行训练,使得所述神经网络从所述训练数据中学习分解域不变特征和域特定特征;其中,所述域特定特征为表征所述训练数据所属的领域的特征,所述域不变特征为与所述训练数据所属领域无关的特征。
通过从训练数据中分解域不变特征和域特定特征,使得域不变特征能够与域特定特征解耦。由于本申请的训练方法得到的神经网络使用域不变特征来执行任务,这样避免了域特定特征对于神经网络的影响,从而提升了神经网络在不同领域之间的迁移性能。
结合本申请的第一方面,在一种可能的实现方式中,所述使用所述训练数据对神经网络进行训练包括:从所述训练数据中分解出域不变特征和域特定特征;使用所述域不变特征执行任务,得到任务损失,并计算所述域不变特征和所述域特定特征之间的互信息损失,所述任务损失用于表征使用所述域不变特征执行任务所得到的结果与任务标签之间的差距,所述互信息损失用于表示所述域不变特征和所述域特定特征之间的差异;根据所述任务损失和所述互信息损失,训练所述神经网络。
通过根据任务损失和互信息损失来训练神经网络,不仅可使得分解出的域不变特征更加精准的与实例对应,还可在训练的过程中减少域不变特征和域特定特征之间的互信息损失,以促进域不变特征和域特定特征的完全解耦,进一步降低域特定特征对域不变特征的影响。
结合本申请的第一方面,在一种可能的实现方式中,所述方法还包括:使用所述域特定特征进行域分类,得到域分类损失;其中,所述根据所述任务损失和所述互信息损失,训练所述神经网络,包括:根据所述任务损失、所述互信息损失和所述域分类损失训练所述神经网络。
通过引入域分类损失,有助于从训练数据的特征中提取域不变特征。
结合本申请的第一方面,在一种可能的实现方式中,所述从所述训练数据中分解出域不变特征和域特定特征,包括:从所述训练数据中提取初始特征;将所述初始特征分解成所述域不变特征和所述域特定特征,其中,所述方法还包括:训练所述神经网络,以减小所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
通过减小初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异,可使得解耦出的域不变特征和域特定特征能够包含训练数据的全部特征信息,以提高特征解耦的完整性和合理性。
结合本申请的第一方面,在一种可能的实现方式中,在所述训练所述神经网络,以减小所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异之前,所述方法还包括:使用所述域不变特征和所述域特定特征对所述初始特征进行重建,得到重建特征;比较所述初始特征和所述重建特征,以确定所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
使用该重建损失来训练神经网络,可使得解耦出的域不变特征和域特定特征能够包含训练数据的全部特征信息,以提高特征解耦的完整性和合理性。
结合本申请的第一方面,在一种可能的实现方式中,所述方法还包括:使用所述域不变特征和所述域特定特征对初始特征进行重建,得到重建特征,其中所述域不变特征和所述域特定特征是从所述初始特征中分解出的特征;比较所述初始特征和所述重建特征以获取重建损失,所述重建损失用于表征所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异,其中,所述根据所述任务损失和所述互信息损失,训练所述神经网络,包括:根据所述任务损失,对所述神经网络进行第一阶段的训练;根据所述互信息损失,对所述神经网络进行第二阶段的训练,其中,所述方法还包括:根据所述重建损失,对所述神经网络进行第三阶段的训练。
将神经网络的训练过程分阶段进行,可以简化每个阶段的训练量,加快神经网络的参数的收敛速度。
结合本申请的第一方面,在一种可能的实现方式中,所述神经网络包括第一解耦器和第二解耦器,所述从所述训练数据中分解出域不变特征和域特定特征,包括:从所述训练数据中提取所述训练数据的第一特征;采用所述第一解耦器从所述第一特征中提取初步域不变特征和初步域特定特征;将所述初步域不变特征与所述第一特征融合,得到第二特征;从所述第二特征中提取所述训练数据的第三特征;采用第二解耦器从所述第三特征中提取所述域不变特征和所述域特定特征。
通过先获取第一特征,并基于第一解耦器解耦出初步域不变特征,将该初步域不变特征与第一特征融合以获取第二特征,使得域不变特征信息在第一特征的层面上得到了增加。然后再使用该第二特征基于第二解耦器解耦出域不变特征,域不变特征的解耦精度得到进一步增强,可使得训练出的神经网络的任务执行性能更强,域适应能力也更优。
结合本申请的第一方面,在一种可能的实现方式中,所述方法还包括:训练所述神经网络,以减小所述第三特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
通过减小第三特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异,可进一步促使解耦出的域不变特征和域特定特征能够包含训练数据的全部特征信息,以提高特征解耦的完整性和合理性。
结合本申请的第一方面,在一种可能的实现方式中,所述神经网络用于进行域自适应学习,所述训练数据包括不同领域的图像数据。
通过提取不同领域的图像数据的域不变特征和域特定特征,并基于使用域不变特征执行任务得到的任务损失对神经网络进行训练,使得域不变特征能够与域特定特征解耦。由于使用域不变特征来执行任务,本申请的训练方法得到的神经网络可通过域自适应学习来自行适应对于多种不同领域图像的处理任务,从而实现对不同领域的图像数据的自适应处理。
第二方面,提供了一种数据获取方法,包括:获取源域的数据和/或目标域的数据;将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息;根据所述梯度信息,对所述源域的数据和/或所述目标域的数据进行扰动,得到中间域的数据;其中,所述源域和所述目标域为数据特征存在差异的两个领域,所述中间域与所述源域和所述目标域中的任一领域之间的数据特征的差异小于所述源域和所述目标域之间的数据特征的差异。
源域和目标域之间的方向信息的引入使得训练数据的扰动更有针对性,通过扰动获得的中间域的训练数据能够填补源域和目标域之间的“领域鸿沟”,缓解源域的训练数据和目标域的训练数据的分布差异大的问题。
结合本申请的第二个面,在一种可能的实现方式中,所述将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息,包括:将所述源域的带有标签的数据输入第一神经网络,进行训练,得到第一梯度信息,其中,所述第一神经网络是基于所述目标域的带有标签的数据训练生成的。
第一神经网络是由目标域的带有标签的数据训练生成的,因此,将源域的带有标签的数据输入该第一神经网络之后得到的所述第一梯度信息可以很好地衡量从源域到目标域的方向。
结合本申请的第二方面,在一种可能的实现方式中,所述将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息,包括:将所述目标域的没有标签的数据输入第二神经网络,以虚拟对抗训练的方式进行训练,得到第二梯度信息,其中,所述第二神经网络是基于带有标签的数据训练生成的。
第二神经网络是由源域的带有标签的数据训练生成的,因此,将目标域的没有标签的数据输入该第二神经网络之后经过虚拟对抗训练得到的所述第二梯度信息可以很好地衡量从目标域到源域的方向。
第三方面,提供了一种神经网络的训练装置,包括:用于执行第一方面的模块计算模块。
第四方面,提供了一种数据获取装置,包括:用于执行第二方面所述的方法的模块计算模块。
第五方面,提供了一种神经网络的训练装置,包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行第一方面或第二方面所述的方法。
第六方面,提供了一种神经网络,包括:第一特征提取层,用于基于输入数据提取第一特征;第一域不变特征解耦层,用于基于所述第一特征提取第一域不变特征;特征融合层,用于融合所述第一特征和所述第一域不变特征,以获取第二特征;第二特征提取层,用于基于所述第二特征提取第三特征;第二域不变特征解耦层,用于基于所述第三特征提取第二域不变特征;其中,所述第一域不变特征和所述第二域不变特征分别为表征所述输入数据所属的领域的特征,所述第一域特定特征和所述第二域特定特征分别为与所述输入数据所属领域无关的特征。
第七方面,提供了一种数据处理系统,包括:数据获取网络,用于基于第一数据获取损失函数的梯度信息,并根据所述梯度信息对所述第一数据进行扰动以获取第二数据;特征解耦网络,用于使用包括所述第二数据的训练数据对神经网络进行训练,使得所述神经网络从所述训练数据中学习分解域不变特征和域特定特征;其中,所述域特定特征为表征所述训练数据所属的领域的特征,所述域不变特征为与所述训练数据所属领域无关的特征。
结合本申请的第七方面,在一种可能的实现方式中,所述特征解耦网络包括:第一特征提取层,用于基于所述训练数据提取第一特征;第一域不变特征提取层,用于基于所述第一特征提取第一域不变特征;第一域特定特征提取层,用于基于所述第一特征提取第一域特定特征;第一互信息损失获取层,用于基于所述第一域不变特征和所述第一域特定特征获取第一互信息损失;特征融合层,用于融合所述第一特征和所述第一域不变特征,以获取第二特征;第二特征提取层,用于基于所述第二特征提取第三特征;第二域不变特征解耦层,用于基于所述第三特征提取第二域不变特征;第二域特定特征提取层,用于基于所述第三特征提取第二域特定特征;第二互信息损失获取层,用于基于所述第二域不变特征和所述第二域特定特征获取第二互信息损失;任务损失获取层,用于使用所述第二域不变特征执行任务以获取任务损失。
结合本申请的第七方面,在一种可能的实现方式中,所述数据处理系统进一步包括:第一域分类器,用于基于所述第一域特定特征执行分类任务以获取第一分类损失;第一梯度反转层,用于将所述第一分类损失的梯度信息取反;和/或,第二域分类器,用于基于所述第二域特定特征执行分类任务以获取第二分类损失;第二梯度反转层,于将所述第二分类损失的梯度信息取反。
结合本申请的第七方面,在一种可能的实现方式中,所述数据处理系统进一步包括:重建损失获取层,用于使用所述第二域不变特征和所述第二域特定特征对所述第三特征进行重建,得到重建特征;比较所述第三特征和所述重建特征,以获取重建损失。
结合本申请的第七方面,在一种可能的实现方式中,所述第一数据包括源域的数据和/或目标域的数据,其中,所述数据获取网络包括:基于所述目标域的带有标签的数据训练生成的第一训练网络;和/或,基于带有标签的数据训练生成的第二训练网络。
第八方面,提供了一种安防设备,包括第六方面所述的神经网络。
第九方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行第一方面或第二方面所述的方法。
第十方面,提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令在被处理器运行时使得处理器执行第一方面或第二方面所述的方法。
第十一方面,提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第一方面或第二方面所述的方法。
可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面或第二方面所述的方法。
附图说明
图1为一种人工智能主体框架示意图。
图2为本申请一实施例提供的一种系统架构。
图3为本申请一实施例提供的芯片硬件结构图。
图4为本申请一实施例提供的一种系统架构。
图5为本申请一实施例提供的一种神经网络的训练方法的流程示意图。
图6为本申请一实施例提供的一种神经网络的训练方法的流程示意图。
图7为本申请一实施例提供的神经网络的结构示意图。
图8为本申请一实施例提供的特征解耦原理示意图。
图9为本申请另一实施例提供的神经网络的结构示意图。
图10为本申请一实施例提供的神经网络的结构示意图。
图11为基于图10所示神经网络架构的提取域不变特征和域特定特征的流程示意图。
图12为本申请一实施例提供的训练过程的原理示意图。
图13所示为本申请一实施例提供的一种神经网络的结构示意图。
图14为本申请一实施例提供的获取中间域的数据的流程示意图。
图15为本申请一实施例提供的神经网络的结构示意图。
图16为本申请另一实施例提供的双向对抗训练的示意图。
图17为本申请一实施例提供的一种数据处理系统的结构示意图。
图18为本申请一实施例提供的神经网络的训练装置的结构示意图。
图19为本申请另一实施例提供的数据获取装置的结构示意图。
图20为本申请一实施例提供的神经网络的训练装置的硬件结构示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
图1为一种人工智能主体框架示意图。该主体框架描述了人工智能系统总体工作流程,适用于通用的人工智能领域需求。
下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。
“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据-信息-知识-智慧”的凝练过程。
“IT价值链”从人智能的低层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施:
基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(CPU、NPU、GPU、ASIC、FPGA等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。
(2)数据
基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理
数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用
智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶,平安城市,智能终端等。
如前所述,对于域自适应学习任务,由于源域和目标域之间存在分布差异,源域上表现较好的模型如果直接应用在目标域的场景下会导致性能受限。在训练神经网络模型以进行域自适应学习时,采用的是分布对齐的策略,即将源域的数据和目标域的数据在特征表示的层面上对齐。由于这种分布对齐的过程只是在整体特征表示层面进行的,使得域自适应学习任务不可避免受到不同领域的特定特征的影响,因此,训练出的神经网络模型仍然存在迁移性能差的问题。
针对上述技术问题,本申请提出一种训练神经网络模型的方式,能够在训练的过程中将域不变特征(域不变特征可以理解为与域无关的实例层面的特征)从数据的特征中解耦出来,使得域自适应学习任务可以不受不同领域的特定特征的影响,从而可以提高神经网络模型的迁移性能。
应当理解,本申请实施例所训练的神经网络模型可以应用在各种不同的应用场景,根据具体的应用场景不同,神经网络模型也可有着不同的结构。例如,在图像分类应用场景下(例如车辆识别、人脸识别等),该神经网络模型可以为卷积神经网络模型,而在回归预测应用场景下(例如工业生产线的能耗预测、天气预测、山体滑坡预测等),该神经网络模型就可包括多层感知机的架构。本申请实施例对所训练的神经网络模型的具体应用场景和结构并不做限定。
由于本申请实施例涉及域自适应学习和神经网络方面的应用,为了便于理解,下面先对本申请实施例可能涉及的相关术语及神经网络等相关概念进行简单介绍。
(1)域自适应学习
域自适应学习是用于解决训练样本和测试样本概率分布不一致问题的一种机器学习方式,旨在克服训练过程中源域样本的概率分布和目标域样本的概率分布的差异,以实现目标域上的学习任务。
(2)神经网络
神经网络可以是由神经单元组成的,神经单元可以指以xs和截距1为输入的运算单元。该运算单元的输出可以利用下述公式(1)表示。
在公式(1)中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation function),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入。激活函数可以是sigmoid函数。神经网络是将许多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(3)深度神经网络
深度神经网络(deep neural network,DNN),也称多层神经网络,可以理解为具有很多隐含层的神经网络,这里的“很多”并没有特别的度量标准。从DNN按不同层的位置划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说,第一层是输入层,最后一层是输出层,中间的层都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。虽然DNN看起来很复杂,但是每一层的工作均可基于下述公式(2)记载的线性关系表达式表达。
在公式(2)中,表示输入向量,表示输出向量,b表示偏移向量,W表示权重矩阵(也称系数),α(.)表示激活函数。每一层仅仅是对输入向量经过如此简单的操作得到输出向量由于DNN层数多,则系数W和偏移向量b的数量也就很多了。这些参数在DNN中的定义如下所述。
以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第三层的第2个神经元的线性系数定义为上标3代表系数W所在的层数,而下标24对应的是输出的第三层索引2和输入的第二层索引4。总结就是:第L-1层的第k个神经元到第L层的第j个神经元的系数定义为需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的过程也就是学习权重矩阵的过程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。
(4)损失函数
在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数)。比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(obiective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(5)反向传播算法
卷积神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的神经网络中参数的大小,使得神经网络的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的神经网络中的参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的神经网络的参数,例如权重矩阵。
(6)对抗样本
对抗样本是指在数据集中添加扰动所形成的输入样本,导致神经网络以高置信度给出一个错误的输出。由于神经网络的最终目的其实在于获得正确的输出结果,因此对抗样本用于以这种对抗训练的策略训练神经网络,使得神经网络适应这种扰动,从而对对抗样本具有鲁棒性。
(7)虚拟对抗训练
虚拟对抗训练是指一种不依赖训练标签的对抗训练方式。虚拟对抗训练通过基于神经网络的第一输出生成扰动,这种扰动使得所生成的对抗样本输入神经网络所获得的第二输出不同于之前的第一输出,以此实现对抗训练的策略。
下面结合图2对本申请实施例提供的系统架构进行详细的介绍。
图2为本申请一实施例提供的一种系统架构200。如图2所示,系统架构200包括执行设备210、训练设备220、数据库230、客户设备240、数据存储系统250以及数据采集系统260。执行设备210包括计算模块211、I/O接口212、预处理模块213和预处理模块214。计算模块211中可以包括目标模型/规则201,预处理模块213和预处理模块214是可选的。
数据采集设备260用于采集训练数据(或称用于训练的样本数据)并存入数据库230,本申请实施例中的训练数据可以包括不同领域的训练数据,如源域的训练数据和目标域的训练数据。训练设备220基于数据库230中维护的训练数据对目标模型/规则201进行训练,以使得该目标模型/规则201具备从输入的数据中解耦域不变特征和域特定特征的功能、以及利用该域不变特征完成实际应用场景需求的任务的功能,如具备完成目标分类/检测/识别/分割等任务的功能。
目标模型/规则201可以是神经网络模型。神经网络模型中的每一层的工作可以用数学表达式来描述:从物理层面神经网络模型中的每一层的工作可以理解为通过五种对输入空间(输入向量的集合)的操作,完成输入空间到输出空间的变换(即矩阵的行空间到列空间),这五种操作包括:1、升维/降维;2、放大/缩小;3、旋转;4、平移;5、“弯曲”。其中1、2、3的操作由完成,4的操作由+b完成,5的操作则由a()来实现。这里之所以用“空间”二字来表述是因为被分类的对象并不是单个事物,而是一类事物,空间是指这类事物所有个体的集合。其中,W是权重向量,该向量中的每一个值表示该层神经网络中的一个神经元的权重值。该向量W决定着上文所述的输入空间到输出空间的空间变换,即每一层的权重W控制着如何变换空间。训练神经网络模型的目的,也就是最终得到训练好的神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。因此,神经网络的训练过程本质上就是学习控制空间变换的方式,更具体的就是学习权重矩阵。
因为希望神经网络模型的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为神经网络模型中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”。这便是损失函数(loss function)或目标函数(objectivefunction),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么神经网络模型的训练就变成了尽可能缩小这个loss的过程。
训练设备220得到的目标模型/规则可以应用在不同的系统或设备中。在附图2中,执行设备210配置有I/O接口212,与外部设备进行数据交互,“用户”可以通过客户设备240向I/O接口212输入数据。
执行设备210可以调用数据存储系统250中的数据、代码等,也可以将数据、指令等存入数据存储系统250中。
计算模块211使用目标模型/规则201对输入的数据进行处理。在实际应用场景的工作过程中,计算模块211的具体输入数据与具体的应用场景相关。例如,在人脸识别的应用场景,计算模块211的输入数据就可能是包括人脸图像的图像数据。由于计算模块211是使用目标模型/规则201对输入的数据进行处理,因此计算模块其实也是基于输入的数据获取实例层面的特征,然后将该实例层面的特征用于执行具体的任务。
在本申请一实施例中,该系统架构200还可能包括一些与计算模块211连接的管理功能模块,以基于计算模块211的输出结果完成更灵活的细分任务。例如,当“用户”可以通过客户设备240向I/O接口212输入的数据是交通场景的图像数据时,图2所示的关联功能模块213就可配置为根据计算模块211所输出车辆对象的特征信息进一步识别车辆的车牌号和型号等信息;而关联功能模块214可配置为根据计算模块211所输出的行人的特征进一步识别行人的性别、身高和年龄等信息。然而,本申请对该系统架构是否包括这些关联功能模块,以及这些关联功能模块具体所执行的功能并不做限定。
最后,I/O接口212将处理结果返回给客户设备240,提供给用户。
更深层地,训练设备220可以针对不同的目标,基于不同的数据生成相应的目标模型/规则201,以给用户提供更佳的结果。
在附图2中所示情况下,用户可以手动指定输入执行设备210中的数据,例如,在I/O接口212提供的界面中操作。另一种情况下,客户设备240可以自动地向I/O接口212输入数据并获得结果,如果客户设备240自动输入数据需要获得用户的授权,用户可以在客户设备240中设置相应权限。用户可以在客户设备240查看执行设备210输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备240也可以作为数据采集端将采集到样本数据存入数据库230。
值得注意的是,附图2仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在附图2中,数据存储系统250相对执行设备210是外部存储器,在其它情况下,也可以将数据存储系统250置于执行设备210中。
下面结合图3介绍本申请实施例提供的一种芯片硬件结构。
图3为本申请一实施例提供的芯片硬件结构图。如图3所示,该芯片包括神经网络处理器(neural-network processing unit,NPU)300。该芯片可以被设置在如图2所示的执行设备210中,用以完成计算模块211的计算工作。该芯片也可以被设置在如图2所示的训练设备220中,用以完成训练设备220的训练工作并输出目标模型/规则201。此外,下述图4、图9和图11所示的神经网络的训练方法均可在如图3所示的芯片中得以实现。
神经网络处理器300作为协处理器挂载到主中央处理单元(host centralprocessing unit,host CPU)上,由主CPU分配任务。神经网络处理器300的核心部分为运算电路303,控制器304控制运算电路303提取存储器(权重存储器302或输入存储器301)中的数据并进行运算。
在一些实现中,运算电路303内部包括多个处理单元(process engine,PE)。在一些实现中,运算电路303是二维脉动阵列。运算电路303还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路303是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路303从权重存储器302中取权重矩阵B相应的数据,并缓存在运算电路303中每一个PE上。运算电路303从输入存储器301中取输入矩阵A与权重矩阵B进行矩阵运算,以得到矩阵的部分结果或最终结果,并保存在累加器(accumulator)308中。
向量计算单元307可以对运算电路303的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元307可以用于神经网络中非卷积/非FC层的网络计算,如池化(pooling),批归一化(batch normalization),局部响应归一化(local response normalization)等。
在一些实现中,向量计算单元307能将经处理的输出的向量存储到统一存储器306。例如,向量计算单元307可以将非线性函数应用到运算电路303的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元307生成归一化的值、合并值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路303的激活输入,例如用于在神经网络中的后续层中的使用。
统一存储器306用于存放输入数据以及输出数据。
权重数据直接通过存储单元访问控制器(direct memory access controller,DMAC)305将外部存储器中的输入数据搬运到输入存储器301和/或统一存储器306、将外部存储器中的权重数据存入权重存储器302,以及将统一存储器306中的数据存入外部存储器。
总线接口单元(bus interface unit,BIU)310,用于通过总线实现主CPU、DMAC和取指存储器309之间进行交互。
与控制器304连接的取指存储器(instruction fetch buffer)309,用于存储控制器304使用的指令。
控制器304,用于调用取指存储器309中缓存的指令,实现控制该运算加速器的工作过程。
一般地,统一存储器306、输入存储器301、权重存储器302以及取指存储器309均为片上(on-chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(double data rate synchronous dynamic random accessmemory,DDR SDRAM)、高带宽存储器(high bandwidth memory,HBM)或其他可读可写的存储器。
图4为本申请一实施例提供的一种系统架构400。执行设备410由一个或多个设置在云端的服务器实现,服务器也可与其它计算设备配合,例如:数据存储、路由器、负载均衡器等设备;执行设备410可以布置在一个物理站点上,或者分布在多个物理站点上。在本申请一实施例中,执行设备410可以使用数据存储系统420中的数据,或者调用数据存储系统420中的程序代码实现本申请的实施例所提供的神经网络的训练方法;具体地,执行设备410可以根据数据存储系统420中的训练数据以本申请的实施例所提供的方法训练神经网络,以及根据本地设备401/402的请求完成对应的智能任务。在本申请另一实施例中,执行设备410也可并不具备训练神经网络的功能,但是可以根据本申请的实施例所提供的神经网络的训练方法训练好的神经网络完成对应的智能任务;具体地,执行设备410配置有本申请的实施例所提供的神经网络的训练方法训练好的神经网络后,在接收到本地设备401/402的请求后即可完成对应的智能任务,并反馈结果给本地设备401/402。
用户可以操作各自的用户设备(例如本地设备401和本地设备402)与执行设备410进行交互。每个本地设备可以表示任何计算设备,例如个人计算机、计算机工作站、智能手机、平板电脑、智能摄像头、智能汽车或其他类型蜂窝电话、媒体消费设备、可穿戴设备、机顶盒、游戏机等。在本申请一实施例中,本地设备可以是一种安防设备,例如监控摄像设备、烟雾报警设备或灭火设备等。
每个用户的本地设备可以通过任何通信机制/通信标准的通信网络与执行设备410进行交互,通信网络可以是广域网、局域网、点对点连接等方式,或它们的任意组合。
在另一种实现中,执行设备410的一个方面或多个方面可以由每个本地设备实现,例如,本地设备401可以为执行设备410提供本地数据或反馈计算结果。
在另一种实现中,上述执行设备410的所有功能也可以由本地设备实现。本地设备401执行本申请的实施例所提供的神经网络的训练方法,并使用训练好的神经网络为用户提供服务。
图5为本申请一实施例提供的神经网络的训练方法的流程示意图。图5所示的神经网络的训练方法可由图2所示的训练设备220执行,该训练设备220训练得到的目标模型/规则201即为该神经网络。如图5所示,该神经网络的训练方法包括如下步骤:
步骤501:获取训练数据。
训练数据为训练过程的输入数据,训练数据可以由用户采集获取,也可采用现有的训练数据库。应当理解,根据实际场景的需求不同,训练数据可具备不同的格式和形式。例如在目标检测或目标识别场景下,训练数据可以是图像数据。而在回归预测场景下,训练数据就可为采集的过往的房价历史数据。
在本申请一实施例中,输入神经网络的训练数据可以包括不同领域(domain)的训练数据。例如,不同领域可以包括目标域和源域。以域自适应学习任务为例,训练数据可以包括源域的训练数据和目标域的训练数据。在本申请一实施例中,领域(domain)的差异可体现为场景(scenario)的差异。以车辆检测的应用场景为例,源域的训练数据就可能是大量的晴天场景下的交通场景图像,目标域的训练数据就可能是大量的雾天场景下的交通场景图像。然而应当理解,根据应用场景的不同,源域的训练数据和目标域的训练数据也可能在其他方面体现这种领域差异,例如,在回归预测场景下,源域的训练数据可能是采集于去年的生产线的能耗数据,而目标域的训练数据可能是采集于今年的生产线的能耗数据,此时领域差异体现在由于时间变换而出现的能耗数据的数值分布不一致。
步骤502:使用训练数据对神经网络进行训练,使得神经网络从训练数据中学习分解域不变特征和域特定特征。
在训练神经网络的过程中,神经网络可以采用监督学习、半监督学习或无监督学习等方式中的任意一种对训练数据进行学习。以域自适应学习任务为例,训练数据可以包括带有足量标签的源域的训练数据,以及带有少量标签的目标域的训练数据,此时,神经网络可以采用半监督学习的方式对训练数据进行学习;或者,训练数据可以包括带有足量标签的源域的训练数据,以及不带标签的目标域的训练数据,此时,神经网络可以采用无监督学习的方式对训练数据进行学习。
域不变特征(domain-invariant representation,DIR)为与训练数据所属领域无关的特征,为不会因为领域差异而产生变化的特征。域不变特征有时也可称为与任务相关的实例层面的特征。以车辆检测的应用场景为例,领域差异体现在晴天拍摄的交通场景图像和雾天拍摄的交通场景图像的天气变化所呈现出来的图像差异,而交通场景中的车辆的特征是不会随着天气的变化而变化的,同时,目标检测任务的目标对象(即实例)就是图像中的车辆,因此车辆的特征就是要提取出的域不变特征。在目标检测的域自适应学习场景中,所要实现的就是无论在实际工作中获取到的图像是拍摄于晴天还是雾天,这个训练好的神经网络都能够准确地提取出车辆的特征以完成目标检测任务。
域特定特征(domain-specific representation,DSR)为表征训练数据所属的领域的特征,是训练数据所属的域所特有的特征,会因为领域差异而产生变化;同时域特定特征也是与实例不相关的特征,在实际任务执行过程中也是与任务的目标不相关的。例如在前述车辆检测的应用场景下,交通场景图像中车辆周遭的环境(树木、天空、街景等)的特征就是与车辆的特征不相关的,因为车辆的识别或检测并不需要了解周遭环境的特征,且这些周遭的环境(例如天空)的特征信息会随着领域差异(天气变化)而变化。
由此可见,本申请实施例通过从训练数据中分解域不变特征和域特定特征,使得域不变特征能够与域特定特征解耦。由于本申请的训练方法得到的神经网络使用域不变特征来执行任务,这样避免了域特定特征对于神经网络的影响,从而提升了神经网络在不同领域之间的迁移性能。
图6为本申请一实施例提供的神经网络的训练方法的流程示意图。图7为图6训练得到的神经网络的结构示意图。图6所示的神经网络的训练方法可由图2所示的训练设备220执行,该训练设备220训练得到的目标模型/规则201即为该神经网络。如图6和图7所示,该神经网络的训练方法包括如下步骤:
步骤601:从训练数据中分解出域不变特征和域特定特征。
如图7所示,该提取域不变特征DIR和域特定特征DSR的过程可分别由神经网络中的域不变特征提取器EDIR和域特定特征提取器EDSR完成。训练数据输入到神经网络中后,可以使用该域不变特征提取器EDIR和该域特定特征提取器EDSR完成域不变特征DIR和域特定特征DSR的提取过程。
下面结合图8来说明目标检测场景下的域不变特征和域特定特征的解耦。在如图8所示的目标检测场景下,任务的目标是要检测出图像数据中的对象(包括人物和车辆)。图8左侧的源域的训练数据是照片图像,右侧的目标域的训练数据是卡通图像。在域不变空间中,源域的训练数据中提取出的域不变特征就是照片图像中的人物和车辆,目标域的训练数据中提取出的域不变特征就是卡通图像中的人物和车辆,线条C1表征的是在域不变空间中的人物的域不变特征和车辆的域不变特征的分类界限。在域特定空间中,源域的训练数据中提取出的域特定特征就是照片图像中除去人物和车辆外的其他特征,目标域的训练数据中提取出的域特定特征就是卡通图像中除去人物和车辆外的其他特征,线条C2表征的是来自源域的域特定特征和来自目标域的域特定特征在域特定空间中的分布界限。
步骤602:使用域不变特征执行任务,得到任务损失,并计算域不变特征和域特定特征之间的互信息损失,互信息损失用于表示域不变特征和域特定特征之间的差异。
如前所述,域不变特征用于表征的是实例层面的特征信息,因此将域不变特征用于执行任务并获得任务损失(task loss),可提高域不变特征对于与任务相关的实例表征的准确性和完整性。任务损失用于表征使用域不变特征执行任务所得到的结果与任务标签之间的差距。例如,当域不变特征用于执行目标检测任务时,执行任务所得到的结果就可包括检测出的目标对象的属性特征,而任务标签则对应该域不变特征实际上所对应的目标对象的标准属性特征,这样检测出的属性特征和标准属性特征之间的差异可通过任务损失来表征。
互信息(mutual information,MI)损失表征的是两个变量的相互依赖性。两个随机变量X和Z的互信息损失I可通过如下公式(3)定义,其中H(X)是边缘熵,H(X|Z)是条件熵:
I(X,Z)=H(X)-H(X|Z) (3)
互信息损失用于表示域不变特征和域特定特征之间的差异。通过计算域不变特征和域特定特征之间的互信息损失,并基于该互信息损失对该神经网络进行训练,可有助于进一步将域不变特征和域特定特征区分开,起到迫使域不变特征和域特定特征解耦的作用。应当理解,互信息损失的计算方法可根据实际场景需求选择,例如,可选择使用互信息神经估计器(mutual information neural estimator,MINE)来获取该互信息损失,本申请对互信息损失的具体计算方法不做严格限定。
步骤603:根据任务损失和互信息损失,训练神经网络。
如前所述,神经网络的训练过程其实是根据损失函数的值调整权重向量的过程。这里的任务损失所表征的就是基于训练数据提取出的域不变特征能够完成任务的能力。如果该域不变特征还不能足够精准地与实例对应,那么任务损失的值就会比较大,此时就需要调整该神经网络中的权重向量以使得域不变特征能够在下一次预测过程中获得更低的任务损失。通过训练的迭代,域不变特征提取器所提取到的域不变特征也就会越来越精准地与实例对应。
根据互信息损失训练神经网络的过程可以是训练神经网络以减小域不变特征和域特定特征之间互信息损失的过程,例如,最小化该互信息损失。为了保证域不变特征能够更精准地与实例对应,可以计算域不变特征和域特定特征之间的互信息损失,并使用该互信息损失来进一步提高域不变特征提取的精确性。
由于互信息损失表征的是域不变特征和域特定特征的相关性,因此根据该互信息损失来调整该神经网络的权重向量,可使得提取到的域不变特征能够更好的与域特定特征区分开,起到迫使特征解耦的作用。如果该互信息损失较大,则说明目前域不变特征和域特定特征之间是较为相关的,即,目前域不变特征提取器所提取到的特征中很可能还是包括了域特定特征的信息内容,此时则需要调整该神经网络的权重向量以减小该互信息损失。
由于域不变特征的提取在基于任务损失的训练过程中会得到训练,域不变特征提取器所提取出的特征可能会与任务有一定相关性,因此基于互信息损失的训练过程也可被视作将域特定特征从域不变特征中“剔除”的过程,使得域不变特征提取器所提取到的特征随着训练的迭代越来越与实例一致,同时也使得域特定特征提取器所提取到的特征随着训练的迭代越来越与实例不相关,从而实现了对于域不变特征和域特定特征的特征解耦。由此可见,由于随着训练过程的迭代,域特定特征提取器所提取到的特征也会越来越与实例不相关,即越来越贴近于表征领域本身特有的特征,因此域特定特征提取器在这个基于互信息损失的训练过程中也是得到了训练的。
应当理解,上述基于任务损失的训练过程和基于互信息损失的训练过程并不一定是同时进行的,在本申请一实施例中,基于互信息损失的训练过程也可以是在基于任务损失的训练过程开始之后进行的,本申请对这两个训练过程的具体执行顺序不做严格限定。
本申请通过根据任务损失和互信息损失来训练神经网络,不仅可使得分解出的域不变特征更加精准的与实例对应,还可在训练的过程中减少域不变特征和域特定特征之间的互信息损失,以促进域不变特征和域特定特征的完全解耦,进一步降低域特定特征对域不变特征的影响。
应当理解,虽然上面以互信息损失为例表征了域不变特征和域特定特征的相关性,在本申请的其他实施例中,也可采用其他形式的损失信息来表征域不变特征和域特定特征的相关性;然后基于根据任务损失和该其他形式的损失信息训练神经网络,以使得提取到的域不变特征能够更好的与域特定特征区分开,起到迫使特征解耦的作用。在本申请一实施例中,可以计算域不变特征和域特定特征之间的如下损失信息中的一种或多种组合:互信息损失、度量损失(例如,L1距离或L2距离)、衡量数据分布的损失(例如KL(kullback-leibler)散度)和瓦瑟斯坦(wasserstein)距离。本申请对该用于表征域不变特征和域特定特征之间的相关性的损失信息的形式不做严格限定。
在本申请一实施例中,该神经网络可用于进行域自适应学习,训练数据可来自不同领域(例如,不同风格)的图像数据,例如照片写实风格、漫画风格等。通过提取不同风格的图像数据的域不变特征和域特定特征,并基于使用域不变特征执行任务得到的任务损失对神经网络进行训练,使得域不变特征能够与域特定特征解耦。由于使用域不变特征来执行任务,本申请的训练方法得到的神经网络可通过域自适应学习以自行适应对于多种不同领域图像的处理任务,例如目标检测/识别/分割等,从而实现对不同领域的图像数据的自适应处理。
虽然在上面的描述中提到,域特定特征提取器在基于互信息损失的训练过程中也会得到训练,但考虑到当域特定特征提取器对于域特定特征的提取精度被提高时,基于互信息损失的训练过程可以有效地将域特定特征和域不变特征区分开,域不变特征的提取精度也会间接地得到进一步提升。因此有必要进一步提升域特定特征的提取精度,以通过基于互信息损失的训练过程来间接地提高域不变特征提取器的提取精度。
在本申请的一些实施例中,可将域特定特征提取器提取出的域特定特征进行域分类,得到域分类损失,然后根据任务损失、互信息损失和域分类损失来训练神经网络。
例如图9所示,域特定特征提取器后面可连接域分类器(domain classifier),在特征提取器和域分类器之间还设置梯度反转层(GRL)。域特定特征提取器提取出的域特定特征输入到域分类器中分辨该域特定特征是否真的是域特有的特征,以获得域分类损失,该域分类损失表征的其实是域特定特征提取器提取结果的准确程度;然后该域分类损失在向域特定特征提取器的反向传播过程中会经过梯度反转层,以使得域分类损失在反向传播过程中的梯度方向自动取反,以“混淆”域特定特征提取器。由于域分类损失在反向传播的过程中会被自动取反,因此域分类器的目标其实在于混淆域特定特征提取器;而特定特征提取器的目标则是确保提取出的特征是域特有的特征,通过域分类器和域特定特征提取器之间的这种对抗策略,以最终达到提高域特定特征提取器提取域特定特征的精度的目的。
本申请通过引入域分类损失,有助于从训练数据的特征中提取域不变特征。
在本申请一实施例中,为了进一步促使解耦出的域不变特征和域特定特征能够包含训练数据的全部特征信息,以提高特征解耦的完整性和合理性,可以先从训练数据中提取初始特征,将该初始特征分解成域不变特征和域特定特征,然后训练神经网络,以减小初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异。
具体而言,如图9所示,域特定特征和域不变特征在被提取出来后,可使用域不变特征和域特定特征对初始特征进行重建,得到重建特征,然后比较初始特征和该重建特征,以确定初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异,即重建损失(reconstruction loss);然后使用该重建损失来训练神经网络,以使得域不变特征所提取出的域不变特征和域特定特征提取器所提取出的域特定特征能够更好地覆盖训练数据的特征信息。
本申请通过减小初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异,可使得解耦出的域不变特征和域特定特征能够包含训练数据的全部特征信息,以提高特征解耦的完整性和合理性。
下面结合图10和图11来进一步描述本申请实施例的域不变特征和域特定特征的提取过程。
图10为本申请一实施例提供的神经网络的结构示意图。如图10所示,该神经网络包括第一解耦器U1和第二解耦器U2,通过第一解耦器U1和第二解耦器U2的共同作用来完成域不变特征和域特定特征的提取过程。图11为本申请一实施例提供的基于图10所示神经网络架构的域不变特征和域特定特征的提取流程示意图。如图11所示,该域不变特征和域特定特征的提取过程可包括如下步骤:
步骤1101:从训练数据中提取训练数据的第一特征。
如图10所示,神经网络中包括特征提取器特征提取器用于具体完成从训练数据中提取第一特征第一特征为后续进行域不变特征增强的特征基础。应当理解,第一特征中的限定词“第一”意味着特征提取器是对训练数据进行了“初步”特征提取结果,例如当训练数据是图像数据时,该第一特征其实是对图像纹理层面进行特征提取得到的结果。
步骤1102:采用第一解耦器U1从第一特征中提取初步域不变特征和初步域特定特征。
在本申请一实施例中,如图10所示,可使用互信息损失训练该第一解耦器U1,以保证初步域不变特征和初步域特定特征的提取精度。如前所述,互信息(mutualinfbrmation,MI)损失表征的是两个变量的相互依赖性,这里的互信息损失表征的是初步域不变特征和初步域特定特征之间的差异。因此根据该互信息损失来调整该第一解耦器U1中网络结构的权重向量可使得提取到的初步域不变特征能够更好的与初步域特定特征区分开,起到迫使特征解耦的作用。如果该互信息损失较大,则说明目前初步域不变特征和初步域特定特征是较为相关的,即,目前域不变特征提取器所提取到的特征中很可能还是包括了初步域特定特征的信息内容,此时则需要调整该第一解耦器U1的网络结构的权重向量以减小该互信息损失。
在本申请一实施例中,如图10所示,为了进一步提高初步域不变特征的提取精度,在第一解耦器U1中也可使用域分类器(domain classifier)和梯度反转层(GRL)。通过域分类器和域特定特征提取器之间的对抗策略,以提高域特定特征提取器对于初步域特定特征的提取精度,从而结合互信息损失的训练过程来间接地达到提高初步域不变特征的提取精度的目的。
步骤1103:将初步域不变特征与第一特征融合,得到第二特征。
应当理解,特征融合的具体方式可根据实际应用场景的需求进行选择。例如,可以在保持通道数不变的基础上,将初步域不变特征与第一特征进行叠加,以形成通道数不变的第二特征;也可将初步域不变特征与第一特征以连接的方式“拼接”,形成通道数增加的第二特征。本申请对该融合过程的具体实现方式并不做严格限定。
由于初步域不变特征中包括了与实例对应的域不变特征信息,因此将该初步域不变特征与第一特征融合,实现了在第一特征层面的域不变特征的数据增强,从而使得第一特征中能够包括了更多的域不变特征信息,因而使得训练完毕的神经网络能够更好的适应实际应用场景中的领域差异。
步骤1104:从第二特征中提取训练数据的第三特征。
如图10所示,神经网络中还包括特征提取器特征提取器用于具体完成从第二特征F1中提取第三特征第三特征则作为后续域不变特征和域特定特征的提取基础。应当理解,第三特征中的限定词“第三”则意味着第三特征是基于包括了第一特征的第二特征提取的,同时这种提取过程也会更为精细,例如当训练数据是图像数据时,第三特征则可能是提取的表征图像语义层面的特征图。该特征提取过程可通过如下公式(6)表示:
步骤1105:采用第二解耦器U2从第三特征中提取域不变特征和域特定特征。
如图10所示,在获得了域不变特征后,便可使用域不变特征执行任务以得到任务损失(task loss),并计算域不变特征和域特定特征之间的互信息(mutualinfbrmation,MI)损失。如前所述,将域不变特征用于执行任务并获得任务损失,可提高域不变特征对于与任务相关的实例表征的准确性和完整性。同时,为了保证域不变特征能够更精准地与实例对应,在训练的过程中还可以计算域不变特征和域特定特征之间的互信息损失,并使用该互信息损失来进一步提高域不变特征提取的精确性。在本申请一实施例中,在该基于任务损失和互信息损失对于神经网络的训练过程中,第一解耦器U1中用于提取初步域不变特征的域不变特征提取器和/或用于提取初步域特定特征的域特定特征提取器也可参与该训练过程中的调参过程,以此来保证第一解耦器U1对于初步域不变特征的提取精度,从而进一步改进第一解耦器U1所实现的域不变特征的数据增强效果。
在本申请一实施例中,如图10所示,为了进一步提高域不变特征的提取精度,在第二解耦器U2中也可使用域分类器和梯度反转层。通过域分类器和域特定特征提取器之间的对抗策略,以提高域特定特征提取器对于域特定特征的提取精度,从而结合基于互信息损失的训练过程来间接达到提高域不变特征的提取精度目的。
在本申请一实施例中,为了进一步促使解耦出的域不变特和和域特定特征能够包含训练数据的全部特征信息,以提高特征解耦的完整性和合理性,可训练神经网络,以减小第三特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异。具体而言,如图10所示,域不变特征和域特定特征在被提取出来后,可使用域不变特征和域特定特征对第三特征进行重建,得到重建特征,然后比较第三特征和该重建特征,以确定第三特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异,即重建损失(reconstruction loss)。在本申请一实施例中,重建损失的计算过程可通过如下公式(8)表示:
其中,R表示重建网络,Fr是重建之后的特征,Lrecon是重建损失,体现为重建特征Fr与第三特征的L2距离。该重建损失被用来训练神经网络,以使得域不变特征和域特定特征能够更好地覆盖训练数据的特征信息。
应当理解,虽然在前面的描述中采用了“第一”、“第二”和“第三”这样的限定词,但这些限定词仅用于更清楚地阐述技术方案和区分类似的概念。这些限定词本身并不能用于限定本申请的保护范围。
由此可见,本申请实施例可以采用“双层域不变特征解耦”的理念来训练神经网络来提取域不变特征。通过先获取第一特征,并基于第一解耦器U1解耦出初步域不变特征,将该初步域不变特征与第一特征融合以获取第二特征,使得域不变特征信息在第一特征的层面上得到了增强。然后再使用该第二特征基于第二解耦器U2解耦出域不变特征,域不变特征的解耦精度得到进一步增强,可使得训练出的神经网络的任务执行性能更强,域适应能力也更优。
上文结合图10和图11,详细描述了与神经网络有关的训练过程。从图10和图11的描述可以看出,在某些实现方式中,神经网络的训练过程可以包括:(1)与任务损失和域分类损失有关的训练;(2)与互信息损失有关的训练;(3)与重建损失有关的训练。
上述三种训练可以同时进行,也可以分阶段进行,本申请实施例对此并不限定。下面结合图12,对以上三种训练的训练顺序进行举例说明。
如图12所示,可以将神经网络的训练过程依次分为如下三个阶段。
第一阶段:控制神经网络执行与任务损失和域分类损失有关的训练,该训练阶段旨在让神经网络学习从训练数据中分解出域不变特征和域特定特征的能力,因此,该第一阶段也可称为特征分解阶段(简称stage-fd,fd表示feature decomposition)。
第二阶段:控制神经网络执行与互信息损失有关的训练,该训练阶段旨在让第一神经网路学习增大域不变特征和域特定特征之间差异的能力,因此,该第二阶段也可称为特征分解阶段(简称stage-fs,fs表示feature separation)。在第二阶段,可以将图10中的参数固定,或者可以将图10中的和的参数固定。
第三阶段:控制神经网络执行与重建损失有关的训练,该训练阶段旨在让神经网络分解出的域不变特征和域特定特征能够尽量包含初始特征中的全部信息,因此,该第三阶段也可称为特征重建阶段(简称stage-fr,fr表示feature reconstruction)。
将神经网络的训练过程分阶段进行,可以简化每个阶段的训练量,加快神经网络的参数的收敛速度。
图13所示为本申请一实施例提供的一种神经网络的结构示意图。该神经网络通过使用本申请上述实施例所提供的训练方法训练完成,如图13所示,该神经网络130包括:
第一特征提取层1301,用于基于输入数据提取第一特征。
第一域不变特征解耦层1302,用于基于第一特征提取第一域不变特征。
特征融合层1303,用于融合第一特征和第一域不变特征,以获取第二特征。
第二特征提取层1304,用于基于第二特征提取第三特征。
第二域不变特征解耦层1305,用于基于第三特征提取第二域不变特征。
第一域不变特征和第二域不变特征分别为表征输入数据所属的领域的特征,第一域特定特征和第二域特定特征分别为与输入数据所属领域无关的特征。
由此可见,虽然在图10和图11所示的训练过程中,通过提取域特定特征以计算互信息损失和域分类损失,使得神经网络具备了分解域不变特征和域特定特征的能力,但如图13所示的训练好的神经网络在实际的使用过程中,其实是不需要提取域特定特征的。通过第一特征提取层1301提取出第一特征后,基于该第一特征提取到第一域不变特在,并通过与第一特征融合以实现域不变特征增强;然后再基于该第二特征进一步提取第二域不变特征,提取出的第二域不变特征可准确地与实例对应,从而使得神经网络在执行具体任务时性能更强,域适应能力也更优。
在本申请一实施例中,考虑到在域自适应学习的场景中,传统的训练数据往往来自源域和/或目标域,而域自适应学习其实解决的是神经网络的跨域迁移能力,要提高神经网络的域泛化能力不仅要基于源域的特征信息去训练,也需要基于目标域的特征信息去训练,因此可在训练神经网络时,在训练数据中加入介于源域和目标域之间的中间域的训练数据。通过生成位于中间域的训练数据,以填补源域和目标域之间的“领域鸿沟”,缓解源域的训练数据和目标域的训练数据的分布差异大的问题。
图14为本申请一实施例提供的获取中间域的数据的流程示意图。图15为本申请一实施例提供的获取中间域的数据的原理示意图。如图14和图15所示,该获取中间域的数据的过程可包括如下步骤:
步骤1401:获取源域的数据和/或目标域的数据。
源域和目标域为数据特征存在差异的两个领域,中间域与源域和目标域中的任一领域之间的数据特征的差异小于源域和目标域之间的数据特征的差异。中间域的数据其实是在源域的数据和/或目标域的数据的基础上添加扰动来生成的,因此要首先获取源域的数据和/或目标域的数据。
步骤1402:将源域的数据和/或目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息。
由于要生成的为与源域和目标域之间的中间域的数据,因此需要获取损失函数的梯度信息来指导后续的扰动过程来生成中间域的数据。
步骤1403:根据梯度信息,对源域的数据和/或目标域的数据进行扰动,得到中间域的数据。
在源域的数据或目标域的数据上进行扰动以生成新的数据,这些新生成的数据便可用作中间域的数据。
在本申请中,源域和目标域之间的方向信息的引入使得数据的扰动更有针对性,通过扰动获得的中间域的数据能够填补源域和目标域之间的“领域鸿沟”,缓解源域的数据和目标域的数据的分布差异大的问题。在本申请一实施例中,可使用源域的数据、目标域的数据和中间域的数据作为训练数据训练神经网络,这样训练出的神经网络可具备更好的域适应性。
在本申请一实施例中,如图15所示,可以将源域的带有标签的数据Xs输入神经网络TNet,进行训练以获取损失函数的梯度信息。
具体地,该神经网络TNet是基于目标域的带有标签的数据Xl训练生成的,可包括特征提取器FT和分类器CT。在训练的过程中,特征提取器FT提取出的特征信息PT被输入到分类器CT中,以获得分类任务的交叉熵损失Lce来指导TNet的调参过程。由于该神经网络TNet是基于输入的Xl计算任务损失并调整网络参数得到的,因此该神经网络TNet其实是更适用于目标域的,这样,将Xs输入神经网络TNet便会产生从源域到目标域的第一梯度信息。此时,将Xs作为可优化的对象,根据任务损失反向传播的第一梯度信息,在Xs上叠加一定幅度的梯度扰动,叠加了这种从源域到目标域的扰动之后的新样本可用作中间域数据,如图15中AAT所示。
在本申请中,神经网络TNet是由目标域的带有标签的数据训练生成的,因此,将源域的带有标签的数据输入该神经网络之后得到的反向传播的第一梯度信息可以很好地衡量从源域到目标域的方向。
在本申请另一实施例中,如图15所示,可以将目标域的没有标签的数据Xu输入神经网络HNet,由于Xu是没有标签的,因此可采用虚拟对抗训练的方式来获取梯度信息。
具体地,该神经网络HNet可以是基于源域的带有标签的数据Xs训练生成的。与TNet的架构类似,HNet可包括特征提取器FH和分类器CH,在训练的过程中,特征提取器FH提取出的特征信息PH被输入到分类器CH中,以获得分类任务的交叉熵损失Lce来指导HNet的调参过程。Xs输入HNet以计算任务损失,并根据任务损失更新HNet的网络参数。在一进一步实施例中,目标域的带有标签的数据Xl也可与源域的带有标签的数据Xs一起用于训练神经网络HNet,以进一步提高神经网络HNet执行任务的精度。
无标签的目标域的数据Xu输入HNet之后,使用虚拟对抗训练的方法生成预测的虚拟标签,基于该虚拟标签计算任务损失,并依据任务损失反向传播的第二梯度信息在Xu上产生一定幅度的梯度扰动,叠加这种从目标域到源域的扰动之后的新样本可用作中间域数据,如图15中的E-VAT所示。
在本申请中,神经网络HNet是由源域的带有标签的数据和目标域的带有标签的数据训练生成的,因此,将目标域的没有标签的数据输入该神经网络之后经过虚拟对抗训练得到的反向传播的第二梯度信息可以很好地衡量从目标域到源域的方向。
在本申请另一实施例中,当源域的数据和目标域的数据都带有标签时,也可以是将目标域的带有标签的数据Xl输入一个辅助神经网络,以获取损失函数的梯度信息。
该辅助神经网络是基于源域的带有标签的数据Xs训练生成的。由于该辅助神经网络是基于输入的Xs计算任务损失并调整网络参数得到的,因此该辅助神经网络其实是更适用于源域的,将Xl输入该辅助神经网络便会产生从目标域到源域的梯度信息。此时,将Xl作为可优化的对象,根据任务损失反向传播的梯度信息,在Xl上叠加一定幅度的梯度扰动,叠加这种从目标域到源域的扰动之后的新样本也可用作中间域数据。
由此可见,图15所示的实施例其实提出了一种“双向对抗训练”的方式来生成中间域的数据,即使用网络的梯度信息指导样本的扰动方向,将叠加扰动后生成的样本作为中间域的数据。例如图16所示,圆形和三角形代表不同的样本类别,可使用梯度信息获取从源域到目标域的扰动方向(如图16中从左向右的箭头方向所示),然后在源域的数据上添加扰动以生成中间域的数据;同时,也可使用梯度信息获取从目标域到源域的扰动方向(如图16中从右向左的箭头方向所示),然后在目标域的数据上添加扰动以生成中间域的数据。具体而言,可通过训练得到的辅助网络给出从源域到目标域或从目标域到源域的梯度方向,并使用该梯度方向对源域的数据或目标域的数据进行扰动以生成对抗样本;也可使用虚拟对抗训练的方式产生目标域到源域的对抗样本,从而双向地在源域和目标域的“领域鸿沟”中生成对抗样本,构造中间域。
然而应当理解,根据域自适应学习的场景不同,也可仅获取叠加了从源域到目标域的扰动的数据作为中间域的数据,或仅获取叠加了从目标域到源域的扰动的数据作为中间域的数据。例如在无监督学习的场景下,目标域的数据并没有标签,这样也就无法基于目标域的带有标签的数据Xl训练神经网络TNet,这种情况下便仅获取叠加了从目标域到源域的扰动的数据作为中间域的数据即可。
在本申请一实施例中,可将获取到的中间域的数据,连同源域的数据和目标域的数据一起输入到图9所示的神经网络中,并通过本申请实施例所提供的训练神经网络的方式训练该神经网络,从而实现“双向对抗训练”和“双层域不变特征解耦”的结合。由于特征解耦的数据中包括了中间域的数据,可有效地对源域的数据和目标域的数据进行补足,缩小了源域和目标域之间的差异,使用中间域的数据作为训练数据进行特征解耦的训练,能够很好地提升的域不变特征解耦能力,使得训练出的神经网络的域泛化性能和跨域迁移能力得到更显著地提升。
在本申请一实施例中,为了进一步提高所训练出的神经网络在执行任务时的鲁棒性,如图15所示,在基于源域的带有标签的数据Xs训练生成的神经网络HNet后,还可在Xs附近产生随机的噪声扰动,并将这些噪声扰动对应叠加到Xs上以生成邻域内的对抗样本。并将该邻域的对抗样本也作为训练数据的一部分输入到该神经网络中进行训练。在本申请一实施例中,该邻域内的对抗样本可被输入HNet,HNet中的特征提取器FH基于该邻域内的对抗样本提取出的特征图被输入到分类器CH中,以获得分类任务的交叉熵损失Lat来指导HNet的网络参数的调整过程,从而使得HNet得到进一步的训练。在一进一步实施例中,当目标域的带有标签的数据Xl也参与了对神经网络HNet的训练时,也可在Xl附近产生随机的噪声扰动,并将这些噪声扰动对应叠加到Xl上以补充邻域内的对抗样本。
由此可见,本申请的实施例还可以基于源域和目标域的数据生成邻域内的对抗样本,以有效地对源域和目标域的数据进行补足,缩小了源域和目标域之间的差异,使得训练出的神经网络的域泛化性能和跨域迁移能力得到进一步提升。
图17为本申请一实施例提供的一种数据处理系统的结构示意图。如图17所示该数据处理系统170用于训练神经网络,包括:数据获取网络1701和特征解耦网络1702。
数据获取网络1701用于基于第一数据获取损失函数的梯度信息,并根据梯度信息对输入数据进行扰动以获取第二数据,通过获取填补第一数据的“领域鸿沟”的对抗样本作为新的第二数据,以使得训练的过程能够具备更好的域适应性。
特征解耦网络1702用于根据包括第二数据的训练数据来训练神经网络,以使得神经网络从训练数据中学习分解域不变特征和域特定特征。
在本申请一实施例中,特征解耦网络1702包括:第一特征提取层17021,用于基于训练数据提取第一特征;第一域不变特征提取层17022,用于基于第一特征提取第一域不变特征;第一域特定特征提取层17023,用于基于第一特征提取第一域特定特征;第一互信息损失获取层17024,用于基于第一域不变特征和第一域特定特征获取第一互信息损失;特征融合层17025,用于融合第一特征和第一域不变特征,以获取第二特征;第二特征提取层17026,用于基于第二特征提取第三特征;第二域不变特征解耦层17027,用于基于第三特征提取第二域不变特征;第二域特定特征提取层17028,用于基于第三特征提取第二域特定特征;第二互信息损失获取层17029,用于基于第二域不变特征和第二域特定特征获取第二互信息损失;任务损失获取层17030,用于使用第二域不变特征执行任务以获取任务损失。
在本申请一实施例中,该数据处理系统170可进一步包括:第一域分类器17031,用于基于第一域特定特征执行分类任务以获取第一分类损失;第一梯度反转层17032,用于将第一分类损失的梯度信息取反;
和/或,该数据处理系统170可进一步包括:第二域分类器17033,用于基于第二域特定特征执行分类任务以获取第二分类损失;第二梯度反转层17034,用于将第二分类损失的梯度信息取反。
在本申请一实施例中,该数据处理系统170可进一步包括:重建损失获取层17035,用于使用第二域不变特征和第二域特定特征对第三特征进行重建,得到重建特征;比较第三特征和重建特征,以获取重建损失。
在本申请一实施例中,第一数据包括源域的数据和/或目标域的数据。数据获取网络1701包括:基于目标域的带有标签的数据训练生成的第一训练网络;和/或,基于带有标签的数据训练生成的第二训练网络。在本申请一实施例中,第一训练网络或第二训练网络可包括特征提取器和分类器。在训练的过程中,特征提取器提取出的特征信息被输入到分类器中,以获得分类任务的交叉熵损失来指导第一训练网络或第二训练网络的调参过程。
上述数据处理系统170中的各个模块的具体功能和操作已经在上面描述的神经网络的训练方法中进行了详细介绍,因此,这里将省略其重复描述。
由此可见,图17所示的数据处理系统170实现了“对抗训练填补领域鸿沟”和“双层域不变特征解耦”的结合。由于特征解耦的训练数据中包括了可填补第一数据的领域鸿沟的数据,可有效地对原有训练数据进行补足,缩小了不同领域的训练数据之间的差异,使用数据获取网络输出的数据进行特征解耦的训练,能够很好地提升的域不变特征解耦能力,使得训练出的神经网络的域泛化性能和跨域迁移能力得到更显著地提升。
图18为本申请一实施例提供的神经网络的训练装置的结构示意图。如图18所示,该神经网络的训练装置180包括:
获取模块1801,配置为获取训练数据;
训练模块1802,配置为使用训练数据对神经网络进行训练,使得神经网络从训练数据中学习分解域不变特征和域特定特征。
本申请实施例所提供的神经网络的训练装置180,通过从训练数据中分解域不变特征和域特定特征,由于本申请的训练方法得到的神经网络使用域不变特征来执行任务,这样避免了域特定特征对于神经网络的影响,从而提升了神经网络在不同领域之间的迁移性能。
在本申请一实施例中,训练模块1802配置为,从训练数据中分解出域不变特征和域特定特征;使用域不变特征执行任务,得到任务损失,并计算域不变特征和域特定特征之间的互信息损失,互信息损失用于表示域不变特征和域特定特征之间的差异;根据任务损失和互信息损失,训练神经网络。
在本申请一实施例中,训练模块1802进一步配置为,使用域特定特征进行域分类,得到域分类损失;根据任务损失、互信息损失和域分类损失训练神经网络。
在本申请一实施例中,训练模块1802进一步配置为,从训练数据中提取初始特征;将初始特征分解成域不变特征和域特定特征;训练神经网络,以减小初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异。
在本申请一实施例中,训练模块1802配置为,使用域不变特征和域特定特征对初始特征进行重建,得到重建特征;比较初始特征和重建特征,以确定初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异。
在本申请一实施例中,训练模块1802进一步配置为,使用域不变特征和域特定特征对初始特征进行重建,得到重建特征,其中域不变特征和域特定特征是从初始特征中分解出的特征;比较初始特征和重建特征以获取重建损失,重建损失用于表征初始特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异,
其中,训练模块配置为,根据任务损失对神经网络进行第一阶段的训练;根据互信息损失对神经网络进行第二阶段的训练;根据重建损失对神经网络进行第三阶段的训练。
在本申请一实施例中,神经网络包括第一解耦器和第二解耦器,训练模块1602配置为,从训练数据中提取训练数据的第一特征;采用第一解耦器从第一特征中提取初步域不变特征和初步域特定特征;将初步域不变特征与第一特征融合,得到第二特征;从第二特征中提取训练数据的第三特征;采用第二解耦器从第三特征中提取域不变特征和域特定特征。
在本申请一实施例中,训练模块1802进一步配置为,训练神经网络,以减小第三特征所包含的信息与域不变特征和域特定特征共同包含的信息之间的差异。
图19为本申请一实施例提供的数据获取装置的结构示意图。如图19所示,该数据获取装置190包括:
数据获取模块1901,配置为获取源域的数据和/或目标域的数据;其中,源域和目标域为数据特征存在差异的两个领域,中间域与源域和目标域中的任一领域之间的数据特征的差异小于源域和目标域之间的数据特征的差异;
梯度信息获取模块1902,配置为将源域的数据和/或目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息;
中间域数据生成模块1903,配置为根据梯度信息,对源域的数据和/或目标域的数据进行扰动,得到中间域的数据。
在本申请一实施例中,梯度信息获取模块1902配置为,将源域的带有标签的数据输入第一神经网络,进行训练,得到第一梯度信息,其中,第一神经网络是基于目标域的带有标签的数据训练生成的。
在本申请一实施例中,梯度信息获取模块1902配置为,将目标域的没有标签的数据输入第二神经网络,以虚拟对抗训练的方式进行训练,得到第二梯度信息,其中,第二神经网络是基于带有标签的数据训练生成的。
上述神经网络的训练装置180/190中的各个模块的具体功能和操作已经在上面描述的神经网络的训练方法中进行了详细介绍,因此,这里将省略其重复描述。
图20为本申请一实施例提供的神经网络的训练装置的硬件结构示意图。图20所示的神经网络的训练装置2000(该装置2000具体可以是一种计算机设备)包括存储器2001、处理器2002、通信接口2003以及总线2004。其中,存储器2001、处理器2002、通信接口2003通过总线2004实现彼此之间的通信连接。
存储器2001可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器2001可以存储程序,当存储器2001中存储的程序被处理器2002执行时,处理器2002和通信接口2003用于执行本申请实施例的神经网络的训练方法的各个步骤。
处理器2002可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的神经网络的训练装置中的单元所需执行的功能,或者执行本申请方法实施例的神经网络的训练方法。
处理器2002还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的神经网络的训练方法的各个步骤可以通过处理器2002中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2002还可以是通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器2001,处理器2002读取存储器2001中的信息,结合其硬件完成本申请实施例的神经网络的训练装置中包括的单元所需执行的功能,或者执行本申请方法实施例的神经网络的训练方法。
通信接口2003使用例如但不限于收发器一类的收发装置,来实现装置2000与其他设备或通信网络之间的通信。例如,可以通过通信接口2003获取训练数据。
总线2004可包括在装置2000各个部件(例如,存储器2001、处理器2002、通信接口2003)之间传送信息的通路。
应理解,神经网络的训练装置180中的获取模块1801和训练模块1802,或神经网络的训练装置190中的数据获取模块1901、梯度信息获取模块1902、中间域数据生成模块1903、和训练执行模块1904可以相当于处理器2002。
应注意,尽管图20所示的装置2000仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,装置2000还包括实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当理解,装置2000还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,装置2000也可仅仅包括实现本申请实施例所必须的器件,而不必包括图20中所示的全部器件。
可以理解,所述装置2000相当于图2中的所述训练设备220。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (31)
1.一种神经网络的训练方法,其特征在于,包括:
获取训练数据;
使用所述训练数据对神经网络进行训练,使得所述神经网络从所述训练数据中学习分解域不变特征和域特定特征;
其中,所述域特定特征为表征所述训练数据所属的领域的特征,所述域不变特征为与所述训练数据所属领域无关的特征。
2.根据权利要求1所述的方法,其特征在于,所述使用所述训练数据对神经网络进行训练包括:
从所述训练数据的特征中分解出域不变特征和域特定特征;
使用所述域不变特征执行任务,得到任务损失,并计算所述域不变特征和所述域特定特征之间的互信息损失,所述任务损失用于表征使用所述域不变特征执行任务所得到的结果与任务标签之间的差距,所述互信息损失用于表示所述域不变特征和所述域特定特征之间的差异;
根据所述任务损失和所述互信息损失,训练所述神经网络。
3.根据权利要求2所述的方法,其特征在于,还包括:
使用所述域特定特征进行域分类,得到域分类损失;
其中,所述根据所述任务损失和所述互信息损失,训练所述神经网络,包括:
根据所述任务损失、所述互信息损失和所述域分类损失训练所述神经网络。
4.根据权利要求2或3所述的方法,其特征在于,所述从所述训练数据的特征中分解出域不变特征和域特定特征,包括:
从所述训练数据中提取初始特征;
将所述初始特征分解成所述域不变特征和所述域特定特征,
其中,所述方法,还包括:
训练所述神经网络,以减小所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
5.根据权利要求4所述的方法,其特征在于,在所述训练所述神经网络,以减小所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异之前,还包括:
使用所述域不变特征和所述域特定特征对所述初始特征进行重建,得到重建特征;
比较所述初始特征和所述重建特征,以确定所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
6.根据权利要求2所述的方法,其特征在于,还包括:
使用所述域不变特征和所述域特定特征对初始特征进行重建,得到重建特征,其中所述域不变特征和所述域特定特征是从所述初始特征中分解出的特征;
比较所述初始特征和所述重建特征以获取重建损失,所述重建损失用于表征所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异,
其中,所述根据所述任务损失和所述互信息损失,训练所述神经网络,包括:
根据所述任务损失,对所述神经网络进行第一阶段的训练;
根据所述互信息损失,对所述神经网络进行第二阶段的训练,
其中,所述方法还包括:
根据所述重建损失,对所述神经网络进行第三阶段的训练。
7.根据权利要求2或3所述的方法,其特征在于,所述神经网络包括第一解耦器和第二解耦器,所述从所述训练数据的特征中分解出域不变特征和域特定特征,包括:
从所述训练数据中提取所述训练数据的第一特征;
采用所述第一解耦器从所述第一特征中提取初步域不变特征和初步域特定特征;
将所述初步域不变特征与所述第一特征融合,得到第二特征;
从所述第二特征中提取所述训练数据的第三特征;
采用第二解耦器从所述第三特征中提取所述域不变特征和所述域特定特征。
8.根据权利要求7所述的方法,其特征在于,还包括:
训练所述神经网络,以减小所述第三特征所包含的信息与所述域不变特征和所述域特定特征共同所包含的信息之间的差异。
9.根据权利要求1至8中的任一项所述的方法,其特征在于,所述神经网络用于进行域自适应学习,所述训练数据包括不同领域的图像数据。
10.一种数据获取方法,其特征在于,包括:
获取源域的数据和/或目标域的数据;
将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息;
根据所述梯度信息,对所述源域的数据和/或所述目标域的数据进行扰动,得到中间域的数据;
其中,所述源域和所述目标域为数据特征存在差异的两个领域,所述中间域与所述源域和所述目标域中的任一领域之间的数据特征的差异小于所述源域和所述目标域之间的数据特征的差异。
11.根据权利要求10所述的方法,其特征在于,所述将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息,包括:
将所述源域的带有标签的数据输入第一神经网络,进行训练,得到第一梯度信息,其中,所述第一神经网络是基于所述目标域的带有标签的数据训练生成的。
12.根据权利要求10所述的方法,其特征在于,所述将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息,包括:
将所述目标域的没有标签的数据输入第二神经网络,以虚拟对抗训练的方式进行训练,得到第二梯度信息,其中,所述第二神经网络是基于带有标签的数据训练生成的。
13.一种神经网络的训练装置,其特征在于,包括:
获取模块,配置为获取训练数据;
训练模块,配置为使用所述训练数据对神经网络进行训练,使得所述神经网络从所述训练数据中学习分解域不变特征和域特定特征;
其中,所述域特定特征为表征所述训练数据所属的领域的特征,所述域不变特征为与所述训练数据所属领域无关的特征。
14.根据权利要求13所述的装置,其特征在于,所述训练模块配置为,从所述训练数据的特征中分解出域不变特征和域特定特征;使用所述域不变特征执行任务,得到任务损失,并计算所述域不变特征和所述域特定特征之间的互信息损失,所述任务损失用于表征使用所述域不变特征执行任务所得到的结果与任务标签之间的差距,所述互信息损失用于表示所述域不变特征和所述域特定特征之间的差异;根据所述任务损失和所述互信息损失,训练所述神经网络。
15.根据权利要求14所述的装置,其特征在于,所述训练模块进一步配置为,使用所述域特定特征进行域分类,得到域分类损失;根据所述任务损失、所述互信息损失和所述域分类损失训练所述神经网络。
16.根据权利要求14或15所述的装置,其特征在于,所述训练模块进一步配置为,从所述训练数据中提取初始特征;将所述初始特征分解成所述域不变特征和所述域特定特征;训练所述神经网络,以减小所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同所包含的信息之间的差异。
17.根据权利要求16所述的装置,其特征在于,所述训练模块配置为,使用所述域不变特征和所述域特定特征对所述初始特征进行重建,得到重建特征;比较所述初始特征和所述重建特征,以确定所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
18.根据权利要求17所述的装置,其特征在于,所述训练模块进一步配置为,使用所述域不变特征和所述域特定特征对初始特征进行重建,得到重建特征,其中所述域不变特征和所述域特定特征是从所述初始特征中分解出的特征;比较所述初始特征和所述重建特征以获取重建损失,所述重建损失用于表征所述初始特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异,
其中,所述训练模块配置为,根据所述任务损失对所述神经网络进行第一阶段的训练;根据所述互信息损失对所述神经网络进行第二阶段的训练;根据所述重建损失对所述神经网络进行第三阶段的训练。
19.根据权利要求14或15所述的装置,其特征在于,所述神经网络包括第一解耦器和第二解耦器,所述训练模块配置为,从所述训练数据中提取所述训练数据的第一特征;采用所述第一解耦器从所述第一特征中提取初步域不变特征和初步域特定特征;将所述初步域不变特征与所述第一特征融合,得到第二特征;从所述第二特征中提取所述训练数据的第三特征;采用第二解耦器从所述第三特征中提取所述域不变特征和所述域特定特征。
20.根据权利要求19所述的装置,其特征在于,所述训练模块进一步配置为,训练所述神经网络,以减小所述第三特征所包含的信息与所述域不变特征和所述域特定特征共同包含的信息之间的差异。
21.一种数据获取装置,其特征在于,包括:
数据获取模块,配置为获取源域的数据和/或目标域的数据;
梯度信息获取模块,配置为将所述源域的数据和/或所述目标域的数据输入神经网络进行训练,以获取损失函数的梯度信息;
中间域数据生成模块,配置为根据所述梯度信息,对所述源域的数据和/或所述目标域的数据进行扰动,得到中间域的数据;
其中,所述源域和所述目标域为数据特征存在差异的两个领域,所述中间域与所述源域和所述目标域中的任一领域之间的数据特征的差异小于所述源域和所述目标域之间的数据特征的差异。
22.根据权利要求21所述的装置,其特征在于,所述梯度信息获取模块配置为将所述源域的带有标签的数据输入第一神经网络,进行训练,得到第一梯度信息,其中,所述第一神经网络是基于所述目标域的带有标签的数据训练生成的。
23.根据权利要求21所述的装置,其特征在于,所述梯度信息获取模块配置为将所述目标域的没有标签的数据输入第二神经网络,以虚拟对抗训练的方式进行训练,得到第二梯度信息,其中,所述第二神经网络是基于带有标签的数据训练生成的。
24.一种神经网络的训练装置,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行如权利要求1-9中任一项所述的神经网络的训练方法或如权利要求10至权利要求12中任一项所述的数据获取方法。
25.一种神经网络,其特征在于,包括:
第一特征提取层,用于基于输入数据提取第一特征;
第一域不变特征解耦层,用于基于所述第一特征提取第一域不变特征;
特征融合层,用于融合所述第一特征和所述第一域不变特征,以获取第二特征;
第二特征提取层,用于基于所述第二特征提取第三特征;
第二域不变特征解耦层,用于基于所述第三特征提取第二域不变特征;
其中,所述第一域不变特征和所述第二域不变特征分别为表征所述输入数据所属的领域的特征,所述第一域特定特征和所述第二域特定特征分别为与所述输入数据所属领域无关的特征。
26.一种数据处理系统,其特征在于,包括:
数据获取网络,用于基于第一数据获取损失函数的梯度信息,并根据所述梯度信息对所述第一数据进行扰动以获取第二数据;
特征解耦网络,用于使用包括所述第二数据的训练数据对神经网络进行训练,使得所述神经网络从所述训练数据中学习分解域不变特征和域特定特征;
其中,所述域特定特征为表征所述训练数据所属的领域的特征,所述域不变特征为与所述训练数据所属领域无关的特征。
27.根据权利要求26所述的数据处理系统,其特征在于,所述特征解耦网络包括:
第一特征提取层,用于基于所述训练数据提取第一特征;
第一域不变特征提取层,用于基于所述第一特征提取第一域不变特征;
第一域特定特征提取层,用于基于所述第一特征提取第一域特定特征;
第一互信息损失获取层,用于基于所述第一域不变特征和所述第一域特定特征获取第一互信息损失;
特征融合层,用于融合所述第一特征和所述第一域不变特征,以获取第二特征;
第二特征提取层,用于基于所述第二特征提取第三特征;
第二域不变特征解耦层,用于基于所述第三特征提取第二域不变特征;
第二域特定特征提取层,用于基于所述第三特征提取第二域特定特征;
第二互信息损失获取层,用于基于所述第二域不变特征和所述第二域特定特征获取第二互信息损失;
任务损失获取层,用于使用所述第二域不变特征执行任务以获取任务损失。
28.根据权利要求27所述的数据处理系统,其特征在于,进一步包括:
第一域分类器,用于基于所述第一域特定特征执行分类任务以获取第一分类损失;
第一梯度反转层,用于将所述第一分类损失的梯度信息取反;
和/或,
第二域分类器,用于基于所述第二域特定特征执行分类任务以获取第二分类损失;
第二梯度反转层,用于将所述第二分类损失的梯度信息取反。
29.根据权利要求27或28所述的数据处理系统,其特征在于,进一步包括:
重建损失获取层,用于使用所述第二域不变特征和所述第二域特定特征对所述第三特征进行重建,得到重建特征;比较所述第三特征和所述重建特征,以获取重建损失。
30.根据权利要求26至29中任一所述的数据处理系统,其特征在于,所述第一数据包括源域的数据和/或目标域的数据,其中,所述数据获取网络包括:
基于所述目标域的带有标签的数据训练生成的第一训练网络;
和/或,
基于带有标签的数据训练生成的第二训练网络。
31.一种安防设备,其特征在于,包括如权利要求25所述的神经网络。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010594053.6A CN111898635A (zh) | 2020-06-24 | 2020-06-24 | 神经网络的训练方法、数据获取方法和装置 |
PCT/CN2021/096019 WO2021258967A1 (zh) | 2020-06-24 | 2021-05-26 | 神经网络的训练方法、数据获取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010594053.6A CN111898635A (zh) | 2020-06-24 | 2020-06-24 | 神经网络的训练方法、数据获取方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111898635A true CN111898635A (zh) | 2020-11-06 |
Family
ID=73207101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010594053.6A Pending CN111898635A (zh) | 2020-06-24 | 2020-06-24 | 神经网络的训练方法、数据获取方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111898635A (zh) |
WO (1) | WO2021258967A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532746A (zh) * | 2020-12-21 | 2021-03-19 | 北京邮电大学 | 一种云边协同感知的方法及系统 |
CN112883988A (zh) * | 2021-03-19 | 2021-06-01 | 苏州科达科技股份有限公司 | 基于多数据集的特征提取网络的训练及特征提取方法 |
CN113065633A (zh) * | 2021-02-26 | 2021-07-02 | 华为技术有限公司 | 一种模型训练方法及其相关联设备 |
CN113255757A (zh) * | 2021-05-20 | 2021-08-13 | 西华大学 | 基于激活值分布差异的对抗样本检测方法及系统 |
CN113807183A (zh) * | 2021-08-17 | 2021-12-17 | 华为技术有限公司 | 模型训练方法及相关设备 |
WO2021258967A1 (zh) * | 2020-06-24 | 2021-12-30 | 华为技术有限公司 | 神经网络的训练方法、数据获取方法和装置 |
WO2022151553A1 (zh) * | 2021-01-12 | 2022-07-21 | 之江实验室 | 一种基于域-不变特征的元-知识微调方法及平台 |
WO2022242471A1 (en) * | 2021-05-17 | 2022-11-24 | Chengdu SynSense Technology Co., Ltd. | Neural network configuration parameter training and deployment method and apparatus for coping with device mismatch |
GB2608344A (en) * | 2021-01-12 | 2022-12-28 | Zhejiang Lab | Domain-invariant feature-based meta-knowledge fine-tuning method and platform |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114912516B (zh) * | 2022-04-25 | 2023-06-06 | 湖南大学无锡智能控制研究院 | 一种协调特征一致性和特异性的跨域目标检测方法及系统 |
CN115022369A (zh) * | 2022-06-09 | 2022-09-06 | 上海睿途新材料科技有限公司 | 转移镀铝纸的生产线物联系统及其物联通信方法 |
CN115310361B (zh) * | 2022-08-16 | 2023-09-15 | 中国矿业大学 | 基于wgan-cnn煤矿井下粉尘浓度预测方法和系统 |
CN115496916B (zh) * | 2022-09-30 | 2023-08-22 | 北京百度网讯科技有限公司 | 图像识别模型的训练方法、图像识别方法以及相关装置 |
CN116363421A (zh) * | 2023-03-15 | 2023-06-30 | 北京邮电大学 | 图像的特征分类方法、装置、电子设备及介质 |
CN116010805B (zh) * | 2023-03-24 | 2023-06-16 | 昆明理工大学 | 基于卷积神经网络的滚动轴承故障特征提取方法、装置 |
CN116229080B (zh) * | 2023-05-08 | 2023-08-29 | 中国科学技术大学 | 半监督域适应图像语义分割方法、系统、设备及存储介质 |
CN116485792B (zh) * | 2023-06-16 | 2023-09-15 | 中南大学 | 组织病理学亚型预测方法及成像方法 |
CN117194983B (zh) * | 2023-09-08 | 2024-04-19 | 北京理工大学 | 一种基于渐进式条件域对抗网络的轴承故障诊断方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108710896A (zh) * | 2018-04-24 | 2018-10-26 | 浙江工业大学 | 基于产生式对抗学习网络的领域学习方法 |
CN109359623A (zh) * | 2018-11-13 | 2019-02-19 | 西北工业大学 | 基于深度联合分布适配网络的高光谱图像迁移分类方法 |
CN109858505A (zh) * | 2017-11-30 | 2019-06-07 | 厦门大学 | 分类识别方法、装置及设备 |
US20190370651A1 (en) * | 2018-06-01 | 2019-12-05 | Nec Laboratories America, Inc. | Deep Co-Clustering |
CN111291274A (zh) * | 2020-03-02 | 2020-06-16 | 苏州大学 | 一种物品推荐方法、装置、设备及计算机可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108898218A (zh) * | 2018-05-24 | 2018-11-27 | 阿里巴巴集团控股有限公司 | 一种神经网络模型的训练方法、装置、及计算机设备 |
US20200134444A1 (en) * | 2018-10-31 | 2020-04-30 | Sony Interactive Entertainment Inc. | Systems and methods for domain adaptation in neural networks |
CN111292384B (zh) * | 2020-01-16 | 2022-05-20 | 西安交通大学 | 基于生成式对抗网络的跨域多样性图像生成方法及系统 |
CN111898635A (zh) * | 2020-06-24 | 2020-11-06 | 华为技术有限公司 | 神经网络的训练方法、数据获取方法和装置 |
-
2020
- 2020-06-24 CN CN202010594053.6A patent/CN111898635A/zh active Pending
-
2021
- 2021-05-26 WO PCT/CN2021/096019 patent/WO2021258967A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109858505A (zh) * | 2017-11-30 | 2019-06-07 | 厦门大学 | 分类识别方法、装置及设备 |
CN108710896A (zh) * | 2018-04-24 | 2018-10-26 | 浙江工业大学 | 基于产生式对抗学习网络的领域学习方法 |
US20190370651A1 (en) * | 2018-06-01 | 2019-12-05 | Nec Laboratories America, Inc. | Deep Co-Clustering |
CN109359623A (zh) * | 2018-11-13 | 2019-02-19 | 西北工业大学 | 基于深度联合分布适配网络的高光谱图像迁移分类方法 |
CN111291274A (zh) * | 2020-03-02 | 2020-06-16 | 苏州大学 | 一种物品推荐方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (8)
Title |
---|
AMING WU 等: ""Instance-Invariant Domain Adaptive Object Detection via Progressive Disentanglement"", 《ARXIV》, 20 November 2019 (2019-11-20), pages 1 - 8 * |
AMING WU 等: ""Instance-Invariant Domain Adaptive Object Detection via Progressive Disentanglement"", 《ARXIV》, pages 1 - 8 * |
吴飞 等: ""图像-文本相关性挖掘的Web图像聚类方法"", 《软件学报》, vol. 21, no. 7 * |
孙静: ""关于软件缺陷预测方法的相关研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 February 2020 (2020-02-15) * |
方存亮: ""基于图像识别的无监督领域自适应方法研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 February 2020 (2020-02-15) * |
李伟: "《音频音乐与计算机的交融 音频音乐技术》", 31 January 2020 * |
浦煜 等: ""基于互信息最大化正则的生成式对抗网络"", 《现代计算机》 * |
韩毓璇: ""基于生成式对抗学习的单一与多模态图像转换"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021258967A1 (zh) * | 2020-06-24 | 2021-12-30 | 华为技术有限公司 | 神经网络的训练方法、数据获取方法和装置 |
CN112532746A (zh) * | 2020-12-21 | 2021-03-19 | 北京邮电大学 | 一种云边协同感知的方法及系统 |
CN112532746B (zh) * | 2020-12-21 | 2021-10-26 | 北京邮电大学 | 一种云边协同感知的方法及系统 |
US11669741B2 (en) | 2021-01-12 | 2023-06-06 | Zhejiang Lab | Method and platform for meta-knowledge fine-tuning based on domain-invariant features |
WO2022151553A1 (zh) * | 2021-01-12 | 2022-07-21 | 之江实验室 | 一种基于域-不变特征的元-知识微调方法及平台 |
GB2608344A (en) * | 2021-01-12 | 2022-12-28 | Zhejiang Lab | Domain-invariant feature-based meta-knowledge fine-tuning method and platform |
CN113065633A (zh) * | 2021-02-26 | 2021-07-02 | 华为技术有限公司 | 一种模型训练方法及其相关联设备 |
CN112883988A (zh) * | 2021-03-19 | 2021-06-01 | 苏州科达科技股份有限公司 | 基于多数据集的特征提取网络的训练及特征提取方法 |
CN112883988B (zh) * | 2021-03-19 | 2022-07-01 | 苏州科达科技股份有限公司 | 基于多数据集的特征提取网络的训练及特征提取方法 |
WO2022242471A1 (en) * | 2021-05-17 | 2022-11-24 | Chengdu SynSense Technology Co., Ltd. | Neural network configuration parameter training and deployment method and apparatus for coping with device mismatch |
CN113255757A (zh) * | 2021-05-20 | 2021-08-13 | 西华大学 | 基于激活值分布差异的对抗样本检测方法及系统 |
CN113255757B (zh) * | 2021-05-20 | 2022-10-11 | 西华大学 | 基于激活值分布差异的对抗样本检测方法及系统 |
CN113807183A (zh) * | 2021-08-17 | 2021-12-17 | 华为技术有限公司 | 模型训练方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2021258967A1 (zh) | 2021-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111898635A (zh) | 神经网络的训练方法、数据获取方法和装置 | |
CN113688855A (zh) | 数据处理方法、联邦学习的训练方法及相关装置、设备 | |
Cheng et al. | Bi-pointflownet: Bidirectional learning for point cloud based scene flow estimation | |
CN113705769A (zh) | 一种神经网络训练方法以及装置 | |
CN111368972B (zh) | 一种卷积层量化方法及其装置 | |
EP3992975A1 (en) | Compound property analysis method and apparatus, compound property analysis model training method, and storage medium | |
US20230095606A1 (en) | Method for training classifier, and data processing method, system, and device | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN113516227B (zh) | 一种基于联邦学习的神经网络训练方法及设备 | |
CN114418030B (zh) | 图像分类方法、图像分类模型的训练方法及装置 | |
CN111340190A (zh) | 构建网络结构的方法与装置、及图像生成方法与装置 | |
CN112580369B (zh) | 语句复述方法、训练语句复述模型的方法及其装置 | |
CN111612215A (zh) | 训练时间序列预测模型的方法、时间序列预测方法及装置 | |
CN114550223B (zh) | 人物交互检测方法、装置及电子设备 | |
CN113191241A (zh) | 一种模型训练方法及相关设备 | |
CN113011568A (zh) | 一种模型的训练方法、数据处理方法及设备 | |
CN114004383A (zh) | 时间序列预测模型的训练方法、时间序列预测方法及装置 | |
CN116310318A (zh) | 交互式的图像分割方法、装置、计算机设备和存储介质 | |
Yao et al. | Vision-based environment perception and autonomous obstacle avoidance for unmanned underwater vehicle | |
CN112258565A (zh) | 图像处理方法以及装置 | |
CN114140841A (zh) | 点云数据的处理方法、神经网络的训练方法以及相关设备 | |
WO2021136058A1 (zh) | 一种处理视频的方法及装置 | |
CN114861859A (zh) | 神经网络模型的训练方法、数据处理方法及装置 | |
CN116758212A (zh) | 基于自适应去噪算法的3d重建方法、装置、设备及介质 | |
CN115641490A (zh) | 一种数据处理方法及其装置 |
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 |