TensorFlow হল Google দ্বারা প্রদত্ত একটি মেশিন লার্নিং ফ্রেমওয়ার্ক। এটি একটি ওপেন-সোর্স ফ্রেমওয়ার্ক যা পাইথনের সাথে মিলিত होकर অ্যালগরিদম, ডিপ লার্নিং অ্যাপ্লিকেশন এবং অন্যান্য অনেক কিছু বাস্তবায়ন করতে ব্যবহৃত হয়। এটি গবেষণা এবং প্রোডাকশন উদ্দেশ্যে ব্যবহৃত হয়।
TensorFlow ইনস্টলেশন
Windows-এ 'tensorflow' প্যাকেজটি নিচের কোড লাইন ব্যবহার করে ইনস্টল করা যেতে পারে:
pip install tensorflow
টেনসরের প্রধান বৈশিষ্ট্য
টেনসর হল TensorFlow-এ ব্যবহৃত একটি ডেটা স্ট্রাকচার। এটি একটি ফ্লো ডায়াগ্রামে প্রান্তাগুলিকে সংযুক্ত করতে সাহায্য করে। এই ফ্লো ডায়াগ্রামটিকে 'ডেটা ফ্লো গ্রাফ' নামে ডাকা হয়। টেনসরها অন্য কিছু নয়, বরং বহু-মাত্রিক অ্যারে বা একটি তালিকা।
টেনসরها তিনটি প্রধান বৈশিষ্ট্য দ্বারা সনাক্ত করা যায়:
র্যাঙ্ক (Rank) - এটি টেনসরের মাত্রিকতা সম্পর্কে বলে। এটি টেনসরের ক্রম বা সংজ্ঞায়িত টেনসরে মাত্রার সংখ্যা হিসাবে বোঝা যেতে পারে।
টাইপ (Type) - এটি টেনসরের উপাদানগুলির সাথে যুক্ত ডেটা টাইপ সম্পর্কে বলে। এটি এক-মাত্রিক, দুই-মাত্রিক বা n-মাত্রিক টেনসর হতে পারে।
শেপ (Shape) - এটি সারি এবং কলামের সংখ্যা একসাথে।
ইলিয়াড ডেটাসেট সম্পর্কে
আমরা ইলিয়াড ডেটাসেট ব্যবহার করব, যাতে উইলিয়াম কাওপার, এডوارد (ডারবির আর্ল) এবং স্যামুয়েল বटलারের তিনটি অনুবাদের কাজের টেক্সট ডেটা রয়েছে। মডেলটি একটি একক টেক্সট লাইন দেওয়া হলে অনুবাদকারীকে সনাক্ত করার জন্য প্রশিক্ষিত হয়। ব্যবহৃত টেক্সট ফাইলগুলি প্রি-প্রসেস করা হয়েছে। এতে ডকুমেন্ট হেডার এবং ফুটার, লাইন নম্বর এবং অধ্যায়ের শিরোনাম সরানো অন্তর্ভুক্ত।
Google Colaboratory ব্যবহার
নিচের কোড চালানোর জন্য আমরা Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারের মাধ্যমে পাইথন কোড চালাতে সাহায্য করে এবং শূন্য কনফিগারেশন এবং GPU-তে (গ্রাফিক্যাল প্রসেসিং ইউনিট) বিনামূল্যে অ্যাক্সেস প্রদান করে। Colaboratory Jupyter Notebook-এর উপরে তৈরি করা হয়েছে।
উদাহরণ
নিচে কোড স্নিপেট দেওয়া হল:
keys = vocab
values = range(2, len(vocab) + 2) # reserve 0 for padding, 1 for OOV
print("Map the tokens to integers")
init = tf.lookup.KeyValueTensorInitializer(
keys, values, key_dtype=tf.string, value_dtype=tf.int64)
num_oov_buckets = 1
vocab_table = tf.lookup.StaticVocabularyTable(init, num_oov_buckets)
print("A function has been defined to standardize, tokenize and vectorize the dataset using tokenizer and lookup table")
def preprocess_text(text, label):
standardized = tf_text.case_fold_utf8(text)
tokenized = tokenizer.tokenize(standardized)
vectorized = vocab_table.lookup(tokenized)
return vectorized, label
কোড ক্রেডিট - https://www.tensorflow.org/tutorials/load_data/text
আউটপুট
Map the tokens to integers A function has been defined to standardize, tokenize and vectorize the dataset using tokenizer and lookup table
ব্যাখ্যা
ভোকাব সেটটি ব্যবহার করে একটি StaticVocabularyTable তৈরি করা হয়।
টোকেনগুলি [2, vocab_size + 2] রেঞ্জের মধ্যে পূর্ণসংখ্যায় ম্যাপ করা হয়।
সংখ্যা 0 প্যাডিং ইঙ্গিত করতে এবং 1 আউট-অফ-ভোকাবুলারি (OOV) টোকেন ইঙ্গিত করতে ব্যবহৃত হয়।