tf.Transform
এর 0.30
রিলিজ দিয়ে শুরু করে, ডিফল্ট আচরণ হল একটি TF 2.x SavedModel রপ্তানি করা যদি না TF 2.x আচরণগুলি স্পষ্টভাবে অক্ষম করা হয়। এই পৃষ্ঠাটি একটি TensorFlow 2.x SavedModel হিসাবে রূপান্তর গ্রাফ রপ্তানি করতে tf.Transform
ব্যবহার করার জন্য একটি নির্দেশিকা প্রদান করে।
TF 2.x এর সাথে tf.Transform-এ নতুন
preprocessing_fn
-এর মধ্যে কেরাস মডেল লোড করা হচ্ছে
নীচের উদাহরণে দেখানো হিসাবে Keras মডেলগুলি লোড করতে দয়া করে tft.make_and_track_object
API ব্যবহার করুন৷
def preprocessing_fn(inputs):
keras_model = tft.make_and_track_object(lambda: tf.keras.models.load_model(...), name='_unique_name')
...
return {'keras_model_output': keras_model(inputs[...])}
TF 2.x tf.hub মডিউল ব্যবহার করে
TF 2.x হাব মডিউল tf.Transform
এ কাজ করে যখন preprocessing_fn
ট্রেস করা হয় এবং TF 2.x SavedModel হিসেবে রপ্তানি করা হয় (এটি tensorflow_transform 0.30
দিয়ে শুরু হওয়া ডিফল্ট আচরণ)। নীচের উদাহরণে দেখানো tf.hub
মডিউলগুলি লোড করতে দয়া করে tft.make_and_track_object
API ব্যবহার করুন৷
def preprocessing_fn(inputs):
hub_module = tft.make_and_track_object(lambda: hub.load(...))
...
return {'hub_module_output': hub_module(inputs[...])}
সম্ভাব্য মাইগ্রেশন সমস্যা
TF 1.x থেকে TF 2.x এ বিদ্যমান tf.Transform
পাইপলাইন স্থানান্তরিত হলে, নিম্নলিখিত সমস্যার সম্মুখীন হতে পারে:
রানটাইম ত্রুটি: আপনার preprocessing_fn
এ বিশ্লেষকদের ক্রম অ-নির্ধারক বলে মনে হচ্ছে।
TF 2.x-এ, ব্যবহারকারী দ্বারা প্রদত্ত preprocessing_fn
বেশ কয়েকবার ট্রেস করা হয়। TFT বিশ্লেষক যে ক্রম অনুসারে প্রতিটি ট্রেসের সাথে পরিবর্তিত হয়, এই ত্রুটিটি উত্থাপিত হবে। টিএফটি বিশ্লেষক যে ক্রমানুসারে আমন্ত্রণ জানানো হয় সেই ক্রমে যেকোন অ-নির্ধারণবাদকে সরিয়ে দিয়ে এটি ঠিক করা যেতে পারে।
transform_raw_features
এর আউটপুটে প্রত্যাশিত বৈশিষ্ট্য নেই।
উদাহরণ ব্যতিক্রম:
KeyError: \<feature key
বা
\<feature key> not found in features dictionary.
TFTransformOutput.transform_raw_features
drop_unused_features
পরামিতি উপেক্ষা করে এবং আচরণ করে যেন এটি সত্য। আপনি যে কীটি পুনরুদ্ধার করার চেষ্টা করছেন তা এটিতে বিদ্যমান কিনা তা পরীক্ষা করতে দয়া করে এই API থেকে আউটপুট অভিধানের যেকোনো ব্যবহার আপডেট করুন৷
tf.estimator.BaselineClassifier সারণী আরম্ভ করা ত্রুটি দেখে না।
উদাহরণ ব্যতিক্রম:
tensorflow.python.framework.errors_impl.FailedPreconditionError: Table not initialized.
এস্টিমেটর ভিত্তিক নির্বাহক সহ প্রশিক্ষকের জন্য সহায়তা সর্বোত্তম প্রচেষ্টা। অন্যান্য অনুমানকারীরা কাজ করার সময়, আমরা বেসলাইন ক্লাসিফায়ারে টেবিল প্রারম্ভিকতার সমস্যা দেখেছি। অনুগ্রহ করে tf.Transform
এ TF 2.x নিষ্ক্রিয় করুন ।
পরিচিত সমস্যা / বৈশিষ্ট্য এখনও সমর্থিত নয়
TFRecord বিন্যাসে আউটপুট শব্দভান্ডার এখনও সমর্থিত নয়।
tfrecord_gzip
এখনও tft.vocabulary
(এবং অন্যান্য শব্দভান্ডার APIs) file_format
প্যারামিটারের জন্য একটি বৈধ মান হিসাবে সমর্থিত নয়।
উত্তরাধিকার বজায় রাখা tf. Transform আচরণ
যদি আপনার tf.Transform
পাইপলাইনটি TF 2.x দিয়ে না চালানো উচিত, তাহলে আপনি নিম্নলিখিত উপায়গুলির মধ্যে একটিতে উত্তরাধিকারের আচরণ বজায় রাখতে পারেন:
-
tf.compat.v1.disable_v2_behavior()
কল করেtf.Transform
এ TF2 নিষ্ক্রিয় করুন -
force_tf_compat_v1=True
totft_beam.Context
পাস করা যদিtf.Transform
একটি স্বতন্ত্র লাইব্রেরি হিসাবে বা TFX-এ ট্রান্সফর্ম উপাদান ব্যবহার করে।