图像分类基础与实战(3)

本文涉及的产品
模型训练 PAI-DLC,100CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 图像分类基础与实战

开始进行训练。

训练完成的结果显示如上图,topone的精度是87.75,TOP5的精度是98.97。

训练完成后的工作目录如上图所示。log文件中保存了训练的日志,configuration文件中保存了配置相关信息。best_accuracy_top-1_epoch_1中保存了训练集上精度最好的模型权重,为了后续对模型进行评估,需要将该文件重命名为pytorch_model_pt。

返回模型详情页,复制模型评估相关代码。

复制详情页中的数据集加载相关代码(上图选中部分),替换原代码中“加载用于评估的数据集”部分代码,重新加载数据的校验集。

将model_id修改为工作目录下的vit_base_flower。本次训练的只进行校验,因此训练的数据集设为空,只需填入使用评估的数据集。

执行代码,开始进行评估。

结果如上图,与训练之后的评估完全一直,TOP1是87.75,TOP5是98.97,可正常用。

接下来进行模型推理。

复制详情页代码。

在工作目录下上传一张图片,修改图片路径和模型路径如上图。执行代码。

结果显示如上图,TOP1是向日葵。但top5的概率较为接近,说明训练不够充分。实际训练时,可以将epoch调大,学习率调小,以得到更优化的结果。

在模型页面右上角点击创建创空间,填写相关信息,创建创空间。

创建后的页面如上图所示。

复制上图中git clone代码,将前面训练好的权重与配置文件拷贝过来,上传到的modelscode模型的空间中。

上传完成后页面如上图。

点击右上角,添加版本号,即可使用模型。

接下来测试发布到ModelScope上的模型是否可用。

复制模型页面下的代码并对其进行修改。

代码中的模型ID修改为创建的模型ID(页面左上角),图片地址修改为根目录下的测试图片。

创建创空间时选择了非公开模型,因此此处需要对模型进行授权,代码如下:

from modelscope.hub.api import HubApi
#YOUR_ACCESS_TOKEN =
'请从ModelScope个人中心->访问令牌获取’
#api= HubApi()
#api.login(YOUR_ACCESS_TOKEN)

另外,因为设置了模型的版本,需要重新写版本。最终修改后的代码如上图。

结果显示如上图,证明模型可以正常使用。

回到创空间,打开空间文件下的readme文件,可以直接复制其他模型的readme文件(如上图右侧所示)进行修改后使用。

需要修改模型ID,在创建的模型名称下方复制即可。entry_file指文件入口,本示例中不使用GPU进行推理,因此是GPU为0。

执行代码也可以从其他创空间模型中复制后进行修改使用。新建一个app.py文件,将代码粘贴至文件中。首先需要修改授权码。回调函数为interface,输入的类型为图片,输出为label类型,显示top5的结果,设置默认测试图片的地址。

复制前文的推理代码并进行修改。

输入的类型是图像,因此需要将 result=image_classification()内的参数修改为img。

在空间文件里点击上传文件,将app.py文件上传至创空间。

在设置里点击上线创空间。

至此,创空间搭建完毕。页面如上图所示。

点击图片,提交后会显示结果。

其他模型的训练流程与本文示例基本一致,主要区别在于使用的数据集不同。所有数据、模型、代码均已开源,欢迎进入Modelscope官网搜索使用。

相关文章
|
机器学习/深度学习 数据库 计算机视觉
图像分类基础与实战
图像分类基础与实战(1)
|
机器学习/深度学习 编解码 自然语言处理
|
9月前
|
机器学习/深度学习 监控 算法
|
机器学习/深度学习 存储 数据采集
图像分类基础(一)
图像分类基础(一)
262 0
|
机器学习/深度学习 存储 人工智能
图像分类基础(二)
图像分类基础(二)
146 0
|
机器学习/深度学习 数据可视化 异构计算
图像分类(迁移学习/五分钟手把手教你搭建分类模型)上
图像分类(迁移学习/五分钟手把手教你搭建分类模型)
图像分类(迁移学习/五分钟手把手教你搭建分类模型)上
|
机器学习/深度学习 PyTorch 算法框架/工具
图像分类(迁移学习/五分钟手把手教你搭建分类模型)下
图像分类(迁移学习/五分钟手把手教你搭建分类模型)
|
机器学习/深度学习 算法 Python
实战案例|手写数字识别模型~
大家好,我是志斌~ 今天来跟大家分享一下K近邻算法的原理以及通过识别手写数字模型来看如何用Python实现它。
222 0
实战案例|手写数字识别模型~
|
机器学习/深度学习 数据采集 编解码
【动手学计算机视觉】第十讲:传统目标检测之卷积神经网络概述
入门计算机视觉领域的绝大多数同学应该都学过或听说过斯坦福大学的公开课(CS231n: Convolutional Neural Networks for Visual Recognition),主要就围绕CNN进行展开,甚至很多近几年入门计算机视觉的同学就斩钉截铁的认为,计算机视觉就是卷积神经网络,我认为这有一些"一叶障目,不见泰山的"感觉。CNN是计算机视觉的一个子集,而且是一个很小的子集,更确切的说,计算机视觉是一种应用性技术,CNN是一种工具。本文就来介绍概述一下卷积神经网络,后续会挑选比较经典的模型详细展开并编程实现。入门计算机视觉领域的绝大多数同学应该都学过或听说过斯坦福大学的公开课
【动手学计算机视觉】第十讲:传统目标检测之卷积神经网络概述
|
人工智能 监控 自动驾驶
目标检测简介
目标检测任务主要包含两个子任务,一个是输出这类目标的类别信息,属于分类任务;另一个是输出目标的具体位置信息,属于定位任务。
419 0

热门文章

最新文章