zoukankan      html  css  js  c++  java
  • tf.nn.embedding_lookup

    tf.nn.embedding_lookup(params, ids, partition_strategy=’mod’, name=None, validate_indices=True, max_norm=None)

    参数说明:

    params: 表示完整的嵌入张量,或者除了第一维度之外具有相同形状的P个张量的列表,表示经分割的嵌入张量。

    ids: 一个类型为int32或int64的Tensor,包含要在params中查找的id。每个元素将代表要在params中取的每个元素的第0维的逻辑index,这个逻辑index是由partition_strategy来指定的。

    partition_strategy: 指定分区策略的字符串,如果len(params)> 1,则相关,当前支持“div”和“mod”, 默认为“mod”。

    name: 操作名称(可选)。

    validate_indices: 是否验证收集索引。

    max_norm: 如果不是None,嵌入值将被l2归一化为max_norm的值。

    例子:

    在词向量训练中

    with tf.device("/cpu:0"):
        embedding = tf.get_variable("embedding",[vocab_size,size])
        inputs = tf.nn.embedding_lookup(embedding,input_data)

    上面的代码定义的embedding表示有vocab_size(int)个词,每个词被嵌入的纬度为size(int),最终得到的inputs就是输入向量input_data映射好的词向量。例如input_data的形状为【batch_size,ndim】,那么inputs的形状为【batch_size,ndim,size】

  • 相关阅读:
    Eclipse快捷键大全
    OOA/OOD/OOP
    SQL Server 存储过程(转)
    PowerDesigner 生成数据库方法(转)
    CDM和PDM的区别?(转)
    委托存在的理由
    提问回顾
    对软件工程常见概念的一些见解
    Gulp插件笔记
    Pascal-S代码注释
  • 原文地址:https://www.cnblogs.com/wzdLY/p/10073194.html
Copyright © 2011-2022 走看看