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

পাইথন ব্যবহার করে TensorFlow-এর মাধ্যমে ইলিয়াড ডেটাসেটকে কীভাবে প্রশিক্ষণ দেওয়া যায়?

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

TensorFlow ইনস্টলেশন

Windows-এ 'tensorflow' প্যাকেজটি নিচের কোড লাইন ব্যবহার করে ইনস্টল করা যেতে পারে:

pip install tensorflow

টেনসর এবং ডেটা ফ্লো গ্রাফ

টেনসর হল TensorFlow-এ ব্যবহৃত একটি ডেটা স্ট্রাকচার। এটি একটি ফ্লো ডায়াগ্রামে প্রান্তাগুলিকে সংযুক্ত করতে সাহায্য করে। এই ফ্লো ডায়াগ্রামটিকে 'ডেটা ফ্লো গ্রাফ' নামে ডাকা হয়। টেনসরهای অন্য কিছু নয়, বরং বহু-মাত্রিক অ্যারে বা একটি তালিকা।

ইলিয়াড ডেটাসেট সম্পর্কে

আমরা ইলিয়াড ডেটাসেট ব্যবহার করব, যাতে উইলিয়াম কাওপার, এডوارد (ডারবির আর্ল), এবং স্যামুয়েল বटलারের তিনটি অনুবাদের কাজের টেক্সট ডেটা রয়েছে। মডেলটি একটি একক টেক্সট লাইন দেওয়া হলে অনুবাদকারীকে সনাক্ত করার জন্য প্রশিক্ষিত হয়। ব্যবহৃত টেক্সট ফাইলগুলি প্রি-প্রসেস করা হয়েছে। এতে ডকুমেন্ট হেডার এবং ফুটার, লাইন নম্বর এবং অধ্যায়ের শিরোনাম সরানো অন্তর্ভুক্ত।

Google Colaboratory ব্যবহার

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

উদাহরণ

নিচে কোড স্নিপেট দেওয়া হল:

vocab_size += 2 
print("Configure the dataset for better performance")
train_data = configure_dataset(train_data)
validation_data = configure_dataset(validation_data)
print("Train the model")
model = create_model(vocab_size=vocab_size, num_labels=3)
model.compile(
    optimizer='adam',
    loss=losses.SparseCategoricalCrossentropy(from_logits=True),
    metrics=['accuracy'])
print("Fit the training data to the model")
history = model.fit(train_data, validation_data=validation_data, epochs=3)
print("Finding the accuracy and loss associated with training")
loss, accuracy = model.evaluate(validation_data)
print("The loss is : ", loss)
print("The accuracy is : {:2.2%}".format(accuracy))

কোড ক্রেডিট - https://www.tensorflow.org/tutorials/load_data/text

আউটপুট

Configure the dataset for better performance
Train the model
Fit the training data to the model
Epoch 1/3
697/697 [==============================] - 35s 17ms/step - loss: 0.6891 - accuracy: 0.6736 - val_loss: 0.3718 - val_accuracy: 0.8404
Epoch 2/3
697/697 [==============================] - 8s 11ms/step - loss: 0.3149 - accuracy: 0.8713 - val_loss: 0.3621 - val_accuracy: 0.8422
Epoch 3/3
697/697 [==============================] - 8s 11ms/step - loss: 0.2165 - accuracy: 0.9162 - val_loss: 0.4002 - val_accuracy: 0.8404
Finding the accuracy and loss associated with training
79/79 [==============================] - 1s 2ms/step - loss: 0.4002 - accuracy: 0.8404
The loss is : 0.40021833777427673
The accuracy is : 84.04%

ব্যাখ্যা

  • মডেলটি প্রি-প্রসেসড, ভেক্টরাইজড ডেটাসেটে প্রশিক্ষিত হয়েছে।

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

  • 'evaluate' মেথড ব্যবহার করে মডেলের সাথে সম্পর্কিত লস এবং অ্যাকুরেসি মূল্যায়ন করা হয়।

  • এই ডেটা কনসোলে প্রদর্শিত হয়।

  1. টেনসরফ্লো (TensorFlow) কীভাবে পাইথনে মডেল ট্রেন (train) করতে ব্যবহৃত হয়?

  2. টেনসরফ্লো (TensorFlow) কীভাবে পাইথনে ডেটা ভিজুয়ালাইজ (visualize) করতে ব্যবহৃত হয়?

  3. টেনসরফ্লোতে ফ্লাওয়ার ডেটাসেট ভিজ্যুয়ালাইজ করা

  4. TensorFlow ব্যবহার করে পাইথনে লিনিয়ার মডেল ট্রেন করা