到目前为止,我只使用了具有所有一种数据类型的输入张量的张量流,例如,所有float32。
我现在想要一个可以表示为行和列的表的输入:
column0 column1 column2 column3 ... columnN
person0 CATX FLOAT FLOAT CAT0
person1 CATY FLOAT FLOAT CAT1
person2 CATZ FLOAT FLOAT CAT2
.
.
.
personN CATAA FLOAT FLOAT CAT00
浮动和分类值的混合物,我想要一个热编码。 CAT是从受限制的值域(例如,机器部件的唯一标识符)中提取的字符串的占位符。所有分类栏都是这样的。 如何从这些混合输入中创建输入张量?是否有可能以这种方式进行热编码?
答案 0 :(得分:1)
我看到了这句话here:
与普通张量一样,RaggedTensor中的值必须全部具有 相同类型
不幸的是,我认为张量中不能有混合类型。
如果您尝试这样的操作:
tf.constant([1,'test'])
您收到错误: ValueError:无法将混合类型的Python序列转换为Tensor。
您应该找到一种解决方法,也许用字符串创建张量并在需要时进行强制转换。