اذهب إلى المحتوى
  • 0

كيفية تحويل ملفات النموذج .meta و .data و. index إلى ملف Graph.pb واحد في تنسرفلو Tensorflow

عامر ابراهيم

السؤال

كيف يمكنني تحويل ملفات التدريب الخاصة بنموذجي إلى ملف graph.pb واحد لأتمكن من نقلها إلى تطبيق Android الخاص بي؟ علماً أن الملفات التي نتجت من تدريب النموذج الخاص بي هي:

model.ckpt-23125.meta
checkpoint
model.ckpt-23125.data-00000-of-00001
model.ckpt-23125.index

 

تم التعديل في بواسطة عامر ابراهيم
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

يمكنك القيام بعملية التحويل من خلال الكود التالي:

import tensorflow as tf
with tf.Session() as mysess:
    # تحميل الغراف
    saver = tf.train.import_meta_graph('model.ckpt-22480.meta') # meta نمرر مسار تواجد ملف 
    # تحويل الأوزان
    saver.restore(mysess,tf.train.latest_checkpoint('path/of/your/.meta/file'))
    # تجميد الغراف
    output_nodes = ['output:0']  # نحدد أسماء عقد الإخراج
    frozen_graph_def = tf.graph_util.convert_variables_to_constants(
        mysess,mysess.graph_def,
        output_nodes)
    # حفظه 
    with open('graph.pb', 'wb') as file:
      file.write(frozen_graph_def.SerializeToString())

 وفي حال لم تكن تعرف أسماء عقد الخرج، يمكنك استخدام الكود التالي لاستخلاصها:

output_nodes = [n.name for n in tf.get_default_graph().as_graph_def().node]
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

هناك حل أخر بالاضافة لحل على قد يكون مختصرا، جرب الكود التالي مع تغيير اسماء واماكن الملفات بملفاتك:

python freeze_graph.py --input_graph=/path/to/graph.pbtxt --input_checkpoint=/path/to/model.ckpt-22480 --input_binary=false --output_graph=/path/to/frozen_graph.pb --output_node_names="ما تريد اخراجه من ال graph كمثال InceptionV3/Predictions/Reshape_1 for Inception V3 "

كذلك يمكنك استخدام الكود التالي ببساطة مع تغيير اسماء الملفات كذلك بما يناشبك:

python -u /tfPath/models/object_detection/export_inference_graph.py \
  --input_type=image_tensor \
  --pipeline_config_path=/your/config/path/ssd_mobilenet_v1_pets.config \
  --trained_checkpoint_prefix=/your/checkpoint/path/model.ckpt-50000 \
  --output_directory=/output/path

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...