资源简介
利用keras使用mnist数据集进行训练,分类,测试。可以得到较好的结果(包含mnist数据集),亲测有效,自行编写,共同学习。
代码片段和文件信息
from keras import backend as k
from keras.models import Sequential
from keras.layers.convolutional import Conv2D MaxPooling2D
# from keras.layers.convolutional import MaxPooling2D
from keras.layers.core import Activation
from keras.layers.core import Flatten
from keras.layers.core import Dense
from keras.datasets import mnist
# from mydata import load_data
from keras.utils import np_utils
from keras.utils.vis_utils import model_to_dot
from IPython.display import SVG
from keras.optimizers import SGD RMSprop Adam
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as processimage
# 定义网络
class LeNet:
@staticmethod
def build(input_shape classes):
model = Sequential()
# CONV => RELU => POOL
model.add(Conv2D(20 kernel_size=5 padding=“same“
input_shape=input_shape))
model.add(Activation(“relu“))
model.add(MaxPooling2D(pool_size=(2 2) strides=(2 2)))
# CONV => RELU => POOL
model.add(Conv2D(50 kernel_size=5 padding=“same“))
model.add(Activation(“relu“))
model.add(MaxPooling2D(pool_size=(2 2) strides=(2 2)))
# Flatten => RELU layers
model.add(Flatten())
model.add(Dense(500))
model.add(Activation(“relu“))
# a softmax classifier
model.add(Dense(classes))
model.add(Activation(“softmax“))
return model
# SVG(model_to_dot(model).create(prog=‘dot‘ format=‘svg‘))
NB_EPOCH =1
BATCH_SIZE = 128
VERBOSE = 2
OPTIMIZER = Adam()
VALIDATION_SPLIT = 0.2
IMG_ROWS IMG_COLS = 2828
# IMG_ROWS IMG_COLS = 512384
NB_CLASS = 10
INPUT_SHAPE = (1 IMG_ROWSIMG_COLS)
# 混合并划分训练集和测试集
(X_train y_train) (X_test y_test)=mnist.load_data()
# (X_train y_train) (X_test y_test) = load_data()
k.set_image_dim_ordering(“th“)
# 看成float类型并归一化
X_train = X_train.astype(‘float32‘)
X_test = X_test.astype(‘float32‘)
X_train /= 255
X_test /= 255
# 需要使用形状60k*[1*28*28]作为卷积网络的输入
X_train = X_train[: np.newaxis : :]
X_test = X_test[: np.newaxis : :]
print(‘X_train shape:‘ X_train.shape)
print(X_train.shape[0] ‘ train sample‘)
print(X_test.shape[0]‘test sample‘)
# 将类向量转换为二值类别矩阵
y_train = np_utils.to_categorical(y_train NB_CLASS)
y_test = np_utils.to_categorical(y_test NB_CLASS)
# 初始化优化器和模型
model = LeNet.build(input_shape=INPUT_SHAPE classes=NB_CLASS)
model.compile(loss=“categorical_crossentropy“
optimizer=OPTIMIZER metrics=[“accuracy“])
history = model.fit(X_train y_train batch_size=BATCH_SIZE
epochs=NB_EPOCH verbose=VERBOSE validation_split=VALIDATION_SPLIT)
score = model.evaluate(X_testy_test verbose=VERBOSE)
print(“test score:“ score[0])
print(“test accurary:“ score[1])
testrun = X_test[9999].reshape(1784)
testlabel = y_test[9999]
print(testrun)
print(testlabel)
plt.imshow(testrun.reshape([2828]))
plt.show()
pred = model.pr
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11490434 2019-07-04 14:37 mnist.npz
文件 3753 2019-07-29 15:18 ttlenet.py
- 上一篇:SYC8P1228 SSOP28中文数据手册V1.00
- 下一篇:CCS破解安装包
相关资源
- VHDL交通灯代码
- 《主流VIO技术综述及VINS解析》PPT以及
- MMA8452资料,包含STM32代码和51代码
- webservice接口测试代码
- utaustinvilla球队源代码
- Verilog IIC读MPU6050-融合滤波-单轴-代码
- QT5+VS2015制作的画图程序源代码
- Pickit3固件以及源代码
- 百度语音识别与语音合成官方demo
- Css源代码免费
- 《无线通信FPGA设计》PDF版本+书中代码
- 51单片机和modbus中文资料软件源代码全
- 基于颜色特征的图像检索系统源代码
- OpenGL烟花程序代码
- TIA_V14_SP1 S7-1500 程序模板包含HMI、Se
- Cocos2d-x《大抗战》塔防射击游戏源代
- PIX4飞控+光流源代码
- lpc1114 学习资料及例程源代码
- usb 串口驱动+《windows驱动开发技术详
- FuzzyCLIPS 6.10d for windows的源代码
- 王万良人工智能导论第4版试验参考程
- 圆点摄像头激光测距源代码---本人亲
- 《GPS应用程序设计》GPS程序源代码
- HM代码解释文档
- 客户关系管理系统的源代码
- opengl迷宫及源代码,实现贴图、3d效果
- x86-x64体系探索及编程-随书代码.rar
- GBT4208-2017外壳防护等级IP代码.pdf
- WinCE开发详解,包含了源代码哦
- 马尔科夫随机场图像分割ICM代码
评论
共有 条评论