用AutoML Vision alpha构建ML模型:识别不同类型的椅子

2023-11-11 17:30

本文主要是介绍用AutoML Vision alpha构建ML模型:识别不同类型的椅子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


本文将会使用AutoML Vision alpha来构建和部署一个机器学习模型,从原始数据收集到服务模型,以及介于两者之间的一切!该模型可识别不同类型的椅子,以及其他一些项目,以便我们进行更好的测量。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


许多人一直在呼吁要访问AutoML Vision alpha,我们稍微了解一下工作流程,告诉你如何使用它,即使你尚未获得等候名单。

那么......什么是AutoML?

用AutoML Vision alpha构建ML模型:识别不同类型的椅子

Cloud Vision API可以识别椅子,但它在识别别的方面也是通用的

使AutoML如此引人注目的一个原因是自定义模型。现有的模型和服务(如Cloud Vision API)可以识别给定的图片中是否有一张椅子,但是如果您是设计和制造椅子的,并且需要一种方法来对库存中各种品牌的椅子进行分类,那该怎么办?如果能够使用“自定义”视觉API,也就是说可以识别特定的椅子,那就完美了。这也是AutoML Vision的目标。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子

这是一个黄色的椅子

用AutoML Vision alpha构建ML模型:识别不同类型的椅子

这张图片有更多的椅子

AutoML Vision会将许多标记的照片作为输入。 这时候可能有人要问有多少张照片?理想情况下,每个对象大约有数百个是好的。所以现在可以走出去开始拍照,如果您厌倦了点击该快门按钮,您可以尝试我一直在使用的替代方法。

拍照 - 用视频的那种!

为了更容易为AutoML Vision捕获数据,我通过捕获我感兴趣的椅子的视频来收集我的训练数据,然后使用ffmpeg来提取帧。

作者拍了一些各种不同的户外椅子的视频。同时还拍了一些关于它们放置的桌子的视频,以及一辆自行车,这只是为了让事情更有趣。

我们一起来看看这段录像的例子。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


用AutoML Vision alpha构建ML模型:识别不同类型的椅子


在这个视频里有不同形状、风格和颜色的椅子。但没有视频长度超过30秒。短片中有一张桌子,还有一个自行车,这是我们将要研究的数据。

拆分视频

我们想要的最终状态是一个CSV文件,每个图像有一行、两列,第一个用于在Google云端存储中定位图像,第二个用于标签,如“红色椅子”或“表格” ,或'蓝色椅子'。

为了便于整理,将每个视频都放入自己的文件夹中。然后我们可以依次在每个视频文件上运行ffmpeg。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


提取帧后,每个标签都会有一个文件夹,其中包含该标签的图像。这是组织图像的一种方便的方法,并且比拥有所有图像的一个大型文件夹更简单。

接下来,我们可以使用gsutil将图像上传到Google云端存储,每个标签复制一个文件夹的文件夹结构:

构建数据

AutoML需要一种方法来了解在哪里可以找到所有照片以及每张照片中的对象。我们需要创建一个CSV文件,列出希望包含在数据集中的每个图像的标签。有很多方法可以实现这一点,但这里选择启动本地的Jupyter笔记本并创建一个Pandas数据帧以导出为CSV文件。

好的,现在我们有一个CSV文件描述我们数据集中所有图像的位置和标签。我们准备训练我们的模型!

这就是将图像加载到AutoML Vision后的样子。 CSV文件已通知平台每张图像的正确标签。如果您没有标记您的图像,那没关系,UI中内置了工具,可以帮助指导您完成标记过程并显示哪些图像仍然没有标记。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


第2部分:训练和部署AutoML Vision

训练模型

这就是我们一直在做的所有设置,它使AutoML Vision能够获取数据并在最先进的图像模型上训练您的数据,自动找出适当的超参数,如网络结构。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


但在你开始尝试更高级的模型之前,我建议先从简单的模型开始,然后看看它的表现如何。这将为您提供一个基线,您可以根据该基线来比较其他模型的相对性能。

