Giải thích đầu ra của các tính năng wrt phân loại nhất định


7

Đưa ra một phân loại nhị phân, luôn luôn có thể giải thích tại sao nó đã phân loại một số đầu vào là một lớp tích cực? Và ý tôi là, nếu chúng ta có một bộ tính năng lớn, thì có một công cụ nói: 'Đối với đầu ra này, đây là những tính năng chịu trách nhiệm cao nhất cho việc gắn nhãn là tích cực'?

Cảm ơn !


Bạn có thể mượn một trang từ giấy LIME và phù hợp với mô hình có thể hiểu được tại địa phương ; hồi quy logistic.
Emre

Một cây quyết định là rất có thể trình bày / giải thích.
Hobbes

Câu trả lời:


3

Hãy thử một số ví dụ trong thư viện này, trong đó cố gắng sử dụng học máy để hiểu các mô hình học máy hộp đen trong Python:

https://github.com/TeamHG-Memex/eli5


Nghe về điều này trong một cuộc nói chuyện tại một conf. ngày hôm qua: D. Tuy nhiên, cố gắng để tạo ra thuật toán không phải là cây. giải thích bản thân là phức tạp không cần thiết. Nhưng, đó là một ý kiến ​​cá nhân!
Dawny33

Đó là những gì tôi đang tìm kiếm ngoại trừ hiện tại tôi đang sử dụng các máy nhân tố và điều đó không có trong ELI5. Tuy nhiên, tôi sẽ xem cách nó thực hiện cho các thuật toán được bao gồm, cảm ơn!
mlx

@CalZ cảm ơn vì liên kết, ấn tượng của nó sẽ dùng thử.
Xformer

2

Thật khó để đưa ra một câu trả lời rất hay cho một câu hỏi rộng như vậy.

Khả năng diễn giải mô hình là một chủ đề lớn và thường phụ thuộc vào mô hình. Các mô hình đơn giản hơn, chẳng hạn như hồi quy logistic, dễ diễn giải hơn các mạng thần kinh. Thật dễ dàng để nói những điều như "nếu tôi có thể tăng tính năngXTôi bằng 1, sau đó tỷ lệ cược của y xảy ra sẽ tăng lên bởi βTôi".

Tương tự như vậy, các cây quyết định riêng lẻ dễ giải thích hơn các khu rừng ngẫu nhiên. Tuy nhiên, một số người cố gắng diễn giải các khu rừng ngẫu nhiên bằng cách tính "tầm quan trọng của tính năng", có thể được tính toán theo nhiều cách, một trong số đó là số lần phân tách bao gồm tính năng liên quan đến số lượng mẫu mà nó phân tách.

Bạn muốn một cách để coi mô hình của bạn như một hộp đen và có thể diễn giải bất kỳ mô hình nào?

Tôi có thể nghĩ về hai cách:

  1. Thao tác với đầu vào của bạn và xem điều gì xảy ra với thông số, sử dụng mẫu của bạn

Một cách điển hình là thay đổi đầu vào và xem tác động đến hiệu suất của mô hình. Trong hình ảnh, bạn có thể bôi đen các phần của hình ảnh và xem phần nào đóng góp nhiều nhất cho độ chính xác. Điều này được sử dụng rộng rãi cho các mạng thần kinh tích chập, rất khó để giải thích khác.

Đối với các biến số, bạn có thể loại bỏ hoặc thêm một số nhiễu cho từng tính năng và xem tác động của tính năng riêng lẻ đó đến kết quả.

Tôi đã thấy những loại điều được sử dụng rộng rãi.

  1. Đào tạo có và không có tính năng

Tương tự như phần trước, ngoại trừ bạn luyện tập có và không có tính năng này, và xem tác động của nó đến độ chính xác của mô hình.

Điều này có thêm lợi ích mà bạn không phải suy nghĩ về các siêu âm như mức độ nhiễu bạn sẽ thêm vào mỗi tính năng như cách tiếp cận trước đó. Hơn nữa, bạn có thể hiểu rõ hơn về tác động của một số tính năng trong đầu ra bằng cách thử có và không có các tính năng đó.

Tôi chưa thấy cách tiếp cận này được sử dụng, nhưng rõ ràng nó cũng đang được sử dụng, như một người khác trả lời.


Dù sao, tôi sẽ tránh được những vụ hack như vậy. Hầu hết các mô hình có thể được thực hiện bằng cách nào đó có thể giải thích. Tôi đã thấy mọi người thậm chí làm cho các mạng thần kinh tái phát có thể hiểu được. Và, nếu khả năng diễn giải là một mối quan tâm, chỉ cần sử dụng một mô hình đơn giản hơn để dễ giải thích và giải thích.


0

Thật thú vị, tôi chưa nghe nói về điều đó nhưng ma trận tương quan giữa các tính năng và biến mục tiêu sẽ cho bạn ý tưởng để mở rộng nhất định. Nếu mối tương quan ở phía cao hơn thì nhiều khả năng những tính năng đó sẽ có tiếng nói cao hơn trong khi dự đoán mục tiêu. Nếu bạn đang sử dụng python, tôi sẽ đề nghị bạn hình dung ma trận tương quan bằng cách sử dụng seaborn ở đây là mã mẫu 1 .


Đây là một cách để bắt đầu. Nhưng một lần nữa, các phương pháp lựa chọn tính năng thường tìm ra các yếu tố đầu vào rất quan trọng để khái quát hóa vì nó xem xét toàn bộ tập dữ liệu và cung cấp những gì có thể là một khung nhìn tập hợp hữu ích. Điều tuyệt vời là cung cấp một câu trả lời cho câu hỏi đó trên cơ sở ví dụ!
mlx

Đồng ý, điều này có thể rất hữu ích để tạo ra nhiều tính năng mạnh mẽ hơn. Đây là một chủ đề tôi sẽ theo dõi thường xuyên cho chắc chắn. :)
Xformer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.