0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

模拟使软件工程师能够生成训练神经网络所需的数据

星星科技指导员 来源:嵌入式计算设计 作者:Peter McGuinness 2022-07-09 07:45 次阅读

在多年前,当多伦多大学的一个团队使用经过训练而不是设计来识别图像的卷积神经网络赢得 Imagenet 挑战赛时,在计算世界的一个有点不起眼的角落发生了重大震动。该团队和其他团队不仅击败了最好的检测算法,而且在许多图像分类任务中都超越了人类。现在,仅仅几年后,深度神经网络似乎是不可避免的。

即使在2012年,机器学习也不是什么新鲜事物,事实上,到目前为止,几乎所有的分类软件都进行了一些训练。但它们在某种程度上都依赖于人工设计的特征提取算法。这个新解决方案(后来以首席研究员的名字命名为 AlexNet)的不同之处在于,它没有这种人工设计的算法,并且完全通过监督学习获得了结果。

这一发现对整个计算领域的影响已经在与图像分类相距甚远的领域产生了巨大的影响,随着研究人员学习如何将深度学习技术应用于更多领域,预计它带来的变化在未来会更加深远。以及越来越多的领域中的更多问题。对深度学习的热情甚至导致一些评论员预测依赖于设计算法的经典软件创作的终结,取而代之的是经过大量数据训练的网络

软件解决方案从数据暴露演变的愿景有一些引人注目的方面:通过实例进行培训为软件提供了真正的大规模制造技术的可能性。目前,软件制造处于工业化前阶段,每个应用程序都是定制设计的,就像客车制造的汽车一样。借助标准算法平台(网络)和自动化培训环境,深度学习可以为软件做亨利福特为汽车制造所做的事情。

无论您是否同意这一愿景,深度学习的关键特征在于它取决于数据的可用性,因此,特定领域的专业知识变得不如相关数据的所有权重要。正如深度学习先驱 Andrew Ng 所说:“获胜的不是拥有最好算法的人,而是拥有最多数据的人。” 这是希望过渡到新范式的公司面临的核心问题:他们从哪里获取数据?

行为数据的作用

对于依赖在线行为数据的公司来说,答案是显而易见的,我们所有浏览习惯的记录、跟踪和转售现在无处不在,以至于它们的开销都支配了我们的在线体验。对于与现实世界打交道更密切的公司来说,解决方案不太方便。Waymo 是自动驾驶汽车领域最知名品牌,它通过部署仪表汽车车队来绘制位置图并记录现实世界的摄像头、雷达和其他数据,然后将这些数据输入其感知软件,从而解决了这个问题。该领域的其他参与者也以较小的方式效仿,但即使是拥有数百万英里行驶里程和大量可用数据的 Waymo,也发现它不足以完成这项任务。

首先,并非所有数据都是平等的:为了有用,它必须经过准确和彻底的注释,即使在今天,这仍然是一项昂贵且容易出错的业务。经过几年努力使流程自动化,亚马逊的 Mechanical Turk 仍然是注释数据的首选方法。除了被注释之外,为了有用,数据必须是相关的,当相关性取决于任何给定事件的不常见、危险或完全非法时,这是一个主要问题。可靠、相关的真实数据很难获得,以至于 Waymo 已经开始在沙漠中建立自己的模拟城市,在那里它可以模拟在受控条件下所需的行为。

但是在好莱坞可以制作完全令人信服的 CGI 场景的世界中,必须有可能使用这种能力为现实世界场景创建训练数据,当然,确实如此。几年来,该行业一直在朝着这个方向发展,一个研究人员团队开发了一种方法来注释侠盗猎车手的序列。Udacity 有一个用于自动驾驶汽车模拟器的开源项目,作为其自动驾驶汽车纳米学位的一部分。

与 Udacity 示例一样,大多数可用的模拟器旨在实现验证循环以测试经过训练的感知堆栈,而不是生成主要用于训练本身的数据。那些确实存在的数据模拟器被汽车公司及其初创竞争对手紧紧抓住,展示了他们产生的数据的基本价值。

那么,合成数据真的可以成功地用于训练神经网络吗?需要多少和什么样的数据才能完成这项工作?

什么是 KITTI

总部位于帕洛阿尔托的Highwai发布了其试点研究的结果,该研究使用 KITTI 数据集作为起点,以检查用于增强 KITTI 提供的注释图像的完全合成数据集可能获得的收益。

