Я хочу использовать библиотеку MaskRCNN для материального участка: https://github.com/matterport/Mask_RCNN. При этом используется реализация тензорного потока (v1.x) MaskRCNN, где на моей машине есть модернизированный Tensorflow (v2.0). Поэтому я пытаюсь сначала понизить версию TF и проверить, доступен ли графический процессор или нет, используя tensorflow.test.is_gpu_available()
, но это возвращает False. Вот мое ядро только для проверки этого: https://www.kaggle.com/kaushal2896/tensorflow-version-test
Однако, когда я делаю тот же процесс в Google Colab, он работает нормально. Вот моя записная книжка Colab: https://colab.research.google.com/drive/1ecBB8Zzc4H0EXCZJ79dbjObgdXpHAT1H#scrollTo = PSTHIweDZzvS & line = 1 & uniqifier = 1
Я также сослался на этот ответ: Tensorflow 2.0r c не обнаруживает графические процессоры, Как упоминалось в шаге, чтобы проверить, может ли TensorFlow получить доступ к графическому процессору или нет, он возвращает False, но в Colab он возвращает True.
Я также попытался запустить следующий фрагмент кода как для ядра Kaggle, так и для ноутбука Google Colab:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
Возвращает следующий вывод в ядре Kaggle:
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 16110875363616681113
, name: "/device:XLA_CPU:0"
device_type: "XLA_CPU"
memory_limit: 17179869184
locality {
}
incarnation: 4887609401225506649
physical_device_desc: "device: XLA_CPU device"
, name: "/device:XLA_GPU:0"
device_type: "XLA_GPU"
memory_limit: 17179869184
locality {
}
incarnation: 15252770185025289462
physical_device_desc: "device: XLA_GPU device"
]
Тот же код возвращает следующее в colab:
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 9801969460581293108
, name: "/device:XLA_CPU:0"
device_type: "XLA_CPU"
memory_limit: 17179869184
locality {
}
incarnation: 12457376035032350067
physical_device_desc: "device: XLA_CPU device"
, name: "/device:XLA_GPU:0"
device_type: "XLA_GPU"
memory_limit: 17179869184
locality {
}
incarnation: 13999524601515353878
physical_device_desc: "device: XLA_GPU device"
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 15956161332
locality {
bus_id: 1
links {
}
}
incarnation: 6402597460949153193
physical_device_desc: "device: 0, name: Tesla P100-PCIE-16GB, pci bus id: 0000:00:04.0, compute capability: 6.0"
]
Но я не уверен, что это значит. Что мне здесь не хватает? Почему для одной и той же версии TensorFlow существует другое поведение?