python实现多层前馈神经网络(手写体识别)

本文通过Python实现了基于MINST数据集的多层前馈神经网络,详细介绍了网络结构,包括输入层、两个隐藏层和输出层。网络训练结果显示,经过100次循环训练,模型的准确率达到了97.95%。
摘要由CSDN通过智能技术生成

前馈神经网络的图例及推导过程见https://blog.csdn.net/u010089444/article/details/52555567,接下来我们用python语言实现多层前馈神经网络。本例使用的是MINST数据集,由输入层,两个隐藏层,输出层. MNIST数据集中图片的大小为28*28,即每张图片可用一个28*28=784的向量表示.网络输入层的维度是784, 第一层隐藏层包含625个激活单元,第二层隐藏层包含500个激活单元,因此输入层到第一层隐藏层的权重矩阵维度是625*784,第一层到第二层隐藏层的权重矩阵维度是500*625,第二层隐藏层到输出层的权重矩阵维度是10*500,即网络最后输出一个10维向量,表示模型对图片中数字的预测结果.具体代码如下:

import tensorflow as tf
import numpy as np
from tensorflow.examples.tutorials.mnist import input_data
#数据读取
data_sets = input_data.read_data_sets("MNIST_data/", one_hot=True)
trX, trY, teX, teY = data_sets.train.images, data_sets.train.labels, data_sets.test.images, data_sets.test.labels
#占位符
images_placeholder = tf.placeholder("float", [None, 784])
labels_placeholder = tf.placeholder("float"
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值