tensorflow :: অপস:: ইউনিকোড ট্রান্সকোড

#include <string_ops.h>

একটি উৎস এনকোডিং থেকে একটি গন্তব্য এনকোডিং এ ইনপুট পাঠ্য ট্রান্সকোড করুন।

সারসংক্ষেপ

ইনপুট হল যেকোনো আকৃতির একটি স্ট্রিং টেনসর। আউটপুট হল একই আকৃতির একটি স্ট্রিং টেনসর যাতে ট্রান্সকোড করা স্ট্রিং থাকে। আউটপুট স্ট্রিং সবসময় বৈধ ইউনিকোড. যদি ইনপুটে অবৈধ এনকোডিং পজিশন থাকে, তাহলে errors অ্যাট্রিবিউট তাদের মোকাবেলা করার নীতি নির্ধারণ করে। যদি ডিফল্ট ত্রুটি-হ্যান্ডলিং নীতি ব্যবহার করা হয়, তাহলে আউটপুটে অবৈধ বিন্যাস প্রতিস্থাপন করা হবে replacement_char দ্বারা। যদি ত্রুটি নীতি ignore হয়, ইনপুটে কোনো অবৈধ এনকোডিং অবস্থান এড়িয়ে যাওয়া হয় এবং আউটপুটে অন্তর্ভুক্ত করা হয় না। যদি এটি strict সেট করা হয় তবে কোনো অবৈধ বিন্যাস একটি InvalidArgument ত্রুটির কারণ হবে৷

এই ক্রিয়াকলাপটি output_encoding = input_encoding এর সাথে ব্যবহার করা যেতে পারে ইনপুটগুলির জন্য সঠিক বিন্যাস প্রয়োগ করতে এমনকি যদি তারা ইতিমধ্যেই পছন্দসই এনকোডিংয়ে থাকে।

যদি ইনপুটটি এনকোডিং নির্ধারণের জন্য প্রয়োজনীয় বাইট অর্ডার মার্ক দ্বারা প্রিফিক্স করা হয় (যেমন যদি এনকোডিংটি UTF-16 হয় এবং BOM বিগ-এন্ডিয়ান নির্দেশ করে), তাহলে সেই BOM ব্যবহার করা হবে এবং আউটপুটে নির্গত হবে না। যদি ইনপুট এনকোডিং একটি সুস্পষ্ট endianness (যেমন UTF-16-BE) দ্বারা চিহ্নিত করা হয়, তাহলে BOM-কে একটি নন-ব্রেকিং-স্পেস হিসাবে ব্যাখ্যা করা হয় এবং আউটপুটে সংরক্ষণ করা হয় (ইউটিএফ-8-এর জন্য সর্বদা সহ)।

শেষ ফলাফল হল যে যদি ইনপুটটি একটি সুস্পষ্ট endianness হিসাবে চিহ্নিত করা হয় তবে ট্রান্সকোডিং উৎসের সমস্ত কোডপয়েন্টের জন্য বিশ্বস্ত। যদি এটি একটি সুস্পষ্ট endianness সঙ্গে চিহ্নিত না হয়, BOM নিজেই স্ট্রিং এর অংশ হিসাবে বিবেচিত হয় না কিন্তু মেটাডেটা হিসাবে, এবং তাই আউটপুটে সংরক্ষিত হয় না।

উদাহরণ:

tf.strings.unicode_transcode(["Hello", "TensorFlow", "2.x"], "UTF-8", "UTF-16-BE") tf.strings.unicode_transcode(["A", "B", "C"], "US ASCII", "UTF-8").numpy() অ্যারে([b'A', b'B', b' C'], dtype=অবজেক্ট)

যুক্তি:

  • স্কোপ: একটি স্কোপ অবজেক্ট
  • ইনপুট: প্রসেস করা পাঠ্য। যে কোন আকৃতি থাকতে পারে।
  • input_encoding: ইনপুট স্ট্রিং এর টেক্সট এনকোডিং। এটি ICU ucnv অ্যালগরিদমিক রূপান্তরকারী দ্বারা সমর্থিত যেকোন এনকোডিং। উদাহরণ: "UTF-16", "US ASCII", "UTF-8"
  • output_encoding: আউটপুটে ব্যবহার করার জন্য ইউনিকোড এনকোডিং। "UTF-8", "UTF-16-BE", "UTF-32-BE" এর একটি হতে হবে৷ মাল্টি-বাইট এনকোডিং বড়-এন্ডিয়ান হবে।

