CN112241756A - 具有标准化流的机器可学习系统 - Google Patents
具有标准化流的机器可学习系统 Download PDFInfo
- Publication number
- CN112241756A CN112241756A CN202010685689.1A CN202010685689A CN112241756A CN 112241756 A CN112241756 A CN 112241756A CN 202010685689 A CN202010685689 A CN 202010685689A CN 112241756 A CN112241756 A CN 112241756A
- Authority
- CN
- China
- Prior art keywords
- function
- space
- encoder
- data
- machine
- 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
- 230000006870 function Effects 0.000 claims description 154
- 238000009826 distribution Methods 0.000 claims description 129
- 238000012549 training Methods 0.000 claims description 77
- 238000003860 storage Methods 0.000 claims description 47
- 238000013528 artificial neural network Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 39
- 238000013507 mapping Methods 0.000 claims description 26
- 238000005070 sampling Methods 0.000 claims description 22
- 238000010801 machine learning Methods 0.000 claims description 13
- 230000009471 action Effects 0.000 claims description 4
- 230000001143 conditioned effect Effects 0.000 claims description 4
- 230000003750 conditioning effect Effects 0.000 abstract description 10
- 230000015654 memory Effects 0.000 description 37
- 239000013598 vector Substances 0.000 description 26
- 238000004590 computer program Methods 0.000 description 21
- 230000002441 reversible effect Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000001419 dependent effect Effects 0.000 description 9
- 238000012360 testing method Methods 0.000 description 8
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 7
- 230000002452 interceptive effect Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 239000002131 composite material Substances 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003064 k means clustering Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000021615 conjugation Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005415 magnetization Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012800 visualization 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/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
- 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
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- 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
- 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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic 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
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/01—Detecting movement of traffic to be counted or controlled
- G08G1/0104—Measuring and analyzing of parameters relative to traffic conditions
- G08G1/0125—Traffic data processing
-
- 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
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Biology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Image Analysis (AREA)
Abstract
Description
技术领域
本发明涉及机器可学习系统、机器可学习数据生成系统、机器学习方法、机器可学习数据生成方法以及计算机可读介质。
背景技术
根据学习的分布生成数据在各种机器学习系统的开发期间发挥关键作用。例如,可以生成如同先前已经使用传感器测量的数据那样的数据。例如,这样的数据可以用于训练或测试另外的设备,可能是另外的机器学习设备。例如,包括街道传感器数据的给定的传感器数据例如从图像传感器或从激光雷达(lidar)可能以多个图像(例如,视频)的形式而可以是可用的,可以期望的是生成更多的这种数据。例如,包括比如交通参与者或道路标志等的图像数据库可以可用于测试或训练另一个设备(例如自主车辆),生成如已知交通参与者或道路标志等的另外的图像可以是合期望的。
同样,预测环境中代理或交互代理的未来状态是对于自主代理成功操作而言的关键能力。例如,在许多情景中,这可以被认为是一个生成问题或生成问题的序列。在如真实世界交通场景之类的复杂环境中,未来是高度不确定的,并且因此需求例如以一对多映射的形式的结构化的生成。例如,通过预测世界的可能的未来状态。
在Kihyuk Sohn的“Learning Structured Output Representation using DeepConditional Generative Models”中,描述了条件变分自动编码器(CVAE)。CVAE是用于使用高斯潜在变量的输出生成的条件生成模型。该模型在随机梯度变分贝叶斯框架中被训练,并且允许使用随机前馈推理的生成。
CVAE可以通过使用潜在变量集合对未来状态的分布进行因式分解来对复杂的多模态分布进行建模,所述潜在变量然后被映射到可能的未来状态。尽管CVAE是可以在不确定性下对世界的未来状态成功建模的通用类的模型,但它被发现具有缺点。例如:CVAE倾向于过度正则化,模型发现难以捕获多模态分布,并且观察到潜在变量失效(collapse)。
在后验失效的情况下,条件解码网络忘记条件概率分布的低强度模式。这可能导致单模态生成和概率分布的不良学习。例如,在交通参与者生成中,对应于不太可能的事件(诸如行人进入/穿过街道)的条件概率分布的模式看起来根本没有被生成。
发明内容
具有用于数据生成的改进系统和对应的训练系统将是有利的。本发明由独立权利要求限定;从属权利要求限定有利的实施例。
在实施例中,一种机器可学习系统被配置用于将目标空间中的数据生成目标映射到潜在空间中的潜在表示的编码器函数、将潜在空间中的潜在表示映射到目标空间中的目标表示的解码器函数、以及以条件作用数据为条件将潜在表示映射到基础空间中的基础点的标准化流函数。
编码器函数和解码器函数被布置成生成至少对概率分布的均值进行定义的参数,通过对具有生成的均值的所定义的概率分布进行采样来确定编码器函数和解码器函数的函数输出,其中由编码器函数定义的概率分布具有预定方差。
VAE和CVAE模型假设潜在变量上的标准高斯先验。发现该先验在生成品质、CVAE要过度正则化的趋势、其在捕获多模态分布中的困难以及潜在变量失效中发挥作用。
在实施例中,使用具有灵活先验的变分自动编码器来对概率分布进行建模。这至少改进这些问题中的一些,例如CVAE的后验失效问题。此外,强迫编码器/解码器部分中的编码器部分以具有固定的方差被发现在实验中大幅地改进了学习。
具有基于流的先验的机器可学习系统可以用于学习诸如从传感器读数获得的图像、音频、视频或其他数据之类的任意数据的概率分布。用于学习生成模型的应用包括但不限于交通参与者轨迹生成、生成分类器和例如用于训练数据或验证目的的合成数据生成。
在实施例中,标准化流函数包括多个可逆标准化流子函数的序列,多个可逆标准化流子函数的一个或多个参数由神经网络生成。特别地,发现针对一个或多个子函数使用非线性标准化流子函数改进了学习例如具有一个或多个模式、特别是次模式(minor mode)的潜在空间上的困难概率分布的能力。
另外的方面涉及一种机器可学习生成系统,其被配置为例如通过如下进行生成:获得基础空间中的基础点,以条件数据为条件将逆条件标准化流函数应用于基础点以获得潜在表示,以及将解码器函数应用于潜在表示以获得生成目标。
在实施例中,机器可学习生成系统包括在自主设备控制器中。例如,条件作用数据可以包括自主设备的传感器数据。机器可学习生成系统可以被配置为对传感器数据中的对象进行分类和/或预测未来的传感器数据。自主设备控制器可以被配置用于取决于分类进行决策。例如,自主设备控制器可以被配置和/或包括在例如汽车的自主车辆中。例如,自主设备控制器可以用于对其他交通参与者进行分类和/或预测其未来行为。自主设备控制器可以被配置为例如在另一个交通参与者的未来轨迹与自主设备的轨迹交叉的情况下使自主设备的控制适应。
机器可学习系统和机器可学习生成系统是电子的。所述系统可以包括在例如技术系统之类的另一个物理设备或系统中,以用于控制该物理设备或系统,例如控制其移动。机器可学习系统和机器可学习生成系统可以是设备。
另外的方面是机器学习方法和机器可学习生成方法。所述方法的实施例可以作为计算机实现的方法在计算机上实现,或者在专用硬件中实现,或者在两者的组合中实现。用于所述方法的实施例的可执行代码可以存储在计算机程序产品上。计算机程序产品的示例包括存储器设备、光学存储设备、集成电路、服务器、在线软件等。优选地,计算机程序产品包括存储在计算机可读介质上的非暂时性程序代码,以用于当所述程序产品在计算机上执行时执行所述方法的实施例。
在实施例中,一种计算机程序包括计算机程序代码,所述计算机程序代码适应于当计算机程序在计算机上运行时,执行所述方法的实施例的全部或部分步骤。优选地,所述计算机程序体现在计算机可读介质上。
另一方面是一种使计算机程序可用于下载的方法。当计算机程序被上传到例如苹果的应用商店、谷歌的游戏商店或微软的Windows商店时,以及当计算机程序可用于从这样的商店下载时,使用该方面。
附图说明
将参考附图仅通过示例的方式描述另外的细节、方面和实施例。各图中的元素是为了简单和清楚而图示的,并且不一定是按比例绘制的。在各图中,与已经描述的元素相对应的元素可以具有相同的参考标号。在附图中,
图1a示意性地示出了机器可学习系统的实施例的示例,
图1b示意性地示出了机器可学习系统的实施例的示例,
图1c示意性地示出了机器可学习数据生成系统的实施例的示例,
图1d示意性地示出了机器可学习数据生成系统的实施例的示例,
图2a示意性地示出了机器可学习系统的实施例的示例,
图2b示意性地示出了机器可学习系统的实施例的示例,
图2c示意性地示出了机器可学习系统的实施例的示例,
图2d示意性地示出了机器可学习系统的实施例的示例,
图3a示意性地示出了机器可学习数据生成系统的实施例的示例,
图3b示意性地示出了机器可学习数据生成系统的实施例的示例,
图4a示意性地图示了已知系统的示例的使用k均值聚类的多样的样本,
图4b示意性地图示了实施例的示例的使用k均值聚类的多样的样本,
图4c示意性地图示了实施例中的先验学习,
图4d.1示意性地图示了若干个基础事实的示例,
图4d.2示意性地图示了根据已知模型的若干个完成,
图4d.3示意性地图示了根据实施例的若干个完成,
图5a示意性地示出了神经网络机器学习方法的实施例的示例,
图5b示意性地示出了神经网络机器可学习数据生成方法的实施例的示例,
图6a示意性地示出了根据实施例的具有包括计算机程序的可写部分的计算机可读介质,
图6b示意性地示出了根据实施例的处理器系统的表示。
图1-3中的参考标号列表:
110 机器可学习系统
112 训练数据存储装置
130 处理器系统
131 编码器
132 解码器
133 标准化流
134 训练单元
140 存储器
141 目标空间存储装置
142 潜在空间存储装置
143 基础空间存储装置
144 条件存储装置
150 通信接口
160 机器可学习数据生成系统
170 处理器系统
172 解码器
173 标准化流
180 存储器
181 目标空间存储装置
182 潜在空间存储装置
183 基础空间存储装置
184 条件存储装置
190 通信接口
210 目标空间
211 编码
220 潜在空间
221 解码
222 条件标准化流
230 基础空间
240 条件空间
252 训练目标数据
253 训练条件数据
254 随机源
255 条件数据
256 生成的目标数据
257 生成的目标数据
262 机器可学习系统
263 参数转移
264 机器可学习数据生成系统
272 机器可学习系统
274 机器可学习数据生成系统
330 基础空间采样器
331 条件编码器
340 标准化流
341 条件编码器
350 潜在空间元素
360 解码网络
361 目标空间元素
362 条件
1000 计算机可读介质
1010 可写部分
1020 计算机程序
1110 (一个或多个)集成电路
1120 处理单元
1122 存储器
1124 专用集成电路
1126 通信元件
1130 互连
1140 处理器系统。
具体实施方式
虽然本发明容许以许多不同形式的实施例,但是在附图中示出了并且在本文中将详细描述一个或多个具体实施例,应理解,本公开要被认为是本发明原理的示例,并且不旨在将本发明限制于所示出和描述的具体实施例。
在下文中,为了理解起见,在操作中描述了实施例的元件。然而,将清楚的是,相应的元件被布置成执行被描述为由它们执行的功能。
此外,本发明不限于实施例,并且本发明在于本文中描述的或在相互不同的从属权利要求中记载的每一个新颖特征或特征的组合。
图1a示意性地示出了机器可学习系统110的实施例的示例。图1c示意性地示出了机器可学习数据生成系统160的实施例的示例。例如,图1a的机器可学习系统110可以用于训练例如是神经网络的机器可学习系统的参数,所述参数可以用在机器可学习数据生成系统160中。
机器可学习系统110可以包括处理器系统130、存储器140和通信接口150。机器可学习系统110可以被配置为与训练数据存储装置112通信。存储装置112可以是系统110的本地存储装置,例如本地硬盘驱动器或存储器。存储装置112可以是非本地存储装置,例如云存储装置。在后一种情况下,存储装置112可以实现为到非本地存储装置的存储接口。
机器可学习数据生成系统160可以包括处理器系统170、存储器180和通信接口190。
系统110和/或160可以通过计算机网络与彼此、外部存储装置、输入设备、输出设备和/或一个或多个传感器通信。计算机网络可以是互联网、内联网、LAN、WLAN等。计算机网络可以是因特网。系统包括连接接口,所述连接接口被布置成根据需要在系统之内或系统外部进行通信。例如,连接接口可以包括连接器,所述连接器例如:有线连接器,例如以太网连接器、光学连接器等;或者无线连接器,例如天线,例如Wi-Fi、4G或5G天线等。
系统110和160的执行可以在处理器系统(例如一个或多个处理器电路,例如微处理器)中实现,本文中示出了其示例。图1b和图1d示出了可以是处理器系统的功能单元的功能单元。例如,图1b和图1d可以用作处理器系统的可能功能组织的蓝图。(一个或多个)处理器电路没有与这些图中的单元分离地示出。例如,图1b和图1d中示出的功能单元可以全部或部分地在存储在系统110和160处(例如在系统110和160的电子存储器中)的计算机指令中实现,并且可由系统110和160的微处理器执行。在混合实施例中,功能单元部分地在硬件中实现,例如作为协处理器(例如神经网络协处理器),并且部分地在系统110和160上存储和执行的软件中实现。网络参数和/或训练数据可以本地存储在系统110和160处,或者可以存储在云存储装置中。
图1b示意性地示出了机器可学习系统110的实施例的示例。机器可学习系统110具有对训练存储装置112的访问,训练存储装置112可以包括训练目标数据(x)的集合。例如,在实施例中,机器可学习系统被配置为生成模型,该模型可以生成类似于训练数据的数据,例如,其看起来是从来自看起来被采样的训练数据的相同概率分布中被采样的。例如,训练数据可以包括传感器数据,例如图像数据、激光雷达数据等。
训练存储装置112也可以或代替地包括训练对,训练对包括条件作用数据(c)和数据生成目标(x)。机器可学习系统110可以被配置为训练例如包括多个神经网络的模型,该模型用于基于条件作用数据来生成数据生成目标。例如,在这种情况下,学习训练数据的条件概率分布,而不是无条件概率分布。
图2a示意性地示出了机器可学习系统110的实施例中的数据结构的示例。系统110对以下各项进行操作:目标数据,例如数据生成目标,其统称为目标空间210;潜在数据,例如内部或不可观察的数据元素,其统称为潜在空间220;以及基础点或基础数据,其统称为基础空间230。图2b示意性地示出了机器可学习系统110的实施例中的数据结构的示例。除了另外的空间240:包括条件数据的条件空间240,图2b与图2a相同。
条件数据对于数据生成、并且尤其是在预测应用中可以是有用的。例如,条件作用数据可以是一天中的时间。数据生成任务然后可以应用于一天中特定时间的数据生成。例如,条件任务可以是来自不同模态的传感器数据。然后,数据生成任务可以应用于适合另一模态的传感器数据的数据生成。例如,训练数据可以包括图像数据和激光雷达数据,使用一个作为数据生成目标并且另一个作为条件,可以将图像数据转化成激光雷达数据,并且反之也可以将激光雷达数据转化成图像数据。
条件概率也可以用于预测任务。例如,条件可以是传感器的过去值,并且数据生成任务可以是未来的传感器数据。这样,可以根据未来的传感器值的可能分布来生成数据。数据处理可以应用于目标和条件数据。例如,条件数据可以对一个或多个交通参与者的过去轨迹进行编码,而数据生成目标对一个或多个交通参与者的未来轨迹进行编码。
各种空间典型地可以被实现为向量空间。目标、潜在、基础或条件数据的表示可以作为向量。空间的元素典型地被称为“点”,即使对应的数据(例如向量)不需要指代物理空间中的物理点亦如此。
图2c示意性地示出了可以使用图2a的数据结构实现的机器可学习系统的实施例的示例。示出了使用训练目标数据252训练的机器可学习系统262。一旦训练完成,经训练的参数就可以至少部分地在参数转移263中被转移到机器可学习数据生成系统264。系统262和264也可以是相同的系统。机器可学习数据生成系统264可以被配置为从随机源254接收输入,例如,来对基础空间中的点进行采样。机器可学习数据生成系统264可以使用逆标准化流和解码器来产生生成的目标数据256。生成的目标数据256应当看起来好像它们是从与目标数据252相同的分布中汲取的。例如,数据252和256可以均是图像。例如,数据252可以是交通参与者(诸如骑自行车的人和行人)的图像,并且生成的数据256应当是类似的图像。数据256可以用于测试或训练另外的设备(例如自主车辆),所述另外的设备(例如自主车辆)应当学习在交通参与者之间进行区分。数据256也可以用于测试或调试另外的设备。
图2d示意性地示出了可以使用图2b的数据结构实现的机器可学习系统的实施例的示例。示出了机器可学习系统272,其使用训练目标数据252和对应的条件253来被训练。一旦训练完成,经训练的参数就可以至少部分地在参数转移263中被转移到机器可学习数据生成系统274。系统272和274可以是相同的系统。机器可学习数据生成系统274可以被配置为从随机源254接收输入,例如,来对基础空间和新条件255中的点进行采样。条件255可以从传感器获得,所述传感器例如产生条件253的相同或类似的传感器。机器可学习数据生成系统274可以使用逆条件标准化流和解码器来产生生成的目标数据257。生成的目标数据276应当看起来好像它们是从与目标数据252和条件253相同的条件分布中汲取的。例如,数据252和257可以均是图像。例如,数据252可以是交通参与者(诸如骑自行车的人和行人)的图像,而条件253可以是一天中的时间信息。条件255也可以是一天中的时间信息。生成的数据256应当是以255中的一天中的时间信息为条件与图像252类似的图像。数据257可以与数据256类似地使用,然而条件255可以用于生成特定于特定条件的测试数据256。例如,可以产生道路参与者在一天中特定时间(例如,在晚上、在早上等)的图像。条件也可以用于预测任务,例如轨迹预测。
系统110可以包括用于存储各种空间的元素的存储装置。例如,系统110可以包括目标空间存储装置141、潜在空间存储装置142、基础空间存储装置143以及可选地条件存储装置144来存储对应空间的一个或多个元素。空间存储装置可以是电子存储装置的部分,例如存储器。
系统110可以配置有编码器131和解码器132。例如,编码器131实现将目标空间210(X)中的数据生成目标(x)映射到潜在空间220(Z)中的潜在表示()的编码器函数()。解码器132实现将潜在空间220(Z)中的潜在表示(z)映射到目标空间210(X)中的目标表示()的解码器函数。当被完全训练时,编码器和解码器函数理想地接近成为彼此的逆,尽管该理想在实践中将典型地不会被完全实现。
编码器函数和解码器函数在如下意义上是随机的:它们产生概率分布的参数,从所述概率分布中对输出进行采样。也就是说,编码器函数和解码器函数在如下意义上是非确定性函数:它们在其每次被调用时可能返回不同的结果,即使利用相同的输入值集合被调用以及即使函数的定义保持不变亦如此。注意到,概率分布的参数本身可以从输入中确定性地被计算。
例如,编码器函数和解码器函数可以被布置成生成至少对概率分布的均值进行定义的参数。然后通过对具有生成均值的所定义的概率分布进行采样来确定编码器函数和解码器函数的函数输出。概率分布的其他参数可以从不同源获得。
特别地,发现如果编码器函数不生成方差则是特别有利的。可以学习分布的均值,但是方差可以是预定的固定值,例如,恒等式或恒等式的某个倍数。这不需要在编码器与解码器之间对称,例如,解码器可以学习例如高斯分布的均值和方差,而对应的编码器仅学习均值但不学习方差(其是固定的)。编码器中的固定方差结果将实验中的学习改进了40%之多(见下面的实验)。
在实施例中,目标空间210中的数据生成目标是模型一旦被训练就可以被要求生成的元素。生成目标的分布可以取决于或可以不取决于被称为条件的条件数据。条件可以共同地被认为是条件空间240。
生成目标或条件(例如目标空间210或条件空间240的元素)可以是低维的,其例如是组织在向量中的例如一个或多个值,例如速度、一个或多个坐标、温度、分类等。生成目标或条件也可以是高维的,其例如是一个或多个数据丰富的传感器(例如图像传感器)的输出,例如激光雷达信息等。这样的数据也可以被组织在向量中。在实施例中,空间210或240中的元素本身可以是编码操作的输出。例如,可以完全或部分地在本文中描述的模型外部的系统可以用于对未来和/或过去的交通情形进行编码。这样的编码本身可以使用包括例如编码器网络的神经网络来被执行。
例如,在应用中,可以生成在发动机中分布的温度传感器集合(比如10个温度传感器)的输出。生成目标和空间210可以是低维的,例如10维的。条件可以对电机的过去使用信息进行编码,所述电机的过去使用信息例如操作时长、使用的能量总量、外部温度等。条件的维度可以多于一。
例如,在应用中,生成交通参与者的未来轨迹。目标可以是描述未来轨迹的向量。条件可以对过去轨迹的信息进行编码。在这种情况下,目标和条件空间的维度可以均是多维的。因此,在实施例中,条件和/或目标空间的维度可以是1或多于1,同样其可以是2或更多、4或更多、8或更多、100或更多等。
在应用中,目标包括给出多维信息的传感器(例如激光雷达或图像传感器)的数据。条件还可以包括给出多维信息的传感器(例如激光雷达或图像传感器),所述多维信息例如是其他模态。在该应用中,系统学习基于图像数据预测激光雷达数据,或者反之基于激光雷达数据预测图像数据。这对于例如训练数据的生成是有用的。例如,来训练或测试自主驾驶软件。
在实施例中,编码器和解码器函数形成变分自动编码器。变分自动编码器可以学习由编码网络z = ENC(X)给出的数据x的潜在表示z。该潜在表示z可以通过解码网络y =DEC(z)而被重建到原始数据空间中,其中y是潜在表示z的解码表示。除了没有假设潜在空间上的固定先验之外,编码器和解码器函数可以类似于变分自动编码器。代替地,在标准化流或条件标准化流中学习潜在空间上的概率分布。
编码器函数和解码器函数两者在如下意义上可以是非确定性的:它们产生(典型地是确定性的)概率分布的参数,从所述概率分布中对输出进行采样。例如,编码器函数和解码器函数可以生成多元高斯分布的均值和方差。有趣的是,编码器函数和解码器函数中的至少一个可以被布置成生成均值,通过对具有均值和预定方差的高斯分布进行采样来确定函数输出。也就是说,函数可以被布置成仅生成分布的所需参数的部分。在实施例中,函数仅生成高斯概率分布的均值但不生成方差。方差然后可以是预定值,例如恒等式,例如,其中是超参数。对于函数输出的采样可以通过对具有生成的均值和预定的方差的高斯分布进行采样来完成。
在实施例中,这是针对编码器函数而不是针对解码器函数完成的。例如,解码器函数可以生成用于采样的均值和方差,而编码器函数仅生成均值但使用预定方差用于采样。可以具有带固定方差的编码器函数,但带可学习变量方差的解码器函数。
发现使用固定方差帮助抵抗潜在变量失效。特别地,发现编码器函数中的固定方差抵抗潜在变量失效是有效的。
编码器和解码器函数可以包括神经网络。通过训练神经网络,系统可以学习将目标空间中相关的信息编码在内部的、潜在的表示中。典型地,潜在空间220的维度低于目标空间210的维度。
系统110可以进一步包括标准化流,有时仅仅将标准化流称为流。标准化流将潜在表示(z)映射到基础空间230(e)中的基础点。有趣的是,当编码器将目标空间的点映射到潜在空间时,目标空间的点的概率分布引入了潜在空间上的概率分布。然而,潜在空间的概率分布可能非常复杂。机器可学习系统110可以包括标准化流133(例如标准化流单元),以将潜在空间的元素映射到又一个空间——基础空间。基础空间被配置为具有预定的或者以其他方式可以容易地计算的概率分布。典型地,潜在空间(Z)和基础空间(E)具有相同的维度。优选地,流是可逆的。
在实施例中,标准化流是条件标准化流。条件流也从潜在空间映射到基础空间,但是学习条件概率分布而不是无条件概率分布。优选地,流是可逆的,也就是说,对于给定的条件c,该流相对于基础点e和潜在点z是可逆的。
图2a将从目标空间到潜在空间的编码操作示出为箭头211;将从潜在空间到目标空间的解码操作示出为箭头221,并且将条件流示出为箭头222。注意到,流是可逆的,其利用双向箭头指示。图2b示出了条件空间240,流和基础空间中的一个或两者可以取决于条件。
条件标准化流函数可以被配置为可选地以条件作用数据(c)为条件,将潜在表示(z)映射到基础空间(E)中的基础点(或)。标准化流函数取决于潜在点(z),并且可选地还取决于条件作用数据(c)。在实施例中,流是确定性函数。
标准化流可以通过利用参数化可逆映射将未知分布变换成已知概率分布,来学习潜在空间Z中数据集的概率分布。映射被称为标准化流;指代可学习的参数。已知概率分布典型地是多元高斯分布,但是也可以是某个其他分布,例如均匀分布。
Z的原始数据点z的概率是,其中,即。是可逆映射的雅可比行列式,计及由于可逆映射引起的概率质量的改变。已知,因为可以计算可逆映射的输出e,并且概率分布通过构造而已知,经常使用标准多元正态分布。因此,通过计算数据点z的变换值e、计算并且将结果与雅可比行列式相乘来计算数据点z的概率是容易的。在实施例中,标准化流还取决于条件,从而使得标准化成为条件标准化流。
通过使可逆子函数取决于条件,标准化流可以被转换成条件标准化流。事实上,任何常规的(非条件的)标准化流都可以通过利用神经网络的输出替换其一个或多个参数来适应成为条件标准化流,该神经网络将条件取作输入并且把层的参数作为输出。神经网络可以具有另外的输入,例如潜在变量、或先前层的输出、或其部分等等。反之,通过移除或固定条件输入,可以将条件标准化流转换成非条件标准化流。下面的示例包括用于条件标准化流的子函数,其例如可以学习对条件的依赖性;这些示例可以通过移除“c”输入来针对无条件标准化流进行修改。
例如,为了对可逆映射进行建模,可以构成多个层或耦合层。多个堆叠层的雅可比行列式J仅仅是个体层的雅可比行列式的乘积。每个耦合层i从先前层i-1得到变量作为输入(或者在第一层的情况下得到输入),并且产生变换的变量,所述变换的变量包括层i的输出。每个个体耦合层可以包括仿射变换,所述仿射变换的系数至少取决于条件。这样做的一种方式是将变量拆分成左部分和右部分,并且设置,例如,
在这些耦合层中,层i的输出被称为。每个可以由左半和右半构成,例如。例如,这两半可以是向量的子集。一半可以保留不变,而另一半可以通过例如具有缩放和偏移的仿射变换来修改,这可以仅取决于。左半可以具有一半或更少或更多的系数。在这种情况下,因为仅取决于中而不是中的元素,因此可以将流取逆。
由于该构造,每个耦合层的雅可比行列式仅仅是缩放网络的输出的乘积。此外,该仿射变换的逆容易计算,这促进了从用于生成模型的所学习的概率分布中容易地采样。通过让可逆层包括由取决于条件的可学习网络给出的参数,流可以学习非常有用的复杂条件概率分布。scale(缩放)和offset(偏移)的输出可以是向量。乘法和加法运算可以是逐分量的。每层可以存在用于scale和offset的两个网络。
在实施例中,左半和右半可以在每个层之后切换。可替代地,可以使用排列层,例如,的元素的随机但固定的排列。除了排列层和/或仿射层之外或者代替排列层和/或仿射层,可以使用其他的可逆层。通过使用左半和右半有助于使流可逆,但是可以代替地使用其他的可学习和可逆变换。
排列层可以是通过系统馈送的向量的条目的可反转排列。排列可以被随机初始化,但在训练和推理期间保持固定。可以对于每个排列层使用不同的排列。
在实施例中,利用非线性层替换仿射层中的一个或多个。发现非线性层能够更好地将潜在空间上的概率分布变换成标准化分布。这在潜在空间上的概率分布具有多个模式的情况下尤其正确。例如,可以使用以下非线性层
如上,对向量的操作可以逐分量完成。上面的非线性示例使用神经网络:offset、scale、C()、D()和G()。这些网络中的每个可以取决于先前层的输出的部分和条件c。网络可以输出向量。其他有用的层包括卷积层,例如1×1卷积的卷积层,例如与可逆矩阵M的乘法
另一个有用的层是激活层,其中参数不取决于数据,例如
激活层也可以具有条件相关参数,例如,
网络s()和o()可以产生单个标量或向量。
又一个有用的层是混洗层(shuffling layer)或排列层,其中系数根据排列被排列。当针对模型第一次初始化层时,可以随机选择排列,但此后保持固定。例如,排列可能不取决于数据或训练。
在实施例中,存在多个层,例如2、4、8、10、16或更多。如果每个层跟随有排列层,那么该数字可以是两倍之大。流从潜在空间映射到基础空间,或者反之从基础空间映射到潜在空间,这是因为流是可逆的。
标准化流中涉及的神经网络的数量可以与可学习层的数量相比一样大或更大。例如,上面给出的仿射变换示例可以使用两层。在实施例中,神经网络中的层的数量可以被限制为例如1或2个隐藏层。在图2中,已经利用朝向流222的图示出了条件空间240对标准化流的影响。
例如,在实施例中,条件标准化流可以包括不同类型的多个层。例如,条件标准化流的层可以被按块组织,每个块包括多个层。例如,在实施例中,块包括非线性层、卷积层、缩放激活层和混洗层。例如,可以具有多个这样的块,例如2个或更多、4个或更多、16个或更多等。
注意到,在条件标准化流中涉及的神经网络的数量可能相当高,例如多于100。此外,网络可以具有多个输出,例如向量或矩阵。这些网络的学习可以使用最大似然学习等进行。
例如,非线性非条件标准化流同样可以具有带有多个层的多个块。例如,这样的块可以包括非线性层、激活层和混洗层。
因此,在实施例中,可以具有:向量空间210 X,其是n维的,用于生成目标、例如未来轨迹;潜在向量空间220 Z,其是d维的,例如用于潜在表示;向量空间230 E,其也可以是d维的,并且具有基础分布、例如多元高斯分布。此外,可选的向量空间240可以表示条件,例如,过去的轨迹、环境信息等。标准化流222在图2a中的空间220与空间230之间运行;条件标准化流222以来自空间240的元素为条件在图2b中的空间220与空间230之间运行。
另一选项是要使基础空间的分布也以条件为条件,优选地,同时仍然允许容易的采样。例如,基础分布的一个或多个参数可以由神经网络生成,该神经网络至少将用于某个神经网络的条件(例如,分布可以是)取作输入。神经网络可以与模型中的其他网络一起被学习。例如,神经网络可以计算一值(例如均值),固定分布通过该值(例如均值)被移位,例如被添加到该值(例如均值)。例如,如果基础分布是高斯分布,则条件基础分布可以是,例如 。例如,如果分布例如在诸如[0,1]间隔的间隔上是均匀的,则条件分布可以是或者以保持均值等于。
系统110可以包括训练单元134。例如,训练单元134可以被配置为训练在训练对的集合上的编码器函数、解码器函数和标准化流。例如,训练可以试图最小化编码器函数和解码器函数的级联的重建损失,并且最小化在基础空间上的概率分布与应用于训练对的集合的编码器和标准化流函数的级联之间的差异。
训练可以遵循以下步骤(在这种情况下是为了产生交通参与者的生成的传感器数据,例如,用于训练或测试目的)。
1.使用编码器模型对来自训练样本的传感器数据进行编码。例如,该函数可以将传感器数据从目标空间X映射到潜在空间Z中的分布
2.从编码器的预测均值以及从给定的固定方差中对潜在空间Z中的点进行采样
3.使用解码器对采样点进行解码。这是从潜在空间Z回到目标空间X
4.计算ELBO
a.使用传感器数据来计算流先验下的似然性
b.使用经解码的传感器数据来计算数据似然损失。
5.进行梯度下降步骤,以最大化ELBO。
上面的示例不使用条件。另一个示例,遵循以下步骤(在这种情况下是为了生成未来轨迹,其可能依赖于条件):
1.使用编码器模型对来自训练样本的未来轨迹进行编码。例如,该函数可以将未来轨迹从目标空间X映射到潜在空间Z中的分布
2.从编码器的预测均值以及从给定的固定方差中对潜在空间Z中的点进行采样
3.使用解码器对未来轨迹进行解码。这是从潜在空间Z回到目标空间X。
4.计算ELBO
a.使用未来轨迹来计算流先验下的似然性;该流还取决于与未来轨迹相对应的条件。
b.使用经解码的轨迹来计算数据似然损失。
5.进行梯度下降步骤,以最大化ELBO。
训练也可以包括如下步骤
0.使用条件编码器对来自训练对的条件进行编码。该函数可以计算用于基础空间中的(可选)条件基础分布的均值。编码也可以用于条件标准化流。
其中,是概率分布和的库尔贝克-莱布勒(Kullback-Leibler)散度,概率分布由基础分布和条件标准化流定义。为此目的使用条件标准化流将变换成更容易评估的概率分布,例如标准正态分布。标准化流可以表示比潜在空间上的标准先验丰富得多的一类分布。
当使用标准化流针对潜在空间将基础分布转换为更复杂的先验时,用于ELBO的KL部分的公式可以是如下:
其中是条件标准化流并且是条件标准化流的雅可比。通过使用该基于复杂流的条件先验,自动编码器可以更容易地学习复杂的条件概率分布,因为它不受潜在空间上的简单高斯先验假设所限制。上面的公式可以例如通过省略对条件的依赖性而适应于无条件的情形。
在实施例中,一起训练编码器函数、解码器函数和标准化流。可以使用训练工作的分批或部分分批。
图1d示意性地示出了机器可学习生成系统160的实施例的示例。机器可学习生成系统160类似于系统110,但是不需要被配置用于训练。例如,这意味着系统160可以不需要编码器131或者对训练存储装置112或训练单元的访问。另一方面,系统160可以包括用于接收传感器数据的传感器和/或传感器接口,例如,以构建条件。例如,系统160可以包括解码器172和标准化流173。标准化流173可以被配置用于从基础空间到潜在空间的逆方向。标准化流173可以是条件标准化流。如系统110,系统160还可以包括用于各种类型的点的存储装置,所述存储装置例如以目标空间存储装置181、潜在空间存储装置182、基础空间存储装置183和可选条件存储装置184的形式,以存储对应空间的一个或多个元素。空间存储装置可以是电子存储装置的部分,例如存储器。
解码器172和流173可以由诸如系统110的系统训练。例如,系统160可以被配置为通过如下针对给定的条件(c)确定目标空间中的生成目标(x)
- 例如通过(例如使用采样器)对基础空间进行采样,来获得基础空间中的基础点(e)。
- 以条件数据(c)为条件将逆条件标准化流函数应用于基础点(e)以获得潜在表示(z),以及
- 将解码器函数应用于潜在表示(z)以获得生成目标(x)。
可以省略条件的使用。注意到,解码器172可以输出均值和方差,而不是直接输出目标。在均值和方差的情况下,为了获得目标,不得不从该定义的概率分布(例如高斯分布)中采样。
每次在基础空间中获得基础点(e),可以获得对应的目标生成。这样,可以汇聚多个生成目标的集合。存在使用生成目标的若干个方式。例如,给定生成目标,可以计算控制信号,所述控制信号例如用于自主设备,例如自主车辆。例如,控制信号可以是要例如在所有生成的未来情况中避开交通参与者。
可以统计地处理多个生成目标,例如,可以对它们进行平均,或者可以进行前10%的生成,等等。
图3a示意性地示出了机器可学习生成系统的实施例的示例。图3a图示了在用于生成的实施例中可以完成的处理。
基础空间采样器330从基础分布中采样。使用来自采样器330的采样基础点,通过标准化流340将基础点映射到潜在空间元素350中的点。标准化流的参数可以由一个或多个网络341生成。潜在空间元素350通过解码网络360被映射到目标空间元素361;这还可以涉及采样。在实施例中,解码网络360可以包括神经网络。
图3b示意性地示出了机器可学习生成系统的实施例的示例。图3b图示了在用于生成的实施例中可以完成的处理。
图3b示出了条件362,例如,要从其中生成未来的传感器信息的过去的传感器信息。条件362可以被输入到条件编码器341。条件编码器341可以包括一个或多个神经网络,以生成用于条件流中的层的参数。可以存在到条件编码器341的另外的输入,例如条件标准化流的基础点和中间点。编码器341中的网络可以是确定性的,但是它们也可以输出概率分布参数并且使用采样步骤。
条件362可以被输入到条件编码器331。条件编码器331可以包括神经网络,以生成用于可以从其中对基础点进行采样的概率分布的参数。在实施例中,条件编码器331生成均值,利用该均值和固定方差对基础点进行采样。条件编码器331是可选的。基础采样器360可以使用无条件的预定概率分布。
基础空间采样器330从基础分布中采样。这可以使用由编码器331生成的参数。基础分布可以代替地是固定的。条件编码器331是可选的。
使用用于来自编码器341的层的参数和来自采样器330的采样基础点,通过标准化流340将基础点映射到潜在空间元素350中的点。潜在空间元素350通过解码网络360被映射到目标空间元素361;这还可以涉及采样。
在实施例中,解码网络360、条件编码器331和条件编码器341可以包括神经网络。条件编码器341可以包括多个神经网络。
如图3a或3b中所示的用于应用阶段的类似处理可以在训练阶段期间完成,可以存在使用编码器网络从目标空间到潜在空间的附加映射。
学习条件概率分布的一个示例应用是预测交通参与者的未来位置x。例如,可以从条件概率分布中采样。这允许在给定最可能的未来交通参与者位置x的特征f和未来时间t的情况下对最可能的未来交通参与者位置x进行采样。然后,汽车可以行驶到未生成任何位置样本x的位置,因为该位置最可能没有其他交通参与者。
在实施例中,例如在训练对中或在应用期间,条件作用数据(c)包括交通参与者的过去轨迹信息,并且其中生成目标(x)包括交通参与者的未来轨迹信息。
对过去轨迹信息进行编码可以如下进行。过去轨迹信息,例如过去轨迹信息可以使用神经网络被编码成第一固定长度向量,所述神经网络例如递归神经网络,诸如LSTM。可以使用CNN将环境地图信息编码成第二固定长度向量。交互交通参与者信息,例如交互交通参与者信息可以被编码成第三固定长度向量。第一、第二和/或第三向量中的一个或多个可以被级联成条件。有趣的是,用于对条件进行编码的神经网络也可以与系统110一起训练。对条件进行编码也可以是对流和/或基础分布的参数进行编码的网络的部分。用于对条件信息——在这种情况下是过去的轨迹和环境信息——进行编码的网络可以与模型中使用的其余网络一起被训练;它们甚至可以与其他网络共享其网络的部分,例如,对例如用于基础分布或条件流的条件进行编码的网络可以彼此共享网络主体的部分。
经训练的神经网络设备可以应用在自主设备控制器中。例如,神经网络的条件数据可以包括自主设备的传感器数据。目标数据可以是系统的未来方面,例如生成的传感器输出。自主设备可以至少部分自主地执行移动,例如,依赖于设备的环境修改移动而用户不指定所述修改。例如,设备可以是计算机控制的机器,如汽车、机器人、车辆、家用电器、电动工具、制造机器等。例如,神经网络可以被配置为对传感器数据中的对象进行分类。自主设备可以被配置用于取决于分类进行决策。例如,如果网络可以对设备周围环境中的对象进行分类,并且可以例如如果在设备附近对其他交通进行分类——例如人、骑自行车的人、汽车等,则停止、或减速、或转向或以其他方式修改设备的移动。
在系统110和160的各种实施例中,通信接口可以从各种替代物中被选择。例如,接口可以是到局域网或广域网(例如,因特网)的网络接口、到内部或外部数据存储装置的存储接口、键盘、应用接口(API)等。
系统110和160可以具有用户接口,该用户接口可以包括公知的元件,诸如一个或多个按钮、键盘、显示器、触摸屏等。用户接口可以被布置用于适应用户交互,以用于配置系统、在训练集上训练网络或者将系统应用于新的传感器数据等。
存储装置可以被实现为比如闪速存储器之类的电子存储器或者比如硬盘之类的磁存储器等。存储装置可以包括多个分立的存储器,所述多个分立的存储器一起构成存储装置140、180。存储装置可以包括临时存储器,比如RAM。存储装置可以是云存储装置。
系统110可以在单个设备中实现。系统160可以在单个设备中实现。典型地,系统110和160各自包括微处理器,该微处理器执行被存储在系统处的适当软件;例如,该软件可能已经被下载和/或存储在对应的存储器中,所述对应的存储器例如是诸如RAM的易失性存储器或者诸如闪存的非易失性存储器。可替代地,系统可以全部或部分地在可编程逻辑中实现,例如作为现场可编程门阵列(FPGA)。系统可以全部或部分地被实现为所谓的专用集成电路(ASIC),例如为其特定用途定制的集成电路(IC)。例如,电路可以例如使用诸如Verilog、VHDL等之类的硬件描述语言在CMOS中实现。特别地,系统110和160可以包括用于神经网络评估的电路。
处理器电路可以以分布式方式实现,例如作为多个子处理器电路。存储装置可以分布在多个分布式子存储装置之上。存储器的部分或全部可以是电子存储器、磁存储器等。例如,存储装置可以具有易失性和非易失性部分。存储装置的部分可以是只读的。
下面说明了若干个另外的可选细化、细节和实施例。下面的符号与上面稍微不同之处在于利用“x”指示条件,利用“z”指示潜在空间的元素,并且利用“y”指示目标空间的元素。
一个选项是要考虑球形高斯作为基础分布。这允许从基础分布以及因此条件先验中容易地采样。为了使得能够学习复杂的多模态先验,可以在基础分布的顶部上应用非线性流的多个层。发现非线性条件标准化流允许条件先验是高度多模态的。非线性条件流还允许对过去轨迹和环境信息的复杂条件作用。
用于训练的KL散度项对于基于条件流的先验可能不具有简单的闭式表达式。然而,可以通过评估基础分布而不是复杂条件先验之上的似然性来计算KL散度。例如,可以使用:
为了学习复杂的条件先验,可以联合优化(5)中的意志分布和条件先验。变分分布尝试与条件先验匹配,并且条件先验尝试与变分分布匹配,使得ELBO(5)被最大化,并且数据被很好地解释。该模型在本文中将被称为条件流-VAE(或CF-VAE)。
此外,最大可能的收缩量也变得有界,从而为对数-雅可比定上界。因此,在训练期间,这鼓励模型集中于解释数据并且防止退化解,其中熵或对数-雅可比项在数据对数似然性之上占主导地位,从而导致更稳定的训练并且防止条件流-VAE的潜在变量失效。
在实施例中,解码器函数可以以条件为条件。这允许模型更容易地学习有效的解码函数。然而,在实施例中,移除解码器对条件x的条件作用。这由于以下事实而是可能的:条件先验是被学习的——潜在先验分布可以对特定于x的信息进行编码——不同于使用数据独立先验的标准CVAE。这确保了潜在变量z对关于未来轨迹的信息进行编码并且防止失效。特别地,这防止其中模型可能忽略次模式并且仅对条件分布的主模式进行建模的情形。
在第一示例应用中,该模型被应用于轨迹生成。过去轨迹信息可以使用LSTM来被编码为固定长度向量。为了效率,可以在条件流与解码器之间共享条件编码器。CNN可以用于将环境地图信息编码为固定长度向量。CVAE解码器可以利用该信息为条件。为了对交互交通参与者/代理的信息进行编码,可以使用A. Atanov等人的“Semi-conditionalnormalizing flows for semi-supervised learning”的卷积社交池化(convolutionalsocial pooling)。例如,为了效率可以利用卷积来交换LSTM轨迹编码器。详细来说,卷积社交池化可以使用叠加在环境上的网格来使信息池化。该网格可以使用张量来表示,其中交通参与者的过去轨迹信息被聚合成与环境中的网格相对应地被索引的张量。过去轨迹信息可以在被聚合成网格张量之前使用LSTM来被编码。为了计算效率,可以将轨迹信息直接聚合成张量、继之以卷积以提取轨迹特定的特征。最后,可以应用卷积的若干层,例如,以捕获场景中交通参与者的交互感知上下文特征。
利用MNIST序列数据集说明了另外的示例,该MNIST序列数据集包括MNIST位的手写笔画序列。为了评估,生成了给定前十个步骤的完整笔画。该数据集是有趣的,因为笔画完成的分布是高度多模态的,并且模式的数量大幅变化。给定2的初始笔画,完成2、3、8是可能的。另一方面,给定1的初始笔画,仅可能的完成是1本身。基于数据相关条件流的先验在该数据集上表现得非常好。
图4a和图4b示出了使用k均值聚类的多样的样本。聚类的数量基于初始笔画手动设置为预期位数。图4a使用已知的模型BMS-CVAE,而图4b使用实施例。图4c示出了在实施例中学习的先验。
以下表格将两个实施例(以CF开始)与已知方法进行了比较。评估是在MNIST序列上完成的,并且给出负CLL分数:越低越好。
方法 | -CLL |
CVAE | 96.4 |
BMS-CVAE | 95.6 |
CF-VAE | 74.9 |
CF-VAE - <i>CNLSq层</i> | 77.2 |
以上表格使用了具有固定方差变分后验的CF-VAE、以及其中条件流(CNLSq)使用了基于仿射耦合的流的CF-VAE。条件对数-似然(CLL)度量用于评估,并且跨所有基线使用了相同的模型架构。LSTM编码器/解码器具有48个隐藏神经元,并且潜在空间是64维的。CVAE使用了标准高斯先验。CF-VAE以超过20%的性能优势胜过已知模型。
图4c图示了捕获的模式和基于学习条件流的先验。为了使能实现可视化,基于条件流的先验的密度使用TSNE被投影到2D、继之以内核密度估计。可以看到,基于条件流的先验中的模式数量反映数据分布中的模式数量。相比之下,BMS-CVAE不能完全捕获所有模式——它的生成由于标准高斯先验而被推到分布的均值。这突出了基于数据相关流的先验用以捕获手写笔画的高度多模态分布的优势。
接下来,发现如果不固定条件后验的方差,例如在编码器中,则存在性能方面40%的下降。这是因为在优化期间,熵或对数-雅可比项占主导地位。还发现使用基于仿射条件流的先验导致性能方面的下降(77.2对比74.9 CLL)。这说明了非线性条件流在学习高度非线性先验方面的优势。
图4d.1示意性图示了来自MNIST序列数据集的若干个示例。这些是基础事实数据。数据中以星号开始的粗体部分是待完成的数据。图4d.2示出了根据BMS-CVAE模型的完成。图4d.3示出了根据实施例的完成。可以看出,根据图4d.3的完成与图4d.2的那些完成相比,更紧密遵循基础事实得多。
另外的示例利用斯坦福无人机(Stanford Drone)数据集来说明,该斯坦福无人机数据集包括例如从无人机捕获的视频中的行人、骑自行车的人、汽车之类的交通参与者的轨迹。场景在交通参与者中是密集的,并且布局包含许多交汇,这导致高度多模型的交通参与者轨迹。评估使用5重交叉验证和单个标准的训练测试分割。以下表格示出了针对一实施例与多个已知方法相比较的结果。
方法 | mADE | mFDE |
社交GAN [14] | 27.2 | 41.4 |
MATF GAN [37] | 22.5 | 33.5 |
SoPhie [28] | 16.2 | 29.3 |
目标生成 [7] | 15.7 | 28.1 |
CF-VAE | 12.6 | 22.3 |
使用CNN编码器来从场景的最后观察到的RGB图像中提取视觉特征。这些视觉特征充当对条件标准化流的附加条件作用()。具有RGB输入的CF-VAE模型表现最佳——以超过20%胜过现有技术(欧几里德距离 4秒)。条件流能够利用视觉场景信息来微调学习的条件先验。
另外的示例利用HighD数据集来说明,该HighD数据集包括使用无人机在高速公路之上记录的车辆轨迹。HighD数据集具有挑战性,因为仅车辆轨迹的10%包含车道改变或交互——存在单个主模式连同若干个次模式。因此,预测单个平均未来轨迹的方案(例如,以主模式为目标)要胜出是具有挑战性的。例如,简单的前馈(FF)模型表现良好。使得该数据集更具有挑战性,因为当单个模式占主导地位时,基于VAE的模型频繁地遭受后验失效。基于VAE的模型通过使后验潜在分布失效为标准高斯先验来权衡忽略次模式的代价。实验证实,诸如CVAE的已知系统的预测典型地是轨迹的线性延续;也就是说,它们示出了到主模式的失效。然而,根据实施例的预测轨迹更多样得多,并且覆盖如车道改变之类的事件;它们包括次模式。
CF-VAE显著胜过已知模型,这证明后验失效没有发生。为了进一步对抗后验失效,移除了过去轨迹信息对解码器的附加条件作用。此外,对交互交通参与者的上下文信息的添加进一步改进性能。条件CNLSq流可以有效地捕获复杂的条件分布,并且学习复杂的数据相关先验。
图5a示意性地示出了神经网络机器学习方法500的实施例的示例。方法500可以是计算机实现的,并且包括
-访问(505)训练对的集合,训练对包括条件作用数据(c)和生成目标(x);其例如来自电子存储装置。
-利用条件标准化流函数以条件作用数据(c)为条件将潜在表示(z)映射(520)到基础空间(E)中的基础点(),编码器函数、解码器函数和条件标准化流函数是机器可学习函数,条件标准化流函数是可逆的;例如,于是编码器、解码器和条件流函数可以包括神经网络,
-在训练对的集合上训练(525)编码器函数、解码器函数和条件标准化流,该训练包括最小化编码器函数和解码器函数的级联的重建损失,并且最小化基础空间上的概率分布与应用于训练对的集合的编码器和条件标准化流函数的级联之间的差异。
图5b示意性地示出了神经网络机器可学习生成方法550的实施例的示例。方法550可以是计算机实现的,并且包括
-获得(555)条件数据(c),
-通过如下确定(560)生成目标
-获得(565)基础空间中的基础点(e),
-使用将潜在空间(Z)中的潜在表示(z)映射到目标空间(X)中的目标表示()的解码器函数来映射(575)潜在表示以获得生成目标。可能已经根据如本文中所阐述的机器可学习系统对解码器函数和条件标准化流函数进行了学习。
例如,机器学习方法、机器可学习生成方法可以是计算机实现的方法。例如,访问训练数据和/或接收输入数据可以使用例如电子接口、网络接口、存储器接口等通信接口来完成。例如,存储或检索例如网络的参数之类的参数可以从例如存储器、硬盘驱动器等电子存储装置完成。例如,将神经网络应用于训练数据的数据和/或调整存储的参数来训练网络可以使用例如计算机之类的电子计算设备来完成。编码器和解码器也可以输出均值和/或方差,而不是直接是输出。在均值和方差的情况下,为了获得输出,不得不从该定义的高斯分布中进行采样。
在训练期间和/或应用期间,神经网络可以具有多个层,其可以包括例如卷积层等。例如,神经网络可以具有至少2个、5个、10个、15个、20个或40个隐藏层,或者更多等等。神经网络中神经元的数量可以是例如至少10、100、1000、10000、100000、1000000,或者更多等等。
如对本领域技术人员来说将清楚的,执行所述方法的许多不同方式都是可能的。例如,步骤的顺序可以按所示顺序执行,但是步骤的顺序可以变化或者一些步骤可以并行执行。此外,在步骤之间可以插入其他方法步骤。插入的步骤可以表示诸如本文中所描述的方法的细化,或者可以与所述方法无关。例如,一些步骤可以至少部分地并行执行。此外,在下一步骤开始之前,给定的步骤可能尚未完全完成。
所述方法的实施例可以使用软件来执行,所述软件包括用于引起处理器系统执行方法500和/或550的指令。软件可以仅包括由系统的特定子实体采取的那些步骤。软件可以存储在合适的存储介质中,合适的存储介质诸如硬盘、软盘、存储器、光盘等。软件可以作为信号沿着有线或无线或者使用数据网络(例如因特网)而被发送。可以使软件可用于下载和/或用于在服务器上远程使用。所述方法的实施例可以使用被布置成配置可编程逻辑(例如,现场可编程门阵列(FPGA))以执行所述方法的比特流来执行。
将领会到,本发明还扩展到适应于将本发明付诸实践的计算机程序、特别是载体上或载体中的计算机程序。该程序可以是以源代码、目标代码、代码中间源以及诸如部分编译形式的目标代码的形式,或者是以适合用于在所述方法的实施例的实现中使用的任何其他形式。涉及计算机程序产品的实施例包括与所阐述的方法中的至少一个的每个处理步骤相对应的计算机可执行指令。这些指令可以细分成子例程和/或存储在可以被静态或动态链接的一个或多个文件中。涉及计算机程序产品的另一个实施例包括与所阐述的系统和/或产品中的至少一个的每个构件相对应的计算机可执行指令。
图6a示出了根据实施例的具有可写部分1010的计算机可读介质1000,该可写部分1010包括计算机程序1020,该计算机程序1020包括用于引起处理器系统执行机器学习方法和/或机器可学习生成方法的指令。计算机程序1020可以作为物理标记或者借助于计算机可读介质1000的磁化来体现在计算机可读介质1000上。然而,任何其他合适的实施例也是可设想的。此外,将领会到,尽管计算机可读介质1000在此处被示出为光盘,但是计算机可读介质1000可以是任何合适的计算机可读介质,诸如硬盘、固态存储器、闪速存储器等,并且可以是不可记录的或可记录的。计算机程序1020包括用于引起处理器系统执行训练和/或应用机器可学习模型的所述方法——例如,包括训练或应用一个或多个神经网络——的指令。
图6b中示出了根据机器学习系统和/或机器可学习生成系统的实施例的处理器系统1140的示意性表示。处理器系统包括一个或多个集成电路1110。图6b中示意性地示出了一个或多个集成电路1110的架构。电路1110包括处理单元1120(例如,CPU),以用于运行计算机程序组件来执行根据实施例的方法和/或实现其模块或单元。电路1110包括用于存储编程代码、数据等的存储器1122。存储器1122的部分可以是只读的。电路1110可以包括通信元件1126,例如天线、连接器或两者,等等。电路1110可以包括专用集成电路1124,以用于执行在所述方法中限定的部分或全部处理。处理器1120、存储器1122、专用IC 1124和通信元件1126可以经由互连1130(比如总线)彼此连接。处理器系统1110可以分别使用天线和/或连接器被布置用于接触和/或无接触通信。
例如,在实施例中,处理器系统1140(例如训练和/或应用设备)可以包括处理器电路和存储器电路,处理器被布置成执行在存储器电路中存储的软件。例如,处理器电路可以是英特尔酷睿i7处理器、ARM Cortex-R8等。在实施例中,处理器电路可以是ARM CortexM0。存储器电路可以是ROM电路或非易失性存储器,例如闪速存储器。存储器电路可以是易失性存储器,例如SRAM存储器。在后一种情况下,设备可以包括被布置用于提供软件的非易失性软件接口,例如硬盘驱动器、网络接口等。
应当注意到,上面提及的实施例说明而不是限制本发明,并且本领域技术人员将能够设计许多可替代的实施例。
在权利要求书中,被置于括号之间的任何参考标记不应被解释为限制权利要求。对动词“包括”及其词形变化的使用不排除除了在权利要求中所陈述的那些元素或步骤之外的元素或步骤的存在。在元素之前的冠词“一”或“一个”不排除多个这样的元素的存在。诸如“……中的至少一个”之类的表述当在元素列表之前时表示从该列表中选择全部元素或元素的任何子集。例如,表达“A、B和C中的至少一个”应当被理解为包括仅A、仅B、仅C、A和B两者、A和C两者、B和C两者或者全部A、B和C。本发明可以借助于包括若干不同元件的硬件、以及借助于合适编程的计算机来被实现。在列举了若干构件的设备权利要求中,这些构件中的若干个可以通过硬件的同一个项目来体现。仅有事实即在相互不同的从属权利要求中记载了某些措施不指示这些措施的组合不能被有利地使用。
在权利要求中,括号中的参考指代示例性实施例的附图中的参考标记或者实施例的公式,从而增加权利要求的可理解性。这些参考不应被解释为限制权利要求。
Claims (15)
1.一种机器可学习系统,所述系统包括
-训练存储装置,其包括训练目标数据(x)的集合,
-处理器系统,其被配置用于
-解码器函数,其将潜在空间(Z)中的潜在表示(z)映射到目标空间(X)中的目标数据表示(),其中编码器函数和解码器函数被布置成生成至少对概率分布的均值进行定义的参数,通过对具有生成的均值的所定义的概率分布进行采样来确定编码器函数和解码器函数的函数输出,其中由编码器函数定义的概率分布具有预定方差,
-在训练目标数据的集合上训练编码器函数、解码器函数和标准化流,所述训练包括最小化编码器函数和解码器函数的级联的重建损失,并且最小化在基础空间上的预定概率分布与应用于训练目标数据的集合的编码器和标准化流函数的级联之间的差异。
2.如权利要求1中所述的机器可学习系统,其中目标数据包括传感器数据。
3.如前述权利要求中任一项中所述的机器可学习系统,其中编码器函数和解码器函数定义高斯概率分布。
4.如前述权利要求中任一项中所述的机器可学习系统,其中解码器函数生成均值和方差,所述均值和方差是可学习参数。
7.如权利要求6中所述的机器可学习系统,其中
-训练对中的条件作用数据(c)包括交通参与者的过去轨迹信息,并且其中生成目标(x)包括交通参与者的未来轨迹信息,或者
-训练对中的条件作用数据(c)包括传感器信息,并且其中生成目标(x)包括分类。
10.一种机器可学习数据生成系统,所述系统包括
-处理器系统,其被配置用于
-解码器函数,其将潜在空间(Z)中的潜在表示(z)映射到目标空间(X)中的目标数据表示(),编码器函数对应于解码器函数而被定义,其中编码器函数和解码器函数被布置成生成至少对概率分布的均值进行定义的参数,通过对具有生成的均值的所定义的概率分布进行采样来确定编码器函数和解码器函数的函数输出,其中由编码器函数定义的概率分布具有预定方差,已经根据如权利要求1中所述的机器可学习系统对解码器函数和标准化流函数进行了学习,
-通过如下确定目标数据
-获得基础空间中的基础点(e),
-将逆标准化流函数应用于基础点以获得潜在表示,
-将解码器函数应用于潜在表示以获得目标数据。
11.如权利要求10中所述的机器可学习数据生成系统,其中
-基础点(e)根据预定概率分布从基础空间(E)中被采样。
12.如权利要求11中所述的机器可学习数据生成系统,其中基础点从基础空间中被多次采样,并且其中对应的多个目标数据的至少一部分被取平均。
13.一种机器学习方法,所述方法包括
-访问存储的训练目标数据(x)的集合,
-使用解码器函数将潜在空间(Z)中的潜在表示(z)映射到目标空间(X)中的目标数据表示(),其中编码器函数和解码器函数被布置成生成至少对概率分布的均值进行定义的参数,通过对具有生成的均值的所定义的概率分布进行采样来确定编码器函数和解码器函数的函数输出,其中由编码器函数定义的概率分布具有预定方差,
-在训练目标数据的集合上训练编码器函数、解码器函数和标准化流,所述训练包括最小化编码器函数和解码器函数的级联的重建损失,并且最小化在基础空间上的预定概率分布与应用于训练目标数据的集合的编码器和标准化流函数的级联之间的差异。
14.一种机器可学习数据生成方法,所述方法包括
-使用解码器函数将潜在空间(Z)中的潜在表示(z)映射到目标空间(X)中的目标数据表示(),编码器函数对应于解码器函数而被定义,其中编码器函数和解码器函数被布置成生成至少对概率分布的均值进行定义的参数,通过对具有生成的均值的所定义的概率分布进行采样来确定编码器函数和解码器函数的函数输出,其中由编码器函数定义的概率分布具有预定方差,已经根据如权利要求1中所述的机器可学习系统对解码器函数和标准化流函数进行了学习,
-通过如下确定目标数据
-获得基础空间中的基础点(e),
-将逆标准化流函数应用于基础点以获得潜在表示,
-将解码器函数应用于潜在表示以获得目标数据。
15.一种暂时性或非暂时性计算机可读介质(1000),其包括表示指令的数据(1020),所述指令当被处理器系统执行时,引起处理器系统执行根据权利要求13或14的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19186779.5 | 2019-07-17 | ||
EP19186779.5A EP3767533A1 (en) | 2019-07-17 | 2019-07-17 | A machine learnable system with normalizing flow |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112241756A true CN112241756A (zh) | 2021-01-19 |
Family
ID=67402857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010685689.1A Pending CN112241756A (zh) | 2019-07-17 | 2020-07-16 | 具有标准化流的机器可学习系统 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP3767533A1 (zh) |
CN (1) | CN112241756A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112884777A (zh) * | 2021-01-22 | 2021-06-01 | 复旦大学 | 基于自采样相似的多模态协作食管癌病变图像分割系统 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11909482B2 (en) * | 2020-08-18 | 2024-02-20 | Qualcomm Incorporated | Federated learning for client-specific neural network parameter generation for wireless communication |
CN113779169B (zh) * | 2021-08-31 | 2023-09-05 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 时空数据流模型自增强方法 |
CN114003900A (zh) * | 2021-10-25 | 2022-02-01 | 广东电网有限责任公司广州供电局 | 变电站二次系统网络入侵检测方法、装置及系统 |
CN114265431B (zh) * | 2021-12-22 | 2023-07-04 | 中国地质大学(武汉) | 基于分布式覆盖控制的地灾监测方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10679129B2 (en) * | 2017-09-28 | 2020-06-09 | D5Ai Llc | Stochastic categorical autoencoder network |
-
2019
- 2019-07-17 EP EP19186779.5A patent/EP3767533A1/en active Pending
-
2020
- 2020-07-16 CN CN202010685689.1A patent/CN112241756A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112884777A (zh) * | 2021-01-22 | 2021-06-01 | 复旦大学 | 基于自采样相似的多模态协作食管癌病变图像分割系统 |
CN112884777B (zh) * | 2021-01-22 | 2022-04-12 | 复旦大学 | 基于自采样相似的多模态协作食管癌病变图像分割系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3767533A1 (en) | 2021-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210019619A1 (en) | Machine learnable system with conditional normalizing flow | |
Mangalam et al. | It is not the journey but the destination: Endpoint conditioned trajectory prediction | |
Casas et al. | Implicit latent variable model for scene-consistent motion forecasting | |
Kurutach et al. | Learning plannable representations with causal infogan | |
KR102001798B1 (ko) | 비디오 이해를 위한 모션-기반 어텐션에 의한 순환 네트워크들 | |
Yang et al. | Pointflow: 3d point cloud generation with continuous normalizing flows | |
Li et al. | Infogail: Interpretable imitation learning from visual demonstrations | |
CN112241756A (zh) | 具有标准化流的机器可学习系统 | |
Karle et al. | Scenario understanding and motion prediction for autonomous vehicles—review and comparison | |
Tao et al. | Dynamic and static context-aware lstm for multi-agent motion prediction | |
Akan et al. | Stretchbev: Stretching future instance prediction spatially and temporally | |
Wei et al. | Learning motion rules from real data: Neural network for crowd simulation | |
CN114926770A (zh) | 视频动作识别方法、装置、设备和计算机可读存储介质 | |
Zhang et al. | A multi-modal states based vehicle descriptor and dilated convolutional social pooling for vehicle trajectory prediction | |
Bi et al. | A deep learning-based framework for intersectional traffic simulation and editing | |
Tang et al. | Exploring social posterior collapse in variational autoencoder for interaction modeling | |
Janjoš et al. | StarNet: Joint action-space prediction with star graphs and implicit global-frame self-attention | |
Oh et al. | Hcnaf: Hyper-conditioned neural autoregressive flow and its application for probabilistic occupancy map forecasting | |
Chen et al. | Polydiffuse: Polygonal shape reconstruction via guided set diffusion models | |
Katyal et al. | Occupancy map prediction using generative and fully convolutional networks for vehicle navigation | |
Janjoš et al. | San: Scene anchor networks for joint action-space prediction | |
Karlsson et al. | Predictive world models from real-world partial observations | |
Ge et al. | Deep reinforcement learning navigation via decision transformer in autonomous driving | |
Lange et al. | Lopr: Latent occupancy prediction using generative models | |
Hu | Neural world models for computer vision |
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 |