【学习笔记】TensorFlow学习笔记(C语言中文网教程)

2023-10-08 00:50

本文主要是介绍【学习笔记】TensorFlow学习笔记(C语言中文网教程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、基础

学习资料:TensorFlow教程:TensorFlow快速入门教程

1. Hello world!

练习源码:

import tensorflow as tfmessage = tf.constant('Hello world!')
with tf.Session() as sess:# print(sess.run(message).decode())print(sess.run(message))
  • 输出信息:
    在这里插入图片描述
    提示TensorFlow代码可以以更快的速度运行(需通过源码安装),若想要屏蔽提示信息,可以在代码中加入以下内容:
    import os
    os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
    
    这段代码的作用是忽略级别 2 及以下的消息(级别 1 是提示,级别 2 是警告,级别 3 是错误)。
  • .decode() 作用:
    print 函数向 stdout 输出的结果是
    b'Hello world'
    
    b表示字节(byte),而decode操作删除字符串引号和“b”只保留单引号内的内容。

2. TensorFlow程序结构

  • 核心思想:
    程序结构分为两部分:计算图的定义执行
  • 定义过程只定义变量名和建立网络结构,可以不进行赋值。
  • 执行方式:
    with tf.Session() as sess:print(sess.run(v1_add_v2))
    
    或者是
    sess = tf.Session()
    print(sess.run(v1_add_v2))
    sess.close()
    
    其中,v1_add_v2代表要被执行的操作。
  • sess.run() 一次可以提取一个或多个张量或操作对象.

3. 常量、变量、占位符

  • tf.linspace输出包含终值;且输出含浮点数时,表达式中也应使用浮点数。
  • tf.range输出不包含终值。
  • seed()作用:相同的种子生成的(伪)随机数相同,系统默认根据时间来自己选择种子。
  • tf.truncated_normal():在±2σ处截断(超过则重新生成)。
  • tf.random_crop随即剪裁
  • tf.random_shuffle随机排列
  • 变量初始化:tf中必须显式初始化所有声明变量
    • 方法①:返回一个初始化所有全局变量的操作(Op)
      init = tf.global_variables_initializer()
      with tf.Session() as sess:print(sess.run(init))
      
    • 方法②
      with tf.Session() as sess:print(sess.run(tv1.initializer))
      
  • tf.placeholder定义占位符时必须指定数据类型
  • 需要大规模的常量张量对象时,为优化内存,将它们声明为一个可训练标志设置为 False 的变量:
    t_large = tf.Varible(large_array,trainable = False)
    
  • 所有的 TensorFlow 数据类型都是基于 Numpy 的,使用 tf.convert_to_tensor() 可以将给定的值转换为张量类型。
  • 与 Python/Numpy 序列不同,TensorFlow 序列不可迭代。例如:
    for i in tf.range(10)
    
    将会报错
    # typeError("'Tensor'object id not iterable.")
    

这篇关于【学习笔记】TensorFlow学习笔记(C语言中文网教程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/161591

相关文章

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

C语言中位操作的实际应用举例

《C语言中位操作的实际应用举例》:本文主要介绍C语言中位操作的实际应用,总结了位操作的使用场景,并指出了需要注意的问题,如可读性、平台依赖性和溢出风险,文中通过代码介绍的非常详细,需要的朋友可以参... 目录1. 嵌入式系统与硬件寄存器操作2. 网络协议解析3. 图像处理与颜色编码4. 高效处理布尔标志集合

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

C 语言中enum枚举的定义和使用小结

《C语言中enum枚举的定义和使用小结》在C语言里,enum(枚举)是一种用户自定义的数据类型,它能够让你创建一组具名的整数常量,下面我会从定义、使用、特性等方面详细介绍enum,感兴趣的朋友一起看... 目录1、引言2、基本定义3、定义枚举变量4、自定义枚举常量的值5、枚举与switch语句结合使用6、枚

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

Python虚拟环境终极(含PyCharm的使用教程)

《Python虚拟环境终极(含PyCharm的使用教程)》:本文主要介绍Python虚拟环境终极(含PyCharm的使用教程),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录一、为什么需要虚拟环境?二、虚拟环境创建方式对比三、命令行创建虚拟环境(venv)3.1 基础命令3

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例