from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot= True)
import tensorflow as tf
#define the parameter of the NET
learning_rate = 0.001
training_iters = 200000 #iters
batch_size = 64 # the number of the train_data in Every iterarion
display_step = 20
n_input = 784 #the dimentional of the input
n_classes =10 # the class of the label
dropout = 0.8
x = tf.placeholder("float", [None,n_input]) #this is easy to change the train data
y = tf.placeholder("float", [None,n_classes])
keep_prob = tf.placeholder("float")
#define the conv operate
def conv2d(name,I_inpuit, w, b):
return tf.nn.relu(tf.nn.bias_add(tf.nn.conv2d(I_inpuit,w,strides=[1,1,1,1],padding='SAME'),b),name=name)
def max_poll(name, I_input,k):
return tf.nn.max_pool(I_input,ksize=[1,k,k,1],strides=[1,k,k,1],padding='SAME',name=name)
def norm(name,I_input,lsize=4):
return tf.nn.lrn(I_input,lsize,bias=1.0,alpha=0.001/9.0,beta=0.75,name=name)
#define the framework of the network
def Alex_net(X, weights,biases,dropout):
X = tf.reshape(X,shape=[-1,28,28,1])
#layer 1
conv1 = conv2d('conv1',X ,weights['wc1'],biases['bc1'])
pool1 = max_poll('pool1',conv1, k=2)
norm1 = norm('norm1',pool1,lsize =4)
norm1 = tf.nn.dropout(norm1,dropout)
#layer 2
conv2 = conv2d('conv2',norm1,weights['wc2'],biases['bc2'])
pool2 = max_poll('pool2',conv2,k=2)
norm2 = norm('norm2',pool2,lsize=4)
norm2 = tf.nn.dropout(norm2,dropout)
#layer 3
conv3 = conv2d('conv3',norm2,weights['wc3'],biases['bc3'])
pool3 = max_poll('pool3',conv3,k=2)
norm3 = norm('norm3',pool3,lsize=4)
norm3 = tf.nn.dropout(norm3,dropout)
#full-connected network
fc1 = tf.reshape(norm3, [-1, weights['wf1'].get_shape().as_list()[0]])
fc1 = tf.nn.relu(tf.matmul(fc1, weights['wf1'])+biases['bf1'],name='fc1')
fc2 = tf.nn.relu(tf.matmul(fc1,weights['wf2'])+biases['bf2'],name='fc2')
#output layer
out = tf.matmul(fc2,weights['out'])+biases['out']
return out
#save the parameters
weights = {
'wc1':tf.Variable(tf.random_normal([3,3,1,64])),
'wc2':tf.Variable(tf.random_normal([3,3,64,128])),
'wc3':tf.Variable(tf.random_normal([3,3,128,256])),
'wf1':tf.Variable(tf.random_normal([4*4*256,1024])),
'wf2':tf.Variable(tf.random_normal([1024,1024])),
'out':tf.Variable(tf.random_normal([1024,10]))
}
biases = {
'bc1':tf.Variable(tf.random_normal([64])),
'bc2':tf.Variable(tf.random_normal([128])),
'bc3':tf.Variable(tf.random_normal([256])),
'bf1':tf.Variable(tf.random_normal([1024])),
'bf2':tf.Variable(tf.random_normal([1024])),
'out':tf.Variable(tf.random_normal([10]))
}
# model the learning network
pred = Alex_net(x,weights,biases,keep_prob)
#define the loss and train_step
loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(pred,y))
train_step = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(loss)
#test the network
correct_pred = tf.equal(tf.argmax(pred,1),tf.argmax(y,1))
accuary = tf.reduce_mean(tf.cast(correct_pred,tf.float32))
#initialize the variables
init = tf.initialize_all_variables()
# TRAIN
with tf.Session() as sess:
sess.run(init)
step = 1
#Keep training until reach the max iteration
while step * batch_size < training_iters:
batch_xs,batch_ys = mnist.train.next_batch(batch_size)
sess.run(train_step,feed_dict={x:batch_xs,y:batch_ys,keep_prob:dropout})
if step%display_step==0:
acc = sess.run(accuary,feed_dict={x:batch_xs,y:batch_ys,keep_prob:1})
losses = sess.run(loss,feed_dict={x:batch_xs,y:batch_ys,keep_prob:1})
print "Iter"+str(step*batch_size)+",Minibatch_loss = "+"{:.6f}".format(losses)+",Training Accuary"+"{:.5f}".format(acc)
step +=1
print "Optimization Finished!"
# Test the accuary
print "Testing Accuary:", sess.run(accuary,feed_dict={x:mnist.test.images[:256],y:mnist.test.labels[:256],keep_prob:1})
相关推荐
Tensorflow实现AlexNet
0、CNN结构演化历史的图 一、AlexNet 1、 模型介绍 AlexNet是由Alex KrizhevskyAlex Krizhevsky提出的首个应用于图像分类的深层卷积神经网络,该网络在2012年ILSVRC(ImageNet Large Scale Visual Recognition Competition)图像分类竞赛中以15.3%的top-5测试错误率赢得第一名^{...
AlexNet模型及代码详解
Alex在2012年提出的alexnet网络结构模型引爆了神经网络的应用热潮,并赢得了2012届图像识别大赛的冠军,使得CNN成为在图像分类上的核心算法模型。 该网络的亮点在于: (1)首次使用了GPU进行网络加速训练。 (2)使用了ReLU激活函数,而不是传统的Sigmoid激活函数以及Tanh激活函数。 (3)使用了LRN局部响应归一化。 (4)在全连接层的前两层中使用了Droupout随机失活神经元操作,以减少过拟合。 模型组成 输入层 5个卷积层 3个全链接层 输入层: 输入大小为..
AlexNet模型tensorflow实现
AlexNet模型tensorflow实现
图像分类或检测完整代码--搭建AlexNet模型--tensorflow实现
在这里插入代码片
深度学习100例-卷积神经网络(AlexNet)手把手教学 | 第11天
文章目录一、前期工作1. 设置GPU2. 导入数据3. 查看数据二、数据预处理1. 加载数据2. 可视化数据3. 再次检查数据4. 配置数据集三、AlexNet介绍1.AlexNet介绍四、构建AlexNet (8层)网络模型五、编译六、训练模型七、模型评估八、保存and加载模型九、预测 一、前期工作 本文将采用AlexNet实现鸟类图片的识别分类 我的环境: 语言环境:Python3.6.5 编译器:jupyter notebook 深度学习环境:TensorFlow2.4.1 来自专栏:【深度学习1
OpenCV-Python实战(18)——深度学习简介与入门示例
深度学习已经成为机器学习中最受欢迎和发展最快的领域。自 2012 年深度学习性能超越机器学习等传统方法以来,深度学习架构开始快速应用于包括计算机视觉在内的众多领域。深度学习的常见应用包括语音识别、图像识别、自然语言处理、推荐系统等等。在本文中,首先介绍传统机器学习方法与深度学习间的差异,然后将介绍图像分类和对象检测中常见的深度学习架构,最后,将介绍深度学习 Python 库 Keras,并通过实战来推开深度学习的大门。
教你用TensorFlow搭建AlexNet
勿满足于眼前的小小成就。你要问自己,我这辈子只有这样吗。 AlexNet模式是在2012年提出来的,并且在当年获得了ILSVRC的冠军,top-5的错误率为16.4%,比第二名的成绩26.2%高出许多,也从此开始确立了深度学习在计算机视觉的统治地位,是一块重要的里程碑。 该模型包含了几个比较新的技术点: 成功使用ReLu作为CNN的激活函数,验证了其效果在较深网络中比Sigmoid更好 ...
AlexNet论文和源码.zip
深度学习经典网络AlexNet。其中包含有AlexNet经典论文和这篇英文论文的详细解读,还有tensorflow框架下的源代码实现。以及一个minist数据集的实践项目。对深度学习有兴趣的同学们可以下载。
神经网络之AlexNet模型的实现(Python+TensorFlow)
用Python+TensorFlow实现经典的AlexNet网络模型,增加理解,留作笔记。
【老生谈算法】可视化通道流中瞬时涡量场的算法实现与MATLAB源码分析——瞬时涡量场
本文旨在探讨可视化通道流中瞬时涡量场的方法,并通过MATLAB编程实现这一过程。涡量场作为描述流体旋涡强度和方向的重要物理量,对于理解复杂流体运动具有重要意义。本文首先介绍了涡量场的基本概念,随后详细阐述了从测量数据收集到涡量场可视化的完整流程,并给出了相应的MATLAB源码。通过实际运行该源码,我们展示了涡量场的可视化结果,并讨论了其在流动结构识别和动力学行为理解中的应用。关键词: 涡量场;流体运动;MATLAB;可视化;PIV一、引言。
5分钟搞懂SCMA:稀疏码多址接入的核心原理与实战应用
本文深入浅出地解析了SCMA(稀疏码多址接入)的核心原理与实战应用。通过对比传统正交多址技术,阐释了SCMA如何通过非正交叠加和稀疏码本设计,实现远超资源单元数的用户接入,从而有效应对5G海量机器通信(mMTC)的挑战。文章还探讨了其在上行海量连接、免授权接入等场景的应用潜力及工程实现中的关键考量。
TensorFlow实现经典深度学习网络(1):TensorFlow实现AlexNet
TensorFlow实现经典深度学习网络(1):TensorFlow实现AlexNet 本文介绍的经典卷积神经网络为AlexNet,他是由Hinton的学生Alex Krizhevsky提出。AlexNet可以说是在2012年被发表的一个经典之作,它可以算是LeNet的一种更深更宽的版本,并在当年取得了ImageNet最好成绩,点燃了深度学习这把火。也是在那年之后,更多的更深
【ROS】usb_cam相机标定
1. 唠叨两句 当我们要用相机做测量用途时,就需要做相机标定了,不然得到的计算结果会有很大误差,标定的内容包括三部分:内参,外参还有畸变参数。所以标定的过程就是要求得上面这些参数。 以前弄这个事估计挺麻烦,需要做实验和计算才能得到,现在通过ros的开源包几分钟就能完成相机标定,感激! 具体的内外参和畸变系数的说明,可以看看Reference里面的第一个链接,写得很详细。 2. 准备工作 要准备三样东西: usb_cam的ROS启动包 相机标定的ROS包 还有一个用于标定的棋盘格 1)usb_cam启动包
tensorflow实现AlexNet
AlexNet结构 及 pytorch、tensorflow、keras、paddle实现ImageNet识别 环境 python3.6,tensorflow-gpu 1.12.0 代码 # -*- coding: utf-8 -*- # @Time : 2020/1/21 11:17 # @Author : Zhao HL # @File : alexnet-tensorfl...
spyglass之功耗分析
用于功耗分析的软件除了ptpx外,spyglass也可以。ptpx的功耗分析是基于netlist(网表)进行的,一般用于分析综合后的pre功耗和P&R后的post功耗,但这已经是项目进行到比较后期了,如果后期发现功耗数据与我们目标功耗相差较大,则意味着需要功耗优化,这时有可能会将项目计划节点延迟。如果在前期designer可以获得设计模块的功耗数据,可提早优化功耗,spyglass则为designer提供了一个很好的手段去评估功耗,从而提前优化功耗。
【温室气体数据集】CAMS 发布的温室气体(GHG)数据集总结
【温室气体数据集】CAMS 发布的温室气体(GHG)数据集总结
TensorFlow实现AlexNet
一、AlexNet的介绍 2012年,Hinton的学生ALex Krizhevsky提出了深度卷积神经网络模型AlexNet,它可以算是LeNet的一种更深更宽的版本。AlexNet中包含了几个新的技术点,首次在CNN中成功应用了ReLU,Dropout和LRN等技术。AlexNet包含6亿3000万个连接,6000万个参数和65万个神经元,拥有5个卷积层,其中3个卷积层后面连接了最大池化层,...
拉曼光谱入门:10.显微拉曼与共聚焦技术
本文系统阐述了显微拉曼光谱技术与共聚焦原理的融合机制,详细解析了从激光激发、针孔空间滤波到光谱采集的完整光路架构,阐明了共聚焦设计在提升三维空间分辨率、抑制荧光背景及实现微区无损层析方面的核心优势,并探讨了关键光学器件的性能边界与系统技术局限。
深度学习 100+ 经典模型 TensorFlow 与 PyTorch 代码实现大集合
本文转自 | 专知(id: Quan_Zhuanzhi)深度学习在过去十年获得了极大进展,出现很多新的模型,并且伴随TensorFlow和Pytorch框架的出现,有很多实现,但对于初学...
在 SAP 里玩转 FTP:标准程序 RSFTP00x 全景解析与落地实践
摘要:SAP系统通过封装的标准FTP程序(RSFTP001-008)提供便捷的文件传输能力,适用于各类集成场景。关键点包括:1)依赖SAPFTP可执行程序和RFC目的地;2)使用RSFTP005进行前置检查并生成RFC配置;3)标准报表各司其职,如RSFTP002用于命令测试、RSFTP007/008提供参考实现;4)开发时组合FTP_CONNECT/COMMAND/DISCONNECT等函数模块。特别注意前台(SAPFTP)与后台(SAPFTPA)的环境差异,这是常见故障点。该方案通过标准化工具链显著降低
大数据Alluxio面试题及参考答案
Alluxio 在大数据生态里的定位是作为数据编排层,能在不同计算框架和存储系统之间起到桥梁的作用。它的核心功能在于加速数据访问,让大数据应用能够更高效地使用数据。Alluxio 把数据存储和数据处理分离开来,使计算框架可以在不考虑底层存储细节的情况下访问数据,这样就提高了系统的灵活性和可扩展性。Alluxio 和 HDFS 既存在关联又有区别。从关联方面来看,HDFS 是一种广泛使用的分布式文件系统,很多大数据应用都将其作为主要的数据存储系统。Alluxio 可以和 HDFS 集成,把 HDFS 当作底层
Tensorflow实例:实现AlexNet
AlexNet以显著的优势赢得了ILSVRC 2012比赛的冠军,可以说是神经网络在低谷期后的第一次发声,确立了深度学习在计算机视觉的统治地位,同时也推动了深度学习在语音识别、自动语言处理、强化学习等领域的扩展。 AlexNet将LeNet的思想发扬光大,把CNN的基础原理应用到了很深很宽的网络中。
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
TensorBoard可视化指南:追踪finetune_alexnet_with_tensorflow训练过程
TensorBoard可视化是深度学习训练过程中不可或缺的监控工具,它能帮助开发者直观地追踪模型训练进度、分析模型性能。本文将详细介绍如何在finetune_alexnet_with_tensorflow项目中使用TensorBoard来监控AlexNet微调过程,让您轻松掌握训练状态,优化模型效果。无论您是深度学习新手还是经验丰富的开发者,这篇TensorBoard可视化指南都将为您提供实用的监
efm32 入门.pdf
本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
AlexNet与TensorFlow实现
一.简介: 2012年,AlexNet以显著的优势赢得了竞争激烈的ILSVRC2012比赛,其官方提供的数据模型,准确率达到57.1%,top 1-5达到80.2%。AlexNet的出现点燃了深度学习的热潮,可以说是神经网络低谷期后的第一次发声,确立了深度学习在计算机视觉领域的统治地位。 二.AlexNet使用的新技术: 1.使用ReLU作为CNN的激活函数,解决了sigmoid在训练较深的
AlexNet实战避坑指南:如何用TensorFlow高效训练小规模数据集(100x100图像示例)
本文针对小规模数据集(如100x100图像)训练AlexNet模型时常见的过拟合问题,提供了一套完整的TensorFlow实战避坑指南。通过详解网络结构调整、数据增强、动态学习率与Dropout等关键策略,帮助读者高效提升模型泛化能力,让有限数据发挥最大价值。
用Tensorflow实现AlexNet识别猫狗数据集(猫狗大战)【附代码】
AlexNet识别猫狗数据集一、下载猫狗数据集二、AlexNet实现1、划分训练集和测试集2、AlexNet实现3、训练过程 一、下载猫狗数据集 百度云链接如下 链接:https://pan.baidu.com/s/1KWYrGVVS6He7lO7skyhgQQ 提取码:p2dd 二、AlexNet实现 1、划分训练集和测试集 因为猫狗大战的测试集没有label所以说我们就从训练集中抽取20%作为测试集,代码如下图所示 import os, random, shutil def moveFile(fileD
685



被折叠的 条评论
为什么被折叠?



