tensorflow:: ops:: QuantizeDownAndShrinkRange

#include <math_ops.h>

কোয়ান্টাইজড 'ইনপুট' টেনসরটিকে ব্যবহার করে একটি নিম্ন-প্রিসিশনের 'আউটপুট'-এ রূপান্তর করুন।

সারসংক্ষেপ

নিম্ন বিট ডেপথের ব্যবহার সর্বাধিক করার জন্য মানগুলির প্রকৃত বন্টন এবং সেই অনুযায়ী আউটপুটের সর্বনিম্ন ও সর্বোচ্চ পরিসীমা সমন্বয় করা।

[input_min, input_max] হলো স্কেলার ফ্লোট যা 'ইনপুট' ডেটার ফ্লোট ব্যাখ্যার পরিসর নির্দিষ্ট করে। উদাহরণস্বরূপ, যদি input_min হয় -1.0f এবং input_max হয় 1.0f, এবং আমরা quint16 কোয়ান্টাইজড ডেটা নিয়ে কাজ করি, তাহলে 16-বিট ডেটার মধ্যে একটি 0 মানকে -1.0f হিসাবে ব্যাখ্যা করা উচিত, এবং একটি 65535 মানে 1.0f।

এই অপারেটরটি ডেটার মধ্যে থাকা প্রকৃত সর্বনিম্ন এবং সর্বোচ্চ মান গণনা করে কম বিট ডেপথের আউটপুটে যতটা সম্ভব নির্ভুলতা আনার চেষ্টা করে। উদাহরণস্বরূপ, হতে পারে যে quint16 ইনপুটে 16,384-এর চেয়ে কম কোনো মান নেই এবং 49,152-এর চেয়ে বেশি কোনো মান নেই। এর মানে হলো, আসলে রেঞ্জের অর্ধেকই প্রয়োজন, কারণ সমস্ত ফ্লোট ইন্টারপ্রিটেশন -0.5f এবং 0.5f-এর মধ্যে থাকে। তাই, যদি আমরা ডেটাটিকে একটি quint8 আউটপুটে কম্প্রেস করতে চাই, তাহলে ইনপুটের সর্বনিম্ন এবং সর্বোচ্চ মান দ্বারা প্রস্তাবিত তাত্ত্বিক -1.0f থেকে 1.0f রেঞ্জের পরিবর্তে আমরা সেই রেঞ্জটি ব্যবহার করতে পারি।

কার্যত, এটি QuantizedMatMul- এর মতো অপারেশনগুলির আউটপুট নেওয়ার জন্য সবচেয়ে বেশি উপযোগী। এই ধরনের অপারেশনগুলি তাদের ইনপুটের চেয়ে উচ্চতর বিট-ডেপথ আউটপুট তৈরি করতে পারে এবং তাদের সম্ভাব্য আউটপুট পরিসরও অনেক বড় হতে পারে, কিন্তু বাস্তবে তাদের ইনপুট মানগুলির বিন্যাস সম্ভাব্য পরিসরের একটি ক্ষুদ্র অংশই ব্যবহার করে। সেই আউটপুটকে এই অপারেটরে ফিড করার মাধ্যমে, আমরা নির্ভুলতার ন্যূনতম ক্ষতি করে এটিকে ৩২ বিট থেকে কমিয়ে ৮ বিটে আনতে পারি।

যুক্তি:

  • স্কোপ: একটি স্কোপ অবজেক্ট
  • input_min: ফ্লোট মান যা সর্বনিম্ন কোয়ান্টাইজড ইনপুট মানকে প্রতিনিধিত্ব করে।
  • input_max: ফ্লোট মান যা সর্বোচ্চ কোয়ান্টাইজড ইনপুট মানকে প্রতিনিধিত্ব করে।
  • out_type: আউটপুটের ধরণ। এর বিট ডেপথ Tinput-এর চেয়ে কম হওয়া উচিত।

ফেরত:

  • Output আউটপুট
  • Output আউটপুট_মিন: ফ্লোট মান যা সর্বনিম্ন কোয়ান্টাইজড আউটপুট মানকে প্রতিনিধিত্ব করে।
  • Output আউটপুট_ম্যাক্স: ফ্লোট মান যা সর্বোচ্চ কোয়ান্টাইজড আউটপুট মানকে প্রতিনিধিত্ব করে।

নির্মাতা এবং ধ্বংসকারী

QuantizeDownAndShrinkRange (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input input_min, :: tensorflow::Input input_max, DataType out_type)

জনসাধারণের বৈশিষ্ট্য

operation
output
output_max
output_min

জনসাধারণের বৈশিষ্ট্য

অপারেশন

Operation operation

আউটপুট

::tensorflow::Output output

আউটপুট_সর্বোচ্চ

::tensorflow::Output output_max

আউটপুট_মিনিট

::tensorflow::Output output_min

জনসাধারণের কার্যাবলী

QuantizeDownAndShrinkRange

 QuantizeDownAndShrinkRange(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input input_min,
  ::tensorflow::Input input_max,
  DataType out_type
)