গ്രീকে 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
TensorFlow হল Google প্রদত্ত একটি মেশিন লার্নিং ফ্রেমওয়ার্ক। এটি একটি ওপেন-সোর্স ফ্রেমওয়ার্ক যা পাইথনের সাথে মিলে অ্যালগরিদম, গভীর শিক্ষার অ্যাপ্লিকেশন, এবং আরও অনেক কিছু ইমপ্লিমেন্ট করতে ব্যবহৃত হয়। এটি গবেষণা এবং প্রোডাকশন উদ্দেশ্যে ব্যবহৃত হয়।
Keras ফাংশনাল API সিকোয়েনশিয়াল API-র তুলনায় আরও নমনীয় মডেল তৈরি করতে সাহায্য করে। ফাংশনাল API নন-লিনিয়ার টপোলজি वाले মডেল, শেয়ার করা লেয়ার, এবং একাধিক ইনপুট-আউটপুট নিয়ে কাজ করতে পারে। একটি গভীর শিক্ষার মডেল সাধারণত একটি ডায়RECTেড এসাইক্লিক গ্রাফ (DAG) যাতে একাধিক লেয়ার থাকে। ফাংশনাল API লেয়ার গ্রাফ তৈরি করতে সাহায্য করে।
নিচের কোড চালাতে আমরা Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারের ওপর পাইথন কোড চালাতে সাহায্য করে এবং শূন্য কনফিগারেশন এবং GPU-তে ফ্রি অ্যাক্সেস দেয়। Colaboratory Jupyter Notebook-এর ওপর নির্মিত। Keras ব্যবহার করে বিল্ট সিকোয়েনশিয়াল মডেল কম্পাইল করার কোড স্নিপেট নিচে দেওয়া হলো:
উদাহরণ
print("মডেল কম্পাইল করা হচ্ছে")
model.compile(
optimizer=keras.optimizers.RMSprop(1e-3),
loss=[
keras.losses.BinaryCrossentropy(from_logits=True),
keras.losses.CategoricalCrossentropy(from_logits=True),
],
loss_weights=[1.0, 0.2],
)
কোড ক্রেডিট - https://www.tensorflow.org/guide/keras/functional
আউটপুট
মডেল কম্পাইল করা হচ্ছে
ব্যাখ্যা
বিল্ট মডেল 'compile' মেথড ব্যবহার করে কম্পাইল করা যায়।
কম্পাইলেশনের সময় প্রতিটি আউটপুটের জন্য আলাদা লস অ্যাসাইন করা যায়।
বিভিন্ন লসের জন্য ভিন্ন ওজনও অ্যাসাইন করা যায়, এভাবে মোট ট্রেনিং লস মডুলেট করা হয়।