数据集格式如下:

# baseline model for the dogs vs cats dataset
import sys
from matplotlib import pyplot
from keras.models import Sequential
from keras.layers import Conv2D
from keras.layers import MaxPooling2D
from keras.layers import Dense
from keras.layers import Flatten
from keras.preprocessing.image import ImageDataGenerator
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.optimizers import Adam,Nadam, SGD
# define cnn model
def define_model():model = Sequential()model.add(Conv2D(32, (3, 3), activation='relu', kernel_initializer='he_uniform', padding='same', input_shape=(200, 200, 3)))model.add(MaxPooling2D((2, 2)))model.add(Flatten())model.add(Dense(128, activation='relu', kernel_initializer='he_uniform'))model.add(Dense(1, activation='sigmoid'))# compile modelopt = SGD(lr=0.001, momentum=0.9)model.compile(optimizer=opt, loss='binary_crossentropy', metrics=['accuracy'])return model# plot diagnostic learning curves
def summarize_diagnostics(history):# plot losspyplot.subplot(211)pyplot.title('Cross Entropy Loss')pyplot.plot(history.history['loss'], color='blue', label='train')pyplot.plot(history.history['val_loss'], color='orange', label='test')# plot accuracypyplot.subplot(212)pyplot.title('Classification Accuracy')pyplot.plot(history.history['accuracy'], color='blue', label='train')pyplot.plot(history.history['val_accuracy'], color='orange', label='test')# save plot to filefilename = sys.argv[0].split('/')[-1]pyplot.savefig(filename + '_plot.png')pyplot.close()# run the test harness for evaluating a model
def run_test_harness():# define modelmodel = define_model()# create data generatordatagen = ImageDataGenerator(rescale=1.0/255.0)# prepare iteratorstrain_it = datagen.flow_from_directory('/cloud_disk/users/huh/projects/classify_three_pic/dataset/train/',class_mode='binary', batch_size=64, target_size=(200, 200))test_it = datagen.flow_from_directory('/cloud_disk/users/huh/projects/classify_three_pic/dataset/test/',class_mode='binary', batch_size=64, target_size=(200, 200))# fit modelhistory = model.fit_generator(train_it, steps_per_epoch=len(train_it),validation_data=test_it, validation_steps=len(test_it), epochs=20, verbose=0)# evaluate model_, acc = model.evaluate_generator(test_it, steps=len(test_it), verbose=0)print('> %.3f' % (acc * 100.0))# learning curvessummarize_diagnostics(history)# entry point, run the test harness
run_test_harness()

