作为初学者研究了两周的TensorFlow基础的东西。首先是MNIST数据集在CNN的训练。中间经历了很多问题。
现在TensorFlow的版本已经更新到1.5,出了很多高级API,所以很多博客都不再合适了。
基于TensorFlow+anaconda在CNN训练MNIST之后,关于保存模型以及重新载入先关模型参数又折腾了一阵。原来老版本的方法,就是中文社区的MNIST训练之后使用保存数据,预测结果很差。这次做出来比较靠谱的结果。
我使用的是已经训练好的模型。所以程序里没有训练和评估。这些相关的代码在官方给的例子里已经有了。所以我直接用已经得到的数据进行预测了。
这是我的训练结果,其实1W次我感觉就够了。我不小心弄到了4w.
注意使用的图片,28*28像素。(直接在画图工具里设定好分辨率,比用CV PIL快多了。。。。)。MNIST数据集里是黑底白字。我用画图做的是白底黑字,需要取反。
另外,如果训练的精度够了,不需要进行额外的图像处理(什么滤波啦,倾斜啦)
---我的
---MNIST的
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
from PIL import Image
import numpy as np
import tensorflow as tf
def loaddata(filename):
#转换成灰度图也就是单通道。
img=Image.open(filename).convert('L')
#取出数据
array=np.asarray(img,dtype="float32")