【TensorFlow】(五)tf.feature_column.categorical_column_with_vocabulary_list()函数的作用及用法

1.作用

A sequence of categorical terms where ids are set by hashing.(翻译:将一个类别序列,进行hash映射。根据单词的序列顺序,把单词根据index转换成one hot encoding)

输入:

key一个唯一的字符串识别输入功能。
vocabulary_file词汇文件名。或者词的set集合。
vocabulary_size在词汇中元素的个数。这必须是不大于长度vocabulary_file ,如果低于长,后来值将被忽略。如果没有,它被设置为长度vocabulary_file 。
num_oov_buckets非负整数,词典外桶的数量。外的词汇所有输入将在范围内分配的ID [vocabulary_size, vocabulary_size+num_oov_buckets)基于所述输入值的散列。正num_oov_buckets不能指定default_value 。
default_value整数ID值返回为外的词汇特征值,默认为-1 。这不能以积极的指定num_oov_buckets 。
dtype该类型的特征。只有字符串和整数类型的支持。

输出:

一个SequenceCategoricalColumn 。

2.例子

import tensorflow as tf
sess=tf.Session()

#特征数据
features = {
    'sex': ['male', 'male', 'female', 'female'],
}
#特征列
sex_column = tf.feature_column.categorical_column_with_vocabulary_list('sex', ['male', 'female'])
sex_column = tf.feature_column.indicator_column(sex_column)
#组合特征列
columns = [sex_column]
#输入层(数据,特征列)
inputs = tf.feature_column.input_layer(features, columns)
#初始化并运行
init = tf.global_variables_initializer()
sess.run(tf.tables_initializer())
sess.run(init)

v=sess.run(inputs)
print(v)

输出:

[[1. 0.]
 [1. 0.]
 [0. 1.]
 [0. 1.]]

 

参考:

1.官方文档:https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/feature_column/sequence_categorical_column_with_hash_bucket

2.知乎例子:https://zhuanlan.zhihu.com/p/73701872

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值