传送门
iOS-PocketSphinx——安装PocketSphinx
当前文章:iOS-PocketSphinx——安装tensorflow的坎坷过程
系统环境
Mac OS 10.15.7
安装原因
在使用PocketSphinx 语音识别学习过程中,需安装g2p-seq2seq
,提示得安装tensorflow
。
开始安装
用以下命令安装tensorflow:
$ pip install tensorflow
报如下错误:
$ pip install tensorflow
Traceback (most recent call last):
File "/usr/local/bin/pip", line 11, in <module>
load_entry_point('pip==21.0.1', 'console_scripts', 'pip')()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 489, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 2843, in load_entry_point
return ep.load()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 2434, in load
return self.resolve()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 2440, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/Library/Python/2.7/site-packages/pip-21.0.1-py2.7.egg/pip/_internal/cli/main.py", line 60
sys.stderr.write(f"ERROR: {exc}")
^
SyntaxError: invalid syntax
或报如下错误(python版本过高导致TensorFlow不能正确安装):
$ pip install tensorflow
ERROR: Could not find a version that satisfies the requirement tensorflow
ERROR: No matching distribution found for tensorflow
- 又因
-bash: pip: command not found
安装pip
$ wget https://bootstrap.pypa.io/get-pip.py
- 又因
-bash: wget: command not found
安装wget
$ brew install wget
安装python3.6版本
tensorflow还是安装失败,网上是这么说的:
如出现python3.7.0(3.5以上版本均有可能出现这个问题),python版本过高导致TensorFlow不能正确安装。此时需要安装低版本的python,如python3.5
由于Mac自带python2.7版本已启用,导致无法安装g2p-seq2seq的问题,之前已安装了最新python3.9.2,现在又因为python版本太高无法安装TensorFlow(MMP~)
从Python官网下载python3.6版本的kpg(千万别下3.5的,我采坑先用了3.5的还是无法安装tensorflow)
安装完后用以下命令:
$ pip3 install tensorflow
一直安装失败,各种报错:
raise ReadTimeoutError(self._pool, None, 'Read timed out.')
pip._vendor.requests.packages.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
You are using pip version 9.0.1, however version 21.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
我按提示先跑这个命令:
$ pip3 install --upgrade pip
也是一直报错,可能网络的原因,尝试了好多次,终于成功了
$ pip3 install --upgrade pip
Collecting pip
Cache entry deserialization failed, entry ignored
Downloading https://files.pythonhosted.org/packages/fe/ef/60d7ba03b5c442309ef42e7d69959f73aacccd0d86008362a681c4698e83/pip-21.0.1-py3-none-any.whl (1.5MB)
100% |████████████████████████████████| 1.5MB 38kB/s
Installing collected packages: pip
Found existing installation: pip 9.0.1
Uninstalling pip-9.0.1:
Successfully uninstalled pip-9.0.1
Successfully installed pip-21.0.1
接着再次安装tensorflow
$ pip3 install tensorflow
也是一直报错
$ pip3 install tensorflow
Collecting tensorflow
Downloading tensorflow-2.4.1-cp36-cp36m-macosx_10_11_x86_64.whl (173.9 MB)
| | 491 kB 3.5 kB/s eta 13:38:33
···中间省略···
self.gen.throw(type, value, traceback)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pip/_vendor/urllib3/response.py", line 443, in _error_catcher
raise ReadTimeoutError(self._pool, None, "Read timed out.")
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
下载速度太慢了,下载超过时间就会报错,真的心态崩了
解决方案:
-
设置控制超时
pip install --default-timeout=1000 “包的名称” -
更换pip下载源
由于国内的下载源下载速度十分缓慢,所以可以选择国内的几个比较好的镜像。
pip源
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/
豆瓣http://pypi.doubanio.com/simple/
清华大学https://pypi.tuna.tsinghua.edu.cn/simple/
临时使用时,在后面加上 -i 参数,指定pip源
$ pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple/ # 指定pip源为清华源
用镜像虽然下载速度飙升,但还是很容易超时,于是两个方案结合:
$ pip3 install --default-timeout=1000 tensorflow -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/
终于成功了
Installing collected packages: urllib3, pyasn1, idna, chardet, certifi, zipp, typing-extensions, six, setuptools, rsa, requests, pyasn1-modules, oauthlib, cachetools, requests-oauthlib, importlib-metadata, google-auth, wheel, werkzeug, tensorboard-plugin-wit, protobuf, numpy, markdown, grpcio, google-auth-oauthlib, absl-py, wrapt, termcolor, tensorflow-estimator, tensorboard, opt-einsum, keras-preprocessing, h5py, google-pasta, gast, flatbuffers, astunparse, tensorflow
Attempting uninstall: setuptools
Found existing installation: setuptools 28.8.0
Uninstalling setuptools-28.8.0:
Successfully uninstalled setuptools-28.8.0
Running setup.py install for wrapt ... done
Running setup.py install for termcolor ... done
Successfully installed absl-py-0.11.0 astunparse-1.6.3 cachetools-4.2.1 certifi-2020.12.5 chardet-4.0.0 flatbuffers-1.12 gast-0.3.3 google-auth-1.27.0 google-auth-oauthlib-0.4.2 google-pasta-0.2.0 grpcio-1.32.0 h5py-2.10.0 idna-2.10 importlib-metadata-3.7.0 keras-preprocessing-1.1.2 markdown-3.3.4 numpy-1.19.5 oauthlib-3.1.0 opt-einsum-3.3.0 protobuf-3.15.3 pyasn1-0.4.8 pyasn1-modules-0.2.8 requests-2.25.1 requests-oauthlib-1.3.0 rsa-4.7.2 setuptools-54.0.0 six-1.15.0 tensorboard-2.4.1 tensorboard-plugin-wit-1.8.0 tensorflow-2.4.1 tensorflow-estimator-2.4.0 termcolor-1.1.0 typing-extensions-3.7.4.3 urllib3-1.26.3 werkzeug-1.0.1 wheel-0.36.2 wrapt-1.12.1 zipp-3.4.0
网友评论