我有一个 keras
使用 tensorflow
的文本分类模型后端。它目前假设输入是一个 numpy 整数数组。
我想修改它,以便我可以对原始文本进行训练和预测。从我收集到的信息来看,这涉及到使用 tf.transform
将字符串张量转换为整数张量。
我已经使用 tf.transform
完成了此操作但现在我不确定如何将此预处理步骤作为第一层/步骤添加到我的模型中。需要明确的是,我的输入数据如下所示:[{"review":"movie is great},
{"review":"awful film"}]
输出是:[{"review_out": array([-1, -1, 1, 0, 2])},
{"review_out": array([-1, -1, -1, 3, 4])]
执行此操作的函数称为 preprocess
.所以我只想包括运行 preprocess
作为我的 DAG 的第一步。
我该怎么做?
作为引用,这很重要,因为我想在 ML Engine 上进行实时预测。
最佳答案
如果您使用 tf.data.Dataset()
,存在一个 tf.data.Dataset().map(map_func)
允许您申请的功能 map_func
到数据集的所有元素。这可用于添加您的预处理步骤。
https://www.tensorflow.org/api_docs/python/tf/data/Dataset
例如:dataset = tf.data.Dataset.from_tensor_slices((x, y))
dataset = dataset.map(preprocess)
model.fit(dataset, ....)
使用 tf.data.Dataset()
还有其他好处在一个 numpy 数组上也是如此。
关于python - tf.transform : add preprocessing to Keras model?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52897995/