tensorflow交叉列功能,带有交叉项词汇表

tensorflow交叉列功能,带有交叉项词汇表,tensorflow,Tensorflow,如何制作一个带有交叉术语词汇表的交叉_列?假设我有两个分类列 animal [dog, cat, puma, other] food [pizza, salad, quinoa, other] 现在我想做一个交叉列,animal x food——但是我已经做了一些训练数据的频率计数(在导出训练tensorflow模型的tfrecords之前在spark中),并且puma x quinoa只出现过一次,而cat x quinoa从未出现过。所以我不想为它们生成特征,我认为我没有足够的训练示例来了

如何制作一个带有交叉术语词汇表的交叉_列?假设我有两个分类列

animal [dog, cat, puma, other]
food [pizza, salad, quinoa, other]
现在我想做一个交叉列,
animal x food
——但是我已经做了一些训练数据的频率计数(在导出训练tensorflow模型的
tfrecords
之前在spark中),并且
puma x quinoa
只出现过一次,而
cat x quinoa
从未出现过。所以我不想为它们生成特征,我认为我没有足够的训练示例来了解它们的权重应该是多少。我希望他们都能专注于“other x other”功能——我想我会学习一种功能的平均权重,它涵盖了所有不常用的术语

tf.feature\u column.crossed\u column
,我似乎无法做到这一点——你知道我将如何在
tensorflow
中做到这一点吗

或者,我应该不担心吗?如果我跨越了所有的特性,我会得到20个,但我认为只有18个是重要的-所以也许可以将哈希映射大小设置为18或更小,从而导致冲突?然后包括第一列,
animal
food
,这样模型就可以知道它在看什么了?这就是我从阅读文档中得到的方法。我喜欢它,因为它更简单,但我担心模型的准确性

我想我真正想要的是某种稀疏的表查找,而不是对交叉点进行散列——想象一下我有

column A - integer Ids, 1 to 10,000
column B - integer Ids, 1 to 10,000
column C - integer Ids, 1 to 10,000
我想为
A,B,C
之间的1万亿个可能的交叉点中只有100万个,其余的都将进入100万+1其他x其他x其他特征,我在tensorflow中该怎么做