自己构建计算机视觉模型是一项艰苦的工作,这已经不是什么秘密了。它需要将不同的平台、开源工具和开发人员笔记本整合在一起,以创建一个正常运行的机器学习管道。这只是个开始;在你有了一个训练有素的模型之后,你仍然需要做工程工作来在野外部署和维护它。
我每天都与花费无数小时制作这些工作流的开发人员交谈-尽管它们无疑令人印象深刻,但它们也是劳动密集型的,需要频繁的维护。更糟糕的是,当这些完全不同的系统中的任何一个崩溃时(它们都会崩溃),就不可能找到错误的来源。特别是在拼凑出来的工程师离开公司之后。
如果你问我,公司应该转而使用由一心一意的专家团队精心制作和维护的工具链,并且已经经过数千名开发人员的战斗测试。毕竟,这个过程不一定是一个简单的过程。它至少需要六个关键组件:
开发人员(天生)足智多谋,面向解决方案,适应能力强。我知道,当你相信你可以自己构建完全相同的解决方案时,购买一个产品可能会感觉违反直觉。让我们挖洞一起来看看计算机视觉团队在构建自己的(内部)机器学习工具时遇到的一些常见问题,以及使用端到端计算机视觉平台可以如何解决、缓解或完全消除这一痛苦。
问题1:版本控制和协作
如果团队使用自己的计算机视觉管道,他们通常会遇到的一个挑战是,不同的数据科学家和工程师将在同一数据集的不同版本上工作,而且很难保持每个人的更改和添加的一致性。如果您的某个团队成员注意到并修复了您的注释中的错误,该修复将如何应用到其他团队成员的模型中?如果您想要添加新的培训数据以提高边缘案例的性能,信息是如何传播的?如果一位数据科学家培训了一个新模型,与所有其他数据科学家以前的模型相比,您如何跟踪它的表现呢?
像Roboflow这样的系统使开发人员和领域专家都可以创建准确的、即时可用的计算机视觉模型-每个人都可以跟踪每个版本随着时间的推移的效果。您可以轻松查看帐户中以前的所有数据集,并且可以清楚地看到哪个版本经过了预先培训、培训和部署。然后,Roboflow团队可以通过评估账户内的结果模型性能(MAP、精度和回调)来比较每个独特的数据集参数。Roboflow
问题2:缺乏中心性
生成和维护外部开发的机器学习管道通常只由一个人或一小群开发人员负责。这意味着,任何数量的员工流失都可能严重阻碍您的团队的进展,因为其他每个人都试图了解(并重新拼凑)用于开发管道的许多不同的工具和解决方案。谁有权访问哪些平台?注释存储在哪里?哪些系统需要手动更新或维护,频率是多少?
预先建立的计算机视觉管道位于云中,这意味着每个人,包括非技术利益相关者,都将始终可以访问整个工作流程。共享帐户可以存放所有源图像、注释、数据集和经过训练的模型。这些是组成整个机器学习管道的组件,它们应该存在于一个中央存储库中。
问题3:培训过程缓慢
从头开始训练一个模型需要很长时间。您不希望每次对数据集进行改进时都必须等待一个完整的模型进行训练-您希望模型从封装了您的模型以前学习到的所有内容的上一个检查点开始。
这就是所谓的“转移学习”,它会被放入你的Roboflow账户中。只需选择您希望新模型向其学习的经过训练的模型,下一次迭代将从上一次停止的位置开始学习新数据。Transfer Learning
问题4:糟糕的模型性能
在花了这么多时间和精力来创建您自己的计算机视觉管道之后,当结果模型没有您的团队希望或期望的那么好时,可能会是毁灭性的。如果没有分析和报告功能,您将需要了解模型在哪里以及如何出现故障,优化该模型感觉就像是一场昂贵且耗时的猜测和检查游戏。
了解模型在野外的性能,然后将推理数据反馈到源数据集以进行下一次模型迭代的过程称为主动学习,与转移学习类似,它也类似于烘焙到Roboflow帐户中。此外,我们的Upload API使您能够预先选择此工作的最高杠杆图像,包括最终不正确的低置信度预测和高置信度预测。Active Learning
我们设计此工作流是为了让我们的客户交钥匙,这些客户正在使用部署中的一个或多个模型积极收集推理数据,因此他们的模型可以使用得越多就越好。
问题5:部署
如果一个训练有素的模型不能在野外部署,那么它就没有多大用处。有了内部工具和定制的培训管道,部署可能会带来一系列挑战,这取决于您希望模型对真实世界数据运行预测的方法(例如,驾驶无人机收集航空图像,在仓库中安装摄像头,或将模型嵌入智能手机应用程序)。开发人员可以花几周的时间构建自己的api调用和到独特设备的docker,但这些解决方案都是静电,无法随着这个行业快速变化的格局而发展。
您可以通过多种方式从Roboflow帐户部署经过训练的模型,包括托管推理API、设备上部署(到NVIDIA Jetson和OpenCV AI Kit设备等目标),甚至网络浏览器。我们提供Docker和文档,使这一过程变得简单和可扩展,即使整个行业都在发生变化,并且随着新一代工具向公众发布。您将能够在几天内达到生产,而不是几个月。a hosted inference API NVIDIA Jetson OpenCV AI Kit devices a web browser
问题6:计划受阻
所有队伍都被封锁了。这种情况时有发生,尤其是在计算机视觉领域,新技术(以及旧技术的进步)带来的问题往往多于它们所回答的问题。在这种情况下,专家们求助于其他专家,GitHub上的论坛,学术论文,甚至YouTube视频。有一组机器学习专家随叫随到不是很好吗?
使用Roboflow最好的部分之一是我们的客户直接从我们的团队收到的教育组件、在线文档以及我们的教程视频和博客文章,这些视频和博客文章讲述了常见的陷阱、操作方法和最佳实践。当您使用Roboflow构建时,您永远不会独自构建。our team online documentation videos
有了Roboflow的专家和您现有的工程人才的专业知识和帮助,您将不需要雇佣昂贵的机器学习博士团队。如果你已经有了计算机视觉专家,他们可以把时间花在他们工作中杠杆更高、差异化的部分,而不是重新发明轮子。
问题7:成本
许多技术专家发现我们的解决方案时,他们正在建设一条强大而复杂的管道,他们显然已经投入了大量的时间和资源来开发。我们想强调的是,切换到Roboflow的模块以获得更好的可伸缩性和增长并不会浪费这些努力。从长远来看,使用Roboflow的总成本可能比维护一个团队来支持和扩展您现有的解决方案要低得多。
事实上,您开发的外部系统可以告诉我们很多关于如何为您服务的信息。我们可以发现您当前工作流程的优缺点,以更好地满足您项目的独特需求。我们的目标是创建一个两全其美的平台:一个您可以拥有、触摸和管理的系统,以及一个存储所有数据和模型的中心中心,它可以自动完成今天从头开始构建所需的大部分手动工作。
准备好了,准备好了,开始烘焙了!
想知道Roboflow是否可以和您现有的预建管道一样(如果不是更好的话)运行?我们向你挑战,让你来一次烤肉大赛。联系我们获得免费培训学分,我们将引导您完成上传图像+注释和在Roboflow上培训新模型的过程。让我们比较一下结果,并帮助您正式决定是与我们一起建设,还是自己建设。Contact us
原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/06/16/%e4%b8%8d%e5%ba%94%e8%af%a5%e6%8e%a8%e5%87%ba%e8%87%aa%e5%b7%b1%e7%9a%84%e8%ae%a1%e7%ae%97%e6%9c%ba%e8%a7%86%e8%a7%89%e7%ae%a1%e9%81%93%e7%9a%847%e4%b8%aa%e5%8e%9f%e5%9b%a0/