প্রশিক্ষক TFX পাইপলাইন উপাদান

Trainer TFX পাইপলাইন উপাদান একটি TensorFlow মডেলকে প্রশিক্ষণ দেয়।

প্রশিক্ষক এবং টেনসরফ্লো

প্রশিক্ষক প্রশিক্ষণ মডেলের জন্য Python TensorFlow API-এর ব্যাপক ব্যবহার করে।

কম্পোনেন্ট

প্রশিক্ষক নেয়:

  • tf. প্রশিক্ষণ এবং ইভালের জন্য ব্যবহৃত উদাহরণ।
  • একজন ব্যবহারকারী প্রদত্ত মডিউল ফাইল যা প্রশিক্ষক যুক্তি সংজ্ঞায়িত করে।
  • ট্রেন আর্গস এবং ইভাল আর্গসের প্রোটোবাফ সংজ্ঞা।
  • (ঐচ্ছিক) একটি SchemaGen পাইপলাইন উপাদান দ্বারা তৈরি এবং ঐচ্ছিকভাবে বিকাশকারী দ্বারা পরিবর্তিত একটি ডেটা স্কিমা৷
  • (ঐচ্ছিক) একটি আপস্ট্রিম ট্রান্সফর্ম উপাদান দ্বারা উত্পাদিত রূপান্তর গ্রাফ।
  • (ঐচ্ছিক) ওয়ার্মস্টার্টের মতো পরিস্থিতির জন্য ব্যবহৃত প্রাক-প্রশিক্ষিত মডেল।
  • (ঐচ্ছিক) হাইপারপ্যারামিটার, যা ব্যবহারকারী মডিউল ফাংশনে পাস করা হবে। টিউনারের সাথে একীকরণের বিশদ বিবরণ এখানে পাওয়া যাবে।

প্রশিক্ষক নির্গত করেন: অনুমান/পরিষেবার জন্য কমপক্ষে একটি মডেল (সাধারণত সংরক্ষিত মডেল ফরম্যাটে) এবং ঐচ্ছিকভাবে eval (সাধারণত একটি EvalSavedModel) এর জন্য অন্য একটি মডেল।

আমরা মডেল রিরাইটিং লাইব্রেরির মাধ্যমে TFLite- এর মতো বিকল্প মডেল ফরম্যাটের জন্য সমর্থন প্রদান করি। এস্টিমেটর এবং কেরাস উভয় মডেলকে কিভাবে রূপান্তর করা যায় তার উদাহরণের জন্য মডেল রিরাইটিং লাইব্রেরির লিঙ্কটি দেখুন।

জেনেরিক প্রশিক্ষক

জেনেরিক প্রশিক্ষক ডেভেলপারদের প্রশিক্ষক উপাদানের সাথে যেকোন টেনসরফ্লো মডেল API ব্যবহার করতে সক্ষম করে। টেনসরফ্লো এস্টিমেটর ছাড়াও, ডেভেলপাররা কেরাস মডেল বা কাস্টম ট্রেনিং লুপ ব্যবহার করতে পারে। বিস্তারিত জানার জন্য, অনুগ্রহ করে জেনেরিক প্রশিক্ষকের জন্য RFC দেখুন।

প্রশিক্ষক উপাদান কনফিগার করা

জেনেরিক প্রশিক্ষকের জন্য সাধারণ পাইপলাইন ডিএসএল কোড দেখতে এইরকম হবে:

from tfx.components import Trainer

...

trainer = Trainer(
    module_file=module_file,
    examples=transform.outputs['transformed_examples'],
    transform_graph=transform.outputs['transform_graph'],
    train_args=trainer_pb2.TrainArgs(num_steps=10000),
    eval_args=trainer_pb2.EvalArgs(num_steps=5000))

প্রশিক্ষক একটি প্রশিক্ষণ মডিউল আহ্বান করে, যা module_file প্যারামিটারে নির্দিষ্ট করা আছে। trainer_fn এর পরিবর্তে, মডিউল ফাইলে একটি run_fn প্রয়োজন যদি GenericExecutor custom_executor_spec এ নির্দিষ্ট করা থাকে। trainer_fn মডেলটি তৈরি করার জন্য দায়ী ছিল। এছাড়াও, run_fn প্রশিক্ষণের অংশটি পরিচালনা করতে হবে এবং প্রশিক্ষিত মডেলটিকে FnArgs দ্বারা প্রদত্ত পছন্দসই স্থানে আউটপুট করতে হবে:

from tfx.components.trainer.fn_args_utils import FnArgs

def run_fn(fn_args: FnArgs) -> None:
  """Build the TF model and train it."""
  model = _build_keras_model()
  model.fit(...)
  # Save model to fn_args.serving_model_dir.
  model.save(fn_args.serving_model_dir, ...)

এখানে run_fn সহ একটি উদাহরণ মডিউল ফাইল রয়েছে।

মনে রাখবেন যে যদি ট্রান্সফর্ম উপাদানটি পাইপলাইনে ব্যবহার না করা হয়, তাহলে প্রশিক্ষক সরাসরি ExampleGen থেকে উদাহরণগুলি নেবেন:

trainer = Trainer(
    module_file=module_file,
    examples=example_gen.outputs['examples'],
    schema=infer_schema.outputs['schema'],
    train_args=trainer_pb2.TrainArgs(num_steps=10000),
    eval_args=trainer_pb2.EvalArgs(num_steps=5000))

আরও বিশদ প্রশিক্ষক API রেফারেন্সে উপলব্ধ।