本人水平有限,难免会有错误,如果发现希望可以及时指出来,利人利己。哈哈哈~
这是博客写的第一篇文章,主要想从tflearn的例子代码一步步理解CNN模型。这里插一句话,tflearn是tensorflow接口的更高层次的封装,与keras的区别时debug时可以看到源码,并且tflearn代码写的非常工整,适合我这样的菜鸟学习。
现在深度学习异常火热,如果不会点深度学习,出门都不好意思和人家打招呼。
这篇博客主要讲解下tflearn例子里的examples/images/convnet_mnist.py,对于每个函数中涉及的参数我会一一的给出中文说明,下一篇主要讲解每个参数在CNN中的含义,以及系统讲解下CNN的构建过程。废话不多说,先看代码。
from __future__ import division, print_function, absolute_import
import tflearn
from tflearn.layers.core import input_data, dropout, fully_connected
from tflearn.layers.conv import conv_2d, max_pool_2d
from tflearn.layers.normalization import local_response_normalization
from tflearn.layers.estimator import regression
#加载大名顶顶的mnist数据集(http://yann.lecun.com/exdb/mnist/)
import tflearn.datasets.mnist as mnist
X, Y, testX, testY = mnist.load_data(one_hot=True)
X = X.reshape([-1, 28, 28, 1])
testX = testX.reshape([-1, 28, 28, 1])
network = input_data(shape=[None, 28, 28, 1], name='input')
# CNN中的卷积操作,下面会有详细解释
network = conv_2d(