数据结构论坛

注册

 

发新话题 回复该主题

深度学习实战基于Keras的cifa [复制链接]

1#

今天给大家介绍一个训练AI图片识别模型的步骤,这个模型可以识别十个种类,airplane,automobile,bird,cat,dear,dog,frog,horse,ship,truck,了解的朋友可能知道,这就是著名的cifar10的类别,还有一个种类较多的,称为cifar。

01训练过程

(0)导入需要的python库

导入数据集

参数说明:

batch_size:如果机器性能较差可以使用64,32,16等较小的批数据。

num_classes:是训练的模型的识别的类别,这里是10类。

epoches:AI模型的训练是一个循环迭代的过程,这里迭代12轮,如果发现测试的额准确率不增加则说明模型收敛或者过拟合了,可以减小epoch。

(1)训练数据集的准备

我们使用的是Keras本身提供的cifar10的数据集。

cifar10

cifar10数据集共有张彩色图像,这些图像分为10个类,每类张图,没张图像尺寸为是32*32。

数据集中有张用于训练,剩余的00用于测试。

cifar10

首先我们加载数据集,并分成训练集和测试集。

数据集处理

(2)搭建训练模型

使用Keras基于VGG16搭建模型网络,因为原本的VGG16网络比较大,所以我做了裁剪。

VGG16的介绍可以参照这里:

「深度学习面试之每日一问_」VGG的面试应该这么回答

模型1模型2

(3)训练代码

训练的损失函数使用的是交叉熵损失函数crossentropy。

优化器的使用的是Adadelta()。

最后使用model.save()保存训练的模型。

训练代码

这样就可以开始训练了。

训练过程展示

训练完成会得到模型:keras_cifar10_vgg16_cut_weight_init.h5。

训练模型迭代

02预测过程

(1)加载模型

加载模型

(2)传入图片得到预测结果

预测代码

预测结果展示

本地图片的预测结果

03结束语

今天的分享内容就结束了。

我将与您分享AI算法面试所需的准备知识。实际上,这不仅限于深度学习和计算机视觉,还包括模型算法原理,模型训练,模型转换优化,模型部署和深度学习框架。此外,还有C++,数据结构和编译底层等。

「算法面试之底层实现」从“HelloWorld”谈底层实现

「深度学习基础」深度学习卷积讲解及代码实现

一文了解深度学习面试应该如何准备

「AI算法面试」机器学习知识点概览

欢迎大家的

分享 转发
TOP
发新话题 回复该主题