You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Nếu bạn hay theo dõi và cập nhật những tin tức về công nghệ và lập trình thì hẳn bạn đã biết về một công cụ lập trình AI mới mang tên Copilot vừa được GitHub chính thức trình làng trong thời gian vừa qua. Nếu bạn chưa biết thì đừng lo lắng vì trong blog này, ZootoPi sẽ giới thiệu cho các bạn về [Copilot](https://copilot.github.com/), người bạn đồng hành hứa hẹn sẽ hỗ trợ anh em code cực kì bá đạo.
11
11
@@ -62,3 +62,7 @@ Vậy những mã nguồn mà Copilot gợi ý ở đây được lấy từ đ
62
62
| Kiểm thử tốn ít công sức. | Không giúp bạn trở thành một lập trình viên giỏi. |
63
63
64
64
Đón xem những trải nghiệm và phân tích cụ thể hơn về Copilot tại kênh [ZootoPi](https://youtu.be/jCCbCPVXcpQ).
description: XAI - MỞ CHIẾC "HỘP ĐEN" PHÍA SAU QUYẾT ĐỊNH CỦA AI
4
+
<!-- author: Hồng Hạnh -->
5
+
<!-- author_url: https://github.com/honghanhh -->
6
+
---
7
+
8
+
# 🔥XAI - Mở chiếc hộp đen phía sau quyết định của AI🔥
9
+
10
+
Sau 1 thời gian vắng bóng team ZootoPi chúng mình đã quay lại và hứa hẹn sẽ lợi hại hơn xưa. Mở đầu năm mới, hãy cùng chúng mình dành 1 phút để tìm hiểu về một trong những lĩnh vực không quá mới nhưng đang rất được quan tâm hiện nay - XAI (hay còn gọi là Explainable AI - Diễn giải AI).
11
+
12
+
Những năm gần đây, các thuật toán học máy (ML) và học sâu (DL) ngày càng được ứng dụng trong nhiều lĩnh vực từ y tế, kinh tế, đến tài chính. Các thuật toán liên tục được cải tiến phức tạp hơn để đạt được hiệu quả tối ưu trong hiệu suất cũng như độ chính xác. Tuy khả năng dự đoán mạnh mẽ hơn, các mô hình này vẫn được xem như các hộp đen (black boxes) với hàng loạt phân vân đến từ người dùng như: Làm sao để biết tại sao AI lại đưa ra quyết định này mà không phải quyết định khác? Khi nào thì mô hình dự đoán thành công? Khi nào thất bại? Khi nào có thể tin vào dự đoán của AI?
13
+
14
+

15
+
16
+
<!--truncate-->
17
+
18
+
Những câu hỏi trên cho ta thấy nhu cầu hiểu được lí do đằng sau 1 dự đoán từ mô hình AI ngày càng cần thiết. Song song với đó là việc giữ cân bằng giữa độ chính xác và khả năng giải thích của 1 mô hình AI - điều mà rất nhiều mô hình ML và DL chưa giải quyết được. Do đó, XAI ra đời để giúp các thuật toán trở nên minh bạch hơn và thay đổi các mô hình AI theo hướng lấy người dùng làm trung tâm (user-centricity). Điều này giúp mô hình AI dễ ứng dụng trong nhiều lĩnh vực khác nhau. Bên cạnh đó, XAI không chỉ giúp việc đánh giá độ tin cậy của 1 mô hình AI trở nên dễ dàng hơn mà còn giúp người dùng có thể tương tác và học hỏi qua lại với AI.
19
+
20
+
Các phần tiếp theo trong hành trình cùng ZootoPI tìm hiểu về XAI sẽ tiếp tục được lên sóng trong thời gian tới, bao gồm: các phương pháp diễn giải model ML/DL, đánh giá việc diễn giải model AI, và các thư viện hỗ trợ XAI. Các bạn hãy dành 1 phút mỗi tuần để đồng hành cùng chúng mình nhé!
21
+
22
+
Đón xem những trải nghiệm và phân tích cụ thể từ Zootopi tại:
description: XAI - Các phương pháp diễn giải mô hình học máy và học sâu
4
+
<!-- author: Hồng Hạnh -->
5
+
<!-- author_url: https://github.com/honghanhh -->
6
+
---
7
+
8
+
# 🔥XAI - Phân loại các phương pháp diễn giải mô hình học máy🔥
9
+
10
+
Tiếp nối hành trình tìm hiểu về XAI cùng ZootoPi (tham khảo bài trước về [XAI - Chiếc hộp đen phía sau AI](https://zootopi.dev/blog/2022/02/12/xai)), 1 phút hôm nay hãy cùng chúng mình phân loại các phương pháp diễn giải 1 mô hình học máy. Cấu trúc của việc giải thích 1 mô hình học máy có thể được xác định bằng nhiều cách khác nhau dựa vào mục đích, thời điểm, hay tính ứng dụng, nhưng phần lớn đều có thể được phân chia theo 3 nhóm chính:
11
+
12
+
- Nội tại (intrinsic) hay hậu tại (post-hoc)?
13
+
- Mô hình bất khả tri (model-agnostic) hay Mô hình cụ thể (model-specific)?
14
+
- Cục bộ (local) hay toàn cục (global)?
15
+
16
+

17
+
18
+
<!--truncate-->
19
+
20
+
## 1. Nội tại (intrinsic) hay hậu tại (post-hoc)?
21
+
22
+
Phương pháp nội tại đề cập đến việc giới hạn độ phức tạp của mô hình. Khi các mô hình đủ đơn giản về cấu trúc, chúng ta có thể hiểu cách mô hình đưa ra dự đoán bằng việc nhìn vào chính mô hình. Ví dụ như các trọng số đã học của 1 mô hình hồi quy tuyến tính (linear regression) hoặc các đường phân chia đã được học với cây quyết định (decision tree) có thể được dùng để giải thích tại sao mô hình lại đưa ra các dự đoán.
23
+
24
+
- Một số mô hình nội tại phổ biến bao gồm: Linear Regression, Logistic Regression, GLM, GAM, Decision Tree, Decision Rules, RuleFit, KNN, Naive Bayes,...
25
+
26
+
Trong khi đó, các phương pháp hậu tại phân tích mô hình sau khi đã được đào tạo, ví dụ như việc hoán vị các đặc trưng quan trọng (permutation feature importance). Các phương pháp này gồm 2 nhánh nhỏ là mô hình bất khả tri (model-agnostic) và mô hình cụ thể (model-specific).
27
+
28
+
## 2. Mô hình bất khả tri (model-agnostic) hay Mô hình cụ thể (model-specific)?
29
+
30
+
Mô hình bất khả tri có thể được áp dụng cho bất kì mô hình học máy nào trong khi mô hình cụ thể chỉ có thể áp dụng cho 1 số loại mô hình nhất định. Ví dụ, nếu một phương pháp chỉ hoạt động với mạng neuron (Neural Network) thì nó sẽ được coi là dành riêng cho mô hình đó. Ngược lại, nếu 1 phương pháp giải thích coi mọi mô hình đã được đào tạo là hộp đen thì nó sẽ được coi là mô hình bất khả tri.
31
+
32
+
## 3. Cục bộ (local) hay toàn cục (global)?
33
+
34
+
Phương pháp giải thích cục bộ nhằm giải thích 1 điểm dữ liệu hoặc 1 dự đoán duy nhất trong khi phương pháp toàn cục cố gắng cung cấp lời giải thích toàn diện về cách mô hình hoạt động dựa trên toàn bộ dữ liệu và dự đoán. Các phương pháp cục bộ có thể biến thành kỹ thuật toàn cục thông qua việc tổng hợp các kết quả cục bộ.
35
+
36
+
- Một số ví dụ cho phương pháp cục bộ có thể kể đến Individual Conditional Expectation Curves, LIME, Scoped Rules (anchors), Counterfactual Explanations, Shapley values, SHAP, ...
37
+
- Một số phương pháp toàn cục phổ biến bao gồm Partial dependence plot, Accumulated local effect plots, Feature interaction (H-statistics), Functional decomposition, Permutation feature importance, Global surrogate models, Prototypes and criticisms, ...
38
+
39
+
Chi tiết về các phương pháp sẽ được chúng mình lên sóng trong thời gian tới, đừng quên follow hashtag #XAI #1phutaicungzootopi để không bỏ lỡ nhé!
40
+
41
+
Đón xem những trải nghiệm và phân tích cụ thể từ Zootopi tại:
Khi xây dựng 1 mô hình học máy (ML) chắc hẳn chúng ta đều quen thuộc với việc sử dụng chỉ số quan trọng của các đặc trưng (feature importance) để lựa chọn đặc trưng cho mô hình. Chỉ số này giúp chúng ta biết điều gì quan trọng với mô hình, tuy nhiên, các bạn đã bao giờ thắc mắc những đặc trưng này liên quan như thế nào đến các dự đoán của mô hình?
11
+
12
+
Ví dụ trong bài toán dự đoán giá nhà, kinh độ và vĩ độ có ảnh hưởng như thế nào đến giá nhà? Những ngôi nhà có cùng kích thước ở các vị trí khác nhau liệu có giá khác nhau? Hay những ngôi nhà khác kích thước trên cùng khu vực liệu giá sẽ thay đổi như thế nào?
13
+
14
+
Partial Dependence Plot (PDP) hay còn gọi là Biểu đồ Phụ thuộc Từng phần sẽ giúp chúng ta trả lời những câu hỏi trên.
15
+
16
+

17
+
18
+
<!--truncate-->
19
+
20
+
Biểu đồ PDP cho thấy tác động cận biên (marginal effect) của 1 (hoặc một vài) đặc trưng được chọn lọc đối với kết quả dự đoán của mô hình. Nói cách khác, chúng ta có thể hiểu sự phụ thuộc một phần (partial dependence) là kết quả dự đoán được mong đợi (expected target) dưới dạng một hàm của các đặc trưng đã được chọn lựa để đưa vào mô hình.
21
+
22
+
Một ví dụ có thể thấy ở hình dưới là sự ảnh hưởng của độ tuổi trung bình của nhà lên giá trị trung bình của ngôi nhà đó. Hay với những ngôi nhà có `AveOccup` (số lượng người cư trú trung bình) nhỏ hơn 2, thì giá nhà phụ thuộc khá lớn vào độ tuổi của căn nhà, trong khi nếu `AveOccup` lớn hơn 2, thì độ tuổi và giá nhà gần như không phụ thuộc.
23
+
24
+
Để giúp các bạn dễ hình dung hơn về Biểu đồ Phụ thuộc Từng Phần, chúng ta sẽ cùng nhau thực hành trên một mô hình đơn giản với bộ dữ liệu về giá nhà trung bình California Housing Dataset (trên Scikit-Learn). Tham khảo bài thực hành đơn giản tại bài viết [XAI - Thực hành với Biểu đồ Phụ thuộc Từng Phần](https://zootopi.dev/blog/2022/02/15/xai2-thuc-hanh/).
25
+
26
+
Các thư viện hỗ trợ tạo biểu đồ PDP bao gồm:
27
+
28
+
- Scikit-learn: Module sklearn.inspection cung cấp cho chúng mình hàm plot_partial_dependence() để tạo ra biểu đồ PDP một cách nhanh chóng. Tham khảo [https://scikit-learn.org/stable/modules/partial_dependence.html](https://scikit-learn.org/stable/modules/partial_dependence.html)
29
+
- PDPbox: một thư viện hỗ trợ biểu diễn các đồ thị một cách nhanh chóng, bao gồm biểu đồ PDP. Tham khảo [https://github.com/SauceCat/PDPbox](https://github.com/SauceCat/PDPbox)
0 commit comments