ASRT语音识别系统 文档

程序运行依赖环境
  • Last Edit by AI柠檬
  • 2020-06-06 16:42:11
## 程序运行依赖环境 由于本项目发布了有一段时间了,在软件的依赖包方面,已经与两年前有些不同了,这里介绍了本项目在程序运行的依赖环境上的一些问题,供参考。 [ASRT语音识别程序依赖环境说明](https://blog.ailemon.me/2019/10/17/asrt-program-dependent-enviromemt/) ### 依赖环境说明 #### 系统程序环境 * **操作系统** 理论上Windows、各个版本的Linux和MacOS系统均支持,但MacOS系统不可使用GPU来运行。 Linux下,支持Ubuntu、CentOS、Fedora系统,在其他系统中尚未做过兼容性测试。 * **Python3** 3.5 3.6 3.7均支持,3.4及更低版本均不支持,尚未在Python 3.8版本中做过兼容测试。 * **CUDA和cuDNN** 支持CUDA 8.0 9.0和10.0,cuDNN版本需要与所需的CUDA版本对应。对于最新的master分支版本,由于需要使用TensorFlow 1.13及以上版本,CUDA最低需要使用10.0版本。 可参考:[Linux系统下安装TensorFlow的GPU版本](https://blog.ailemon.me/2017/06/06/install-tensorflow-gpu-on-ubuntu-linux/) #### Python环境 主要是TensorFlow和Keras,其他依赖包暂时不存在问题。 * **TensorFlow** 支持1.13版本以上的全部版本,不再支持较低版本(虽然可以通过修改部分代码来还原回低版本,但是就不支持2.0以后的新版本了),具体实践中最高支持的版本取决于TensorFlow该版本对硬件指令的支持,以及所使用的Python3版本。 当使用Python 3.5时,最高支持到TF 1.4.x,当使用Python 3.6及以上时,支持TensorFlow所有后续版本,包括2.X。 另外,当安装了CPU版TensorFlow时,只能使用CPU运行,如果安装了GPU版TensorFlow,默认使用GPU运行,如果在os运行环境那里把使用的CUDA设备改为`-1`时,则可以使用CPU运行。 **很重要!不知道从什么时候和哪个版本起,默认安装的TensorFlow(即不指定是CPU还是GPU的时候)已经变为GPU版了,如果要安装CPU版TensorFlow最好指定安装`tensorflow-cpu`,要安装GPU就指定安装`tensorflow-gpu`,以防安装错版本。** * **Keras** 经过测试,当使用TF 1.4.0及以前版本的时候,Keras 仅支持到2.2.4,即从2.0到2.2.4之间的版本,2.3.0之后的版本会报错,需要手动设置安装较低版本。一般来说,同时使用最新版tensorflow和最新版keras时,即可正常工作。 * **MatPlotLib** 经过测试,当使用Python3.5的时候,matplotlib包不支持3.1.0及以上的版本,最多支持到3.0.3,新版本需要使用Python3.6或更新版本Python才可以使用。 * **其他依赖包** 还需要手动安装`wave`、`python_speech_features`和`requests`包。 ### pip list 样例 执行命令`$ pip list`即可查看。 最新master分支支持的依赖包配置(以CPU版TensorFlow为样例): ``` Package Version ---------------------- ------------------- absl-py 0.9.0 astor 0.8.1 certifi 2019.11.28 cycler 0.10.0 gast 0.2.2 google-pasta 0.2.0 grpcio 1.27.2 h5py 2.10.0 Keras 2.3.1 Keras-Applications 1.0.8 Keras-Preprocessing 1.1.0 kiwisolver 1.1.0 Markdown 3.2.1 matplotlib 3.2.0 numpy 1.18.1 opt-einsum 3.2.0 pip 20.0.2 protobuf 3.11.3 pyparsing 2.4.6 python-dateutil 2.8.1 python-speech-features 0.6 PyYAML 5.3 scipy 1.4.1 setuptools 46.0.0.post20200309 six 1.14.0 tensorboard 1.15.0 tensorflow 1.15.0 tensorflow-estimator 1.15.1 termcolor 1.1.0 Wave 0.0.2 Werkzeug 1.0.0 wheel 0.34.2 wrapt 1.12.1 ``` 以下依赖库为Release发布版v0.6.1及以前版本可用的依赖库版本(以GPU版TensorFlow位样例),经过实践检验,但配置的版本较低。最新的master分支上的改动已经不再支持这个配置了,请尽可能使用各个依赖包的最新版本。 ``` Package Version ---------------------- --------- absl-py 0.7.1 astor 0.7.1 bleach 1.5.0 certifi 2018.8.24 cycler 0.10.0 enum34 1.1.6 gast 0.2.2 grpcio 1.20.0 h5py 2.9.0 html5lib 0.9999999 Keras 2.2.4 Keras-Applications 1.0.7 Keras-Preprocessing 1.0.9 kiwisolver 1.0.1 Markdown 3.1 matplotlib 3.0.3 numpy 1.16.3 pip 10.0.1 protobuf 3.7.1 pyparsing 2.4.0 python-dateutil 2.8.0 python-speech-features 0.6 PyYAML 5.1 scipy 1.2.1 setuptools 39.1.0 six 1.12.0 tensorboard 1.6.0 tensorflow-gpu 1.4.0 tensorflow-tensorboard 0.4.0 termcolor 1.1.0 Wave 0.0.2 Werkzeug 0.15.2 wheel 0.31.1 ```