训练图像是使用 Highwai 的真实世界模拟器制作的,其中包括从市区和住宅郊区场景拍摄的许多序列,这些场景中挤满了各种车辆、行人和自行车。目的是对象检测和分类,而不是跟踪,因此将捕获帧速率设置为较低,以便在保持数据集大小适中的同时捕获各种图像。图像是在一系列条件下拍摄的,包括相机高度和视野、由于一天中的时间和大气影响(如雾和霾)引起的照明和阴影变化。虽然 Highwai 的工具支持 LIDAR,但在这种情况下只捕获了可见光相机数据。注释包括诸如“行人、

使用 Highwai 的数据增强工具包为训练准备数据,以添加相机传感器噪声、图像压缩噪声、向图像添加“干扰”对象并使训练对颜色不敏感。在此过程结束时,合成数据集的总大小为 5,000 张图像中的 54,443 个对象。(相比之下,原始 KITTI 数据集中有 37,164 个对象和 7,000 个图像)。生成数据、扩充数据并将其添加到训练数据集的总时间不到两个小时。

使用的基础网络是一个 Faster RCNN Inception Resnet,它被预训练为上下文中常见对象 (COCO) 数据集上的对象检测器,并进行了两次补充重新训练;首先仅使用 KITTI 数据集生成基线,然后结合 KITTI 和 Highwai 合成数据集。测试是在 KITTI 参考测试数据集上完成的,该数据集仅包含真实世界的图像,并且在仅 KITTI 和 KITTI 加合成训练之间显示出显着的性能提升。添加合成数据后,识别率总体提高了 5.9%,对汽车和行人的检测显着提高——这一结果并不令人惊讶,因为 Highwai 合成数据集集中在这些对象类型上。

需要多少训练数据的问题没有很好的答案,但 Highwai 指出高度针对性的数据管理对于将其保持在合理范围内至关重要。一个很好的例子是他们为一个未公开的对象检测项目创建的数据集,其中实际用于训练的图像和注释数据总量约为 15GB。最初的大约 12,000 张图像包含大约 120,000 个带注释的对象,是从 30,000 个图像和 500,000 个带注释的对象的原始集合中自动整理出来的。

像这样的结果对于独立软件制造商以及系统集成商和 OEM 来说都很重要。当然,他们可以使用亚马逊的服务来帮助训练网络,但如果价值在于数据,那么商业可行性要求他们能够在该领域创建 IP——他们必须能够使用自己的领域专业知识创建自己的训练数据来指定、优化和管理数据集。这意味着旨在生产此类 IP 的工具行业的出现是重要的一步,将受到欢迎。我们可以期待看到使用合成训练数据的专业知识的快速发展,以及生产它的工具的同样快速发展。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4575

    浏览量

    98773
  • 模拟器
    +关注

    关注

    2

    文章

    818

    浏览量

    42698
  • 机器学习
    +关注

    关注

    66

    文章

    8132

    浏览量

    130577
