深度学习框架TensorFlow学习(二)----简单实现Mnist

【Tensorflow】 写给初学者的深度学习教程之 MNIST 数字识别 一般而言,MNIST 数据集测试就是机器学习和深度学习当中的"Hello World"工程,几乎是所有的教程都会把它放在最开始的地方.这是因为,这个简单的工程包含了大致的机器学习流程,通过练习这个工程有助于读者加深理解机器学习或者是深度学习的大致流程. 可恰恰就是在这个地方,却容易给初学者带来困扰.原因就是多数作者,对待这个比较容易的项目比较随意,经常就是把代码一张贴就完事了,读者会跟着代码敲一... 阅读详情

一、Mnist介绍

MNIST数据库介绍:MNIST是一个手写数字数据库,它有60000个训练样本集和10000个测试样本集。它是NIST数据库的一个子集。MNIST数据库官方网址为:http://yann.lecun.com/exdb/mnist/ ,也可以在windows下直接下载,train-images-idx3-ubyte.gz、train-labels-idx1-ubyte.gz等。下载四个文件,解压缩。解压缩后发现这些文件并不是标准的图像格式。这些图像数据都保存在二进制文件中。每个样本图像的宽高为28*28。
MNIST是在机器学习领域中的一个经典问题。该问题解决的是把28x28像素的灰度手写数字图片识别为相应的数字,其中数字的范围从0到9.
就像我们学习其他语言的第一个入门程序是Hello world~一样,Mnist 就是我们深度学习入门的第一个。
话不多说,直接上代码。

二、源码

import tensorflow as tf
import numpy as np
#导入数据
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("/tmp/data/", one_hot=True)
Xtr, Ytr = mnist.train.next_batch(5000) #5000 for training (nn candidates)
Xte, Yte = mnist.test.next_batch(200) #200 for testing
#定义占位符
xtr = tf.placeholder("float", [None, 784])
xte = tf.placeholder("float", [784])
#使用L1距离计算
distance = tf.reduce_sum(tf.abs(tf.add(xtr, tf.neg(xte))), reduction_indices=1)
#得到最小距离
pred = tf.arg_min(distance, 0)
#精度计数
accuracy = 0.
#初始化所有值
init = tf.initialize_all_variables()

with tf.Session() as sess:
    sess.run(init)
 # 在所有数据集上测试
    for i in range(len(Xte)):
        # 得到最近的类别
        nn_index = sess.run(pred, feed_dict={xtr: Xtr, xte: Xte[i, :]})
        # Get nearest neighbor class label and compare it to its true label
        print "Test", i, "Prediction:", np.argmax(Ytr[nn_index]), \
            "True Class:", np.argmax(Yte[i])
        # 计算精度
        if np.argmax(Ytr[nn_index]) == np.argmax(Yte[i]):
            accuracy += 1./len(Xte)
    print "Done!"
    print "Accuracy:", accuracy

Done~
Accuracy:0.92
代码运行成功~~

三、分析

本实例主要的目的是介绍一下tensorflow对数据的基本使用,包括占位符placeholder以及数据的导入,数据的初始化tf.initialize_all_variables()。目的就是开始接触tensorflow。其实这个东西本身很简单,我也是刚开始学习,可能你看到这篇文章的时候我也是刚学习完这个,有点感悟就写了下来与大家分享,我会再之后继续学习,有什么经验都会和大家分享的~也欢迎有想法一起学习的小伙伴联系我,一起交流学习~~~

Python实现简单的深度学习实践 想象一下,如果你是一位探险家,那么Python就是你的地图与指南针,帮助你在这片充满未知的深度学习丛林中找到前进的方向。让我们一起探索新奇的事物,分享生活的点滴,让这个小角落成为我们共同的精神家园。说到创建神经网络,很多人可能会觉得这是一项艰巨的任务,但实际上,在Python的帮助下,这一切变得异常简单。你可以把这里当作自己的家,无论是工作之余的小憩,还是寻找灵感的驿站,我都希望你能在这里找到属于你的那份快乐和满足。 阅读详情

相关推荐

0基础深度学习项目11:基于TensorFlow实现mnist手写数字识别

MNIST手写数字数据集来源于是美国国家标准与技术研究所,是著名的公开数据集之一。(下载后需解压)。我们一般会采用这行代码直接调用,这样就比较简单。MNIST手写数字数据集中包含了70000张图片,其中60000张为训练数据,10000为测试数据,70000张图片均是2828,数据集样本如下:如果我们把每一张图片中的像素转换为向量,则得到长度为2828=784的向量。因此我们可以把训练集看成是一个[60000,784]的张量,第一个维度表示图片的索引,第二个维度表示每张图片中的像素点。

