Tensorflow হল একটি মেশিন লার্নিং ফ্রেমওয়ার্ক যা Google প্রদান করে। এটি একটি ওপেন সোর্স ফ্রেমওয়ার্ক যা পাইথনের সাথে অ্যালগরিদম, গভীর শিক্ষার অ্যাপ্লিকেশন এবং আরও অনেক কিছু বাস্তবায়নের জন্য ব্যবহৃত হয়। এটি গবেষণা এবং উত্পাদন উদ্দেশ্যে ব্যবহৃত হয়। এটিতে অপ্টিমাইজেশান কৌশল রয়েছে যা জটিল গাণিতিক ক্রিয়াকলাপগুলি দ্রুত সম্পাদন করতে সহায়তা করে৷
'টেনসরফ্লো' প্যাকেজটি নীচের কোড-
লাইনটি ব্যবহার করে উইন্ডোজে ইনস্টল করা যেতে পারেpip install tensorflow
ONEIROS (ওপেন এন্ডেড নিউরো-ইলেক্ট্রনিক ইন্টেলিজেন্ট রোবট অপারেটিং সিস্টেম) প্রকল্পের গবেষণার অংশ হিসেবে কেরাস তৈরি করা হয়েছিল। কেরাস একটি গভীর শিক্ষার API, যা পাইথনে লেখা। এটি একটি উচ্চ-স্তরের API যার একটি উত্পাদনশীল ইন্টারফেস রয়েছে যা মেশিন লার্নিং সমস্যা সমাধানে সহায়তা করে৷
এটি অত্যন্ত স্কেলযোগ্য, এবং ক্রস প্ল্যাটফর্ম ক্ষমতার সাথে আসে। এর মানে কেরাস টিপিইউ বা জিপিইউ এর ক্লাস্টারে চালানো যেতে পারে। কেরাস মডেলগুলি একটি ওয়েব ব্রাউজার বা মোবাইল ফোনেও চালানোর জন্য রপ্তানি করা যেতে পারে৷
কেরাস ইতিমধ্যেই টেনসরফ্লো প্যাকেজের মধ্যে উপস্থিত রয়েছে। এটি কোডের নীচের লাইন ব্যবহার করে অ্যাক্সেস করা যেতে পারে।
import tensorflow from tensorflow import keras
কেরাস ফাংশনাল এপিআই এমন মডেল তৈরি করতে সাহায্য করে যা ক্রমিক এপিআই ব্যবহার করে তৈরি মডেলের তুলনায় আরও নমনীয়। কার্যকরী API নন-লিনিয়ার টপোলজি রয়েছে এমন মডেলগুলির সাথে কাজ করতে পারে, স্তরগুলি ভাগ করতে পারে এবং একাধিক ইনপুট এবং আউটপুটগুলির সাথে কাজ করতে পারে। একটি গভীর শিক্ষার মডেল সাধারণত একটি নির্দেশিত অ্যাসাইক্লিক গ্রাফ (DAG) যাতে একাধিক স্তর থাকে। কার্যকরী API স্তরগুলির গ্রাফ তৈরি করতে সহায়তা করে৷
আমরা নিচের কোডটি চালানোর জন্য Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারে Python কোড চালাতে সাহায্য করে এবং এর জন্য শূন্য কনফিগারেশন এবং GPUs (গ্রাফিক্যাল প্রসেসিং ইউনিট) তে বিনামূল্যে অ্যাক্সেস প্রয়োজন। জুপিটার নোটবুকের উপরে কোলাবোরেটরি তৈরি করা হয়েছে। নিম্নলিখিত কোড স্নিপেট -
উদাহরণ
print("Load the MNIST data") print("Split data into training and test data") (x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data() print("Reshape the data for better training") x_train = x_train.reshape(60000, 784).astype("float32") / 255 x_test = x_test.reshape(10000, 784).astype("float32") / 255 print("Compile the model") model.compile( loss=keras.losses.SparseCategoricalCrossentropy(from_logits=True), optimizer=keras.optimizers.RMSprop(), metrics=["accuracy"], ) print("Fit the data to the model") history = model.fit(x_train, y_train, batch_size=64, epochs=2, validation_split=0.2) test_scores = model.evaluate(x_test, y_test, verbose=2) print("The loss associated with model:", test_scores[0]) print("The accuracy of the model:", test_scores[1])
কোড ক্রেডিট - https://www.tensorflow.org/guide/keras/functional
আউটপুট
Load the MNIST data Split data into training and test data Reshape the data for better training Compile the model Fit the data to the model Epoch 1/2 750/750 [==============================] - 3s 3ms/step - loss: 0.5768 - accuracy: 0.8394 - val_loss: 0.2015 - val_accuracy: 0.9405 Epoch 2/2 750/750 [==============================] - 2s 3ms/step - loss: 0.1720 - accuracy: 0.9495 - val_loss: 0.1462 - val_accuracy: 0.9580 313/313 - 0s - loss: 0.1433 - accuracy: 0.9584 The loss associated with model: 0.14328785240650177 The accuracy of the model: 0.9584000110626221
ব্যাখ্যা
-
ইনপুট ডেটা (MNIST ডেটা) পরিবেশে লোড হয়৷
৷ -
ডেটা প্রশিক্ষণ এবং পরীক্ষার সেটে বিভক্ত।
-
ডেটাকে পুনরায় আকার দেওয়া হয়েছে যাতে এর নির্ভুলতা আরও ভাল হয়৷
৷ -
মডেলটি তৈরি এবং কম্পাইল করা হয়েছে৷
৷ -
এটি তখন প্রশিক্ষণের ডেটার সাথে মানানসই।
-
প্রশিক্ষণের সাথে সম্পর্কিত নির্ভুলতা এবং ক্ষতি কনসোলে প্রদর্শিত হয়।