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】

  • 相关阅读:
    基本数据类型相互转换及操作方法
    python以及计算机原理基础简要摘录
    Linux程序包管理
    rpm命令详解
    Linux程序包管理
    Linux任务计划
    压缩,解压缩工具及bash脚本编程
    btrfs文件系统管理与应用
    LVM应用
    CSS核心技术
  • 原文地址:https://www.cnblogs.com/wzdLY/p/10073194.html
Copyright © 2011-2022 走看看