【机器学习PAI实践十】深度学习Caffe框架实现图像分类的模型训练

标签: 深度学习 机器学习
2237人阅读 评论(0) 收藏 举报
分类:

背景

我们在之前的文章中介绍过如何通过PAI内置的TensorFlow框架实验基于Cifar10的图像分类,文章链接:https://yq.aliyun.com/articles/72841。使用Tensorflow做深度学习做深度学习的网络搭建和训练需要通过PYTHON代码才能使用,对于不太会写代码的同学还是有一定的使用门槛的。本文将介绍另一个深度学习框架Caffe,通过Caffe只需要填写一些配置文件就可以实现图像分类的模型训练。
关于PAI的深度学习功能开通,请务必提前阅读https://help.aliyun.com/document_detail/49571.html
文末提供了相关下载链接。

数据介绍

本文使用的数据是开源数据集cifar10,这份数据是一份对包含6万张像素为32*32的彩色图片,这6万张图片被分成10个类别,分别是飞机、汽车、鸟、毛、鹿、狗、青蛙、马、船、卡车。数据集截图:
https://zos.alipayobjects.com/rmsportal/DcsApBuhSJyvCbuXdEra.png

目前这份数据已经内置在PAI提供的公共数据集中,以jpg格式存储。任何PAI的用户都可以在深度学习组件的数据源OSS路径中直接输入,
* 测试数据: oss://dl-images.oss-cn-shanghai-internal.aliyuncs.com/cifar10/caffe/images/cifar10_test_image_list.txt
* 训练数据:oss://dl-images.oss-cn-shanghai-internal.aliyuncs.com/cifar10/caffe/images/cifar10_train_image_list.txt

如图:

格式转换

目前PAI上的Caffe框架只支持特定的格式,所以需要首先将jpg格式的图片进行格式转换。
https://zos.alipayobjects.com/rmsportal/xQCXkhsruDWjUKgrzCVW.png

经过格式转换,可以在自己的OSS路径下生成如下文件,训练数据和测试数据各一份。

需要记录对应的OSS路径用于net文件的填写,假设路径名分别是:

  • 训练数据data_file_list.txt:bucket/cifar/train/data_file_list.txt

  • 训练数据data_mean.binaryproto:bucket/cifar/train/data_mean.binaryproto

  • 测试数据data_file_list.txt:bucket/cifar/test/data_file_list.txt

  • 测试数据data_mean.binaryproto:bucket/cifar/test/data_mean.binaryproto

Caffe配置文件

Net文件编写,对应上文格式转换生成的路径:

Solver文件编写:

运行

将编辑好的Solver文件和Net文件全部传到OSS上,拖动caffe训练组件如图,在Sovler文件路径上选择OSS上提交的Solver文件,运行即可。

生成的图片分类model文件可以在OSS对应路径下查看,可以用以下模型进行图片分类

日志查看可以参照本文开头提供的“Tensorflow实现图像分类”。

其它

代码下载:http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/52239/cn_zh/1496736657170/Caffe_cifar10.zip?spm=5176.doc52239.2.2.tMrTgQ&file=Caffe_cifar10.zip

免费体验:阿里云数加机器学习平台

作者微信公众号(与作者讨论):

查看评论

深度学习系列之图像分类

最近在学习深度学习相应的知识,为了巩固所学内容,打算从文本分类、图像分类等较为大众化的任务开始,并书写博客记录之,与博友共勉。本文介绍的就是使用keras框架进行图像分类(数据源mnist)的操作,下...
  • diye2008
  • diye2008
  • 2016-10-31 13:41:41
  • 2690

阿里云免费GPU+caffe框架下训练自己图片

阿里云的参考文档:https://help.aliyun.com/document_detail/49571.html       在文档里提供了caffe的一个案例,利用Caffe实现mnist的...
  • qq_37274615
  • qq_37274615
  • 2017-06-02 16:12:51
  • 1890

caffe学习系列:训练自己的图片集(超详细教程)

学习的caffe的目的,不是简单的做几个练习,而是最终落实到自己的项目或科研中去。因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试的整个流程。 一、数据的准备     有条件的同学,...
  • qq_27923041
  • qq_27923041
  • 2017-01-06 16:59:05
  • 29996

机器学习 --- 分类算法模型评估

一、 ROC曲线1. 混淆矩阵针对二分类问题,将实例分成正类(postive)或者负类(negative)。但是实际中分类时,会出现四种情况. (1)若一个实例是正类并且被预测为正类,即为真正类(T...
  • chibangyuxun
  • chibangyuxun
  • 2016-11-15 15:30:31
  • 1748

深度学习框架Caffe学习笔记(6)-测试自己的手写数字图片

Caffe测试自己的手写数字图片
  • u013407923
  • u013407923
  • 2016-11-08 17:53:09
  • 4396

阿里云机器学习PAI-快速上手指南

阿里云机器学习PAI-快速上手指南 What is 机器学习 机器学习指的是机器通过统计学算法,对大量的历史数据进行学习从而生成经验模型,利用经验模型指导业务。目前机器学习主要在以下一些方...
  • forest_world
  • forest_world
  • 2017-05-08 14:41:14
  • 4241

【机器学习PAI实践五】机器学习眼中的《人民的名义》

一、背景 最近热播的反腐神剧“人民的名义”掀起来一波社会舆论的高潮,这部电视剧之所能得到广泛的关注,除了老戏骨们精湛的演技,整部剧出色的剧本也起到了关键的作用。笔者在平日追剧之余,也尝试通过机器学习...
  • gshengod
  • gshengod
  • 2017-05-04 10:25:02
  • 3098

用caffe对自己的图片进行分类,包含详细代码

一,数据 数据是网上下载的,后期打算自己采集图片再进行一次实验。数据集由三类图片构成,分别是bikes,person和bike_and_person,每类200张,一共600张。然后分成数据集和测试...
  • m984789463
  • m984789463
  • 2017-07-07 10:45:44
  • 1243

使用caffe中的imagenet对自己的图片进行分类训练(超级详细版)

因为自己在网络上查到的资料对于一个新手来说虽然指明了方向,但是在细节上没有给出很好的实例,因此我把自己训练的过程记录下来。 【实验环境】 物理内存:64G Free:7.5G  CPU个数:3...
  • u011244794
  • u011244794
  • 2016-06-02 12:57:58
  • 21784

【用Python学习Caffe】1. 使用Caffe完成图像分类

1. 使用Caffe完成图像分类本节将以著名的图像分类深度学习网络AlexNet为例子,通过Python Caffe来进行图像分类。虽然不同的网络的结构是不样的,但其大体的过程都是一致的,因此大家可以...
  • tostq
  • tostq
  • 2017-06-22 22:01:47
  • 2835
    统计

    主要讲述算法和业务的结合,适合初学者

    机器学习实践应用

    京东地址

    作者公众号:凡人机器学习

    凡人机器学习

    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 89万+
    积分: 1万+
    排名: 1618
    博客专栏