মডেল Export করা (SavedModel, HDF5)

Model Deployment এবং Production - টেন্সরফ্লো (TensorFlow) - Machine Learning

267

টেনসরফ্লো (TensorFlow) ব্যবহার করে মডেল Export করার জন্য দুটি জনপ্রিয় পদ্ধতি হল:

  1. SavedModel ফরম্যাট
  2. HDF5 (H5) ফরম্যাট

এগুলি আপনার মডেলটি সংরক্ষণ করতে এবং পরে পুনরায় ব্যবহার করতে সহায়ক। নিচে, দুটি ফরম্যাটে মডেল Export করার পদ্ধতি ব্যাখ্যা করা হলো।


১. SavedModel ফরম্যাটে মডেল Export করা

SavedModel হল টেনসরফ্লোর অফিশিয়াল মডেল ফরম্যাট এবং এটি মডেলটির স্থায়ী স্টোরেজ, পুনঃব্যবহার এবং পুনঃপ্রশিক্ষণ সহজতর করে। এটি বিশেষভাবে TensorFlow এর জন্য আদর্শ, কারণ এটি সমস্ত মডেল তথ্য (যেমন গ্রাফ, ওজন, এবং মেটাডেটা) একটি নির্দিষ্ট ডিরেক্টরিতে সংরক্ষণ করে।

SavedModel এ মডেল Export করার ধাপ:

  1. মডেল তৈরি এবং প্রশিক্ষণ: প্রথমে আপনার মডেলটি তৈরি এবং প্রশিক্ষণ করতে হবে। নিচে একটি সাধারণ মডেল তৈরি করা হয়েছে:

    import tensorflow as tf
    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import Dense
    
    # সিম্পল মডেল তৈরি
    model = Sequential([
        Dense(128, activation='relu', input_shape=(784,)),
        Dense(10, activation='softmax')
    ])
    
    # মডেল সংকলন
    model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
    
    # কিছু ডUMMY ডেটা দিয়ে ট্রেনিং
    x_train = tf.random.normal([100, 784])  # 100 টা 784 ডাইমেনশনের ডেটা
    y_train = tf.random.uniform([100], maxval=10, dtype=tf.int32)
    
    model.fit(x_train, y_train, epochs=5)
    
  2. SavedModel এ মডেল Export করা: এখন আমরা মডেলটি SavedModel ফরম্যাটে সংরক্ষণ করব:

    # SavedModel ফরম্যাটে মডেল সংরক্ষণ
    model.save('path_to_saved_model')  # ডিরেক্টরি এবং ফাইল নাম উল্লেখ করুন
    

    এই কমান্ডটি আপনার মডেলটি path_to_saved_model নামক ডিরেক্টরিতে সংরক্ষণ করবে। এর মধ্যে:

    • saved_model.pb (গ্রাফ এবং মেটাডেটা)
    • variables/ (মডেলের ভেরিয়েবল ওজন) থাকবে।
  3. SavedModel লোড করা: পরবর্তীতে আপনি SavedModel ফরম্যাট থেকে মডেল লোড করতে পারেন:

    new_model = tf.keras.models.load_model('path_to_saved_model')
    

২. HDF5 (H5) ফরম্যাটে মডেল Export করা

HDF5 হল একটি পোর্টেবল স্টোরেজ ফরম্যাট যা টেনসরফ্লো মডেলগুলোকে সংরক্ষণ করতে ব্যবহৃত হয়। এটি একটি একক ফাইল হিসাবে মডেল সংরক্ষণ করে এবং মূলত কেরাসের সাথে ব্যবহার করা হয়। HDF5 ফরম্যাট মডেলটি TensorFlow এবং Keras উভয়ের জন্য সমর্থিত।

HDF5 এ মডেল Export করার ধাপ:

  1. মডেল তৈরি এবং প্রশিক্ষণ: পূর্বের মতোই, প্রথমে মডেলটি তৈরি এবং প্রশিক্ষণ করতে হবে।
  2. HDF5 এ মডেল Export করা: মডেলটি HDF5 ফরম্যাটে সংরক্ষণ করার জন্য:

    # HDF5 ফরম্যাটে মডেল সংরক্ষণ
    model.save('path_to_model.h5')
    

    এই কমান্ডটি আপনার মডেলটি path_to_model.h5 নামে একটি একক ফাইলে সংরক্ষণ করবে।

  3. HDF5 ফরম্যাট থেকে মডেল লোড করা: পরবর্তীতে আপনি HDF5 ফরম্যাট থেকে মডেল লোড করতে পারেন:

    new_model = tf.keras.models.load_model('path_to_model.h5')
    

SavedModel এবং HDF5 এর মধ্যে পার্থক্য

  1. SavedModel:
    • TensorFlow এর নিজস্ব ফরম্যাট।
    • এটি মডেলের গ্রাফ, ভেরিয়েবল এবং মেটাডেটা সংরক্ষণ করে।
    • এটি TensorFlow Serving এবং অন্যান্য TensorFlow নির্ভর সিস্টেমে সহজে ব্যবহৃত হতে পারে।
    • SavedModel ফরম্যাটটি মডেল পুনরায় প্রশিক্ষণ, পরিবেশন এবং সংরক্ষণে আরও বেশি ব্যবহারিক।
  2. HDF5:
    • মূলত Keras এবং অন্যান্য মেশিন লার্নিং ফ্রেমওয়ার্কের জন্য জনপ্রিয়।
    • এটি একটি একক ফাইল হিসেবে মডেল সংরক্ষণ করে, যা আরও সহজভাবে ব্যবহৃত হয়।
    • এটি পোর্টেবল এবং সরল, তবে TensorFlow এর কিছু উন্নত বৈশিষ্ট্য (যেমন গ্রাফ এবং মেটাডেটা) সংরক্ষণ করে না।

সারাংশ

  • SavedModel ফরম্যাটটি TensorFlow এর জন্য বেশি উপযোগী, কারণ এটি সমস্ত মডেল তথ্য এবং মেটাডেটা সংরক্ষণ করে।
  • HDF5 ফরম্যাটটি সাধারণত Keras এবং অন্যান্য পরিবেশে ব্যবহৃত হয়, এবং এটি একক ফাইল হিসেবে মডেল সংরক্ষণ করে।

এটি আপনার প্রয়োজনে সঠিক ফরম্যাট নির্বাচন করতে সাহায্য করবে।

Content added By
Promotion

Are you sure to start over?

Loading...