一、TensorFlow的主要依赖包

1.Protocol Buffer

Protocol Buffer负责将结构化的数据序列化,并从序列化之后的数据流中还原出原来的结构化数据。TensorFlow中的数据基本都是通过Protocol Buffer来组织的。

结构化数据:

name: 张三
id:
email: zhangsan@abc.com

Protocol Buffer格式的序列化数据:

message user{
optional string name = ;
required int32 id = ;
repeated string email = ;
}

Protocol Buffer数据格式一般保存在.proto文件中。

  • 与XML、Json等其他工具比较:

序列化为二进制流,而不是字符串

XML、Json格式信息包含在数据流中,Protocol Buffer需要先定义数据的格式

Protocol Buffer数据流比XML小3-10倍,解析时间快20-100倍

2.Bazel

Bazel是从Google开源的自动化构建工具,相比传统的makefile,Ant或者Maven,Bazel在速度、可伸缩性、灵活性以及对不同程序语言和平台的支持上都要更加出色。

项目空间(workspace)是Bazel的一个基本概念。一个项目空间可以简单地理解为一个文件夹,在这个文件夹中包含了编译一个软件所需要的源代码以及输出编译结果的软连接(symbolic link)地址。项目空间所对应的的文件夹是这个项目的根目录:

  • WORKSPACE文件:定义了对外部资源的依赖关系
  • BUILD文件:找到需要编译的目标

在编译出来的结果中,bazel-bin目录下存放了编译产生的二进制文件以及运行该二进制文件所需要的所有依赖关系。

二、TensorFlow安装

1、安装Anaconda

下载安装包:https://www.anaconda.com/distribution/

按照正常步骤安装即可。

Att:以下两个选项都选上,将安装路径写入环境变量

检测anconda环境是否安装成功:Win+R cmd 进入Windows命令窗口,输入命令:

conda --version

输出版本信息则安装成功。

2、安装TensorFlow

(1)建立tensorflow anaconda虚拟环境

命令窗口下输入:

conda create --name tensorFlow python=3.7 anaconda
  • conda create:建立虚拟环境
  • --name tensorFlow:虚拟环境的名称是TensorFlow
  • python=3.7:Python版本是3.7

(2)启动虚拟环境

命令窗口下输入:

activate tensorFlow

(3)安装TensorFlow

命令窗口下输入:

pip install tensorflow

3、验证TensorFlow是否安装成功(测试样例)

import tensorflow as tf
# 加载tensorFlow
a = tf.constant([1.0,2.0], name="a")
b = tf.constant([2.0,3.0], name="b")
# 定义两个向量a和b,被定义为常量(tf.constant)
result = a + b
# 将两个向量加起来
sess = tf.Session()
sess.run(result)
# 要输出相加的结果,不能简单地输出result,而需要先生成一个会话(session),并通过这个会话来计算结果

一般来说,只要第一句的import不报错,就说明TensorFlow安装成功了。