qq_42492684的博客 1545

详解 MNIST 数据集

MNIST 数据集已经是一个被”嚼烂”了的数据集, 很多教程都会对它”下手”, 几乎成为一个 “典范”. 不过有些人可能对它还不是很了解, 下面来介绍一下.MNIST 数据集可在 http://yann.lecun.com/exdb/mnist/ 获取, 它包含了四个部分: Training set images: train-images-idx3-ubyte.gz (9.9 MB, 解压后 47

Liu-Cheng Xu 32万+

新手入门深度学习 | 0-2:深度学习(DL)是什么?

文章目录一、深度学习是什么二、实现过程1. 准备数据导入数据可视化调整图片格式2. 构建神经网络模型3. 编译模型4. 训练模型5. 预测三、总结推荐一些不能错过的练手项目(附代码+讲解) ???? 我的环境: 语言环境:Python3.6.5 编译器:Jupyter Notebook 深度学习环境:TensorFlow2.4.1 ???? 往期内容: 小白入门深度学习 | 第一篇:配置深度学习环境 小白入门深度学习 | 第二篇:编译器的使用-Jupyter Notebook ???? 本文选自专

“365天深度学习训练营”报名进行中~ 5204

Python MNIST解压

解压手写数字数据库MNIST,网上找了几个教程,最后自己写了一个 目录 MNIST介绍 struct模块介绍 解压实现 相关实现 MNIST介绍 参考:THE MNIST DATABASE MNIST是手写数字数据库,共有60000张训练图像和10000张测试图像 共有4个文件,保存训练图像和标签文件以及测试图像和标签文件: train-images-idx3-ubyte.gz: tra...

u012005313的专栏 4323

【深度学习kears+tensorflow】MNIST手写数字识别

import keras keras.__version__ Using TensorFlow backend. '2.3.1' A first look at a neural network This notebook contains the code samples found in Chapter 2, Section 1 of Deep Learning with Python....

子浩的博客 1万+

MNIST数字识别项目:使用Python和TensorFlow实现深度学习

本文还有配套的精品资源,点击获取 简介:MNIST是一个广泛用于机器学习和深度学习的数字识别数据集,包含成千上万的手写数字图像。本项目通过Python和TensorFlow框架,采用深度学习方法,实现手写数字的识别。项目涵盖了从数据预处理到模型构建、训练、评估和预测的全流程。特别地,本项目以“mnist.py”为核心脚本,详细展示了如何操作MNIST数据集,并通过构建深度神...

weixin_33608403的博客 1743

tenserflow实例之最近邻算法

