Почему импорт cntk как C не работает в Google Colab - PullRequest
0 голосов
/ 05 декабря 2018

Я установил opencv версии 3.4.4, установил cntk, Импорт в Google Collab дает следующие результаты.

import cntk as C 

    /usr/local/lib/python3.6/dist-packages/cntk/cntk_py_init.py:56: UserWarning: Unsupported Linux distribution (ubuntu-18.04). CNTK supports Ubuntu 16.04 and above, only.
  warnings.warn('Unsupported Linux distribution (%s-%s). CNTK supports Ubuntu 16.04 and above, only.' % (__my_distro__, __my_distro_ver__))
/usr/local/lib/python3.6/dist-packages/cntk/cntk_py_init.py:102: UserWarning: 

################################################ Missing optional dependency (   OpenCV   ) ################################################
   CNTK may crash if the component that depends on those dependencies is loaded.
   Visit https://docs.microsoft.com/en-us/cognitive-toolkit/Setup-Linux-Python#optional-opencv for more information.
############################################################################################################################################

  warnings.warn(WARNING_MSG % ('   OpenCV   ', 'https://docs.microsoft.com/en-us/cognitive-toolkit/Setup-Linux-Python#optional-opencv'))
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
/usr/local/lib/python3.6/dist-packages/cntk/cntk_py.py in swig_import_helper()
     17         try:
---> 18             return importlib.import_module(mname)
     19         except ImportError:

/usr/lib/python3.6/importlib/__init__.py in import_module(name, package)
    125             level += 1
--> 126     return _bootstrap._gcd_import(name[level:], package, level)
    127 

/usr/lib/python3.6/importlib/_bootstrap.py in _gcd_import(name, package, level)

/usr/lib/python3.6/importlib/_bootstrap.py in _find_and_load(name, import_)

/usr/lib/python3.6/importlib/_bootstrap.py in _find_and_load_unlocked(name, import_)

ModuleNotFoundError: No module named 'cntk._cntk_py'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
<ipython-input-29-f8cc57397495> in <module>()
----> 1 import cntk as c

/usr/local/lib/python3.6/dist-packages/cntk/__init__.py in <module>()
     20 import numpy as np
     21 
---> 22 from . import cntk_py
     23 
     24 #

/usr/local/lib/python3.6/dist-packages/cntk/cntk_py.py in <module>()
     19         except ImportError:
     20             return importlib.import_module('_cntk_py')
---> 21     _cntk_py = swig_import_helper()
     22     del swig_import_helper
     23 elif _swig_python_version_info >= (2, 6, 0):

/usr/local/lib/python3.6/dist-packages/cntk/cntk_py.py in swig_import_helper()
     18             return importlib.import_module(mname)
     19         except ImportError:
---> 20             return importlib.import_module('_cntk_py')
     21     _cntk_py = swig_import_helper()
     22     del swig_import_helper

/usr/lib/python3.6/importlib/__init__.py in import_module(name, package)
    124                 break
    125             level += 1
--> 126     return _bootstrap._gcd_import(name[level:], package, level)
    127 
    128 

Я установил opencv.Версия cv2.Я хочу использовать сети RNN и LSTM для последовательных моделей в лаборатории Google Collab.Как исправить эту ошибку?

1 Ответ

0 голосов
/ 05 декабря 2018

В общем, когда вы обращаетесь за помощью к colab, лучше всего поделиться минимальным блокнотом, который воспроизводит проблему, поэтому людям, которые пытаются помочь вам, понятно, что именно вы сделали (например, «Я установил opencv version 3.4.4»информативным, поскольку вы видите точные команды, которые вы использовали, и любые сгенерированные ими выходные данные и т. д.).

По крайней мере, первое предупреждение, вероятно, не подходит для обхода, потому что виртуальные машины colab работают под управлением ubuntu: 18.04, но CNTKофициально не поддерживает ничего, кроме 16.04: «Обратите внимание, что официально поддерживается только Ubuntu 16.04».(из https://docs.microsoft.com/en-us/cognitive-toolkit/setup-linux-python?tabs=cntkpy26)

Я не знаком с CNTK или его приложениями, но, похоже, он успешно импортируется (хотя и с предупреждением) и успешно отображает интерфейс модуля:

!apt-get install --no-install-recommends openmpi-bin libopenmpi-dev libopencv-dev python3-opencv python-opencv && ln -sf /usr/lib/x86_64-linux-gnu/libmpi_cxx.so /usr/lib/x86_64-linux-gnu/libmpi_cxx.so.1 && ln -sf /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so.12 && ln -sf /usr/lib/x86_64-linux-gnu/libmpi.so /usr/lib/x86_64-linux-gnu/libmpi.so.12 && pip install cntk
import cntk as C
help(C)

(в ноутбуке на py3 / CPU Colab; к сожалению, на запуск первой строки уходит почти 2 метра, так что наберитесь терпения)

...