কম্পিউটার

কীভাবে ইউনিকোড স্ট্রিংগুলিকে টেনসরফ্লোতে প্রতিনিধিত্ব এবং ম্যানিপুলেট করা যায়?


ইউনিকোড স্ট্রিং ডিফল্টরূপে utf-8 এনকোড করা হয়। টেনসরফ্লো মডিউলে 'ধ্রুবক' পদ্ধতি ব্যবহার করে ইউনিকোড স্ট্রিংকে UTF-8 এনকোডেড স্কেলার মান হিসাবে উপস্থাপন করা যেতে পারে। টেনসরফ্লো মডিউলে উপস্থিত 'এনকোড' পদ্ধতি ব্যবহার করে ইউনিকোড স্ট্রিংগুলিকে UTF-16 এনকোডেড স্কেলার হিসাবে উপস্থাপন করা যেতে পারে।

আরও পড়ুন:টেনসরফ্লো কী এবং নিউরাল নেটওয়ার্ক তৈরি করতে টেনসরফ্লো-এর সাথে কেরাস কীভাবে কাজ করে?

যে মডেলগুলি প্রাকৃতিক ভাষা প্রক্রিয়া করে সেগুলি বিভিন্ন ভাষা পরিচালনা করে যার বিভিন্ন অক্ষর সেট রয়েছে। ইউনিকোডকে স্ট্যান্ডার্ড এনকোডিং সিস্টেম হিসাবে বিবেচনা করা হয় যা প্রায় সমস্ত ভাষার অক্ষর উপস্থাপন করতে ব্যবহৃত হয়। প্রতিটি অক্ষর একটি অনন্য পূর্ণসংখ্যা কোড পয়েন্টের সাহায্যে এনকোড করা হয় যা 0 এবং 0x10FFFF এর মধ্যে। একটি ইউনিকোড স্ট্রিং হল শূন্য বা তার বেশি কোড মানের একটি ক্রম।

আসুন আমরা বুঝতে পারি কিভাবে পাইথন ব্যবহার করে ইউনিকোড স্ট্রিংগুলিকে উপস্থাপন করা যায় এবং ইউনিকোড সমতুল্য ব্যবহার করে সেগুলিকে ম্যানিপুলেট করা যায়। প্রথমত, আমরা স্ট্যান্ডার্ড স্ট্রিং অপ্সের ইউনিকোড সমতুল্যের সাহায্যে স্ক্রিপ্ট সনাক্তকরণের উপর ভিত্তি করে ইউনিকোড স্ট্রিংগুলিকে টোকেনে আলাদা করি৷

নিচের কোডটি চালানোর জন্য আমরা Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারে Python কোড চালাতে সাহায্য করে এবং এর জন্য শূন্য কনফিগারেশন এবং GPUs (গ্রাফিক্যাল প্রসেসিং ইউনিট) তে বিনামূল্যে অ্যাক্সেস প্রয়োজন। জুপিটার নোটবুকের উপরে কোলাবোরেটরি তৈরি করা হয়েছে।

tfprint("একটি ধ্রুবক সংজ্ঞায়িত") tf.constant(u"ধন্যবাদ 😊")প্রিন্ট ("টেনসরের আকৃতি হল")tf.constant([u"আপনি আছেন", u"স্বাগত !"]).শেপপ্রিন্ট("ইউনিকোড স্ট্রিং UTF-8 এনকোডেড স্কেলার হিসাবে উপস্থাপন করা হয়েছে")text_utf8 =tf.constant(u"语言处理")প্রিন্ট(টেক্সট_উটফ8)মুদ্রণ("ইউনিকোড স্ট্রিংটি UTF-16 এনকোডেড স্কেলার হিসাবে উপস্থাপন করা হয়েছে")text_utf8 =tf.constant(u"语言处理".encode("UTF-16-BE"))প্রিন্ট(text_utf16be)মুদ্রণ("ইউনিকোড স্ট্রিং ইউনিকোড কোড পয়েন্টের ভেক্টর হিসাবে উপস্থাপিত")text_chars =tf.constant([ord( char) u"语言处理"])প্রিন্ট(টেক্সট_অক্ষর)

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

আউটপুট

একটি ধ্রুবক সংজ্ঞায়িত করা হয় টেনসরের আকারটি ইউনিকোড স্ট্রিংটি UTF-8 এনকোডেড স্ক্যালার্টফ হিসাবে উপস্থাপিত হয়। টেনসর(b'\xe8\xaf\xad\xe8\xa8\x80\xe5\xa4\x84\xe7\x90\x86' , shape=(), dtype=string)ইউনিকোড স্ট্রিং UTF-16 এনকোডেড স্ক্যালার্টফ হিসাবে উপস্থাপিত ইউনিকোড কোডের একটি ভেক্টর হিসাবে পয়েন্টstf. টেনসর([35821 35328 22788 29702], shape=(4,), dtype=int32)

ব্যাখ্যা

  • TensorFlow tf.string একটি মৌলিক dtype।
  • এটি ব্যবহারকারীকে বাইট স্ট্রিং-এর টেনসর তৈরি করতে দেয়।
  • ইউনিকোড স্ট্রিংগুলি ডিফল্টরূপে utf-8 এনকোড করা হয়৷
  • একটি tf.string টেনসর বিভিন্ন দৈর্ঘ্যের বাইট স্ট্রিং ধরে রাখার ক্ষমতা রাখে যেহেতু বাইট স্ট্রিংগুলিকে পারমাণবিক একক হিসাবে বিবেচনা করা হয়৷
  • স্ট্রিং দৈর্ঘ্য টেনসর মাত্রা অন্তর্ভুক্ত নয়।
  • যখন পাইথন স্ট্রিং তৈরি করতে ব্যবহার করা হয়, তখন v2 এবং v3 এর মধ্যে ইউনিকোড হ্যান্ডলিং পরিবর্তন হয়। v2-এ, ইউনিকোড স্ট্রিংগুলি "u" উপসর্গ দ্বারা নির্দেশিত হয়৷
  • v3-এ, স্ট্রিংগুলি ডিফল্টরূপে ইউনিকোড-এনকোড করা হয়।
  • টেনসরফ্লোতে ইউনিকোড স্ট্রিং উপস্থাপন করার দুটি আদর্শ উপায় রয়েছে:
  • স্ট্রিং স্কেলার:কোড পয়েন্টগুলির একটি ক্রম একটি পরিচিত অক্ষর এনকোডিং সহ এনকোড করা হয়৷
  • int32 ভেক্টর:একটি পদ্ধতি যেখানে প্রতিটি অবস্থানে একটি একক কোড পয়েন্ট থাকে।

  1. কিভাবে TensorFlow একটি টেনসর তৈরি করতে এবং পাইথন ব্যবহার করে একটি বার্তা প্রদর্শন করতে ব্যবহার করা যেতে পারে?

  2. আমি কিভাবে পাইথন স্ট্রিংকে টিপলে রূপান্তর করতে পারি?

  3. পাইথনে একটি স্ট্রিং এবং স্ট্রিংগুলির একটি তালিকা থেকে কীভাবে একটি টিপল তৈরি করবেন?

  4. আমি কিভাবে পাইথনে str এবং int অবজেক্টকে সংযুক্ত করতে পারি?