训练开始后,你可以去散步,或者喝咖啡。至于花费的时间需要具体考虑我们的数据量。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


评估您的模型

一旦训练完成,您将获得有关您的模型的各种统计数据,您可以使用它来查看其执行情况以及是否有一些图像被错误标记,或者其他方面是否值得更正,然后进行再训练。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


在我们的案例中,由于我们通过设计收集了非常具体、干净的数据,因此我们得到了一些非常高的指标。然而,真正重要的是它如何在新的、看不见的数据上执行。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


预测时间!

作者拍了一些照片放到模型中,看看他会返回给我们什么。

让我们试试这张包含自行车以及黄色和蓝色的椅子的图片。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


结果图像被认为主要是自行车,但它也有一点黄色和蓝色的椅子,它们处于背景中,并且在这张照片中的突出特征不那么突出。

那我们再试试另一个吧。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


这张照片大多的大部分是黄色的椅子,但也有蓝色的椅子的一部分。这个模型判断它主要是黄色的椅子,还有一把蓝色的椅子。

那么,我们再看看这张主要是蓝色椅子的照片怎么样?

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


是的,那显示的主要是蓝色的椅子,还有一些桌子,有趣的是,还有一点黄色的椅子,这是意料之外的。并非所有事情都是完美的,但到目前为止,最佳选择已被证明是非常好的。

最后,这张照片怎么样,与最后一张非常相似,但前排座椅是黄色的?模型会如何判别呢?

用AutoML Vision alpha构建ML模型:识别不同类型的椅子


哇,前排的黄色椅子可是占据了大片时间!尝试在模型和数据集中找到差距,可以更好地了解如何根据您的用例收集更强大、更具代表性的数据,这非常有趣。

结束

值得指出的是,此时,可以通过其REST API调用该模型。该服务利用Cloud ML Engine的在线预测功能,提供定制的自动缩放预测服务,并对我们的数据集进行培训。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子

您可以从任何服务器或连接互联网的设备通过REST API调用您的服务

关于这一切的巧妙之处在于,一旦您的数据管道全部完成,那么训练和部署机器学习模型的过程完全是免费的!这使您可以专注于使数据处于良好状态,并避免构建合适的计算机视觉机器学习模型的挑战。

用AutoML Vision alpha构建ML模型:识别不同类型的椅子

请注意模型名称下方的自动部署的注释

现在,如果你能原谅我,我会去拍更多彩色椅子的视频,这样我就可以扩展我的AutoML Vision模型的数据集了!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31509949/viewspace-2157998/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31509949/viewspace-2157998/

这篇关于用AutoML Vision alpha构建ML模型:识别不同类型的椅子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/391702

相关文章

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Mysql 中的多表连接和连接类型详解

《Mysql中的多表连接和连接类型详解》这篇文章详细介绍了MySQL中的多表连接及其各种类型,包括内连接、左连接、右连接、全外连接、自连接和交叉连接,通过这些连接方式,可以将分散在不同表中的相关数据... 目录什么是多表连接?1. 内连接(INNER JOIN)2. 左连接(LEFT JOIN 或 LEFT

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

Python中异常类型ValueError使用方法与场景

《Python中异常类型ValueError使用方法与场景》:本文主要介绍Python中的ValueError异常类型,它在处理不合适的值时抛出,并提供如何有效使用ValueError的建议,文中... 目录前言什么是 ValueError?什么时候会用到 ValueError?场景 1: 转换数据类型场景

C# dynamic类型使用详解

《C#dynamic类型使用详解》C#中的dynamic类型允许在运行时确定对象的类型和成员,跳过编译时类型检查,适用于处理未知类型的对象或与动态语言互操作,dynamic支持动态成员解析、添加和删... 目录简介dynamic 的定义dynamic 的使用动态类型赋值访问成员动态方法调用dynamic 的

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

2. c#从不同cs的文件调用函数

1.文件目录如下: 2. Program.cs文件的主函数如下 using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;using System.Windows.Forms;namespace datasAnalysis{internal static

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G