При загрузке весов моделей замки недоступны - PullRequest
0 голосов
/ 24 февраля 2020

tf версия: 2.1.0 python: 3.7.4

Я запускаю этот код.

import tensorflow as tf
init_W = 'init_weights/mobilenet_v2_weights_tf_dim_ordering_tf_kernels_1.0_96.h5'
base_model = tf.keras.applications.MobileNetV2(weights=None)
base_model.compile(optimizer='adam', loss='mse')
base_model.load_weights(init_W)

Я получаю следующую ошибку. Я проверил трижды, и файл h5 находится в правильном местоположении

2020-02-24 12:09:54.711127: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1
2020-02-24 12:09:54.748638: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1555] Found device 0 with properties: 
pciBusID: 0000:86:00.0 name: Tesla K80 computeCapability: 3.7
coreClock: 0.8235GHz coreCount: 13 deviceMemorySize: 11.17GiB deviceMemoryBandwidth: 223.96GiB/s
2020-02-24 12:09:54.749073: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.1
2020-02-24 12:09:54.751335: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10
2020-02-24 12:09:54.753158: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10
2020-02-24 12:09:54.753667: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10
2020-02-24 12:09:54.755890: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10
2020-02-24 12:09:54.757136: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10
2020-02-24 12:09:54.761647: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2020-02-24 12:09:54.764202: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1697] Adding visible gpu devices: 0
2020-02-24 12:09:54.764536: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX
2020-02-24 12:09:54.792112: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency: 2499980000 Hz
2020-02-24 12:09:54.795387: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x561d544c7aa0 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-02-24 12:09:54.795418: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
2020-02-24 12:09:54.797328: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1555] Found device 0 with properties: 
pciBusID: 0000:86:00.0 name: Tesla K80 computeCapability: 3.7
coreClock: 0.8235GHz coreCount: 13 deviceMemorySize: 11.17GiB deviceMemoryBandwidth: 223.96GiB/s
2020-02-24 12:09:54.797378: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.1
2020-02-24 12:09:54.797411: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10
2020-02-24 12:09:54.797441: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10
2020-02-24 12:09:54.797471: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10
2020-02-24 12:09:54.797502: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10
2020-02-24 12:09:54.797533: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10
2020-02-24 12:09:54.797563: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2020-02-24 12:09:54.801259: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1697] Adding visible gpu devices: 0
2020-02-24 12:09:54.801323: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.1
2020-02-24 12:09:54.872753: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1096] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-02-24 12:09:54.872786: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1102]      0 
2020-02-24 12:09:54.872794: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1115] 0:   N 
2020-02-24 12:09:54.876531: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1241] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 10805 MB memory) -> physical GPU (device: 0, name: Tesla K80, pci bus id: 0000:86:00.0, compute capability: 3.7)
2020-02-24 12:09:54.878654: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x561d57187b20 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices:
2020-02-24 12:09:54.878671: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Tesla K80, Compute Capability 3.7
Traceback (most recent call last):
  File "test_loading_weights.py", line 5, in <module>
    base_model.load_weights(init_W)
  File "/home/rothman/siam/lib/python3.7/site-packages/tensorflow_core/python/keras/engine/training.py", line 234, in load_weights
    return super(Model, self).load_weights(filepath, by_name, skip_mismatch)
  File "/home/rothman/siam/lib/python3.7/site-packages/tensorflow_core/python/keras/engine/network.py", line 1215, in load_weights
    with h5py.File(filepath, 'r') as f:
  File "/home/rothman/siam/lib/python3.7/site-packages/h5py/_hl/files.py", line 408, in __init__
    swmr=swmr)
  File "/home/rothman/siam/lib/python3.7/site-packages/h5py/_hl/files.py", line 173, in make_fid
    fid = h5f.open(name, flags, fapl=fapl)
  File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
  File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
  File "h5py/h5f.pyx", line 88, in h5py.h5f.open
OSError: Unable to open file (unable to lock file, errno = 37, error message = 'No locks available')

У кого-нибудь есть какие-либо советы о том, как решить проблему? Я попытался найти его сам, но не повезло. Я также пытался использовать блокировки многопроцессорной / многопоточности при загрузке весов, но это не помогло.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...