কম্পিউটার টিউটোরিয়াল

Python-এ Keras ব্যবহার করে প্রি-ট্রেইন্ড মডেল কীভাবে ব্যবহার করা যায়?


TensorFlow হল Google প্রদত্ত একটি মেশিন লার্নিং ফ্রেমওয়ার্ক। এটি একটি ওপেন-সোর্স ফ্রেমওয়ার্ক যা পাইথনের সাথে মিলে অ্যালগরিদম, গভীর শিক্ষার অ্যাপ্লিকেশন, এবং আরও অনেক কিছু ইমপ্লিমেন্ট করতে ব্যবহৃত হয়। এটি গবেষণা এবং প্রোডাকশন উদ্দেশ্যে ব্যবহৃত হয়।

গ്രീকে Keras মানে 'হর্ন'। Keras ONEIROS (Open ended Neuro-Electronic Intelligent Robot Operating System) প্রকল্পের গবেষণার অংশ হিসেবে বিকশিত হয়েছিল। Keras একটি গভীর শিক্ষার API, যা পাইথনে লেখা হয়েছে। এটি একটি উচ্চ-স্তরের API যার একটি উৎপাদনশীল ইন্টারফেস রয়েছে যা মেশিন লার্নিং সমস্যা সমাধান করতে সাহায্য করে।

এটি TensorFlow ফ্রেমওয়ার্কের উপরে চলে। এটি দ্রুত পরীক্ষা-নিরীক্ষা করতে সাহায্য করার জন্য তৈরি করা হয়েছিল। এটি মেশিন লার্নিং সমাধান বিকাশ এবং ক্যাপসুলেট করার জন্য প্রয়োজনীয় বিমূর্তি এবং বিল্ডিং ব্লক প্রদান করে।

এটি অত্যন্ত মাপযোগ্য (scalable) এবং ক্রস-প্ল্যাটফর্ম ক্ষমতা নিয়ে আসে। এর মানে Keras TPU বা GPU ক্লাস্টারগুলোর ওপর চালানো যায়। Keras মডেলগুলো ওয়েব ব্রাউজার বা মোবাইল ফোনেও রান করার জন্য এক্সপোর্ট করা যায়।

Keras ইতিমধ্যেই TensorFlow প্যাকেজের ভিতরে রয়েছে। নিচের কোড লাইন ব্যবহার করে এটিকে অ্যাক্সেস করা যায়:

import tensorflow
from tensorflow import keras

নিচের কোড চালাতে আমরা Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারের ওপর পাইথন কোড চালাতে সাহায্য করে এবং শূন্য কনফিগারেশন এবং GPU-তে ফ্রি অ্যাক্সেস দেয়। Colaboratory Jupyter Notebook-এর ওপর নির্মিত। কোড স্নিপেট নিচে দেওয়া হলো:

উদাহরণ

print("প্রি-ট্রেইন্ড ওজন সহ একটি কনভোল্যুশনাল মডেল লোড করা হচ্ছে")
base_model = keras.applications.Xception(
    weights='imagenet',
    include_top=False,
    pooling='avg')
print("এই মডেল ফ্রিজ করা হচ্ছে")
base_model.trainable = False
print("একটি সিকোয়েনশিয়াল মডেল ব্যবহার করে বেসের ওপর একটি ট্রেনেবল ক্লাসিফায়ার যোগ করা হচ্ছে")
model = keras.Sequential([
    base_model,
    layers.Dense(1000),
])
print("মডেল কম্পাইল করা হচ্ছে")
print("মডেল টেস্ট ডেটার সাথে ফিট করা হচ্ছে")
model.compile(...)
model.fit(...)

কোড ক্রেডিট - https://www.tensorflow.org/guide/keras/sequential_model

আউটপুট

প্রি-ট্রেইন্ড ওজন সহ একটি কনভোল্যুশনাল মডেল লোড করা হচ্ছে
Downloading data from https://storage.googleapis.com/tensorflow/kerasapplications/xception/xception_weights_tf_dim_ordering_tf_kernels_notop.h5
83689472/83683744 [==============================] - 1s 0us/step
এই মডেল ফ্রিজ করা হচ্ছে
একটি সিকোয়েনশিয়াল মডেল ব্যবহার করে বেসের ওপর একটি ট্রেনেবল ক্লাসিফায়ার যোগ করা হচ্ছে
মডেল কম্পাইল করা হচ্ছে
মডেল টেস্ট ডেটার সাথে ফিট করা হচ্ছে

ব্যাখ্যা

  • একটি সিকোয়েনশিয়াল মডেল স্ট্যাক, একটি প্রি-ট্রেইন্ড মডেলের সাহায্যে ক্লাসিফিকেশন লেয়ার ইনিশিয়ালাইজ করতে ব্যবহার করা যেতে পারে।

  • এই মডেল একবার বিল্ড হলে, এটি কম্পাইল করা হয়।

  • কম্পাইলেশন সম্পূর্ণ হলে, এই মডেলকে ট্রেনিং ডেটার সাথে ফিট করা যায়।


  1. Keras ব্যবহার করে পাইথনে ম্যানুয়ালি ওজন সংরক্ষণ করা

  2. Keras ব্যবহার করে পাইথনে নতুন কলব্যাক সহ মডেল ট্রেন করা

  3. Python প্রোগ্রামে Keras ব্যবহার করে মডেল প্লট কীভাবে করা যায়?

  4. Python-এ Keras ব্যবহার করে মডেল প্লট কীভাবে করা যায়?