记录|深度学习100例-卷积神经网络(CNN)彩色图片分类 | 第2天

news/2024/9/22 1:09:52

记录|深度学习100例-卷积神经网络(CNN)彩色图片分类 | 第2天

1. 彩色图片分类效果图

数据集如下:
在这里插入图片描述测试图1如下
在这里插入图片描述
训练/验证精确图如下:
在这里插入图片描述

优化后:测试图——打印预测标签:
在这里插入图片描述

优化后:测试图——打印 预测标签和真实的标签到图像:
在这里插入图片描述

优化后绘制完整的损失/精确度图:
在这里插入图片描述

2. 源码

# 深度学习100例-卷积神经网络(CNN)彩色图片分类 | 第2天
# USAGE
# python img_rgb2.pyimport matplotlib.pyplot as plt
import numpy as np
import tensorflow as tf
from tensorflow.keras import datasets, layers, modelsgpus = tf.config.list_physical_devices("GPU")if gpus:gpu0 = gpus[0]  # 如果有多个GPU,仅使用第0个GPUtf.config.experimental.set_memory_growth(gpu0, True)  # 设置GPU显存用量按需使用tf.config.set_visible_devices([gpu0], "GPU")# 导入数据
(train_images, train_labels), (test_images, test_labels) = datasets.cifar10.load_data()# 将像素的值标准化至0到1的区间内。
train_images, test_images = train_images / 255.0, test_images / 255.0print(train_images.shape, test_images.shape, train_labels.shape, test_labels.shape)class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']# 可视化
plt.figure(figsize=(20, 10))
for i in range(20):plt.subplot(5, 10, i + 1)plt.xticks([])plt.yticks([])plt.grid(False)plt.imshow(train_images[i], cmap=plt.cm.binary)plt.xlabel(class_names[train_labels[i][0]])
plt.show()# 构建网络
model = models.Sequential([layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)),  # 卷积层1,卷积核3*3layers.MaxPooling2D((2, 2)),  # 池化层1,2*2采样layers.Conv2D(64, (3, 3), activation='relu'),  # 卷积层2,卷积核3*3layers.MaxPooling2D((2, 2)),  # 池化层2,2*2采样layers.Conv2D(64, (3, 3), activation='relu'),  # 卷积层3,卷积核3*3layers.Flatten(),  # Flatten层,连接卷积层与全连接层layers.Dense(64, activation='relu'),  # 全连接层,特征进一步提取layers.Dense(10)  # 输出层,输出预期结果
])model.summary()  # 打印网络结构# 编译模型
model.compile(optimizer='adam',loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),metrics=['accuracy'])# 训练模型
history = model.fit(train_images, train_labels, epochs=8,validation_data=(test_images, test_labels))pre = model.predict(test_images)
print('pre: ' + str(class_names[np.argmax(pre[2])]) + ' real: ' + str(class_names[test_labels[2][0]]))plt.imshow(test_images[2])
plt.xticks([])
plt.yticks([])
plt.xlabel('pre: ' + class_names[np.argmax(pre[2])] + ' real: ' + str(class_names[test_labels[2][0]]))
plt.show()plt.plot(history.history["loss"], label="train_loss")
plt.plot(history.history["val_loss"], label="val_loss")
plt.plot(history.history['accuracy'], label='accuracy')
plt.plot(history.history['val_accuracy'], label='val_accuracy')
plt.title("Training Loss and Accuracy (Simple NN)")
plt.xlabel('Epoch')
plt.ylabel('Loss/Accuracy')
# plt.ylim([0.5, 1])
plt.legend(loc='lower right')
plt.show()test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2)
print(test_acc)

参考

  • https://mtyjkh.blog.csdn.net/article/details/116978213
  • https://tensorflow.google.cn/datasets
  • https://mtyjkh.blog.csdn.net/article/details/116978213
  • https://tensorflow.google.cn/tutorials/quickstart/beginner
  • 所有数据级列表:https://tensorflow.google.cn/datasets/catalog/overview#all_datasets

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pgtn.cn/news/17568.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

django_创建菜单界面

文章目录创建菜单界面项目系统设计项目文件结构素材地址创建文件项目配置settings.py配置项目架构配置tempaltes管理html配置js配置views配置urls编辑菜单界面配置menu的js添加按钮添加按钮创建菜单界面 项目系统设计 menu:菜单页面 playground:游戏界…

物体控制

代码 varsetspeed:float1.0; private varmove_x:float; private varmove_y:float;varprojectileprefab:GameObject;varpositiontemp:Vector3;varmytransform:Transform;varprojectilespeed:float50;functionUpdate () { move_x Input.GetAxis("Horizontal")*setspeed…

Postgresql 学习记录,模式,分区表,触发器,事务,窗口函数,视图,建表,约束等

Postgresql 学习记录,模式,分区表,触发器,事务,窗口函数,视图,建表,约束等 PostgreSQL使用一种客户端/服务器的模型。一次PostgreSQL会话由下列相关的进程(程序&#xf…

Django_3

文章目录游戏界面实现修改js模块化增加界面样式实现简易游戏引擎创建人物创建火球类实现碰撞实现动态效果游戏界面实现 修改js模块化 在game/templates/multiends/web.html 并且删除<head></head>里面的AcGame 在game/static/js/src/zbase.js里 在class前加上ex…

十一运夺金基础数据采集工具

点击下载 转载于:https://www.cnblogs.com/JiangHuakey/archive/2010/11/17/1880139.html

卷积神经网络(CNN)使用自己的数据集进行天气识别

记录|深度学习100例-卷积神经网络&#xff08;CNN&#xff09;天气识别 | 第5天 这篇博客将从构建自己的天气数据集开始&#xff0c;到定义模型&#xff0c;编译模型&#xff0c;训练模型及验证模型。并进行一些升级&#xff0c;以使得模型更好。 如ImageDateGenerator进行数据…

使用Tensorflow2.0执行视觉显著性检测(Visual Saliency Detection)

使用Tensorflow2.0执行视觉显著性检测&#xff08;Visual Saliency Detection) 上一篇博客介绍了如何使用Python&#xff0c;OpenCV执行视觉显著性检测&#xff08;Visual Saliency Detection)。这篇博客将介绍如何使用Tensorflow2.0执行显著性检测&#xff0c;这是一个应用图…

epub 电子书软件代码销售

epub 电子书软件代码销售本套代码用来读取epub 格式电子书。主要面向&#xff1a;有一定开发能力的人员&#xff0c;和有一定制作水平的朋友们。用途&#xff1a;自己开发学习&#xff0c;钻研&#xff0c;出appstore 应用&#xff0c;卖钱&#xff0c;加广告赚钱等。&#xff…