簡體   English   中英

Google Colaboratory ImportError:libcublas.so.10.0:無法打開共享對象文件:運行時沒有這樣的文件或目錄

[英]Google Colaboratory ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory when running

我正在通過 Google Colaboratory 關注這篇關於 AI 農業的文章

https://medium.com/deepquestai/ai-in-agriculture-detecting-defects-in-apples-b246799b329c

並且在運行 python 文件時它會出錯

!python apple_detection_training.py

導入錯誤:libcublas.so.10.0:無法打開共享對象文件:運行時沒有這樣的文件或目錄

!pip install tensorflow-gpu==1.13.1
!pip install keras
!pip install opencv-python
!pip install imageai --upgrade
!unzip apple_detection_dataset.zip
!python apple_detection_training.py

使用 TensorFlow 后端。 回溯(最近一次調用):文件“/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow.py”,第 58 行,來自 tensorflow.python.pywrap_tensorflow_internal import * File "/usr /local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py”,第 28 行,在 _pywrap_tensorflow_internal = swig_import_helper() 文件“/usr/local/lib/python3.6/dist-packages/tensorflow/ python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description) File "/usr/lib/python3.6/imp.py", line 243, in load_module return load_dynamic(name, filename, file) File "/usr/lib/python3.6/imp.py", line 343, in load_dynamic return _load(spec) ImportError: libcublas.so.10.0: cannot open shared object file: No such文件或目錄 在處理上述異常的過程中,發生了另一個異常:回溯(最近一次調用最后一次):文件“apple_detection_training.py”,第 1 行,來自 imageai.Detection。 自定義導入DetectionModelTrainer文件“/usr/local/lib/python3.6/dist-packages/imageai/Detection/初始化的.py”,2號線,從imageai.Detection.keras_retinanet.models.resnet進口resnet50_retinanet文件“在/ usr / local/lib/python3.6/dist-packages/imageai/Detection/keras_retinanet/models/resnet.py", line 19, in import keras File "/usr/local/lib/python3.6/dist-packages/keras/ init .py”,第 3 行,來自 . 進口utils的文件“/usr/local/lib/python3.6/dist-packages/keras/utils/初始化的.py”,6號線,距。 import conv_utils File "/usr/local/lib/python3.6/dist-packages/keras/utils/conv_utils.py", line 9, in from .. import backend as K File "/usr/local/lib/python3. 6/dist-packages/keras/backend/ init .py", line 1, in from .load_backend import epsilon File "/usr/local/lib/python3.6/dist-packages/keras/backend/load_backend.py",第 89 行,從 .tensorflow_backend 導入 * 文件“/usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py”,第 5 行,導入 tensorflow 作為 tf 文件“/usr/local/ lib/python3.6/dist-packages/tensorflow/ init .py", line 24, in from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import File "/usr/local/lib/python3.6/dist-包/tensorflow/python/ init .py”,第 49 行,從 tensorflow.python 導入 pywrap_tensorflow 文件“/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow.py”,第 74 行,在 raise ImportError(msg) ImportError: Traceback (last last call last): File "/usr/local/lib/python3.6/dist-packages/tens orflow/python/pywrap_tensorflow.py", line 58, in from tensorflow.python.pywrap_tensorflow_internal import * File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28,在 _pywrap_tensorflow_internal = swig_import_helper() 文件“/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py”,第 24 行,在 swig_import_helper _mod = imp.load_module('_pywrap_tensorflow_internal'pathname' ,描述)文件“/usr/lib/python3.6/imp.py”,第243行,在load_module中 return load_dynamic(name, filename, file) 文件“/usr/lib/python3.6/imp.py”,行343、在load_dynamic return _load(spec) ImportError: libcublas.so.10.0: 無法打開共享對象文件: 沒有那個文件或目錄

無法加載本機 TensorFlow 運行時。

cublas 庫在 Colab 的 CPU 運行時中不可用,但在 GPU 運行時中可用。 您應該更改為 GPU 運行時( Runtime->Change Runtime Type並選擇Hardware Accelerator -> GPU ),然后再次嘗試您的腳本。

更新:我錯過了關於這部分在 google colab 上的內容。 請參閱@Jakevdp 答案。

我將把這個答案留在這里,以防其他人碰巧在他們自己的機器上遇到這個問題。

讓我們從你的錯誤開始。 libcublas.so.10.0需要 libcublas.so.10.0,但它要么未安裝,要么位於意外位置(您的 python 腳本無法訪問)。 cublas是 blas 線性代數例程的 NVIDIA cuda 實現,因此如果您沒有 NVIDIA 顯卡,則使用它沒有意義,您應該切換到非 GPU tensorflow。

否則,請確保您擁有此處列出的所有依賴項(NVIDIA 驅動程序、CUDNN、CUDA 工具包),並且您已將LD_LIBRARY_PATH設置為包含CUPTI位置(在參考中列為/usr/local/cuda/extras/CUPTI/lib64 . 有了所有這些部分,你應該能夠!pip install tensorflow-gpu ,並讓一切運行起來。

啟動並運行 GPU 加速可能會很痛苦,尤其是當您不習慣處理庫文件時。 如果你想使用Enthought的conda程序的安裝,而不是按照上面的指示,我相信他們船的有關cuda庫作為軟件包的一部分。

為了讓事情應該工作,你可以嘗試

!pip uninstall tensorflow-gpu
!pip install tensorflow
!pip install keras
!pip install opencv-python
!pip install imageai --upgrade
!unzip apple_detection_dataset.zip
!python apple_detection_training.py

僅在 CPU 上運行學習模型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM