Tensorflow的hello world =MNIST入门

keras实现mnist数据集手写数字识别 经过几天的爬坑,“东搞西搞”终于把深度学习的“HELLO,WORLD”做出来了,以下是自己的实战过程: 关于keras识别手写数字的入门准备: 1.Keras是一个高层神经网络API,Keras由纯Python编写而成并基Tensorflow、Theano以及CNTK后端。所以在安装keras的前面,要先搭建tensorflow环境和安装https://www.tensorflow.org/i... 阅读详情

主题流程是这样的:首先下载数据,mnist自动解析为训练数据和测试数据,每张图解析为784维向量,根据图片中像素加权,通过softMax函数计算图片中数字是0~9中某个数字的概率,使用梯度下降最小化交叉熵,最后根据真实值和预测值评估模型准确度

#-*- coding=utf-8 -*-
import tensorflow as tf
import input_data
import os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)

#输入数据,可以展开为784维的向量
x = tf.placeholder('float', [None, 784])
#初始化w(权重)和b(偏置),初始值可以随意设置,这里设置为0
w = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))

#使用softMax函数进行概率分布计算
y = tf.nn.softmax(tf.matmul(x,w) + b)
#定义一个指标用于衡量预测的准确性,这里使用交叉熵(也是一种成本或者叫损失函数),根据输入的实际值和我们的预测
#值来计算这个交叉熵,首先定义真实值占位
y_ = tf.placeholder('float', [None, 10])
#根据交叉熵公式计算
cross_entropy = -tf.reduce_sum(y_*tf.log(y))

#构建训练模型  学习率(步长)=0.01   
train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)

#模型评估  预测是否与真实标签匹配  输出一组boolean值
correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1))
#评估  boolean值转化为浮点数,然后求平均值  即为正确率
accuracy = tf.reduce_mean(tf.cast(correct_prediction, 'float'))

#初始化变量
init_op = tf.global_variables_initializer()
#创建会话,准备运行
sess = tf.Session()
sess.run(init_op)

#开始训练模型
for i in range(1000):
    batch_xs, batch_ys = mnist.train.next_batch(100)
    sess.run(train_step, feed_dict={x:batch_xs, y_:batch_ys})
    print('weight is == ', sess.run(w))
    print('bias is == ', sess.run(b))

#打印正确率
print(sess.run(accuracy, feed_dict={x:mnist.test.images, y_:mnist.test.labels}))

 

Tensorflow 的环境配置以及Hello World程序的运行 环境配置部分 电脑配置为15版MacBook Pro带Iris Pro集成显卡。 系统版本为macOS Big Sur。 mac系统自带Python2.7,Tensorflow2.0需要配置Python3.0的环境运行。首先使用homebrew安装python3.x版本,需要注意的是Tensorflow目前不支持python的最高版本,下载的时候需要在官网上选择适合Tensorflow2.0的python3.x版本(目前是3.6-3.8)。如果已经安装了高版本的python3需要手动卸载重新安装降级,在命令 阅读详情

相关推荐

HBuilderX结合Android Studio实现Uniapp安卓Apk高效离线打包指南

本文提供了一份详细的Uniapp安卓Apk离线打包实战指南。通过整合HBuilderX与Android Studio,手把手教你搭建本地编译环境、配置原生工程、执行核心打包流程,并分享快速更新资源和排查常见问题的技巧,助你彻底摆脱云端打包的排队依赖,实现高效、可控的应用构建。

weixin_28835551的博客 551

1.数字图像识别

传送门:https://www.lintcode.com/ai/digit-recognition/overview 题目描述 MNIST是计算机视觉领域的“hello world”数据集。 自1999年发布以来,这种手写图像的经典数据集已经成为基准分类算法的基础。 随着新的机器学习技术的出现,MNIST仍然是研究人员和学习者的可靠资源。 这个题目,您的目标是正确识别数以万计的手写图像数据集中的数字。 每一张图片,图片里面写了一个数字可能是0-9,然后需要设计算法判断出这个数字是0-9中哪一个数字。

The Shawshank Redemption 3792

机械设计师必看:如何用Autodesk Inventor高效完成钣金设计(附实战案例)

本文为机械设计师详细解析了如何利用Autodesk Inventor Professional高效完成钣金设计。文章通过一个钣金防护罩的实战案例,系统介绍了从核心设计逻辑、建模流程、参数化技巧到工程图输出的完整工作流,旨在帮助设计师掌握智能化的设计方法,显著提升从概念到制造的设计效率与准确性。

honey的博客 1181

深度学习的Hello world 基于MNIST库的手写数字识别

实验基于MNIST库的手写数字识别 目录 实验基于MNIST库的手写数字识别 1 实验思路 2 MNIST数据集的加载和归一化 3 CNN的搭建 4 训练和测试及其可视化 5 实验中遇到的问题 6 全部代码 MNIST 数据集来自美国国家标准与技术研究所, 训练集由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50% 来自人口普查局MNIST数据集是机器学习领域中非常经典的一个数据集,由60000个训练样本和10000个测试样本组成,每个样本都是一...

