在Roboflow,目标是让计算机视觉技术变得人人可用。首先要做的就是打破那些认为阻碍普通人探索和实施计算机视觉的障碍。通过提供一个真正的“端到端”解决方案来实现这一点,这个产品允许用户从一组原始图像开始,在短短一个下午的时间里,就能创建一个完全训练好的计算机视觉模型。这个过程只需要一台笔记本电脑、一个Wi-Fi连接和一点好奇心。(甚至不需要自己的源图像,提供了整个公共图像数据集,可以将它们“复制”到Roboflow账户中开始使用。)
一旦模型被训练和部署,就为用户提供了他们需要的工具来迭代地提高模型性能——通过将推理数据发送回Roboflow进行注释、训练和重新部署。这个过程被称为主动学习,它是完成机器学习循环的最后一步。
要创建一个功能性的计算机视觉模型,需要执行一系列步骤。首先,需要图像,尽管这可能让一些人感到惊讶,已经了解到,在这一点上,质量比数量更重要。最好的源图像是代表性图像——意味着:它们包含希望教会模型检测的对象,并且它们与希望这些图像在部署中“看到”的上下文非常相似。
关于这第二点的一点澄清:例如,如果正在训练一个模型来检测水下的鱼,那么源图像应该主要包含水下的鱼的图片——而不是在地面上、在日光下、在船上或悬挂在线上的鱼。
当每天早晨走出家门时,大脑会瞬间(并且下意识地)识别出周围的所有物体——一棵树、人行道、一辆经过的汽车。这些输入是庞大且多样的,甚至可以在不同的上下文和条件下识别它们。当开始创建计算机视觉模型时,承担了雄心勃勃的任务,即教会计算机像一样看待世界——因此,过程中的下一个逻辑步骤是对数据集中的图像进行注释或标记。
注释是人为的过程,通过这个过程,图像被标记或分配元数据标签。这个过程对于开发计算机视觉模型至关重要;这是指导和教导模型学习的方式。在Roboflow,提供边界框注释。正如从网站上的许多图像中看到的,这看起来像是一个明亮的彩色矩形轮廓,围绕着希望教会模型检测的对象。注释工具用户友好,适合团队或个人使用,并且包含许多节省时间的功能,使这个众所周知的劳动密集型步骤变得更容易,包括标签助手,这是Pro计划中最受欢迎的功能之一。
在准备训练模型之前,会想要预处理和增强数据集中的图像。预处理步骤旨在帮助模型更快地训练和运行推理(例如,调整所有图像的大小,使它们统一,或者使它们全部变为灰度)——而增强步骤则旨在通过向模型展示各种扭曲的图像示例来提高模型在部署中的弹性,这些扭曲模拟了它可能在现实世界中遇到的情况。这些情况的例子包括亮度、色调和旋转。
将增强添加到这些源图像中,不可避免地意味着增加数据集的大小;正在复制这些图片,并且只是稍微改变它们——只是为了帮助生成的计算机视觉模型理解,即使在浑浊的水域中,鱼仍然是鱼。
数据集的每个变体在Roboflow中都会创建一个新的“版本”。这些版本是冻结在时间中的;每一个都是一个快照,允许尝试不同的模型、框架和超参数,而不会无意中改变其他可能使结果无效的变量。
最后,是时候训练模型了。这是大舞会。提供将数据集导出用于自己的自定义模型在所有常见的机器学习框架中使用的能力,以及与外部训练管道(如AWS Rekognition、Google AutoML和MS Azure)的无代码集成,但鼓励用户尝试Roboflow Train,这是直接内置在Roboflow中的一个选项。
Roboflow Train是客户可以使用的自动化机器学习解决方案,用于将任何数据集转换为训练好的计算机视觉模型,准备部署。使用Roboflow Train有许多好处,包括提高模型性能、单次点击选项的简单性,以及上述的标签助手功能。
Roboflow Train促进了开发主动学习管道的流畅性(和自动化),使模型性能随着时间的推移通过推理数据得到迭代改进。稍后会有更多关于这方面的内容。
通过Roboflow开始从模型中获取真实世界图像的预测。这是(最)有趣的部分——特别是如果有机会向家人、朋友或同事展示模型的表现。可以使用Roboflow中提供的任何部署目的地,包括托管的Web推理和设备上的部署(NVIDIA Jetsons、OAK设备,甚至是一个Web浏览器)。
这里有一些可以在野外检查的模型:
EGO HANDS
(好的,这个有点棘手。)
ROCK, PAPER, SCISSORS!
这个模型不仅仅“看到”手——它识别出石头、剪刀、布的常见手势。
MASK/NO MASK
有口罩吗?看看这个模型是否知道什么时候戴着它……以及什么时候没有。
在野外的模型暴露于真实世界的推理数据,这些数据不可避免地会与它们训练时的图像不同。监控并将这些失败案例反馈到训练管道中,以便随着时间的推移变得更好,这是非常重要的。
收集、注释和重新训练推理数据的过程被称为“主动学习”——结合转移学习(或从先前模型的检查点训练模型),客户被赋予了创建计算机视觉模型的能力,这些模型可以迭代学习,最终在速度、准确性和一致性方面超越人类。
模型,像人一样,可能有盲点——最有可能被模型误识别的类别(或对象)同时也是反馈到Roboflow以帮助其改进的最高杠杆图像。
通过这种方式,主动学习是一个持续的过程,这就是为什么Roboflow是一个设计用于长期使用的解决方案,以在服务的行业中创建表现最佳的模型。