我们正在用TFX开发一个ML管道,其中包含了最常见的组件,如ExampleGen、Transform、Trainer等。必须馈送到DNN的示例具有不同的长度,因此我们决定使用Ragged Tensors来启用非固定维度的输入并避免填充。然而,Trainer组件似乎试图自动将输入转换为Tensor或类似的东西。
类型错误:无法将类型为'tensorflow. python. ops. ragged. raged_tensor. RaggedTensor'〉的对象转换为Tensor。内容:〉tf. RaggedTensor(值=Tensor("占位符:0",形状=(None,605),数据类型= float32),〉行拆分=Tensor("占位符_1:0",形状=(None,),数据类型= int64))。请考虑将元素强制转换为〉支持的类型。
该模型是用于结构化数据的 * Keras**Sequential * DNN,主要是 * Dense * 层。是否可以对TFX编写的管道使用不规则Tensor?Keras支持不规则Tensor吗?
谢谢大家!
顺便说一句,我们正在使用:
- TFX:版本1.4.0
- tensorflow :版本2.6.3
- Python语言:3.7.12
1条答案
按热度按时间0pizxfdo1#
粗糙Tensor本质上是一个包含可变数量元素的列表。将其放入DNN的问题是,您不知道将获得多少输入,因此无法提前创建执行该计算的图。粗糙Tensor不进入密集层是线性代数的限制,而不是张流。如果您分享更多细节以使您的问题可重现,我可以试着帮忙。