m0_56155877的博客 488

从平面到立体:一张图看懂MOSFET、FinFET到GAAFET的演变史(附结构对比图)

本文深入解析了半导体晶体管从平面MOSFET到三维FinFET,再到全环绕栅极GAAFET的技术演进历程。通过结构对比图和物理原理分析,揭示了每一次创新如何解决短沟道效应等关键挑战,推动芯片性能提升。特别关注GAAFET作为最新技术突破的架构特点和性能优势。

weixin_30892037的博客 692

Matlab实战:水声信号DEMON谱分析从入门到精通(附完整源码)

本文详细介绍了使用Matlab进行水声信号DEMON谱分析的完整流程,从基础理论到实战应用,涵盖信号预处理、包络提取、频谱分析等关键步骤,并附完整源码。特别针对水声通信中的低信噪比环境,提供了多种优化方案和性能提升技巧,帮助读者快速掌握这一水下目标检测的核心技术。

gamma的博客 295

第二课 深度学习的“hello world”——基于mnist数据集的手写数字识别

1,下载mnist所需的所有数据 mnist数据集http://yann.lecun.com/exdb/mnist/,这里需要注意的是caffe并不直接通过下载得到的四个文件进行训练,而是会把它转化为lmdb或leveldb格式进行读取。lmdb是lightning(闪电的) memory-mapped database manager的缩写,能够把原始数据通过更为高效的存储方式存储

young951023的博客 2116

串行通信原理及实验仿真

1. 处理器与外部设备通信的两种方式: 并行通信和串行通信 并行通信是指数据的各个位用多条数据线同时进行传输 优点:传输速度快 缺点:占用引脚资源多 串行通信是将数据分成一位一位的形式在一条传输线上逐个传输 优点:通信线路简单,占用引脚资源少 缺点:传输速度慢 2. 串行通信的通信方式: 同步通信和异步通信 同步通信:带有时钟同步信号的数据传输;发送方和接收方在同一时钟的控制下,同步传输数据。 异步通信:不同时钟同步信号的数据传输。发送方和接收方使用各自的时钟控制数据的发送和接收过程。 3. 串行通

gemengxia的博客 4322

机器学习的“hello world”之mnist数据集

环境:ubuntu16.04+python3.6+spyder+tensorflow1.3. 代码亲测有效。tensorflow自带mnist数据集无需下载。 # -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ from tensorflow.examples.tutorials.mn...

无烟蚊香的专栏 304

Python之afdx包语法、参数和实际应用案例

Python 的 afdx 包是针对 AFDX 协议的轻量级开发工具,专注于 AFDX 数据帧的解析、构造、发送/接收、协议合规性校验等核心能力,广泛应用于航空电子设备测试、仿真、数据监控等场景。

王国平的博客 982

Windows 下 Claude Code Desktop 安装与使用全记录:从零到一的保姆级图文教程

本文主要介绍了Windows 下 Claude Code 安装全记录:从零到一的保姆级图文教程,希望能对学习使用 Claude Code 的同学们有所帮助。 文章目录 1. 背景 2. 安装Claude Code Desktop 3. 配置第三方API 4. 日常使用

weixin_43178406的博客 8万+

MNIST入门

这里倒是没有讲MNIST数据集的概念,具体可以参见这篇文章:MNIST机器学习入门 这里只是将文中所述的预测代码简单实现了下: import tensorflow as tf import numpy as np from tensorflow.examples.tutorials.mnist import input_data # 下载数据 mnist = input_data.re...

hopyGreat的博客 384

机器人控制基础:伺服驱动器的泄放电阻

摘要:伺服驱动器泄放电阻用于消耗电机减速或制动时产生的再生电能,防止母线电压过高损坏元件。其核心作用是将多余电能转化为热能,规避硬件损坏和停机风险。选型需关注功率、阻值和封装三大参数,功率应匹配再生能量,阻值需符合驱动器要求,封装应满足散热需求。可通过动态监测母线电压或静态检测电阻阻值来判断其是否正常工作。

start_up_go的博客 381

tensorflow hello world mnist

from __future__ import absolute_import, division, print_function, unicode_literals import tensorflow as tf mnist = tf.keras.datasets.mnist (x_train, y_train), (x_test, y_test) = mnist.load_data() x_train, x_test = x_train / 255.0, x_test / 255.0 model.

光金正博客 299

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Tensorflow的Hello World:MNIST 手写数字识别例子分析

Tensorflow的Hello World:MNIST 手写数字识别例子分析 1.代码 首先给出MNIST数据集的tensorflow例程(python3.7 tensorflow有些API函数可能已经很旧): import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = in...

xbb2015011326的博客 247

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

TensorFlow界的hello world——MNIST手写数字识别

