美文网首页PocketSphinx语音识别
iOS-PocketSphinx——安装tensorflow的坎

iOS-PocketSphinx——安装tensorflow的坎

作者: Aaron升 | 来源:发表于2021-03-09 19:42 被阅读0次

    传送门

    iOS-PocketSphinx——安装PocketSphinx

    iOS-PocketSphinx——构建iOS使用的SDK

    iOS-PocketSphinx——建立语音词典

    iOS-PocketSphinx——建立语言模型

    iOS-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
    
    1. 又因

    -bash: pip: command not found

    安装pip

    $ wget https://bootstrap.pypa.io/get-pip.py
    
    1. 又因

    -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.
    

    下载速度太慢了,下载超过时间就会报错,真的心态崩了
    解决方案:

    1. 设置控制超时
      pip install --default-timeout=1000 “包的名称”

    2. 更换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
    

    相关文章

      网友评论

        本文标题:iOS-PocketSphinx——安装tensorflow的坎

        本文链接:https://www.haomeiwen.com/subject/gmfqqltx.html