首页 > 解决方案 > 如何将缺失值传递给 feature_columns.bucketized_column()?

问题描述

我有一个Dataset名为my_col. my_col是一个正数,我想将其转换为 5 个桶的单热编码向量:

fc_my_col = fc.indicator_column(
  fc.bucketized_column(
    fc.numeric_column('my_col'), boundaries=[1000, 2000, 3000, 4000]))
feature_columns = [fc_my_col]
...

inp_layer = fc.feature_columns.input_layer(features_batch, feature_columns)

my_col当有值但某些记录没有值时,这很好用,在这种情况下,我希望所有 5 个存储桶指示器都为 0。

我可以为丢失的值填写默认值,但是由于bucketized_column将整个数字范围都存储在存储桶中,所以我总是会落入其中之一。

我可以“忽略”一个桶吗?告诉bucketized_column删除“越界”可能吗?

谢谢!

标签: tensorflow

解决方案


default_value如下图使用:

fc_my_col = fc.indicator_column(
  fc.bucketized_column(
    fc.numeric_column('my_col', default_value=0), boundaries=[1000, 2000, 3000, 4000]))
feature_columns = [fc_my_col]

推荐阅读