一般而言,MNIST 数据集测试就是机器学习和深度学习当中的"Hello World"工程,几乎是所有的教程都会把它放在最开始的地方.这是因为,这个简单的工程包含了大致的机器学习流程,通过练习这个工程有助于我们加深理解深度学习的大致流程.MNIST 是一个小型的手写数字图片库,它总共有 60000 张图片,其中 50000 张训练图片,10000 张测试图片.每张图片的像素都是 28 * 28 它...

weixin_37813036的博客 623

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

TensorFlow实现机器学习的“Hello World”--Mnist手写数字识别

TensorFlow实现机器学习的“Hello World”上一篇博客我们已经说了TensorFlow大概怎么使用,这次来说说机器学习中特别经典的案例,也相当于是机器学习的“Hello World”,他就是Mnist手写数字识别,也就是通过训练机器让他能看懂手写的阿拉伯数字。 极客网其实已经把完整的教程都写出来了,但里面还是有些坑的,所以我会把我遇到的坑给大家说一下。 极客网Mnist教程链接:

DilemmaVF的博客 3152

机器学习里的Hello World——TensorFlow 2.0在MNIST数据集上的尝试

首先,TensorFlow 2.0已经正式发布很久啦,TensorFlow 2.0真香~ 我刚开始用TensorFlow的时候,还是1.4版本。有一说一,我觉得1.x版本的TensorFlow真心不怎么好用,虽然很灵活,但实现模型太过繁琐,接口很乱,还有很多冗余接口。 后来刚接触到Keras,便觉得这是一股清流,Keras封装的接口非常简洁,你完全可以使用Keras以极快的速度完成模型的构建。但它...

笔墨留年。 1083

TensorFlow 实践入门—— MNIST手写数字识别

深度学习里的MNIST手写数字识别就相当于学习编程语言试试的“Hello World”程序,通过该项目,开启深度学习的TensorFlow框架的学习。 MNIST手写数字识别(代码) ...

bulala123的博客 225

tensorflow 学习 Hello World

准备学习tensorflow,首先记录下 第一次测试程序 一、实现 输出hello world #!/usr/bin/env python import tensorflow as tf sess = tf.Session() hello = tf.constant("hello World!",dtype=tf.string) print(sess.run(hello)) 下面学习...

shiluohuashengmi的专栏 237

tensorflow实战(一)——MNIST数据集的hello world

描述 这一系列文章全部参考黄文坚 的《tensorflow实战》第三章 学习 交叉熵 cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1])) reduction_indices=[0]的意思是,按行求和(列数不变,行全部加在一起) reduction_indices=[1]的意...

weixin_42156097的博客 197

Tensorflow Similarity Supervised Learning Hello World

Tensorflow_Similarity_Supervised_Learning_Hello_World This notebook demonstrates how to use TensorFlow Similarity to train a SimilarityModel() on a fraction of the MNIST classes, and yet the model is able to index and retrieve similar looking images for al

XianxinMao的博客 1542

TensorFlow学习笔记2:"Hello World!"

本文参考TF官方入门程序链接: https://tensorflow.google.cn/tutorials/keras/basic_classification 推荐直接看以上链接中的官方教程,如果无法打开该链接可以直接看以下内容,以下为官方内容的一个搬运,以保证本系列的完整性,便于自己学习使用。 本教程会训练一个对服饰(例如运动鞋和衬衫)图像进行分类的神经网络模型。 本教程使用 tf.kera...

TracelessLe的专栏 1550

Tensorflow 2: Run mnist examples

What is mnistMNIST is like the "Hello World" of machine learning. Its a database of handwritten digits (0-9), with which you can try out a few machine learning algorithms.Download the examplesDownload...

lychee420的博客 668

tensorflow1.14 mnist hello world

import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data INPUT_NODE = 784 OUTPUT_NODE = 10 LAYER1_NODE = 500 BATCH_SIZE = 100 LEARNING_RATE_BASE = 0.8 LEARNING_RATE_DECAY = 0.99 REGULARIZATION_RATE = 0.0001 TRAINING_STE...

huaweitman的专栏 1149

TensorFlow入门:MNIST手写数字识别实战指南

卷积神经网络(CNN)作为深度学习中的核心架构,通过局部连接和权值共享显著提升了图像识别任务的性能。其工作原理是通过多层卷积和池化操作逐步提取图像特征,最终通过全连接层完成分类任务。在计算机视觉领域,MNIST手写数字识别是经典的入门项目,使用TensorFlow框架可以快速实现一个准确率达98%以上的CNN模型。该项目不仅帮助开发者掌握数据预处理、模型构建、训练评估等完整流程,还能深入理解GPU加速训练、模型保存与部署等工程实践要点。通过调整网络结构、优化超参数或应用迁移学习,可以进一步提升模型性能,为O

chouzu8463的博客 397
上一篇: Tensorflow变量的保存和恢复
下一篇: Tensorflow的MNIST数据集下载脚本(input_data.py)
杨鑫校
博客等级 码龄11年 24粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值