Как создать Tensorflow serve_input_receiver_fn с несколькими функциями?

Как упоминалось в принятом ответе

import os
dir = os.path.dirname(__file__)
filename = os.path.join(dir, '/relative/path/to/file/you/want')

, я просто хочу добавить, что

последняя строка не может начинаться с обратного слэша, infact no string should включая обратную косую черту

blockquote>

Это должно быть что-то вроде

import os
dir = os.path.dirname(__file__)
filename = os.path.join(dir, 'relative','path','to','file','you','want')

. В некоторых случаях принятый ответ может вводить в заблуждение, обратитесь к this link для деталей

1
задан Geoff Craig 22 January 2019 в 18:08
поделиться

1 ответ

features в ServingInputReceiver передается непосредственно в вашу модельную функцию. То, что вы хотите, это receive_tensors или receive_tensor_alternatives, то есть второй и третий аргумент конструктора ServingInputReceiver.

Например, вы можете сделать это

serialized_tf_example = tf.placeholder(dtype=tf.string, shape=[default_batch_size], name='tf_example')

receiver_tensors = { 'examples': serialized_tf_example}

raw_features = tf.parse_example(serialized_tf_example, feature_spec)

fn_norm1 = lamba FEATURE1: normalize_input_data('FEATURE1', FEATURE1)
fn_norm2 = lamba FEATURE2: normalize_input_data('FEATURE2', FEATURE2)
features['FEATURE1'] = tf.map_fn(fn_norm1, raw_features['FEATURE1'], dtype=tf.float32)
features['FEATURE2'] = tf.map_fn(fn_norm2, raw_features['FEATURE2'], dtype=tf.float32)
return tf.estimator.export.ServingInputReceiver(
      features=features,
      receiver_tensors=receiver_tensors,
      receiver_tensors_alternatives={'SOME_KEY': raw_features})

Если вам никогда не нужно питать сеть прототипом Example, вы можете полностью его пропустить.

raw_features = {'FEATURE1': tf.placeholder(...), 'FEATURE2': tf.placeholder(...)}
features = preprepocess(raw_features)
return tf.estimator.export.ServingInputReceiver(features, {'SOME_OTHER_KEY': raw_features})
0
ответ дан Siyuan Ren 22 January 2019 в 18:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: