滑铁卢大学CogDrive实验室探索了基于Domain Randomization 的模拟器到真实世界知识迁移算法。该算法可以使用效果较弱的domain adaptation方法来进行定向数据增强,让诸如自动驾驶汽车的智能体获得真实世界可用的策略。
随着数据科学的发展,很多之前过于复杂,难以解决的问题都可以通过数据拟合的方式来解决。基于学习的算法一般都基于独立同分布的假设,即用于训练的数据与真实环境遇到的数据符合统一分布,且相互独立。要符合这一假设,在训练时需要采集大量数据以覆盖真实使用时可能遇到的场景。对于自动驾驶,对数据量的需求格外巨大,而数据采集的过程是昂贵,费时费力,甚至危险的,数据标注的过程更是需要大量人力。
而模拟器作为一个廉价但有准确标注的数据源,如果可以解决模拟器与真实世界数据上的差异,带来的训练得到的策略上差异,将可以在自动驾驶领域发挥巨大价值。从统计学上讲,模拟器上的策略可用于真实世界的原因在于,模拟器于真实世界的数据具有相似的条件概率,仅是边缘概率有较大差异。通俗的理解就是,人在模拟器中的驾驶策略与在真实世界的驾驶策略是相似的,仅是模拟器里的车与真实世界的车,道路长得不太一样。
Figure1领域自适应与邻域随机化
为探索模拟器数据对于真实世界自动驾驶的可用性,滑铁卢大学CogDrive实验室探索了基于Domain Randomization 的模拟器到真实世界知识迁移算法。主流的用于知识迁移的邻域自适应算法一般是基于度量的,算法的关键在于量化两个不同数据分布之间的差异,最终寻求一个将两个数据分布映射到同一特征空间的映射函数。而Domain Randomization类算法一般侧重于寻找两个不同数据分布的共同特征空间(common latent space),再基于这个共同特征空间进行进一步的训练。
对于自动驾驶模拟器与真实的驾驶环境,一个先验知识是模拟器与真实世界在图像纹理,光照条件上有较大不同,而在几何信息上大致相同,基于这个先验知识,可以尝试构建一个从模拟器迁移到真实世界的语义分割算法。
一般的 Domain Randomization 方法首先对模拟器图像进行一些自定义的图像增强,然后使用增强后的图像进行训练。该团队的Domain Randomization则是基于图像风格迁移来进行随机化,从而进行知识的迁移。图像风格迁移(Neural Style Transfer)可以视作一种一类图像到另一类图像的Domain adaptaiton。使用图像风格迁移来进行Domain Randomization,实则是在使用一些效果较弱的Domain Adaptation方法来定向增强训练数据,从而使得目标域数据分布属于训练数据分布。
相比手工定义的图像增强,基于风格迁移的方法可以起到更好的效果。随后一个基于 Conditional GAN的随机化后的图像到原图像的映射网络被进一步用于将随机化后的图像映射为其对应模拟器原图。由于随机化后的图像与目标域图像有一个共同的特征空间,这个映射函数同样可以用于将真实世界的图像映射到对应的模拟器“风格”的图像,从而可以将一个完全由模拟器数据训练的语义分割模型应用到其中。
整个流程如图3所示。在真实数据使用过程中,仅有一个generator需要添加在语义分割模型之前,用于将真实世界的图像转化为符合模拟器数据分布的图像。
Figure3训练流程
更进一步,最后加在具体的任务网络前的这个Generator, 它的作用在于将边缘分布与训练数据有一些差异的数据映射到与训练数据相同的边缘分布。这样一个模块不只可以用于完成模拟器到真实世界的知识迁移,也可以用于增强模型的鲁棒性。
在模拟器中使用该方法,可以定向增强训练数据,让无人驾驶汽车获取真实世界可用的策略。