ঐচ্ছিক বৈশিষ্ট্য (দেখুন Attrs ):

  • ত্রুটি: ইনপুটে অবৈধ বিন্যাস পাওয়া গেলে ত্রুটি পরিচালনার নীতি। 'কঠোর' মান অপারেশনটিকে যে কোনো অবৈধ ইনপুট বিন্যাসে একটি InvalidArgument ত্রুটি তৈরি করবে। 'প্রতিস্থাপন' (ডিফল্ট) এর একটি মান অপারেশনটিকে ইনপুটে যেকোনো অবৈধ বিন্যাস replacement_char কোডপয়েন্ট দিয়ে প্রতিস্থাপন করবে। 'উপেক্ষা' এর একটি মান অপারেশনটিকে ইনপুটে কোনো অবৈধ বিন্যাস এড়িয়ে যেতে এবং কোনো সংশ্লিষ্ট আউটপুট অক্ষর তৈরি করবে না।
  • রিপ্লেসমেন্ট_চার: errors='replace' হলে ইনপুটে কোনো অবৈধ বিন্যাসের জায়গায় প্রতিস্থাপন অক্ষর কোডপয়েন্ট ব্যবহার করা হবে। যেকোনো বৈধ ইউনিকোড কোডপয়েন্ট ব্যবহার করা যেতে পারে। ডিফল্ট মান হল ডিফল্ট ইউনিকোড প্রতিস্থাপন অক্ষর হল 0xFFFD বা U+65533।)

মনে রাখবেন যে UTF-8-এর জন্য, 1 বাইটে প্রকাশযোগ্য একটি প্রতিস্থাপন অক্ষর পাস করা, যেমন ' ', উৎসে স্ট্রিং সারিবদ্ধকরণ সংরক্ষণ করবে কারণ অবৈধ বাইট 1-বাইট প্রতিস্থাপনের সাথে প্রতিস্থাপিত হবে। UTF-16-BE এবং UTF-16-LE-এর জন্য, যেকোনো 1 বা 2 বাইট প্রতিস্থাপন অক্ষর উৎসে বাইট সারিবদ্ধকরণ সংরক্ষণ করবে।

  • replace_control_characters: C0 কন্ট্রোল অক্ষর (00-1F) replacement_char দিয়ে প্রতিস্থাপন করা হবে কিনা। ডিফল্ট মিথ্যা.

রিটার্ন:

  • Output : output_encoding ব্যবহার করে এনকোড করা ইউনিকোড টেক্সট ধারণকারী একটি স্ট্রিং টেনসর।

কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর

UnicodeTranscode (const :: tensorflow::Scope & scope, :: tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding)
UnicodeTranscode (const :: tensorflow::Scope & scope, :: tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding, const UnicodeTranscode::Attrs & attrs)

পাবলিক বৈশিষ্ট্য

operation
output

পাবলিক ফাংশন

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

পাবলিক স্ট্যাটিক ফাংশন

Errors (StringPiece x)
ReplaceControlCharacters (bool x)
ReplacementChar (int64 x)

কাঠামো

tensorflow:: ops:: UnicodeTranscode:: Attrs

ইউনিকোডট্রান্সকোডের জন্য ঐচ্ছিক অ্যাট্রিবিউট সেটার।

পাবলিক বৈশিষ্ট্য

অপারেশন

Operation operation

আউটপুট

::tensorflow::Output output

পাবলিক ফাংশন

ইউনিকোড ট্রান্সকোড

 UnicodeTranscode(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  StringPiece input_encoding,
  StringPiece output_encoding
)

ইউনিকোড ট্রান্সকোড

 UnicodeTranscode(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  StringPiece input_encoding,
  StringPiece output_encoding,
  const UnicodeTranscode::Attrs & attrs
)

নোড

::tensorflow::Node * node() const 

অপারেটর::টেনসরফ্লো::ইনপুট

 operator::tensorflow::Input() const 

অপারেটর::টেনসরফ্লো::আউটপুট

 operator::tensorflow::Output() const 

পাবলিক স্ট্যাটিক ফাংশন

ত্রুটি

Attrs Errors(
  StringPiece x
)

কন্ট্রোল অক্ষর প্রতিস্থাপন করুন

Attrs ReplaceControlCharacters(
  bool x
)

প্রতিস্থাপন চর

Attrs ReplacementChar(
  int64 x
)