Công cụ What-If (WIT) cung cấp giao diện dễ sử dụng để mở rộng hiểu biết về các mô hình ML phân loại và hồi quy hộp đen. Với plugin, bạn có thể thực hiện suy luận trên một tập hợp lớn các ví dụ và trực quan hóa ngay kết quả theo nhiều cách khác nhau. Ngoài ra, các ví dụ có thể được chỉnh sửa thủ công hoặc lập trình và chạy lại mô hình để xem kết quả của những thay đổi. Nó chứa công cụ để điều tra hiệu suất và tính công bằng của mô hình trên các tập hợp con của tập dữ liệu.
Mục đích của công cụ này là cung cấp cho mọi người một cách đơn giản, trực quan và mạnh mẽ để khám phá và điều tra các mô hình ML đã được đào tạo thông qua giao diện trực quan hoàn toàn không cần mã.
Bạn có thể truy cập công cụ này thông qua TensorBoard hoặc trực tiếp trong sổ ghi chép Jupyter hoặc Colab. Để biết thêm chi tiết chuyên sâu, bản trình diễn, hướng dẫn và thông tin cụ thể về cách sử dụng WIT ở chế độ sổ tay, hãy xem trang web Công cụ What-If .
Yêu cầu
Để sử dụng WIT trong TensorBoard, cần có hai điều:
- (Các) mô hình bạn muốn khám phá phải được cung cấp bằng cách sử dụng Dịch vụ TensorFlow bằng cách sử dụng API phân loại, hồi quy hoặc dự đoán.
- Tập dữ liệu được các mô hình suy ra phải ở dạng tệp TFRecord có thể truy cập được bằng máy chủ web TensorBoard.
Cách sử dụng
Khi mở bảng điều khiển What-If Tool trong TensorBoard, bạn sẽ thấy màn hình thiết lập nơi bạn cung cấp máy chủ và cổng của máy chủ mô hình, tên của mô hình đang được cung cấp, loại mô hình và đường dẫn đến tệp TFRecords tới trọng tải. Sau khi điền thông tin này và nhấp vào "Chấp nhận", WIT sẽ tải tập dữ liệu và chạy suy luận với mô hình, hiển thị kết quả.
Để biết chi tiết về các tính năng khác nhau của WIT và cách chúng có thể hỗ trợ việc hiểu mô hình và điều tra tính công bằng, hãy xem hướng dẫn trên trang web Công cụ What-If .
Mô hình demo và tập dữ liệu
Nếu muốn thử nghiệm WIT trong TensorBoard bằng mô hình được đào tạo trước, bạn có thể tải xuống và giải nén mô hình và tập dữ liệu được đào tạo trước từ https://storage.googleapis.com/what-if-tool-resources/uci-census -demo/uci-census-demo.zip Mô hình này là mô hình phân loại nhị phân sử dụng tập dữ liệu Điều tra dân số UCI để dự đoán liệu một người có kiếm được hơn 50 nghìn đô la một năm hay không. Nhiệm vụ dự đoán và tập dữ liệu này thường được sử dụng trong nghiên cứu tính công bằng và mô hình học máy.
Đặt biến môi trường MODEL_PATH thành vị trí của thư mục mô hình kết quả trên máy của bạn.
Cài đặt docker và TensorFlow Serve theo tài liệu chính thức .
Phục vụ mô hình bằng cách sử dụng docker thông qua docker run -p 8500:8500 --mount type=bind,source=${MODEL_PATH},target=/models/uci_income -e MODEL_NAME=uci_income -t tensorflow/serving
. Lưu ý rằng bạn có thể cần chạy lệnh bằng sudo
tùy thuộc vào thiết lập docker của bạn.
Bây giờ hãy khởi chạy tensorboard và sử dụng bảng điều khiển thả xuống để điều hướng đến Công cụ What-If.
Trên màn hình thiết lập, đặt địa chỉ suy luận thành "localhost:8500", tên mô hình thành "uci_ thu nhập" và đường dẫn đến ví dụ đến đường dẫn đầy đủ đến tệp adult.tfrecord
đã tải xuống, sau đó nhấn "Chấp nhận".
Một số điều cần thử với Công cụ What-If trong bản demo này bao gồm:
- Chỉnh sửa một điểm dữ liệu duy nhất và thấy sự thay đổi trong suy luận.
- Khám phá mối quan hệ giữa các tính năng riêng lẻ trong tập dữ liệu và kết quả suy luận của mô hình thông qua các biểu đồ phụ thuộc một phần.
- Cắt tập dữ liệu thành các tập hợp con và so sánh hiệu suất giữa các lát.
Để có cái nhìn sâu hơn về các tính năng của công cụ, hãy xem hướng dẫn về Công cụ What-If .
Lưu ý tính năng thực tế cơ bản trong tập dữ liệu mà mô hình này đang cố gắng dự đoán có tên là "Mục tiêu", vì vậy, khi sử dụng tab "Hiệu suất & Công bằng", "Mục tiêu" là nội dung bạn sẽ muốn chỉ định trong danh sách thả xuống tính năng thực tế.