admin管理员组文章数量:1650787
1.作用
indicator_column
可用于包装任何categorical_column_*产生的向量,然后作为NN模型的input_layer的输入。
使用方式:
tf.feature_column.indicator_column(categorical_column)
输入:
categorical_column_*的输出。
输出:
可用于NN模型的input_layer的输入。
2.例子
import tensorflow as tf
sess=tf.Session()
#特征数据
features = {
'sex': ['male', 'male', 'female', 'female', 'da'],
}
#特征列
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)
这个例子中,将categorical_column_with_vocabulary_list的输出,直接作为input_layer的输入时,报错:
File "/Users/wang/anaconda3/envs/tf/lib/python2.7/site-packages/tensorflow/python/feature_column/feature_column.py", line 187, in _internal_input_layer
'embedding_column or indicator_column. Given: {}'.format(column))
'embedding_column or indicator_column. Given: {}'.format(column))
ValueError: Items of feature_columns must be a _DenseColumn. You can wrap a categorical column with an embedding_column or indicator_column. Given: VocabularyListCategoricalColumn(key='sex', vocabulary_list=('male', 'female'), dtype=tf.string, default_value=-1, num_oov_buckets=0)
意思是要将 a categorical column转为denseColumn,通过embedding或者indicator column方法可以实现。
取消对indicator_column()的注释后,能得到运行后的结果:性别的三种情况的one-hot如下所示。
[[1. 0.]
[1. 0.]
[0. 1.]
[0. 1.]
[0. 0.]]
参考
1.官方文档:https://www.tensorflow/versions/r1.15/api_docs/python/tf/feature_column/indicator_column
2.例子:https://zhuanlan.zhihu/p/73701872
本文标签: 函数作用TFtensorflowindicatorcolumn
版权声明:本文标题:【TensorFlow】(八)tf.feature_column.indicator_column()函数的作用及用法 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1729533962a1205173.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论