تكوين نموذج تم تقييمه

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

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، يرجى الخروج الوثائق هنا .