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

  本系列为Tensorflow实战Google深度学习框架知识笔记,仅为博主看书过程中觉得较为重要的知识点,简单摘要下来,内容较为零散,请各位指出,共同进步。

  2017-11-05

  [第一章]深度学习简介

  1. 机器学习的定义:“如果一个程序可以在任务T上,随着经验E的增加,效果P也可以随之增加,则称这个程序可以从经验中学习。”  ---Tom Michael Mitchell

  2. 人工智能的难点:解决数据表达和特征提取。

  3. 深度学习解决的核心问题之一就是自动得将简单的特征组合成更加复杂的特征,并使用这些组合特征解决问题。

  4. 传统的机器学习算法:输入-->人工特征提取-->权重学习-->预测结果

      深度学习算法:输入-->基础特征提取-->多层复杂特征提取-->权重学习-->预测结果

  [第二章]Tensorflow环境搭建

  1. Tensorflow的依赖包:Protocol Buffer和Bazel

  Protocol Buffer是谷歌开发的处理结构化数据的工具。当要将这些结构化的用户信息持久化或者进行网络传输时,就需要先将它们序列化。所谓序列化,是将结构化的数据变成数据流的格式,

  简单地说就是变为一个字符串。如何将结构化的数据序列化,并从序列化之后的数据流中还原出原来的结构化数据,统称为处理结构化数据。

  Protocol Buffer序列化之后得到的数据bauhinia可读的字符串,而是二进制流,其定义的数据格式文件一般保存在.proto文件中,每一个message代表了一类结构化的数据。

  Bazel是谷歌开源的自动化构建工具,谷歌内部绝大部分的应用都是通过它来编译的。Bazel对Python支持的编译方式只有三种:py_binary,py_library,py_test。其中py_binary将Python

  程序编译成可执行文件,py_test编译Python测试程序,py_library将Python程序编译成库函数供其他py_binary和py_test调用。

  2. Tensorflow的安装

  Tensorflow提供了多种不同方式的安装方式,主要有Docker安装,pip安装以及从源码安装,这里不做介绍。

  [注] 从源码安装方式:首先安装依赖的工具Bazel,然后下载最新的Tensorflow源代码(git clone https://github.com/tensorflow/tensorflow),源码下载后需要运行configure脚本来配置环境信息:

  (cd tensorflow,./configure),编译完成之后,最后通过pip安装(wheel文件)。