zoukankan      html  css  js  c++  java
  • keras mnist

    基于tensorflow2

    最简单的keras demo,做一个备份,以后有需要直接复制

    模型结构

    代码 

    import numpy as np
    import tensorflow as tf
    from tensorflow.keras import layers
    from tensorflow.keras import models
    from tensorflow.keras import optimizers
    from tensorflow.keras import datasets
    from tensorflow.python.keras.utils import np_utils
    
    
    (x_train,y_train),(x_test,y_test)=datasets.mnist.load_data()
    print(x_train.shape,x_test.shape)
    print(y_train.shape,y_test.shape)
    
    
    x_train=x_train.reshape(x_train.shape[0],x_train.shape[1],x_train.shape[2],1)
    x_test=x_test.reshape(x_test.shape[0],x_test.shape[1],x_test.shape[2],1)
    x_train=x_train/255
    x_test=x_test/255
    y_train=np_utils.to_categorical(y_train)
    y_test=np_utils.to_categorical(y_test)
    print(x_train.shape,x_test.shape)
    print(y_train.shape,y_test.shape)
    
    
    inp_img=layers.Input(shape=(28,28,1))
    layer1_conv=layers.Conv2D(32,(3,3),padding='same',activation='relu')(inp_img)
    layer1_pool=layers.AveragePooling2D((2,2))(layer1_conv) 
    layer2_conv=layers.Conv2D(64,(3,3),padding='same',activation='relu')(layer1_pool)
    layer2_pool=layers.AveragePooling2D((2,2))(layer2_conv)  
    layer3_conv=layers.Conv2D(128,(3,3),padding='same',activation='relu')(layer2_pool)
    layer3_pool=layers.AveragePooling2D((7,7))(layer3_conv)   
    layer4_fc=layers.Flatten()(layer3_pool)
    pred=layers.Dense(10,activation='softmax')(layer4_fc)
    model=models.Model(inp_img,pred)
    adam=optimizers.Adam(lr=0.01)
    model.compile(optimizer=adam,loss='categorical_crossentropy',metrics=['acc'])
    model.summary()
    
    
    model.fit(x_train,y=y_train,epochs=10,batch_size=32)
    model.save('mnist_cnn.h5')
    loss,acc=model.evaluate(x_test,y_test)
    print('
    test loss: ',loss)
    print('
    test accuracy: ',acc)
    无情的摸鱼机器
  • 相关阅读:
    hdu acm 2639背包问题,这题很经典啊~~~
    hdu acm 2191
    qt中实现区域反白效果
    解决pythonxml 模块 在ubuntu karmic中找不到的问题
    Python正则表达式操作指南
    webkit 资料
    标点符号的英语名称
    ubuntu设置分辨率
    如何绑定多个action到一个slot
    改注册表,实现像迅雷一样的自定义url
  • 原文地址:https://www.cnblogs.com/wangtianning1223/p/14436368.html
Copyright © 2011-2022 走看看