在使用很多模型的时候,都需要对输入的数据进行必要的特征工程处理。最典型的就是:one-hot处理,还有hash分桶等处理。为了方便处理这些特征,tensorflow提供了一些列的特征工程方法来方便使用.

公共的import

1
2
3
4
5
6
7
8
9
10
import tensorflow as tf
from tensorflow.python.estimator.inputs import numpy_io
import numpy as np
import collections
from tensorflow.python.framework import errors
from tensorflow.python.platform import test
from tensorflow.python.training import coordinator
from tensorflow import feature_column

from tensorflow.python.feature_column.feature_column import _LazyBuilder

numeric_column

1
2
3
4
5
6
7
numeric_column(
key,
   shape=(1,),
   default_value=None,
   dtype=tf.float32,
   normalizer_fn=None
)
  • key:特征的名字。也就是对应的列名称
  • shape:该key所对应的特征的shape. 默认是1,但是比如one-hot类型的,shape就不是1,而是实际的维度。总之,这里是key所对应的维度,不一定是1
  • default_value:如果不存在使用的默认值
  • normalizer_fn:对该特征下的所有数据进行转换。如果需要进行normalize,那么就是使用normalize的函数.这里不仅仅局限于normalize,也可以是任何的转换方法,比如取对数,取指数,这仅仅是一种变换方法

完整内容请阅读:https://blog.csdn.net/Gamer_gyt/article/details/85689840


打开微信扫一扫,关注微信公众号【搜索与推荐Wiki】