首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tensorflow宽模型:如何使用one-hot功能?

tensorflow宽模型:如何使用one-hot功能?
EN

Stack Overflow用户
提问于 2016-09-17 21:49:52
回答 1查看 693关注 0票数 0

我在https://www.tensorflow.org/versions/r0.9/tutorials/wide_and_deep/index.html中读到过这个模型,文章中的特性有两种类型:分类和连续

在我的示例中,我有一列描述用户I,范围从0到10000000

我将此列视为分类并使用hash-bucket,但仅获得了大约0.50010的池AUC值

1)是否需要使用one-hot来处理该id列?

2)如果需要,如何实现?我找到了一个"tf.contrib.layers.one_hot_encoding“,但它不支持列名,所以不能在宽n深的演示中使用。

EN

回答 1

Stack Overflow用户

发布于 2016-09-17 22:13:57

不,您不需要对UserID列进行编码。每个值都是唯一的,不是分类的值。当类别少于1000个时,使用one-hot-encode是有意义的。

为了回答你关于如何使用one_hot_encoding的问题,假设你有一个标签列表(注意它们必须是整数):

代码语言:javascript
复制
import tensorflow as tf

with tf.Session() as sess:
    labels = [0, 1, 2, 3]
    labels_t = tf.constant(labels)
    num_classes = len(labels)

    one_hot = tf.contrib.layers.one_hot_encoding(labels_t, num_classes=num_classes)
    print(one_hot.eval())
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39547572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档