收藏 人收藏

    评论

    相关推荐

    BP神经网络算法的基本流程

    训练经过约50次左右迭代,在训练集上已经能达到99%的正确率,在测试集上的正确率为90.03%,单纯的BP神经网络能够提升的空间不大了,但kaggle上已经有人有卷积
    发表于 03-20 09:58 399次阅读
    BP<b class='flag-5'>神经网络</b>算法的基本流程

    Kaggle知识点:训练神经网络的7个技巧

    训练神经网络的挑战在训练数据集的新示例之间取得平衡。七个具体的技巧,可帮助您更快地训练出更好的神经网络
    的头像 发表于 12-30 08:27 361次阅读
    Kaggle知识点:<b class='flag-5'>训练</b><b class='flag-5'>神经网络</b>的7个技巧

    卷积神经网络的优点

    于传统的神经网络模型,卷积神经网络具有以下优点。 1. 局部连接和权值共享:卷积神经网络通过设置局部连接和权值共享的结构,有效地减少了神经网络的参数数量。此设计使得模型更加稀疏,并且
    的头像 发表于 12-07 15:37 2975次阅读

    如何训练这些神经网络来解决问题?

    神经网络建模中,经常会出现关于神经网络应该有多复杂的问题,即它应该有多少层,或者它的滤波器矩阵应该有多大。这个问题没有简单的答案。与此相关,讨论网络过拟合和欠拟合非常重要。过拟合是模型过于复杂
    发表于 11-24 15:35 311次阅读
    如何<b class='flag-5'>训练</b>这些<b class='flag-5'>神经网络</b>来解决问题?

    不可错过!人工神经网络算法、PID算法、Python人工智能学习等资料包分享(附源代码)

    (Artificial Neural Network,即ANN) 可以概括的定义为: 由大量具有适应性的处理元素(神经元)组成的广泛并行互联网络,它的组织能够模拟生物
    发表于 09-13 16:41

    卷积神经网络(CNN)的工作原理 神经网络训练过程

    前文《卷积神经网络简介:什么是机器学习?》中,我们比较了在微控制器中运行经典线性规划程序与运行CNN的区别,并展示了CNN的优势。我们还探讨了CIFAR网络,该网络可以对图像中的猫、房子或自行车等对象进行分类,还可以执行简单的语
    发表于 09-05 10:19 933次阅读
    卷积<b class='flag-5'>神经网络</b>(CNN)的工作原理 <b class='flag-5'>神经网络</b>的<b class='flag-5'>训练</b>过程

    什么是卷积神经网络?为什么需要卷积神经网络

    卷积神经网络(Convolutional Neural Network,CNN)是一种用于处理具有类似网格结构的数据神经网络。它广泛用于图像和视频识别、文本分类等领域。CNN可以自动从训练
    发表于 08-22 18:20 1546次阅读

    卷积神经网络主要包括哪些 卷积神经网络组成部分

    卷积神经网络主要包括哪些 卷积神经网络组成部分 卷积神经网络(CNN)是一类广泛应用于计算机视觉、自然语言处理等领域的人工神经网络。它具有良好的空间特征学习能力,
    的头像 发表于 08-21 17:15 1116次阅读

    cnn卷积神经网络模型 卷积神经网络预测模型 生成卷积神经网络模型

    cnn卷积神经网络模型 卷积神经网络预测模型 生成卷积神经网络模型  卷积神经网络(Convolutional Neural Network
    的头像 发表于 08-21 17:11 812次阅读

    卷积神经网络和深度神经网络的优缺点 卷积神经网络和深度神经网络的区别

    深度神经网络是一种基于神经网络的机器学习算法,其主要特点是由多层神经元构成,可以根据数据自动调整神经元之间的权重,从而实现对大规模
    发表于 08-21 17:07 2351次阅读

    卷积神经网络算法原理

    取特征,并且表现出非常出色的性能,在计算机视觉、自然语言处理等领域都有广泛的应用。在本文中,我们将详细介绍卷积神经网络的算法原理。 一、卷积操作 卷积操作是卷积神经网络的核心操作之一,它模拟
    的头像 发表于 08-21 16:49 780次阅读

    卷积神经网络模型训练步骤

    模型训练是将模型结构和模型参数相结合,通过样本数据的学习训练模型,使得模型可以对新的样本数据进行准确的预测和分类。本文将详细介绍 CNN 模型训练
    的头像 发表于 08-21 16:42 1065次阅读

    神经网络模型用于解决什么样的问题 神经网络模型有哪些

    下一个单词或者下一句话的概率,从而建立起一个能够捕捉序列数据中语言模式的模型,从而用于自然语言生成、机器翻译、文本分类等任务。 序列标注任务:神经网络模型可以将文本序列中的各个位置与相
    的头像 发表于 08-03 16:37 4269次阅读

    如何使用TensorFlow将神经网络模型部署到移动或嵌入式设备上

    。 使用TensorFlow对经过训练神经网络模型进行优化,步骤如下: 1.确定图中输入和输出节点的名称以及输入数据的维度。 2.使用TensorFlow的transform_graph工具
    发表于 08-02 06:43

    什么是神经网络?为什么说神经网络很重要?神经网络如何工作?

    神经网络是一个具有相连节点层的计算模型,其分层结构与大脑中的神经元网络结构相似。神经网络可通过数据进行学习,因此,可训练其识别模式、对
    的头像 发表于 07-26 18:28 1996次阅读
    什么是<b class='flag-5'>神经网络</b>?为什么说<b class='flag-5'>神经网络</b>很重要?<b class='flag-5'>神经网络</b>如何工作?