《TensorFlow实战Google深度学习框架》笔记——TensorFlow环境搭建的更多相关文章

  1. [Tensorflow实战Google深度学习框架]笔记4

    本系列为Tensorflow实战Google深度学习框架知识笔记,仅为博主看书过程中觉得较为重要的知识点,简单摘要下来,内容较为零散,请见谅. 2017-11-06 [第五章] MNIST数字识别问题 ...

  2. TensorFlow+实战Google深度学习框架学习笔记(5)----神经网络训练步骤

    一.TensorFlow实战Google深度学习框架学习 1.步骤: 1.定义神经网络的结构和前向传播的输出结果. 2.定义损失函数以及选择反向传播优化的算法. 3.生成会话(session)并且在训 ...

  3. 1 如何使用pb文件保存和恢复模型进行迁移学习(学习Tensorflow 实战google深度学习框架)

    学习过程是Tensorflow 实战google深度学习框架一书的第六章的迁移学习环节. 具体见我提出的问题:https://www.tensorflowers.cn/t/5314 参考https:/ ...

  4. 学习《TensorFlow实战Google深度学习框架 (第2版) 》中文PDF和代码

    TensorFlow是谷歌2015年开源的主流深度学习框架,目前已得到广泛应用.<TensorFlow:实战Google深度学习框架(第2版)>为TensorFlow入门参考书,帮助快速. ...

  5. TensorFlow实战Google深度学习框架-人工智能教程-自学人工智能的第二天-深度学习

    自学人工智能的第一天 "TensorFlow 是谷歌 2015 年开源的主流深度学习框架,目前已得到广泛应用.本书为 TensorFlow 入门参考书,旨在帮助读者以快速.有效的方式上手 T ...

  6. TensorFlow实战Google深度学习框架10-12章学习笔记

    目录 第10章 TensorFlow高层封装 第11章 TensorBoard可视化 第12章 TensorFlow计算加速 第10章 TensorFlow高层封装 目前比较流行的TensorFlow ...

  7. TensorFlow实战Google深度学习框架5-7章学习笔记

    目录 第5章 MNIST数字识别问题 第6章 图像识别与卷积神经网络 第7章 图像数据处理 第5章 MNIST数字识别问题 MNIST是一个非常有名的手写体数字识别数据集,在很多资料中,这个数据集都会 ...

  8. TensorFlow实战Google深度学习框架1-4章学习笔记

    目录 第1章 深度学习简介 第2章 TensorFlow环境搭建 第3章 TensorFlow入门 第4章 深层神经网络   第1章 深度学习简介 对于许多机器学习问题来说,特征提取不是一件简单的事情 ...

  9. 《TensorFlow实战Google深度学习框架》笔记——TensorFlow入门

    一.Tensorflow计算模型:计算图 计算图是Tensorflow中最基本的一个概念,Tensorflow中的所有计算都被被转化为计算图上的节点. Tensorflow是一个通过计算图的形式来描述 ...

  10. Tensorflow实战Google深度学习框架-总结-1

    第一章:深度学习简介   1⃣️应用有 1.计算机视觉 2.语音识别 3.自然语言处理 4.人机博弈   2⃣️深度学习,机器学习,AI 的关系

随机推荐

  1. FTP的vsftpd.conf含义

    # 设置为YES时vsftpd以独立运行方式启动,设置为NO时以xinetd方式启动 #(xinetd是管理守护进程的,将服务集中管理,可以减少大量服务的资源消耗) listen=YES # 同上,如 ...

  2. 如何用AU3调用自己用VC++写的dll函数

    这问题困扰我一个上午了,终于找到原因了,不敢藏私,和大家分享一下. 大家都知道,AU3下调用dll文件里的函数是很方便的,只要一个dllcall语句就可以了. 比如下面这个: $result = Dl ...

  3. react基础总结

    React的特点: 1.声明式: 可以声明式的在js中写html结构: 注意: react是用很像 js 的语言写标签; const jsx = <div className="app ...

  4. 全文索引-ElasticSearch

    ElasticSearch 官方文档 Elasticsearch是一个开源的搜索引擎,建立在一个全文搜索引擎库Apache Lucene™基础之上. Lucene可以说是当下最先进,高性能,全功能的搜 ...

  5. 学习SpringBoot零碎记录——配置应用URL名称

    学习SpringBoot配置应用名称,结果发现坑 到网上找 到 https://blog.csdn.net/qq_40087415/article/details/82497668 server: p ...

  6. scikitlearn库中调用k-近邻算法的操作步骤

    1.k近邻算法可以说是唯一一个没有训练过程的机器学习算法,它含有训练基础数据集,但是是一种没有模型的算法,为了将其和其他算法进行统一,我们把它的训练数据集当做它的模型本身.2.在scikitlearn ...

  7. Jmeter插件解释

    Jmeter插件解释 1.jp@gc - Actiive Threads Over Time:不同时间活动用户数量展示(图表)  2.jp@gc - AutoStop Listener :自动停止监听 ...

  8. Linux系统-----包管理器的演变

    每个电脑设备都使用某种形式的软件来执行其预定任务.在软件开发的早期,对产品进行了严格的bug和其他缺陷测试.在过去的十多年里,软件通过互联网发布,目的是通过应用新版本的软件来修复任何错误.在某些情况下 ...

  9. 第1节 IMPALA:4、5、linux磁盘的挂载和上传压缩包并解压

    第二步:开机之后进行磁盘挂载 分区,格式化,挂载新磁盘 磁盘挂载 df -lh fdisk -l 开始分区 fdisk /dev/sdb   这个命令执行后依次输 n  p  1  回车  回车  w ...

  10. C++面试常见问题——10派生类的构造与析构

    派生类的构造与析构 派生类的构造 派生时构造函数与析构函数不会被继承,需要重新定义派生类的构造函数与析构函数.派生类对象包含了基类对象的值,创建派生类时首先会调用基类的构造函数,若派生类中含有其它类对 ...