用feature_column模块处理连续值特征列+模型拼接
参考链接:https://zhuanlan.zhihu.com/p/41663141
Feature columns 被用来把各种形式的原始数据转换为模型能够使用的格式
tensorflow 中文社区链接:
https://www.tensorflow.org/tutorials/structured_data/feature_columns
佳伟哥解决了我一个疑惑,我好菜哈哈:
我想一个特征就对应输入层的一个神经元,我在想score是一个特征,firstcate是一个特征,但是这两个特征通过feature_column方法之后不是映射成不同维度的向量了么?
其实,映射后的维度是凭借的啊,最后score映射成的5维和firstcate映射成的10维拼接成15维作为输入层,输入层的神经元也是15个
tf.data将pandas dataframe中的列映射到用于训练模型的特征。
返回一个字典,列名称映射成字典的键值,字典的value是对应列的数据组成的列表。
几种特征列:
数值列:实数特征,使用此列时,模型从dataframe中接收未更改的值。
age = feature_column.numeric_column("age")
分桶列:one-hot数值表示每行匹配的年龄范围
age_buckets = feature_column.bucketized_column(age, boundaries=[18, 25, 30, 35, 40, 45, 50, 55, 60, 65])
分类列:分类词汇列提供用one-hot向量表示字符串的方法
thal = feature_column.categorical_column_with_vocabulary_list(
'thal', ['fixed', 'normal', 'reversible'])
模型拼接:
比如有一些特征并不具备时序特性,所以对于LSTM来说是垃圾特征,因此先使用LSTM处理具备时序特性的特征,然后再将输出的结果(通过控制输出层的神经元个数控制输出维度)作为一个新的特征拼接剩余的不具备失序的特征,用全连接模型进行训练。

浙公网安备 33010602011771号