কনফিগারেশন
TFMA তার কনফিগারেশনকে একটি প্রোটোতে সঞ্চয় করে যা JSON-এ সিরিয়াল করা হয়। এই প্রোটো ইনপুট ডেটা, আউটপুট ডেটা, মডেল স্পেসিফিকেশন, মেট্রিক স্পেসিফিকেশন এবং স্লাইসিং স্পেসিফিকেশনের জন্য প্রয়োজনীয় কনফিগারেশনকে একত্রিত করে।
সমস্ত TFMA পাইপলাইন একটি বেসলাইন (প্রাথমিক) মডেল এবং শূন্য বা তার বেশি প্রার্থী (সেকেন্ডারি) মডেলের সাথে যুক্ত। বেসলাইন এবং প্রার্থী মডেল পাইপলাইনের শুরুতে ব্যবহারকারী দ্বারা সংজ্ঞায়িত করা হয় এবং প্রতিটির জন্য একটি অনন্য নাম প্রয়োজন। নিম্নলিখিতগুলি সাধারণ কনফিগারেশন সেটআপগুলির উদাহরণ যা একজন ব্যবহারকারী ব্যবহার করতে পারেন:
- একক মডেল মূল্যায়ন:
- N/A (অর্থাৎ নাম নেই)
- বৈধতা ভিত্তিক মূল্যায়ন:
-
baseline
-
candidate
-
- মডেল তুলনা মূল্যায়ন:
-
my_model_a
-
my_model_b
-
মডেল স্পেসিফিকেশন
মডেলের স্পেসগুলি tfma.ModelSpec
টাইপের হয় এবং একটি মডেলের অবস্থানের পাশাপাশি অন্যান্য মডেল নির্দিষ্ট পরামিতি নির্ধারণ করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, নিম্নলিখিতগুলি সাধারণ সেটিংস যা একটি মূল্যায়ন চালানোর আগে কনফিগার করা প্রয়োজন:
-
name
- মডেলের নাম (যদি একাধিক মডেল ব্যবহার করা হয়) -
signature_name
- ভবিষ্যদ্বাণীর জন্য ব্যবহৃত স্বাক্ষরের নাম (ডিফল্ট হলserving_default
)। একটি EvalSavedModel ব্যবহার করলেeval
ব্যবহার করুন। -
label_key
- লেবেলের সাথে যুক্ত বৈশিষ্ট্যের নাম। -
example_weight_key
- উদাহরণের ওজনের সাথে যুক্ত বৈশিষ্ট্যের নাম।
মেট্রিক্স স্পেসিক্স
মেট্রিক্স স্পেক্স tfma.MetricsSpec
টাইপের হয় এবং মূল্যায়নের অংশ হিসাবে গণনা করা মেট্রিক্স কনফিগার করতে ব্যবহৃত হয়। বিভিন্ন মেশিন লার্নিং সমস্যা বিভিন্ন ধরণের মেট্রিক্স ব্যবহার করে এবং TFMA গণনা করা মেট্রিকগুলিকে কনফিগার এবং কাস্টমাইজ করার জন্য অনেকগুলি বিকল্প সরবরাহ করে। যেহেতু মেট্রিকগুলি TFMA-এর একটি খুব বড় অংশ, সেগুলিকে মেট্রিক্সে আলাদাভাবে বিস্তারিতভাবে আলোচনা করা হয়েছে।
স্লাইসিং চশমা
স্লাইসিং স্পেসগুলি tfma.SlicingSpec
টাইপের হয় এবং মূল্যায়নের সময় ব্যবহার করা হবে এমন স্লাইস মানদণ্ড কনফিগার করতে ব্যবহৃত হয়। স্লাইসিং feature_keys
, feature_values
বা উভয় দ্বারাই করা যেতে পারে। স্লাইসিং চশমার কিছু উদাহরণ নিম্নরূপ:
-
{}
- সামগ্রিক তথ্য সমন্বিত স্লাইস।
-
{ feature_keys: ["country"] }
- "দেশ" বৈশিষ্ট্যের সমস্ত মানগুলির জন্য স্লাইস। উদাহরণস্বরূপ, আমরা "দেশ:আমাদের", "দেশ:জেপি" ইত্যাদি স্লাইস পেতে পারি।
-
{ feature_values: [{key: "country", value: "us"}] }
- "দেশ:আমাদের" সমন্বিত স্লাইস
-
{ feature_keys: ["country", "city"] }
- বৈশিষ্ট্য "দেশ" বৈশিষ্ট্যের সমস্ত মানগুলির জন্য স্লাইসগুলি "শহর" বৈশিষ্ট্যের সমস্ত মানগুলির সাথে অতিক্রম করেছে (মনে রাখবেন এটি ব্যয়বহুল হতে পারে)।
-
{ feature_keys: ["country"] feature_values: [{key: "age", value: "20"}] }
- বৈশিষ্ট্য "দেশ" এর সমস্ত মানগুলির জন্য স্লাইস "বয়স:20" মানের সাথে অতিক্রম করেছে
নোট করুন যে বৈশিষ্ট্য কীগুলি রূপান্তরিত বৈশিষ্ট্য বা কাঁচা ইনপুট বৈশিষ্ট্য হতে পারে। আরও তথ্যের জন্য tfma.SlicingSpec
দেখুন।
EvalSharedModel
কনফিগারেশন সেটিংস ছাড়াও, TFMA-এর জন্য একই প্রক্রিয়ায় একাধিক থ্রেডের মধ্যে একটি মডেল ভাগ করার জন্য একটি tfma.EvalSharedModel
এর একটি উদাহরণ তৈরি করা প্রয়োজন। ভাগ করা মডেলের উদাহরণে মডেলের ধরন (কেরাস, ইত্যাদি) এবং ডিস্কে সংরক্ষিত অবস্থান থেকে মডেলটি কীভাবে লোড এবং কনফিগার করা যায় (যেমন ট্যাগ ইত্যাদি) সম্পর্কে তথ্য অন্তর্ভুক্ত রয়েছে। tfma.default_eval_shared_model
API একটি পাথ এবং ট্যাগ সেট দিয়ে একটি ডিফল্ট উদাহরণ তৈরি করতে ব্যবহার করা যেতে পারে।