निष्पक्षता संकेतक डैशबोर्ड के साथ मॉडल का मूल्यांकन [बीटा]

निष्पक्षता संकेतक

टेन्सरबोर्ड के लिए निष्पक्षता संकेतक बाइनरी और मल्टीक्लास क्लासिफायर के लिए सामान्य रूप से पहचाने जाने वाले निष्पक्षता मेट्रिक्स की आसान गणना को सक्षम बनाता है। प्लगइन के साथ, आप अपने रनों के लिए निष्पक्षता मूल्यांकन की कल्पना कर सकते हैं और समूहों में प्रदर्शन की आसानी से तुलना कर सकते हैं।

विशेष रूप से, TensorBoard के लिए निष्पक्षता संकेतक आपको उपयोगकर्ताओं के परिभाषित समूहों में विभाजित मॉडल प्रदर्शन का मूल्यांकन और कल्पना करने की अनुमति देते हैं। आत्मविश्वास अंतराल और कई सीमाओं पर मूल्यांकन के साथ अपने परिणामों के बारे में आश्वस्त महसूस करें।

निष्पक्षता संबंधी चिंताओं के मूल्यांकन के लिए कई मौजूदा उपकरण बड़े पैमाने के डेटासेट और मॉडल पर अच्छी तरह से काम नहीं करते हैं। Google में, हमारे लिए ऐसे उपकरण होना महत्वपूर्ण है जो अरबों-उपयोगकर्ता प्रणालियों पर काम कर सकें। निष्पक्षता संकेतक आपको टेन्सरबोर्ड वातावरण में या कोलाब में किसी भी आकार के उपयोग के मामले में मूल्यांकन करने की अनुमति देंगे।

आवश्यकताएं

TensorBoard के लिए निष्पक्षता संकेतक स्थापित करने के लिए, चलाएँ:

python3 -m virtualenv ~/tensorboard_demo
source ~/tensorboard_demo/bin/activate
pip install --upgrade pip
pip install fairness_indicators
pip install tensorboard-plugin-fairness-indicators

डेमो

यदि आप TensorBoard में निष्पक्षता संकेतक का परीक्षण करना चाहते हैं, तो आप निम्न आदेश का उपयोग करके Google क्लाउड प्लेटफ़ॉर्म से नमूना TensorFlow मॉडल विश्लेषण मूल्यांकन परिणाम (eval_config.json, मेट्रिक्स और प्लॉट फ़ाइलें) और एक demo.py उपयोगिता डाउनलोड कर सकते हैं।

pip install gsutil
gsutil cp -r gs://tensorboard_plugin_fairness_indicators/ .

डाउनलोड की गई फ़ाइलों वाली निर्देशिका पर नेविगेट करें।

cd tensorboard_plugin_fairness_indicators

यह मूल्यांकन डेटा सिविल कमेंट्स डेटासेट पर आधारित है, जिसकी गणना टेन्सरफ्लो मॉडल एनालिसिस की model_eval_lib लाइब्रेरी का उपयोग करके की जाती है। इसमें संदर्भ के लिए एक नमूना TensorBoard सारांश डेटा फ़ाइल भी शामिल है।

demo.py उपयोगिता एक TensorBoard सारांश डेटा फ़ाइल लिखती है, जिसे फेयरनेस संकेतक डैशबोर्ड प्रस्तुत करने के लिए TensorBoard द्वारा पढ़ा जाएगा (सारांश डेटा फ़ाइलों पर अधिक जानकारी के लिए TensorBoard ट्यूटोरियल देखें)।

demo.py उपयोगिता के साथ उपयोग किए जाने वाले झंडे:

  • --logdir : निर्देशिका जहां TensorBoard सारांश लिखेगा
  • --eval_result_output_dir : निर्देशिका जिसमें TFMA द्वारा मूल्यांकित मूल्यांकन परिणाम शामिल हैं (अंतिम चरण में डाउनलोड किया गया)

लॉग निर्देशिका में सारांश परिणाम लिखने के लिए demo.py उपयोगिता चलाएँ:

python demo.py --logdir=. --eval_result_output_dir=.

टेंसरबोर्ड चलाएँ:

tensorboard --logdir=.

यह एक स्थानीय उदाहरण प्रारंभ करेगा. स्थानीय उदाहरण शुरू होने के बाद, टर्मिनल पर एक लिंक प्रदर्शित किया जाएगा। निष्पक्षता संकेतक डैशबोर्ड देखने के लिए अपने ब्राउज़र में लिंक खोलें।

डेमो कोलाब

Fairness_Indicator_TensorBoard_Plugin_Example_Colab.ipynb में एक मॉडल को प्रशिक्षित करने और उसका मूल्यांकन करने और TensorBoard में निष्पक्षता मूल्यांकन परिणामों की कल्पना करने के लिए एक एंड-टू-एंड डेमो शामिल है।

प्रयोग

अपने स्वयं के डेटा और मूल्यांकन के साथ निष्पक्षता संकेतक का उपयोग करने के लिए:

  1. एक नए मॉडल को प्रशिक्षित करें और model_eval_lib में tensorflow_model_analysis.run_model_analysis या tensorflow_model_analysis.ExtractEvaluateAndWriteResult एपीआई का उपयोग करके मूल्यांकन करें। ऐसा करने के तरीके पर कोड स्निपेट के लिए, यहां फेयरनेस इंडिकेटर्स कोलाब देखें।

  2. tensorboard_plugin_fairness_indicators.summary_v2 API का उपयोग करके निष्पक्षता संकेतक सारांश लिखें।

    writer = tf.summary.create_file_writer(<logdir>)
    with writer.as_default():
        summary_v2.FairnessIndicators(<eval_result_dir>, step=1)
    writer.close()
    
  3. टेंसरबोर्ड चलाएँ

    • tensorboard --logdir=<logdir>
    • परिणामों की कल्पना करने के लिए डैशबोर्ड के बाईं ओर ड्रॉप-डाउन का उपयोग करके नए मूल्यांकन रन का चयन करें।