神经网络手写数字识别学习
本文旨在神经网络手写数字识别学习笔记(一)的理解和基础上,一步一步操作神经网络基础模型的构建,完成手写数字识别的功能。
初始化Weight,bias
from mnist import MNIST
from scipy.linalg import expm, sinm, cosm
import numpy as np
import tensorflow as tf
mndata = MNIST('/home/warmtree/python-mnist/data')
images, labels = mndata.load_training()
images=np.array(images)/255
INPUT_NODE = 2#784 #28*28
OUTPUT_NODE = 2#10 #输出10个结点,十种分类结果,对应0-9数字
HIDDEN_NODE = 3#30 #隐藏层有30个结点
weight_variable1=np.random.randn(HIDDEN_NODE,INPUT_NODE)
weight_variable2=np.random.randn(OUTPUT_NODE, HIDDEN_NODE)
bias1=np.zeros((HIDDEN_NODE,1)) #initial one
bias2=np.zeros((OUTPUT_NODE,1))
print(weight_variable1)
print(weight_variable2)
print(bias1)
print(bias2)
alpha = 0.05 #learning rate
我们首先测试以下,2输入层,3隐藏层,2输出层的初始化Weights 和Bias是否构建正确。
在终端进行测试,结果如下。
(base) warmtree@warmtree-HP-Pavilion-Laptop-15-cc5xx:~/code/labs$ python text.py[