如何用深度学习对几种类型的图片进行分类(tensorflow,CNN)相关推荐

  1. 准确率99.9%!如何用深度学习最快找出放倒的那张X光胸片(代码+数据)

    医学图像数据的质量一直是个老大难题.难以清理的数据制约着许多深度学习的应用. 而实际上,深度学习本身就是清洗医疗数据的好帮手. 今天,我们就来讲一个案例,展示如何用深度学习迅速清洗一个杂乱的医疗图像数 ...

  2. 如何用深度学习做自然语言处理?这里有份最佳实践清单

    如何用深度学习做自然语言处理?这里有份最佳实践清单 By 机器之心2017年7月26日 14:16 对于如何使用深度学习进行自然语言处理,本文作者 Sebastian Ruder 给出了一份详细的最佳 ...

  3. WebGL three.js学习笔记 6种类型的纹理介绍及应用

    WebGL three.js学习笔记 6种类型的纹理介绍及应用 本文所使用到的demo演示: 高光贴图Demo演示 反光效果Demo演示(因为是加载的模型,所以速度会慢) (一)普通纹理 计算机图形学 ...

  4. 如何用深度学习进行语音识别

    作者:九五要当学霸 链接:https://zhuanlan.zhihu.com/p/24703268 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处 原文:Adam G ...

  5. 支持移动端深度学习的几种开源框架

    原文:http://blog.csdn.net/zchang81/article/details/74280019 支持移动端深度学习的几种开源框架 1.Caffe的移动端项目 caffe项目连接如下 ...

  6. 深度学习的三种硬件方案:ASIC,FPGA,GPU;你更看好?

    原文链接:http://www.sohu.com/a/123574005_465947 深度学习的三种硬件方案:ASIC,FPGA,GPU:你更看好? 2017-01-06 10:59 硬件十万个为什 ...

  7. 线性Frequency Principle动力学:定量理解深度学习的一种有效模型

    关于作者:本文的作者是来自上海交通大学致远学院 08 级理科班的四位研究人员.本文由许志钦执笔,张耀宇修改,罗涛和马征审阅校正.这个小组的研究兴趣主要是深度学习理论. 深度学习的广泛成功吸引了大量的科 ...

  8. 基于深度学习的犬种识别软件(YOLOv5清新界面版,Python代码)

    摘要:基于深度学习的犬种识别软件用于识别常见多个犬品种,基于YOLOv5算法检测犬种,并通过界面显示记录和管理,智能辅助人们辨别犬种.本文详细介绍博主自主开发的犬种检测系统,在介绍算法原理的同时,给出 ...

  9. 深度学习入门系列21:项目:用LSTM+CNN对电影评论分类

    大家好,我技术人Howzit,这是深度学习入门系列第二十一篇,欢迎大家一起交流! 深度学习入门系列1:多层感知器概述 深度学习入门系列2:用TensorFlow构建你的第一个神经网络 深度学习入门系列 ...

  10. 深度学习:应用于机器视觉领域的卷积神经网络(CNN)简介

    1 背景介绍 深度学习是近几年的热门研究话题.深度学习受到神经学的启示,模拟人脑的认知与表达过程,通过低层信号到高层特征的函数映射,来建立学习数据内部隐含关系的逻辑层次模型.深度学习相比于一般的浅层模 ...

最新文章

  1. 小工程结算书范本_工程结算合同书范本_工程结算合同格式
  2. yum安装mysql步骤及报错ERROR 1045 (28000)
  3. 本地计算机上的 postgresql 服务启动后停止解决方法
  4. python爬虫实例解析-Python(爬虫)- 动态加载案例分析
  5. WEB-INF目录与META-INF目录的作用
  6. getopt()和getopt_long()用法
  7. java 不识别enum_Java enum关键字不识别的快速解决办法
  8. C# 中的readonly属性
  9. 使用with关键字让你的Python代码更加Pythonic
  10. 打造颠覆你想象中的高性能,轻量级的webform框架-----如何替换webform的垃圾控件(第一天)...
  11. javascript之奇淫技巧
  12. python 白噪声函数_干货 | 20个教程,掌握时间序列的特征分析(附代码)
  13. 中标麒麟操作系统yum源配置
  14. 总结30个Python赚钱的接单平台!兼职月入5000+,成年人的世界,钱是活下去的筹码
  15. 解决WPS高分辨率下因字体缩放导致字体发虚的问题
  16. can总线rollingcounter_[翻译]识别 CAN 总线上的攻击
  17. LeetCode·718.最长重复子数组·动态规划
  18. 在阿里云服务器上搭建MQTT服务
  19. 2.2加勒比海盗船——最优装载问题
  20. java 时区 edt_JAVA TimeZone发行EDT对EST

热门文章

  1. 淘宝搜索页面爬取数据
  2. 什么是LTE CAT1和CATM
  3. 《PHP入门篇之使用教程》
  4. 计算机统计硕士排名,卡内基梅隆大学硕士统计学专业排名务必稳重的去看
  5. 什么是Excel宏?
  6. Running MaxQuant——蛋白质组学建库软件(一)
  7. iOS--在线搜索苹果 App Store 应用商店
  8. miui9如何不自动杀进程,小米9怎么关闭自动更新 具体操作方法解析
  9. VGA接口、DVI接口、HDMI接口
  10. 前端学习笔记-JS数据类型