小编Kev*_*son的帖子

TensorFlow Universal Sentence Encoder Lite嵌入的范围有限吗?

从TensorFlow.js中的通用句子编码器开始,我注意到嵌入中数字的范围不是我所期望的。我原本期望[0-1]或[-1,1]之间有一些分配,但都看不到。

句子“猫很棒!” 这是一个可视化效果,其中每个维度都投影到[-0.5,0.5]的比例上:

在此处输入图片说明

这与“我不知道该句子的嵌入内容将是什么”(这是我尝试的前10个句子的模式相似)的可视化形式相同:

在此处输入图片说明

为了进行调试,我查看了演示的Colab笔记本中是否出现了同样的事情,看起来确实如此。这是我看到的那两个句子的嵌入范围的结果:

# NEW: added this, with different messages
messages = ["cats are great!", "sometimes models are confusing"]
values, indices, dense_shape = process_to_IDs_in_sparse_format(sp, messages)

with tf.Session() as session:
  session.run([tf.global_variables_initializer(), tf.tables_initializer()])
  message_embeddings = session.run(
      encodings,
      feed_dict={input_placeholder.values: values,
                input_placeholder.indices: indices,
                input_placeholder.dense_shape: dense_shape})

  for i, message_embedding in enumerate(np.array(message_embeddings).tolist()):
    print("Message: {}".format(messages[i]))
    print("Embedding size: {}".format(len(message_embedding)))
    message_embedding_snippet = ", ".join(
        (str(x) for x in message_embedding[:3]))
    print("Embedding: [{}, ...]\n".format(message_embedding_snippet))
    # NEW: added this, to show the range of the embedding …
Run Code Online (Sandbox Code Playgroud)

tensorflow word-embedding tensorflow.js tensorflowjs-converter

2
推荐指数
1
解决办法
260
查看次数