একটি র্যাগড টেনসরের শব্দ কোড পয়েন্টকে নিম্নলিখিত পদ্ধতিতে ভাগ করা যেতে পারে:সেগমেন্টেশন বলতে বোঝায় টেক্সটকে শব্দের মতো ইউনিটে বিভক্ত করার কাজ। এটি এমন ক্ষেত্রে ব্যবহৃত হয় যেখানে স্পেস অক্ষরগুলি শব্দগুলিকে আলাদা করার জন্য ব্যবহার করা হয়, কিন্তু কিছু ভাষা যেমন চীনা এবং জাপানি স্পেস ব্যবহার করে না। জার্মানির মতো কিছু ভাষায় দীর্ঘ যৌগ থাকে যেগুলোর অর্থ বিশ্লেষণ করার জন্য বিভক্ত করা প্রয়োজন।
শব্দের কোড পয়েন্ট আবার বাক্যে ভাগ করা হয়। পরবর্তী ধাপে একটি শব্দের অক্ষরের কোড পয়েন্ট বাক্যটিতে উপস্থিত আছে কি না তা পরীক্ষা করা। যদি এটি উপস্থিত থাকে, একটি র্যাগড টেনসর তৈরি হয় এবং বাক্যটিকে আবার স্ট্যান্ডার্ড এনকোডিংয়ে এনকোড করা হয়৷
আরো পড়ুন: টেনসরফ্লো কী এবং নিউরাল নেটওয়ার্ক তৈরি করতে টেনসরফ্লো-এর সাথে কেরাস কীভাবে কাজ করে?
আসুন আমরা বুঝতে পারি কিভাবে পাইথন ব্যবহার করে ইউনিকোড স্ট্রিংগুলিকে উপস্থাপন করা যায় এবং ইউনিকোড সমতুল্য ব্যবহার করে সেগুলিকে ম্যানিপুলেট করা যায়। প্রথমত, আমরা স্ট্যান্ডার্ড স্ট্রিং অপ্সের ইউনিকোড সমতুল্যের সাহায্যে স্ক্রিপ্ট সনাক্তকরণের উপর ভিত্তি করে ইউনিকোড স্ট্রিংগুলিকে টোকেনে আলাদা করি৷
নিচের কোডটি চালানোর জন্য আমরা Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারে Python কোড চালাতে সাহায্য করে এবং এর জন্য শূন্য কনফিগারেশন এবং GPUs (গ্রাফিক্যাল প্রসেসিং ইউনিট) তে বিনামূল্যে অ্যাক্সেস প্রয়োজন। জুপিটার নোটবুকের উপরে কোলাবোরেটরি তৈরি করা হয়েছে।
print("Segment the word code points back to sentences") print("Check if code point for a character in a word is present in the sentence") sentence_word_char_codepoint = tf.RaggedTensor.from_row_lengths( values=word_char_codepoint, row_lengths=sentence_num_words) print(sentence_word_char_codepoint) print("Encoding it back to UTF-8") tf.strings.unicode_encode(sentence_word_char_codepoint, 'UTF-8').to_list()
কোড ক্রেডিট:https://www.tensorflow.org/tutorials/load_data/unicode
আউটপুট
Segment the word code points back to sentences Check if code point for a character in a word is present in the sentence <tf.RaggedTensor [[[72, 101, 108, 108, 111], [44, 32], [116, 104, 101, 114, 101], [46]], [[19990, 30028], [12371, 12435, 12395, 12385, 12399]]]> Encoding it back to UTF-8 [[b'Hello', b', ', b'there', b'.'], [b'\xe4\xb8\x96\xe7\x95\x8c', b'\xe3\x81\x93\xe3\x82\x93\xe3\x81\xab\xe3\x81\xa1\xe3\x81\xaf']]
ব্যাখ্যা
- কোড পয়েন্টগুলি বাক্যে বিভক্ত।
- এটি নির্ধারিত হয় একটি অক্ষরের জন্য একটি কোড পয়েন্ট বাক্যটিতে উপস্থিত আছে কি না।
- ডিকোড করা ডেটা আবার UTF-8 এনকোডিং-এ এনকোড করা হয়।