多输出DNN

问题描述

我正在尝试为input_fneval_spec的{​​{1}}参数创建一个通用函数,以传递给train_spectf.estimator.EvalSpec(对于TFX管道)。当前input_fn如下所示:

tf.estimator.TrainSpec

但是,我收到以下错误消息(带有def input_Feeder_fn(filenames,tf_transform_graph,batch_size,target_keys): transformed_feature_spec = tf_transform_graph.transformed_feature_spec() dataset = tf.data.experimental.make_batched_features_dataset( filenames,transformed_feature_spec,reader=gzip_reader_fn ) transformed_features = tf.compat.v1.data.make_one_shot_iterator(dataset).get_next() transformed_targets = [v for k,v in transformed_features.items() if k in target_keys] return transformed_features,transformed_targets batch_size=64):

标签形状不匹配。预期标签尺寸= 2。收到64。建议的解决方案:如果您的分类器希望使用单一编码标签,请检查estimator的n_classes参数和/或标签的形状。否则,请检查标签的形状。

这似乎是由len(target_keys=2行引起的。如何正确格式化transformed_targets = ...?它不接受transformed_targets这样的字典,似乎必须是单个Tensor。 transformed_features对于训练位似乎也可以正常工作,因为它在开始评估过程之前不会失败。我希望我的模型输出2个数值,而我正在使用的模型是input_fn

P.S:使用TFMA版本0.22.1。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)