কম্পিউটার

পাইথন প্রোগ্রাম ব্যবহার করে মডেলকে প্রশিক্ষণ দিতে কেরাস কীভাবে ব্যবহার করা যেতে পারে?


কেরাস ONEIROS (ওপেন-এন্ডেড নিউরো-ইলেক্ট্রনিক ইন্টেলিজেন্ট রোবট অপারেটিং সিস্টেম) প্রকল্পের গবেষণার অংশ হিসাবে তৈরি করা হয়েছিল। কেরাস একটি গভীর শিক্ষার API, যা পাইথনে লেখা। এটি একটি উচ্চ-স্তরের API যার একটি উত্পাদনশীল ইন্টারফেস রয়েছে যা মেশিন লার্নিং সমস্যা সমাধানে সহায়তা করে। এটি টেনসরফ্লো ফ্রেমওয়ার্কের উপরে চলে। এটি একটি দ্রুত পদ্ধতিতে পরীক্ষা সাহায্য করার জন্য নির্মিত হয়েছিল. এটি প্রয়োজনীয় বিমূর্ততা এবং বিল্ডিং ব্লকগুলি প্রদান করে যা মেশিন লার্নিং সমাধানগুলি বিকাশ এবং এনক্যাপসুলেট করার জন্য অপরিহার্য৷

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

কেরাস ইতিমধ্যেই টেনসরফ্লো প্যাকেজের মধ্যে উপস্থিত রয়েছে। এটি কোডের নীচের লাইন ব্যবহার করে অ্যাক্সেস করা যেতে পারে।

import tensorflow
from tensorflow import keras

কেরাস ফাংশনাল এপিআই এমন মডেল তৈরি করতে সাহায্য করে যা ক্রমিক এপিআই ব্যবহার করে তৈরি মডেলের তুলনায় আরও নমনীয়। কার্যকরী API নন-লিনিয়ার টপোলজি রয়েছে এমন মডেলগুলির সাথে কাজ করতে পারে, স্তরগুলি ভাগ করতে পারে এবং একাধিক ইনপুট এবং আউটপুটগুলির সাথে কাজ করতে পারে। একটি গভীর শিক্ষার মডেল সাধারণত একটি নির্দেশিত অ্যাসাইক্লিক গ্রাফ (DAG) যাতে একাধিক স্তর থাকে। কার্যকরী API স্তরগুলির গ্রাফ তৈরি করতে সাহায্য করে৷

আমরা নিচের কোডটি চালানোর জন্য Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারে Python কোড চালাতে সাহায্য করে এবং এর জন্য শূন্য কনফিগারেশন এবং GPUs (গ্রাফিক্যাল প্রসেসিং ইউনিট) তে বিনামূল্যে অ্যাক্সেস প্রয়োজন। জুপিটার নোটবুকের উপরে কোলাবোরেটরি তৈরি করা হয়েছে। মডেল −

কে প্রশিক্ষণ দেওয়ার জন্য কোড স্নিপেট নিচে দেওয়া হল

উদাহরণ

print("The model is being plotted")
keras.utils.plot_model(model, "my_resnet.png", show_shapes=True)
print("Split the data into training and test data")
(x_train, y_train), (x_test, y_test) = keras.datasets.cifar10.load_data()
print("Convert the type of data to float")
x_train = x_train.astype("float32") / 255.0
x_test = x_test.astype("float32") / 255.0
y_train = keras.utils.to_categorical(y_train, 10)
y_test = keras.utils.to_categorical(y_test, 10)
print("Compiling the model")
model.compile(
   optimizer=keras.optimizers.RMSprop(1e-3),
   loss=keras.losses.CategoricalCrossentropy(from_logits=True),
   metrics=["acc"],
)
model.fit(x_train[:2000], y_train[:2000], batch_size=64, epochs=2, validation_split=0.2)

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

আউটপুট

The model is being plotted
Split the data into training and test data
Downloading data from https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz
170500096/170498071 [==============================] - 2s 0us/step
Convert the type of data to float
Compiling the model
Epoch 1/2
25/25 [==============================] - 9s 332ms/step - loss: 2.3163 - acc: 0.1028 -
val_loss: 2.2962 - val_acc: 0.1175
Epoch 2/2
25/25 [==============================] - 12s 492ms/step - loss: 2.3155 - acc: 0.1175 -
val_loss: 2.2606 - val_acc: 0.1200
<tensorflow.python.keras.callbacks.History at 0x7f48d3ecfb00>

ব্যাখ্যা

  • ইনপুট ডেটা প্রশিক্ষণ এবং পরীক্ষার ডেটাসেটে বিভক্ত।

  • ডেটা টাইপ 'ফ্লোট' টাইপে রূপান্তরিত হয়।

  • মডেলটি 'কম্পাইল' পদ্ধতি ব্যবহার করে কম্পাইল করা হয়েছে।

  • 'ফিট' পদ্ধতিটি ট্রেনিং ডেটার সাথে মডেলটিকে মানানসই করতে ব্যবহৃত হয়।


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

  2. কিভাবে TensorFlow পাইথন ব্যবহার করে একটি রৈখিক মডেল প্রশিক্ষণের জন্য ব্যবহার করা যেতে পারে?

  3. পাইথন প্রোগ্রাম ব্যবহার করে মডেল প্লট করার জন্য কেরাস কীভাবে ব্যবহার করা যেতে পারে?

  4. পাইথন ব্যবহার করে মডেল প্লট করার জন্য কেরাস কীভাবে ব্যবহার করা যেতে পারে?