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

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

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

টেনসরের প্রধান বৈশিষ্ট্য

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

টেনসরها তিনটি প্রধান বৈশিষ্ট্য দ্বারা সনাক্ত করা যায়:

  • র‍্যাঙ্ক (Rank) - এটি টেনসরের মাত্রিকতা সম্পর্কে বলে। এটি টেনসরের ক্রম বা সংজ্ঞায়িত টেনসরে মাত্রার সংখ্যা হিসাবে বোঝা যেতে পারে।

  • টাইপ (Type) - এটি টেনসরের উপাদানগুলির সাথে যুক্ত ডেটা টাইপ সম্পর্কে বলে। এটি এক-মাত্রিক, দুই-মাত্রিক বা n-মাত্রিক টেনসর হতে পারে।

  • শেপ (Shape) - এটি সারি এবং কলামের সংখ্যা একসাথে।

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

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

Google Colaboratory ব্যবহার

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

উদাহরণ

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

def labeler(example, index):
    return example, tf.cast(index, tf.int64)
print("An empty list has been created")
labeled_data_sets = []
print("Iterate through the file names and create a dataset from text file using 'TextLineDataset' method")
for i, file_name in enumerate(FILE_NAMES):
    lines_dataset = tf.data.TextLineDataset(str(parent_dir/file_name))
    labeled_dataset = lines_dataset.map(lambda ex: labeler(ex, i))
    labeled_data_sets.append(labeled_dataset)

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

আউটপুট

An empty list has been created
Iterate through the file names and create a dataset from text file using 'TextLineDataset' method

ব্যাখ্যা

  • 'TextLineDataset' ব্যবহার করা হয়, যা একটি টেক্সট ফাইল থেকে tf.data.Dataset তৈরি করে।

  • প্রতিটি উদাহরণ মূল ফাইল থেকে টেক্সটের একটি লাইন।

  • 'text_dataset_from_directory' একটি ফাইলের বিষয়বস্তুকে একটি একক উদাহরণ হিসেবে বিবেচনা করে।

  • TextLineDataset লাইন-ভিত্তিক টেক্সট ডেটার সাথে কাজ করার সময় উপকারী।

  • এই ফাইলগুলির মাধ্যমে পুনরাবৃত্তি করুন এবং প্রতিটি সারি তার নিজস্ব ডেটাসেটে লোড করুন।

  • প্রতিটি উদাহরণকে আলাদাভাবে লেবেল করা উচিত, তাই 'tf.data.Dataset.map' ব্যবহার করে প্রতিটি সারিতে একটি লেবেলার ফাংশন প্রয়োগ করা হয়।

  • এটি ডেটাসেটের প্রতিটি উদাহরণের ওপর পুনরাবৃত্তি করবে, এবং আউটপুট হিসেবে (example, label) জোড়া রিটার্ন করবে।

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

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

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

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