ابزار What-If (WIT) یک رابط کاربری آسان برای گسترش درک طبقه بندی جعبه سیاه و مدل های ML رگرسیون ارائه می دهد. با استفاده از این افزونه، می توانید استنتاج را روی مجموعه بزرگی از مثال ها انجام دهید و بلافاصله نتایج را به روش های مختلف تجسم کنید. علاوه بر این، نمونه ها را می توان به صورت دستی یا برنامه نویسی ویرایش کرد و مجدداً از طریق مدل اجرا کرد تا نتایج تغییرات را مشاهده کرد. این شامل ابزاری برای بررسی عملکرد مدل و انصاف در زیر مجموعه های یک مجموعه داده است.
هدف این ابزار ارائه یک راه ساده، شهودی و قدرتمند برای کاوش و بررسی مدل های آموزش دیده ML از طریق یک رابط بصری بدون نیاز به کد است.
این ابزار را می توان از طریق TensorBoard یا مستقیماً در نوت بوک Jupyter یا Colab در دسترس قرار داد. برای جزئیات بیشتر، دموها، راهنماها و اطلاعات مربوط به استفاده از WIT در حالت نوت بوک، به وب سایت What-If Tool مراجعه کنید.
الزامات
برای استفاده از WIT در TensorBoard، دو چیز ضروری است:
- مدل(هایی) که می خواهید کاوش کنید باید با استفاده از سرویس TensorFlow با استفاده از طبقه بندی، پسرفت یا پیش بینی API ارائه شوند.
- مجموعه داده ای که باید توسط مدل ها استنباط شود باید در یک فایل TFRecord باشد که توسط وب سرور TensorBoard قابل دسترسی است.
استفاده
هنگام باز کردن داشبورد What-If Tool در TensorBoard، صفحه راه اندازی را می بینید که در آن میزبان و پورت سرور مدل، نام مدل در حال ارائه، نوع مدل و مسیر فایل TFRecords را ارائه می دهید. بار. پس از پر کردن این اطلاعات و کلیک بر روی "پذیرش"، WIT مجموعه داده را بارگیری می کند و استنتاج را با مدل اجرا می کند و نتایج را نمایش می دهد.
برای جزئیات بیشتر در مورد ویژگیهای مختلف WIT و اینکه چگونه آنها میتوانند به درک مدل و بررسیهای عادلانه کمک کنند، به راهنمای وبسایت What-If Tool مراجعه کنید.
مدل آزمایشی و مجموعه داده
اگر می خواهید WIT را در TensorBoard با یک مدل از پیش آموزش دیده آزمایش کنید، می توانید یک مدل و مجموعه داده از پیش آموزش دیده را از https://storage.googleapis.com/what-if-tool-resources/uci-census دانلود و از حالت فشرده خارج کنید. -demo/uci-census-demo.zip این مدل یک مدل طبقهبندی باینری است که از مجموعه داده سرشماری UCI برای پیشبینی درآمد بیش از 50 هزار دلار در سال استفاده میکند. این مجموعه داده و وظیفه پیشبینی اغلب در مدلسازی یادگیری ماشین و تحقیقات عادلانه استفاده میشود.
متغیر محیطی MODEL_PATH را در محل دایرکتوری مدل به دست آمده در دستگاه خود تنظیم کنید.
Docker و TensorFlow Serving را طبق اسناد رسمی نصب کنید.
مدل را با استفاده از docker از طریق docker run -p 8500:8500 --mount type=bind,source=${MODEL_PATH},target=/models/uci_income -e MODEL_NAME=uci_income -t tensorflow/serving
توجه داشته باشید که ممکن است لازم باشد دستور را با sudo
اجرا کنید بسته به تنظیمات docker خود.
اکنون تنسوربرد را اجرا کنید و از منوی کشویی داشبورد برای رفتن به ابزار What-If استفاده کنید.
در صفحه تنظیم، آدرس استنتاج را روی "localhost:8500"، نام مدل را روی "uci_income" و مسیر نمونه ها را تا مسیر کامل فایل adult.tfrecord
تنظیم کنید، سپس "Accept" را فشار دهید.
برخی از مواردی که باید با ابزار What-If در این نسخه آزمایشی امتحان کنید عبارتند از:
- ویرایش یک نقطه داده و مشاهده تغییر نتیجه در استنتاج.
- کاوش رابطه بین ویژگیهای فردی در مجموعه داده و استنتاج مدل از طریق نمودارهای وابستگی جزئی حاصل میشود.
- برش مجموعه داده به زیر مجموعه ها و مقایسه عملکرد بین برش ها.
برای نگاهی عمیق به ویژگیهای ابزار، راهنمای What-If Tool را بررسی کنید.
توجه داشته باشید که ویژگی حقیقت پایه در مجموعه داده ای که این مدل سعی در پیش بینی آن دارد، "هدف" نام دارد، بنابراین هنگام استفاده از برگه "عملکرد و انصاف"، "هدف" همان چیزی است که می خواهید در کشویی ویژگی حقیقت پایه مشخص کنید.