【问题标题】:ModuleNotFoundError: No module named 'tf_slim' despite installingModuleNotFoundError:尽管安装了模块,但没有名为“tf_slim”的模块
【发布时间】:2021-03-20 21:52:21
【问题描述】:

我想从deepvariant 运行call_variants.py。我在安装 cuda、tensorflow 等时苦苦挣扎了好几个小时……不幸的是,我遇到了一个问题,我不知道该怎么办。让我们从头开始:

conda create --name tf tensorflow
conda activate tf
python --version
Python 3.7.9
python3 -c 'import tensorflow as tf; print(tf.__version__)'
2.3.0

现在我尝试运行命令:

python ${h_dir}/deepvariant/binaries/DeepVariant/1.0.0/DeepVariant-1.0.0/call_variants.zip \
--outfile ${test_dir}/test.gz \
--examples ${ex_dir}/ex_test.gz --checkpoint $model

我明白了:

Traceback (most recent call last):
  File "/tmp/Bazel.runfiles_i55m5mpq/runfiles/com_google_deepvariant/deepvariant/call_variants.py", line 57, in <module>
    from deepvariant import modeling
  File "/tmp/Bazel.runfiles_i55m5mpq/runfiles/com_google_deepvariant/deepvariant/modeling.py", line 51, in <module>
    import tf_slim
ModuleNotFoundError: No module named 'tf_slim'

所以我当然决定安装它:

pip install tf_slim
Collecting tf_slim
  Using cached tf_slim-1.1.0-py2.py3-none-any.whl (352 kB)
Requirement already satisfied: absl-py>=0.2.2 in ./anaconda3/envs/tf/lib/python3.7/site-packages (from tf_slim) (0.11.0)
Requirement already satisfied: six in ./anaconda3/envs/tf/lib/python3.7/site-packages (from absl-py>=0.2.2->tf_slim) (1.15.0)
Installing collected packages: tf-slim
Successfully installed tf-slim-1.1.0

但是:

python3 -c 'import tf_slim as slim; print(slim.__version__)'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
AttributeError: module 'tf_slim' has no attribute '__version__'

运行命令后当然是ModuleNotFoundError: No module named 'tf_slim'。所以也许用 conda 安装?

conda install -c conda-forge tf-slim

但它根本没有帮助......我不知道下一步该做什么,期待任何想法!

编辑: 当我运行这样的事情时:

try:
    import tf_slim as slim
    print("module 'tf_slim' is installed")
except ModuleNotFoundError:
    print("module 'tf_slim' is not installed")

python test.py
module 'tf_slim' is installed

但是在命令之后,还是ModuleNotFoundError: No module named 'tf_slim'

¯_(ツ)_/¯

【问题讨论】:

    标签: python python-3.x tensorflow ubuntu bioinformatics


    【解决方案1】:

    好的,我想我明白了。如您所见,我使用 conda 为 tensorflow 创建环境。正如我所读到的,建议使用此过程,否则您可能会遇到类似ModuleNotFoundError: No module named 'tensorflow' 的内容,已在here 中进行了描述。那我做了什么? 我停用并删除了任何 conda 环境,我决定在没有它的情况下运行我的命令,就在终端中。首先,但是我用python3 运行命令,然后我发生了与ModuleNotFoundError: No module named 'tf_slim' 相同的错误,我用pip3 install tf_slim 安装了它,它工作了!接下来我运行 deepvariant 脚本 postprocess_variants.py 和 altair 模块有同样的问题,但我做了同样的事情,两个命令都有效!

    【讨论】:

      【解决方案2】:

      只需卸载tf_slim,然后再次安装tf_slim 包,就可以了。

      【讨论】: