TensorFlow হল Google দ্বারা প্রদত্ত একটি মেশিন লার্নিং ফ্রেমওয়ার্ক। এটি একটি ওপেন-সোর্স ফ্রেমওয়ার্ক যা পাইথনের সাথে মিলিত होकर অ্যালগরিদম, ডিপ লার্নিং অ্যাপ্লিকেশন, এবং আরও অনেক কিছু বাস্তবায়ন করতে ব্যবহৃত হয়। এটি গবেষণা এবং প্রোডাকশন উদ্দেশ্যে ব্যবহৃত হয়। জটিল গাণিতিক অপারেশন দ্রুত সম্পাদন করতে সহায়তা করার জন্য এতে অপ্টিমাইজেশন কৌশল রয়েছে। এর কারণ হল এটি NumPy এবং বহু-মাত্রিক অ্যারে ব্যবহার করে। এই বহু-মাত্রিক অ্যারেগুলিকে 'টেনসর' নামেও জানা যায়। ফ্রেমওয়ার্কটি গভীর নিউরাল নেটওয়ার্কের সাথে কাজ করা সাপোর্ট করে।
টেনসর সম্পর্কে
টেনসর হল TensorFlow-এ ব্যবহৃত একটি ডেটা স্ট্রাকচার। এটি একটি ফ্লো ডায়াগ্রামে প্রান্তাগুলিকে সংযুক্ত করতে সাহায্য করে। এই ফ্লো ডায়াগ্রামটিকে 'ডেটা ফ্লো গ্রাফ' নামে ডাকা হয়। টেনসরها অন্য কিছু নয়, বরং বহু-মাত্রিক অ্যারে বা একটি তালিকা।
ইলিয়াড ডেটাসেট সম্পর্কে
আমরা ইলিয়াড ডেটাসেট ব্যবহার করব, যাতে উইলিয়াম কাওপার, এডوارد (ডারবির আর্ল) এবং স্যামুয়েল বटलারের তিনটি অনুবাদের কাজের টেক্সট ডেটা রয়েছে। মডেলটি একটি একক টেক্সট লাইন দেওয়া হলে অনুবাদকারীকে সনাক্ত করার জন্য প্রশিক্ষিত হয়। ব্যবহৃত টেক্সট ফাইলগুলি প্রি-প্রসেস করা হয়েছে। এতে ডকুমেন্ট হেডার এবং ফুটার, লাইন নম্বর এবং অধ্যায়ের শিরোনাম সরানো অন্তর্ভুক্ত।
Google Colaboratory ব্যবহার
নিচের কোড চালানোর জন্য আমরা Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারের মাধ্যমে পাইথন কোড চালাতে সাহায্য করে এবং শূন্য কনফিগারেশন এবং GPU-তে (গ্রাফিক্যাল প্রসেসিং ইউনিট) বিনামূল্যে অ্যাক্সেস প্রদান করে। Colaboratory Jupyter Notebook-এর উপরে তৈরি করা হয়েছে।
উদাহরণ
নিচে কোড স্নিপেট দেওয়া হল:
print("Build a vocabulary using the tokens")
tokenized_ds = configure_dataset(tokenized_ds)
vocab_dict = collections.defaultdict(lambda: 0)
for toks in tokenized_ds.as_numpy_iterator():
for tok in toks:
vocab_dict[tok] += 1
print("Sort the vocabulary")
vocab = sorted(vocab_dict.items(), key=lambda x: x[1], reverse=True)
vocab = [token for token, count in vocab]
vocab = vocab[:VOCAB_SIZE]
vocab_size = len(vocab)
print("The vocabulary size is : ", vocab_size)
print("First six vocabulary entries are :", vocab[:6])
কোড ক্রেডিট - https://www.tensorflow.org/tutorials/load_data/text
আউটপুট
Build a vocabulary using the tokens Sort the vocabulary The vocabulary size is : 10000 First six vocabulary entries are : [b',', b'the', b'and', b'"', b'of', b'.']
পরবর্তীতে, আপনি টোকেনগুলিকে ফ্রিকোয়েন্সি অনুযায়ী সর্ট করে এবং শীর্ষ VOCAB_SIZE টোকেন ধরে একটি ভোকাবুলারি তৈরি করবেন।
ব্যাখ্যা
টোকেনগুলিকে তাদের ফ্রিকোয়েন্সি অনুযায়ী সর্ট করার পরে একটি ভোকাবুলারি তৈরি করা হয়।
কনসোলে কিছু ভোকাবুলারি এন্ট্রি প্রদর্শিত হয়।