Python 从地面军事系统加载Tensorflow TPU中的tfdev.hub模型
我正在使用从colab TPU实例中的GCS加载tfhub.dev模型Python 从地面军事系统加载Tensorflow TPU中的tfdev.hub模型,python,tensorflow,google-cloud-storage,tpu,tensorflow-hub,Python,Tensorflow,Google Cloud Storage,Tpu,Tensorflow Hub,我正在使用从colab TPU实例中的GCS加载tfhub.dev模型 os.environ[“TFHUB\u CACHE\u DIR”]=“gs://BUCKETNAME/model CACHE DIR/” 但这需要花费大量的时间近15分钟,而且我最后也得到了警告 WARNING:absl:Deleting lock file gs://BUCKETNAME/model-cache-dir/a6cc63f37ce9d4a026a90b8d56f20a387de46a3f.lock due to
os.environ[“TFHUB\u CACHE\u DIR”]=“gs://BUCKETNAME/model CACHE DIR/”
但这需要花费大量的时间近15分钟,而且我最后也得到了警告
WARNING:absl:Deleting lock file gs://BUCKETNAME/model-cache-dir/a6cc63f37ce9d4a026a90b8d56f20a387de46a3f.lock due to inactivity.
知道为什么吗
我的猜测:tensorflow有某种锁,因此只有一个会话可以编辑或修改缓存文件,但在完成its操作后,hub.KerasLayer不会删除导致不活动的锁。这可能是由于通过运行colab的机器将文件从GCS复制到GCS的延迟造成的 对于TFHUB\u CACHE\u DIR,有一种使用默认/tmp位置的方法可能更快。尝试不显式设置TFHUB\u CACHED\u DIR,而是使用实验性的\u io\u device='/job:localhost'将LoadOptions传递给hub.KerasLayer,例如 load_options=tf.saved_model.LoadOptions(实验性_io_设备='/job:localhost')
layer=hub.KerasLayer(…,load\u options=load\u options)谢谢,这样做肯定更快更好。
WARNING:absl:Deleting lock file gs://BUCKETNAME/model-cache-dir/a6cc63f37ce9d4a026a90b8d56f20a387de46a3f.lock due to inactivity.