下面是利用MNIST data做的一个最近邻分类''' A nearest neighbor learning algorithm example using TensorFlow library. This example is using the MNIST database of handwritten digits (http://yann.lecun.com/exdb/mnist/) Au

CZ626626的博客 1151

Unity中URP下的菲涅尔效果实现(个性化修改)

在上篇文章中,我们实现了 URP 下的菲涅尔基础效果,我们在这篇文章中,对其进行自定义化修改。

楠溪泽岸的博客 2063

用TensorFlow框架实现MNIST手写数字识别

import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data #number 1 to 10 data mnist = input_data.read_data_sets('D:/Download/google/MNIST_data/',one_hot = True) #引用本地路径,‘\’用‘...

Nine_s的博客 400

基于Meteoinfo与TrajStat的后向轨迹聚类分析实战:从数据准备到可视化制图

本文详细介绍了基于Meteoinfo与TrajStat进行后向轨迹聚类分析的完整实战流程。从Java环境配置、Meteoinfo软件与TrajStat插件安装,到精准获取NOAA气象数据、设置参数进行批量轨迹计算,再到利用聚类分析提炼主要气流路径,并最终完成专业地图可视化与制图。文章旨在帮助环境与气象研究者快速掌握从数据准备到成果输出的全链路操作。

p4q5r6s7t的博客 804

Ubuntu 24.04 部署 EMQX 5.8 开源版MQTT服务器:从零搭建到实战应用

本文详细指导如何在Ubuntu 24.04系统上部署EMQX 5.8开源版MQTT服务器。内容涵盖从环境准备、安装Erlang、下载安装包到启动服务的完整步骤,并提供了验证服务、配置网络防火墙以及通过WebSocket工具进行基础消息收发的实战方法,帮助用户快速搭建稳定、免费的物联网消息中间件。

weixin_29209825的博客 293

【深度学习】实现基于MNIST数据集的TensorFlow/Keras深度学习案例

深度学习是数据科学的一个方面,它推动了许多应用程序和服务,这些应用程序和服务可以提高自动化水平,无需人工干预即可执行分析和物理任务。本文简要介绍基于TensorFlow/Keras的深度学习案例,使用最流行的MNIST数据集。希望对读者有所帮助。

jackson_lingua的博客 2732

starrc: LEF DEF FLOW与full chip flat netlist

SIKP_CELLS默认为"SKIP_CELLS: *"意思是跳过所有ref cell内部的rc提取,仅提取cell之间的互联线的rc,"SKIP_CELLS: *!与MACRO_DEF_FILE搭配使用的还有SKIP_CELLS命令,如果想提取block的寄生参数生成full chip的flat netlist,或者跳过block取执行hier的寄生参数提取都需要用到SKIP_CELLS。此时,macroA和macroB没有被跳过,所以提取其内部的rc,spef中存在两个A和两个B。

m0_61544122的博客 553

深度学习三大框架对比与实战:PyTorch、TensorFlow 和 Keras 全面解析

PyTorch 是 Facebook 推出的动态计算图框架,以灵活的调试能力和面向对象的设计深受研究人员喜爱。其代码风格与 Python 十分相似,非常直观。主要特点:动态计算图:支持即时调整网络结构,调试更加灵活。社区支持:在学术领域占据主流地位。简单易用:轻松与其他 Python 库集成,如 Numpy。PyTorch以灵活性和动态特性,适合研究人员。TensorFlow提供全面的工具链和部署能力,是工业级开发的首选。Keras以其简单性和模块化设计,非常适合新手入门和快速原型。

2301_80038570的博客 3564

使用virtuoso gds转lef操作方法

2) 然后,需要创建Pin,这里Pin的概念不同于label/text,是有实际金属的,二者的区别类似于pr中的port和terminal。1) 首先,需要画prBoundary,这个用drawing层的prBoundary画是不行的,不过建议pr阶段就把prBoundary转到gds里,在virtuoso layout中画prBoundary就比较容易。另外,用Create - Create Pin也可以创建pin,更适用于PG pin,操作时先给pg shape打label,最好放正中间。

m0_61544122的博客 1380

【深度学习|多实例学习】多实例学习(Multiple Instance Learning, MIL)的起源、发展和应用,附代码(一)

【深度学习|多实例学习】多实例学习(Multiple Instance Learning, MIL)的起源、发展和应用,附代码(一)

2401_89898861的博客 1921

深度学习——使用TensorFlow实现MNIST手写数字识别

深度学习的旅程既充满挑战也极具魅力,从理论到实践的每一步都是对未知的探索。本文仅是入门指南,真正的学习在于不断实践与创新。你是否在深度学习项目中遇到过特别有趣或棘手的问题?你认为哪些资源或技巧对初学者尤其有帮助?欢迎在评论区分享你的故事和见解,让我们共同推动AI技术的进步。欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。DTcode7的博客首页。

一个做过前端开发的产品经理,经历过睿智产品的折磨导致脱发之后,励志要翻身"农奴"把歌唱,一边打入敌人内部一边持续提升自己,为我们广大开发同胞谋福祉,坚决抵制睿智产品折磨我们码农兄弟! 1863

Sigrity Power Tree如何进行直流压降仿真分析操作指导

Sigrity Power Tree模式可以用于前仿真,在没有layout文件的情况下对电源进行直流压降仿真分析,用于评估原理图设计以及器件选型是否合理。Model:设置为Equal Current,设置为等电源模型,意思该负载每个电源pin都是等电流的。Current:设置每个负载的电流,U30为3A,U3-U6各为1A。Nominal Current:设置能够承载的最大电流,设置为10A。Upper/ Lower Tol:设置为压降范围为5%Output Current:设置输出电流为10A。

weixin_54787054的博客 732

深度学习Week7——利用TensorFlow实现mnist手写数字识别

🍨 本文为🔗365天深度学习训练营中的学习记录博客K同学啊 | 接辅导、项目定制由于pytorch后面的算法本人学习起来难度过大,我思考了一段时间觉得是自己的基础仍然不扎实,确实,由于本人目前才大二,很多内容不是很理解,但好在时间比较充裕,因此慢慢来比一味的推进度要更适合我,因此从本周开始,我打算重新开始第一周的打卡,去细致的学习神经网络程序,去理解他的网络结构,体会各个层的作用,为后面更复杂的学习打下基础。

Ying_xiaotao的博客 4398

国产化替代落地:C#+Avalonia跨平台开发(麒麟系统适配全流程)

摘要: 随着国产化替代政策的推进,麒麟操作系统成为国产替代的重要选择。本文介绍了如何使用C#和Avalonia框架开发跨平台应用,适配麒麟系统。Avalonia支持Windows、Linux(包括麒麟)和macOS,通过XAML设计UI,便于开发者快速上手。文章详细讲解了开发环境配置、XAML控件设计、Linux特性适配及性能优化,并强调政府30%研发补贴带来的政策红利。未来,随着国产系统生态完善,C#+Avalonia将成为企业跨平台开发的高效解决方案。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 3475

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

深度学习实验第T1周:实现mnist手写数字识别

MNIST手写数字数据集来源于是美国国家标准与技术研究所,是著名的公开数据集之一。(下载后需解压)。我们一般会采用这行代码直接调用,这样就比较简单MNIST手写数字数据集中包含了70000张图片,其中60000张为训练数据,10000为测试数据,70000张图片均是28*28,数据集样本如下:如果我们把每一张图片中的像素转换为向量,则得到长度为28*28=784的向量。因此我们可以把训练集看成是一个的张量,第一个维度表示图片的索引,第二个维度表示每张图片中的像素点。而图片里的每个像素点的值介于0-1。

m0_55259388的博客 1996

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

深度学习入门:用TensorFlow实现简单的神经网络

本文介绍了如何使用TensorFlow构建和训练一个简单的卷积神经网络(CNN)模型,以识别手写数字。首先,文章简要介绍了TensorFlow的安装和基本功能,接着详细讲解了如何加载和预处理MNIST数据集。随后,文章展示了如何构建一个CNN模型,包括卷积层、池化层和全连接层的设置,并编译模型。在模型训练部分,文章说明了如何使用训练数据来训练模型,并在测试集上评估模型的性能。此外,文章还介绍了如何通过绘制准确率和损失曲线来可视化模型的训练过程。最后,文章提出了一些项目扩展建议,如数据增强、超参数优化和迁移学

2501_91624122的博客 1314

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

在TensorFlow框架下实现DBN网络

前言 在上一篇博客‘Windows下安装Tensorflow’的基础上,实现深度学习网络——DBN网络,以经典的手写字体识别为例子。一、下载手写字体数据集,官方

zhuzhishi2042的博客 2万+

一文读懂 TensorFlow 深度学习框架:从基础到实战!

TensorFlow 最初由 Google Brain 团队开发,于 2015 年开源。经过多年的发展,它已经成为了一个高度灵活且功能丰富的深度学习框架,广泛应用于各类机器学习算法的编程实现。TensorFlow 作为一款功能强大的深度学习框架,为开发者提供了丰富的工具和灵活的编程模型,无论是初学者快速上手深度学习,还是研究人员进行复杂模型的开发,都能从中受益。通过本文的介绍和操作示例,希望你能对 TensorFlow 有更深入的理解,并在实际项目中灵活运用。

Stuomasi_xiaoxin的博客 1万+

Tensorflow实战(一)——MNIST

文章目录1. MNIST1.1 MNIST 简介1.2 MNIST 下载1.3 MNIST 使用1.4 图像标签的one-hot表示2. Softmax 回归2.1 Softmax 简介2.2 Softmax 实现3. 损失函数3.1 损失函数简介3.2 损失函数实现4. 运行模型5. 测试模型6. 完整代码与解析 引用 https://www.cnblogs.com/lizheng114/p/7439556.html https://www.cnblogs.com/xiaoyh/p/10813413.

陈陈陈Chan的博客 8030

深度学习实验——tensorflow实现mnist手写数字识别

这次实验问题基本上出在环境配置上,版本不兼容真的很难搞,基本每次都碰到这个问题,配的我都没脾气了,其余实验的思路其实和pytorch一样,没什么其他的难点,剩余就是内存问题了,感觉还是pytorch好用,不过既然要用这个tensorflow学习一下也挺好的,训练的内容倒是少了很多,多熟练一下这个语法吧。

2301_81455976的博客 832
上一篇: P-N学习介绍
下一篇: 十大机器学习算法之最大期望算法(EM,Expectation-Maximization算法)
小小菜鸟一只
博客等级 码龄14年 610粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值