该tensorflow_hub库的维护者取得了它的每一个方便用户下载和使用预先训练tensorflow模块,如:
import tensorflow_hub as hub
embed = hub.Module("https://tfhub.dev/google/universal-sentence-encoder/1")
Run Code Online (Sandbox Code Playgroud)
但从sys.stderr它看起来就像是将模块本地保存到临时目录,即
INFO:tensorflow:使用/ var/folders/j6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules来缓存模块.INFO:tensorflow:使用Embeddings_en/sharded_0从检查点b'/ var/folders/j6/xczfl75n3sbfwpg4190gpb44vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3/variables/variables'初始化变量模块/ Embeddings_en/sharded_0:0 INFO:tensorflow:初始化变量模块/ Embeddings_en /来自检查点b'/ var/folders/j6/xczfl75n3sbfwpg4190gpb44vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3/variables/variables'的sharded_1:0 with Embeddings_en/sharded_1 INFO:tensorflow:从检查点b'/ var /初始化变量模块/ Embeddings_en/sharded_10:0文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 /变量/变量与Embeddings_en/sharded_10 INFO:tensorflow:初始化变量模块/ Embeddings_en/sharded_11:从检查点b 0,'/变种/文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3/variables/variables'with Embeddings_en/sharded_11 INFO:tensorflow:Initialize varia ble module/Embeddings_en/sharded_12:0来自检查点b'/ var/folders/j6/xczfl75n3sbfwpg4190gpb4vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3/variables/variables'with Embeddings_en/sharded_12 INFO:tensorflow:从检查点初始化变量模块/ Embeddings_en/sharded_13:0 b '/变种/文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 /变量/变量' 与Embeddings_en/sharded_13 INFO:tensorflow:初始化变量模块/ Embeddings_en/sharded_14:从检查点b 0,'/变种/文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 /变量/变量与Embeddings_en/sharded_14 INFO:tensorflow:初始化变量模块/ Embeddings_en/sharded_15:从检查点b 0,'/变种/文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 /变量/变量'with Embeddings_en/sharded_15 INFO:tensorflow:初始化变量模块/ Embeddings_en/sha 来自检查点b'/ var/folders/j6/xczfl75n3sbfwpg4190gpb44vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3/variables/variables'的rded_16:0 with Embeddings_en/sharded_16 INFO:tensorflow:从检查点b'/ var /初始化变量模块/ Embeddings_en/sharded_2:0文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 /变量/变量与Embeddings_en/sharded_2 INFO:tensorflow:初始化变量模块/ Embeddings_en/sharded_3:从检查点b 0,'/变种/文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 /变量/变量与Embeddings_en/sharded_3 INFO:tensorflow:从检查点b 0,:初始化变量模块/ Embeddings_en/sharded_4 '/变种/文件夹/ J6/xczfl75n3sbfwpg4190gpb104vnlxt/T/tfhub_modules/c6f5954ffa065cdb2f2e604e740e8838bf21a2d3 …
python deep-learning tensorflow pre-trained-model tensorflow-hub
我正在尝试使用文本分类模型.因此我想使用tensorflow-hub提供的text_embedding_column函数.不幸的是我收到运行时错误
import tensorflow_hub as hub
embedded_text_feature_column = hub.text_embedding_column(
key="sentence",
module_spec="https://tfhub.dev/google/nnlm-en-dim128/1")
Run Code Online (Sandbox Code Playgroud)
我得到的错误如下:
RuntimeError Traceback (most recent call last)
<ipython-input-18-df9239a27166> in <module>()
2 embedded_text_feature_column = hub.text_embedding_column(
3 key="sentence",
----> 4 module_spec="https://tfhub.dev/google/nnlm-en-dim128/1")
/anaconda3/lib/python3.6/site-packages/tensorflow_hub/feature_column.py in text_embedding_column(key, module_spec, trainable)
72 ValueError: if module_spec is not suitable for use in this feature column.
73
---> 74 module_spec = module.as_module_spec(module_spec)
75 _check_module_is_text_embedding(module_spec)
76 return _TextEmbeddingColumn(key=key, module_spec=module_spec,
/anaconda3/lib/python3.6/site-packages/tensorflow_hub/module.py in as_module_spec(spec)
31 return spec
32 elif isinstance(spec, six.string_types):
---> 33 return load_module_spec(spec)
34 else:
35 raise ValueError("Unknown module spec …Run Code Online (Sandbox Code Playgroud) 编辑:我尝试打开急切执行,看看是否可以准确识别问题发生的位置,并且急切执行停止了错误并使其成功运行。不知道为什么会出现这种情况,不幸的是这对我没有帮助。
原始帖子:我对 Tensorflow 还很陌生,我试图了解如何在 tf.keras 模型中使用 Tensorflow-Hub 模块。我的目标是创建一个电子邮件分类系统来在我的组织中路由电子邮件。
我已经使用通用句子编码器模块预处理的数据构建了一个模型。这是一个 RNN 并且工作得非常有效,但我感兴趣的是我是否可以提高我的准确性。
现在我想将该模块直接合并到我的神经网络中,以便我可以训练它。
我在 Jupyter Notebook 中运行它。
我构建了一个简单的非 RNN 模型来尝试进行 Tensorflow-Hub 模块训练。
print("Version: ", tf.__version__)
print("Eager mode: ", tf.executing_eagerly())
print("Hub version: ", hub.__version__)
print("GPU is", "available" if tf.test.is_gpu_available() else "NOT AVAILABLE")
hub_module = "https://tfhub.dev/google/tf2-preview/nnlm-en-dim128/1"
model = models.Sequential()
model.add(hub.KerasLayer(hub_module, input_shape=[], dtype=tf.string, trainable=True))
model.add(layers.Dense(128, activation='relu'))
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(3, activation='softmax'))
model.build()
model.summary()
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy', 'mae'])
#Fake data
train_data = [["Hello how are you"], ["Goodbye my friend"], ["Happiness is a warm slice …Run Code Online (Sandbox Code Playgroud) 我使用的版本是 tensorflow-gpu 版本 2.1.0,从 pip 安装。
import tensorflow as tf
import tensorflow_hub as hub
tf.keras.backend.set_learning_phase(True)
module_url = "https://tfhub.dev/tensorflow/efficientnet/lite0/classification/2"
module2 = tf.keras.Sequential([
hub.KerasLayer(module_url, trainable=False, input_shape=(224,224,3))])
output1 = module2(tf.ones(shape=(1,224,224,3)))
print(module2.summary())
Run Code Online (Sandbox Code Playgroud)
当我设置时trainable = True,操作会报错。那么,我不能在 tf2.1 版本上重新训练它吗?
我按照 TensorFlow 网站中给出的说明安装 tensorflow_hub 并将其安装在 conda 环境中。
$ pip install "tensorflow>=2.0.0"
$ pip install --upgrade tensorflow-hub
Run Code Online (Sandbox Code Playgroud)
我在 anaconda prompt 中运行了上面的命令
但我仍然ModuleNotFoundError对“tensorflow_hub”感到满意。
任何帮助在这里表示赞赏。提前致谢
python tensorflow tensorflow-hub tensorflow2.0 modulenotfounderror
TensorFlow Hub是预训练模型的存储库。Model Garden(Model Zoo)也保留了 SOTA 模型,并提供了下载和利用其模型(如 TfHub)的设施,它们都是由 TensorFlow 创建的。
为什么要Tensorflow为模型存储库制定两个概念?
我们什么时候应该使用 TfHub 检索知名模型,什么时候应该使用 Model Garden 下载模型?它们之间有什么区别?
我想使用我自己的图像对在线提供的预训练 GAN 进行微调。例如,在 ImageNet 上训练的 BigGAN 可以生成逼真的图像。但是,我不想在 ImageNet 中生成图像类。我想生成我自己的图像集的人工图像。如何微调预训练模型?它与微调其他神经网络(如 CNN 图像分类模型)相同吗?仅替换/重新训练最后几层就足够了吗?如果我能在 Tensorflow/Keras 代码中看到一些示例,那就太好了。非常感谢!
deep-learning tensorflow tensorflow-hub transfer-learning generative-adversarial-network
尝试使用Tensorflow Hub使用以下代码导入一些模型:
import tensorflow as tf
import tensorflow_hub as hub
elmo_model = hub.Module('https://tfhub.dev/google/elmo/2', trainable=True)
Run Code Online (Sandbox Code Playgroud)
使我的笔记本卡住了。卡住之前出现的唯一日志行是:
INFO:tensorflow:使用/ tmp / tfhub_modules缓存模块。
如何取消粘贴并允许我从Tensorflow Hub导入模型?
我尝试将通用句子编码器模型部署到 aws Sagemaker 端点,但出现错误 raise ValueError('no SavedModel bundles found!')
我在下面显示了我的代码,我觉得我的路径之一不正确
import tensorflow as tf
import tensorflow_hub as hub
import numpy as np
from sagemaker import get_execution_role
from sagemaker.tensorflow.serving import Model
def tfhub_to_savedmodel(model_name,uri):
tfhub_uri = uri
model_path = 'encoder_model/' + model_name
with tf.Session(graph=tf.Graph()) as sess:
module = hub.Module(tfhub_uri)
input_params = module.get_input_info_dict()
dtype = input_params['text'].dtype
shape = input_params['text'].get_shape()
# define the model inputs
inputs = {'text': tf.placeholder(dtype, shape, 'text')}
# define the model outputs
# we want the class ids and probabilities …Run Code Online (Sandbox Code Playgroud) amazon-web-services tensorflow amazon-sagemaker tensorflow-hub
我正在研究一种迁移学习方法,并且在使用 MobileNetV2keras.applications和 TensorFlow Hub 上的 MobileNetV2 时得到了截然不同的结果。这对我来说似乎很奇怪,因为两个版本都声称这里和这里从同一检查点mobilenet_v2_1.0_224提取它们的权重。这就是重现差异的方法,您可以在此处找到 Colab Notebook :
!pip install tensorflow-gpu==2.1.0
import tensorflow as tf
import numpy as np
import tensorflow_hub as hub
from tensorflow.keras.applications.mobilenet_v2 import MobileNetV2
def create_model_keras():
image_input = tf.keras.Input(shape=(224, 224, 3))
out = MobileNetV2(input_shape=(224, 224, 3),
include_top=True)(image_input)
model = tf.keras.models.Model(inputs=image_input, outputs=out)
model.compile(optimizer='adam', loss=["categorical_crossentropy"])
return model
def create_model_tf():
image_input = tf.keras.Input(shape=(224, 224 ,3))
out = hub.KerasLayer("https://tfhub.dev/google/tf2-preview/mobilenet_v2/classification/4",
input_shape=(224, 224, 3))(image_input)
model = tf.keras.models.Model(inputs=image_input, outputs=out)
model.compile(optimizer='adam', loss=["categorical_crossentropy"])
return model …Run Code Online (Sandbox Code Playgroud) 我运行了这个代码:
import tensorflow_hub as hub
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-3-5c017171c13e> in <module>
----> 1 import tensorflow_hub as hub
~\anaconda3\envs\Python 3-7\lib\site-packages\tensorflow_hub\__init__.py in <module>
86
87
---> 88 from tensorflow_hub.estimator import LatestModuleExporter
89 from tensorflow_hub.estimator import register_module_for_export
90 from tensorflow_hub.feature_column import image_embedding_column
~\anaconda3\envs\Python 3-7\lib\site-packages\tensorflow_hub\estimator.py in <module>
60
61
---> 62 class LatestModuleExporter(tf.compat.v1.estimator.Exporter):
63 """Regularly exports registered modules into timestamped directories.
64
~\AppData\Roaming\Python\Python37\site-packages\tensorflow\python\util\lazy_loader.py in __getattr__(self, item)
60
61 def __getattr__(self, item):
---> 62 module = self._load()
63 return getattr(module, …Run Code Online (Sandbox Code Playgroud) tensorflow-hub ×11
tensorflow ×10
python ×5
keras ×2
generative-adversarial-network ×1
mobilenet ×1
numpy ×1