本文共 2089 字,大约阅读时间需要 6 分钟。
本节书摘来异步社区《TensorFlow技术解析与实战》一书中的第2章,第2.5节,作者:李嘉璇,更多章节内容可以访问云栖社区“异步社区”公众号查看。
TensorFlow在运行中需要做一些矩阵运算,时常会用到一些第三方模块,此外,在处理音频、自然语言时需要也要用到一些模块,建议一并安装好。本书“实战篇”中会大量用到这些扩展。
下面我们就来简单介绍TensorFlow依赖的一些模块。
numpy是用来存储和处理大型矩阵的科学计算包,比Python自身的嵌套列表结构(nested list structure)要高效的多。它包括:
一个强大的N维数组对象Array;
比较成熟的函数库;用于整合C/C++和Fortran代码的工具包;实用的线性代数、傅里叶变换和随机数生成函数。numpy模块的安装方法如下:pip install numpy --upgrade```####2.5.2 matplotlibmatplotlib是Python最著名的绘图库,它提供了一整套和MATLAB相似的命令API,十分适合交互式地进行制图。用它可以画出美丽的线图、散点图、等高线图、条形图、柱状图、3D图等,而且还可以方便地将它作为绘图控件,嵌入GUI应用程序中。在后面的实例中,需要可视化地展现训练结果或者中间的特征映射,就很方便。matplotlib模块的安装方法如下:
pip install matplotlib --upgrade`
jupyter notebook是Ipython的升级版,能够在浏览器中创建和共享代码、方程、说明文档。界面相当友好,功能也很强大。其实,jupyter实际就是一个基于Tornado框架的Web应用,使用MQ进行消息管理。
jupyter模块的安装方法如下:
pip install jupyter --upgrade打开jupyter notebook:jupyter notebook```出现如下显示:
[W 06:02:13.434 NotebookApp] Widgets are unavailable.Please install widgetsnbextension or ipywidgets 4.0
[I 06:02:13.454 NotebookApp] Serving notebooks from local directory: /Users/baidu/ Downloads/tensorflow-0.12/tensorflow[I 06:02:13.454 NotebookApp] 0 active kernels[I 06:02:13.454 NotebookApp] The Jupyter Notebook is running at: [I 06:02:13.454 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).`
浏览器自动打开,启动成功,界面如图 2-11 所示。其中,在 tensorflow-1.1.0/tensorflow/ examples/udacity下有许多扩展名为.ipynb的示例文件,读者可以自行在浏览器中打开和学习。 scikit-image[7]有一组图像处理的算法,可以使过滤一张图片变得很简单,非常适合用于对图像的预处理。
scikit-image模块的安装方法如下:
pip install scikit-image --upgrade```####2.5.5 librosalibrosa是用Python进行音频特征提取的第三方库,有很多方式可以提取音频特征。librosa模块的安装如下:
pip install librosa --upgrade`
nltk[8]模块中包含着大量的语料库,可以很方便地完成很多自然语言处理的任务,包括分词、词性标注、命名实体识别(NER)及句法分析。
nltk的安装方法:
pip install nltk --upgrade```安装完成后,需要导入nltk工具包,下载nltk数据源,如下:
import nltk
nltk.download()`
Keras是第一个被添加到TensorFlow核心中的高级别框架,成为Tensorflow的默认API。第7章中会详细讲解Keras的使用。
keras模块的安装方法如下:
pip install keras --upgrade```####2.5.8 tflearnTFLearn是另一个支持TensorFlow的第三方框架,第7章中会详细讲解TFLearn的使用。tflearn模块的安装方法如下:
pip install git+`
转载地址:http://gbesa.baihongyu.com/