TensorFlow تحليل نموذج (TFMA) يمكن تصدير الرسم البياني تقييم نموذج لخاص SavedModel
دعا EvalSavedModel
. (لاحظ أن يستخدم الرسم البياني التقييم وليس الرسم البياني للتدريب أو الاستدلال.) و EvalSavedModel
يحتوي على معلومات إضافية تسمح TFMA لحساب مقاييس تقييم نفسها المحددة في النموذج بطريقة موزعة على كمية كبيرة من البيانات والمعرفة من قبل المستخدم شرائح.
تعديل نموذج موجود
لاستخدام النموذج القائم مع TFMA، أولا تعديل نموذج لتصدير EvalSavedModel
. ويتم ذلك عن طريق إضافة الدعوة إلى tfma.export.export_eval_savedmodel
ويشبه estimator.export_savedmodel
. فمثلا:
# Define, train and export your estimator as usual
estimator = tf.estimator.DNNClassifier(...)
estimator.train(...)
estimator.export_savedmodel(...)
# Also export the EvalSavedModel
tfma.export.export_eval_savedmodel(
estimator=estimator, export_dir_base=export_dir,
eval_input_receiver_fn=eval_input_receiver_fn)
eval_input_receiver_fn
يجب أن تكون محددة ومشابه ل serving_input_receiver_fn
ل estimator.export_savedmodel
. مثل serving_input_receiver_fn
، و eval_input_receiver_fn
تحدد وظيفة مثال مدخلات نائبا، بتوزيع ملامح من المثال، وترجع ميزات تحليل. يوزع ويعيد التسمية.
ويعرف المقتطف التالي مثال eval_input_receiver_fn
:
country = tf.feature_column.categorical_column_with_hash('country', 100)
language = tf.feature_column.categorical_column_with_hash('language', 100)
age = tf.feature_column.numeric_column('age')
label = tf.feature_column.numeric_column('label')
def eval_input_receiver_fn():
serialized_tf_example = tf.compat.v1.placeholder(
dtype=tf.string, shape=[None], name='input_example_placeholder')
# This *must* be a dictionary containing a single key 'examples', which
# points to the input placeholder.
receiver_tensors = {'examples': serialized_tf_example}
feature_spec = tf.feature_column.make_parse_example_spec(
[country, language, age, label])
features = tf.io.parse_example(serialized_tf_example, feature_spec)
return tfma.export.EvalInputReceiver(
features=features,
receiver_tensors=receiver_tensors,
labels=features['label'])
في هذا المثال يمكنك أن ترى ما يلي:
-
labels
يمكن أيضا أن يكون القاموس. مفيد لنموذج متعدد الرؤوس. - و
eval_input_receiver_fn
وظيفة، على الأرجح، أن تكون هي نفسها كserving_input_receiver_fn
وظيفة. لكن في بعض الحالات ، قد ترغب في تحديد ميزات إضافية للتقطيع. على سبيل المثال، كنت أعرض علىage_category
ميزة الذي يقسمage
ميزة في الدلاء متعددة. يمكنك بعد ذلك تقسيم هذه الميزة في TFMA للمساعدة في فهم كيفية اختلاف أداء نموذجك عبر الفئات العمرية المختلفة.
إضافة مقاييس ما بعد التصدير
مقاييس إضافية التي لم يتم تضمينها في نموذج يمكن aded باستخدام add_metrics_callbacks
. لمزيد من التفاصيل، انظر التعليمات بيثون ل run_model_analysis
.
أمثلة شاملة
حاول اسعة سبيل المثال نهاية إلى نهاية يضم TensorFlow تحويل لتجهيزها الميزة، TensorFlow المقدرون للتدريب، TensorFlow تحليل نموذج وJupyter للتقييم، و TensorFlow خدمة لخدمة.
إضافة مقياس تصدير منشور مخصص
إذا كنت ترغب في إضافة الخاصة ظيفة مخصصة للتصدير متري بك في TFMA، يرجى الخروج الوثائق هنا .