Professional Documents
Culture Documents
2021
v1.0
Mục lục
1 Giới thiệu 12
1.1 Những câu chuyện dẫn dắt . . . . . . . . . . . . . . . . . . . . 13
1.2 Machine learning là gì? . . . . . . . . . . . . . . . . . . . . . . 13
1.3 Thuật ngữ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Các bộ dữ liệu 43
3.1 Thuê xe đạp (Hồi quy) . . . . . . . . . . . . . . . . . . . . . . 43
3.2 Bình luận rác trên Youtube (Phân loại văn bản) . . . . . . . . 44
3
3.3 Các nguy cơ gây ung thư cổ tử cung (Phân loại) . . . . . . . . 45
10
(học sâu hiệu quả), Deep Generative Models (mô hình sinh sâu), hay Rein-
forcement Learning (học củng cố)... Theo chúng tôi thấy, Deep Learning thực
sự rất phù hợp với những bạn mới tiếp xúc với Machine Learning hoặc có
mục đích đi làm. Nhưng với những bạn muốn đi học lên cao hoặc đi theo con
đường nghiên cứu, việc đào sâu và tìm hiểu các mảng khác sẽ giúp các bạn
có được khả năng viết những công trình khoa học và mở rộng tầm nhìn tới
con đường khám phá tri thức khoa học phía trước. Với bản dịch này, chúng
tôi hi vọng có thể đóng góp một phần nhỏ bé giúp cộng đồng học Machine
Learning ở Việt Nam lớn mạnh hơn bằng cách giới thiệu một hướng đi mới:
học máy khả diễn giải (Interpretable Machine Learning).
Mọi tài liệu liên quan đến bản dịch này được lưu trữ qua Github ở đây.
Phản hồi và ý kiến đóng góp xin gửi về hòm thư nguyengiangbkhn@gmail.com.
Chương 1
Giới thiệu
Cuốn sách này giúp giải thích cách hoạt động của các mô hình học máy
được huấn luyện theo phương pháp học có giám sát (supervised learning).
Mặc dù cuốn sách có bao gồm nhiều công thức toán học, nhưng tôi tin rằng
việc hiểu được ý tưởng chung đằng sau các phương pháp sẽ giúp bạn dễ
dàng tiếp cận cuốn sách này hơn là quá quan tâm chi tiết đến các công thức
đó. Một lưu ý nữa cuốn sách này không dành cho các bạn mới học Machine
Learning hoặc chưa có kinh nghiệm làm việc thực tế với Machine Learning,
vì thế ta có thể coi cuốn sách này như là Machine Learning nâng cao. Từ đó,
nếu thấy cần thiết, hãy bắt đầu với những khóa học trực tuyến giới thiệu về
Machine Learning của Andrew Ng hoặc tìm đọc cuốn Machine Learning cơ
bản (Vũ Hữu Tiệp).
Ngày càng nhiều phương pháp mới được tìm ra nhằm giải thích tính
nhân quả của các mô hình Machine Learning. Do vậy, việc bao hàm tất cả
các phương pháp trong một cuốn sách là không thể, tuy nhiên ta sẽ tìm hiểu
những kiến thức cơ bản nhất về học máy khả diễn giải và các phương pháp
nổi tiếng trong tài liệu này.
Cuốn sách bắt đầu bằng định nghĩa về tính khả diễn giải (interpretability),
ta sẽ cùng thảo luận tại sao ta cần quan tâm đến tính khả diễn giải trong
Machine Learning. Hầu hết các mô hình và phương pháp trong cuốn sách
này sử dụng các dữ liệu trong chương 3. Để giải thích một mô hình, cách đơn
giản nhất là bản thân chính mô hình đó là khả diễn giải, ví dụ như những
dạng mô hình đơn giản như hồi quy tuyến tính hay cây quyết định. Bên cạnh
đó, một cách tiếp cận khác là ta sử dụng những công cụ phân tích kiểu mẫu
(model-agnostic interpretation tools), nghĩa là công cụ của chúng ta có thể
12
được áp dụng trên bất kì mô hình Machine Learning nào để phân tích tính
nhân quả. Ví dụ như một công cụ có thể vừa giải thích được cây quyết định,
mạng neuron, hay hồi quy tuyến tính. Cuối cuốn sách, ta sẽ nhìn lại và cùng
nhau dự đoán tương lai của học máy khả diễn giải.
Trong những tác vụ như chơi cờ (Go Chess) hay dự báo thời tiết, Machine
Learning đang và đã thể hiện sự vượt trội so với con người. Thêm vào đó,
Machine Learning còn có thể thực hiện công việc một cách nhanh chóng và
được triển khai rộng rãi. Một ví dụ rõ ràng đó là các camera giám sát thông
minh (intelligent surveillance camera) ở Trung Quốc đều có tích hợp công
nghệ trí tuệ nhân tạo để có thể giám sát người dân. Trong khi đó, việc đào
tạo cho con người thực hiện thuần thục một công việc cụ thể có thể mất vài
tuần, thậm chí là vài năm.
Tuy nhiên, một vấn đề lớn của việc sử dụng Machine Learning đó là ta
không thể hiểu được các mô hình học từ dữ liệu như thế nào. Việc xây dựng
một hàm ánh xạ giữa đầu vào và đầu ra của một mô hình được thực hiện
trong quá trình huấn luyện, đầu ra cuối cùng có sự đóng góp của tất cả các
phần tử trong mạng. Do đó, việc diễn giải cơ chế hoạt động của một mô hình
bằng công thức toán học gần như là điều không thể trong hầu hết các trường
hợp.
Hiện nay, các mô hình giành chiến thắng trong các cuộc thi thường là các
mô hình hợp (ensemble models), dẫn đến việc cấu trúc của chúng trở nên
cực kỳ phức tạp. Thậm chí nếu từng mô hình con trong mô hình hợp là khả
diễn giải, việc giải thích vẫn sẽ rất khó khăn.
1.3 Thuật ngữ
Để tránh nhầm lẫn trong quá trình học cuốn sách này, một số thuật ngữ
cơ bản sẽ được định nghĩa như sau.
Thuật toán là một tập các quy tắc mà máy tính tuân theo để đạt được
một mục tiêu nhất định. Một thuật toán có thể được định nghĩa bởi đầu vào,
đầu ra và các bước cần thiết để biến đổi đầu vào thành đầu ra.
Machine Learning hay học máy là một tập hợp các phương pháp cho
phép máy tính học từ dữ liệu cho trước để tạo ra dự đoán sau này (ví dụ như
dự đoán bệnh ung thư, giá bán hàng, giá cổ phiếu, ...). Học máy có thể được
coi là một sự chuyển đổi của công việc lập trình khi mà thay vì con người
phải chỉ rõ các lệnh cần thực hiện cho máy tính thì ta sẽ để máy tính tự học
từ dữ liệu.
Một bộ học (learner) hay một thuật toán Machine Learning là chương
trình được dùng để học một mô hình từ dữ liệu.
Mô hình Machine Learning là một chương trình máy tính thực thi tác
vụ ánh xạ dữ liệu đầu vào và đầu ra. Mô hình này có thể là một tập hợp của
các trọng số của mô hình tuyến tính hay một mạng neuron. Ngoài ra, trong
tùy từng nhiệm vụ cụ thể, một mô hình còn có thể được gọi như một bộ dự
đoán (predictor), bộ phân loại (classifier), hay mô hình hồi quy (regression
model). Trong các công thức tính toán, một mô hình học máy sẽ được kí hiệu
là fˆ hoặc fˆpxq.
Hình 1.2: Một bộ học xây dựng mô hình từ các dữ liệu huấn luyện được gắn
nhãn. Mô hình sau đó sẽ được sử dụng trong việc dự đoán.
Hình 1.3: Máy tính không thể giải thích dự đoán của chúng.
Học máy khả diễn giải là lĩnh vực liên quan tới các mô hình khả diễn
giải và phương pháp nhằm giải thích cơ chế hoạt động các mô hình Machine
Learning cho người dùng.
Tập dữ liệu là một bảng dữ liệu mà từ đó máy móc có thể học được. Tập
dữ liệu bao gồm các đặc trưng và mục tiêu cho việc dự đoán. Khi sử dụng để
tạo ra một mô hình, tập dữ liệu được gọi là dữ liệu huấn luyện.
Thể hiện hay một điểm dữ liệu hay một quan sát là một hàng trong tập
dữ liệu. Một thể hiện bao gồm các đặc trưng xpiq và đầu ra mong muốn (nếu
có ) yi .
Đặc trưng là các đầu vào sử dụng cho việc dự đoán hoặc phân loại. Một
đặc trưng là một cột trong tập dữ liệu. Trong tài liệu này, các đặc trưng được
giả thiết là khả diễn giải, nghĩa là bản thân chúng đơn giản và dễ hiểu, ví dụ
như nhiệt độ trong ngày hay chiều cao của một người. Sự khả diễn giải của
các đặc trưng là một giả thiết quan trọng, vì nếu đặc trưng khó hiểu, việc
hiểu mô hình được xây dựng từ đặc trưng đó sẽ thậm chí còn khó khăn hơn.
Ma trận của tất cả các đặc trưng được gọi là X và xpiq đại diện cho một điểm
dữ liệu. Vector của một đặc trưng cho tất cả các điểm dữ liệu là xj và giá trị
piq
đặc trưng thứ j của thể hiện thứ i là xj .
Mục tiêu là thông tin mà mô hình muốn dự đoán. Trong các công thức
toán học, mục tiêu được ký hiệu là y hoặc yi cho thể hiện thứ i.
Một bài toán học máy là tổ hợp của một tập dữ liệu với các đặc trưng
và mục tiêu. Tùy thuộc vào kiểu mục tiêu, bài toán có thể là phân loại, hồi
quy, phân tích, gộp nhóm, hoặc phát hiện ngoại lai.
Dự đoán là giá trị đầu ra mà mô hình học máy “đoán” dựa trên các đặc
trưng được cho. Trong cuốn sách này, dự đoán của mô hình được ký hiệu là
fˆpxpiq q hoặc ŷ.
Chương 2
18
2.1 Tại sao ta cần tính khả diễn giải?
Nếu một mô hình thực hiện công việc một cách hiệu quả, tại sao ta phải
quan tâm tới những gì xảy ra bên trong nó? Một vấn đề rõ ràng đó là các bài
toán hiện nay được thực hiện trên máy tính và kiểm chứng bằng các thông
số nhất định. Ví dụ như trong bài toán phân loại thì độ chính xác sẽ là thước
đo. Tuy nhiên, các thước đo này thường không thỏa mãn được các bài toán
trong thực tế khi mà môi trường và dữ liệu có thể thay đổi và khác với dữ
liệu trong quá trình huấn luyện.
Ta hãy cùng tìm hiểu sâu hơn về lý do tại sao tính khả diễn giải lại quan
trọng như vậy. Khi nói đến việc dự đoán của mô hình học máy, có một sự
đánh đổi (trade-off): Ta chỉ muốn biết những gì được dự đoán? Ví dụ, xác
suất mà khách hàng sẽ bỏ đi hoặc mức độ hiệu quả của một số loại thuốc
đối với bệnh nhân. Hay ta muốn biết tại sao dự đoán được đưa ra. Mức độ
khả diễn giải mà ta có tỉ lệ nghịch với hiệu năng của mô hình? Trong một số
trường hợp, ta không quan tâm tới nguyên nhận của một dự đoán, mà chỉ
cần hiệu suất dự đoán trên tập dữ liệu kiểm tra (test dataset) là tốt. Nhưng
trong các trường hợp khác, việc biết “tại sao” giúp ta đào sâu vào bài toán,
dữ liệu, và lý do tại sao một mô hình không hoạt động như mong muốn. Một
số mô hình có thể không yêu cầu tính khả diễn giải vì chúng được sử dụng
trong môi trường rủi ro thấp, có nghĩa là một sai lầm sẽ không gây ra hậu
quả nghiêm trọng, (ví dụ: hệ thống nhận xét/ đánh giá phim) hoặc những
phương pháp đã được nghiên cứu và đánh giá rộng rãi (ví dụ: nhận dạng ký
tự quang học). Nhu cầu về tính khả diễn giải nảy sinh do sự thiếu hoàn thiện
trong quá trình chuẩn hóa vấn đề (Doshi-Velez và Kim 2017), nghĩa là đối
với một số vấn đề hoặc công việc nhất định thì việc dự đoán (cái gì) là vẫn
chưa đủ. Mô hình cũng phải giải thích cách đưa ra dự đoán (lý do tại sao),
bởi vì một dự đoán đúng chỉ giải quyết một phần vấn đề gốc rễ. Những lý
do sau đây dẫn dắt ta đến sự cần thiết của tính khả diễn giải (Doshi-Velez
và Kim 2017 và Miller 2017).
Sự tò mò và học hỏi Con người có bản năng tự cập nhật kiến thức khi
có một sự kiện mới xảy ra xung quanh. Việc cập nhật kiến thức được thực
hiện khi ta hiểu được câu trả lời tại sao cho các vấn đề đó. Giả dụ, khi một
người cảm thấy mệt mỏi, anh ta sẽ tự hỏi “Tại sao mình bị ốm nhỉ?”. Anh ta
sẽ nhớ lại việc mình làm mới đây. Anh ta nhận thấy rằng anh ta bị ốm mỗi
khi ăn những quả dâu đỏ. Anh ta cập nhật nhận thức của mình và quyết
định rằng dâu đỏ sẽ gây bệnh và tránh xa chúng.
Khi các mô hình học máy được sử dụng trong nghiên cứu, các phát hiện
khoa học vẫn hoàn toàn bị che giấu nếu mô hình chỉ đưa ra dự đoán mà
không có giải thích. Để tạo điều kiện cho việc học tập và thỏa mãn sự tò mò
về lý do tại sao các dự đoán hoặc hành vi nhất định được tạo ra bởi máy
móc, tính khả diễn giải và giải thích là rất quan trọng. Tất nhiên, con người
không cần giải thích cho mọi thứ xảy ra. Việc hầu hết mọi người không hiểu
cách hoạt động của máy tính là điều hoàn toàn bình thường. Tuy nhiên, các
sự kiện bất ngờ khiến ta tò mò. Ví dụ: Tại sao máy tính của tôi tắt đột ngột?
Liên quan chặt chẽ đến học tập là mong muốn đi tìm ý nghĩa của sự vật
sự việc. ta muốn hài hòa những mâu thuẫn hoặc sự thiếu nhất quán giữa các
yếu tố trong vốn kiến thức của ta. “Tại sao con chó của tôi lại cắn tôi mặc dù
nó chưa bao giờ làm như vậy trước đây”? Có một sự mâu thuẫn giữa hành
vi trước đây của con chó và hành vi cắn người mới đây . giải thích của bác
sĩ thú y gỡ bỏ mâu thuẫn của chủ nhân con chó: “Con chó đã bị căng thẳng
nên mới cắn”. Quyết định của máy móc càng ảnh hưởng đến cuộc sống của
con người, thì chúng càng cần giải thích hành vi. Nếu một mô hình học máy
từ chối đơn xin vay, điều này có thể hoàn toàn bất ngờ đối với những người
nộp đơn. Họ chỉ có thể dung hòa sự mâu thuẫn này giữa kỳ vọng và thực
tế bằng một số cách giải thích. Giải thích không thực sự phải trình bày đầy
đủ về tình hình, nhưng nên chỉ ra nguyên nhân chính. Một ví dụ khác là bài
toán đề xuất sản phẩm. Cá nhân tôi luôn nghĩ về lý do tại sao một số sản
phẩm hoặc bộ phim nhất định được giới thiệu theo thuật toán cho tôi. Thông
thường sẽ khá rõ ràng: Quảng cáo theo dõi tôi trên Internet bởi vì tôi mới
mua một chiếc máy giặt, và tôi biết rằng trong những ngày tới tôi sẽ bị theo
dõi bởi những quảng cáo về máy giặt. Đúng vậy, ta nên đề xuất găng tay
nếu tôi đã có mũ mùa đông trong giỏ hàng của mình. Với thuật toán đề xuất
phim, vì những người dùng đã thích các bộ phim khác mà tôi cũng thích nên
bộ phim mà họ thích mới đây được đề xuất cho tôi. Càng ngày, các công ty
Internet càng hoàn thiện việc giải thích cho các đề xuất của họ. Một ví dụ
điển hình là các đề xuất về sản phẩm, dựa trên các kết hợp sản phẩm được
mua thường xuyên:
Trong nhiều ngành khoa học, có sự thay đổi từ phương pháp định tính
Hình 2.1: Các sản phẩm được đề xuất vì thường xuyên được mua cùng nhau.
sang định lượng (ví dụ: xã hội học, tâm lý học) và cả xu hướng áp dụng học
máy (sinh học, di truyền học). Mục tiêu của khoa học là thu thập kiến
thức, nhưng nhiều vấn đề được giải quyết bằng dữ liệu lớn và mô hình học
máy hộp đen. Bản thân mô hình trở thành nguồn kiến thức thay vì dữ liệu.
Khả năng diễn giải giúp ta có thể trích xuất kiến thức mà mô hình đã học.
Các mô hình học máy đảm nhận các nhiệm vụ trong thế giới thực yêu
cầu tính an toàn và đã được kiểm nghiệm. Hãy tưởng tượng một chiếc xe
tự lái tự động phát hiện người đi xe đạp dựa trên hệ thống học sâu. Ta muốn
chắc chắn 100% rằng các kiến thức trừu tượng mà hệ thống đã học không có
vấn đề, bởi vì việc cán lên người đi xe đạp là không thể chấp nhận. Khi tai
nạn xảy ra, giải thích có thể cho rằng đặc điểm đã học quan trọng nhất cho
việc nhận dạng xe đạp là phát hiện được hai bánh của xe đạp và giải thích
này giúp ta suy nghĩ về các trường hợp hy hữu như xe đạp có túi bên nên đã
che một phần bánh xe.
Mặc định, các mô hình học máy thừa hưởng sai lệch (biases) từ dữ liệu
huấn luyện. Điều này có thể biến các mô hình học máy của ta trở nên phân
biệt chủng tộc, phân biệt đối xử với các nhóm thiểu số. Khả năng diễn giải
là một công cụ gỡ lỗi hữu ích để phát hiện thiên vị trong các mô hình học
máy. Có thể xảy ra trường hợp mô hình học máy mà ta đã huấn luyện để
phê duyệt tự động hoặc từ chối các đơn đăng ký tín dụng phân biệt đối xử
với một nhóm thiểu số đã bị tước quyền vay trong quá khứ. Mục tiêu chính
của ta là chỉ cấp khoản vay cho những người có khả năng trả nợ. Sự thiếu
toàn vẹn của việc thiết lập vấn đề trong trường hợp này nằm ở chỗ ta không
chỉ muốn giảm thiểu các khoản nợ xấu, mà còn muốn không phân biệt đối
xử. Đây là một ràng buộc bổ sung nằm trong quy trình xác lập vấn đề của
ta (cấp các khoản vay với rủi ro thấp và hợp lệ), nhưng nó không nằm trong
hàm mất mát (loss function) mà mô hình học máy đã được tối ưu hóa.
Việc đưa máy móc và thuật toán vào trong cuộc sống đòi hỏi tính khả
diễn giải để được xã hội chấp nhận. Con người gán niềm tin, ước muốn,
ý định, v.v. cho các đối tượng. Robot là một ví dụ điển hình, như máy hút
bụi của tôi, mà tôi đặt tên là “Doge”. Nếu Doge bị mắc kẹt, tôi nghĩ: “Doge
muốn tiếp tục dọn dẹp, nhưng muốn nhờ tôi giúp đỡ vì nó bị kẹt”. Sau đó,
khi Doge hoàn thành việc dọn dẹp và tìm kiếm tầng hầm để sạc pin, tôi nghĩ:
“Doge muốn nạp năng lượng và có ý định tìm tầng hầm”. Tôi cũng gán cho
đặc điểm tính cách: “Doge hơi ngốc, nhưng theo một cách dễ thương”. Đây là
những suy nghĩ của tôi, đặc biệt là khi tôi phát hiện ra rằng Doge đã xô ngã
một cái cây khi đang hút bụi nhà. Tôi sẽ dễ thông cảm cho Doge hơn. Một
cỗ máy máy hoặc thuật toán mà giải thích các dự đoán của chúng sẽ được
nhiều người chấp nhận hơn.
Giải thích được sử dụng để quản lý các tương tác xã hội. Bằng cách tạo
ra một ý nghĩa chung, người giải thích ảnh hưởng đến hành động, cảm xúc
và niềm tin của người nhận giải thích. Máy móc có thể cần phải định hình
cảm xúc và niềm tin của ta để tương tác với ta. Máy móc phải “thuyết phục”
ta, để chúng đạt được mục tiêu đã định. Tôi sẽ không hoàn toàn chấp nhận
máy hút bụi của mình nếu nó không giải thích được hành vi của nó ở một
mức độ nào đó. Máy hút bụi tạo ra giải thích nhằm tìm kiếm sự cảm thông,
chẳng hạn như một “tai nạn” (như bị kẹt trên thảm nhà tắm ... một lần nữa)
bằng cách giải thích rằng nó bị kẹt thay vì chỉ dừng lại làm việc mà không
có giải thích. Điều thú vị là có thể có sự sai lệch giữa mục tiêu của cỗ máy
(tạo niềm tin) và mục tiêu của người nhận (hiểu được dự đoán hoặc hành
vi). Có lẽ giải thích đầy đủ cho lý do tại sao Doge bị mắc kẹt có thể là do
pin rất yếu, một trong các bánh xe không hoạt động bình thường và có một
lỗi lập trình khiến robot lặp đi lặp lại cùng một chỗ mặc dù gặp chướng ngại
vật. Những lý do này (và một số lý do khác nữa) khiến robot gặp khó khăn,
nhưng nó chỉ cần giải thích rằng có điều gì đó đang cản trở, điều đó đủ để
tôi tin tưởng vào hành vi của nó và hiểu được ý nghĩa chung của sự vụ.
Các mô hình học máy chỉ có thể được gỡ lỗi (debugged) và kiểm soát
(audited) khi chúng khả diễn giải. Thậm chí trong các môi trường rủi ro
thấp, như mô hình đề xuất sản phẩm, tính khả diễn giải trở nên rất có giá
trị cả trong và sau quá trình triển khai mô hình. Khi mô hình được sử dụng
Hình 2.2: Doge, máy hút bụi của tôi, bị kẹt. Để giải thích cho sự cố, Doge
nói với tôi rằng nó cần phải ở trên bề mặt phẳng.
sau đó trong thực tế, các vấn đề có thể phát sinh. Tính khả diễn giải giúp ta
hiểu được nguyên nhân của vấn đề, và từ đó, ta có giải pháp để bảo trì và
sửa lỗi hệ thống. Một ví dụ khác như bộ phân loại chó husky và chó sói, nếu
bộ phân loại này phân biệt nhầm một vài bức ảnh chó husky thành chó sói,
bằng cách sử dụng các phương pháp học máy khả diễn giải, ta có thể nhận
ra nguyên nhân của việc phân loại sai đến từ việc các bức ảnh đó có chứa
tuyết (snow). Bộ phân loại, trong quá trình học tập, sử dụng tuyết như là
một đặc trưng (feature) để phân loại một bức ảnh là chó sói. Việc này có thể
có ý nghĩa về mặt phân biệt husky và chó sói trong tập dữ liệu huấn luyện,
nhưng trong thực tế, đặc trưng này sẽ không có hiệu quả.
Khi một mô hình học máy có thể giải thích quyết định của nó, ta có thể
kiểm tra những tiêu chí sau một cách dễ dàng (Doshi-Velez and Kim 2017):
1. Tính công bằng (Fairness): Đảm bảo rằng dự đoán không bị ảnh hưởng
bởi sai lệch (bias) và có tình trạng “phân biệt đối xử” với các nhóm dữ
liệu đặc biệt.
2. Tính riêng tư (Privacy): Đảm bảo rằng những thông tin nhạy cảm được
bảo vệ.
3. Tính đáp ứng nhanh (Robustness): Đảm bảo rằng những thay đổi nhỏ ở
đầu vào không ảnh hưởng lớn tới kết quả đầu ra.
4. Tính nhân quả (Causality): Đảm bảo rằng chỉ những mối quan hệ có tính
nhân quả được sử dụng.
5. Tính tin cậy (Trust): Đảm bảo mô hình đáng tin cậy hơn mô hình hộp
đen.
Khi nào ta không cần tính khả diễn giải? Trong một số trường hợp,
ta sẽ không cần hoặc thậm chí không muốn tính khả diễn giải của các mô
hình học máy.
Khả diễn giải thực sự không cần thiết nếu mô hình khi hoạt động không
có tác động đáng kể lên đời sống. Tưởng tượng rằng có 1 người tên Mike
xây dựng một mô hình học máy để dự đoán bạn của anh ta sẽ đi đâu trong
kì nghỉ tới dựa trên dữ liệu có sẵn của người bạn đó trên Facebook. Nếu mô
hình dự đoán sai hoặc Mike không thể giải thích đầu ra của mô hình của
mình, vấn đề sẽ chẳng có gì nghiêm trọng. Ta hoàn toàn ổn nếu không có
tính khả diễn giải trong trường hợp này. Tuy nhiên, vấn đề sẽ thực sự nảy
sinh nếu Mike muốn kinh doanh dựa trên mô hình này. Nếu mô hình hoạt
động sai, công ty có thể bị thua lỗ hoặc mô hình có thể làm việc kém hiệu
quả do sai lệch. Do đó, nếu mô hình có những tác động đáng kể tới tài chính
hoặc xã hội, tính khả diễn giải trở nên cực kỳ quan trọng.
Khả diễn giải không cần thiết khi vấn đề đã được tìm hiểu và phân
tích một cách kỹ lưỡng. Một số ứng dụng đã được nghiên cứu rộng rãi
và tỉ mỉ để đưa vào thực tế ví dụ như nhận diện ký tự quang - OCR, xử lý
hình ảnh từ phong bì và trích xuất địa chỉ. Các hệ thống này đã được nghiên
cứu một cách kỹ lưỡng và các kết quả thực tế chứng minh tính hiệu quả của
chúng. Ở đây, việc hiểu sâu hơn về vấn đề này đôi khi là không cần thiết.
Khả diễn giải có thể cho phép người dùng hoặc các chương trình làm
chủ các hệ thống khi người dùng đánh lừa hệ thống bằng cách khai khác
các lỗ hổng đến từ sự thiếu nhất quán giữa mục tiêu của người tạo ra và
người sử dụng mô hình. Tính điểm tín dụng là một hệ thống như vậy bởi
vì các ngân hàng muốn đảm bảo rằng các khoản vay chỉ được cung cấp cho
những người nộp đơn có khả năng trả lại chúng, nhưng những người nộp đơn
có mục tiêu nhận được khoản vay ngay cả khi ngân hàng không muốn. Sự
thiếu nhất quán này tạo ra lỗ hổng để các ứng viên khai thác nhằm tăng
cơ hội để đơn vay của họ được chấp nhận. Khi một ứng viên bị từ chối vay,
nếu biết việc có nhiều hơn 2 thẻ tín dụng ảnh hưởng tiêu cực đến điểm tín
dụng, anh ta có thể hoàn trả lại thẻ thứ ba để cải thiện điểm và làm lại 1
thẻ mới sau khi gói vay được chấp nhận. Khi điểm tín dụng của ứng viên
này tăng lên, xác suất thực tế để anh ta hoàn trả gói vay là không đổi. Hệ
thống có thể bị lừa nếu dữ liệu vào ảnh hưởng tới các đặc trưng nhân quả
- (causual features) mà không có tác động đến kết quả cuối cùng (khả năng
hoàn trả khoản vay). Một ví dụ khác đó là Google phát triển một hệ thống
gọi là Google Flu Trends để dự báo các đợt bùng phát cúm. Hệ thống này
làm việc dựa các tìm kiếm trên Google liên quan tới bệnh cúm, tuy nhiên, hệ
thống này làm việc không tốt. Phân bố của các truy vấn (queries) thay đổi
khiến cho Google Flu Trends bỏ qua rất nhiều các đợt cúm bởi vì các “tìm
kiếm trên Google không gây ra bệnh cúm”. Khi người dùng tìm kiếm về các
triệu chứng như sốt, rất ít khi người đó thực sự bị cúm. Một cách lý tưởng,
các mô hình chỉ nên sử dụng các đặc trưng nhân quả (các đặc trưng thực sự
ảnh hưởng tới đầu ra mong muốn).
2.2 Phân loại các phương pháp diễn giải
Các phương pháp cho học máy khả diễn giải có thể phân loại theo nhiều
tiêu chí khác nhau.
Nội tại hay sau huấn luyện (Intrinsic or post-hoc)? Tiêu chí này
phân loại liệu ta đạt được tính khả diễn giải qua việc giảm đi độ phức tạp
của mô hình học máy nội tại hay qua áp dụng các phương pháp phân tích
mô hình sau khi huấn luyện. Khả năng diễn giải intrinsic hay nội tại đề cập
đến các mô hình học máy có tính khả diễn giải nhờ vào tính đơn giản của
cấu trúc, ví dụ như cây quyết định ngắn (short decision trees) hoặc mô hình
tuyến tính thưa (sparse linear models). Tính khả diễn giải sau huấn luyện
đề cập việc áp dụng các phương pháp diễn giải sau khi huấn luyện mô hình.
Ví dụ, sử dụng độ quan trọng của đặc trưng hoán vị (Permutation feature
importance - PFI) là một phương pháp giải thích sau huấn luyện. Các phương
pháp sau huấn luyện cũng có thể dùng trong các mô hình khả diễn giải nội
tại. Ví dụ, PFI có thể dùng cho cây quyết định.
Kết quả của phương pháp diễn giải Các phương pháp diễn giải có thể
phân loại dựa trên kết quả của chúng.
• Trực quan hoá tổng quan đặc trưng (Feature summary visual-
ization): Đa số các thống kê tổng quan đặc trưng đều có thể được trực
quan hoá. Một số các đặc trưng tổng quan chỉ có ý nghĩa nếu chúng được
phác họa trực quan thay vì biểu diễn dưới dạng bảng. Một ví dụ đó là
tính phụ thuộc riêng (partial dependence). Phác hoạ phụ thuộc riêng là
các đường biểu diễn đặc trưng và trung bình dự đoán đầu ra. Cách tốt
nhất để biểu diễn phụ thuộc riêng đó là vẽ chúng thành các đường thay
vì đặt lên các trục tọa độ.
• Các nội bộ mô hình (Model internals) (ví dụ như các trọng số đã
được học): Tính khả diễn giải của các mô hình khả diễn giải mang tính
nội tại nằm trong phần này. Các ví dụ là các trọng số của mô hình tuyến
tính hoặc các cấu trúc cây đã được học (learned tree structures) (các đặc
trưng và mức ngưỡng được dùng để phân nhánh cây) của các cây quyết
định. Nội bộ mô hình và thống kê tổng quan đặc trưng khá giống nhau
trong một vài trường hợp; ví dụ: mô hình tuyến tính, vì trọng số vừa là
nội bộ của mô hình và vừa là thống kê tổng quan cho các đặc trưng. Một
phương pháp khác để tạo ra nội bộ mô hình là phác hoạ các bộ phát
hiện đặc trưng học được từ mạng nơ-ron tích chập (convolutional neural
network). Các phương pháp diễn giải mà tạo ra nội bộ mô hình làm việc
trên một số kiến trúc nhất định.
• Điểm dữ liệu (Data points): Mục này gồm tất cả các phương pháp
trả về các điểm dữ liệu (đã tồn tại hoặc mới được sinh ra) để làm cho mô
hình trở nên khả diễn giải. Một phương pháp trong số chúng được gọi
là giải thích phản chứng (counterfactual explanations). Để giải thích dự
đoán trên một mẫu dữ liệu (data instance), phương pháp này tìm một
điểm dữ liệu tương tự bằng cách thay đổi một số đặc trưng mà làm cho
kết quả dự đoán thay đổi (ví dụ: chuyển dự đoán từ 0 thành 1). Một ví
dụ khác là việc xác định các nguyên mẫu (prototypes) của các lớp (class).
Các phương pháp diễn giải mà trả về điểm dữ liệu mới phải đảm bảo
điểm dữ liệu này là khả diễn giải. Các phương pháp này được dùng cho
dữ liệu hình ảnh và văn bản, và ít hữu ích hơn cho dữ liệu dạng bảng vì
chúng có rất nhiều đặc trưng.
Cục bộ hay toàn cục? Phương pháp diễn giải một dự đoán riêng lẻ hay
toàn bộ hành vi của mô hình hay đâu đó ở giữa đầu vào và đầu ra? Hãy tìm
hiểu phạm vi của tính khả diễn giải trong phần tiếp theo.
2.3 Phạm vi của khả diễn giải
Một thuật toán tạo ra một mô hình đã được huấn luyện cho việc đưa ra
các dự đoán. Mỗi bước trong thuật toán này có thể được sử dụng để đánh
giá tính minh bạch hay khả diễn giải của mô hình.
2.3.5 Tính khả diễn giải cục bộ cho một nhóm các dự
đoán
Tại sao các mẫu dữ liệu có các dự đoán khác nhau?
Các dự đoán trên một nhóm mẫu có thể được giải thích bằng các phương
pháp giải thích mô hình toàn cục (ở cấp độ mô đun) hoặc bằng các giải thích
trên từng mẫu riêng lẻ. Các phương pháp toàn cục có thể được áp dụng bằng
cách gom nhóm các trường hợp, xử lí chúng như thể nhóm là bộ dữ liệu hoàn
chỉnh và sử dụng các phương pháp toàn cục với tập con này. Các phương
pháp giải thích riêng lẻ có thể được sử dụng cho từng trường hợp và sau đó
liệt kê hoặc gộp cho toàn bộ nhóm.
2.4 Đánh giá tính khả diễn giải
Trong cộng đồng học máy hiện nay, chưa có sự thống nhất thực sự về định
nghĩa khả diễn giải là gì. Cũng không có 1 sự định lượng rõ ràng. Nhưng có
1 số nghiên cứu sơ khai và cố gắng hình thành vài hướng tiếp cận để đánh
giá độ khả diễn giải, những hướng tiếp cận này sẽ được mô tả chi tiết hơn ở
phần dưới.
Doshi-Velez and Kim (2017) đề xuất 3 tầng chính để đánh giá tính khả
diễn giải:
Đánh giá ở mức độ ứng dụng (Nhiệm vụ chính): đưa giải thích vào
môi trường thực tế và để người dùng kiểm tra, đánh giá giải thích đó. Hãy
tưởng tượng 1 ví dụ: Phần mềm phát hiện gãy xương có bao gồm 1 module
học máy để định vị và đánh dấu các mảnh xương bị vỡ trên phim X-ray. Ở
tầng ứng dụng, bác sĩ X quang sẽ sử dụng phần mềm phát hiện gãy xương
và trực tiếp đánh giá chất lượng của giải thích đến từ mô hình học máy. Việc
đánh giá này đòi hỏi việc cài đặt thí nghiệm phải tốt và bác sĩ có hiểu biết
sâu về bài toán phát hiện gãy xương. Để so sánh, ta có thể dùng giải thích
của con người, sau đó bác sĩ sẽ kiểm tra xem giải thích nào tốt hơn.
Đánh giá ở mức độ con người (Nhiệm vụ đơn giản): là một mức
độ đánh giá ứng dụng đơn giản. Sự khác biệt là thử nghiệm đánh giá không
yêu cầu kiến thức chuyên môn. Điều này giảm chi phí (đặc biệt là kiến thức
chuyên môn về X-quang) và dễ dàng để tìm người kiểm thử. Một ví dụ là
cho một người xem những giải thích khác nhau và để người đó lựa chọn giải
thích tốt nhất.
Đánh giá ở mức độ chức năng (Nhiệm vụ ủy quyền): không yêu cầu
con người. Phương pháp này hoạt động tốt nhất khi vấn đề đã được kiểm
nghiệm trước đó bởi con người. Ví dụ với cây quyết định, cây ngắn hơn sẽ có
tính khả diễn giải tốt hơn (khoa học đã chứng minh trước đó cây ngắn hơn
là khả diễn giải hơn).
Phần tiếp theo tập trung vào việc đánh giá giải thích cho các dự đoán
riêng lẻ ở cấp độ chức năng. Các thuộc tính của giải thích mà ta sẽ xem xét
để đánh giá chúng là gì?
2.5 Thuộc tính của giải thích
Ta muốn giải thích các dự đoán của một mô hình học máy. Để đạt được
điều này, ta dựa vào một số phương pháp, trong đó các thuật toán tạo ra
các giải thích. Một cách giải thích liên hệ giá trị đặc trưng của một
mẫu dữ liệu tới dự đoán theo cách con người có thể hiểu được. Các
cách giải thích khác bao gồm đưa ra một tập các mẫu dữ liệu (ví dụ phương
pháp knn). Ví dụ: ta có thể dự đoán nguy cơ ung thư bằng máy vectơ hỗ
trợ (SVM) và giải thích dự đoán bằng phương pháp đại diện cục bộ (local
surrogate), tạo ra các cây quyết định thay cho giải thích. Hoặc ta có thể sử
dụng mô hình hồi quy tuyến tính thay vì máy vectơ hỗ trợ (SVM) và mô
hình hồi quy tuyến tính đã có phương pháp giải thích (giải thích các trọng
số).
Ta hãy xem xét kỹ hơn các tính chất của các phương pháp giải thích và
giải thích (Robnik-Sikonja và Bohanec, 2018). Các tính chất này có thể được
sử dụng để đánh giá chất lượng của phương pháp giải thích hoặc của giải
thích. Tất nhiên ta không thể đo lường một cách hoàn hảo, do vậy khó nhất
là chuẩn hóa cách để đo lường chất lượng này.
• Sức biểu đạt là “ngôn ngữ” hay cấu trúc của các giải thích mà phương
pháp có thể tạo ra. Một phương pháp giải thích có thể tạo ra các quy tắc
IF-THEN, cây quyết định, tổng trọng số, ngôn ngữ tự nhiên hoặc bất kỳ
thứ gì.
• Độ minh bạch mô tả phương pháp giải thích dựa vào mô hình học máy
như thế nào, ví dụ như việc sử dụng các tham số của mô hình. Ví dụ, các
phương pháp giải thích dựa trên các mô hình khả diễn giải nội tại như
mô hình hồi quy tuyến tính có độ minh bạch rất cao. Các phương pháp
chỉ dựa vào đầu vào và đầu ra có độ minh bạch bằng 0. Tùy thuộc vào
từng vấn đề, ta có thể yêu cầu độ minh bạch khác nhau. Khi độ minh
bạch cao, phương pháp có thể dùng nhiều thông tin hơn để tạo ra các
giải thích. Khi độ minh bạch thấp, giải thích sẽ mô phạm và chung chung
hơn.
• Tính linh động mô tả phạm vi của các loại mô hình học máy mà phương
pháp giải thích có thể được áp dụng. Các phương pháp có độ minh bạch
thấp có tính linh động cao hơn vì chúng coi mô hình học máy như một
hộp đen. Các mô hình đại diện (surrogate models) có thể là phương pháp
giải thích với tính linh động cao nhất. Các phương pháp chỉ hoạt động
cho một loại mạng cụ thể (ví dụ: mạng nơ-ron hồi tiếp) có tính di động
thấp.
• Độ phức tạp thuật toán mô tả độ phức tạp tính toán của phương pháp
tạo ra giải thích.Tính chất này rất quan trọng bởi vì tính toán đang là
một vấn đề lớn trong việc tạo ra các giải thích với các phương pháp hiện
nay.
• Độ chính xác: Nếu sử dụng giải thích, chất lượng của dự đoán đầu ra
cho một mẫu dữ liệu mới là như thế nào? Đặc biệt nếu giải thích được
sử dụng thay vì mô hình học máy, độ chính xác của giải thích là cực kỳ
quan trọng. Tuy vậy, nếu mô hình học máy có độ chính xác thấp, ta cũng
không thể đòi hỏi giải thích mang lại độ chính xác cao, nếu mục đích chỉ
là để giải thích mô hình hộp đen. Trong trường hợp này, sự minh bạch
là quan trọng hơn cả.
• Độ trung thực: Giải thích có thể xấp xỉ dự đoán của mô hình hộp
đen như thế nào? Độ trung thực cao là một trong những tính chất quan
trọng nhất của giải thích, bởi vì giải thích với độ trung thực thấp là vô
ích trong việc giải thích mô hình học máy. Độ chính xác và độ trung thực
có liên quan chặt chẽ. Nếu mô hình hộp đen có độ chính xác cao và giải
thích có độ trung thực cao, thì giải thích cũng có độ chính xác cao. Một
số giải thích chỉ cung cấp độ trung thực cục bộ, nghĩa là giải thích chỉ
gần đúng với dự đoán mô hình cho một tập hợp con của dữ liệu (ví dụ:
mô hình đại diện cục bộ - local surrogate models) hoặc thậm chí chỉ cho
một mẫu dữ liệu riêng lẻ (ví dụ: Giá trị Shapley).
• Tính nhất quán: Các giải thích khác nhau như thế nào giữa các mô
hình đã được huấn luyện cho cùng một nhiệm vụ và tạo ra các dự đoán
tương tự nhau? Ví dụ, ta huấn luyện một máy vectơ hỗ trợ và mô hình
hồi quy tuyến tính trên cùng một nhiệm vụ và cả hai đều tạo ra các dự
đoán rất giống nhau. Ta tạo ra các giải thích bằng một phương pháp đã
chọn và phân tích sự khác biệt giữa các giải thích. Nếu các giải thích
giống nhau, chúng có sự nhất quán. Điều này khá khó xảy ra, vì hai mô
hình có thể sử dụng các đặc trưng khác nhau, nhưng có được các dự đoán
tương tự (còn được gọi là “Hiệu ứng Rashomon”). Trong trường hợp này,
ta không mong đợi tính nhất quán cao vì các giải thích là khác nhau.
Tính nhất quán cao chỉ xuất hiện khi các mô hình sử dụng các đặc trưng
giống nhau.
• Tính ổn định: Các giải thích tương đồng ra sao nếu các mẫu dữ liệu là
tương đồng? Trong khi tính nhất quán so sánh các giải thích giữa các mô
hình, độ ổn định so sánh các giải thích giữa các mẫu tương tự cho một mô
hình cố định. Độ ổn định cao có nghĩa là các thay đổi nhỏ trong các đặc
trưng của một thể hiện không làm thay đổi đáng kể giải thích (trừ khi các
thay đổi nhỏ này cũng thay đổi mạnh mẽ dự đoán). Một phương pháp
giải thích thiếu ổn định có thể do nó có phương sai lớn (high variance).
Nói cách khác, phương pháp giải thích bị ảnh hưởng mạnh mẽ bởi những
thay đổi nhỏ trong các giá trị đặc trưng của dữ liệu được giải thích. Sự
thiếu ổn định cũng có thể được gây ra bởi các thành phần bất định của
phương pháp giải thích, chẳng hạn như bước lấy mẫu dữ liệu, giống như
trong phương pháp đại diện cục bộ. Ta luôn mong muốn độ ổn định cao.
• Tính dễ hiểu: Con người hiểu những giải thích như thế nào? Tính chất
này trông có vẻ tầm thường nhưng kỳ thực lại là một vấn đề cực kỳ to
lớn. Ta rất khó xác định và đo lường tính chất này. Nhiều người đồng ý
rằng tính dễ hiểu phụ thuộc vào người dùng. Các ý tưởng để đo lường
mức độ dễ hiểu bao gồm đo kích thước của giải thích (số đặc trưng có
trọng số khác không trong mô hình tuyến tính, số luật quyết định, ...)
hoặc kiểm tra xem người dùng có thể dự đoán hành vi của mô hình học
máy bằng cách sử dụng giải thích hay không. Tính dễ hiểu của các đặc
trưng được sử dụng trong giải thích cũng cần được cân nhắc kĩ lưỡng.
Các biến đổi phức tạp của các đặc trưng cũng có thể làm giảm tính dễ
hiểu của chúng so với ban đầu.
• Sự chắc chắn: Giải thích có phản ánh sự chắc chắn của mô hình học
máy không? Nhiều mô hình học máy chỉ đưa ra dự đoán mà không đưa
ra thông tin về độ tin cậy. Nếu mô hình dự đoán xác suất ung thư là 4%
cho một bệnh nhân, và cũng 4% cho một bệnh nhân với các giá trị đặc
trưng khác, dự đoán nào là chắc chắn hơn? Giải thích bao hàm sự chắc
chắn của mô hình sẽ rất hữu ích.
• Mức độ quan trọng: Giải thích phản ánh tầm quan trọng của các đặc
trưng hoặc các phần của giải thích như thế nào? Ví dụ: nếu một luật
quyết định được tạo ra như giải thích cho một dự đoán riêng lẻ, thì điều
kiện nào của luật này là quan trọng nhất?
• Tính mới: Giải thích có phản ánh liệu một mẫu dữ liệu đến từ phân
phối khác với phân phối của dữ liệu huấn luyện hay không? Trong trường
hợp này, mô hình có thể hoạt động không chính xác và giải thích có thể
là vô nghĩa. Khái niệm về tính mới có liên quan đến khái niệm về sự chắc
chắn. Tính mới càng cao, càng có nhiều khả năng mô hình sẽ có độ chắc
chắn thấp do thiếu dữ liệu.
• Tính đại diện: Giải thích có thể phủ (cover) bao nhiêu mẫu dữ liệu?
Giải thích có thể bao trùm toàn bộ mô hình (ví dụ: giải thích các trọng
số trong mô hình hồi quy tuyến tính) hoặc chỉ đại diện cho một dự đoán
riêng lẻ (ví dụ: Giá trị Shapley).
2.6 Giải thích thân thiện với con người
Ta cùng đào sâu hơn và khám phá cách mà chúng coi một diễn giải là tốt
và ý nghĩa thực sự của học máy khả diễn giải. Các nghiên cứu bên ngành
nhân văn có thể giúp ta tìm ra câu trả lời. Miller (2017) đã tiến hành một
cuộc khảo sát có quy mô lớn trên các công bố khoa học về sự diễn giải, và
phần này được dựa trên tổng hợp của Miller.
Trong mục này, ta lưu ý một số điểm như sau: Với một diễn giải cho một
sự kiện, con người ưu tiên những diễn giải ngắn (chỉ một hoặc hai nguyên
nhân) tương phản với tình huống hiện tại. Đặc biệt những nguyên nhân bất
thường sẽ mang lại những giải thích tốt. Diễn giải là tương tác xã hội giữa
người giải thích với người được giải thích (người nhận giải thích) và do đó
bối cảnh xã hội có ảnh hưởng to lớn đến nội dung thực tế của diễn giải.
Khi ta cần giải thích sử dụng tất cả đặc trưng cho một dự đoán hay một
hành vi cụ thể, ta không cần giải thích thân thiện, mà chỉ cẩn nó mang tính
nhân quả tuyệt đối. Để có thể gỡ lỗi của mô hình, việc nắm bắt các thành
phần nhân quả là thực sự cần thiết.
Một lời diễn giải là câu trả lời cho câu hỏi tại sao (Miller 2017)
- Tại sao việc điều trị không hiểu quả trên bệnh nhân?
- Tại sao khoản vay của tôi lại bị từ chối?
- Tại sao ta chưa được liên lạc với người ngoài hành tinh?
Hai câu hỏi đầu tiên có thể được trả lời với giải thích “thông thường”,
trong khi đó câu hỏi thứ ba thuộc danh mục “Câu hỏi hiện tượng khoa học
tổng quát và triết học” hơn. Ta tập trung vào những loại diễn giải “thông
thường”, bởi vì chúng liên quan đến khả năng giải thích của học máy. Các
câu hỏi bắt đầu bằng “như thế nào” có thể thường được chuyển thể sang câu
hỏi “tại sao”: “Làm thế nào mà khoản vay của tôi lại bị từ chối?” có thể trở
thành “Tại sao khoản vay của tôi bị từ chối?”.
Theo đó, thuật ngữ “Diễn giải (Explanation)” đề cập đến quy trình để tạo
ra nhận thức, nhưng cũng là sản phẩm của quá trình đó. Bộ diễn giải có thể
là con người hay máy móc.
2.6.2 Thế nào là giải thích tốt?
Phần này tổng hợp cô đọng các kết quả của Miller về diễn giải “tốt” và
bổ sung ý nghĩa cho học máy khả diễn giải.
Giải thích mang tính tương phản (Explanations are contrastive) (Lip-
ton 1990). Con người thường không hỏi tại sao một dự đoán cụ thể nào đó
được tạo ra, mà thường thắc mắc tại sao lại có dự đoán này mà không phải
một dự đoán nào khác thay thế. Ta thường có xu hướng suy nghĩ về những
trường hợp đối lập. Ví dụ, “dự đoán được đưa ra sẽ như thế nào nếu đưa vào
một đầu vào X khác với trước đó”. Đối với dự đoán giá nhà, người sở hữu
căn nhà có thể quan tâm tại sao giá dự đoán cao hơn so với giá cả mà họ
trông đợi. Nếu đơn vay nợ của tôi bị từ chối, tôi không quan tâm đến tất cả
các yếu tố dẫn đến việc đơn vay bị từ chối . Tôi chỉ quan tâm đến các yếu tố
mà trong đó mà đơn vay của tôi cần thay đổi để nhận được khoản vay. Tôi
muốn biết sự đối lập giữa đơn vay của tôi và đơn đã được chấp thuận. Ta
thấy rằng các giải thích tương phản (contrasting explanations) là một phát
hiện quan trọng cho học máy khả diễn giải. Đối với hầu hết các mô hình
khả diễn giải, ta có thể trích xuất các giải thích tương phản một dự đoán
của một mẫu bằng các mẫu dữ liệu đối kháng. Bác sĩ có thể thắc mắc: “Tại
sao thuốc này lại không hiệu quả trên bệnh nhân của tôi?”. Và họ có thể
muốn giải thích mà có yếu tố tương phản giữa bệnh nhân của họ với một
bệnh nhân mà thuốc đó có hiệu quả và có sự tương đồng đối với những bệnh
nhân không có tác dụng khác. Các giải thích tương phản là dễ dàng để hiểu
hơn các giải thích đầy đủ. Giải thích đầy đủ cho câu hỏi của bác sĩ trước đó
tại sao thuốc lại không hiệu bảo có thể bao gồm: Bệnh nhân đó đã có bệnh
duy trì suốt 10 năm, 11 genes là đã có biểu hiện quá mức, cơ thể bệnh nhân
nhanh chóng phân giải thuốc thành các thành phần hóa học nên không còn
hữu hiệu,... Giải thích tương phản đơn giản hơn nhiều: Đối lập với các bệnh
nhân có phản ứng với thuốc, những bệnh nhân không phản ứng có sự kết
hợp các gene nhất định làm cho thuốc kém hiệu quả đi. Giải thích tốt nhất
là giải thích mà làm nổi bật sự khác nhau giữa đối tượng quan tâm với đối
tượng tham chiếu đến. Điều này có ý nghĩa gì tới học máy khả diễn
giải: Con người không muốn một giải thích đầy đủ cho một dự đoán, nên
tạo ra các giải thích tương phản sẽ phụ thuộc vào ứng dụng vì nó yêu cầu sự
so sánh. Và điều này có thể phụ thuộc vào các điểm dữ liệu được diễn giải,
nhưng cũng phụ thuộc vào người nhận sự giải thích. Một người dùng trên
một trang web dự đoán giá nhà có thể muốn có một sự giải thích cho những
giá nhà đối lập với ngôi nhà họ sở hữu hoặc có thể ngôi ngồi nhà nào khác
trên trang web hoặc có thể với một ngôi nhà phổ thông trong khu vực lân
cận. Giải pháp cho việc tạo tự động các giải thích tương phản có thể cũng
liên quan đến việc tìm các nguyên mẫu hay mẫu đặc trưng trong dữ liệu.
Giải thích mang tính chọn lọc (Explanations are selected). Con
người không mong đợi những giải thích mà bao quát thực tế và nguyên nhân
đầy đủ của một sự kiện. Ta đã từng lựa chọn ra một hoặc hai nguyên nhân
từ một số những nguyên nhân khác nhau rồi tạo ra giải thích. Thực tế, điều
này diễn ra hàng ngày trên các bản tin TV:
- “Sự tụt giảm giá cổ phiếu được cho là có nguyên nhân từ những phản
ứng dữ dội xuất phát từ bản cập nhật phần mềm mới nhất của công ty.”
- “Tsubasa và đội của anh ấy đã thua trận vì yếu kém trong khâu phòng
thủ: họ đã để đối thủ tự do có nhiều chỗ trống để thực hiện chiến thuật của
mình.”
- “Sự không tin tưởng ngày càng gia tăng vào các tổ chức thành lập và
chính phủ của chúng ta là những yếu tố chính mà làm giảm đi tỷ lệ cử tri
bầu cử.”
Việc một sự kiện có thể được giải thích bằng nhiều nguyên nhân khác
nhau được gọi là Hiệu ứng Rashomon. Rashomon là một bộ phim Nhật kể
những câu chuyện tương phản, mâu thuẫn (giải thích) về cái chết của một
Samurai. Đối với các mô hình học máy, điều này thuận lợi nếu một dự đoán
tốt có thể tạo nên từ những đặc trưng khác nhau. Việc kết hợp nhiều mô hình
(ensemble) với các đặc trưng khác nhau (các giải thích khác nhau) thường
hoạt động tốt vì tính trung bình trên các “câu chuyện” đó làm cho các dự
đoán linh hoạt và chính xác hơn. Nhưng nó cũng có nghĩa rằng ta có nhiều
giải thích có chọn lọc hơn với một dự đoán nhất định được đưa ra. Điều này
có ý nghĩa gì đến học máy khả diễn giải: Nó làm cho việc diễn giải ngắn
gọn, chỉ một đến ba lý do, thậm chí nếu ngữ cảnh có phức tạp hơn. Phương
pháp LIME (phần 5.7) vẫn hoạt động tốt.
Các giải thích tập trung vào sự bất thường (Explanations focus on
the abnormal). Con người tập trung nhiều hơn vào các nguyên nhân bất
thường để giải thích các sự kiện (Kahnemann and Tversky, 1981). Đây là
những nguyên nhân có xác suất nhỏ nhưng vẫn xảy ra. Việc loại bỏ những
nguyên nhân bất thường này sẽ làm thay đổi rất nhiều kết quả (giải thích
tương phản). Con người xem xét những nguyên nhân “bất thường” và xem
chúng như những giải thích tốt. Một ví dụ từ Štrumbelj và Kononenko (2011)
là: Giả sử ta có một bộ dữ liệu về việc kiểm tra của giáo viên đối với học
sinh. Học sinh tham gia vào một khóa học và vượt qua khóa học ngay sau
khi trình bày thành công một bài thuyết trình. Giáo viên có tùy chọn để hỏi
thêm học sinh các câu hỏi để kiểm tra kiến thức. Những học sinh nào không
trả lời được những câu hỏi đó sẽ trượt khóa học. Các học sinh có thể có các
mức độ chuẩn bị khác nhau, nó chuyển thành các xác suất khác nhau cho
việc trả lời chính xác các câu hỏi của giáo viên (nếu họ quyết định kiểm tra
học sinh đó). Ta muốn dự đoán học sinh nào sẽ qua môn học và giải thích
các dự đoán đó. Cơ hội để vượt qua là 100% nếu giáo viên không có thêm câu
hỏi nào, hoặc hoặc xác suất của việc qua môn học phụ thuộc vào sự chuẩn bị
của học sinh và kết quả xác suất của việc trả lời câu hỏi chính xác. Kịch bản
1: Giáo viên thường hỏi các học sinh các câu hỏi bổ sung (ví dụ 95 trong 100
lần). Một học sinh không học (10% cơ hội để vượt qua phần câu hỏi) không
may bị hỏi và học sinh đó trả lời sai. Tại sao học sinh đó rớt? Ta sẽ cho rằng
vì lỗi của học sinh đó là không học bài. Kịch bản 2: Giáo viên hiếm khi hỏi
thêm các câu hỏi (ví dụ 2 trong 100 lần). Đối với một sinh không học bài, ta
sẽ dự đoán một xác suất cao cho việc đỗ môn học vì khó có khả năng học sinh
đó bị hỏi thêm. Tất nhiên, một trong các học sinh không chuẩn bị cho các
câu hỏi, học sinh đó cũng có 10% cơ hội vượt qua các câu hỏi. Khi học sinh
không may bị hỏi thêm câu hỏi, học sinh đó không trả lời đúng và rớt môn.
Vậy có lý do nào cho việc trượt môn đó? Ta sẽ cho rằng giải thích tốt nhất
đó là “vì giáo viên đó đã kiểm tra học sinh”. Vì nhiều khả năng là giáo viên
không kiểm tra, vậy nên hành động của giáo viên lúc đó là bất thường. Điều
này có ý nghĩa gì đến học máy khả diễn giải: Nếu một trong các đặc
trưng đầu vào cho một dự đoán là bất thường trong bất cứ hoàn cảnh nào
(ví dụ một loại đặc trưng hiếm trong tập các đặc trưng) và các đặc trưng đó
ảnh hưởng đến dự đoán, nó nên xuất hiện trong giải thích, thậm chí nếu các
đặc trưng “bình thường” khác có cùng ảnh hưởng như đặc trưng bất thường.
Một đặc trưng bất thường trong ví dụ dự đoán giá nhà có thể là một ngôi
nhà khá đắt có hai ban công. Thậm chí nếu ta biết hai ban công có mức độ
ảnh hưởng đến giá nhà tương đương với các đặc trưng: diện tích trung bình,
hàng xóm tốt, mới được cải tạo; giá trị đặc trưng bất thường này vẫn sẽ là
giải thích tốt nhất cho việc tại sao giá nhà lại cao như vậy.
Các giải thích mang tính trung thực (Explanations are truthful).
Giải thích tốt cần được chứng minh là đúng trong thực tế (và các tình huống
khác). Nhưng trớ trêu, đây không phải là yếu tố quan trọng nhất cho giải
thích tốt. Ví dụ, tính chọn lọc dường như quan trọng hơn tính trung thực.
Giải thích mà chọn chỉ một hoặc hai nguyên nhân khả thi hiếm khi bao quát
hết danh sách các nguyên nhân có liên quan. Tính chọn lọc bỏ quan một
phần sự thực. Chỉ một hay hai nguyên nhân là không đúng; ví dụ nếu thị
trường chứng khoán sụp đổ, có cả triệu nguyên nhân dẫn đến vấn đề này.
Điều này có ý nghĩa gì đến học máy khả diễn giải: Sự giải thích nên
dự đoán sự kiện một cách trung thực nhất có thể, cũng như trong học máy
đôi khi được gọi là tính trung thực hoặc minh bạch (fidelity). Vậy nên nếu
ta nói rằng hai ban công làm tăng giá nhà, thì điều này cũng nên đúng đối
với các căn nhà khác (hoặc ít nhất các nhà tương đồng). Đối với con người,
tính trung thực (fidelity) của giải thích là không quan trọng bằng tính chọn
lọc, tương phản, và xã hội.
Giải thích tốt mang tính nhất quán với niềm tin trước đó của người
được giải thích (Good explanations are consistent with prior beliefs
of the explainee). Con người có xu hướng bỏ qua các thông tin không
phù hợp với niềm tin có sẵn của họ. Vấn đề này được gọi là sai lệch xác
nhận (confirmation bias) (Nickerson 1998). Con người sẽ có xu hướng đánh
giá thấp hoặc bỏ qua những giải thích không nhất quán với niềm tin của họ.
Các niềm tin này khác nhau với mỗi người, nhưng cũng có những niềm tin
thống nhất như thế giới quan về chính trị. Điều này có ý nghĩa gì đến
học máy khả diễn giải: Các giải thích tốt cần phù hợp với các niềm tin
trước đó của người nhận giải thích. Điều này khó có thể áp dụng lên học máy
và có lẽ sẽ ảnh hưởng lớn tới hiệu suất dự đoán. Niềm tin trước của ta về sự
ảnh hưởng của kích thước căn nhà lên giá nhà là căn nhà càng lớn thì giá
càng cao. Giả sử với một số ngôi nhà, diện tích lớn có tác động tiêu cực tới
giá trị của chúng. Mô hình đã học được điều này trong huấn luyện (do một
số tương tác phức tạp), nhưng điều này mâu thuẫn mạnh mẽ với niềm tin
trước đó của ta.
Giải thích tốt mang tính tổng quan và hiển nhiên (Good expla-
nations are general and probable). Một nguyên nhân có thể được sử
dụng để giải thích cho nhiều sự kiện là rất khái quát tổng thể và có thể
được coi là giải thích tốt. Lưu ý rằng điều này là mâu thuẫn với nhận định
rằng các nguyên nhân bất thường tạo nên các giải thích tốt. Theo tôi nhận
thấy, nguyên nhân bất thường cần được ưu tiên hơn nguyên nhân khái quát.
Nguyên nhân bất thường hiếm khi xuất hiện trong các kịch bản. Trong trường
hợp không có sự tồn tại của sự kiện bất thường, giải thích khái quát là được
xem xét như là giải thích tốt. Cũng nên nhớ rằng con người có xu hướng đánh
giá nhầm xác suất của các sự kiện tham gia vào. (Joe là một người trông coi
thư viện, có khả năng anh ấy là một người nhút nhát hay nhút nhát dẫn đến
thích đọc sách nên muốn làm người trông coi thư viện?) Một ví dụ tốt là
“Căn nhà là đắt đỏ vì nó to”, điều này khá phổ biến khái quát, giải thích tốt
cho câu hỏi tại sao căn nhà lại đắt hoặc rẻ. Điều này có ý nghĩa gì đến
học máy khả diễn giải: Tính khái quát tổng quan có thể dễ dàng được đo
lường bởi các hỗ trợ đặc trưng, tính bằng số các mẫu mà giải thích được áp
dụng chia cho tổng số mẫu.
Chương 3
Các bộ dữ liệu
Xuyên suốt cuốn sách này, tất cả cách mô hình và phương pháp được áp
dụng cho các bộ dữ liệu thực tế đều có sẵn trên mạng. Ta sẽ dùng các tập
dữ liệu khác nhau cho các tác vụ khác nhau: Phân loại, hồi quy, và phân loại
văn bản.
• Số lượng xe đạp được thuê bởi cả khách hàng thông thường (casual) và
thành viên (registered). Số lượng này sẽ là đầu ra của mô hình hồi quy.
43
• Năm 2011 hoặc 2012.
• Số lượng ngày tính từ 1/1/2011 (ngày đầu tiên trong bộ dữ liệu). Đặc
trưng này được cân nhắc để theo dõi xu hướng dữ liệu theo thời gian.
– Trời quang (clear), ít mây (few clouds), hơi mây (partly cloudy), hoặc
nhiều mây (cloudy).
– Sương (mist), sương + mây, sương + mây vụn (broken clouds), sương
+ ít mây.
– Tuyết nhẹ, mưa nhẹ + giông (thunderstorm) + mây rải rác (scattered
clouds), mưa nhẹ + mây rải rác.
– Mưa nặng (heavy rain) + mưa tuyết nhẹ (ice pellets) + giông +
sương, tuyết + sương.
Bộ dữ liệu trong sách đã được xử lý tương đối (slightly processing). Bạn đọc
có thể tìm mã R trong trang Github cùng với tệp final RData file.
Nhìn qua một số bình luận, ta thấy các bình luận được gắn nhãn thủ
công là “rác” hoặc “có ý nghĩa”. Bình luận “rác” được mã hóa bằng “1” và “có
ý nghĩa” bằng “0".
Bạn cũng có thể truy cập YouTube và xem phần bình luận. Nhưng làm
ơn đừng bị cuốn vào địa ngục YouTube và cuối cùng xem video những con
khỉ ăn cắp và uống cocktail từ khách du lịch trên bãi biển. Trình phát hiện
bình luận rác Google Spam có lẽ cũng đã thay đổi rất nhiều kể từ năm 2015.
Xem qua video phá vỡ kỷ lục số lượt xem ”Gangnam Style“ tại đây.
Nếu bạn muốn thao tác với dữ liệu, bạn có thể dùng file RData cùng với
tập lệnh R với một số hàm trong Github của cuốn sách.
• Bệnh nhân có từng mắc bệnh lây qua đường tình dục hay không?
• Số lượng bệnh truyền nhiễm qua đường tình dục đã được chẩn đoán
• Kết quả sinh thiết ”khoẻ mạnh“ hay ”ung thư” (mục tiêu/kết quả)
Kết quả sinh thiết đóng vai trò như là tiêu chuẩn vàng để chẩn đoán ung
thư cổ tử cung. Đối với các ví dụ trong cuốn sách này, kết quả sinh thiết đã
được sử dụng làm nhãn. Các giá trị bị thiếu trong mỗi cột được thay thế bởi
giá trị xuất hiện nhiều nhất, đây là một giải pháp chưa tốt, vì giá trị có thể
tương quan với xác suất mà giá trị bị thiếu. Rất có thể sẽ co sai lệch bởi vì
các câu hỏi mang tính riêng tư rất cao. Nhưng đây không phải là một cuốn
sách về việc xử lí việc thiếu dữ liệu, nên giải phá này được tạm chấp nhận.
Để mô phỏng lại các ví dụ của cuốn sách với bộ dữ liệu này, hãy tìm tập
lệnh R tiền xử lý (preprocessing R-script) và tệp final RData trong Github
của cuốn sách.
Chương 4
47
một cách thủ công - các đặc trưng thể hiện sự tương tác giữa các đặc trưng.
Tương tác có thể giúp cải thiện chất lượng của một mô hình, tuy nhiên việc
có quá nhiều tương tác hay các tương tác quá phức tạp sẽ làm giảm tính khả
diễn giải. Một vài mô hình giải quyết bài toán hồi quy, số khác giải quyết bài
toán phân loại, đôi khi giải quyết cả hai.
Từ bảng 4.1, ta có thể chọn một mô hình khả diễn giải hợp lý cho bài
toán của chúng ta, có thể là hồi quy (regr) hoặc phân loại (class):
y “ β0 ` β1 x1 ` . . . ` βp xp `
Đáp ứng của mô hình đối với một đầu vào là tổng trọng số của p đặc
trưng. Các giá trị beta βj biểu diễn các trọng số tương ứng với các đặc trưng
hay còn gọi là hệ số (coefficients). Trọng số đầu tiên β0 được gọi là hệ số chặn
(intercept) và không được nhân với đặc trưng. Giá trị epsilon là sai số, ví
dụ sự khác nhau giữa dự đoán và giá trị thực tế. Lượng sai số này được giả
định tuân theo phân phối Gaussian, nghĩa là ta tạo ra sai số theo cả 2 chiều
âm dương và có nhiều sai số nhỏ bên cạnh rất ít sai số có giá trị lớn (tuân
theo phân bố dạng hình chuông của Gaussian).
Các phương pháp dùng để ước tính giá trị trọng số tối ưu rất đa dạng.
Một phương pháp đơn giản nhất đó là phương pháp sai số bình phương tối
thiểu thường được dùng để tìm ra tập trọng số tối ưu dựa trên sai lệch bình
phương giữa giá trị thực tế và dự đoán.
˜ ˜ p
¸¸2
ÿn ÿ piq
β̂ “ arg min y piq ´ β0 ` βj xj
β0 ,...,βp
i“1 j“1
Ta sẽ không thảo luận chi tiết cách để tìm ra các trọng số tối ưu này,
tuy nhên, nếu bạn muốn có thể đọc chương 3.2 trong cuốn "The Elements
of Statistical Learning" hoặc các bài giảng online về mô hình hồi quy tuyến
tính.
Lợi thế lớn nhất của các mô hình hồi quy tuyến tính đó chính là tính
tuyến tính: Nó làm cho việc ước lượng kết quả trở nên đơn giản, và quan
trọng hơn cả, các phương trình tuyến tính này tạo nên việc diễn giải dễ dàng
ở mức mô đun (các trọng số). Đây là một trong những lý do chính tại sao mô
hình tuyến tính và các mô hình tương tự được ưa chuộng trong các ngành
khoa học như y học, xã hội học, tâm lý học, và rất nhiều các ngành nghiên
cứu định lượng khác. Ví dụ, trong y học, ta không chỉ quan tâm đến kết quả
dự đoán trên một bệnh nhân mà còn phải định lượng tác động của thuốc dựa
trên độ tuổi, giới tính và các đặc trưng khác nhằm hướng tới tính khả giải
thích.
Các trọng số được ước lượng tồn tại trong các khoảng tin cậy (confidence
intervals). Một khoảng tin cậy là một dải trọng số bao gồm trọng số “chính
xác” với một độ tin cậy nhất định. Ví dụ, một khoảng tin cậy tới 95% của
một trọng số có giá trị là 2 có thể rơi vào từ 1 đến 3. Khoảng này có thể
được diễn đạt như sau: Nếu ta ước lượng lặp đi lặp lại 100 lần với các mẫu
dữ liệu mới, khoảng tin cậy có thể bao gồm giá trị chính xác trong 95/100
trường hợp, giả sử rằng mô hình ta đang có hoạt động chính xác trên tập dữ
liệu cho trước.
Để đánh giá liệu một mô hình có hoạt động chính xác trên tập dữ liệu
hay không sẽ phụ thuộc vào liệu mối quan hệ trong dữ liệu có thỏa mãn
một số tiêu chí cụ thể: tính tuyến tính (linearity), tính chuẩn (normality),
hiệp phương sai đồng nhất (homoscedasticity), tính độc lập (independence),
các đặc trưng cố định (fixed features), và sự bất tương quan (absence of
multicollinearity).
Tính tuyến tính Mô hình hồi quy tuyến tính có đầu ra là một tổ hợp
tuyến tính của các đặc trưng, điều này vừa là điểm mạnh cũng vừa là hạn
chế lớn nhất của loại mô hình này. Tính tuyến tính giúp mô hình khả diễn
giải. Các kết quả tuyến tính có thể dễ dàng được định lượng và mô tả. Vì
chúng được xây dựng trên phép lấy tổng, ta có thể dễ dàng tách bạch kết
quả. Nếu ta nghi ngờ sự tương tác giữa các đặc trưng hoặc quan hệ phi tuyến
của một đặc trưng với kết quả cuối cùng, ta có thể thêm các thành phần
tuyến tính khác hoặc sử dụng các hàm hồi quy.
Tính chuẩn Khi biết trước các đặc trưng, ta giả thiết rằng giá trị đầu ra
của mô hình sẽ tuân theo phân phối chuẩn (hay phân phối Gaussian). Nếu
giả thiết này không chính xác, khoảng tin cậy mà ta ước lượng của các trọng
số cũng sẽ không chính xác.
Hiệp phương sai đồng nhất (phương sai bất biến) Trước tiên hãy giải
thích phương sai (variance): Đó là sự sai lệch giữa các lần dự đoán trong
khi đó độ chệch (bias) là sự sai lệch giữa các lần dự đoán với giá trị thực
tế (ground-truth). Phương sai của các thành phần sai số được giả thiết là
bất biến trên cả không gian đặc trưng. Giả sử ta muốn dự đoán giá của một
ngôi nhà dựa vào diện tích được đo đạc bởi mét vuông (m2 ), ta dùng một
mô hình tuyến tính và giả thiết rằng, với mọi giá trị diện tích, sai số của các
dự đoán sẽ có cùng phương sai. Giả thiết này thường không đúng trong thực
tế. Trong ví dụ trên, một căn nhà lớn sẽ có phương sai lớn, bởi vì giá nhà sẽ
lớn và thường số phòng của ngôi nhà cũng sẽ ảnh hưởng tới giá trị của nó.
Nếu cho rằng sai số trung bình (sự chênh lệch giữa giá trị thực tế và giá trị
dự đoán) trong mô hình tuyến tính ta đang có là 50,000 Euros, khi mô hình
có tính chất hiệp phương sai đồng nhất, sai số 50,000 này sẽ không đổi với
ngôi nhà giá 1 triệu và ngôi nhà giá chỉ 40,000. Điều này là phi lý bởi vì có
thể tồn tại giá trị âm cho ngôi nhà.
Tính độc lập Ta giả sử rằng các mẫu dữ liệu đầu vào là độc lập với nhau.
Nếu ta thực hiện đo đạc lặp đi lặp lại, ví dụ như thử máu nhiều lần trên một
bệnh nhân, các mẫu dữ liệu sẽ không độc lập. Với các dữ liệu phụ thuộc, ta
cần một mô hình hồi quy tuyến tính đặc biệt, ví dụ như các mô hình hỗn
hợp hoặc phương trình ước lượng tổng quát (GEE - generalized estimating
equation). Nếu ta chỉ sử dụng mô hình hồi quy tuyến tính thông thường, ta
có thể thu được kết quả sai từ mô hình.
Đặc trưng cố định Các đặc trưng đầu vào được coi là cố định. “Cố định”
ở đây có nghĩa là chúng được coi như các hằng số chứ không phải là các biến
số thống kê. Điều này có nghĩa là chúng không ảnh hưởng đến sai số của các
phép đo. Giả thiết này cũng không thực tế. Tuy vậy nếu không có giả thiết
này, ta sẽ phải điều chỉnh mô hình rất phức tạp khi mà ta phải tính toán sai
số của các đặc trưng đầu vào, và thường ta sẽ không muốn làm vậy.
Sự bất tương quan Ta không muốn các đặc trưng tương quan mật thiết
với nhau, bởi vì điều này sẽ gây khó khăn trong việc tìm ra trọng số tối ưu
cho mô hình. Nếu hai đặc trưng tương quan chặt chẽ với nhau, bởi vì giá trị
đầu ra là tổng các trọng số của các đặc trưng, ta sẽ không thể biết được đặc
trưng nào (1 trong 2) ảnh hưởng đến giá trị dự đoán.
1. Đặc trưng dạng số: Việc tăng giá trị của một đặc trưng làm thay đổi giá
trị đầu ra bởi các trọng số của nó. Một đặc trưng ví dụ đó là diện tích
của một ngôi nhà.
2. Đặc trưng dạng nhị phân: Đặc trưng chỉ mang 1 trong 2 giá trị cho trước,
1 ví dụ đó là đặc trưng “Nhà có vườn không?” trong ví dụ giá nhà ở trên.
1 trong 2 giá trị được coi là giá trị tham chiếu (trong một số ngôn ngữ
lập trình sẽ có giá trị là 0), ví dụ như “Không có vườn”. Việc thay đổi
giá trị từ giá trị tham chiếu thành giá trị còn lại sẽ ảnh hưởng tới đầu ra
của mô hình.
3. Đặc trưng dạng hạng mục: Trong loại này, một đặc trưng sẽ có thể rơi
vào 1 số giá trị nhất định. Ví dụ như đặc trưng “loại sàn” có thể có các
giá trị như “thảm”, “gỗ ép” và “gỗ”. Một cách để giải quyết loại dữ liệu
này đó là sử dụng biểu diễn one-hot (one-hot encoding). Với 1 đặc trưng
hạng mục có L giá trị khả dĩ, ta sẽ chỉ cần L ´ 1 cột, bởi vì cột thứ L
sẽ bao gồm thông tin không cần thiết (ví dụ khi cột từ 1 đến L ´ 1 có
tất cả các giá trị là 0, ta sẽ biết rằng giá trị còn lại sẽ phải là 1). Sự diễn
giải cho từng mục sẽ giống với sự diễn giải đối với đặc trưng nhị phân.
Trong nhiều ngôn ngữ lập trình, ví dụ như R, ta được phép mã hóa các
đặc trưng hạng mục theo rất nhiều cách khác nhau, sẽ được thảo luận kĩ
hơn trong mục 4.1.5.
4. Hệ số chặn β0 : Hệ số chặn là một trọng số của một đặc trưng bất biến
(giá trị của đặc trưng luôn là 1 với mọi điểm dữ liệu đầu vào). Hầu hết
các gói phần mềm đều tự động thêm đặc trưng bất biến này để ước lượng
giá trị của hệ số chặn. Khi đó, sự diễn giải sẽ là như sau: Với một đầu
vào có tất cả các đặc trưng dạng số có giá trị bằng 0 và biến hạng mục có
giá trị tại giá trị tham chiếu, dự đoán của mô hình sẽ chính là giá trị của
hệ số chặn. Sự diễn giải của hệ số chặn sẽ không mang nhiều ý nghĩa bởi
các điểm dữ liệu đầu vào có giá trị đặc trưng là 0 thường không mang
thông tin. Việc diễn giải chỉ có ý nghĩa khi mà các đặc trưng được chuẩn
hóa (trung bình tại 0 và độ lệch chuẩn là 1). Khi này, hệ số chặn phản
ánh giá trị được dự đoán ứng với một điểm dữ liệu đầu vào khi mà tất
cả các đặc trưng đều nằm ở giá trị trung bình của chúng.
Việc diễn giải đối với các đặc trưng trong mô hình hồi quy tuyến tính có
thể rơi vào một trong các trường hợp sau.
Diễn giải một đặc trưng dạng số Khi ta tăng giá trị của đặc trưng xk
một đơn vị, giá trị đầu ra y cũng sẽ tăng 1 lượng βk khi tất cả giá trị của các
đặc trưng còn lại được giữ nguyên.
Diễn giải một đặc trưng dạng hạng mục Việc thay đổi đặc trưng xk
từ hạng mục tham chiếu sang một hạng mục khác sẽ làm tăng giá trị đầu ra
y dựa trên βk khi các đặc trưng khác được giữ nguyên.
Một phép đo đạc quan trọng khác cho các mô hình tuyến tính được gọi
là phép đo bình phương R (R-squared measurement). Bình phương R hay
R-squared cho ta biết được lượng phương sai có thể được giải thích bởi mô
hình. Giá trị bình phương R càng lớn, mô hình càng giải thích dữ liệu một
cách tốt hơn. Công thức để tính toán bình phương R như sau:
R2 “ 1 ´ SSE{SST
Trong đó SSE là tổng bình phương của các thành phần lỗi (error terms):
n
ÿ
SSE “ py piq ´ ŷ piq q2
i“1
Giá trị SSE cho ta biết lượng phương sai còn lại sau khi khớp một mô
hình tuyến tính, và giá trị này được tính toán dựa trên bình phương sai khác
giữa giá trị sinh ra bởi mô hình và giá trị thực tế. Trong khi đó SST là tổng
phương sai của các giá trị sinh ra bởi mô hình. Ví dụ, mô hình đưa ra 100 dự
đoán, khi đó đầu tiên ta tính mean của 100 dự đoán này, sau đó ta tính tổng
phương sai. Bình phương R cho ta biết lượng phương sai có thể được giải
thích bởi mô hình tuyến tính. Giá trị bình phương R chạy từ 0 (trong trường
hợp mô hình không thể giải thích dữ liệu) tới 1 (khi mô hình giải thích được
tất cả phương sai trong dữ liệu).
Tuy vậy, bởi vì giá trị bình phương R tăng tỉ lệ với số lượng đặc trưng
trong mô hình, thậm chí cả khi chúng không hàm chứa bất kỳ thông tin nào
về dự đoán ta nhận được, ta cần sử dụng một công thức bình phương R khác
gọi là bình phương R điều chỉnh (adjusted R-squared) để giải quyết vấn đề
này, công thức bình phương R mới như sau:
n´1
R̄2 “ 1 ´ p1 ´ R2 q
n´p´1
trong đó p là số lượng đặc trưng và n là số mẫu của dữ liệu đầu vào cho việc
huấn luyện.
Khi giá trị bình phương R nhỏ, việc diễn giải một mô hình thường không
có nhiều ý nghĩa bởi vì những mô hình này về cơ bản không giải thích phương
sai nhiều. Bất cứ sự diễn giải nào trên các trọng số sẽ trở nên vô nghĩa.
Độ quan trọng của đặc trưng Độ quan trọng của một đặc trưng trong
một mô hình hồi quy tuyến tính có thể được đo đạc bởi giá trị tuyệt đối từ
thống kê t (t-statistics) của nó. Thống kê t là giá trị trọng số ước lượng tỉ lê
với độ lệch chuẩn (standard error).
β̂j
tβ̂j “
SEpβ̂j q
Hãy phân tích xem công thức này nói với ta những gì? Ở tử số, độ quan
trọng của một đặc trưng tăng theo giá trị của trọng số. Và ở mẫu số, nếu
một trọng số có phương sai càng lớn (đồng nghĩa với sự chắc chắn của giá trị
trọng số càng nhỏ), đặc trưng càng ít quan trọng.
4.1.2 Ví dụ
Weight SE |t|
(Intercept) 2399.4 238.3 10.1
seasonSUMMER 899.3 122.3 7.4
seasonFALL 138.2 161.7 0.9
seasonWINTER 425.6 110.8 3.8
holidayHOLIDAY -686.1 203.3 3.4
workingdayWORKING DAY 124.9 73.3 1.7
weathersitMISTY -379.4 87.6 4.3
weathersitRAIN/SNOW/STORM -1901.5 223.6 8.5
temp 110.7 7.0 15.7
hum -17.4 3.2 5.5
windspeed -42.5 6.9 6.2
days_since_2011 4.9 0.2 28.5
Bảng 4.2: Giá trị trọng số, độ lệch chuẩn và thống kê t của các đặc trưng.
Từ thông tin ta có trong bảng trọng số 4.2 (giá trị của trọng số và phương
sai) có thể được biểu diễn như trong hình duới đây:
Việc phác họa trọng số cho ta thấy điều kiện thời tiết (mưa/tuyết rơi/có
bão) sẽ có tác động tiêu cực lớn tới số lượng xe được thuê. Trong khi đó, giá
trị trọng số của đặc trưng “the working day” gần với 0 và 0 được bao gồm
trong cả khoảng 95%, nghĩa là ảnh hưởng của đặc trưng này không lớn về
mặt thống kê. Một số khoảng tin cậy có giá trị rất nhỏ và các ước lượng gần
với giá trị 0, tuy nhiên các ảnh hưởng đặc trưng lại mang nhiều ý nghĩa về
mặt thống kê. Nhiệt độ là một ví dụ nổi bật. Vấn đề của việc phác họa trọng
số đó là các đặc trưng được đo đạc ở các dải giá trị khác nhau. Với thời tiết
thì các trọng số biểu thị sự khác nhau giữa thời tiết tốt và thời tiết xấu,
trong khi với nhiệt độ thì chỉ phản ánh sự thay đổi khi nhiệt độ tăng lên 1 độ
C. Ta có thể làm cho các trọng số dễ dàng hơn để so sánh bằng cách chuẩn
hóa tỉ lệ giữa các đặc trưng (trung bình ở 0 và độ lệch chuẩn là 1) trước khi
khớp một mô hình tuyến tính.
Hình 4.1: Giá trị các trọng số được hiển thị tương ứng với các điểm và khoảng
tin cậy 95% tương ứng với các đường.
Phác họa ảnh hưởng
Các giá trị trọng số của mô hình hồi quy tuyến tính có thể được phân
tích chính xác hơn khi chúng được nhân với các giá trị đặc trưng thực tế.
Các trọng số phụ thuộc vào dải của các đặc trưng và trở nên khác nhau (ví
dụ khi ta thay đổi phép đo chiều cao của một người từ mét sang centimet).
Mặc dù các giá trị trọng số thay đổi, ảnh hưởng thực tế trong dữ liệu của ta
vẫn sẽ dữ nguyên. Phân phối của dữ liệu cũng đáng được lưu tâm bởi vì nếu
phương sai là rất nhỏ, nghĩa là hầu hết các điểm dữ liệu mà ta có sẽ có ảnh
hưởng gần như là bằng nhau trong việc ước lượng các trọng số. Việc phác
họa ảnh hưởng có thể giúp ta hiểu được một tổ hợp giữa trọng số và đặc
trưng sẽ có ảnh hưởng như thế nào đến dự đoán. Ta bắt đầu với việc tính
toán ảnh hưởng, bằng cách nhân giá trị trọng số với giá trị đặc trưng của 1
điểm dữ liệu:
piq piq
effectj “ wj xj
Hình 4.2: Phác họa ảnh hưởng của các đặc trưng chỉ ra phân phối của các
ảnh hưởng (là tích của giá trị đặc trưng và trọng số của đặc trưng) trong dữ
liệu.
Các giá trị được biểu diễn bằng các phác họa hình hộp (boxplots). Một
hộp trong một phác họa hình hộp chứa các giá trị ảnh hưởng cho một nửa
dữ liệu ta đang có (tại các phân vị thứ 25 và 75). Đường kẻ dọc qua một hộp
là giá trị ảnh hưởng trung vị (median effect). Ví dụ 50% các điểm dữ liệu
đầu vào có ảnh hưởng nhỏ hơn và 50% còn lại có ảnh hưởng lớn hơn lên dự
?
đoán. Các đường kẻ ngang trải tới ˘1.5IQR{ n, với IQR là dải liên tứ phân
vị (inter quartile range) (phân vị 75% - phân vị 25%). Các dấu chấm là các
điểm ngoại lai. Tác động của các đặc trưng hạng mục có thể được khái quát
trong một phác họa hình hộp duy nhất, khi so với phác họa trọng số, nơi mà
từng hạng mục đều có hàng riêng.
Feature Value
season SPRING
yr 2011
mnth JAN
holiday NO HOLIDAY
weekday THU
workingday WORKING DAY
weathersit GOOD
temp 1.604356
hum 51.8261
windspeed 6.000868
cnt 1606
days_since_2011 5
Bảng 4.3: Các đặc trưng và giá trị tương ứng của một điểm dữ liệu.
Đặc trưng ảnh hưởng mạnh nhất tới số lượng xe được thuê đó là “temp”
và “days_since_2011” (thể hiện xu hướng thuê xe theo thời gian). Tác động
của giá trị nhiệt độ lên kết quả cuối cùng nằm trong một dải rộng. Xu hướng
theo thời gian đi từ 0 cho tới vô cùng lớn, bởi vì vào ngày đầu tiên của dữ
liệu (01.01.2011), xu thế quan sát được là rất hữu hạn và giá trị trọng số
được ước lượng là 4.93. Điều này có nghĩa là ảnh hưởng tăng từng ngày và
đạt đỉnh trong ngày cuối cùng của tập dữ liệu (31.12.2912). Lưu ý rằng với
ảnh hưởng của một trọng số có giá trị âm, một điểm dữ liệu có độ ảnh hưởng
dương sẽ có giá trị đặc trưng âm (âm nhân âm bằng dương). Ví dụ, những
ngày có tốc độ gió lớn sẽ có độ ảnh hưởng âm tới dự đoán.
4.1.4 Giải thích các dự đoán riêng rẽ
Ta tự hỏi mỗi đặc trưng của một điểm dữ liệu sẽ ảnh hưởng ra sao đến
dự đoán? Điều này có thể được trả lời bằng cách tính toán độ ảnh hưởng
ứng với điểm dữ liệu này. Việc diễn giải độ ảnh hưởng của một điểm dữ liệu
chỉ có ý nghĩa khi ta so sánh phân bố của ảnh hưởng cho từng đặc trưng.
Ta muốn giải thích dự đoán của mô hình tuyến tính cho điểm dữ liệu thứ
6 trong tập dữ liệu về xe đạp, trong đó điểm dữ liệu này bao gồm các đặc
trưng có giá trị như trong bảng 4.3:
Để tính toán ảnh hưởng của các đặc trưng cho điểm dữ liệu này, ta phải
nhân từng giá trị đặc trưng với trọng số tương ứng từ mô hình hồi quy
tuyến tính. Với giá trị “WORKING DAY” của đặc trưng “workingday”, độ
ảnh hưởng là 124.9. Với nhiệt độ là 1.6 độ C, độ ảnh hưởng là 177.6. Ta thêm
các ảnh hưởng khác là các đường chéo qua phác họa ảnh hưởng, sẽ chỉ ra
phân bố của các ảnh hưởng trong dữ liệu. Điều này cho phép ta so sánh các
ảnh hưởng đơn lẻ với cả phân bố ảnh hưởng trong dữ liệu.
Hình 4.3: Việc phác họa ảnh hưởng trên một điểm dữ liệu chỉ ra phân bố ảnh
hưởng và làm nổi bật những ảnh hưởng đáng lưu ý.
Nếu ta lấy trung bình của các dự đoán cho các mẫu dữ liệu đầu vào, giá
trị thu được sẽ là 4504. Khi so sánh với dự đoán cho mẫu thứ 6, giá trị này
chỉ là 1571. Việc phác họa ảnh hưởng cho ta biết câu trả lời. Các phác họa
hình hộp chỉ ra phân phối của ảnh hưởng trên toàn tập dữ liệu, các dấu chéo
chỉ ra các ảnh hưởng đặc biệt trên mẫu thứ 6. Ví dụ, mẫu này có ảnh hưởng
nhiệt độ thấp bởi vì ngày này nhiệt độ là 2 độ C, thấp hơn với hầu hết các
ngày còn lại (nhớ rằng trọng số đối với đặc trưng nhiệt độ là dương). Cùng
với đó, ảnh hưởng của đặc trưng “days_since_2011” cũng được coi là nhỏ so
với các mẫu dữ liệu khác bởi vì mẫu này được thu thập vào thời gian đầu,
và đặc trưng này cũng có trọng số dương.
Ta có một vài cách để mã hóa một biến dạng hạng mục, và cách mã hóa
sẽ ảnh hưởng đến các mà ta diễn giải các trọng số. Một tiêu chuẩn về việc mã
hóa trong các mô hình hồi quy tuyến tính gọi là mã hóa đối xử (treatment
coding), và cách mã hóa này phù hợp trong hầu hết các trường hợp. Sử dụng
các phương pháp mã hóa khác nhau giúp việc mã hóa trở nên dễ dàng hơn.
Trong chương này, ta sẽ đề cập tới ba loại mã hóa khác nhau trong rất nhiều
loại mã hóa. Ví dụ được đưa ra sẽ gồm 6 mẫu dữ liệu và mỗi dữ liệu sẽ có
một đặc trưng kiểu hạng mục bao gồm ba giá trị. Với hai mẫu đầu, đặc trưng
hạng mục có giá trị là A; hai mẫu thứ 3 và 4 có giá trị B và 2 mẫu cuối có
giá trị là C.
Trong mã hóa đối xử, trọng số của đặc trưng hạng mục là sự khác nhau
trong dự đoán giữa giá trị của đặc trưng và giá trị tham chiếu. Hệ số chặn
của một mô hình tuyến tính là giá trị trung bình của giá trị tham chiếu (khi
các đặc trưng còn lại không đổi). Cột đầu tiên của ma trận là hệ số chặn và
luôn bằng 1. Cột thứ hai biểu thị liệu đặc trưng hạng mục của mẫu dữ liệu
có giá trị B hay không, và cột thứ 3 thể hiện liệu đặc trưng hạng mục của
mẫu dữ liệu có giá trị C hay không. Ta không cần cột cho giá trị A bởi vì
nếu làm vậy hàm truyền đạt (equation) của mô hình tuyến tính sẽ bị quá xác
định (overspecified). Chỉ cần biết về giá trị B và C có thể cho ta biết được
liệu đặc trưng có rơi vào giá trị A hay không.
Ma trận đặc trưng:
¨ ˛
1 0 0
˚1 0 0‹
˚ ‹
˚1 1 0‹
˚ ‹
˚ ‹
˚1 1 0‹
˚ ‹
˝1 0 1‚
1 0 1
Giá trị trọng số của từng hạng mục của 1 biến hạng mục là giá trị y-sai-
khác (y-difference) của từng giá trị đó với giá trị trung bình (cho rằng tất cả
các đặc trưng là 0 hoặc là giá trị tham chiếu). Cột đầu tiên được sử dụng để
ước lượng hệ số chặn. Giá trị trọng số β0 kết hợp với hệ số chặn để biểu diễn
giá trị trung bình. β1 là trọng số trong cột thứ hai, được tính toán bằng sự
sai khác giữa giá trị trung bình và hạng mục B. Tổng ảnh hưởng của hạng
mục B là β0 ` β1 . Sự diễn giải cho hạng mục C tương tự. Với hạng mục tham
chiếu A, ´pβ1 ` β2 q là sự sai khác giữa giá trị trung bình và β0 ´ pβ1 ` β2 q
tổng ảnh hưởng.
Ma trận đặc trưng:
¨ ˛
1 0 0
˚1 0 0‹
˚ ‹
˚1 1 0‹
˚ ‹
˚ ‹
˚1 1 0‹
˚ ‹
˝1 0 1‚
1 0 1
Mã hóa dummy
Giá trị β của mỗi hạng mục là giá trị trung bình của y cho từng hạng
mục (giả sử tất cả các đặc trưng còn lại là 0 hoặc là giá trị hạng mục tham
chiếu). Lưu ý rằng hệ số chặn có thể được bỏ để giúp ta tìm được tập trọng
số tối ưu duy nhất cho một mô hình tuyến tính.
¨ ˛
1 0 0
˚1 0 0‹
˚ ‹
˚0 1 0‹
˚ ‹
˚ ‹
˚0 1 0‹
˚ ‹
˝0 0 1‚
0 0 1
Nếu muốn tìm hiểu thêm về các loại mã hóa khác nhau cho đặc trưng
kiểu hạng mục, có thể tìm hiểu thêm ở trang web này hoặc blog này.
Lasso
Lasso là một phương pháp thuận tiện cho phép ta tự động làm thưa các
mô hình hồi quy tuyến tính. Lasso là viết tắt của “least absolute shrinkage
and selection operator” hay Thuật toán lựa chọn và rút gọn tối ưu LASSO,
được áp dụng trong các mô hình hồi quy tuyến tính để ta có thực hiện việc
chọn lựa đặc trưng và điều chuẩn (regularization ) các trọng số tương ứng
với các đặc trưng. Công thức tối ưu để tìm tập trọng số tối ưu như sau:
˜ ¸
n
1 ÿ piq
minβ py ´ xTi βq2
n i“1
Với LASSO, ta thêm một thành phần điều chuẩn vào công thức trên ta được:
˜ ¸
n
1 ÿ piq
minβ py ´ xTi βq2 ` λ||β||1
n i“1
Giá trị ||β||1 là chuẩn L1 (L1-norm) của vector đặc trưng, thành phần
mới này sẽ trừng phạt (penalize) các trọng số mang giá trị lớn. Khi chuẩn L1
được sử dụng, rất nhiều các trọng số sẽ nhận giá trị 0 trong khi các giá trị
còn lại bị thu nhỏ lại. Tham số lambda (λ) sẽ điều chỉnh tác động của thành
phần chuẩn L1 và giá trị này thường được chọn trong quá trình kiểm định
chéo (cross-validation). Đặc biệt, khi giá trị lambda lớn, rất nhiều trọng số
sẽ trở về 0. Các trọng số gắn với các đặc trưng có thể được biểu diễn bằng 1
hàm của tham số lambda. Mỗi trọng số của đặc trưng được biểu diễn bởi 1
đường trong hình dưới đây.
Hình 4.4: Khi tăng lượng phạt (penalty) lên các trọng số, số lượng các trọng
số có giá trị khác 0 sẽ giảm dần. Các đường trên còn được gọi là các đường
điều chuẩn. Các số trên cùng (12, 12, 12 ...) là số các trọng số khác 0 ở một
giá trị lambda cho trước. Ví dụ ở log lambda = 1, ta có 12 trọng số khác 0,
ở lambda = 6, chỉ còn 4 trọng số.
Vậy ta chọn hệ số lambda như thế nào? Nếu ta coi thành phần lượng phạt
như là một tham số cần được điều chỉnh thì ta có thể tìm tham số lambda
bằng cách tối thiểu hóa độ chệch của dự đoán và giá trị thực tế trong quá
trình kiểm định chéo. Ta cũng có thể coi lambda là một tham số điểu khiển
độ khả diễn giải của một mô hình. Khi lượng phạt càng lớn, mô hình sẽ bao
gồm càng ít đặc trưng hơn (bởi vì trọng số của chúng là 0) và mô hình càng
dễ diễn giải.
Ví dụ với Lasso
Bảng 4.4: Giá trị các trọng số đặc trưng của một điểm dữ liệu với 2 đặc trưng
khác giá trị tham chiếu.
Các phương pháp làm thưa khác trong mô hình tuyến tính
Các phương pháp giảm số lượng đặc trưng trong một mô hình tuyến tính
rất đa dạng.
Tiền xử lý: - Lựa chọn đặc trưng thủ công: Ta có thể luôn luôn dùng kinh
nghiệm để lựa chọn hoặc loại bỏ đặc trưng. Vấn đề lớn nhất của việc làm
này đó là ta không thể tự động hóa quy trình cũng như sẽ bị giới hạn bởi sự
hiểu biết về dữ liệu. - Lựa chọn đặc trưng đơn lẻ (univariate selection): Một
Weight
seasonSPRING -389.99
seasonSUMMER 0.00
seasonFALL 0.00
seasonWINTER 0.00
holidayHOLIDAY 0.00
workingdayWORKING DAY 0.00
weathersitMISTY 0.00
weathersitRAIN/SNOW/STORM -862.27
temp 85.58
hum -3.04
windspeed 0.00
days_since_2011 3.82
Bảng 4.5: Giá trị các trọng số đặc trưng của một điểm dữ liệu với 5 đặc trưng
khác giá trị tham chiếu
ví dụ đó là hệ số tương quan. Chỉ những đặc trưng có giá trị tương quan với
mục tiêu đầu ra vượt quá một ngưỡng cho phép được chọn. Tuy nhiên, nhược
điểm của việc này đó là ta phải cân nhắc từng đặc trưng một cách độc lập.
Một số đặc trưng khi được xét riêng rẽ như vậy sẽ không thể hiện được sự
tương quan trừ khi có mặt của các đặc trưng khác.
Trong từng bước:
- Lựa chọn tiến (forward selection): Khớp mô hình với chỉ một đặc trưng.
Làm vậy với từng đặc trưng. Ta chọn mô hình làm việc tốt nhât (ví dụ có
giá trị R bình phương cao nhất). Với các đặc trưng còn lại, ta khớp các mô
hình khác nhau bằng cách thêm từng đặc trưng vào mô hình tốt nhất hiện
tại. Ta chọn mô hình làm việc tốt nhất. Tiếp tục cho đến khi mô hình thỏa
mãn một số tiêu chí được đề ra ban đầu, ví dụ như số lượng đặc trưng cực
đại.
- Lựa chọn lùi (backward selection): Tương tự với lựa chọn tiến. Nhưng
thay vì thêm từng đặc trưng, ta bắt đầu với một mô hình bao gồm tất cả các
đặc trưng có thể và cố gắng tìm ra đặc trưng nào mà khi ta bỏ đi sẽ đem lại
kết quả tốt nhất. Lặp lại cho tới khi thỏa mãn một số tiêu chí ban đầu.
Tôi nghĩ Lasso là một phương pháp rất tốt, bởi vì nó tự động, làm việc
trên toàn đặc trưng một cách đồng thời, và có thể hiệu chỉnh thông qua
lambda. Phương pháp này cũng làm việc tốt trên mô hình hồi quy logistic
cho bài toán phân loại.
4.2.1 Tại sao không áp dụng hồi quy tuyến tính cho
phân loại?
Mô hình hồi quy tuyến tính có thể làm việc tốt với bài toán hồi quy, nhưng
không thể với bài toán phân loại. Tại sao vậy? Nếu ta có 2 lớp (classes), ta
có thể gắn nhãn một trong hai lớp là 0 và lớp còn lại là 1 và sử dụng hồi quy
tuyến tính. Về mặt kỹ thuật, mô hình có thể hoạt động, tuy nhiên, có một
số vấn đề với cách tiếp cận này:
Mô hình tuyến tính không cho ta biết xác suất mà chỉ tính toán đầu ra
ứng với các giá trị 0 và 1 để tìm ra một siêu phẳng mà khớp các điểm dữ
liệu cho trước một cách tốt nhất. Công đoạn này được thực hiện bởi phép
nội suy giữa các điểm và ta không thể diễn giải dưới dạng xác suất.
Ngoài ra, giá trị đầu ra của một mô hình tuyến tính có thể nhỏ hơn 0
hoặc lớn hơn 1. Điều này cho phép ta tiếp cận bài toán phân loạt một cách
dễ dàng hơn một chút.
Tuy nhiên, vì giá trị đầu ra không phải là các giá trị xác suất mà là một
phép nội suy tuyến tính giữa các điểm, ta khó có căn cứ để phân loại một
lớp với các lớp còn lại. Vấn đề này được thảo luận kĩ trên Stackoverflow tại
đây.
Khi ta có nhiều hơn 2 lớp, ta sẽ phải gắn nhãn các lớp tiếp theo với các
nhãn là 2, 3, ... Mặc dù các lớp không có tương quan gì về mặt thứ tự, nhưng
việc ta gắn nhãn như vậy sẽ làm mô hình hiểu nhầm và mối quan hệ về mặt
thứ tự sẽ được học trong quá trình huấn luyện. Hai lớp có thể có giá trị mong
muốn gần như giống nhau, nhưng về bản chất giữa chúng không tồn tại quan
hệ gần gũi nào cả.
Hình 4.5: Một mô hình tuyến tính phân loại u ác tính là 1 và u lành tính là
0 khi cho trước độ lớn của u. Các đường phía trên cho ta biết dự đoán của
các mô hình tuyến tính. Với dữ liệu bên trái, ta có thể thấy ngưỡng 0.5 sẽ
làm việc tốt trong việc phân loại (chỉ có 2 điểm bị dự đoán sai thành lành
tính). Sau đó, ta thêm vài trường hợp u ác tính, lúc này đường hồi quy sẽ
dịch chuyển và ngưỡng 0.5 sẽ không thể phân tách các lớp. Các điểm dữ liệu
trong hình bên phải đã được thay đổi vị trí 1 chút để giảm việc quá phác họa
(over-plotting).
4.2.2 Lý thuyết cơ sở
Một hướng giải quyết bài toán phân loại là hồi quy logistic. Thay vì tìm
ra một đường thẳng hoặc một siêu phẳng, một mô hình hồi quy logistic sử
dụng hàm logistic để sinh ra giá trị giữa 0 và 1. Hàm logistic được định nghĩa
như sau:
1
logisticpηq “
1 ` expp´ηq
Việc biến đổi từ hồi quy tuyến tính sang hồi quy logistic khá minh bạch
và đơn giản. Trong hồi quy tuyến tính, ta mô hình đặc trưng và đầu ra với
Hình 4.6: Hàm logistic sinh ra các giá trị giữa 0 và 1. Khi đầu vào là 0, giá
trị đầu ra là 0.5.
piq
ŷ piq “ β0 ` β1 x1 ` . . . ` βp xpiq
p
Với bài toán phân loại, do ta mong muốn các giá trị xác suất, ta đưa vế
phải của phương trình trên vào hàm logistic. Ta có:
1
P py piq “ 1q “ piq piq
1 ` expp´pβ0 ` β1 x1 ` . . . ` βp xp qq
Ta hãy quay lại bài toán phân loại u ác tính/lành tính bên trên, nhưng
lần này ta sử dụng mô hình hồi quy logistic:
Bài toán phân loại có thể được giải quyết tốt hơn với hồi quy logistic và
ta có thể dùng ngưỡng 0.5.
Việc thêm một số điểm dữ liệu không thực sự ảnh hưởng tới đường ranh
giới mà ta tìm ra trước đó như trong hình dưới đây.
Hình 4.7: Mô hình hồi quy logistic tìm ra được một đường ranh giới quyết
định giữa u lành và u ác dựa trên kích thước của u. Đường logistic bị dịch
và khớp với dữ liệu.
ˆ ˙ ˆ ˙
P py “ 1q P py “ 1q
log “ log “ β0 ` β1 x1 ` . . . ` βp xp
1 ´ P py “ 1q P py “ 0q
Ta gọi thành phần nằm trong hàm log là “kì dị” (odds - xác suất của sự
kiện xảy ra chia cho xác suất sự kiện không xảy ra) và cả hàm log là log kì
dị.
Công thức này chỉ ra rằng mô hình hồi quy logistic là một mô hình tuyến
tính với log kì dị. Tuyệt vời! Nhưng có vẻ không giúp gì được nhiều cho lắm!
Khi ta biến đổi một chút, ta có thể thấy được các dự đoán thay đổi như thế
nào khi một trong các đặc trưng xj thay đổi 1 đơn vị. Để làm điều này, đầu
tiên ta áp dụng hàm exp() cho cả 2 phía của phương trình. Ta được.
P py “ 1q
“ odds “ exp pβ0 ` β1 x1 ` . . . ` βp xp q
1 ´ P py “ 1q
Sau đó ta so sánh sự tác động khi ta tăng giá trị của một đặc trưng lên
1 đơn vị. Rồi sau đó, ta tính tỉ số giữa hai giá trị trước và sau khi tăng:
exppaq
“ exppa ´ bq
exppbq
Cuối cùng ta thu được:
oddsxj `1
“ exp pβj pxj ` 1q ´ βj xj q “ exp pβj q
odds
Giá trị cuối cùng ta thu được là exp() của trọng số trên đặc trưng đó. Khi
thay đổi một đặc trưng 1 đơn vị, tỉ lệ kì dị (odds ratio) sẽ bị thay đổi theo
một tỉ lệ exppβj q. Ta có thể diễn giải như sau: Khi tăng xj 1 đơn vị, tỉ lệ kì
dị thay đổi một lượng là giá trị trọng số ứng với xj . Hầu hết chúng ta diễn
giải trên tỉ lệ kì dị bởi vì sử dụng công thức gốc (có hàm log) sẽ khó tưởng
tượng hơn. Việc diễn giải tỉ lệ kì dị cũng cần một vài yêu cầu cho trước. Ví
dụ, khi ta có giá trị kì dị:
P py “ 1q
“2
1 ´ P py “ 1q
nghĩa là xác suất để y=1 gấp đôi xác suất y=0. Nếu ta có một trọng số là
0.7, thì việc tăng đặc trưng tương ứng lên một đơn vị cũng đồng nghĩa với
việc nhân tỉ lệ kì dị với expp0.7q (xấp xỉ 2) và giá trị kì dị:
P py “ 1q
“4
1 ´ P py “ 1q
Tuy nhiên ta luôn luôn ta không thể diễn giải dự trên tỉ lệ kì dị. Bởi vì
việc tính toán giá trị kì dị đòi hỏi ta phải đặt giá trị cho từng các đặc trưng,
và điều này chỉ có ý nghĩa khi ta đang quan sát duy nhất một điểm dữ liệu.
Ta có một vài cách diễn giải cho các mô hình hồi quy logistic với các loại
đặc trưng khác nhau:
- Đặc trưng dạng số: Khi ta tăng giá trị xj lên 1, giá trị kì dị sẽ được tăng
lên exppβj q lần.
- Đặc trưng nhị phân: Một trong hai giá trị của đặc trưng là giá hạng
mục tham chiếu (thường được mã hóa là 0). Việc thay đổi đặc trưng xj từ
giá trị tham chiếu sang giá trị còn lại cũng làm giá trị kì dị tăng lên exppβj q
lần.
- Đặc trưng hạng mục có nhiều hơn 2 hạng mục: Ta có thể dụng mã hóa
one-hot, mỗi hạng mục có cột riêng. Khi này ta chỉ cần L ´ 1 cột cho L hạng
mục. Hạng mục thứ L là hạng mục tham chiếu. Sự diễn giải của từng hạng
mục cũng giống như với đặc trưng dạng nhị phân.
- Hệ số chặn β0 : Khi tất cả các đặc trưng dạng số là 0 và các đặc trưng
hạng mục ở giá trị tham chiếu, giá trị kì dị là exppβ0 q. Sự diễn giải trọng số
của hệ số chặn thường không cần thiết.
4.2.4 Ví dụ
Ta sử dụng một mô hình hồi quy logistic để dự đoán bệnh ung thư cổ tử
cung dựa trên một số đặc trưng. Bảng dưới đây cho ta thấy các giá trị trọng
số ứng với các đặc trưng, giá trị kì dị tương ứng, và độ lệch chuẩn của phép
ước lượng.
Sự diễn giải của một đặc trưng số “(Num. of diagnosed STDs)”: Một sự
tăng của “(Num. of diagnosed STDs)” sẽ làm tăng kì dị (ung thư vs không
ung thư) 2.26 lần, khi các đặc trưng còn lại được giữ nguyên. Ta nên nhớ
rằng việc tương quan này không hàm chứa quan hệ nhân quả.
Sự diễn giải của một đặc trưng hạng mục “(Hormonal contraceptives y/n)”:
Với phụ nữ sử dụng các biện pháp tránh thai dựa vào điều chỉnh nội tiết tố
(hormonal contraceptives), giá trị kì dị cho việc mắc ung thư và không ung
thư sẽ giảm còn 0.89 lần so với phụ nữ không sử dụng, khi các đặc trưng còn
lại được giữ nguyên.
Giống trong mô hình tuyến tính, sự diễn giải luôn đi kèm với điều kiện
Bảng 4.6: Kết quả sau khi khớp một mô hình hồi quy logistic trên tập dữ
liệu ung thư cổ tử cung. Dưới đây là các đặc trưng của mô hình, giá trị trọng
số và kì dị cũng như độ lệch chuẩn của các trọng số.
Weight Odds ratio Std. Error
Intercept -2.91 0.05 0.32
Hormonal contraceptives y/n -0.12 0.89 0.30
Smokes y/n 0.26 1.29 0.37
Num. of pregnancies 0.04 1.04 0.10
Num. of diagnosed STDs 0.82 2.26 0.33
Intrauterine device y/n 0.62 1.85 0.40
y “ β0 ` β1 x1 ` . . . ` βp xp `
Mô hình hồi quy tuyến tính giả sử rằng đầu ra y ứng với một đầu vào
có thể được biểu diễn bởi một tổng trọng số của p đặc trưng với một giá trị
lỗi đơn lẻ (tuân theo phân phối chuẩn). Bằng cách khớp mô hình với công
thức này, ta có thể đạt được tính diễn giải. Các ảnh hưởng được sinh ra bởi
phép cộng, nghĩa là không bao gồm sự tương tác giữa các đặc trưng, và các
mối quan hệ là tuyến tính, nghĩa là khi ta tăng giá trị của một đặc trưng
thì giá trị của đầu ra cũng sẽ tăng hoặc giảm một cách tương ứng. Mô hình
tuyến tính cho phép ta mô hình mối quan hệ giữa một đặc trưng và đầu ra
thành một số duy nhất, gọi là trọng số.
Tuy nhiên một tổng trọng số đơn giản sẽ trở nên rất hạn chế cho rất nhiều
bài toán trong cuộc sống. Trong chương này, ta sẽ tìm hiểu về ba vấn đề của
mô hình hồi quy tuyến tính cổ điển và làm sao để giải quyết chúng. Ngoài
ra còn rất nhiều vấn đề khác nhưng ta sẽ chỉ tập trung vào ba vấn đề trong
hình vẽ dưới đây.
Hình 4.8: Ba giả thiết của mô hình tuyến tính nằm ở bên phải bao gồm: Đầu
ra của mô hình tuân theo phân phối Gaussian, các đặc trưng không tương
tác lẫn nhau, và mối quan hệ tuyến tính giữa đặc trưng và đầu ra. Các giả
thiết này thường không được chấp nhận trong thực tế. Trong thực tế: Giá
trị đầu ra không tuân theo phân phối Gaussian, các đặc trưng có thể tương
tác lẫn nhau, và mối quan hệ giữa đầu ra và đặc trưng là phi tuyến.
Ta có giải pháp cho tất cả các vấn đề trên: Vấn đề: Đầu ra y không tuân
theo phân phối Gaussian
Ví dụ: Giả sử ta muốn dự đoán sẽ mất bao nhiêu phút để lái xe trong
một ngày cho trước. Các đặc trưng mà ta có là loại ngày, thời tiết, ... Nếu
ta sử dụng mô hình tuyến tính, nó có thể dự đoán ra số phút âm bởi vì ta
đang giả thiết với phân phối Gaussian. Tương tự nếu ta muốn dự đoán xác
suất với một mô hình tuyến tính, ta có thể nhận giá trị xác suất nhỏ hơn 0
hoặc lớn hơn 1.
Giải pháp: 4.3.1 Mô hình tuyến tính tổng quát
Vấn đề: Các đặc trưng tương tác với nhau
Ví dụ: Thông thường, mưa nhẹ sẽ có ảnh hưởng tiêu cực nhẹ đến ý định
đạp xe hay không. Tuy nhiên vào mùa hè trong giờ cao điểm, mưa sẽ tốt bởi
vì khi đó đa phần sẽ ở nhà và việc đạp xe sẽ thoải mái hơn rất nhiều. Đây
là một mối tương tác giữa hai đặc trưng thời gian và thời tiết, và mối tương
tác này không thể được học bởi mô hình tuyến tính.
Giải pháp: 4.3.2 Thêm các tương tác một cách thủ công
Vấn đề: Đầu ra và đặc trưng có mối quan hệ phi tuyến
Ví dụ: Khi nhiệt độ nằm giữa 0 và 25 độ, sự ảnh hưởng của nhiệt độ
lên mong muốn đạp xe có thể là tuyến tính, nghĩa là khi ta tăng từ 0 lên 1
độ đồng nghĩa với việc tăng độ mong muốn đi đạp xe từ 20 lên 21. Nhưng
ở nhiệt độ cao, việc tăng nhiệt độ không làm tăng mong muốn mà thậm chí
còn làm giảm vì ít người muốn ra ngoài khi trời quá nóng.
Giải pháp: 4.3.3 Mô hình bổ sung tổng quát; biến đổi đặc trưng
Các giải pháp cho 3 vấn đề trên sẽ được trình bày trong chương này. Có
rất nhiều các mở rộng khác của mô hình tuyến tính sẽ không được đề cập do
nếu tôi gộp tất cả ở đây, chương này sẽ trở thành một cuốn sách trong cuốn
sách về một vấn đề đã được thảo luận trong rất nhiều cuốn khác. Nhưng vì
bạn đã đọc tới đây, tôi đã tạo ra một số vấn đề và giải pháp cho các mở rộng
ở cuối chương này. Tên của các giải pháp được sử dụng như một điểm bắt
đầu khi bạn muốn đi sâu vào nghiên cứu từng lĩnh vực.
gpEY py|xqq “ β0 ` β1 x1 ` . . . βp xp
GLM bao gồm ba thành phần. Hàm liên kết g, tổng trọng số X T β (đôi
khi được gọi là bộ dự đoán tuyến tính), và một phân bố xác suất có dạng
mũ (EY .)
Các phân phối có dạng hàm mũ có thể được viết một cách tổng quát bao
gồm phần mũ (exponent), giá trị trung bình (mean), và phương sai của phân
phối đó, ngoài ra còn một số tham số khác. Bạn có thể tìm hiểu về các phân
phối có dạng hàm mũ ở link này. Bất cứ phân phối nào cũng có thể được sử
dụng cho GLM. Dựa trên loại đầu ra ta muốn dự đoán, ta có thể chọn phân
phối phù hợp. Nếu đầu ra có dạng số đếm (ví dụ như số trẻ em trong một
hộ gia đình), ta có thể dùng phân phối Poisson. Nếu đầu ra luôn dương (thời
gian giữa hai sự kiện), ta có thể dùng phân phối mũ.
Ta hãy xem xét mô hình tuyến tính cổ điển như là một trường hợp đặc
biệt của GLM. Hàm liên kết cho phân phối Gaussian là hàm nhận dạng
(identity function - f pxq “ x). Phân phối Gaussian được tham số hóa bởi giá
trị trung bình và phương sai. Trong mô hình tuyến tính, hàm liên kết giúp
tổng trọng số và giá trị trung bình liên hệ với nhau.
Về GLM nói chung, định nghĩa này được phổ quát cho bất cứ phân phối
nào (có dạng hàm mũ) và một hàm liên kết bất kì. Nếu y là biến đếm, ví dụ
như số cốc cà phê một người uống trong một ngày cho trước, ta có thể mô
hình với phân phối Poisson và hàm log tự nhiên là hàm liên kết:
lnpEY py|xqq “ xT β
Mô hình hồi quy logistic cũng thuộc dạng GLM với giả thiết rằng tuân
theo phân phối Bernouli và hàm liên kết là hàm logit.
Hàm logit có dạng:
ˆ ˙
p
logitppq “ log
1´p
Giá trị trung bình của phân phối nhị phân được sử dụng trong hồi quy
logistic là xác suất để y “ 1.
ˆ ˙ ˆ ˙
EY py|xq P py “ 1|xq
xT β “ ln “ ln
1 ´ EY py|xq 1 ´ P py “ 1|xq
Ta có:
1
P py “ 1q “
1 ` expp´xT βq
Mỗi phân phối có dạng mũ có một hàm liên kết kèm theo kinh điển
(canonical) và có thể suy ra một cách toán học từ phân phối đó. GLM có thể
giúp ta chọn hàm liên kết độc lập với phân phối mà ta chọn. Vậy làm sao
để chọn hàm liên kết chính xác? Thực ra ta không có một công thức chuẩn
cho việc này. Ngoài sử dụng kinh nghiệm thực tiễn ta cũng cần tính toán
lý thuyết hợp lí để cho mô hình ta khớp với dữ liệu nhất. Với một số phân
phối, hàm liên kết kinh điển có thể trả về các giá trị sai với phân phối tương
ứng. Trong trường hợp các phân phối dạng mũ, hàm liên kết kinh điển là
nghịch đảo âm. Điều này có thể trả về các dự đoán mang giá trị âm và nằm
ngoài phân phối mà ta chọn. Do ta có thể chọn bất cứ hàm liên kết nào, một
phương pháp đơn giản đó là ta chọn một hàm có quan hệ gần gũi với phân
phối ta đang dùng.
Hình 4.9: Phân phối của thí nghiệm số lượng cốc cà phê trong 200 ngày.
76 trên tổng số 200 ngày, không có cốc cà phê nào được tiêu thụ và rất
ít ngày người đó tiêu thụ cả thảy 7 cốc cà phê. Đầu tiên ta hãy sử dụng mô
hình tuyến tính để dự đoán số lượng cốc cà phê sử dụng các đặc trưng đã
nêu. Nếu ta giả sử đầu ra tuân theo phân phối Gaussian thì sao? Giả thiết
sai có thể dẫn đến các phép tính toán và ước lượng sai, đặc biệt là khoảng
tin cậy của các trọng số. Một vấn đề rõ ràng khác đó là dự đoán của ta có
thể không khớp với khoảng giá trị hợp lí. Ví dụ như nếu dùng mô hình tuyến
tính, số cốc cà phê có thể là âm!!!
Việc dự đoán các giá trị âm chỉ ra rằng mô hình tuyến tính đang làm việc
không tốt trong bài toán này. Thay vào đó, ta có thể dùng GLM để xử lý vấn
đề. Ta có thể thay đổi hàm liên kết và chọn phân phối khác. Một lựa chọn
khác là ta vẫn có thể dùng phân phối Gaussian và sử dụng hàm liên kết luôn
trả về giá trị dự đoán dương ví dụ như hàm log-link (nghịch đảo của hàm
Hình 4.10: Số cốc cà phê phụ thuộc vào stress, giấc ngủ và công việc. Mô
hình tuyến tính dự đoán các giá trị âm.
mũ tự nhiên) thay vì hàm nhận dạng. Thậm chí để tốt hơn ta có thể chọn
phân phối tương ứng với các giá trị thu thập được trước đó và một hàm liên
kết phù hợp. Do đầu ra là biến đếm, phân phối Poisson là một lựa chọn hợp
lí bên cạnh hàm log đóng vai trò là hàm liên kết. Trong trường hợp này, dữ
liệu cốc cà phê giống với phân phối Poisson, do đó phân phối này này là sự
lựa chọn hoàn hảo. Khi này, phân phối của đầu ra được biểu diễn như hình
trên.
Sự diễn giải của các trọng số trong GLM Phân phối mà ta chọn cũng
như hàm liên kết sẽ quyết định việc các trọng số của GLM được diễn giải
như thế nào. Trong ví dụ trên, ta dùng GLM với phân phối Poisson và hàm
log-link, do đó giữa đặc trưng và đầu ra của mô hình có quan hệ sau:
Để diễn giải các trọng số, ta đảo hàm liên kết để ta có thể diễn giải ảnh
hưởng của các đặc trưng lên đầu ra của mô hình:
Hình 4.11: Số cốc cà phê phụ thuộc vào stress, giấc ngủ và công việc. GLM
với giả thiết phân phối Poisson và hàm liên kết log-link là lựa chọn hợp lí cho
tập dữ liệu này.
Epcoffees|stress, sleep, workq “ exppβ0 ` βstress xstress ` βsleep xsleep ` βwork xwork q
Do tất cả các trọng số đều nằm trong phần mũ, nên việc diễn giải phụ
thuộc vào phép nhân, bởi vì exp(a + b) bằng exp(a) nhân exp(b). Cuối cùng
ta xem xét các giá trị trọng số với một ví dụ đơn giản. Bảng sau liệt kê các
trọng số của các đặc trưng với khoảng tin cậy 95%.
Việc tăng mức độ stress lên 1 sẽ nhân số lượng cà phê lên 1.12 lần (e0.12 ).
Tương tự, nếu chất lượng giấc ngủ được tăng lên 1 đơn vị sẽ làm số cốc cà
phê giảm chỉ còn 86%. Số cốc cà phê trong ngày làm việc gấp xấp xỉ 2.23
lần số cốc cà phê trong ngày nghỉ. Nói chung, nếu một người gặp càng nhiều
stress, ngủ càng ít, và nhiều công việc, số lượng cốc cà phê sẽ càng tăng.
Trong chương này, ta đã tìm hiểu một chút về mô hình tuyến tính tổng
quát (GLM) và ta thấy rằng chúng rất hữu ích khi đầu ra mong muốn của
mô hình không tuân theo phân phối Gaussian. Tiếp theo, ta sẽ tìm hiểu cách
để thêm các tương tác giữa các đặc trưng vào trong mô hình hồi quy tuyến
tính.
work temp
Y 25
N 12
N 30
Y 5
Ma trận của dữ liệu được dùng trong mô hình tuyến tính sẽ hơi khác một
chút. Bảng sau là trong trường hợp nếu ta không sử dụng bất kì tương tác
nào. Bình thường, sự việc biến đổi này sẽ được thực hiện một cách tự động
bởi các phần mềm thống kê.
Intercept workY temp
1 1 25
1 0 12
1 0 30
1 1 5
Cột đầu tiên là hệ số chăn. Cột thứ hai mã hóa đặc trưng hạng mục, 0 là
giá trị tham chiếu, và 1 là giá trị còn lại. Cột thứ ba là thông tin về nhiệt độ.
Nếu ta muốn mô hình tuyến tính học tương tác giữa nhiệt độ và đặc trưng
loại ngày (ngày nghỉ/ngày thường) trong quá trình huấn luyện, ta cần thêm
một cột cho tương tác này.
Intercept workY temp workY.temp
1 1 25 25
1 0 12 0
1 0 30 0
1 1 5 5
Cột mới “workY.temp” lưu thông tin về tương tác giữa đặc trưng loại
ngày và nhiệt độ. Cột đặc trưng mới này mang giá trị 0 nếu là ngày nghỉ và
giá trị nhiệt độ vào những ngày thường. Với các mã hóa này, mô hình tuyến
tính có thể học một đặc trưng khác của nhiệt độ cho cả hai loại ngày.
Ở trên là sự tương tác giữa một đặc trưng dạng số và một đặc trưng hạng
mục. Sự tương tác giữa hai đặc trưng hạng mục cũng tương tự. Ta tạo ra các
đặc trưng mới để biểu diễn các tổ hợp của các đặc trưng. Ví dụ ta có hai đặc
trưng hạng mục loại ngày và thời tiết (wthr):
work wthr
Y 2
N 0
N 1
Y 2
hai trọng số để biểu diễn đặc trưng này (do đặc trưng thời tiết có 3 hạng
mục: 00, 01, và 10). Các cột còn lại biểu diễn các tương tác, giá trị bằng 1
nếu cả 2 đặc trưng đều nhận giá trị 1 và 0 trong các trường hợp còn lại.
Với hai đặc trưng số, tương tác thậm chí còn dễ dàng để biểu diễn hơn
khi ta chỉ cần nhân hai giá trị số này với nhau.
Ngoài ra còn nhiều cách tiếp cận khác để phát hiện và thêm các tương tác
một cách tự động. Một trong số chúng có thể tìm trong chương về RuleFit
(4.6). Thuật toán RuleFit trước nhất sẽ tìm kiếm tương tác rồi sau đó sẽ ước
lượng một mô hình hồi quy tuyến tính bao gồm các tương tác đó.
Ví dụ Hãy trở lại với ví dụ dự đoán thuê xe. Lần này, ta sẽ cân nhắc tương
tác giữa nhiệt độ và loại ngày. Việc này dẫn đến các trọng số được ước lượng
và khoảng tin cậy sau đây:
Tương tác mới có ảnh hưởng âm (-21.8) và khác 0 (khoảng tin cậy 95%
không bao gồm giá trị 0). Ngoài ra, dữ liệu không có tính chất phân phối
độc lập tương đồng (iid - independent and identically distributed), vì các
ngày gần nhau sẽ phụ thuộc lẫn nhau. Khoảng tin cậy có thể bị sai. Sự
tương tác thay đổi cách diễn giải của các trọng số liên quan đến một đặc
trưng. Liệu nhiệt độ có một ảnh hưởng tiêu cực tới đầu ra nếu ngày đang
xét là một ngày bình thường (a working day)? Câu trả lời là không, thậm
chí cả nếu điều đó được thể hiện trên bảng. Ta không thể diễn giải đặc trưng
“workingdayWORKING DAY:temp” một cách riêng rẽ chỉ bằng trọng số của
nó do điều kiện của việc diễn giải trong mô hình tuyến tính là: “Tất cả các
đặc trưng còn lại không đổi”. Giả sử rằng ta đang có một ngày làm việc và ta
muốn biết liệu điều gì sẽ xảy ra nếu nhiệt độ tăng thêm 1. Khi đó ta cần tính
tổng của cả trọng số cho hai đặc trưng “temp” và “workingdayWORKING
DAY:temp” để ước lượng sự thay đổi.
Việc hiểu các mối tương tác bằng trực quan sẽ dễ dàng hơn. Với việc thêm
một tương tác mới giữa một đặc trưng hạng mục và một đặc trưng số, ta sẽ
có hai đường để biểu diễn ảnh hưởng của nhiệt độ thay vì một. Đường ảnh
hưởng của nhiệt độ cho ngày nghỉ có thể được đọc trực tiếp từ bảng (125.4).
Ảnh hưởng cho ngày làm việc là tổng của cả hai trọng số nhiệt độ (125.4 -
21.8 = 103.6). Hệ số chặn tại nhiệt độ bằng 0 với ngày nghỉ được quyết định
bởi hệ số chặn của mô hình tuyến tính (2185.8). Hê số chặn với ngày làm
việc tại nhiệt độ bằng 0 là 2185.8 + 451.9 = 2637.7.
việc này mà nó sẽ chỉ quan tâm đến siêu phẳng cuối cùng sau huấn luyện.
Ta có thể mô hình các mối quan hệ phi tuyến bằng cách sử dụng một trong
các kỹ thuật sau:
- Biến đổi đặc trưng một cách đơn giản (ví dụ dùng hàm log).
- Hạng mục hóa các đặc trưng.
- Mô hình tuyến tính bổ sung tổng quát.
Trước khi đi sâu vào từng phương pháp, ta hãy bắt đầu với một ví dụ để
mô tả chúng. Ta có tập dữ liệu thuê xe và huấn luyện một mô hình tuyến
tính chi với đặc trưng duy nhất là nhiệt độ để dự đoán số xe. Hình dưới đây
chỉ ra đường ước lượng với các trường hợp: mô hình tuyến tính thông thường,
mô hình tuyến tính với nhiệt độ được biến đổi bằng hàm log, mô hình tuyến
tính với nhiệt độ được thay đổi về dạng hạng mục, và cuối cùng là GAM.
Biến đổi đặc trưng Hàm logarit thường được sử dụng để biến đổi các đặc
trưng. Khi sử dụng hàm này, cứ mỗi khi nhiệt độ tăng 10 lần, độ ảnh hưởng
Hình 4.13: Dự đoán số lượng xe chỉ dùng đặc trưng duy nhất là nhiệt độ. Mô
hình tuyến tính (góc trên bên trái) không thể khớp dữ liệu. Một giải pháp
khác đó là biến đổi đặc trưng ví dụ sử dụng hàm mũ (góc trên bên phải),
hạng mục hóa đặc trưng (góc dưới bên trái), tuy nhiên cũng không thể hoạt
động tốt. GAM có thể tìm ra một đường khớp dữ liệu một cách tự động với
đặc trưng nhiệt độ.
là giống nhau (ví dụ khi tăng từ 1 lên 10 độ và tăng 0.1 lên 1 độ). Các ví dụ
khác của hàm biến đổi đặc trưng là hàm căn bậc 2, hàm mũ hai và các loại
hàm dạng mũ. Việc sử dụng biến đổi đặc trưng đồng nghĩa với việc ta thay
đổi đặc trưng trong các cột thành các hàm của giá trị đó, ví dụ như hàm log,
và sau đó khớp với mô hình như thông thường. Một số phần mềm thống kê
cũng cho phép ta xác định loại biến đổi trong việc sử dụng mô hình tuyến
tính và ta có thể mặc nhiên sáng tạo trong việc biến đổi các đặc trưng. Sự
diễn giải của các đặc trưng thay đổi tùy theo phương pháp biến đổi ta sử
dụng. Nếu ta sử dụng hàm log, việc diễn giải trong một mô hình tuyến tính
trở thành: “Nếu hàm log của một đặc trưng được tăng lên 1 nghĩa là đầu ra
tăng lên số lần chính bằng giá trị trọng số của đặc trưng đó”. Sử ta sử dụng
GLM với một hàm liên kết khác hàm nhận dạng, việc diễn giải trở nên phức
tạp hơn bởi vì ta phải cân nhắc cả việc biến đổi vào trong quá trình diễn giải
(trừ khi chúng triệt tiêu lẫn nhau như hàm log và hàm exp).
Hạng mục hóa đặc trưng Một phương pháp khác để có thể nắm bắt
được các ảnh hưởng phi tuyến đó là rời rạc hóa đặc trưng; nghĩa là biến
chúng thành các đặc trưng dạng hạng mục. Ví dụ, ta có thể chia nhiệt độ ra
thành 20 khoảng với các dải khác nhau [-10, -5), [-5, 0), ... Khi ta sử dụng
các giá trị nhiệt độ được hạng mục hóa thay vì các giá trị liên tục, mô hình
tuyến tính sẽ ước lượng dựa trên một hàm bước (step function) bởi vì mỗi
khoảng sẽ có những ước lượng riêng (trọng số riêng). Tuy nhiên vấn đề của
phương pháp này đó là ta cần nhiều dữ liệu hơn, và do đó ta dễ bị quá khớp
và việc rời rạc hóa đặc trưng một cách có ý nghĩa trở nên không rõ ràng
(ta nên chia thành khoảng bằng nhau hay chia theo phân vị? Cần bao nhiêu
khoảng?). Ta chỉ nên sử dụng tính rời rạc nếu nếu thực sự cần thiết.
Mô hình bổ sung tổng quát - GAM Tại sao ta không dùng mô hình
tuyến tính tổng quán để giải quyết vấn đề về phi tuyến. GAM được xây dựng
dựa trên ý tưởng này. GAM không yêu cầu mối quan hệ giữa đặc trưng và
đầu ra phải là tổng trọng số, thay vào đó, phương pháp này giả định rằng
đầu ra có thể được mô hình bằng tổng của các hàm bất kỳ cho từng đặc
trưng. Về mặt toán học, mối quan hệ trong GAM sẽ như sau:
Công thức này tương đồng với GLM tuy nhiên điểm khác biệt đó là các
thành phần tuyến tính βj xj được thay bằng các hàm fj pxj q. Ý tưởng chính
của GAM vẫn là một tổng của các ảnh hưởng từ các đặc trưng, nhưng ta có
thể tùy chọn tính phi tuyến trong mối quan hệ giữa đầu ra và các đăc trưng.
Các ảnh hưởng tuyến tính cũng có thể được sử dụng trong GAM bằng cách
biến fj pxj q về dạng βj xj .
Một câu hỏi lớn là làm sao để ta học được các hàm phi tuyến. Câu trả
lời đó là “splines” hay “các hàm spline”, đó là các hàm có thể được gộp lại với
nhau để xấp xỉ một số hàm bất kỳ. Chúng hoạt động giống như việc chồng
các viên gạch Lego lên nhau để xây nên những kiến trúc phức tạp. Tuy nhiên,
các phương pháp dùng để định nghĩa các hàm spline vẫn chưa rõ ràng ở thời
điểm hiện tại, do đó tôi mong bạn sẽ may mắn nếu bạn quyết định đào sâu
vào hướng này. Ở đây sẽ không nhắc đến chi tiết mà mục đích cốt yếu chỉ để
xây dựng một cái nhìn tổng quan về chúng. Để hiểu rõ ràng nhất về các hàm
spline, ta cần trực quan hóa từng hàm spline riêng biệt và xem xét ma trận
dữ liệu sẽ bị thay đổi như thế nào với từng hàm spline. Ví dụ, để mô hình
giá trị nhiệt độ với các hàm spline, ta bỏ đi đặc trưng nhiệt độ trong dữ liệu
và thay thế chúng. Ví dụ, bằng 4 cột, với mỗi cột thể hiện một hàm spline
khác nhau. Thường thường, số hàm spline sẽ lớn hơn, tuy nhiên để đơn giản
ta chỉ giả sử với 4 hàm trong ví dụ này. Giá trị của từng hàm spline phụ
thuộc vào giá trị nhiệt độ của từng điểm dữ liệu ta đang có. Bên cạnh các
ảnh hưởng tuyến tính, GAM cũng sẽ ước lượng trọng số cho các hàm spline
này và GAM sẽ áp dụng lượng phạt lên các trọng số để giữ chúng luôn có giá
trị gần 0. Việc này làm giảm sự linh hoạt của GAM nhưng cũng đồng thời
giúp mô hình tránh hiện tượng quá khớp một cách hiệu quả. Trong GAM,
ta có một tham số làm mượt (smoothness parameter) sẽ được lựa chọn trong
quá trình kiểm định chéo, thường được dùng để điều khiển độ linh hoạt của
đường dự đoán (prediction curve). Với việc loại bỏ thành phần lượng phạt
(penalty term), việc mô hình phi tuyến bằng các hàm splines là một phương
pháp thiết kế đặc trưng (feature engineering) tuyệt vời.
Trong ví dụ dự đoán số xe đạp với mô hình GAM chỉ dùng đặc trưng duy
nhất là nhiệt độ, ma trận được trưng của mô hình sẽ như sau:
Mỗi hàng là một điểm dữ liệu riêng biệt từ dữ liệu (mỗi hàng là một
ngày). Mỗi cột chứa giá trị của hàm spline tại các giá trị nhiệt độ khác nhau.
Hình dưới đây mô tả các hàm spline:
Hình 4.14: Để mô hình độ ảnh hưởng của giá trị nhiệt độ một cách mượt mà,
ta dùng 4 hàm spline. Mỗi nhiệt độ được tính toán cả trên 4 hàm spline. Nếu
một điểm dữ liệu có nhiệt độ là 30 độ C, giá trị cho các spline tương ứng là
-1, 0.7, -0.8, và 1.7.
weight
(Intercept) 4504.35
s(temp).1 -989.34
s(temp).2 740.08
s(temp).3 2309.84
s(temp).4 558.27
Và cuối cùng, đường dự đoán thực tế được xây dựng từ tổng trọng số của
các hàm spline và giá trị của chúng sẽ như sau:
Sự diễn giải của các ảnh hưởng khi này đòi hỏi ta phải kiểm tra bằng mắt
thường xem đường dự đoán đã khớp được dữ liệu hay chưa. Splines thường
tập trung xung quanh giá trị dự đoán trung bình, do vậy, một điểm trên
Hình 4.15: Các ảnh hưởng đặc trưng của nhiệt độ lên số xe được thuê dựa
vào mô hình GAM.
đường dự đoán chính là giá trị sai khác với giá trị dự đoán trung bình. Ví
dụ, ở 0 độ C, số xe được dự đoán sẽ thấp hơn 3000 xe so với dự đoán trung
bình.
4.3.4 Ưu điểm
Tất cả các mở rộng của mô hình tuyến tính đều rất rộng lớn. Với bất kỳ
vấn đề nào mà bạn gặp phải với mô hình tuyến tính, bạn chắc chắn sẽ tìm
được một mở rộng để giải quyết vấn đề đó.
Hầu hết các phương pháp đã được sử dụng xuyên suốt hàng thế kỉ. Ví dụ,
GAM đã gần 30 năm tuổi cho tới nay. Rất nhiều nhà nghiên cứu và người đi
làm đã rất có kinh nghiệm với các mô hình tuyến tính và các phương pháp
được chấp nhận như một tiêu chuẩn trong việc xây dựng mô hình.
Bên cạnh việc tạo ra các dự đoán, bạn có thể sử dụng các mô hình cho
việc suy luận, rút ra kết luận từ dữ liệu khi cho trước các giả định phù hợp.
Bạn cũng có thể lấy được khoảng tin cậy cho các trọng số, các bài kiểm tra
ý nghĩa, khoảng dự đoán và nhiều hơn nữa.
Các phần mềm thống kê thường có các giao diện cho việc sử dụng GLM
và GAM và các mô hình tuyến tính đặc biệt khác.
Sự không minh bạch của rất nhiều mô hình học máy đến từ: 1) quá nhiều
đặc trưng được sử dụng do đó mô hình không còn đủ thưa để trở nên dễ
hiểu, 2) đặc trưng được sử dụng trong các mối quan hệ phi tuyến do đó ta
cần nhiều hơn một trọng số để mô tả các ảnh hưởng, và 3) việc mô hình các
tương tác giữa các đặc trưng. Giả sử rằng mô hình tuyến tính có tính diễn
giải rất cao nhưng thường bị dưới khớp (underfit), các mở rộng được mô tả
trong chương này giúp các mô hình trở nên linh động hơn trong khi vẫn giữ
được tính khả diễn giải vốn có của các mô hình tuyến tính.
Hình 4.16: Cây quyết định với các dữ liệu mẫu đơn giản. Các điểm dữ liệu
với giá trị đặc trưng 1 lớn hơn 3 sẽ đi vào nốt thứ 5. Các điểm dữ liệu khác
được gán vào nốt thứ 3 và thứ 4, phụ thuộc vào liệu giá trị của đặc trưng 2
lớn hơn 1 hay không.
Công thức dưới đây mô tả mối quan hệ giữa đầu ra y và các đặc trưng x.
M
ÿ
ŷ “ fˆpxq “ cm Itx P Rm u
m“1
Mỗi điểm dữ liệu rơi vào một nốt lá duy nhất (tập con Rm ). ItxPRm u là
hàm nhận dạng sẽ trả về 1 nếu x thuộc về tập con Rm và 0 trong trường hợp
còn lại. Nếu một điểm dữ liệu rơi vào nốt lá Rl , đầu ra sẽ là ŷ “ cl trong đó
cl là giá trị trung bình của tất cả các điểm dữ liệu huấn luyện thuộc nốt lá
Rl .
Vậy thì các tập con ở đâu ra? Điều này khá đơn giản: CART sử dụng
các đặc trưng và ra quyết định điểm cắt nào (cut-off point) sẽ tối ưu phương
sai của đầu ra y trong bài toán hồi quy hoặc chỉ số Gini của các phân bố
cho các lớp được dự đoán trong bài toán phân loại. Giá trị phương sai cho
ta biết giá trị đầu ra y trong một nốt thay đổi như thế nào xung quanh giá
trị trung bình của nó. Chỉ số Gini cho ta biết độ “thuần khiết” (pure) của
một nốt. Ví dụ trên nốt đó, đầu ra cho một điểm dữ liệu được phân bố bằng
nhau với các lớp, node sẽ là không thuần khiết (impure), và nếu chỉ một lớp
được dự đoán trên nốt đó, nốt này sẽ có độ thuần khiết cực đại. Phương sai
và chỉ số Gini được tối ưu trong khi các điểm dữ liệu trong các nốt có giá trị
đầu ra gần như tương đồng. Do đó, điểm cắt sẽ tạo ra hai tập con khác nhau
nhất có thể tương ứng với đầu ra mong muốn của hai tập này. Với các đặc
trưng kiểu hạng mục, thuật toán này sẽ tạo ra các tập con bằng cách gộp
các hạng mục lại với nhau. Sau khi điểm cắt tối ưu cho mỗi đặc trưng được
quyết định, thuật toán sẽ lựa chọn đặc trưng tốt nhất cho việc phân nhánh
để tối ưu phương sai hoặc chỉ số Gini và thêm nhánh này vào cây. Tiếp theo,
thuật toán thực hiện tìm-và-chia một cách đệ quy trên cả các nốt mới cho
tới khi đạt được một số tiêu chí. Một số tiêu chí có thể kể tên như: Số lượng
điểm dữ liệu nhỏ nhất trong một nốt trước một nhánh, hoặc số điểm dữ liệu
nhỏ nhất trong một nốt cuối.
Ảnh hưởng đặc trưng Độ ảnh hưởng của một đặc trưng trong một cây
quyết định có thể được tính toàn như sau: Duyệt qua tất cả các nhánh mà
đặc trưng đó được dùng và tính toán nốt đó giúp làm giảm bao nhiêu phương
sai hoặc chỉ số Gini so với nốt cha. Tổng của tất cả các ảnh hưởng được thu
về thang 100. Điều này có nghĩa là mỗi ảnh hưởng có thể được diễn giải bằng
1 phần của ảnh hưởng tổng thể trên mô hình
Phân tích cây Mỗi dự đoán của một mô hình cây quyết định đều có thể
được giải thích bằng cách phân tích các đường quyết định (decision path)
thành các thành phần tương ứng với đặc trưng. Ta có thể lần dấu một quyết
định thông qua cây và giải thích quyết định đó bằng các ảnh hưởng ở mỗi
nốt quyết định (decision node).
Nốt gốc trong cây quyết định là điểm xuất phát. Nếu ta sử dụng gốc để
tạo ra dự đoán, giá trị dự đoán sẽ là giá trị trung bình của đầu ra trên dữ
liệu huấn luyện. Với nhánh tiếp theo, ta thêm hoặc bớt một lượng vào tổng
này, phụ thuộc vào nốt tiếp theo trên đường. Để đi đến dự đoán cuối cùng,
ta phải đi theo đường mà diểm dữ liệu đã qua và tiếp tục việc thêm hay bớt
vào công thức sau:
D
ÿ p
ÿ
fˆpxq “ ȳ ` split.contrib(d,x) “ ȳ ` feat.contrib(j,x)
d“1 j“1
Dự đoán trên một điểm dữ liệu là giá trị trung bình của đầu ra cộng với
tổng ảnh hưởng của D nhánh giữ nốt gốc và nốt cuối. Trong khi ta không
quan tâm đến ảnh hưởng của các nhánh, ta quan tâm tới ảnh hưởng của các
đặc trưng. Một đặc trưng có thể được sử dụng nhiều trên nhiều hơn một
nhánh hoặc thậm chí là không được sử dụng. Ta có thể thêm ảnh hưởng cho
từng đặc trưng trong số p đặc trưng và xem xét mỗi đặc trưng ảnh hưởng ra
sao đến một đự đoán.
4.4.2 Ví dụ
Ta hãy xem xét một ví dụ thuê xe khác. Ta muốn dự đoán số lượng xe
trong một ngày nhất định với cây quyết định. Cây sau quá trình học sẽ như
sau:
Nhánh đầu tiên và một trong các nhánh thứ hai sử dụng đặc trưng xu
hướng (số ngày từ khi dữ liệu được thu thập và tổng quát hóa xu hướng thuê
xe theo thời gian). Trước khi đến ngày thứ 105, giá trị đầu ra được dự đoán
quanh quanh 1800 xe, giữa ngày 106 và ngày thứ 430, lượng xe là khoảng
3900. Với những ngày sau ngày thứ 430, số xe rơi vào khoảng 4600 khi nhiệt
độ thấp hơn 12 độ C và 6600 nếu nhiệt độ cao hơn. Ảnh hưởng của đặc trưng
cho ta biết một đặc trưng ảnh hưởng đến độ thuần khiết của các nốt như thế
nào. Với ví dụ này, ta xem xét phương sai vì đây là bài toán hồi quy.
Hình 4.17: Cây hồi quy được khớp với dữ liệu cho thuê xe. Giá trị độ sâu cực
đại của cây được đặt là 2. Đặc trưng xu hướng (days_since_2011) và đặc
trưng nhiệt độ được lựa chọn trong các nhánh. Các phác họa hình hộp cho
ta thấy phân phối của số xe được dự đoán ở nốt cuối.
Cây được trực quan hóa chỉ ra rằng cả nhiệt độ và xu hướng đều được
sử dụng ở các nhánh, nhưng không chỉ ra một cách định lượng đặc trưng
nào quan trọng hơn. Phép đo dưới đây cho ta thấy xu hướng quan trọng hơn
nhiệt độ nhiều.
4.4.3 Ưu điểm
Cây rất lí tưởng khi ta có các tương tác giữa các đặc trưng trong dữ liệu.
Các điểm dữ liệu sẽ đi vào các nhóm khác nhau và điều này giúp ta dễ hiểu
hơn là việc quan sát chúng trên các siêu phẳng đa chiều như trong hồi quy
tuyến tính. Sự diễn giải được coi là khá đơn giản.
Cấu trúc này cũng có tính trực quan hóa tự nhiên (natural visualization)
với các nốt và các cung.
Cây làm việc diễn giải trở nên tốt hơn và phù hợp các tiêu chuẩn được
nêu ra trong chương 2.6. Cấu trúc này cũng gợi mở cho ta để suy luận về giá
Hình 4.18: Độ quan trọng của các đặc trưng chỉ ra chúng ảnh hưởng ra sao
đến độ thuần khiết trên một nốt.
trị đầu ra cho một điểm dữ liệu: “Nếu đặc trưng lớn hơn ở một nhánh, giá trị
đầu ra nên là y1 thay vì y2”. Việc diễn giải có tính tương phản vì ta có thể
so sánh dự đoán của một điểm dữ liệu với câu hỏi “Điều gì xảy ra nếu”. Nếu
cây thấp, ví dụ độ sâu chỉ là 3, việc giải thích có thể được chọn lọc. Một cây
có độ sâu là 3 cần nhiều nhất 3 đặc trưng và điểm nhánh để ta có thể diễn
giải hoạt động của nó. Sự đáng tin cậy của các dự đoán phụ thuộc vào hiệu
năng làm việc của cây. Dự đoán cho các cây thấp rất đơn giản và tổng quát,
bởi vì với mỗi nhánh, điểm dữ liệu sẽ rơi vào một trong các nốt lá, và việc
này khiến chúng trở nên rất dễ hiểu.
Ta không cần biến đổi đặc trưng. Trong mô hình tuyến tính, đôi lúc ta
cần dùng hàm log để biến đổi đặc trưng. Cây quyết định làm việc tốt với mọi
phép biến đổi đặc trưng.
Với mỗi đặc trưng, ta xem xét bảng theo từng hàng. Mỗi giá trị của đặc
trưng là phần IF của một luật, lớp xuất hiện nhiều nhất với giá trị đặc trưng
này là dự đoán (phần THEN) của luật. Ví dụ, với đặc trưng diện tích (size)
của ngồi nhà, ta có ba giá trị là small, medium và big; chúng sẽ tạo nên ba
luật. Với mỗi đặc trưng, ta tính toán tổng lỗi của các luật được sinh ra. Đặc
trưng vị trí có các giá trị bad và good. Giá trị xuất hiện nhiều nhất với giá
trị bad đó là low và khi ta sử dụng low là dự đoán, ta sẽ gặp hai lỗi, bởi vì
có hai căn nhà có giá trị medium. Giá trị dự đoán của các căn nhà với vị trí
tốt là high và ta lại gặp hai lỗi, bởi vì có hai căn có giá trị medium. Lượng
lỗi ta tạo ra bằng cách sử dụng đặc trưng location là 4/10, với size là 3/10
và với pet là 4/10. Do đó, đặc trưng size sẽ trả về ít lỗi nhất và nó sẽ được
sử dụng trong mô hình OneR cuối cùng.
IF size=small THEN value=small
IF size=medium THEN value=medium
IF size=big THEN value=high
OneR ưu tiên các đặc trưng có nhiều giá trị bởi vì các đặc trưng này có
thể quá khớp đầu ra dễ dàng hơn. Tưởng tượng rằng một tập dữ liệu chỉ bao
gồm nhiễu mà không có tín hiệu, nghĩa là tất cả các đặc trưng đều có giá trị
mặc định và không thể tạo ra dự đoán từ chúng. Một số đặc trưng có nhiều
giá trị hơn các đặc trưng khác. Các đặc trưng có nhiều giá trị hơn có thể
dễ dàng quá khớp. Một đăng trưng có các giá trị riêng biệt cho từng điểm
dữ liệu sẽ giúp việc dự đoán trở nên cực kì dễ dàng. Một giải pháp cho ta
đó là chia dữ liệu thành tập huấn luyện và tập kiểm định, học các luật trên
tập huấn luyện và kiểm chứng tổng lỗi cho các đặc trưng được chọn trên tập
kiểm định.
Một vấn đề khác gọi là Ties khi mà hai đặc trưng cho ta lượng lỗi bằng
nhau. OneR giải quyết bằng cách lấy đặc trưng thứ nhất với lượng lỗi nhỏ
nhất hoặc đặc trưng có giá trị p của bình phương chi (chi-squared) nhỏ nhất.
Ví dụ Ta hãy thử OneR với dữ liệu thực tế. Ta dùng bái toán phân loại
ung thư cổ tử cung để kiểm định thuật toán này. Tất cả các đặc trưng liên
tục được rời rạc hóa thành 5 khoảng. Các luật sau đây sẽ được tạo ra.
Age prediction
(12.9,27.2] Healthy
(27.2,41.4] Healthy
(41.4,55.6] Healthy
(55.6,69.8] Healthy
(69.8,84.1] Healthy
Đặc trưng tuổi được chọn bởi thuật toán OneR. Do ung thư hiếm khi xảy
ra, với mỗi luật, lớp xuất hiện nhiều nhất luôn là Healthy, và điều này không
hiệu quả trong trường hợp dữ liệu ta không cân bằng. Bảng tham chiếu giữa
các khoảng tuổi và Cancer/Healthy với tỉ lệ phụ nữ mắc ung thư sẽ chứa
nhiều thông tin hơn.
Trước khi ta bắt đầu diễn giải bất cứ thứ gì: Do dự đoán cho tất cả các
đặc trưng và giá trị đều là Healthy, tổng lỗi là tương đương với các đặc trưng.
Vấn đề này được giải quyết bằng cách sử dụng đặc trưng đầu tiên có tỉ lệ lỗi
thấp nhất (ở đây mọi đặc trưng có tỉ lệ lỗi 55/858), với đặc trưng Age.
OneR không hỗ trợ các bài toán hồi quy, nhưng ta có thể biến bài toán
hồi quy thành bài toán phân loại bằng cách cắt các khoảng liên tục thành
các đoạn. Ta đã sử dụng cách này để dự đoán số lượng xe được thuê (các
khoảng 0-25%, 25-50%, 50-75%, và 75-100%). Bảng dưới đây cho ta thông
tin về các đặc trưng được chọn sau quá trình khớp với mô hình OneR.
mnth prediction
JAN [22,3152]
FEB [22,3152]
MAR [22,3152]
APR (3152,4548]
MAY (5956,8714]
JUN (4548,5956]
JUL (5956,8714]
AUG (5956,8714]
SEP (5956,8714]
OKT (5956,8714]
NOV (3152,4548]
DEZ [22,3152]
Hình 4.19: Thuật toán bao hàm tuần tự lần lượt phủ không gian đặc trưng
với các luật và loại bỏ các điểm dữ liệu được phủ bởi các luật được tìm ra.
Để trực quan, đặc trưng x1 và x2 là liên tục, tuy nhiên hầu hết các thuật
toán học luật đòi hỏi các đặc trưng hạng mục.
Ví dụ: Ta có một bài toán và một tập dữ liệu dự đoán giá nhà từ diện
tích, vị trí và việc thú nuôi được cho phép hay không. Ta học luật đầu tiên:
nếu size=big và location=good then value=high. Sau đó ta loại bỏ tất cả các
ngôi nhà lớn có vị trí thuận lợi từ tập dữ liệu. Ta học luật tiếp theo: Nếu
location=good thì value=medium.
Khi bài toán có nhiều lớp, thuật toán có thể được sửa đổi. Đầu tiên,
các lớp được sắp xếp theo thứ tự tăng dần về sự phổ biến. Thuật toán bắt
đầu với lớp ít xuất hiện nhất, học luật và loại bỏ các điểm dữ liệu, sau đó
chuyển tới lớp tiếp theo và tiếp tục như thế. Lớp hiện tại luôn được coi là lớp
dương và các lớp còn lại coi là lớp âm. Lớp cuối cùng được giải quyết bằng
một luật mặc định. Cách làm này còn được biết đến với cái tên 1-với-tất-cả
(one-versus-all) trong bài toán phân loại.
Vậy ta học luật như thế nào? Thuật toán OneR sẽ không có tác dụng
trong trường hợp này vì nó luôn phủ tất cả không gian đặc trưng. Ta có rất
nhiều cách giải quyết. Một trong số đó là ta học từng luật từ một cây quyết
định sử dụng tìm kiếm chùm (beam search).
- Học một cây quyết định (bằng CART hoặc một thuật toán học máy
dạng cây khác)
- Bắt đầu từ nốt gốc và tìm kiếm đệ quy nốt thuần khiết nhất (ví dụ có
tỉ lệ phân loại lỗi nhỏ nhất).
- Lớp đa số trong nốt cuối được dùng cho việc dự đoán luật; đường dẫn
tới nốt đó được dùng trong điều kiện của luật.
Hình sau đây mô tả tìm kiếm chùm trong một cây.
Việc học một luật là một bài toán tìm kiếm trong đó không gian tìm
kiếm là không gian của mọi luật có thể. Mục đích của việc tìm kiếm là để
tìm ra luật tốt nhất dựa trên một vài tiêu chí. Có rất nhiều phương pháp tìm
kiếm: leo đồi (hill-climbing), tìm kiếm chùm, tìm kiếm tham lam (exhausive
search), best-first search, ordered search, stochastic search, top-down search,
bottom-up search, ...
RIPPER (Repeated Incremental Pruning to Produce Error Reduction)
ra đời bởi Cohen (1995) là một biến thể của thuật toán bao hàm tuần tự.
RIPPER phức tạp hơn một chút và sử dụng một bước tiền xử lý gọi là cắt
bỏ luật (rule pruning) để tối ưu danh sách quyết định cuối cùng. RIPPER
có thể hoạt động ở cả chế độ có thứ tự và không thứ tự và sinh ra luật hoặc
danh sách quyết định.
Hình 4.20: Học một luật bằng cách tìm kiếm đường trong một cây quyết
định. Một cây quyết định được xây dựng để dự đoán đầu ra. Ta bắt đầu
với nốt gốc, liên tục lặp lại việc đi theo đường mà sinh ra tập con thuần
khiết nhất (ví dụ độ chính xác cao nhất) và thêm tất cả các giá trị rẽ nhánh
vào điều kiện của luật. Ta kết thúc với: If location=good and size=big, then
value=high.
luật nào được áp dụng hay không. Khi một luật phù hợp, giá trị số bên phải
sẽ được trả về. Luật mặc định đảm bảo việc luôn có một dự đoán cho một
điểm dữ liệu.
Tìm trước các đặc tính nổi bật Một đặc tính nổi bật là sự (đồng) xuất
hiện một cách liên tục của các giá trị đặc trưng. Có thể coi như một bước
tiền xử lý cho thuật toán BRL, ta dùng các đặc trưng (ta chưa cần xét đến
đầu ra ở bước này) và trích xuất các đặc tính nổi bật của chúng. Một đặc
tính có thể là một giá trị đặc trưng như size=medium hay một tổ hợp các
giá trị đặc trưng ví dụ như size=medium AND location=bad.
Tần số của một đặc tính được tính bằng độ hỗ trợ của nó trong tập dữ
liệu:
n
1ÿ piq
Supportpxj “ Aq “ Ipxj “ Aq
n i“1
Trong đó A là giá trị đặc trưng, n là số điểm dữ liệu trong tập dữ liệu và
I là hàm báo hiệu (indicator function) trả về giá trị 1 nếu đặc trưng xj của
một điểm dữ liệu có giá trị A, ngược lại trả về 0. Trong tập dữ liệu về giá
nhà, nếu 20% số căn nhà không có ban công và 80% số nhà có một hoặc hơn,
khi đó độ hỗ trợ của đặc tính balcony=0 là 20%. Độ hỗ trợ có thể được tính
cho các tổ hợp của các đặc trưng, ví dụ như balcony=0 AND pets=allowed.
Có rất nhiều thuật toán để tìm ra các đặc tính nổi bật, ví dụ như Apriori
hoặc FP-Growth. Việc ta sử dụng phương pháp nào không quan trọng vì kết
quả trả về là giống nhau, chúng chỉ ảnh hưởng tới tốc độ của chương trình.
Thuật toán Apriori làm việc như sau: Ta có 2 bước, đầu tiên ta tìm các
đặc tính nổi bật và bước thứ hai ta xây dựng các luật từ chúng. Với thuật
toán BRL, ta chỉ quan tâm đến các đặc tính nổi bật được sinh ra trong bước
đầu của Apriori.
Đầu tiên, thuật toán bắt đầu với tất cả các giá trị của đặc trưng có độ
hỗ trợ lớn hơn một ngưỡng được định nghĩa bởi người dùng. Nếu người dùng
muốn độ hỗ trợ nhỏ nhất là 10% và chỉ có 5% số căn nhà có size=big, ta sẽ
loại bỏ giá trị đặc trưng này và chỉ giữ size=medium và size=small. Việc này
không đồng nghĩa với việc các căn nhà đó bị loại bỏ khỏi tập dữ liệu, mà chỉ
mang ý nghĩa rằng size=big không phải là một đặc tính nổi bật. Dựa trên
các đặc tính nổi bật của một giá trị đặc trưng, thuật toán Apriori tìm các tổ
hợp các giá trị đặc trưng theo thứ tự tăng dần lặp đi lặp lại. Các đặc tính
được xây dựng bằng việc gộp các câu lệnh feature=value với toán tử logic
AND, ví dụ size=medium AND location=bad. Các đặc tính được sinh ra với
độ hỗ trợ nhỏ hơn ngưỡng bị loại bỏ. Cuối cùng, ta có tất cả các đặc tính nổi
bật. Bất cứ tập con nào chứa đặc tính nổi bật được gọi là tính chất Apriori
(Apriori property). Điều này khá dễ hiểu: Bằng cách loại bỏ các điều kiện từ
một đặc tính, các đặc tính có khả năng phủ bằng hoặc nhiều hơn số điểm dữ
liệu. Ví dụ, nếu 20% căn nhà là size=medium and location=good thì độ hỗ
trợ của căn nhà có đặc tính size=medium sẽ là lớn hơn hoặc bằng 20%. Tính
chất Apriori được dùng để giảm số lượng đặc tính. Chỉ trong trường hợp ta
có nhiều đặc tính nổi bật, ta phải kiểm tra các đặc tính có thứ tự cao phía
trên.
Ta đã tìm được các điều kiện cho BRL. Nhưng trước khi ta thực hiện
bước tiếp theo, tôi muốn gợi ý một cách khác cho việc học luật dựa trên các
đặc tính được tìm ra ở bước 1. Đó là bao gồm các giá trị đầu ra vào quá trình
tìm các đặc tính nổi bật và thực hiện bước tiếp theo của thuật toán Apriori
để xây dựng ra các luật IF-THEN. Do thuật toán là không giám sát, phần
THEN cũng sẽ chứa các giá trị đặc trưng mà ta không mong muốn. Nhưng ta
có thể lọc bỏ chúng bằng các luật mà đầu ra phù hợp với mong muốn trong
phần THEN. Các luật đó cấu thành một tập quyết định, và cho phép việc
sắp xếp, cắt bỏ, xóa bỏ hay gộp các luật lại.
Tóm lại, trong BRL, ta làm việc dựa trên các đặc tính nổi bật và học
phần THEN và cách để sắp xếp các đặc tính vào một danh sách quyết định
sử dụng thống kê Bayesian.
Học danh sách luật Bayesian Mục đích của thuật toán BRL là học một
danh sách quyết định hoàn hảo sử dụng việc lựa chọn giữa các điều kiện được
định trước cùng với việc ưu tiên các danh sách với ít luật và điều kiện ngắn.
BRL giải quyết việc này bằng việc định nghĩa một phân phối của các danh
sách quyết định với các phân phối tiên nghiệm (prior distribution) cho đội
dài của các điều kiện (ưu tiên các luật ngắn) và số lượng luật (ưu tiên danh
sách ngắn).
Phân phối xác suất tiên nghiệm (posteriori probability distribution) của
các danh sách sẽ chỉ ra được một danh sách quyết định sẽ như thế nào khi
cho trước các giả định về độ ngắn và tiêu chí về việc khớp dữ liệu của danh
sách quyết định. Mục tiêu của ta là tìm ra danh sách để cực đại hóa xác suất
tiên nghiệm này. Do không thể tìm ra chính xác danh sách tốt nhất trực tiếp
từ các phân phối của các danh sách, BRL thực hiện các bước như sau:
1) Sinh ra một danh sách quyết định khởi tạo được rút ra từ phân phối
tiên nghiệm.
2) Liên tục lặp lại việc thay đổi danh sách này bằng cách thêm, đổi vị trí,
hoặc loại bỏ các luật, đảm bảo rằng danh sách mới sẽ tuân theo phân phối
tiên nghiệm của các danh sách.
3) Lựa chọn danh sách quyết định từ các danh sách được lấy ra với xác
suất cao nhất dựa trên phân phối tiên nghiệm.
Ta hãy đi sâu hơn vào thuật toán này: Thuật toán bắt đầu bằng việc tìm
kiếm các đặc tính bằng thuật toán FP-Growth. BRL cho ta một số giả định
về phân phối của đầu ra và phân phối của các tham số định nghĩa phân phối
của đầu ra (Thống kê Bayesian). Nếu bạn không quen với thống kê này, đừng
quá chú trọng vào các giải thích toán học dưới đây. Điều quan trọng đó là ta
cần biết rằng phương pháp này là một cách để sử dụng kiến thức ta đang có
hoặc các yêu cầu (hay gọi là phân phối tiên nghiệm) trong khi khớp với dữ
liệu. Trong trường hợp danh sách quyết định, Bayesian làm việc hiệu quả do
các giả định tiên nghiệm giúp các danh sách trở nên ngắn với các luật ngắn.
Mục tiêu của ta là lấy mẫu các danh sách quyết định d từ phân phối tiên
nghiệm:
ppd|x, y, A, α, λ, ηq 9 looooomooooon
loooooooooomoooooooooon ppy|x, d, αq ¨ ppd|A, λ, ηq
looooomooooon
posteriori likelihood priori
Trong đó d là một danh sách quyết định, x là các đặc trưng, y là mục tiêu,
A số tập các điều kiện định trước, λ là độ dài tiên nghiệm kỳ vọng của các
danh sách quyết định, η là số lượng điều kiện tiên nghiệm kỳ vọng trong một
luật, α là biến đếm giả (pseudo-count) tiên nghiệm cho số lớp dương và âm
và được đặt ở (1,1).
ppd|x, y, A, α, λ, ηq
định lượng độ chắc chắn của một danh sách quyết định khi cho trước dữ liệu
và các giả định tiên nghiệm. Giá trị này tỉ lệ với độ hợp lý (likelihood) của
đầu ra y khi cho bởi danh sách quyết định và dữ liệu nhân với xác suất của
danh sách khi cho bởi các giả định tiên nghiệm và các điều kiện có sẵn.
ppy|x, d, αq
là độ hợp lý của y khi biết trước danh sách quyết định và dữ liệu. BRL
giả sử rằng y được sinh ra bởi một phân phối đa thức Dirichlet (Dirichlet-
Multinomial distribution). Khi một danh sách giải thích dữ liệu tốt hơn, độ
hợp lý sẽ cao hơn:
ppd|A, λ, ηq
là phân phối tiên nghiệm của các danh sách quyết định. Nó bao gồm một
phân phối Poission bị cắt (tham số λ) cho số lượng luật trong danh sách và
phân phối Poisson (tham số η) cho số lượng giá trị đặc trưng trong các điều
kiện của các luật.
Một danh sách quyết định có xác suất tiên nghiệm cao nếu nó giải thích
giá trị đầu ra y tốt và thỏa mãn các giả định tiên nghiệm.
Sự ước lượng trong thống kê Bayesian luôn đòi hỏi một số mẹo, bởi vì ta
luôn không thể tính toán trực tiếp đáp án chính xác, nhưng ta có thể rút ra
một số mẫu và kiểm định trên chúng và cập nhật các ước lượng tiên nghiệm
bằng phương pháp Markov chain Monte Carlo. Với các danh sách quyết định,
điều này thậm chí còn khó khăn hơn nữa bởi vì ta phải rút ra các danh sách
từ một phân phối của các danh sách. Tác giả của BRL đề xuất rằng đầy tiên
ta nên rút ra một danh sách khởi tạo và sau đó sửa đổi nó để sinh ra các mẫu
của các danh sách quyết định từ phân phối tiên nghiệm (một chuỗi Markov
của các danh sách quyết định). Kết quả sẽ có thể phụ thuộc vào danh sách
khởi tạo, do đó việc lặp lại quá trình này là cần thiết để đảm bảo tính đa
dạng của các danh sách. Trong các phần mềm, số lần lặp lại được đặt mặc
định là 10. Đây là các bước để rút ra một danh sách khởi tạo:
1) Tìm các đặc tính sử dụng thuật toán FP-Growth.
2) Lấy mẫu tham số chiều dài danh sách m từ một phân phối Possion bị
cắt.
3) Với luật mặc định: Lấy mẫu tham số θ0 của các giá trị đầu ra của phân
phối đa thức Dirichlet (luật được áp dụng khi không có luật nào thỏa mãn).
4) Với luật trong danh sách từ j=1 đến m:
- Lấy mẫu tham số chiều dài của luật l (số lượng điều kiện) cho luật thứ
j.
- Lấy mẫu một điều kiện của chiều dài lj từ các điều kiện có trước.
- Lấy mẫu tham số phân phối đa thức Dirichlet cho phần THEN (ví dụ
với phân phối của đầu ra khi cho bởi luật).
5) Với từng lần quan sát trên tập dữ liệu:
- Tìm luật từ danh sách để áp dụng đầu tiên (đỉnh tới đáy).
- Rút ra giá trị đầu ra từ phân phối xác suất (nhị thức) bởi luật được áp
dụng.
Bước tiếp theo là sinh ra các danh sách bắt đầu từ mẫu khởi tạo này để
có các mẫu từ phân phối tiên nghiệm của các danh sách quyết định.
Các danh sách quyết định mới được lấy mẫu bằng cách bắt đầu từ danh
sách khởi tạo và sau đó ngẫu nhiên chuyển một luật đến một vị trí khác trong
danh sách hoặc thêm một luật vào danh sách hiện hành từ các điều kiện có
sẵn hoặc loại bỏ một luật từ danh sách. Việc luật nào được đổi chỗ, thêm,
hoặc xóa được lựa chọn ngẫu nhiên. Ở mỗi bước, thuật toán kiểm định xác
suất tiên nghiệm của danh sách quyết định (gồm cả độ chính xác và độ ngắn
gọn). Thuật toán Metropolis Hastings đảm bảo rằng ta sẽ lấy mẫu được các
danh sách có xác suất tiên nghiệm cao. Quá trình này trả về cho ta các mẫu
từ phân phối. Thuật toán BRL lựa chọn danh sách dựa trên xác suất tiên
nghiệm cao nhất.
Ví dụ Ta đã tìm hiểu về lý thuyết, giờ hãy xem BRL làm việc trong thực
tế ra sao. Ví dụ ở đây sử dụng một biến thể có tốc độ tốt hơn từ BRL gọi
là Scalable Bayesian Rule Lists (SBRL) đề xuất bởi Yang và cộng sự (2017).
Ta dùng thuật toán SBRL để dự đoán ung thư cổ tử cung. Đầu tiên ta phải
rời rạc hóa tất cả các đặc trưng đầu vào cho thuật toán SBRL. Để làm điều
này, ta rời rạc hóa dựa trên tần số xuất hiện của giá trị đặc trưng theo các
khoảng. Ta có các luật sau:
rules
If {STDs=1} (rule[259]) then positive probability = 0.16049383
else if {Hormonal.Contraceptives..years.=[0,10)} (rule[82])
then positive probability = 0.04685408
else (default rule) then positive probability = 0.27777778
Lưu ý rằng ta thu được những luật khá hợp lý do đự đoán trong phần
THEN không phải là các lớp mà là xác suất cho việc bị ung thư.
Các điều kiện ta chọn từ các đặc tính được cho bởi thuật toán FP-Growth.
Bảng sau đây trình bày các điều kiện mà thuật toán SBRL có thể chọn để
xây dựng danh sách quyết định. Số giá trị đặc trưng cực đại trong một điều
kiện là 2.
Đây là một ví dụ của 10 đặc tính:
pre-mined conditions
Num.of.pregnancies=[3.67,7.33)
IUD=0,STDs=1
Number.of.sexual.partners=[1,10),STDs..Time.since.last.diagnosis=[1,8)
First.sexual.intercourse=[10,17.3),STDs=0
Smokes=1,IUD..years.=[0,6.33)
Hormonal.Contraceptives..years.=[10,20),STDs..Number.of.diagnosis=[0,1)
Age=[13,36.7)
Hormonal.Contraceptives=1,STDs..Number.of.diagnosis=[0,1)
Number.of.sexual.partners=[1,10),STDs..number.=[0,1.33)
STDs..number.=[1.33,2.67),STDs..Time.since.first.diagnosis=[1,8)
Tiếp theo, ta áp dụng SBRL vào bài toán cho thuê xe. Thuật toán sẽ chỉ
làm việc nếu bài toán hồi quy được chuyển thành một bài toán phân loại nhị
phân. Ta gắn nhãn 1 nếu số xe lớn hơn 4000 và 0 khi ngược lại.
Danh sách sau đây được học bởi SBRL:
rules
If {yr=2011,temp=[-5.22,7.35)} (rule[718]) then positive probability = 0.01041
else if {yr=2012,temp=[7.35,19.9)} (rule[823]) then positive probability = 0.88125
else if {yr=2012,temp=[19.9,32.5]} (rule[816]) then positive probability = 0.99253
else if {season=SPRING} (rule[351]) then positive probability = 0.06410
else if {yr=2011,temp=[7.35,19.9)} (rule[730]) then positive probability = 0.44444
else (default rule) then positive probability = 0.79746
Ta hãy dự đoán xác suất số xe lớn hơn 4000 trong 1 ngày của năm 2012
với nhiệt độ là 17 độ C. Luật đầu tiên không áp dụng do nó chỉ áp dụng với
ngày của năm 2011. Luật thứ hai áp dụng bởi vì ngày trong năm 2012 và
nhiệt độ là 17 độ nằm trong dải [7.35 - 19.9]. Dự đoán của ta là 88% ngày
này sẽ có nhiều hơn 4000 xe được thuê.
4.5.4 Ưu điểm
Phần này thảo luận các ưu điểm của luật IF-THEN nói chung.
Các luật dạng này rất dễ để diễn giải. Chúng có lẽ là loại mô hình có tính
khả diễn giải cao nhất. Điều này chỉ đúng khi số luật được áp dụng là nhỏ,
các điều kiện của các luật là ngắn (có lẽ là nhỏ hơn 3) và nếu các luật được
sắp xếp trong một danh sách hoặc một tập không chồng lấp.
Luật quyết định giống với cây quyết định vì chúng khá trực quan, nhưng
tinh gọn hơn. Các cây quyết định thường có các cây con giống nhau khi mà
rẽ nhánh trái hay phải thì các nốt con đều có cấu trúc tương tự.
Việc đự đoán với các luật IF-THEN có tốc độ nhanh bởi vì chỉ cần một
vài câu lệnh nhị phân cần được kiểm tra để quyết định luật nào được áp
dụng.
Các luật quyết định cũng ít bị ảnh hưởng bởi việc biến đổi đơn điệu của
các đặc trưng đầu vào bởi vì chỉ có ngưỡng cho các điều kiện là thay đổi.
Chúng cũng ít bị ảnh hưởng bởi các ngoại lai vì chúng chỉ quan tâm đến một
điều kiện được áp dụng hay không.
Các luật IF-THEN thường tạo ra các mô hình thưa nghĩa là ta không có
nhiều đặc trưng. Chúng chỉ chọn những đặc trưng liên quan cho mô hình. Ví
dụ, một mô hình tuyến tính sẽ mặc định gán các trọng số cho tất cả các đặc
trưng. Mặt khác, các đặc trưng không liên quan có thể bị bỏ qua bởi các luật
IF-THEN một cách đơn giản.
Hình 4.21: Trong cây có 3 nốt cuối này, 4 luật có thể được tạo nên.
Vậy ta lấy các cây quyết định này từ đâu? Các cây này được huấn luyện
để dự đoán đầu ra mong muốn. Điều này đảm bảo bằng các nhánh sẽ mang
thông tin cho bài toán dự đoán. Bất kỳ thuật toán nào mà sinh ra một số
lượng cây đều có thể sử dụng trong RuleFit, ví dụ như thuật toán rừng ngẫu
nhiên. Mỗi cây có thể được phân tách ra thành các luật quyết định và được
dùng như các đặc trưng bổ sung trong các mô hình hồi quy tuyến tính thưa
(Lasso).
Trong bài báo về RuleFit, dữ liệu về giá nhà ở Boston mô tả như sau:
Mục tiêu là dự đoán giá trị trung vị về giá của các ngôi nhà ở Boston. Một
trong các luật được sinh ra bởi RuleFit đó là: IF number of rooms > 6.64
AND concentration of nitric oxide <0.67 THEN 1 ELSE 0.
RuleFit cũng có thể sử dụng độ quan trọng đặc trưng để giúp chỉ ra các
thành phần tuyến tính và luật quan trọng cho các dự đoán. Độ quan trọng
đặc trưng được tính toán từ các trọng số của mô hình hồi quy. Việc tính toán
độ quan trọng có thể được gộp cho các đặc trưng gốc (chưa bị biến đổi và có
thể tồn tại trong rất nhiều luật).
RuleFit cũng giới thiệu phác họa phụ thuộc riêng (partial dependence
plots) để chỉ ra sự thay đổi trung bình trong dự đoán khi ta thay đổi các đặc
trưng. Phác họa phụ thuộc riêng là một phương pháp kiểu mẫu có thể được
sử dụng trong bất cứ mô hình nào, và được giải thích trong chương phác họa
phụ thuộc riêng (partial dependence plots).
Luật quan trọng nhất đó là: “days_since_2011” > 111 AND “weathersit”
in ("GOOD", "MISTY") và trọng số tương ứng là 793. Việc diễn giải đó là:
Nếu “days_since_2011” > 111 AND “weathersit” in ("GOOD", "MISTY"),
thì số xe được thuê sẽ tăng lên 793 xe, khi tất cả các giá trị đặc trưng khác
được giữ nguyên. Về tổng thể, 278 luật được tạo nên từ 8 đặc trưng gốc. Khá
nhiều! Nhưng nhờ vào Lasso, chỉ có 58 trong tổng số 278 có giá trị trị trọng
số khác 0.
Việc tính toán độ quan trọng của các đặc trưng toàn cục cho thấy nhiệt
độ và xu hướng là những đặc trưng quan trọng nhất.
Hình 4.22: Độ quan trọng của các đặc trưng trong một mô hình RuleFit dự
đoán số lượng xe được thuê. Các đặc trưng quan trọng nhất đó là nhiệt độ
và xu hướng.
Việc tính toán độ quan trọng đặc trưng bao gồm độ quan trọng của các
đặc trưng gốc và các luật quyết định trong đó đặc trưng xuất hiện.
Bản mẫu cho việc diễn giải Việc diễn giải tương tự với các mô hình
tuyến tính: Giá trị đầu ra được dự đoán sẽ thay đổi một lượng βj nếu đặc
trưng xj thay đổi một đơn vị, khi tất cả các đặc trưng còn lại được giữ
nguyên. Việc diễn giải trọng số của một luật quyết định khá đặc biệt. Nếu
tất cả các điều kiện của luật quyết định rk được áp dụng, đầu ra dự đoán sẽ
thay đổi một lượng αk (trọng số được học của luật rk trong mô hình tuyến
tính).
Với bài toán phân loại (sử dụng hồi quy logistic thay vì hồi quy tuyến
tính): Nếu tất cả các điều kiện được thỏa mãn cho luật rk , tỉ số kỳ dị cho
việc một sự kiện xảy ra và không xảy ra sẽ thay đổi một lượng αk lần.
4.6.2 Lý thuyết
Ta hãy đi sâu hơn vào chi tiết kỹ thuật của thuật toán RuleFit. Thuật
toán này bao gồm hai thành phần: Thành phần thứ nhất tạo nên các luật
từ các cây quyết định và thành phần thứ hai khớp một mô hình tuyến tính
với các đặc trưng gốc và các luật mới như là đầu vào (do đó được gọi là
Rule-Fit).
Tạo ra các luật Một luật sẽ trông như thế nào? Các luật được sinh ra
bởi thuật toán có cấu trúc đơn giản. Ví dụ: IF x2 < 3 AND x5 < 7 THEN
1 ELSE 0. Các luật được xây dựng bằng việc phân tách các cây quyết định:
Bất cứ đường nào tới một nốt trong một cây có thể được biến đổi thành một
luật quyết định. Các cây được sử dụng cho các luật được khớp để dự đoán
đầu ra mong muốn. Do đó, các nhánh và các luật được sinh ra được tối ưu
để dự đoán đầu ra ta đang mong muốn. Ta có thể một cách đơn giản kết
nối các quyết định nhị phân này (các quyết định nhị phân đưa tới một nốt)
với toán tử AND, và voilà, ta có một luật. Tất nhiên ta mong muốn có được
nhiều luật mang thông tin cũng như đa dạng. Tăng tốc gradient (gradient
boosting) được sử dụng để khớp một tập hợp các cây quyết định bằng việc
hồi quy hoặc phân loại giá trị y với các đặc trưng gốc X. Mỗi cây được sinh
ra được biến thành rất nhiều luật. Không chỉ với cây tăng tốc, mà bất cứ
thuật toán tổ hợp của các cây nào đều có thể được dùng để sinh ra các cây
cho thuật toán RuleFit. Một tập hợp cây có thể được mô tả với công thức
chung như sau:
M
ÿ
f pxq “ a0 ` am fm pXq
m“1
với Tm là một tập các đặc trưng được dùng trong cây thứ m, I là hàm báo
hiệu trả về 1 khi đặc trưng xj có mặt trong tập con của các giá trị s cho đặc
trưng thứ j (được xác định bởi các nhánh cây) và 0 với các điều kiện còn lại.
Với các đặc trưng dạng số, sjm là một khoảng trong dải giá trị của đặc trưng.
Một khoảng sẽ có một trong hai dạng như sau:
xsjm ,lower ă xj
xj ă xsjm ,upper
Các nhánh tiếp theo trong đặc trưng đó có thể đưa ta tới các khoảng chia
phức tạp hơn. Với các đặc trưng hạng mục, tập con s chứa các hạng mục
nhất định của đặc trưng đó.
Một ví dụ cho dữ liệu thuê xe như sau:
r17 pxq “ Ipxtemp ă 15q ¨ Ipxweather P tgood, cloudyuq ¨ Ip10 ď xwindspeed ă 20q
Luật này trả về giá trị 1 nếu tất cả ba điều kiện được thỏa mãn và trả
về 0 trong trường hợp còn lại. Thuật toán RuleFit trích xuất tất cả các luật
khả dĩ từ một cây, không chỉ từ các nốt lá. Do đó, một luật khác có thể được
tạo ra như sau:
M
ÿ
K“ 2ptm ´ 1q
m“1
Một mẹo được giới thiệu bởi RuleFit đó là học các cây với độ sâu ngẫu
nhiên để các luật được sinh ra sẽ đa dạng về mặt độ dài. Lưu ý rằng ta loại
bỏ các giá trị được dự đoán ở mỗi nốt và chỉ giữ các điều kiện đưa ta tới nốt
đó trong khi sinh ra một luật. Trọng số của các luật được quyết định trong
bước 2 của RuleFit.
Một cách khác khi xem xét bước 1: Thuật toán RuleFit sinh ra một tập
các đặc trưng từ các đặc trưng gốc. Các đặc trưng này là nhị phân và có thể
biểu diễn các tương tác khá phức tạp của các đặc trưng gốc. Các luật được
chọn để cực đại hóa việc dự đoán. Các luật được sinh ra một cách tự động
từ ma trận hiệp biến (covariate matrix) X. Ta có thể xem các luật đơn giản
chỉ là các đặc trưng mới dựa trên các đặc trưng gốc.
Mô hình tuyến tính thưa Ta có thể có được RẤT NHIỀU luật sau bước
1. Do bước 1 có thể được coi như một bước biến đổi đặc trưng, giờ ta cần
khớp mô hình. Tương tự, ta muốn giảm số lượng của các luật. Ngoài các luật,
các đặc trưng gốc cũng sẽ được dùng trong mô hình tuyến tính thưa. Tất cả
các luật và các đặc trưng gốc trở thành một đặc trưng trong mô hình tuyến
tính và nhận một giá trị trọng số. Các đặc trưng gốc được thêm vào bởi vì
các cây không thể biểu diễn các mối quan hệ tuyến tính giữa chúng và đầu
ra. Trước khi ta huấn luyện một mô hình tuyến tính thưa, ta biến đổi các
đặc trưng gốc một chút để mô hình ít bị ảnh hưởng bởi ngoại lai hơn.
Trong đó δj` và δj´ là các phân vị của giá trị δ của phân phối dữ liệu của
đặc trưng xj . Ta lựa chọn giá trị δ là 0.05 nghĩa là với bất cứ giá trị của đặc
trưng xj mà nằm trong khoảng giá trị 5% thấp nhất hoặc 5% cao nhất sẽ
được đặt về phân vị 5% hoặc 95%. Theo kinh nghiệm, giá trị này nên được
đặt là 0.025. Thêm vào đó, các thành phần tuyến tính có thể được chuẩn
hóa để chúng có độ quan trọng như nhau giống các luật quyết định thông
thường.
Ở đây, 0.4 là giá trị độ lệch chuẩn trung bình của các luật với một phân
phối đều sk „ U p0, 1q.
Ta gộp cả hai loại đặc trưng để sinh ra một ma trận đặc trưng và huấn
luyện mô hình tuyến tính thưa với Lasso như sau:
K
ÿ p
ÿ
fˆpxq “ β̂0 ` α̂k rk pxq ` β̂j lj pxj q
k“1 j“1
Trong đó α̂ là vector trọng số được ước lượng cho các đặc trưng tương
ứng với luật và β̂ là vector trọng số cho các đặc trưng gốc. Do RuleFit sử
dụng Lasso, hàm mất mát nhận thêm một số thành phần để làm cho các
trọng số nhận giá trị 0.
˜ p
¸
n
ÿ K
ÿ ÿ
p
ptα̂uK
1 , tβ̂u0 q “ argmintα̂uK ,tβ̂up Lpy piq , f pxpiq qq ` λ ¨ |αk | ` |bj |
1 0
i“1 k“1 j“1
Kết quả của mô hình tuyến tính có các ảnh hưởng tuyến tính cho tất cả
các đặc trưng gốc và các luật. Sự diễn giải giống với các mô hình tuyến tính,
sự khác nhau duy nhất nằm ở việc các đặc trưng là các luật nhị phân.
Bước 3 (Không bắt buộc) - Độ quan trọng đặc trưng Với các thành
phần tuyến tính của các đặc trưng gốc, độ quan trọng đặc trưng được tính
toán bằng bộ dự đoán chuẩn hóa.
Một đặc trưng xuất hiện như một thành phần tuyến tính và cũng trong
rất nhiều các luật. Vậy ta làm sao để tính toán độ quan trọng tổng của đặc
trưng này. Độ quan trọng Jj pxq của một đặc trưng có thể được tính toán cho
từng dự đoán:
ÿ
Jj pxq “ Ij pxq ` Ik pxq{mk
xj Prk
trong đó Il là độ quan trọng của thành phần tuyến tính và Ik là độ uan trọng
của các luật quyết định trong đó xj xuất hiện, và mk là số đặc trưng tạo nên
luật rk . Việc thêm độ quan trọng đặc trưng từ tất cả các điểm dữ liệu cho
chũng ta độ quan trọng đặc trưng toàn cục.
n
ÿ
Jj pXq “ Jj pxpiq q
i“1
Việc lựa chọn một tập con các điểm dữ liệu và tính toán độ ảnh hưởng
cho nhóm này là khả dĩ.
4.6.3 Ưu điểm
Thuật toán RuleFit thêm các tương tác giữa các đặc trưng vào các mô
hình tuyến tính. Do đó, nó giải quyết vấn đề của mô hình tuyến tính khi ta
phải thêm các thành phần tương tác một cách thủ công và cũng mang lại lợi
ích khi ta mô hình các quan hệ phi tuyến.
RuleFit có thể giải quyết cả bài toán phân loại và hồi quy.
Các luật được tạo ra dễ dàng có thể diễn giải bởi vì chúng là các luật nhị
phân. Mặc cho luật có áp dụng cho một điểm dữ liệu hay không, việc diễn
giải tốt chỉ được đảm bảo nếu số điều kiện trong một luật không quá lớn.
Một luật với 1 đến 3 điều kiện là khả dĩ, nghĩa là độ sâu của các cây nên có
độ sâu lớn nhất là 3.
Thậm chí nếu ta có rất nhiều luật trong một mô hình, chúng không áp
dụng cho tất cả các điểm dữ liệu. Với một điểm dữ liệu, chỉ có các luật có
trọng số khác 0 được áp dụng. Điều này làm tăng tính khả diễn giải cục bộ.
RuleFit liên quan tới rất nhiều công cụ phân tích và các công cụ này
thuộc dạng kiểu mẫu, do đó ta có thể tìm hiểu thêm về chúng tại mục 5.1,
5.4 và 5.5
4.6.4 Nhược điểm
Đôi khi RuleFit tạo ra quá nhiều luật có trọng số khác 0 trong mô hình
Lasso. Việc diễn giải do đó cũng bị ảnh hưởng tiêu cực với số lượng tăng
dần của các đặc trưng trong mô hình. Một giải pháp hứa hẹn đó là làm cho
các ảnh hưởng đặc trưng trở nên đơn điệu, nghĩa là việc tăng giá trị của đặc
trưng sẽ dẫn đến một sự tăng tương ứng trong dự đoán.
Tuy nhiên có một vấn đề: Các bài báo cho rằng RuleFit có khả năng làm
việc tốt và gần bằng rừng ngẫu nhiên. Tuy nhiên trong một số ít trường hợp
khi tôi thử chạy, kết quả không như mong đợi. Hãy thử áp dụng vào bài toán
của bạn để kiểm tra điều này.
Kết quả cuối cùng của RuleFit là một mô hình tuyến tính cùng với các
đặc trưng đặc biệt (các luật quyết định). Tuy nhiên do nó là mô hình tuyến
tính, việc diễn giải các trọng số vẫn trở nên không trực quan. Nó có vấn đề
tương tự như mô hình hồi quy tuyến tính khi ta cần có điều kiện tất cả các
đặc trưng còn lại là không đổi. Ta cũng gặp một vấn đề nhỏ đó là các luật
chồng lên nhau. Ví dụ, một luật cho việc dữ đoán xe là: “temp > 10” và một
luật khác là “temp > 15 AND weather = GOOD”. Nếu thời tiết tốt và nhiệt
độ lớn hơn 15 độ thì mặc nhiên nhiệt độ sẽ lớn hơn 10 độ. Trong các trường
hợp khi luật thứ hai được áp dụng, luật thứ nhất cúng sẽ có hiệu lực. Sự diễn
giải của các trọng số ước lượng cho luật thứ hai đó là: “Giả sử mọi đặc trưng
cố định, giá trị xe được dự đoán sẽ tăng lên β2 lần khi thời tiết tốt và nhiệt
độ lớn hơn 15”. Tuy nhiên, rõ ràng rằng giả thiết “các đặc trưng là không đổi
có vấn đề, bởi vì nếu luật thứ 2 được áp dụng, thì luật thứ nhất cũng vậy và
việc diễn giải trở nên vô nghĩa.
n
1 ź
P pCk |xq “ P pCk q P pxi |Ck q
Z i“1
Thành phần Z là tham số hiệu chỉnh để đảm bảo rằng tổng các xác suất
luôn là 1 (nếu không chúng sẽ không phải là các giá trị xác suất). Xác suất
có điều kiện của một lớp là xác suất của lớp đó nhân với xác suất của từng
đặc trưng trong lớp, được chuẩn hóa bởi tham số Z. Công thức này có thể
được suy ra bằng cách sử dụng định lý Bayes.
Naive Bayes là một dạng mô hình khả diễn giải bởi giả thiết về tính phụ
thuộc của các đặc trưng. Nó có thể được diễn giải ở mức mô đun. Với mỗi
đặc trưng, việc chúng ảnh hưởng tới một dự đoán như thế nào là khá rõ ràng,
do đó ta có thể diễn giải xác suất có điều kiện này.
4.7.2 K hàng xóm gần nhất
K hàng xóm gần nhất là một phương pháp có thể được sử dụng trong cả
bài toán hồi quy và phân loại, chúng sử dụng các hàng xóm của một điểm dữ
liệu để đưa ra dự đoán. Với bài toán phân loại, thuật toán này gán lớp hay
xuất hiện nhất của các hàng xóm gần nhất cho một điểm dữ liệu. Với bài
toán hồi quy, nó lấy trung bình của đầu ra ứng với các hàng xóm. Điều khó
khăn trong thuật toán này đó là việc tìm ra số lượng k và quyết định làm
sao để tính toán khoảng cách giữa các điểm dữ liệu, điều mà sẽ định nghĩa
các hàng xóm.
Mô hình này khác với các mô hình khả diễn giải khác trong cuốn sách này
ở chỗ nó là một thuật toán học dựa trên các điểm dữ liệu (instance-based
learning). Vậy làm sao để ta diễn giải mô hình này? Đầu tiên, ta cần lưu ý
rằng không có tham số nào được học, do đó sẽ không có việc diễn giải ở mức
mô đun. Hơn nữa, ta không thể diễn giải mô hình ở mức toàn cục bởi vì mô
hình là cục bộ và không tồn tại trọng số hay cấu trúc toàn cục nào được học
cả. Có lẽ ta có thể diễn giải ở mức cục bộ? Để giải thích một dự đoán, ta
luôn có thể lấy ra được k hàng xóm được dùng cho việc dự đoán. Liệu mô
hình có khả diễn giải hay không phụ thuộc vào câu hỏi liệu ta có thể diễn
giải các điểm dữ liệu trong tập dữ liệu hay không. Nếu một điểm dữ liệu bao
gồm hàng trăm thậm chí hàng ngàn đặc trưng, ta rõ ràng không thể diễn
giải. Nhưng nếu ta chỉ có vài đặc trưng hoặc tồn tại phương pháp để làm
giảm số đặc trưng về một tập nhỏ các đặc trưng quan trọng nhất, việc trình
bày k điểm dữ liệu hàng xóm có thể cho ta các giải thích tốt.
Chương 5
132
• Tính linh hoạt của mô hình: Phương pháp phân tích có thể hoạt động với
bất kỳ mô hình học máy nào, chẳng hạn như rừng ngẫu nhiên (Random
Forest) hay mạng nơ-ron sâu (Deep Neural Networks)
• Linh hoạt trong diễn giải: Bạn không bị giới hạn trong một hình thức
diễn giải nhất định. Trong một số trường hợp, có thể hữu ích khi có một
công thức tuyến tính, trong các trường hợp khác là đồ hoạ với các đặc
trưng quan trọng
• Tính linh hoạt trong biểu diễn: Hệ thống phân tích có thể sử dụng một
biểu diễn tính năng khác như mô hình đang được giải thích. Đối với bộ
phân loại văn bản sử dụng các từ trừu tượng trong vector, đôi khi sử
dụng sự hiện diện của từng từ để giải thích là việc tốt hơn.
Lớp cuối cùng được chiếm bởi một Con Người. Nhìn! Điều này làm bạn
vui mừng vì bạn đang đọc cuốn sách này và giúp đưa ra những giải thích tốt
hơn về các Mô Hình Hộp Đen! Con người cuối cùng là người tiêu thụ những
lời giải thích.
Sự trừu tượng nhiều lớp này cũng giúp hiểu được sự khác biệt trong cách
tiếp cận giữa các nhà thống kê và các nhà thực hành học máy. Các nhà thống
kê xử lý lớp Dữ Liệu, chẳng hạn như lập kế hoạch thử nghiệm lâm sàng hoặc
thiết kế khảo sát. Họ bỏ qua lớp Mô Hình Hộp Đen và chuyển đến ngay lớp
Phương Pháp Khả Diễn Giải. Các chuyên gia học máy cũng xử lý lớp Dữ
Liệu, chẳng hạn như thu thập các mẫu hình ảnh ung thư da được dán nhãn
hoặc thu thập dữ liệu Wikipedia. Sau đó, họ đào tạo một mô hình máy học
hộp đen. Lớp Phương Pháp Khả Diễn Giải bị bỏ qua và con người trực tiếp
xử lý các dự đoán của Mô Hình Hộp Đen. Thật tuyệt khi học máy khả diễn
giải kết hợp được công việc của các nhà thống kê và các chuyên gia về máy
học.
Tất nhiên hình ảnh này không nắm bắt được tất cả mọi thứ: Dữ liệu có
thể đến từ các mô phỏng. Các Mô Hình Hộp Đen cũng đưa ra các dự đoán
thậm chí có thể không đến được với con người mà chỉ cung cấp cho các máy
khác, v.v. Nhưng nhìn chung, đó là một sự trừu tượng hữu ích để hiểu cách
khả năng phân tích trở thành lớp mới này trên đầu các mô hình học máy.
5.1 Phác họa phụ thuộc riêng (Partial De-
pendence Plot)
Phác họa phụ thuộc riêng (partial dependence plot) (viết tắt là PDP hoặc
phác họa PD) thể hiện các ảnh hưởng biên (marginal effect) của một hoặc
hai đặc trưng có trong dự đoán đầu ra của một mô hình học máy (J. H.
Friedman 2001). Một phác họa phụ thuộc riêng thể hiện được mối quan hệ
giữa một mục tiêu (target) và đặc trưng là tuyến tính, đơn điệu hoặc phức
tạp hơn. Ví dụ, khi áp dụng trong một mô hình hồi quy tuyến tính (linear
regression model), những đồ thị phụ thuộc riêng luôn luôn thể hiện mối quan
hệ tuyến tính.
Đối với bài toán hồi quy, hàm phụ thuộc riêng (PD function) được định
nghĩa như sau:
” ı ż
fˆxS pxS q “ ExC fˆpxS , xC q “ fˆpxS , xC qdPpxC q
Biến xS là những đặc trưng mà phác họa PD cần phải biểu diễn và xC là
những đặc trưng khác được dùng trong mô hình học máy fˆ. Thông thường
tập S chỉ chứa một hoặc hai đặc trưng. S là những đặc trưng mà ta muốn
tìm hiểu ảnh hưởng của chúng lên phép dự đoán. Các véc tơ đặc trưng xS và
xC được kết hợp để tạo thành toàn bộ không gian đặc trưng x. Sự phụ thuộc
riêng (PD) hoạt động qua phép biên hóa (marginalization) ở đầu ra của mô
hình học máy trên phân phối (distribution) của đặc trưng trong tập C, để
cho hàm thể hiện quan hệ giữa các đặc trưng ta quan tâm trong tập S và dự
đoán đầu ra. Bằng phép biên hóa cho các đặc trưng khác, ta thu được một
hàm phụ thuộc chỉ vào các đặc trưng trong tập S mà đã bao gồm sự tương
tác (interaction) giữa các đặc trưng khác.
Hàm đặc trưng riêng (partial function) fˆxS được xấp xỉ bằng cách tính
trung bình trong dữ liệu huấn luyện, hay còn gọi là phương pháp Monte
Carlo:
n
1ÿˆ
fˆxS pxS q “
piq
f pxS , xC q
n i“1
Hàm đặc trưng riêng cho ta biết giá trị trung bình của ảnh hưởng biên lên
phép dự đoán ra sao với một (nhiều) giá trị cho trước của những đặc trưng
piq
trong S. Trong công thức này, xC là những giá trị đặc trưng (feature values)
từ tập dữ liệu cho các đặc trưng mà chúng ta không quan tâm tới, và n là số
lượng các mẫu dữ liệu (instances) trong bộ dữ liệu. Một giả định của PDP
là những dặc trưng cửa tập C không có tương quan (correlated) với những
đặc trưng của S. Nếu phép gỉa định này bị vi phạm, các giá trị trung bình
tính toán cho phác họa đặc trưng riêng sẽ có những điểm dữ liệu (gần như)
không khả thi (Xem phần nhược điểm).
Với bài toán phân lớp trong các mô hình học máy có kết quả xác suất
(probabilities) ở đầu ra, phác họa đặc trưng riêng thể hiện xác suất của một
lớp nhất định, cho trước các giá trị khác nhau của đặc trưng trong S. Cách
đơn giản để thể hiện nhiều lớp là thể hiện 1 đường phác họa hoặc phác họa
riêng cho mỗi lớp.
Phác họa đặc trưng riêng là phương pháp toàn cục (global): Phương pháp
này xem xét các mẫu dữ liệu và cho ra một tuyên bố về mối quan hệ toàn
cục của một đặc trưng với dự đoán đầu ra.
Các đặc trưng kiểu hạng mục (Categorical features) Tới đây chúng
ta mới chỉ xét các đặc trưng số (numerical features). Cho các đặc trưng kiểu
hạng mục, ta lấy dự đoán phác họa PD qua việc “ép” các mẫu dữ liệu vào
chung một hạng mục (category). Ví dụ, khi chúng ta xét dữ liệu thuê xe đạp
và quan tâm tới phác họa đặc trưng riêng cho các thuộc tính mùa, ta sẽ thu
được 4 giá trị số, mỗi số tương ứng một mùa. Để tính giá trị cho “hè,” ta
thay ô “mùa” trong các mẫu dữ liệu bằng “hè” và lấy trung bình các giá trị
dự đoán.
5.1.1 Ví dụ
Trong ứng dụng, tập chứa đặc trưng S chỉ chứa một hoặc tối đa hai đặc
trưng, lý do vì một đặc trưng tạo ra các phác họa 2D và hai đặc trưng sẽ tạo
ra các phác họa 3D. Lượng đặc trưng lớn hơn sẽ càng phức tạp hơn. Ngay cả
in hình 3D trên giấy hoặc màn hình 2D cũng rất là thử thách.
Ta trở lại ví dụ về hồi quy, trong đó ta dự đoán số xe đạp được thuê trong
một ngày định trước. Trước hết ta sử dụng mô hình học máy rồi phân tích
những phần phụ thuộc riêng (partial dependencies). Trong trường hợp này,
ta khớp một rừng ngẫu nhiên (random forest) để dự đoán số xe đạp và dùng
phác họa phụ thuộc riêng để mô phỏng các mối quan hệ mà mô hình đã học.
Sự ảnh hưởng của các đặc trưng thời tiết lên số lượng xe đạp đã dự đoán
được mô phỏng trong hình sau.
Hình 5.2: PDPs cho mô hình dự đoán số lượng xe đạp và nhiệt độ, độ ẩm
và tốc độ gió. Sai khác khoảng cách lớn nhất nằm trong nhiệt độ. Trời nóng
hơn thì nhiều xe đạp được thuê hơn. Xu hướng này tiếp tục đi lên tới 20 độ
Celsius, sau đó phẳng dần và hạ xuống tương đối ở 30. Các đánh dấu trên
trục x biểu thị sự phân phối dữ liệu (data distribution).
Với thời tiết ấm mà không quá nóng, mô hình dự đoán trung bình một số
lượng thuê xe đạp cao. Những người đi xe đạp tiềm năng sẽ giới hạn thuê xe
đạp khi độ ẩm vượt quá 60%. Ngoài ra, càng nhiều gió sẽ làm ít người muốn
đạp xe, và điều này hợp lý. Điều thú vị là số lượng thuê xe đạp đã dự đoán
sẽ không giảm khi tốc độ gió tăng trong 25 tới 35 km/giờ, nhưng ta không
có nhiều dữ liệu huấn luyện, cho nên mô hình học máy có thể đã không học
một dự đoán có ý nghĩa trong khoảng này. Ít nhất qua trực giác, tác giả sẽ
dự đoán số lượng thuê xe đạp sẽ giảm chung khi tốc độ gió tăng, đặc biệt
là khi tốc độ gió rất cao. Để minh họa phác họa phụ thuộc riêng với một
đặc trưng hạng mục, ta xét ảnh hưởng của đặc trưng về mùa lên dự đoán số
lượng xe đạp thuê.
Hình 5.3: PDPs cho mô hình dự đoán số lượng xe đạp và các mùa. Bất ngờ là
tất cả các mùa thể hiện ảnh hưởng tương tự nhau lên các mô hình dự đoán,
chỉ trong mùa xuân thì mô hình dự đoán ít xe đạp hơn.
Ta sẽ tính sự phụ thuộc riêng cho phân loại nguy cơ gây ung thư cổ tử
cung. Lần này ta khớp mô hình cây ngẫu nhiên để dự đoán liệu một người
phụ nữ có thể mắc ung thư cổ tử cung dựa trên các yếu tố rủi ro. Ta tính
toán và mô phỏng sự phụ thuộc riêng của xác suất ung thư trên những đặc
trưng khác nhau cho rừng ngẫu nhiên.
Ta có thể mô phỏng cùng lúc sự phụ thuộc riêng của cả hai đặc trưng:
Hình 5.4: PDPs về xác suất ung thư dự trên tuổi và năm với dùng các biện
pháp tránh thai nội tiết tố. Về tuổi, các PDP thể hiện rằng xác suất sẽ thấp
cho tới khi 40 tuổi và tăng lên sau đó. Với nhiều năm sử dụng biện pháp
tránh thai nội tiết tố hơn thì khả năng dự đoán ung thư cao hơn, đặc biệt là
sau 10 năm. Vì trong cả hai đặc trưng ta không có sẵn nhiều điểm dữ liệu với
các gía trị lớn hơn, sự phụ thuộc riêng ước tính là sẽ ít đáng tin hơn trong
các miền nêu trên.
5.1.2 Ưu điểm
Tính toán trong các phác hoạ phụ thuộc riêng có tính trực giác: Hàm phụ
thuộc riêng ở một giá trị đặc trưng cụ thể thể hiện dự đoán trung bình nếu
như ta “ép” các điểm dữ liệu để giả định giá trị đặc trưng đó.
Nếu như đặc trưng được dùng để tính PDP không tương quan với các đạc
trưng khác, các PDPs sẽ thể hiện hoàn toàn cách mà đặc trưng ảnh hưởng dự
đoán theo trung bình. Trong trường hợp không tuơng quan, cách giải thích
khá rõ: Phác hoạ đặc trưng riêng diễn tả dự đoán trung bình trong bộ dữ
Hình 5.5: PDP về xác suất ung thư dự trên tuổi và sự tương tác giữa tuổi
và số lần có thai. Phác họa thể hiện sự tăng lên về xác suất ung thư ở tuổi
45. Ở tuổi dưới 25, phụ nữ đã có thai 1 hoặc 2 lần sẽ có nguy cơ ung thư
dự đoán là thấp hơn, so với phụ nữ chưa có hoặc hơn 2 lần có thai. Nhưng
hãy cẩn thận khi đưa ra kết luận: Đây có thể chỉ là sự tương quan chứ không
phải là nguyên nhân!
liệu của bạn thay đổi ra sao khi đặc trưng thứ j thay đổi. Vấn đề phức tạp
hơn khi các đặc trưng có mối tương quan với nhau, xem thêm phần nhược
điểm.
Các phác họa đặc trưng riêng rất dễ để thực hiện.
Tính toán cho các phác họa đặc trưng riêng có tính khả giải thích nhân
quả. Ta can thiệp vào một đặc trưng và đo sự thay đổi trong các dự đoán.
Khi làm vậy ta đã phân tích mối quan hệ nhân quả giữa đặc trưng và phép
dự đoán. Mối quan hệ là nhân quả cho mô hình – bởi vì ta mô hình hóa đầu
ra là hàm theo các đặc trưng – nhưng không nhất thiết đúng cho thế giới
thực!
5.2.1 Ví dụ
Thử nghiệm với bộ dữ liệu ung thư cổ tử cung và xem xem dự đoán cho
từng điểm dữ liệu và đặc trưng “Tuổi” có quan hệ như thế nào. Ta hãy phân
tích một mô hình rừng ngẫu nhiên phân tích xác suất bị ung thư của một
người phụ nữ khi biết các yếu tố rủi ro. Ở phần PDP chúng ta đã thấy xác
suất bị ung thư tăng xung quanh độ tuổi 50, nhưng liệu điều này có đúng
với tất cả phụ nữ trong tập dữ liệu? Phác hoạ ICE thể hiện với hầu hết phụ
nữ, ảnh hưởng của độ tuổi dẫn tới việc gia tăng nguy cơ xung quanh độ tuổi
50, nhưng có một vài ngoại lệ: Với những người đã có nguy cơ cao từ khi còn
trẻ, xác suất bị ung thư được dự đoán không thay đổi nhiều theo độ tuổi.
Hình 5.6: Phác hoạ ICE cho xác suất bị ung thư cổ tử cung theo độ tuổi.
Mỗi đường đại diện cho một phụ nữ. Với hầu hết phụ nữ, xác suất bị ung
thư tăng theo độ tuổi. Với một vài người có xác suất bị ung thư cao hơn 0.4,
dự đoán không thay đổi nhiều khi già đi.
Hình tiếp theo minh họa phác hoạ ICE cho bộ dữ liệu thuê xe đạp. Mô
hình được diễn giải ở đây là rừng ngẫu nhiên. Mọi đường cong có vẻ theo
một đường nhất định, do đó không có tương tác rõ ràng giữa các đặc trưng.
Điều này có nghĩa PDP đã đủ để minh họa mối quan hệ giữa đặc trưng đang
xét và số lượng xe đạp cho thuê được dự đoán.
nhau. Một các giải quyết đơn giản là đưa các đường cong về cùng một điểm
bắt đầu, và chỉ thể hiện sự khác nhau giữa các dự đoán so với điểm đó. Phác
hoạ này gọi là phác hoạ ICE căn giữa (c-ICE). Ở đây, căn giữa (centered)
là ta lấy mọi dữ liệu trừ giá trị trung bình để trung bình bằng 0,
cho giá trị trung bình ở giữa đường cong ở ngay trung tâm hệ toạ
độ. Bắt đầu từ điểm có giá trị của đặc trưng thấp nhất là một lựa chọn tốt.
Đường cong mới được định nghĩa như sau:
với 1 là vector mang giá trị 1 với số chiều phù hợp (thường là 1 hoặc 2), fˆ là
mô hình được huấn luyện, xa là điểm được chọn.
Ví dụ
Dưới đây là phác hoạ ICE cho bộ dữ liệu ung thư cổ tử cung theo độ tuổi,
căn tại độ tuổi nhỏ nhất: Phác hoạ ICE căn giữa giúp so sánh các đường của
Hình 5.8: Phác hoạ ICE căn giữa cho xác suất bị ung thư cổ tử cung theo độ
tuổi. Tất cả các đường bắt đầu tại 0 ở độ tuổi 14. So sánh với độ tuổi này,
dự đoán cho hầu hết mọi người không đổi cho đến 45 tuổi, khi xác suất dự
đoán tăng lên
từng điểm dữ liệu với nhau dế dàng hơn. Điều này sẽ có ích nếu ta không
cần quan sát sự thay đổi chính xác của dự đoán, mà là sự thay đổi của khi
so sánh với một điểm cụ thể trong tập giá trị của đặc trưng.
Dưới đây là phác hoạ ICE căn giữa cho mô hình dự đoán số xe đạp cho
thuê
Hình 5.9: Phác hoạ ICE căn giữa cho mô hình dự đoán số xe đạp cho thuê
theo điều kiện thời tiết. Các đường cong cho thấy sự thay đổi của dự đoán
so với dự đoán ứng với giá trị nhỏ nhất của đặc trưng tương ứng.
Không có tương tác, mỗi đạo hàm riêng sẽ giống nhau với mọi điểm dữ liệu.
Nếu chúng khác nhau, điều này là có sự tương tác và có thể thấy được từ
phác hoạ d-ICE. Ngoài việc dựng từng đường cong cho đạo hàm của hàm dự
đoán, đưa ra độ lệch chuẩn của đạo hàm làm nổi bật vùng giá trị của đặc
trưng có sự không đồng nhất. Phác hoạ d-ICE thường có chi phí tính toán
cao và do đó không thực tế.
5.2.4 Ưu điểm
Đường cong ICE thậm chí còn trực quan hơn phác hoạ PDP. Mỗi
đường ứng với dự đoán của một điểm dữ liệu nếu chúng ta thay đổi giá trị
của đặc trưng đang xét.
Không giống như PDP, đường cong ICE có thể thể hiện được quan hệ
không đồng nhất
giá trị dự đoán của các mẫu dữ liệu với cùng một giá trị x1. Kết quả sau khi
tính các ảnh hưởng đặc trưng dùng phân phối có điều kiện được gọi là các
phác hoạ biên (Marginal Plots), hay còn là M-Plots (Tên có tính nhầm lẫn
vì chúng dựa trên phân phối có điều kiện, chứ không phải phân phối biên).
Đợi đã, chính tác giả đã hứa không nói về các phác hoạ ALE? M-Plots không
phải là phương pháp chúng ta đang tìm kiếm. Tại sao M-Plots không giải
quyết vấn đề? Nếu như chúng ta trung bình các dự đoán của mọi căn nhà
trong khoảng 30 m2 , ta ước tính ảnh hưởng kết hợp (combined) cho diện
tích và cả số lượng phòng, bởi vì sự tương quan của chúng. Giả sử rằng diện
tích không có ảnh hưởng lên giá trị dự đoán của một ngôi nhà, mà chỉ có số
phòng ảnh hưởng. M-Plot vẫn sẽ vẫn cho thấy rằng kích thước khu vực sống
làm tăng giá trị dự đoán, vì số lượng phòng tăng theo với diện tích. Phác
hoạ sau thể hiện với hai đặc trưng tương quan thì M-plots hoạt động như
thế nào.
Hình 5.11: Các đặc trưng tương quan mạnh (Strongly correlated features)
x1 và x2. M-Plots trung bình hoá trong phân phối có điều kiện. Ở đây phân
phối có điều kiện của x2 ở x1 = 0.75. Trung bình hoá những dự đoán cục bộ
dẫn đến việc trộn lẫn các ảnh hưởng của cả hai đặc trưng.
M-Plots tránh sử dụng dự đoán của các mẫu dữ liệu khó xảy ra, nhưng
chúng trộn lẫn ảnh hưởng của một đặc trưng với ảnh hưởng của tất cả các
đặc trưng tương quan. Các phác họa ALE giải quyết vấn đề này thông qua
tính toán – tương tự với M-Plots trên phương thức– các giá trị sai khác
(differences) trong các dự đoán thay vì dùng các giá trị trung bình.
Đối với hưởng của diện tích tại giá trị 30 m2 , phương pháp ALE sử dụng tất
cả các dữ liệu ngôi nhà có diện tích khoảng 30 m2 , lấy dư đoán cho những
ngôi nhà này nhưng thay giá trị diện tích thành 31 m2 trừ đi dự đoán khi
thay giá trị diện tích thành 29 m2 . Điều này cho chúng ta ảnh hưởng thuần
túy của diện tích và không trộn lẫn ảnh hưởng đó với các ảnh hưởng trong
các đặc trưng có tương quan. Việc sử dụng sai khác giữa các dự đoán trên
đã chặn ảnh hưởng của các đặc trưng khác. Phác họa sau đây cung cấp trực
giác về cách tính toán các phác thảo ALE.
Hình 5.12: Tính toán ALE cho đặc trưng x1 tương quan với x2. Đầu tiên ta
phân các đặc trưng ra thành các khoảng (các đường thẳng). Cho các mẫu
dữ liệu (Các chấm đen) trong một khoảng, ta tính sai khác trong dự đoán
khi ta thay đổi đặc trưng bằng giới hạn trên và dưới của khoảng (các đường
ngang). Các sai khác được tích luỹ sau đó và được căn giữa (centered) kết
quả sẽ ra phác hoạ ALE.
Để tổng hợp phương thức mỗi dạng phác hoạ (PDP, M, ALE) tính toán
ảnh hưởng của một đặc trưng ở một giá trị lưới v:
Các phác hoạ đặc trưng riêng : “Hãy để tôi chỉ cho bạn biết mô hình
dự đoán trên trung bình khi mỗi mẫu dữ liệu có giá trị v cho đặc trưng đó.
Ta không để ý liệu giá trị v có hợp lý với tất cả các mẫu dữ liệu hay không.”
M-Plots : “Hãy để ta chỉ cho bạn thấy mô hình dự đoán trên trung bình
cho các trường hợp mẫu dữ liệu có giá trị gần với v cho đặc trưng đó. Ảnh
hưởng có thể là do đặc trưng đó, nhưng cũng do các đặc trưng tương quan.”
Các phác hoạ ALE : “Hãy để ta chỉ cho bạn cách các dự đoán trong mô
hình thay đổi ra sao trong một “ cửa sổ” nhỏ của đặc trưng xung quanh v
cho các mẫu dữ liệu trong cửa sổ đó.”
5.3.2 Lý thuyết
Các phác hoạ PD, M và ALE khác nhau ra sao về mặt toán học? Đặc
điểm chung cho cả ba phương pháp là chúng giảm tính phức tạp của hàm
dự đoán f thành hàm chỉ phụ thuộc vào một (hoặc hai) đặc trưng. Tất cả
ba phương pháp đều làm điều đó thông qua lấy trung bình các ảnh hưởng
của các đặc trưng khác, nhưng chúng khác nhau về việc chọn giữa tính toán
trung bình của các dự đoán hay các sai khác trong các dự đoán và tính
toán trung bình được thực hiện trên phân phối biên hay có điều kiện.
Phác hoạ đặc trưng riêng tính trung bình những dự đoán theo phân phối
biên.
” ı
fˆxS ,P DP pxS q “ EXC fˆpxS , XC q
ż
“ fˆpxS , xC qPpxC qdxC
xC
Đây là giá trị của hàm dự đoán f , tại (các) giá trị đặc trưng xS , được
tính trung bình trên tất cả các đặc trưng trong xC . Tính trung bình có nghĩa
là tính toán kỳ vọng biên E trên các đặc trưng trong tập C, chính là phép
tích phân trên các dự đoán được trọng số hoá thông qua phân phối xác suất.
Nghe có vẻ văn hoa, nhưng để tính giá trị kì vọng trên phân phối biên, chúng
ta chỉ cần lấy tất cả mẫu dữ liệu, buộc chúng phải có một giá trị lưới nhất
định theo các đặc trưng trong tập S và tính trung bình các dự đoán cho bộ
thao tác dữ liệu. Quy trình này đảm bảo rằng chúng ta trung bình hoá trên
phân phối biên của các đặc trưng.
M-plots tính trung bình các dự đoán trên phân phối có điều kiện.
” ı
ˆ ˆ
fxS ,M pxS q “ EXC |XS f pXS , XC q|XS “ xs
ż
“ fˆpxS , xC qPpxC |xS qdxC
xC
Điểm thay đổi duy nhất so với PDP là ta tính trung bình các dự đoán
theo phân phối có điều kiện trên từng giá trị lưới của đặc trưng quan tâm,
thay vì giả định phân phối biên ở mỗi giá trị lưới. Trong thực tế, điều này
có nghĩa là chúng ta phải định nghĩa lân cận (neighborhood), ví dụ để tính
toán ảnh hưởng của 30 m2 đến giá trị dự đoán của ngôi nhà, ta có thể tính
trung bình các dự đoán của tất cả các ngôi nhà trong khoảng từ 28 đến 32
m2 .
Các phác hoạ ALE tính trung bình các thay đổi trong các dự đoán và
tích lũy chúng qua lưới (các tính toán sẽ được thêm sau).
ż xS ” ı
ˆ
fxS ,ALE pxS q “ ˆ S
EXC |XS f pXs , Xc q|XS “ zS dzS ´ constant
z0,1
ż xS ż
“ fˆS pzs , xc qPpxC |zS qdxC dzS ´ constant
z0,1 xC
Công thức cho thấy ba điều khác biệt đối với M-Plots. Đầu tiên, ta tính
trung bình các thay đổi trong các dự đoán, không phải của chính dự đoán.
Thay đổi được định nghĩa là gradient (nhưng sau đó với tính toán thực tế,
đã được thay thế bằng các sai khác trong các dự đoán trên một khoảng).
δ fˆpxS ,xC q
fˆS pxs , xc q “ δxS
Sự khác biệt thứ hai là tích phân bổ sung trên z. Ta tích lũy các gradients
cục bộ trên phạm vi các đặc trưng trong tập S, cho ta ảnh hưởng của đặc
trưng trên dự đoán. Đối với tính toán thực tế, các giá trị z được thay thế bằng
một lưới các khoảng thông qua đó chúng ta tính toán những thay đổi trong
dự đoán. Thay vì lấy trung bình trực tiếp các dự đoán, phương pháp ALE
tính toán các giá trị dự đoán sai khác được điều kiện hoá trên các đặc trưng
S và tích phân các đạo hàm trên các đặc trưng S để ước tính ảnh hưởng.
Chà, nghe có vẻ ngu ngốc. Đạo hàm và tích phân thường triệt tiêu lẫn nhau,
như làm phép trừ rồi cộng cùng một số. Tại sao nó lại có ý nghĩa trong đây?
Đạo hàm (hoặc sai khác khoảng (interval difference)) cô lập ảnh hưởng của
đặc trưng ta quan tâm và chặn ảnh hưởng của các đặc trưng tương quan.
Sự khác biệt thứ ba của các ô ALE so với M-plots là chúng ta trừ đi một
hằng số từ các kết quả. Bước này ta căn giữa biểu đồ ALE sao cho ảnh hưởng
trung bình trên dữ liệu bằng không.
Một vấn đề còn lại: Không phải tất cả các mô hình đều có gradient, ví dụ
rừng ngẫu nhiên không có gradient. Nhưng bạn đọc sẽ thấy, tính toán thực
tế hoạt động được mà không cần gradient và sử dụng các khoảng. Chúng ta
hãy đi sâu hơn một chút vào việc ước tính các phác hoạ ALE.
Hãy phân tích công thức này, bắt đầu từ phía bên phải. Các tích lũy
ảnh hưởng cục bộ phản ánh tốt tất cả các thành phần riêng lẻ trong công
thức. Tại cốt lõi, phương pháp ALE tính toán các sai khác trong các dự
đoán, theo đó chúng ta thay thế đặc trưng quan tâm bằng các giá trị lưới z.
Sai khác trong dự đoán là Ảnh hưởng (Effect) mà đặc trưng đang có lên
điểm dữ liệu riêng lẻ trong một khoảng nhất định. Tổng ở phía phải cộng
các ảnh hưởng của tất cả miền dữ liệu trong một khoảng mà biểu thị trong
công thức dưới dạng lân cận Nj pkq. Ta chia tổng này cho số lượng điểm dữ
liệu trong khoảng này để có được sai khác trung bình của các dự đoán cho
khoảng này. Giá trị trung bình trong khoảng này được thể hiện bằng thuật
ngữ cục bộ (Local) trong tên ALE. Ký hiệu tổng phía trái có nghĩa là ta
tích lũy các ảnh hưởng trung bình trong tất cả các khoảng. Ví dụ, ALE chưa
căn giữa (uncentered) của một giá trị đặc trưng nằm trong khoảng thứ ba
là tổng ảnh hưởng của các khoảng thứ nhất, thứ hai và thứ ba. Từ tích luỹ
(Accumulated) trong ALE phản ánh điều này.
Ảnh hưởng này được căn giữa sao cho ảnh hưởng trung bình bằng không.
Giá trị của ALE có thể hiểu là ảnh hưởng chính của đặc trưng ở một giá
trị nhất định so với dự đoán trung bình của dữ liệu. Ví dụ: ước tính ALE là
´2 tại xj “ 3 có nghĩa là khi đặc trưng thứ j có giá trị 3, thì dự đoán thấp
hơn 2 đơn vị so với dự đoán trung bình.
Các phân vị (quantiles) của phân phối trong đặc trưng được dùng làm
lưới để xác định các khoảng. Sử dụng các phân vị đảm bảo rằng có cùng mẫu
dữ liệu trong mỗi khoảng. Phân vị có nhược điểm là các khoảng có thể có
độ dài rất khác nhau. Điều này dẫn đến một số phác hoạ ALE kỳ lạ nếu đặc
trưng quan tâm bị sai lệch, ví dụ như nhiều giá trị thấp và chỉ một vài giá
trị rất cao.
Các phác hoạ ALE cho sự tương tác của hai đặc trưng.
Các phác hoạ ALE cũng có thể hiện ảnh hưởng tương tác của hai đặc
trưng. Nguyên tắc tính toán là tương đương đối với một đặc trưng, nhưng
ta làm việc với các ô hình chữ nhật thay vì các khoảng, bởi vì ta phải tích
lũy các ảnh hưởng trên hai chiều. Ngoài việc điều chỉnh ảnh hưởng trung
bình tổng thể, ta cũng điều chỉnh các ảnh hưởng chính của cả hai đặc trưng.
Điều này có nghĩa là ALE cho hai đặc trưng ước tính ảnh hưởng bậc hai,
tức không bao gồm các ảnh hưởng chính của các đặc trưng. Nói cách khác,
ALE cho hai đặc trưng chỉ hiển thị ảnh hưởng tương tác bổ sung của hai đặc
trưng. Ta để dành cho bạn các công thức cho các ô 2D ALE vì chúng dài và
khá khó đọc. Nếu bạn quan tâm đến tính toán, ta giới thiệu bạn đến bài báo,
công thức (13) - (16). Ta sẽ dựa vào trực quan hóa để phát triển trực giác về
tính toán ALE bậc hai.
Trong hình trước, nhiều ô bị trống do tương quan. Trong phác hoạ ALE,
điều này được mô phỏng bằng một hộp màu xám hoặc tối. Ngoài ra, bạn đọc
có thể thay thế ước tính ALE bị thiếu trong một ô trống bằng ước tính ALE
của ô không bị trống gần nhất.
Do ước tính ALE cho hai đặc trưng chỉ hiển thị ảnh hưởng bậc hai của
các đặc trưng, việc diễn giải đòi hỏi sự chú ý đặc biệt. Ảnh hưởng bậc hai là
ảnh hưởng tương tác bổ sung của các đặc trưng sau khi ta đã tính đến các
ảnh hưởng chính của chúng. Giả sử hai đặc trưng không tương tác, nhưng
Hình 5.13: Tính toán 2D-ALE. Chúng ta đặt một lưới trên hai đặc trưng.
Trong mỗi ô lưới, ta tính toán sự khác biệt bậc 2 cho tất cả các mẫu dữ liệu
bên trong. Trước tiên ta thay thế các giá trị của x1 và x2 bằng giá trị các ô
ở góc. Nếu a, b, c và d đại diện cho các dự đoán “góc” của một trường hợp
đã được thao tác (như được dán nhãn trong đồ họa), thì sai khác bậc 2 là (d
- c) - (b - a). Sai khác trung bình bậc 2 trong mỗi ô được tích lũy trên lưới
và được căn giữa.
mỗi đặc trưng có ảnh hưởng tuyến tính đến kết quả dự đoán. Trong phác hoạ
ALE 1D cho mỗi đặc trưng, ta sẽ thấy một đường thẳng biểu thị ước tính
một đường cong ALE. Nhưng khi chúng ta vẽ các phác hoạ ALE 2D, chúng
phải gần bằng 0, vì ảnh hưởng bậc hai chỉ là ảnh hưởng bổ sung cho sự tương
tác. Các phác hoạ ALE và PD khác nhau trên vấn đề này: Các PDP luôn
hiển thị tất cả ảnh hưởng, các ô ALE hiển thị ảnh hưởng bậc nhất hoặc bậc
hai. Đây là những quyết định thiết kế không phụ thuộc vào cấu trúc toán
học. Bạn có thể lược đi các ảnh hưởng bậc thấp trong phác hoạ phụ thuộc
riêng để thu được các ảnh hưởng chính hoặc bậc hai thuần túy, hoặc, bạn
có thể ước tính tất cả các ô ALE bằng cách lược đi các ảnh hưởng bậc thấp
hơn.
Các phác họa tích lũy ảnh hưởng cục bộ cũng được tính cho các bậc cao
tùy ý (tương tác của ba đặc trưng trở lên), nhưng như được lập luận trong
chương PDP, chỉ có tối đa hai đặc trưng là hợp lý, bởi vì các tương tác cao
hơn không thể được hình dung hoặc thậm chí được hiểu một cách có ý nghĩa.
ALE cho các đặc trưng hạng mục
Theo định nghĩa, phương pháp accumulated local cần các giá trị đặc trưng
để thu được thứ tự bậc, bởi vì phương thức tích lũy các đặc trưng theo một
hướng nhất định. Các đặc trưng hạng mục không có bất kỳ trật tự tự nhiên.
Để tính toán một phác hoạ ALE cho một đặc trưng hạng mục, chúng ta phải
bằng cách nào đó tạo hoặc tìm một thứ tự bậc. Thứ tự của các hạng mục
ảnh hưởng lên việc tính toán và giải thích các tích lũy ảnh hưởng cục bộ.
Một giải pháp là đặt thứ tự các hạng mục theo sự tương đồng của chúng
dựa trên các đặc trưng khác. Khoảng cách giữa hai hạng mục là tổng các
khoảng cách của mỗi đặc trưng. Khoảng cách đặc trưng sẽ so sánh phân phối
tích luỹ (cumulative) trong cả hai hạng mục, còn được gọi là khoảng cách
Kolmogorov - Smirnov (đối với các đặc trưng số) hoặc các bảng tần số tương
đối (đối với các đặc trưng hạng mục). Khi chúng ta có khoảng cách giữa tất
cả hạng mục, chúng ta sử dụng multi-dimensional scaling (phép kéo giãn đa
chiều) để giảm ma trận khoảng cách xuống phép đo khoảng cách trên một
chiều. Điều này cho chúng ta một thứ tự dựa trên sự tương đương trong các
hạng mục.
Để làm rõ hơn một chút, ta có một ví dụ: Chúng ta hãy giả sử rằng có
hai đặc trưng hạng mục “mùa” và “thời tiết” và một đặc trưng số “nhiệt độ”.
Đối với đặc trưng hạng mục đầu tiên (mùa), chúng ta muốn tính toán các
ALE. Đặc trưng này có các danh mục “mùa xuân”, “mùa hè”, “mùa thu”, “mùa
đông”. Chúng ta bắt đầu tính khoảng cách giữa các hạng mục “mùa xuân”
và “mùa hè”. Khoảng cách tính là tổng khoảng cách so với nhiệt độ và thời
tiết. Đối với nhiệt độ, chúng ta lấy tất cả các mẫu dữ liệu “mùa xuân”, tính
toán phân phối tích luỹ kinh nghiệm (empirical cumulative distribution) và
làm tương tự với các mẫu dữ liệu “mùa hè” và đo khoảng cách của chúng
với thống kê Kolmogorov - Smirnov. Đối với đặc trưng thời tiết, ta tính toán
xác suất cho từng loại thời tiết cho tất cả các mẫu dữ liệu “mùa xuân”, thực
hiện tương tự cho các trường hợp “mùa hè” và tổng hợp khoảng cách tuyệt
đối trong phân phối xác suất. Nếu “mùa xuân” và “mùa hè” có nhiệt độ và
thời tiết khác nhau, tổng khoảng cách sẽ lớn. Ta lặp lại quy trình với các cặp
mùa khác và giảm từ hai chiều ma trận khoảng cách xuống một chiều bằng
phép kéo giãn đa chiều.
5.3.4 Các ví dụ
Ta hãy xem xét các phác hoạ ALE. Tác giả đã xây dựng một viễn cảnh
trong đó các phác hoạ phụ thuộc riêng thất bại. Viễn cảnh bao gồm một mô
hình dự đoán và hai đặc trưng tương quan mạnh. Mô hình dự đoán chủ yếu
là hồi quy tuyến tính, nhưng đã thực hiện điều kỳ lạ ở sự kết hợp hai đặc
trưng mà ta chưa bao giờ quan sát mẫu dữ liệu.
Đây có phải là một viễn cảnh thực tế, có liên quan? Khi bạn đào tạo một
mô hình, thuật toán học sẽ giảm thiểu tổn thất cho các mẫu dữ liệu đào tạo
hiện có. Những thứ kỳ lạ có thể xảy ra bên ngoài mẫu phân phối dữ liệu học,
bởi vì mô hình không bị phạt vì làm những thứ kỳ lạ trong các lĩnh vực này.
Rời khỏi phân phối dữ liệu được gọi là ngoại suy, cũng có thể được sử dụng
để đánh lừa các mô hình học máy, được mô tả trong chương về các ví dụ đối
kháng. Xem trong ví dụ nhỏ của chúng ta về cách các phác hoạ phụ thuộc
riêng hoạt động so với các phác hoạ ALE.
Nhưng có thú vị không khi thấy rằng mô hình của chúng ta hành xử kỳ lạ
ở x1> 0,7 và x2 <0,3? Vâng, có và không. Vì đây là những trường hợp mẫu
dữ liệu có thể là không thể hoặc ít nhất là cực kỳ khó xảy ra, nên thường
việc xem xét các trường hợp này là không liên quan. Nhưng nếu bạn nghi
ngờ rằng phân phối kiểm định của bạn có thể hơi khác biệt và một số mẫu
dữ liệu thực sự nằm trong phạm vi đó, thì sẽ rất thú vị khi thêm vùng này
vào tính toán các ảnh hưởng đặc trưng. Nhưng nó phải là quyết định rõ ràng
bao gồm các khu vực nơi ta chưa quan sát dữ liệu và nó không phải là một
tác dụng phụ của phương pháp lựa chọn như PDP. Nếu bạn cho rằng mô
hình này sẽ được sử dụng sau đó với phân phối dữ liệu khác, ta khuyên bạn
nên sử dụng các ô ALE và mô phỏng phân phối dữ liệu mà bạn đang mong
đợi.
Chuyển sang một bộ dữ liệu thực, chúng ta hãy dự đoán số lượng xe đạp
thuê dựa trên thời tiết và ngày và xem xét ô ALE có thực sự hoạt động tốt
Hình 5.14: Hai đặc trưng và kết quả dự đoán. Mô hình dự đoán tổng của
hai đặc trưng (nền bóng (shaded background)), ngoại trừ nếu x1 lớn hơn 0,7
và x2 nhỏ hơn 0,3, mô hình luôn dự đoán 2. Khu vực này nằm xa phân bố
dữ liệu (điểm đám mây) và không ảnh hưởng đến hiệu suất của mô hình và
cũng không ảnh hưởng đến diễn giải của nó.
như đã hứa hay không. Chúng ta huấn luyện một cây hồi quy để dự đoán số
lượng xe đạp thuê trong một ngày nhất định và sử dụng các lô ALE để phân
tích nhiệt độ, độ ẩm tương đối và tốc độ gió ảnh hưởng đến các dự đoán ra
sao. Chúng ta hãy xem những gì phác hoạ ALE nói sao:
Chúng ta xem xét mối tương quan giữa nhiệt độ, độ ẩm và tốc độ gió và
tất cả các đặc trưng khác. Vì dữ liệu cũng chứa các đặc trưng hạng mục, ta
không thể chỉ sử dụng hệ số tương quan Pearson, chỉ hoạt động nếu cả hai
đặc trưng là dạng số. Thay vào đó, tác giả huấn luyện một mô hình tuyến
tính để dự đoán, ví dụ, nhiệt độ dựa trên một trong những đặc trưng khác
làm đầu vào. Sau đó, ta đo lường mức độ variance mà đặc trưng khác trong
Hình 5.15: So sánh các ảnh hưởng của đặc trưng được tính toán với PDP
(hàng trên) và ALE (hàng dưới). Các ước tính PDP bị ảnh hưởng bởi hành
vi kỳ lạ của mô hình nằm ngoài phân phối dữ liệu (nhảy dốc trong các phác
hoạ). Các phác hoạ ALE xác định chính xác rằng mô hình học máy có mối
quan hệ tuyến tính giữa các đặc trưng và dự đoán, bỏ qua các khu vực không
có dữ liệu.
mô hình tuyến tính giải thích và lấy căn bậc hai. Nếu đặc trưng khác là số,
thì kết quả bằng giá trị tuyệt đối của hệ số tương quan Pearson tiêu chuẩn.
Nhưng phương pháp phương sai giải thích (variance-explained) (còn được gọi
là ANOVA, viết tắt của ANalysis Of VAriance) dựa trên mô hình này hoạt
động ngay cả khi đặc trưng khác là hạng mục. Giá trị phương sai giải thích
luôn nằm trong khoảng từ 0 (không liên kết) và 1 (nhiệt độ có thể được dự
đoán hoàn hảo từ đặc trưng khác). Chúng ta tính toán phương sai giải thích
về nhiệt độ, độ ẩm và tốc độ gió với tất cả các đặc trưng khác. Phương sai
(tương quan) được giải thích càng cao, thì càng có nhiều vấn đề (tiềm năng)
Hình 5.16: Sơ đồ ALE cho mô hình dự đoán xe đạp theo nhiệt độ, độ ẩm và
tốc độ gió. Nhiệt độ có ảnh hưởng mạnh đến dự đoán. Dự đoán trung bình
tăng khi nhiệt độ tăng, nhưng lại giảm khi nhiệt độ vượt qua 25 độ C. Độ
ẩm có ảnh hưởng tiêu cực: Khi trên 60%, độ ẩm tương đối càng cao, dự đoán
càng thấp. Tốc độ gió không ảnh hưởng nhiều đến dự đoán.
với các phác hoạ PD. Hình dưới đây cho thấy mức độ tương quan mạnh mẽ
của các đặc trưng thời tiết với các đặc trưng khác.
Phân tích tương quan này cho thấy rằng chúng ta có thể gặp phải các
vấn đề với các phác hoạ phụ thuộc riêng, đặc biệt là đối với đặc trưng nhiệt
độ. Vâng, bạn đọc hãy xem:
Tiếp theo, chúng ta hãy xem phác họa ALE hoạt động cho một đặc trưng
phân loại. Tháng là một đặc trưng hạng mục mà chúng ta muốn phân tích
ảnh hưởng lên số lượng xe đạp dự đoán. Có thể cho rằng, các tháng đã có
một thứ tự nhất định (từ tháng 1 đến tháng 12), nhưng chúng ta hãy thử
xem điều gì sẽ xảy ra nếu trước tiên chúng ta sắp xếp lại các danh mục theo
Hình 5.17: Độ mạnh của mối tương quan giữa nhiệt độ, độ ẩm và tốc độ gió
với tất cả các đặc trưng, được đo bằng lượng phương sai giải thích, khi chúng
ta huấn luyện mô hình tuyến tính với, ví dụ, để dự đoán nhiệt độ với đặc
trưng làm mùa. Đối với nhiệt độ chúng ta quan sát - không đáng ngạc nhiên
- có một mối tương quan cao trong mùa và tháng. Độ ẩm tương quan với
tình hình thời tiết.
mức độ tương tự và sau đó tính toán các đặc trưng. Các tháng được sắp xếp
theo độ tương tự của các ngày trong mỗi tháng dựa trên các đặc trưng khác,
chẳng hạn như nhiệt độ hoặc cho dù đó là ngày lễ.
Vì nhiều đặc trưng liên quan đến thời tiết, thứ tự các tháng phản ánh sự
tương đồng của thời tiết giữa các tháng. Những tháng lạnh hơn nằm ở bên
trái (Tháng hai tới tháng tư) và những tháng ấm hơn ở bên phải (Tháng
mười đến tháng tám). Hãy nhớ là những đặc trưng không phải thời tiết đã
được đưa vào trong tính toán tính tương tự, ví dụ tần suất tương đối cho các
ngày lễ có cùng trọng số với nhiệt độ để tính toán sự tương tự giữa các tháng
Hình 5.18: PDPs giữa nhiệt độ, độ ẩm và tốc độ gió. So với các phác hoạ
ALE, PDP cho thấy số lượng dự đoán xe đạp sẽ giảm ở nhiệt độ cao hoặc
độ ẩm cao. PDP sử dụng tất cả các mẫu dữ liệu để tính toán ảnh hưởng của
nhiệt độ cao, ngay cả khi chúng là, ví dụ, các trường hợp “mùa đông”. Các
phác hoạ ALE đáng tin cậy hơn.
Tiếp theo, ta xem xét ảnh hưởng bậc hai của độ ẩm và nhiệt độ đối với số
lượng dự đoán xe đạp. Hãy nhớ rằng ảnh hưởng bậc hai là ảnh hưởng tương
tác bổ sung của hai đặc trưng và không bao gồm các ảnh hưởng chính. Điều
này có nghĩa là, chẳng hạn, bạn sẽ không thấy tác động chính là độ ẩm cao
dẫn đến số lượng xe đạp dự đoán trung bình thấp hơn trong lô ALE thứ hai.
Hãy nhớ rằng cả hai ảnh hưởng chính của độ ẩm và nhiệt độ đều nói
rằng số lượng dự đoán xe đạp sẽ giảm khi thời tiết rất nóng và ẩm ướt. Do
đó trong thời tiết nóng và ẩm, ảnh hưởng kết hợp của nhiệt độ và độ ẩm
không phải là tổng từ các ảnh hưởng chính, mà lớn hơn tổng đó. Để nhấn
mạnh sự khác biệt giữa ảnh hưởng bậc hai thuần túy (Phác hoạ 2D ALE bạn
Hình 5.19: Phác hoạ ALE cho tháng đặc trưng hạng mục. Các tháng được
sắp xếp theo sự tương đồng với nhau của chúng, dựa trên sự phân phối của
các đặc trưng khác theo tháng. Ta quan sát rằng tháng 1, tháng 3 và tháng
4, nhưng đặc biệt là tháng 12 và tháng 11, có tác động thấp hơn đến số lượng
xe đạp dự đoán được thuê so với các tháng khác.
vừa thấy) và ảnh hưởng tổng thể, chúng ta hãy xem xét phác hoạ phụ thuộc
riêng. PDP cho thấy ảnh hưởng tổng thể, kết hợp dự đoán trên trung bình,
hai ảnh hưởng chính và ảnh hưởng bậc hai (sự tương tác).
Nếu bạn chỉ quan tâm đến sự tương tác, bạn nên nhìn vào ảnh hưởng
bậc hai, bởi vì tổng ảnh hưởng trộn lẫn các ảnh hưởng chính vào phác hoạ.
Nhưng nếu bạn muốn biết ảnh hưởng kết hợp của các đặc trưng, bạn nên
xem tổng ảnh hưởng (mà PDP hiển thị). Ví dụ: nếu bạn muốn biết số lượng
xe đạp dự kiến ở 30 độ C và độ ẩm 80 phần trăm, bạn có thể đọc nó trực
tiếp từ 2D PDP. Nếu bạn muốn đọc tương tự từ các ô ALE, bạn cần xem xét
ba ô: Phác hoạ nhiệt độ ALE, của độ ẩm và của nhiệt độ + độ ẩm và bạn
Hình 5.20: Phác hoạ ALE về đặc trưng độ ẩm và nhiệt độ bậc 2 đối với số
lượng xe đạp được thuê dự đoán. Màu sáng hơn cho thấy màu trên trung
bình và màu tối hơn cho dự đoán dưới mức trung bình khi các đặc trưng
chính đã được tính đến. Các phác hoạ cho thấy sự tương tác giữa nhiệt độ và
độ ẩm: Thời tiết nóng và ẩm làm tăng dự đoán. Trong thời tiết lạnh và ẩm,
một tác động tiêu cực bổ sung đối với số lượng xe đạp dự đoán được hiển
thị.
cũng cần biết tổng thể dự đoán trung bình. Trong trường hợp hai đặc trưng
không có tương tác, tổng ảnh hưởng của hai đặc trưng có thể gây hiểu nhầm
vì có thể hiển thị cảnh quan phức tạp, có vẻ như có sự tương tác, nhưng nó
chỉ là sản phẩm của hai ảnh hưởng chính. Ảnh hưởng bậc hai sẽ ngay lập tức
cho thấy rằng không có tương tác.
Ta hãy chuyển sang một bài toán phân lớp. Chúng ta huấn luyện một
khu rừng ngẫu nhiên để dự đoán xác suất ung thư cổ tử cung dựa trên các
yếu tố rủi ro. Chúng ta minh hoạ các phác họa tích lũy ảnh hưởng cục bộ
Hình 5.21: PDP của tổng ảnh hưởng của nhiệt độ và độ ẩm lên số lượng dự
đoán xe đạp. Phác hoạ kết hợp đặc trưng chính của từng đặc trưng và đặc
trưng tương tác của chúng, trái ngược với phác hoạ 2D-ALE chỉ hiển thị sự
tương tác.
5.3.5 Ưu điểm
Các phác hoạ ALE không thiên vị, nghĩa là chúng vẫn hoạt động khi
các đặc trưng có tương quan. Các phác hoạ phụ thuộc riêng thất bại trong
viễn cảnh này bởi vì chúng bị biên hoá trên các kết hợp giá trị đặc trưng
không khả thi hoặc thậm chí không thể về mặt thực tế.
Các phác hoạ ALE nhanh về mặt tính toán hơn các PDP và tỷ lệ
với O(n), vì số lượng khoảng lớn nhất có thể là số lượng các trường hợp với
Hình 5.22: Phác hoạ ALE cho ảnh hưởng của tuổi và năm với các biện pháp
tránh thai nội tiết tố lên khả năng dự đoán ung thư cổ tử cung. Đối với đặc
trưng độ tuổi, phác hoạ ALE cho thấy trung bình xác suất ung thư dự đoán
là thấp trong khoảng đến 40 tuổi và tăng sau đó. Sau 8 năm, số năm có biện
pháp tránh thai nội tiết tố có liên quan đến nguy cơ ung thư dự đoán cao
hơn.
một khoảng cho mỗi phiên bản. PDP yêu cầu n lần số lượng ước tính điểm
lưới. Đối với 20 điểm lưới, PDP yêu cầu dự đoán nhiều hơn 20 lần so với
phác hoạ ALE trong trường hợp xấu nhất khi sử dụng số khoảng trên dữ liệu
nhiều nhất có thể.
Giải thích các phác hoạ ALE rất rõ ràng: Với một giá trị nhất định,
ảnh hưởng tương đối của việc thay đổi đặc trưng lên dự đoán có thể được
đọc từ phác hoạ ALE. Các phác hoạ ALE được căn giữa ở mức 0. Điều
này làm cho tính giải thích của chúng tốt, bởi vì giá trị tại mỗi điểm của
đường cong ALE là sai khác so với dự đoán trung bình. Phác hoạ 2D ALE
Hình 5.23: Phác hoạ ALE về ảnh hưởng bậc 2 về số lần mang thai và tuổi.
Việc giải thích phác hoạ có một chút không thuyết phục, cho thấy có vẻ như
xuất hiện hiện tượng quá khớp. Ví dụ, phác hoạ cho thấy một hành vi kỳ lạ
của mô hình ở độ tuổi 18-20 và hơn 3 lần mang thai (xác suất ung thư tăng
tới 5 phần trăm). Không có nhiều phụ nữ trong dữ liệu với độ tuổi này và
số lần mang thai này (dữ liệu thực tế được hiển thị dưới dạng điểm đen), vì
vậy mô hình không bị phạt nặng trong quá trình huấn luyện vì đã phạm sai
lầm dự đoán những phụ nữ đó.
chỉ hiển thị tương tác: Nếu hai đặc trưng không tương tác, các phác hoạ
không hiển thị gì.
Nói chung trong hầu hết các tình huống, ta ưu tiên các phác hoạ ALE
hơn các PDP, bởi vì các đặc trưng thường tương quan ở một mức độ nào
đó.
5.3.6 Nhược điểm
Các phác hoạ ALE có thể trở nên hơi bất ổn (nhiều sự lên xuống
nhỏ) với số lượng khoảng lớn. Trong trường hợp này, việc giảm số lượng các
khoảng làm các ước tính ổn định hơn, nhưng cũng làm dịu đi và che giấu một
phần độ phức tạp thực sự của mô hình dự đoán. Không có giải pháp hoàn
hảo để thiết lập số lượng khoảng. Nếu số lượng quá nhỏ, các phác hoạ ALE
có thể không chính xác lắm. Nếu số quá cao, đường cong có thể trở nên bất
ổn.
Không giống như PDP, các phác hoạ ALE không đi kèm với các
đường cong ICE. Với các PDP, các đường cong ICE rất tuyệt vì chúng có
thể tiết lộ tính không đồng nhất trong ảnh hưởng đặc trưng, điều đó có nghĩa
là ảnh hưởng của một đặc trưng khác nhau cho các tập hợp con của dữ liệu.
Đối với các phác hoạ ALE, bạn chỉ có thể kiểm tra trên mỗi khoảng xem đặc
trưng có sai khác giữa các mẫu dữ liệu hay không, nhưng mỗi khoảng có các
mẫu dữ liệu khác nhau nên nó không giống với các đường cong ICE.
Các ước tính ALE bậc hai có độ ổn định khác nhau trên không
gian đặc trưng, không được hiển thị dưới bất kỳ hình thức nào. Lý
do cho điều này là mỗi ước tính về ảnh hưởng cục bộ trong một ô sử dụng
một số lượng mẫu dữ liệu khác nhau. Do đó, tất cả các ước tính đều có độ
chính xác khác nhau (nhưng chúng vẫn là ước tính tốt nhất có thể). Vấn đề
tồn tại ở phiên bản ít nghiêm trọng hơn đối với các phác hoạ ALE chính ảnh
hưởng. Số lượng các mẫu dữ liệu là như nhau trên tất cả các khoảng, nhờ sử
dụng các phân vị làm lưới, nhưng ở một số vùng sẽ có nhiều khoảng ngắn và
đường cong ALE sẽ bao gồm nhiều ước tính hơn. Nhưng trong những khoảng
dài, có thể chiếm một phần lớn của toàn bộ đường cong, những mẫu dữ liệu
ít hơn tương đối. Điều này xảy ra trong dự đoán ung thư cổ tử cung ALE
cho tuổi cao chẳng hạn.
Các lô đặc trưng bậc hai có thể hơi khó chịu để diễn giải, vì bạn
luôn phải ghi nhớ các đặc trưng chính. Rất để đọc nhầm các bản đồ nhiệt
(heat map) là tổng ảnh hưởng của hai đặc trưng, nhưng đó chỉ là ảnh hưởng
bổ sung của sự tương tác. Ảnh hưởng bậc hai thuần túy rất thú vị để khám
phá và tìm hiểu các tương tác, nhưng để diễn giải ảnh hưởng trông như thế
nào, tác giả nghĩ sẽ hợp lý hơn khi tích hợp các ảnh hưởng chính vào phác
hoạ.
Việc thực hiện các phác hoạ ALE phức tạp hơn và ít trực quan
hơn so với các phác hoạ phụ thuộc riêng.
Mặc dù các phác hoạ ALE không bị thiên vị trong trường hợp các đặc
trưng tương quan, việc giải thích vẫn khó khăn khi các đặc trưng có
tương quan mạnh. Bởi vì nếu chúng có mối tương quan rất mạnh, sẽ chỉ
hợp lý khi phân tích ảnh hưởng của việc thay đổi cả hai đặc trưng cùng lúc,
không phải tách biệt. Nhược điểm này không phải của riêng các phác hoạ
ALE, nhưng là một vấn đề chung về các đặc trưng tương quan mạnh.
Nếu các đặc trưng không tương thích và thời gian tính toán không phải
là vấn đề, PDP sẽ tương đối thích hợp hơn vì chúng dễ hiểu hơn và có thể
được vẽ cùng với các đường cong ICE.
Danh sách các nhược điểm là khá dài, nhưng đừng bị đánh lừa bởi số
lượng từ ta sử dụng: Như một quy tắc chung: Sử dụng ALE thay vì PDP.
Ta phân tích dự đoán thành các phần sau: Giá trị hằng số (150,000), ảnh
hưởng của kích cỡ (+100,000 nếu lớn, +0 nếu nhỏ), ảnh hưởng của vị trí
(+50,000 nếu lớn, +0 nếu nhỏ). Cách phân tích này giải thích đầy đủ mô
hình. Ở đây không có sự tương tác giữa các đặc trưng, do dự đoán của mô
hình chỉ là tổng của ảnh hưởng đặc trưng riêng biệt của kích cỡ và vị trí. Khi
ta thay đổi kích cỡ từ nhỏ thành lớn, dự đoán luôn luôn tăng 100,000, bất kể
vị trí như thế nào. Tương tự, chênh lệch giữa dự đoán của vị trí tốt và xấu
luôn là 50,000, bất kể kích cỡ như thế nào.
Bây giờ ta hãy thử xem xét một ví dụ có sự tương tác:
Location Size Prediction
tốt lớn 400,000
tốt nhỏ 200,000
xấu lớn 250,000
xấu nhỏ 150,000
Tương tự, ta có thể phân tích dự đoán thành các phần sau: Giá trị hằng
số (150,000), ảnh hưởng của kích cỡ (+100,000 nếu lớn, +0 nếu nhỏ), ảnh
hưởng của vị trí (+50,000 nếu lớn, +0 nếu nhỏ). Tuy nhiên ở đây ta cần thêm
một thành phần nữa cho sự tương tác: +100,000 nếu ngôi nhà có kích cỡ lớn
và ở vị trí tốt. Có sự tương tác giữa kích cỡ và vị trí, do chênh lệch trong dự
đoán của ngôi nhà có kích cỡ lớn và nhỏ phụ thuộc vào vị trí.
Một cách để ước lượng mức độ tương tác là đo độ biến thiên của dự đoán
phụ thuộc vào tương tác giữa các đặc trưng. Phép đo này gọi là thống kê-H,
đề xuất bởi Friedman và Popescu (2008).
với P Djk pxj , xk q là hàm phụ thuộc riêng hai chiều của cả hai đặc trưng,
P Dj pxj q và P Dk pxk q là hàm đặc trưng riêng của từng đặc trưng.
Tương tự, nếu đặc trưng đang xét không tương tác với bất kì đặc trưng nào
khác, ta có thể phân tích dự đoán thành tổng của hai hàm phụ thuộc riêng,
một chỉ phụ thuộc vào đặc trưng j đang xét, một cho tất cả đặc trưng ngoại
trừ j:
fˆpxq “ P Dj pxj q ` P D´j px´j q
với P D´j px´j q là hàm phụ thuộc riêng cho tất cả các đặc trưng ngoại trừ j.
Việc phân tích này giúp biể diễn hàm phụ thuộc riêng (hoặc toàn bộ dự
đoán) mà không có tương tác (giữa đặc trưng j và k, hoặc giữa đặc trưng j
và tất cả đặc trưng còn lại). Sau đó, ta sẽ đo sự chênh lệch giữa hàm phụ
thuộc riêng quan sát được với hàm đã được phân tích bên trên. Ta tính
phương sai của kết quả cho hàm phụ thuộc riêng (để đo tương tác giữa hai
đặc trưng) hoặc toàn bộ hàm dự đoán (để đo tương tác giữa một đặc trưng
và tất cả đặc trưng còn lại). Phương sai tính qua tương tác (chênh lệch giữa
hàm phụ thuộc riêng quan sát và không có tương tác) được dùng làm thống
kê có tương tác. Thống kê bằng 0 nếu không có tương tác, bằng 1 nếu tất
cả phương sai của P Djk hoặc fˆ giải thích qua tổng của các hàm phụ thuộc
riêng. Giá trị thống kê có tương tác giữa hai đặc trưng bằng 1 nghĩa là từng
hàm phụ thuộc riêng là hằng số và dự đoán chỉ bị ảnh hưởng bởi tương tác.
Thống kê-H có thể lớn hơn 1, lúc này sẽ khó giải thích hơn. Điều này xảy ra
khi phương sai của tương tác hai phía lớn hơn phương sai của đồ thị phụ
thuộc riêng hai chiều.
Về mặt công thức, thống kê-H đề xuất bởi Friedman và Popescu cho tương
tác giữa hai đặc trưng j và k được tính như sau:
řn ” ı2 ř
“ i“1 P Djk pxj , xk q ´ P Dj pxj q ´ P Dk pxk q { ni“1 P D2jk pxj , xk q
2 piq piq piq piq piq piq
Hjk
Tương tự ta có thể tính cho tương tác giữa đặc trưng j và tất cả đặc trưng
còn lại:
řn ” ˆ piq ı2 ř
“ i“1 f px q ´ P Dj pxj q ´ P D´j px´j q { ni“1 fˆ2 pxpiq q
piq piq
Hj2
Thống kê-H có chi phí tính toán khá cao vì ta cần phải xét từng điểm dữ
liệu, và với mỗi điểm dữ liệu ta cần tính hàm phụ thuộc riêng qua n điểm
dữ liệu. Trường hợp tệ nhất, ta cần gọi hàm dự đoán của mô hình 2n2 lần
để tính thống kê-H hai phía (j với k) và 3n2 lần cho thống kê-H toàn phần
(j với tất cả). Để tăng tốc tính toán, ta có thể lấy mẫu từ n điểm dữ liệu.
Tuy nhiên, điều này khiến phương sai khi ước lượng phụ thuộc riêng tăng
lên, dẫn đến thống kê-H không ổn định. Do đó, nếu ta lấy mẫu để giảm chi
phí tính toán, cần phải lấy đủ số mẫu.
Friedman và Popescu cũng đề xuất một phương pháp kiểm định giả thiết
thống kê để đánh giá xem thống kê-H có khác 0 đủ nhiều không. Giả thiết
không là không có sự tương tác. Để sinh ra thống kê tương tác dưới giả thiết
không, ta phải thay đổi mô hình sau cho không có tương tác giữa đặc trưng j
với k hoặc với các đặc trưng còn lại. Không phải mô hình nào cũng làm được
điều này. Cách kiểm định này do vậy phụ thuộc vào mô hình, và sẽ không
được trình bày ở đây.
Thống kê có tương tác cũng có thể áp dụng cho bài toán phân lớp nếu dự
đoán là giá trị xác suất.
5.4.3 Ví dụ
Ta sẽ xem tương tác giữa đặc trưng trong một ví dụ thực tế. Ta đo tương
tác giữa đặc trưng của mô hình máy vector hỗ trợ dự đoán số xe đạp cho
thuê theo thời tiết và đặc trưng ngày tháng. Đồ thị dưới đây thể hiện thống
kê-H tương tác giữa đặc trưng:
Trong ví dụ tiếp theo, ta tính thống kê tương tác cho bài toán phân loại.
Ta phân tích tương tác giữa đặc trưng trong mô hình rừng ngẫu nhiên được
huấn luyện để dự đoán tỉ lệ ung thư cổ tử cung khi biết các nguy cơ.
Sau khi quan sát tương tác giữa từng đặc trưng với tất cả đặc trưng còn lại,
ta có thể chọn một đặc trưng và phân tích kĩ hơn tương tác hai phía giữa
đặc trưng đó và từng đặc trưng còn lại.
5.4.4 Ưu điểm
Thống kê-H tương tác được dựng trên lý thuyết của phân tích phụ
thuộc riêng.
Thống kê-H có lời giải thích có ý nghĩa: Tương tác được định nghĩa qua
phương sai.
Vì thống kê không có thứ nguyên, nó có thể dùng để so sánh giữa các
đặc trưng hoặc giữa các mô hình.
Thống kê nhận biết mọi loại tương tác, bất kể là dạng nào.
Với thống kê-H, ta có thể phân tích bất kì tương tác bậc cao nào, ví dụ
như tương tác giữa 3 đặc trưng hoặc hơn.
Hình 5.24: Sự tương tác (thống kê-H) cho mỗi đặc trưng với tất cả đặc trưng
còn lại cho mô hình máy vector hỗ trợ dự đoán số xe đạp cho thuê. Nhìn
chung, ảnh hưởng của tương tác giữa các đặc trưng khá yếu (phương sai của
mỗi đặc trưng dưới 10%
Không chắc chắn liệu tương tác có đủ lớn hơn 0 hay không. Ta có thể kiểm
định giả thiết thống kê, nhưng hiện tại cách kiểm định này phụ thuộc
vào mô hình.
Liên quan đến vấn đề kiểm định, khá khó để biết thống kê-H lớn đến mức
nào thì ta có thể xem tương tác là “mạnh”.
Thống kê-H có thể lớn hơn 1, điều này khiến việc giải thích trở nên khó khăn.
Thống kê-H cho ta biết mức độ tương tác, nhưng không thể hiện cụ thể tương
tác như thế nào. Lúc này ta cần đến đồ thị phụ thuộc riêng. Một quy trình
hợp lý là đo sự tương tác và dựng đồ thị phụ thuộc riêng cho các tương tác
mà ta quan tâm.
Thống kê-H không có ý nghĩa nếu đầu vào là các pixel. Do đó kĩ thuật này
Hình 5.26: Sự tương tác hai phía (thống kê-H) giữa số lần mang thai và từng
đặc trưng khác. Có sự tương tác mạnh giữa số lần mang thai và tuổi
5.5.1 Lý thuyết
Khái niệm này thực sự đơn giản: chúng ta đo lường tầm quan trọng của
một đặc trưng bằng cách tính toán sự gia tăng sai số trong dự đoán của mô
hình sau khi hoán vị đặc trưng. Một đặc trưng là “quan trọng” nếu việc xáo
trộn các giá trị của nó làm tăng sai số mô hình, vì trong trường hợp này, mô
hình dựa vào đặc trưng để dự đoán. Một đặc trưng là “không quan trọng”
nếu việc xáo trộn các giá trị của nó không làm thay đổi sai số mô hình, vì mô
hình đã bỏ qua đặc trưng trong dự đoán. Phép đo tầm quan trọng của đặc
điểm hoán vị được Breiman (2001) đưa ra cho các khu rừng ngẫu nhiên. Dựa
trên ý tưởng này, Fisher, Rudin và Dominici (2018) đã đề xuất một phân
tích kiểu mẫu về tầm quan trọng của đặc trưng và gọi nó là sự phụ thuộc
vào mô hình. Họ cũng đưa ra những ý tưởng tốt hơn về tầm quan trọng của
đặc trưng, ví dụ như một phiên bản (dành riêng cho mô hình) có tính đến
việc nhiều mô hình dự đoán có thể dự đoán tốt dữ liệu.
Thuật toán hoán vị đặc trưng quan trọng dựa trên Fisher, Rudin
và Dominici (2018):
Đầu vào: mô hình đã huấn luyện f, ma trận đặc trưng X, vector kết quả
y, và hàm đánh giá sai số L(y, f).
• Ước tính sai số của mô hình ban đầu eorig = L(y, f(X)) (ví dụ: sai số bình
phương trung bình)
– Tạo ma trận đặc trưng X perm bằng cách hoán vị đặc trưng j trong
dữ liệu X. Điều này làm mất mối liên hệ giữa đặc điểm j và kết quả
đúng y.
– Ước tính lỗi eperm = L(Y, f (X perm )) dựa trên các dự đoán của dữ liệu
hoán vị.
– Tính tầm quan trọng của đặc điểm hoán vị F I j = eperm / eorig . Ngoài
ra, sai số có thể được sử dụng: F I j = eperm - eorig
Fisher, Rudin và Dominici (2018) đề xuất trong bài báo của họ chia đôi bộ
dữ liệu ra và hoán vị các giá trị của đặc trưng j của hai nửa thay vì hoán
vị đặc trưng j, và hai điều này tương đương nhau. Nếu bạn muốn ước tính
chính xác hơn, bạn có thể ước tính sai số của việc hoán vị đặc trưng j bằng
cách ghép nối từng cá thể giá trị của đặc trưng j với từng cá thể của khác
(ngoại trừ chính nó). Điều này cho ra một tập dữ liệu có kích thước n(n-1)
để ước tính sai số hoán vị và cần một lượng lớn thời gian tính toán để nhận
được các ước tính chính xác.
Hình 5.27: Phân phối tầm quan trọng của đặc trưng theo kiểu dữ liệu. Máy
vector hỗ trợ được huấn luyện trên tập dữ liệu hồi quy với 50 đặc trưng ngẫu
nhiên và 200 cá thể. Máy vector hỗ trợ quá khớp trên tập dữ liệu: Đặc trưng
quan trọng dựa trên dữ liệu huấn luyện cho thấy nhiều đặc trưng là nhóm
này. Được tính toán trên dữ liệu thử nghiệm chưa huấn luyện, tỉ số đặc trưng
quan trọng gần như bằng 0 (= không quan trọng).
.
Ta sẽ cố gắng đưa ra một trường hợp cho cả hai phiên bản và để bạn tự
quyết định.
Trường hợp trên tập dữ liệu thử nghiệm Các bước gồm: Ước tính lỗi
mô hình dựa trên dữ liệu huấn luyện là rác -> đặc trưng quan trọng dựa trên
ước tính sai số của mô hình -> đặc trưng quan trọng dựa trên dữ liệu huấn
luyện là rác.
Đó là một trong những điều đầu tiên bạn học được trong học máy: Nếu
bạn đo lường sai số mô hình (hoặc hiệu suất) trên cùng dữ liệu được đào tạo
và phép đo thường quá khả quan, mô hình có vẻ hoạt động tốt hơn nhiều
so với thực tế. Và vì hoán vị đặc trưng quan trọng phụ thuộc vào các phép
đo sai số của mô hình, chúng ta nên sử dụng dữ liệu thử nghiệm chưa huấn
luyện. Đặc trưng quan trọng dựa trên dữ liệu huấn luyện khiến ta tưởng rằng
các đặc trưng quan trọng đối với các dự đoán, trong khi thực tế, mô hình chỉ
gặp hiện tượng quá khớp và các đặc trưng không hề quan trọng.
Trường hợp trên tập dữ liệu huấn luyện Chúng ta xét mô hình Máy
vector hỗ trợ không khả thi. Dựa trên dữ liệu huấn luyện, đặc trưng quan
trọng nhất là X42. Chúng ta hãy xem một phác hoạ phụ thuộc riêng của đặc
trưng X42. Biểu đồ này cho thấy đầu ra của mô hình thay đổi như thế nào
dựa trên những thay đổi của đặc trưng và không dựa trên sai số tổng quát.
Không quan trọng việc PDP có được tính toán với dữ liệu huấn luyện hay
thử nghiệm.
Biểu đồ cho thấy máy vector hỗ trợ đã dựa vào đặc trưng X42 cho các dự
đoán của nó, nhưng nó lại không quan trọng dựa theo đặc trưng quan trọng
của dữ liệu (1). Dựa trên dữ liệu huấn luyện, tầm quan trọng là 1,19, phản
ánh rằng mô hình đã học cách sử dụng đặc trưng này. Đặc trưng quan trọng
từ dữ liệu huấn luyện cho biết những đặc trưng nào là quan trọng cho mô
hình phụ thuộc vào để đưa ra dự đoán.
Trong thực tế, bạn muốn sử dụng tất cả dữ liệu để đào tạo mô hình và
có được mô hình tốt nhất có thể. Điều này nghĩa là không có dữ liệu thử
nghiệm để tính toán đặc trưng quan trọng. Vấn đề tương tự khi muốn ước
tính sai số tổng quát của mô hình. Nếu bạn sử dụng xác thực chéo để ước
tính đặc trưng quan trọng, vấn đề sẽ gặp là đặc trưng quan trọng tính toán
trên các mô hình có tập hợp con dữ liệu có biểu hiện khác nhau.
Cuối cùng, bạn cần quyết định tính mức độ phụ thuộc của mô hình lên
mỗi đặc trưng để đưa ra dự đoán (-> dữ liệu huấn luyện) hoặc đặc trưng
đóng góp bao nhiêu vào hiệu suất của mô hình trên dữ liệu chưa huấn luyện
(-> dữ liệu thử nghiệm ). Câu hỏi này sẽ yêu cầu kiểm tra kỹ lưỡng hơn ví
dụ “Máy vector hỗ trợ không khả thi” của ta. Chúng ta cần thêm nghiên cứu
và kinh nghiệm với các công cụ này để hiểu rõ hơn.
Hình 5.28: PDP của đặc trưng X42, là đặc trưng quan trọng nhất dựa theo
đặc trưng quan trọng tính toán từ dữ liệu huấn luyện. Biểu đồ cho thấy máy
vector hỗ trợ phụ thuộc ra sao vào đặc trưng này để dự đoán
.
Ung thư cổ tử cung (phân loại) Chúng ta huấn luyện một mô hình
rừng ngẫu nhiên dự đoán ung thư cổ tử cung. Chúng ta đo mức tăng sai số
1-AUC (1 trừ đi diện tích dưới đường cong ROC). Các đặc trưng liên quan
đến sai số mô hình tăng theo hệ số 1 (= không thay đổi) không quan trọng
để dự đoán ung thư cổ tử cung.
Đặc trưng có tầm quan trọng cao nhất là số năm dùng thuốc tránh thai
nội tiết tố. liên quan đến sự gia tăng sai số 6.13 sau khi hoán vị.
Thuê xe đạp (hồi quy) Chúng ta huấn luyện với mô hình máy vector
hỗ trợ để dự đoán số lượng xe đạp đã thuê, cho biết điều kiện thời tiết nhất
định và thông tin lịch. Khi đo sai số, chúng ta sử dụng sai số tuyệt đối trung
Hình 5.29: Tầm quan trọng của từng đặc trưng trong việc dự đoán ung thư
cổ tử cung với một rừng ngẫu nhiên. Đặc trưng quan trọng nhất là số năm
dùng thuốc tránh thai nội tiết tố. Hoán vị đặc trưng này dẫn đến tăng 1-AUC
theo hệ số 6.13
.
bình.
5.5.4 Ưu điểm
Diễn giải tốt: Đặc trưng quan trọng là mức tăng sai số của mô hình khi
thông tin của đặc trưng bị loại bỏ.
Đặc trưng quan trọng cung cấp thông tin chi tiết toàn cầu, được nén
cao (highly compressed) về hành vi của mô hình.
Một khía cạnh tích cực của việc sử dụng tỷ lệ sai số thay vì chênh lệch
sai số là các phép đo đặc trưng quan trọng có thể so sánh giữa các vấn
đề khác nhau.
Mức đo tầm quan trọng tự động tính đến tất cả các tương tác với
các đặc trưng khác. Hoán vị đặc trưng phá hủy các hiệu ứng tương tác
với các đặc trưng khác. Điều này có nghĩa là hoán vị đặc trưng quan trọng
Hình 5.30: Tầm quan trọng của từng đặc trưng trong việc dự đoán số lượng
xe đạp bằng máy vector hỗ trợ. Đặc trưng quan trọng nhất là nhiệt độ, ít
quan trọng nhất dựa vào ngày đó có là kì nghỉ hay không
.
tính đến cả ảnh hưởng chính và các tác động tương tác lên hiệu suất của
mô hình. Đây cũng là nhược điểm vì tầm quan trọng của tương tác giữa hai
đặc trưng được bao gồm trong các phép đo đặc trưng quan trọng của cả hai.
Điều này có nghĩa là tổng đặc trưng quan trọng sẽ lớn hơn tổng giảm trong
hiệu suất. Chỉ khi không có tương tác giữa các đặc trưng, như trong mô hình
tuyến tính, tổng tầm quan trọng bằng xấp xỉ.
Hoán vị đặc trưng quan trọng không yêu cầu việc huấn luyện lại mô
hình. Một số phương pháp khác đề xuất xóa bỏ một đặc trưng, huấn luyện
lại mô hình và sau đó so sánh sai số mô hình. Việc “chỉ” hoán vị một đặc
trưng có thể tiết kiệm rất nhiều thời gian. Các phương pháp quan trọng giúp
huấn luyện lại mô hình với một tập hợp con các đặc trưng thoạt nhìn trực
quan, nhưng mô hình với dữ liệu bị giảm đi không còn ý nghĩa nghĩa đối với
đặc trưng quan trọng. Chúng ta quan tâm đến đặc trưng quan trọng của một
mô hình cố định. Việc huấn luyện lại với một tập dữ liệu đã rút gọn sẽ tạo
ra một mô hình khác. Giã sử bạn đào tạo một mô hình tuyến tính thưa (với
Lasso) với một số đặc trưng cố định có trọng số khác 0. Tập dữ liệu có 100
đặc trưng, bạn đặt số trọng số khác 0 là 5. Bạn phân tích tầm quan trọng
của một trong những đặc trưng có trọng số khác 0, loại đi đặc trưng đó, và
đào tạo lại mô hình. Hiệu suất của mô hình vẫn giữ nguyên bởi vì một đặc
trưng khác tốt không kém có trọng số khác 0 và kết luận của bạn sẽ là đặc
trưng đó không quan trọng. Một ví dụ khác: Mô hình là một cây quyết định
và chúng ta phân tích tầm quan trọng của đặc đã được chọn làm chốt trong
phần tách đầu tiên. Bạn bỏ đặc trưng đó và đào tạo lại mô hình. Vì một đặc
trưng khác được chọn làm chốt tách đầu tiên, toàn bộ cây có thể rất khác
nhau, có nghĩa là chúng t so sánh tỷ lệ sai số (có thể) của các cây hoàn toàn
khác nhau để quyết định mức độ quan trọng của đặc trưng đó đối với một
trong các cây.
5.6.1 Lý thuyết
Mô hình đại diện cũng được sử dụng trong kĩ thuật: nếu kết quả của một
chương trình yều cầu chi phí tính toán cao, hoặc khó để tính vì một lý do
nào đó (ví dụ như kết quả của các mô phỏng phức tạp), ta sẽ dùng một mô
hình nhanh và có chi phí thấp hơn thay thế. Điểm khác nhau giữa mô hình
đại diện trong kĩ thuật và trong học máy khả giải thích là mô hình cần xấp
xỉ ở đây là mô hình học máy thay vì mô phỏng, và mô hình đại diện phải là
mô hình khả giải thích. Mục đích của mô hình đại diện (khả giải thích) là
xấp xỉ dự đoán của mô hình hộp đen chính xác nhất có thể, đồng thời đưa ra
lời giải thích từ tính khả giải thích của mô hình đại diện. Mô hình đại diện
có nhiều tên gọi: mô hình xấp xỉ, siêu mô hình, mô hình đáp ứng bề mặt, giả
lập, ...
Về mặt lý thuyết: thực sự thì không cần nhiều lý thuyết để hiểu mô hình
đại diện. Ta muốn xấp xỉ hàm dự đoán f của mô hình hộp đen chính xác
nhất có thể bằng hàm dự đoán g của mô hình đại diện, với điều kiện g là giải
thích được. Hàm g có thể là bất cứ mô hình khả giải thích nào, ví dụ như
trong Chương 4.
Ví dụ ta có thể chọn mô hình tuyến tính:
gpxq “ β0 ` β1 x1 ` . . . ` βp xp
Huấn luyện mô hình đại diện là phương pháp kiểu mẫu, do ta không cần
bất cứ thông tin gì về mô hình hộp đen, chỉ cần dữ liệu và hàm dự đoán. Nếu
mô hình cần giải thích được thay thế bởi mô hình khác, ta vẫn có thể dùng
phương pháp đại diện. Việc chọn mô hình hộp đen và mô hình đại diện tách
rời nhau.
Ta thực hiện các bước sau để có được mô hình đại diện:
3. Lựa chọn loại mô hình khả giải thích (mô hình tuyến tính, cây quyết
định,...)
4. Huấn luyện mô hình đại diện với bộ dữ liệu X và dự đoán tương ứng.
6. Đo xem mô hình đại diện xấp xỉ mô hình hộp đen tốt tới mức nào.
Có nhiều cách tiếp cận khác cho mô hình đại diện, nhưng ý tưởng chung
là như trên. Một cách để đo độ tốt của mô hình đại diện là dùng độ đo bình
phương R:
řn piq
2 SSE pŷ˚ ´ŷ piq q2
R “1´ SST “1´ ři“1
n piq ¯ 2
i“1 pŷ ´ŷq
piq
với ŷ˚ là dự đoán cho điểm dữ liệu thứ i của mô hình đại diện, ŷ piq là dự
đoán của mô hình hộp đen, ŷ¯ là trung bình của dự đoán của mô hình hộp
đen. SSE là tổng của bình phương sai số và SST là tổng bình phương toàn
phần. Độ đo bình phương R có thể diễn giải là tỉ lệ phương sai thể hiện bởi
mô hình đại diện. Nếu bình phương R gần với 1 (= SSE thấp), thì mô hình
đại diện xấp xỉ mô hình hộp đen khá tốt, và ta có thể thay thế mô hình phức
tạp bằng mô hình khả giải thích. Nếu bình phương R gần với 0 (= SSE cao),
thì mô hình đại diện không đủ để giải thích mô hình hộp đen.
Lưu ý rằng ta chưa xét đến độ tốt của mô hình hộp đen, cụ thể hơn là
độ chính xác của mô hình. Ta không cần đến độ chính xác của mô hình hộp
đen khi huấn luyện mô hình đại diện. Lời giải thích của mô hình đại diện vẫn
hợp lí vì nó đưa kết luận về mô hình hộp đen chứ không phải thế giới thực.
Nhưng đương nhiên lời giải thích của mô hình đại diện sẽ không hợp lí nếu
mô hình hộp đen kém, vì bản thân mô hình hộp đen đã không hợp lí.
Ta cũng có thể tạo ra mô hình đại diện từ một tập con của dữ liệu gốc
hay thay đổi trọng số của các điểm dữ liệu. Bằng cách này, ta thay đổi phân
phối của đầu vào của mô hình đại diện, thay đổi sự tập trung của lời giải
thích (do đó nó không còn là toàn cục). Nếu ta đặt trọng số của dữ liệu một
cách địa phương theo một điểm dữ liệu cụ thể (điểm dữ liệu càng gần điểm
được chọn có trọng số càng cao), ta có mô hình đại diện cục bộ giải thích dự
đoán của một điểm dữ liệu cụ thể. Loại mô hình này được trình bày cụ thể
hơn ở mục sau.
5.6.2 Ví dụ
Ta sẽ xét hai ví dụ cho bài toán hồi quy và phân loại.
Đầu tiên, ta huấn luyện một máy vector hỗ trợ dự đoán số xe đạp cho
thuê hằng ngày khi biết thời tiết và ngày tháng. Máy vector hỗ trợ không
có lời giải thích hiển nhiên, nên ta huấn luyện một mô hình đại diện là cây
quyết định CART như một mô hình khả giải thích để xấp xỉ máy vector hỗ
trợ.
Mô hình đại diện có bình phương R (giải thích bởi phương sai) bằng 0.77,
tức là nó xấp xỉ mô hình hộp đen khá tốt, nhưng chưa hoàn hảo. Nếu nó xấp
xỉ chính xác hoàn toàn, ta có thể bỏ qua máy vector hỗ trợ và sử dụng cây
quyết định thay thế.
Ở ví dụ tiếp theo, ta dự đoán xác suất ung thư cổ tử cung bằng rừng
ngẫu nhiên. Tương tự ta huấn luyện mô hình cây quyết định với bộ dữ liệu
gốc và dùng dự đoán của rừng ngẫu nhiên làm nhãn, thay cho lớp thực sự
(khỏe mạnh và ung thư) từ dữ liệu.
Mô hình đại diện có bình phương R (giải thích bởi phương sai) là 0.19,
tức là nó không xấp xỉ mô hình hộp đen đủ tốt và ta không nên kết luận mô
hình hộp đen bằng cách giải thích mô hình đại diện.
5.6.3 Ưu điểm
Phương pháp mô hình đại diện khá linh hoạt. Bất cứ mô hình nào trong
chương các mô hình khả giải thích đều có thể được sử dụng. Ta cũng có thể
Hình 5.31: Nốt lá của cây đại diện xấp xỉ dự đoán của máy vector hỗ trợ
huấn luyện trên bộ dữ liệu cho thuê xe đạp. Phân phối trên các nốt cho thấy
cây đại diện dự đoán có nhiều xe đạp cho thuê hơn khi nhiệt độ trên 13o C
và hơn 1 năm kể từ 2011
thay đổi không chỉ mô hình đại diện mà còn mô hình hộp đen cần giải thích.
Giả sử ta có một mô hình phức tạp và giải thích nó cho các nhóm khác nhau
trong công ty. Một nhóm quen với mô hình tuyến tính, nhóm khác hiểu cây
quyết định rõ hơn. Ta có thể huấn luyện hai mô hình đại diện (mô hình tuyến
tính và cây quyết định) cho mô hình hộp đen gốc và đưa ra hai lời giải thích.
Nếu ta tìm được một mô hình hộp đen khác có kết quả tốt hơn, ta không
cần thay đổi phương pháp giải thích vì ta đang dùng cùng một lớp mô hình
đại diện.
Cách tiếp cận này khác trực quan và đơn giản. Điều này nghĩa là nó dễ
cài đặt, và cũng dễ giải thích cho người không biết nhiều về khoa học dữ liệu
và học máy.
Với độ đo bình phương R, ta có thể dễ dàng đo xem mô hình đại diện
xấp xỉ mô hình hộp đen tốt như thế nào.
Hình 5.32: Nốt lá của cây đại diện xấp xỉ dự đoán của mô hình rừng ngẫu
nhiên huấn luyện trên bộ dữ liệu ung thư cổ tử cung. Số lượng trên mỗi nốt
thể hiện tần suất của mô hình phân loại hộp đen trên nốt
Mô hình giải thích cho mẫu dữ liệu x là mô hình g (ví dụ mô hình hồi
quy tuyến tính), và g sẽ tối thiểu hóa mất mát (ví dụ sai số bình phương tối
thiểu MSE), được tính bởi khoảng cách giữa giải thích tới dự đoán của mô
hình gốc (ví dụ một mô hình tăng tốc gradient), với ràng buộc là độ phức
tạp của mô hình Ωpgq được giữ ở một giá trị nhỏ (để ta có ít đặc trưng). G
là một họ các giải thích khả dĩ, ví dụ tất cả các mô hình hồi quy tuyến tính
khả dĩ. Giá trị πx định nghĩa độ lớn của các hàng xóm lân cận một điểm dữ
liệu x ta đang xem xét cho việc giải thích. Trong thực tế, LIME chỉ tối ưu
phần mất mát. Người dùng phải tự định nghĩa độ phức tạp (ví dụ chọn số
lượng đặc trưng lớn nhất có thể cho mô hình hồi quy tuyến tính).
Các bước huấn luyện các mô hình đại diện cục bộ:
- Lựa chọn mẫu mà ta quan tâm.
- Biến đổi tập dữ liệu và lưu lại các dự đoán của các mô hình hộp đen
trên tập dữ liệu đã biến đổi này.
- Đánh trọng số các mẫu dữ liệu mới tương ứng với khoảng cách tới điểm
dữ liệu ta đang quan tâm ở bước đầu.
- Huấn luyện một mô hình mang trọng số và khả diễn giải trên tập dữ
liệu đã được biến đổi.
- Giải thích dự đoán bằng cách diễn giải mô hình cục bộ.
Trong các triển khai hiện tại với R và Python, ví dụ hồi quy tuyến tính có
thể được chọn là mô hình đại diện khả diễn giải. Ta phải lựa chọn giá trị K
và số lượng đặc trưng trong mô hình trước. Nếu giá trị K càng nhỏ, mô hình
sẽ càng dễ để diễn giải. Giá trị K lớn có thể làm mô hình có độ nhất quán cao
hơn. Ta có thể huấn luyện các mô hình theo nhiều cách khi cho trước một số
lượng đặc trưng K nhất định. Lasso là một lựa chọn tốt. Một mô hình Lasso
có tham số điều chuẩn β lớn sẽ sinh ra một mô hình không chứa bất kỳ đặc
trưng nào. Bằng cách huấn luyện lại các mô hình Lasso với λ giảm dần từ từ,
các trọng số của các đặc trưng sẽ theo đó nhận giá trị khác 0. Nếu ta có K
đặc trưng trong một mô hình, khi này ta biết mô hình đã thỏa mãn yêu cầu
về số lượng đặc trưng ta đã đề ra. Ngoài ra ta còn các phương pháp khác đó
là lựa chọn tiến và lùi với các đặc trưng. Điều này nghĩa là ta có thể bắt đầu
huấn luyện với tất cả các đặc trưng khả dĩ hoặc chỉ bắt đầu với hệ số chặn
sau đó kiểm tra đặc trưng nào sẽ cải thiện mô hình nhiều nhất khi được bỏ
đi hoặc thêm vào, cho tới khi mô hình của ta có số lượng K đặc trưng.
Vậy làm sao ta biết được dữ liệu nên được thay đổi như thế nào. Điều
này phụ thuộc vào loại dữ liệu, có thể là dạng văn bản, ảnh hoặc hoặc dữ
liệu dạng bảng (tabular). Với văn bản và ảnh, giải pháp đó là ta giữ hoặc bỏ
các từ hoặc các siêu pixel (super-pixels). Với dữ liệu dạng bảng, LIME tạo
ra các mẫu dữ liệu mới bằng cách xáo trộn từng đặc trưng một cách riêng
rẽ, dựa trên một phân phối chuẩn có trung bình và độ lệch chuẩn lấy từ đặc
trưng.
5.7.1 LIME cho dữ liệu dạng bảng
Dữ liệu dạng bảng là dữ liệu từ các bảng, với mỗi hàng thể hiện một mẫu
dữ liệu và mỗi cột là một đặc trưng. Các dữ liệu của LIME không được sinh
ra xung quanh mẫu dữ liệu mà ta đang xét mà từ cả tập lớn dữ liệu huấn
luyện, và điều này gây ra vấn đề. Tuy nhiên điều này cũng làm tăng xác suất
trong đó kết quả dự đoán cho một số điểm khác với điểm dữ liệu ta đang xét
và LIME ít nhất có thể học được một số giải thích từ đây.
Sẽ là tốt nhất nếu ta giải thích một cách trực quan việc lấy mẫu và huấn
luyện mô hình cục bộ làm việc như thế nào:
Cũng như mọi lần, ta cần chú ý vào chi tiết của vấn đề. Việc định nghĩa
một hàng xóm có sức ảnh hưởng lớn xung quanh một điểm không hề dễ
dàng. LIME hiện tại sử dụng một nhân làm mượt có dạng mũ (exponential
smoothing kernel) để định nghĩa ra các hàng xóm. Một nhân làm mượt là
một hàm nhận 2 điểm dữ liệu và trả về khoảng cách giữa chúng. Độ rộng
của nhân quyết định độ lớn của hàng xóm: Một độ rộng nhân nhỏ tương ứng
với các mẫu dữ liệu xa điểm mà ta đang xét cũng sẽ ảnh hưởng tới mô hình.
Nếu bạn nhìn vào file này trong một triển khai của LIME, bạn sẽ thấy rằng
nó sử dụng một nhân làm mượt dạng mũ (với dữ liệu đã được chuẩn hóa) và
độ rộng nhân bằng 0.75 lần căn bậc hai của số cột của dữ liệu huấn luyện.
Tuy dòng code này có vẻ ngây thơ, nhưng nó lại mang ý nghĩa cực kỳ quan
trọng (tác giả ví nó như một con voi ngồi giữa phòng khách bên cạnh những
đồ gốm sứ quý giá ông bà bạn để lại - nghĩa là chỉ cần con voi cử động nhẹ,
mọi thứ xung quanh sẽ vỡ vụn). Vấn đề lớn ở đây là ta không có một phương
pháp tin cậy để chọn nhân hay độ rộng của nhân. Và giá trị 0.75 được lấy từ
đâu? Trong một số trường hợp cụ thể, ta có thể dễ dàng thay đổi việc giải
thích bằng cách thay đổi giá trị độ rộng nhân, được thể hiện trong hình dưới
đây.
Ví dụ trên phản ánh trường hợp ta có một đặc trưng duy nhất. Điều này
sẽ không áp dụng được trong các không gian đặc trưng nhiều chiều. Việc tính
toán khoảng cách liệu có nên đối xử với tất cả các đặc trưng công bằng hay
không? Điều này không rõ ràng. Liệu một đơn vị khoảng cách cho đặc trưng
x1 tương đương với một đơn vị khoảng cách cho đặc trưng x2? Các phép đo
khoảng cách không được định nghĩa rõ ràng và các khoảng cách trong các
chiều (hay đặc trưng) khác nhau có thể không phù hợp để so sánh.
Hình 5.33: Thuật toán LIME cho dữ liệu dạng bảng. A) Các dự đoán của
rừng ngẫu nhiên khi biết trước x1 và x2. Các lớp được dự đoán: 1 (tối) hoặc
0 (sáng). B) Dữ liệu ta đang quan tâm (dấu chấm lớn) và dữ liệu được lất
mẫu từ một phân phối chuẩn (dấu chấm nhỏ). C) Gán trọng số lớn cho các
điểm gần điểm dữ liệu ta đang quan tâm. D) Đánh dấu âm và dương trên
biểu đồ lưới để thể hiện việc phân loại của mô hình cục bộ được học từ các
điểm dữ liệu được đánh trọng số. Đường màu trắng thể hiện đường ranh giới
quyết định (P(class=1) = 0.5)
.
Ví dụ
Hãy nhìn vào một ví dụ cụ thể. Ta trở lại với tập dữ liệu thuê xe và biến
bài toán thành phân loại: Sau khi sử dụng đặc trưng xu thế khi mà việc thuê
xe trở nên phổ biến theo thời gian, ta muốn biết vào một ngày nhất định,
Hình 5.34: Giải thích với dự đoán trên điểm dữ liệu x = 1.6. Các dự đoán
của mô hình hộp đen phụ thuộc vào một đặc trưng đơn lẻ được thể hiện bởi
một đường đen lớn và phân bố của dữ liệu được thể hiện ở đáy biểu đồ. Ba
mô hình đại diện cục bộ với độ rộng nhân khác nhau được tính toán. Mô
hình tuyến tính sau đó phụ thuộc vào độ rộng nhân: Liệu đặc trưng có ảnh
hưởng tiêu cực, tính cực, hay không ảnh hưởng với x = 1.6?
.
liệu số xe được thuê sẽ lớn hơn hay nhỏ hơn một ngưỡng. Ta có thể gán nhãn
“above” khi số lượng xe lớn hơn trung bình, và có thể được điều chỉnh theo
thời gian.
Đầu tiên ta huấn luyện một rừng ngẫu nhiên với 100 cây cho bài toán
phân loại. Vào ngày nào số lượng xe được thuê sẽ lớn hơn trung bình, dựa
vào thời tiết và thông tin về ngày đó.
Việc giải thích được tạo nên với 2 đặc trưng. Kết quả của các mô hình
tuyến tính cục bộ thưa được huấn luyện với hai mẫu với các lớp được dữ
đoạn khác nhau:
Từ hình trên ta có thể thấy việc diễn giải đặc trưng hạng mục dễ dàng
hơn so với đặc trưng dạng số. Một giải pháp đó là phân các đặc trưng dạng
Hình 5.35: Giải thích của LIME cho hai mẫu dữ liệu của tập dữ liệu cho thuê
xe. Thời tiết ấm hơn và thời tiết tốt có ảnh hưởng tích cực tới dự đoán. Trục
x là ảnh hưởng đặc trưng: Trọng số nhân với giá trị đặc trưng.
.
Ví dụ
Trong ví dụ này, ta phân loại các bình luận trên Youtube thành dạng
spam hoặc bình thường.
Mô hình hộp đen là một cây quyết định sâu được huấn luyện trên một
ma trận từ. Mỗi bình luận từ Youtube được coi là một văn bản (một hàng)
và mỗi cột là số lần xuất hiện của một từ cho trước. Các cây quyết định ngắn
thường dễ hiểu, nhưng trong trường hợp cây rất sâu ta lại gặp vấn đề. Trong
các cây này ta cũng có thể bắt gặp mạng nơ-ron hồi tiếp (recurrent neural
network) hoặc một máy vector hỗ trợ được huấn luyện cho word embedding
(abstract vector). Ta hãy xem xét hai bình luận trong tập dữ liệu này và các
lớp tương ứng của chúng (1 là spam và 0 là bình luận thông thường).
CONTENT CLASS
267 PSY is a good guy 0
173 For Christmas Song visit my channel! ;) 1
Bước tiếp theo là biến đổi dữ liệu được sử dụng trong một mô hình cục
bộ. Ví dụ như sau:
Mỗi cột tương ứng với một từ trong câu. Mỗi hàng là một biến đổi của
câu gốc, 1 nghĩa là từ đó thuộc câu đã biến đổi, 0 nghĩa là từ đó đã bị loại bỏ.
Câu tương ứng cho một biến đổi là: “Christmas Song visit my ;)”. Cột “prob”
cho ta xác suất được dự đoán là spam của một comment. Cột “weight” cho
ta khoảng cách của câu đã biến đổi tới câu gốc, tính bằng 1 trừ đi tỉ lệ của
các từ đã bị loại bỏ. Ví dụ, nếu 1 trong 7 từ bị loại bỏ, khoảng cách sẽ là 1-
1/7 = 0.86.
Đây là hai ví dụ (spam và không spam) với trọng số cục bộ được ước
lượng cho bởi thuật toán LIME.
Ta có thể thấy từ “channel” mang nhiều sắc thái để chỉ ra câu đó là spam.
Với các bình luận thông thường, các trọng số được ước lượng đều là 0, bởi vì
việc các từ đó bị loại bỏ hay không không quan trọng, lớp được dự đoán sẽ
giữ nguyên.
case label_prob feature feature_weight
1 0.1701170 good 0.000000
1 0.1701170 a 0.000000
1 0.1701170 is 0.000000
2 0.9939024 channel! 6.180747
2 0.9939024 For 0.000000
2 0.9939024 ;) 0.000000
Ví dụ
Trong ví dụ này ta xem xét bài toán phân loại của mạng nơ-ron Inception
V3. Ảnh được dùng là một vài chiếc bánh mì được nướng trong một cái bát.
Do ta có thể có vài nhãn cho từng ảnh (sắp xếp bằng xác suất từ cao xuống
thấp), ta có thể giải thích các nhãn trên cùng. Nhãn đầu tiên là “Bagel” (hay
bánh mì tròn) với xác suất 77%, theo sau là “Strawberry” (hay dâu tây) với
xác suất 4%. Các ảnh dưới đây là giải thích của LIME cho nhãn “Bagel” và
“Strawberry”. Các giải thích có thể được hiển thị trực tiếp trên ảnh gốc. Màu
xanh lá nghĩa là phần đó sẽ làm tăng xác suất của nhãn và phần đỏ nghĩa là
làm giảm.
Dự đoán và giải thích cho “Bagel” là rất hợp lý, thậm chí cả khi dự đoán
sai - sẽ không có cái bánh mì nào được hiển thị rõ ràng nếu không có cái lỗ
ở giữa.
Hình 5.36: Trái: Ảnh của một bát bánh mì. Giữa và bên phải: Giải thích của
LIME cho 2 lớp đầu tiên (bagel, strawberry) cho bài toán phân loại sử dụng
mạng Inception V3 của Google.
.
5.7.4 Ưu điểm
Thậm chí nếu ta thay thế mô hình học máy, ta vẫn có thể sử dụng
mô hình cục bộ, khả diễn giải cho việc giải thích. Giả sử ta đang muốn giải
thích một mô hình và ta hiểu mô hình cây quyết định nhất. Bởi vì ta dùng
các mô hình đại diện cục bộ, ta sử dụng các cây quyết định như là giải thích
mà không thực sự dùng chúng trong việc tạo ra dự đoán. Ví dụ, ta có thể
dùng máy vector hỗ trợ. Và nếu nó chỉ ra rằng mô hình xgboost làm việc tốt
hơn, ta có thể thay thế máy vector hỗ trợ và vẫn sử dụng cây quyết định để
giải thích các dự đoán.
Các mô hình đại diện cục bộ có thể cải tiến nhờ vào kinh nghiệm huấn
luyện và diễn giải các mô hình khả diễn giải.
Khi sử dụng Lasso hoặc các cây ngắn, giải thích thu được thường ngắn
và có thể mang nghĩa tương phản. Do đó, chúng tạo ra các giải thích
thân thiện với con người. Đây là lí do vì sao ta nghĩ rằng LIME sẽ chỉ được
áp dụng khi người dùng có ít thời gian và sẽ không phù hợp cho việc giải
nghĩa đầy đủ cặn kẽ, do đó ta nghĩ LIME sẽ không được áp dụng trong các
tình huống mà ta cần lời giải thích chi tiết cho một dự đoán. Tương tự với
việc gỡ lỗi cho các mô hình học máy, sẽ tốt hơn nếu ta có tất cả những lý do
dẫn đến một dự đoán hơn là chỉ có một vài.
LIME là một trong số ít các phương pháp làm việc trên cả dữ liệu
bảng, văn bản, và ảnh.
Phương pháp tính toán độ nhất quán (các mô hình khả diễn giải xấp
xỉ mô hình hộp đen như thế nào) cho ta biết được độ tin cậy của việc sử
dụng các mô hình khả diễn giải trong việc giải thích dự đoán từ các mô hình
hộp đen nhờ vào các điểm dữ liệu hàng xóm.
LIME được triển khai trên Python (thư viện lime) và R (gói lime và iml).
Chúng rất dễ sử dụng.
Các giải thích sinh ra từ các mô hình đại diện cục bộ có thể sử dụng
các đặc trưng (khả diễn giải) khác thay vì các đặc trưng mà mô
hình gốc được huấn luyện. Tất nhiên rằng những đặc trưng khả diễn giải
này phải được trích xuất từ dữ liệu ta đang có. Một bộ phân loại văn bản
phụ thuộc vào (abstract word embeddings) như là các đặc trưng, nhưng việc
giải thích có thể được dựa trên việc có mặt hay vắng mặt của các từ trong
một câu. Một mô hình hồi quy có thể phụ thuộc vào các phép biến đổi không
khả giải thích của một số thuộc tính, nhưng giải thích có thể được tạo nên
bằng các thuộc tính gốc. Ví dụ, mô hình hồi quy có thể được huấn luyện
trên các thành phần (component) của phương pháp phân tích thành phần
chính (principal component analysis - PCA) của các trả lời trên một khảo
sát, nhưng LIME có thể được huấn luyện trên các câu hỏi gốc của khảo sát
đó. Việc sử dụng các đặc trưng khả diễn giải cho LIME có thể là một ưu
điểm lớn so với các phương pháp khác, đặc biệt khi mô hình được huấn luyện
với các đặc trưng không khả diễn giải.
Hình 5.37: LIME vs. Anchors – Một mô phỏng ví dụ. Hình đuọc láy từ
Ribeiro, Singh, and Guestrin (2018).
Như được nêu, các kết quả hoặc giải thích của thuật toán hình thành qua
dạng quy tắc, được gọi là neo. Ví dụ đơn giản sau đây miêu tả một cái neo.
Ví dụ, giả sử rằng ta có một mô hình hộp đen phụ thuộc 2 biến (bivariate
black-box model) mà dự đoán liệu một khách hàng sống sót được trong thảm
hoạ Titanic. Bây giờ chúng ta muốn biết tại sao mô hình dự đoán cho một
cá nhân cụ thể mà nó tồn tại. Thuật toán neo cung cấp một lời giải thích kết
quả như cách hiển thị bên dưới.
Trong đó:
• x là mẫu dữ liệu đang giải thích (ví dụ, một hàng trong bộ dữ liệu bảng)
• A là tập các predicates, tức quy tắc kết quả hoặc neo, sao cho Apxq “ 1
khi các đặc trưng predicates định nghĩa bởi A tương ứng với những giá
trị đặc trưng của x.
• f kí hiệu mô hình phân loại được giải thích (ví dụ, mô hình mạng nơ-ron
nhân tạo). Nó có thể được sử dụng để dự đoán một dán nhãn cho x và
các xáo trộn của nó.
• Dx p¨|Aq thể hiện phân phối các điểm lân cận trong x phù hợp với A.
• 0 ď τ ď 1 chỉ định độ chính xác giới hạn. Chỉ có các quy tắc thu được
tính nhất quán lân cận (local fidelity) ít nhất là τ được coi là kết quả
đúng.
Một ví dụ cho các ký hiệu được lấy từ bài báo gốc. Cho f là một predicate,
với đầu vào là một câu văn và đầu ra nằm trong tập {“Positive”, “Negative”}.
Cho x = ”This movie is not bad.”, f pxq = Positive, Apxq “ 1 với A = {“not”,
“bad”}. Khi đó Dx p¨|Aq là những câu văn tương đương có mặt “not” và “bad”.
A là mỏ neo khi Apxq “ 1 và A là điều kiện đủ cho f pxq với xác suất cao —
trong ví dụ này là khi mẫu z từ Dpz|Aq có khả năng được dự đoán là Positive
hơn (tức f pxq “ f pzq).
Mô tả chính thức có thể hơi dồn dập và có thể được miêu tả bằng lời như
sau:
Cho một mẫu dữ liệu x được giải thích, ta tìm một quy tắc hoặc một neo
A sao cho có thể được dùng lên x, trong khi lớp (class) giống x được dự đoán
với tỉ lệ ít nhất τ phần các điểm lân cận của x, khi một A tương tự có thể
áp dụng được. Tính chính xác trong quy tắc đến từ việc đáng giá các điểm
lân cận hoặc các điểm xáo trộn (theo sau Dx pz|Aq) thông qua mô hình học
máy cho trước (ký hiệu bằng hàm chỉ định 1f pxq“f pzq ).
Hai định nghĩa trước đó được kết hợp và mở rộng qua khái niệm độ phủ.
Cơ sở lý luận bao gồm tìm các quy tắc áp dụng được cho một phần lớn của
không gian đầu vào của mô hình. Độ phủ được định nghĩa là xác suất của
các “neo” áp dụng lên các lân cận, tức là không gian xáo trộn của nó:
max covpAq
A s.t. P pprecpAqěτ qě1´δ
Do đó quá trình tiếp theo sẽ tìm quy tắc mà có độ phủ cao nhất trong các
quy tắc thoả mãn (tất cả mà thoả mãn ngưỡng precision cho trước định nghĩa
theo xác suất). Tất cả quy tắc này được cho là quan trọng hơn, do chúng
diễn tả phần lớn hơn của mô hình. Chú ý các quy tắc với nhiều predicates
có thiên hướng chính xác cao hơn các quy tắc ít predicates hơn. Cụ thể, một
quy tắc đã cố định mọi đặc trưng của x làm giảm số lượng đánh giá vùng lân
cận tới các mẫu dữ liệu giống nhau. Do đó mô hình sẽ phân loại các vùng
lân cận như nhau và độ chính xác của quy tắc là 1. Đồng thời một quy tắc
đã cố định nhiều đặc trưng là cụ thể quá mức và chỉ áp dụng tới một số mẫu
dữ liệu. Do đó có sự đánh đổi giữa precision và độ phủ. Cách tiếp cận mỏ
neo dùng bốn thành phần chính để tìm những giải thích (explanations), được
miêu tả trong hình sau
Thế hệ ứng viên : Tạo các ứng viên giải thích mới. Trong vòng đầu tiên,
một ứng cử viên cho mỗi đặc trưng của x được tạo và sửa đổi giá trị tương
ứng trong các xáo trộn. Ở các vòng khác, các ứng cử viên tốt nhất của vòng
trước được mở rộng bởi một predicate đặc trưng chưa có trong đó.
Xác định ứng viên tốt nhất : Các quy tắc từ ứng viên sẽ được so sánh
liên quan đến quy tắc nào giải thích x tốt nhất. Về cuối, xáo trộn mà phù
hợp với quy tắc hiện tạo ra và đang được quan sát sẽ được đánh giá bằng
cách gọi mô hình. Tuy nhiên, những lần gọi này cần được giảm thiểu để hạn
chế vượt giới hạn tính toán. Đây là lý do tại sao, tại cốt lõi thành phần này,
có một máy đánh bạc đa cần (Multi-Armed-Bandit – MAB) thuần khám phá
(pure-exploration). Các MAB được sử dụng để khám phá và khai thác hiệu
quả các chiến lược khác nhau (được gọi là cần (arm) tương tự máy đánh bạc)
bằng cách sử dụng lựa chọn tuần tự (sequential selection). Trong cài đặt đã
cho, mỗi quy tắc từ ứng cử viên được xem là một cánh tay có thể được kéo.
Mỗi lần kéo, những lân cận tương ứng được đánh giá và do đó chúng ta có
được thêm thông tin về payoff của quy tắc từ ứng viên (độ chính xác trong
trường hợp các “neo”). Do đó, độ chính xác cho biết quy tắc mô tả mẫu dữ
liệu được giải thích tốt như thế nào.
Kiểm định chính xác của ứng viên : Lấy thêm mẫu trong trường hợp
không có độ tin cậy thống kê nào mặc dù thấy ứng viên vượt quá ngưỡng τ .
Tìm kiếm chùm đã sửa đổi (Modified Beam Search) : Tất cả các
thành phần trên được tập hợp trong một tìm kiếm chùm (beam search), là
thuật toán tìm kiếm đồ thị và một biến thể của tìm kiếm theo chiều rộng
(breadth-first algorithm). Nó mang B ứng cử viên tốt nhất của mỗi vòng qua
vòng tiếp theo (trong đó B được gọi là Độ rộng chùm (Beam Width)). Số
lượng B quy tắc tốt nhất này được sử dụng để tạo những quy tắc mới. Việc
tìm kiếm chùm tia tiến hành qua nhiều nhất f eatureCountpxq vòng, vì mỗi
đặc trưng chỉ được đưa vào một quy tắc nhiều nhất một lần. Do đó, ở mỗi
vòng i, nó tạo ra các ứng cử viên có chính xác i predicates và chọn số B tốt
nhất. Do đó, bằng cách cho B lớn, thuật toán có nhiều khả năng tránh tối
ưu cục bộ. Đổi lại, điều này đòi hỏi một lượng lớn các lần gọi mô hình và do
đó làm tăng lượng tải tính toán.
Hình 5.38: Các thành phần của thuật toán neo và mối quan hệ tương quan
bên trong (đã được đơn giản hoá)
Cách tiếp cận này dường như là một công thức hoàn hảo để thu được
thông tin hợp lý về thống kê (statistically sound information) về lý do tại
sao bất kỳ hệ thống nào phân loại một mẫu dữ liệu theo cách nó đã làm.
Nó thử nghiệm một cách có hệ thống với đầu vào mô hình và kết luận bằng
cách quan sát các đầu ra tương ứng. Nó dựa vào các phương pháp học máy
được thiết lập và nghiên cứu kỹ lưỡng (như MAB) để giảm số lượng cuộc
gọi được thực hiện cho mô hình. Điều này làm giảm đáng kể thời gian chạy
thuật toán.
5.8.2 Độ phức tạp và thời gian chạy (Runtime)
Biết hành vi thời gian chạy tiệm cận của các cách tiếp cận mỏ neo giúp
đánh giá mức độ hiệu quả của nó đối với các vấn đề cụ thể. Cho B là độ rộng
chùm tia và p là số lượng tất cả các đặc trưng. Sau đó, thuật toán neo phải
tuân theo độ phức tạp:
OpB ¨ p2 ` p2 ¨ OMABrB¨p,Bs q
Vùng biên cận này trừu tượng hóa từ các siêu tham số độc lập theo vấn
đề (problem-independent hyperparameters), chẳng hạn như độ tin cậy thống
kê δ. Bỏ qua các siêu tham số giúp giảm độ phức tạp của vùng biên cận
(boundary) (xem bài báo gốc để biết thêm thông tin). Vì MAB trích ra các
ứng cử viên B tốt nhất trong số các ứng cử viên B ¨ p tg mỗi vòng, hầu hết
các MAB và thời gian chạy của chúng nhân hệ số p2 nhiều hơn bất kỳ tham
số nào khác.
Do đó, điều sau trở nên rõ ràng: hiệu quả của thuật toán giảm với những
vấn đề có nhiều đặc trưng (feature abundant problems).
Hình 5.39: Các neo giải thích sáu mẫu dữ liệu của bộ dữ liệu cho thuê xe
đạp. Mỗi hàng đại diện cho một giải thích hoặc neo, và mỗi thanh mô tả các
vị từ đặc trưng được chứa trong đó. Trục x hiển thị độ chính xác của quy
tắc và độ dày của thanh tương ứng với độ phủ của nó. Quy tắc ’cơ sở’ không
chứa predicates. Các neo này cho thấy mô hình chủ yếu xem xét nhiệt độ để
làm các dự đoán.
dữ liệu được giải thích, đặc trưng nào là quan trọng nhất cho dự đoán của
mô hình. Vì các neo chỉ có một vài predicates, chúng cũng có độ độ phủ cao
và do đó áp dụng cho các trường hợp khác. Các quy tắc hiển thị ở trên được
tạo với τ “ 0.9. Do đó, chúng ta để các neo trong đó xáo trộn được đánh giá
hỗ trợ cho nhãn (label) có độ chính xác ít nhất là 90%. Ngoài ra, sự rời rạc
hoá (discretization) được sử dụng để tăng tính thể hiện (expressiveness) và
khả năng ứng dụng của các đặc trưng số.
Tất cả các quy tắc trước tạo ra cho các mẫu dữ liệu mà các mô hình quyết
định tự tin chỉ dựa trên một vài đặc trưng. Tuy nhiên, các mẫu dữ liệu khác
không được phân loại riêng biệt từ mô hình vì nhiều đặc trưng hơn có tầm
quan trọng hơn. Ở các trường hợp đó, các “neo” được cụ thể hơn, bao gồm
nhiều đặc trưng hơn, và áp dụng cho ít các mẫu dữ liệu hơn.
Mặc dù chọn không gian xáo trộn mặc định sẽ dễ chịu hơn, nó có thể tác
động lớn lên thuật toán và có thể dẫn đến kết quã bị thiên vị. Ví dụ, nếu tập
huấn luyện không được cân bằng (số lượng mẫu dữ liệu là không như nhau
với mỗi lớp), không gian xáo trộn cũng vậy. Điều kiện này ảnh hưởng thêm
việc tìm quy tắc và có kết quả chính xác. Bộ dữ liệu ung thu cổ tử cung là
một ví dụ xuất sắc cho trường hợp này. Áp dụng thuật toán “neo” dẫn đến
một trong các tình huống sau:
• Các mẫu dữ liệu được giải thích dán nhãn khoẻ mạnh tạo ra các quy tắc
trống vì tất cả các vùng lân cận được tạo ra sẽ đánh giá là khoẻ mạnh.
• Các mẫu dữ liệu được giải thích được dán nhãn ung thư bị cụ thể quá
mức, nghĩa là chứa quá nhiều đặc trưng predicates, bởi vì không gian
xáo trộn chủ yếu bao gồm các giá trị từ các mẫu dữ liệu khoẻ mạnh.
Đầu ra này có thể không được mong đợi và có thể tiếp cận qua nhiều
cách. Ví dụ, một không gian xáo trộn tuỳ chỉnh được định nghĩa cho những
mẫu trong đầu ra khác nhau, cụ thể từ một tập dữ liệu không cân bằng hoặc
một phân phối chuẩn. Tuy nhiên điều này kèm theo tác dụng phụ: Những
vùng lân cận được lấy mẫu không có tính thể hiện và thay đổi phạm vi của
độ phủ. Ngoài ra, ta có thể sửa đổi độ tin cậy δ của MAB và các giá trị tham
số lỗi . Điều này sẽ khiến MAB rút ra nhiều mẫu thử hơn, cuối cùng dẫn
đến lượng thiểu số được lấy mẫu thường xuyên hơn một cách tuyệt đối.
Trong ví dụ này, chúng ta sử dụng một tập hợp con của bộ ung thư cổ tử
cung với phần lớn dán nhãn là ung thư. Từ đó ta có khung để tạo một không
gian xáo trộn tương ứng. Hiện tượng xáo trộn có nhiều khả năng dẫn đến các
dự đoán khác nhau, và thuật toán neo có thể xác định các đặc trưng quan
Hình 5.40: Các mẫu dữ liệu giải thích gần với các vùng quyết định biên
cận (decision boundaries) dẫn đến các quy tắc cụ thể bao gồm một số lượng
lớn hơn các đặc trưng và độ phủ nhỏ hơn. Thêm nữa, quy tắc trống (empty
feature), tức là đặc trưng cơ sở, trở nên ít quan trọng. Điều này có thể hiểu
là một dấu hiệu cho một vùng quyết định biên cận, vì mẫu dữ liệu được vị
trí ở một vùng lân cận dễ thay đổi (volatile).
trọng. Tuy nhiên, định nghĩa của độ phủ cần được tính đến: nó chỉ được xác
định trong không gian xáo trộn. Ở các ví dụ trước, chúng ta sử dụng tập
huấn luyện làm cơ sở (basis) của không gian xáo trộn. Vì chúng ta chỉ dùng
một tập con, một độ phủ cao không nhất thiết chỉ ra sự quan trọng toàn cục
cao.
Hình 5.41: Thiết kết các “neo” trong các không gian xáo trộn không cân bằng
dẫn đến những kết quả không thể hiện được.
5.8.4 Ưu điểm
Cách tiếp cận mỏ neo cho ta nhiều ưu điểm hơn LIME. Trước hết, đầu
ra thuật toán dễ hiểu hơn, vì các quy tắc rất dễ giải thích. Thêm nữa, các
neo có thể được chia thành các tập con (subsettable) và định ra mức
đo độ quan trọng thông qua khái niệm độ phủ. Thứ hai, cách tiếp cận mỏ
neo hoạt động ngay cả khi dự đoán mô hình là phi tuyến tính hoặc
phức tạp trong một vùng lân cận của mẫu dữ liệu. Vì cách tiếp cận này
triển khai các kỹ thuật học tập củng cố thay vì khớp với các mô hình thay
Hình 5.42: Cân bằng tập dữ liệu trước khi lập các “neo” cho ta thấy lý lẽ của
mô hình cho các quyết định trong các trường hợp thiểu số.
thế, nên ít có khả năng dưới khớp mô hình. Ngoài ra mô hình có tính kiểu
mẫu (model-agnostic và áp dụng được cho mô hình tuỳ ý. Thêm nữa là
nó cực kỳ kiệu quả và có thể được song song hoá (parallelize) khi sử
dụng MABs có hỗ trợ lấy mẫu batch (ví dụ BatchSAR)
5.8.5 Nhược điểm
Thuật toán chịu thiệt trong thiết lập có cấu hình cao và có tác động,
giống như hầu hết các giải thích dựa trên xáo trộn (perturbation-based ex-
plainers). Không chỉ các siêu tham số như độ rộng chùm hoặc ngưỡng chính
xác phải được điều chỉnh để có kết quả ý nghĩa, mà cả hàm xáo trộn cũng
phải thiết kế cụ thể cho một miền/trường hợp sử dụng. Hãy nghĩ về cách dữ
liệu dạng bảng bị xáo trộn và cách áp dụng các khái niệm tương tự cho dữ
liệu ảnh (Gợi ý: chúng không thể được áp dụng). May mắn thay, các cách
tiếp cận mặc định có thể sử dụng trong một số miền xác định (domain) (ví
dụ: dạng bảng), thiết lập giải thích ban đầu dễ hơn. Đồng thời nhiều viễn
cảnh đòi hỏi sự rời rạc hoá vì nếu không kết quả sẽ quá cụ thể, ít độ phủ,
và không đóng góp vào việc hiểu mô hình. Trong khi discretization có thể tốt,
nó có thể những những vùng biên cận quyết định (decision boundaries) thiếu
rõ ràng nếu không dùng cẩn thận sẽ tạo nên tác dụng ngược lại. Do không
có kỹ thuật rời rạch hoá tốt nhất, người dùng cần lưu ý về dữ liệu trước khi
quyết định phương pháp làm rời rạc hoá dữ liệu để không thu về kết quả
không tốt. Xây dựng các “neo” cần dùng nhiều lần gọi mô hình học máy,
giống như tất cả các giải thích dựa trên xáo trộn. Trong khi thật toán triển
khai các MAB cực tiểu hoá số lần gọi, thời gian chạy vẫn phụ thuộc rất nhiều
vào chất lượng của mô hình và do đó có tính biến thiên cao (highly variable).
Cuối cùng, khái niệm độ phủ không xác định được trong một số miền.
Ví dụ không có định nghĩa hiển nhiên hoặc phổ cập về các siêu pixels trong
một ảnh được so sánh ra sao với trong hình ảnh khác.
Hình 5.43: Giá trị dự đoán cho một căn hộ tầng 2 50m2 là e300,000 với công
viên gần đó và cấm nuôi mèo. Mục tiêu là giải thích làm sao các giá trị đặc
trưng đóng góp vào dự đoán.
bình cho các căn hộ là e310,000. Mỗi giá trị đặc trưng đóng góp bao nhiêu
cho dự đoán so với dự đoán trung bình?
Câu trả lời sẽ đơn giản với các mô hình hồi quy tuyến tính. Ảnh hưởng của
mỗi đặc trưng là trọng số của đặc trưng nhân với giá trị đặc trưng. Điều
này chỉ hiệu quả do tính tuyến tính của mô hình. Cho các mô hình phức tạp
hơn, ta cần giải pháp khác. Ví dụ LIME sử dụng các mô hình cục bộ để ước
lượng các ảnh hưởng. Một giải pháp khác đến từ lý thuyết trò chơi hợp tác
(cooperative game theory): Phương pháp giá trị Shapley, đặt ra bởi Shapley
(1953), chỉ định các thanh toán cho người chơi phụ thuộc vào đóng góp của
họ trong tổng giá trị thanh toán. Các người chơi hợp tác trong trong một
liên minh và nhận về lợi nhận nhất định từ sự hợp tác này.
Những người chơi? Trò chơi? Thanh toán? Sự kết nối giữa các dự đoán học
máy và tính khả giải thích ra sao? “Trò chơi” là nhiệm vụ dự đoán cho một
mẫu dữ liệu trong bộ dữ liệu. “Độ lợi” (gain) là dự đoán thực tế cho mấu
dữ liệu này trừ đi dự đoán trung bình của tất cả mẫu dữ liệu. “Những người
chơi” là các giá trị đặc trưng của mẫu dữ liệu đã cộng tác để nhận lại độ
lợi (= dự đoán một giá trị nhất định). Trong ví dụ căn hộ, những giá trị
đặc trưng công viên ở gần, cấm mèo, kích thước 50, và tầng 2 phối hợp với
nhau để thu được dự đoán e300,000. Mục tiêu chúng ta là giải thích sai khác
giữa dự đoán thật sự (e300,000) và dự đoán trung bình (e310,000): sai khác
-e10,000.
Câu trả lời có thể là: công viên ở gần e30,000; kích thước 50, đóng góp
e10,000; tầng 2 đóng góp e0; cấm mèo đóng góp -e50,000. Các đóng góp
tổng cộng tới tới - e10.000, là dự đoán cuối cùng trừ đi giá căn hộ dự đoán
trung bình.
Làm sao ta tính giá trị Shapley cho một đặc trưng? Ở hình sau ta
đánh giá đóng góp của giá trị đặc trưng cho đặc trưng cấm mèo khi được
thêm vào liên minh của công viên ở gần và kích thước 50. Chúng ta mô
phỏng rằng chỉ có công viên ở gần, cấm mèo, và kích thước 50 là một liên
minh thông qua rút ngẫu nhiên căn hộ khác từ dữ liệu và dùng giá trị của
nó cho đặc trưng tầng (floor). Giá trị tầng 2 được thay bằng rút ngẫu nhiên
tầng 1. Sau đó chúng ta dự đoán giá căn hộ qua sự kết hợp này (e310,000).
Bước thứ 2 ta loại đi cấm mèo từ liên minh thông qua thay thế nó với một
giá trị ngẫu nhiên từ đặc trưng phép/cấm mèo qua căn hộ được rút ngẫu
nhiên. Trong ví dụ nó là phép mèo, nhưng có thể là cấm mèo lần nữa. Ta dự
đoán giá căn hộ từ liên minh công viên ở gần và kích thước 50 (e320,000).
Đóng góp từ cấm mèo là e310,000 - e320,000 = -e10.000. Ước tính nào phụ
thuộc vào các giá trị từ căn hộ rút ngẫu nhiên với vai trò là “nhà tài trợ”
cho giá trị đặc trưng mèo và tầng. Chúng ta sẽ có được ước tínhtốt hơn nếu
chúng ta lặp lại bước lấy mẫu này và tính trung bình các khoản đóng góp.
Chúng ta lặp lại tính toán này cho tất cả các liên minh khả thi. Giá trị
Shapley là trung bình tất cả các đóng góp biên cho tất cả các liên minh khả
Hình 5.44: Một lần lập lại mẫu đề ước tính đóng góp từ cấm mèo trong dự
đoán khi được thêm vào liên minh của đậu xe ở gần và kích thước 50.
thi. Thời gian tính toán tăng theo cấp số nhân với số lượng các đặc trưng.
Một giải pháp để quản lý được thời gian tính toán là tính các đóng góp cho
chỉ với một vài mẫu của các liên minh khả thi.
Hình dưới đây cho thấy tất cả các liên minh của các giá trị đặc trưng cần
thiết để xác định giá trị Shapley cho cấm mèo. Hàng đầu tiên hiển thị liên
minh mà không có bất kỳ giá trị đặc trưng nào. Các hàng thứ hai, thứ ba và
thứ tư hiển thị các liên minh khác nhau với kích thước liên minh tăng dần,
cách nhau bởi “|”. Các liên minh sau đây là khả thi:
• Kích thước 50
• Tầng 2
Hình 5.45: Tất cả 8 liên minh cần thiết để tính toán giá trị Shapley chính
xác của giá trị đặc trưng cấm mèo.
Nếu chúng ta ước tính các giá trị Shapley cho tất cả các giá trị đặc trưng,
chúng ta nhận được phân phối hoàn chỉnh của dự đoán (trừ đi trung bình)
trong số các giá trị đặc trưng.
ngẫu nhiên để dự đoán số lượng xe đạp được thuê trong một ngày, dựa trên
thông tin thời tiết và lịch. Các giải thích được tạo cho phép dự đoán rừng
ngẫu nhiên trong một ngày cụ thể như sau:
Hãy cẩn thận để giải thích chính xác giá trị Shapley: Giá trị Shapley là
đóng góp trung bình của một giá trị đặc trưng cho dự đoán trong các liên
minh khác nhau. Giá trị Shapley KHÔNG phải là sai khác trong dự đoán
khi chúng ta xóa đi đặc trưng này khỏi mô hình.
Hình 5.47: Giá trị Shapley của ngày 285. Với dự đoán 2409 chiếc xe đạp cho
thuê, ngày này thấp hơn -2108 so với dự đoán trung bình là 4518. Tình hình
thời tiết và độ ẩm đóng góp tiêu cực nhất và nhiệt độ thì lại có đóng góp tích
cực. Tổng các giá trị Shapley cho ra sai khác của dự đoán thực tế và trung
bình (-2108).
fˆpxq “ β0 ` β1 x1 ` . . . ` βp xp
trong đó x là điểm dữ liệu mà chúng ta muốn tính toán các đóng góp. Mỗi xj
là một giá trị đặc trưng, với j “ 1, ¨ ¨ ¨ , p. Các βj là trọng lượng tương ứng
với đặc trưng j.
Mức đóng góp φj của đặc trưng thứ j trên dự đoán fˆpxq là:
trong đó Epβj Xj q là ảnh hưởng ước lượng trung bình cho đặc trưng j. Mức
đóng góp là hiệu giữa ảnh hưởng đặc trưng trừ đi ảnh hưởng trung bình. Tốt
lắm! Bây giờ ta đã biết mỗi đặc trưng đóng góp bao nhiêu cho dự đoán. Nếu
chúng ta tổng lại tất cả các đóng góp đặc trưng (feature contribution) cho
một mẫu dữ liệu, kết quả là như sau:
p
ÿ p
ÿ
φj pfˆq “ pβj xj ´ Epβj Xj qq
j“1 j“1
p
ÿ p
ÿ
“pβ0 ` βj xj q ´ pβ0 ` Epβj Xj qq
j“1 j“1
“fˆpxq ´ EpfˆpXqq
Đây là giá trị dự đoán cho điểm dữ liệu x trừ đi giá trị dự đoán trung
bình. Các đóng góp đặc trưng có thể âm.
Liệu chúng ta có thể làm tương tự cho một loại mô hình tuỳ ý? Thật sự
là sẽ tốt khi có công cụ làm dạng phân tích kiểu mẫu (model-agnostic tool).
Vì chúng ta thường không có trọng lượng như nhay trong các loại mô hình
khác, ta cần giải pháp khác.
Sự trợ giúp đến từ những nơi không ngờ tới: lý thuyết trò chơi hợp tác.
Giá trị Shapley là giải pháp để tính các đóng góp theo đặc trưng cho các dự
đoán đơn lẻ trong bất kì mô hình học máy nào.
trong đó S là tập con của các đặc trưng dùng trong mô hình, x là vector
cho các giá trị đặc trưng của mẫu dữ liệu được giải thích và p là số lượng
đặc trưng. valx pSq là dự đoán cho các gái trị đặc trưng trong tập S đã được
biên hoá trên các đặc trưng nằm ngoài tập S:
ż
valx pSq “ fˆpx1 , . . . , xp qdPxRS ´ EX pfˆpXqq
Bạn đang thực hiện nhiều phép tích phân cho mỗi đặc trưng nằm ngoài
tập S. Một ví dụ cụ thể: Mô hình học máy hoạt động với 4 đặc trưng x1, x2,
x3 và x4 và chúng ta đánh giá dự đoán cho liên minh S bao gồm các giá trị
đặc trưng x1 và x3:
ż ż
valx pSq “ valx ptx1 , x3 uq “ fˆpx1 , X2 , x3 , X4 qdPX2 X4 ´ EX pfˆpXqq
R R
Công thức này trông tương tự như các đóng góp đặc trưng trong mô hình
tuyến tính!
Đừng nhầm lẫn bởi nhiều cách sử dụng từ “gía trị”: Giá trị đặc trưng là
giá trị số hoặc hạng mục của một đặc trưng và mẫu dữ liệu; giá trị Shapley
là đóng góp đặc trưng cho dự đoán; hàm giá trị là hàm xuất chi cho liên kết
người chơi (giá trị đặc trưng).
Giá trị Shapley là phương pháp phân bổ duy nhất thỏa mãn các tính
chất Hiệu lực (Efficiency), Đối xứng (Symmetry), Nộm (Dummy)
và Cộng (Additivity), cùng nhau được coi là một định nghĩa về thanh toán
công bằng.
Hiệu lực Các đóng góp đặc trưng phải cộng lên để bằng hiệu giữa dự đoán
trên x và giá trị trung bình.
ÿp
φj “ fˆpxq ´ EX pfˆpXqq
j“1
Đối xứng Các đóng góp cho hai gía trị đặc trưng j và k nên như nhau nếu
chúng đóng góp như nhau cho mọi liên minh có thể. Nếu
valpS Y txj uq “ valpS Y txk uq
Với mọi
S Ď tx1 , . . . , xp uztxj , xk u
Thì
φj “ φk
Bù nhìn (dummy) Một đặc trưng j mà không thay đổi giá trị dự đoán –
mặc cho mọi liên minh của các giá trị đặc trưng được cộng vào – nên có một
giá trị Shapley bằng 0. Nếu
Với mọi
S Ď tx1 , . . . , xp u
Thì
φj “ 0
Cộng tính Cho trò chơi với các kết hợp thanh toán val ` val` thì các giá
trị Shapley tương ứng là
φj ` φ`
j
Giả sử rằng bạn huấn luyện một rừng ngẫu nhiên, nghĩa là dự đoán là
trung bình trong các cây quyết định. Tính chất Cộng tính đảm bào rằng cho
một giá trị đặc trưng, bạn có thể tính toán gía trị Shapley cho mỗi cây riêng,
tính trung bình của chúng, và lấy giá trị Shapley cho giá trị đặc trưng cho
rừng ngẫu nhiên.
trong đó fˆpxm
`j q là dự đoán cho x, nhưng với một lượng ngẫu nhiên các
gái trị đặc trưng từ điểm dữ liệu ngẫu nhiên z, ngoại trừ cho giá trị tương
ứng với đặc trưng j. X-vector xm m
´j gần như tương đương với x`j , như giá trị
xm
j được lấy ra từ mẫu z. Mỗi số lượng M mẫu dự liệu mới là một loại “Quái
vật Frankenstein” tập hợp từ hai mẫu dữ liệu.
Ước tính Shapley gần đúng cho duy nhất một giá trị đặc trưng
• Đầu ra: Giá trị Shapley cho giá trị của đặc trưng j-th
• Yêu cầu: Số lần lặp M, mẫu dữ liệu đang quan tâm x, chỉ số đặc trưng j,
ma trận dữ liệu X và mô hình học máy f.
• Với mọi m “ 1, . . . , M :
φm ˆ m ˆ m
j “ f px`j q ´ f px´j q
Tất cả các hiệu được trung bình hoá và kết quả là:
M
1 ÿ m
φj pxq “ φ
M m“1 j
Việc tính trung bình ngầm trọng lượng hoá các mẫu theo phân phối xác suất
của X.
Quy trình phải được lặp lại cho từng đặc trưng để thu được tất cả các
giá trị Shapley.
5.9.7 Ưu điểm
Điểm khác nhau giữa dự đoán và trung bình dự đoán được phân phối
công bằng (fairly distributed) giữa các giá trị đặc trưng của mẫu dữ liệu
– tính hiệu lực của giá trị Shapley. Tình chất này phân biệt giá trị Shapley
khỏi tất cả các phương pháp khác như là LIME. LIME không đảm bảo rằng
dự đoán được phân phối công bằng giữa các đặc trưng. Giá trị Shapley có
thể là phương pháp duy nhất để đưa ra đầy đủ kết qủa giải thích. Trong tình
huống như luật pháp yêu cầu khả năng giải thích – như “quyền giải thích”
của EU - giá trị Shapley có phương pháp “tuân thủ pháp lý” duy nhất, bởi vì
nó dựa trên lý thuyết vững chắc và phân phối các ảnh hưởng một cách công
bằng. Ta không phải là một luật sư, vì vậy điều này chỉ phản ánh trực giác
của ta về các yêu cầu trong phương pháp.
Giá trị Shapley cho phép giải thích tương phản. Thay vì so sánh một
dự đoán với dự đoán trung bình của toàn bộ tập dữ liệu, bạn có thể so sánh
với một tập hợp con hoặc thậm chí với một điểm dữ liệu duy nhất. Sự tương
phản này là điều mà các mô hình cục bộ như LIME không có.
Giá trị Shapley là phương pháp giải thích duy nhất với một lý thuyết
vững chắc. Các tiên đề – hiệu lực, đối xứng, nộm tính, cộng tính – đưa ra
một nền tảng hợp lý cho kết qủa giải thích. Các phương thức như LIME giả
định hành vi tuyến tính của mô hình học máy cục bộ, nhưng không có lý do
trên mặt lý thuyết nào về tại sao hành vi đó hiệu quả.
Thật là ấn tượng cực kì để giải thích một dự đoán bằng một trò chơi được
chơi bởi các giá trị đặc trưng.
M
ÿ
1
gpz q “ φ0 ` φj zj1
j“1
Với g là mô hình giải thích, z 1 P t0, 1uM là vector liên minh, M là kích
cỡ liên minh tối đa và φj P R là phân bổ đặc trưng cho đặc trưng j, các giá
trị Shapley. Cái mà ta gọi là “vector liên minh” được gọi là “các đặc trưng
đơn giản hóa” (simplified feature) trong bài báo SHAP. Ta nghĩ tên này đã
được chọn, vì ví dụ: dữ liệu hình ảnh, hình ảnh không được biểu thị ở mức
pixel, nhưng được tổng hợp thành siêu pixel. Ta nghĩ sẽ hữu ích khi nghĩ về
z như mô tả các liên minh: Trong vector liên minh, đầu vào 1 có nghĩa là
giá trị tính năng tương ứng là “có mặt” và 0 là “vắng mặt”. Điều này sẽ quen
thuộc với bạn nếu bạn đọc về các giá trị Shapley. Để tính toán các giá trị
Shapley, chúng ta mô phỏng rằng chỉ một số giá trị tính năng đang tham gia
(“có mặt”) và một số thì không (“vắng mặt”). Việc biểu diễn dưới dạng mô
hình tuyến tính của các liên minh là mẹo để tính toán các φ. Đối với x, mẫu
dự liệu đang quan tâm, vector liên minh x’ là vector tất cả các giá trị 1, tức
là tất cả các giá trị đặc trưng đều “có mặt”. Công thức đơn giản thành:
M
ÿ
1
gpx q “ φ0 ` φj
j“1
Bạn có thể tìm thấy công thức này qua ký hiệu tương tự trong chương
giá trị Shapley. hông tin thêm về ước tính thực tế đến sau. Trước tiên chúng
ta hãy nói về các tính chất của φ trước khi chúng ta đi vào chi tiết ước tính
của chúng.
Các giá trị của Shapley là nghiệm duy nhất thỏa mãn các tính chất của
Hiệu lực, Đối xứng, Nộm tính và Cộng tính. SHAP cũng thỏa mãn những
điều này, vì nó tính toán các giá trị của Shapley. Trong bài báo về SHAP, bạn
sẽ tìm thấy sự khác biệt giữa các tính chất SHAP và các tính chất Shapley.
SHAP mô tả ba tính chất mong muốn sau:
Nếu bạn cho φ0 “ EX pfˆpxqq và cho các x1j bằng 1, đây là tính chấn hiệu
lực của Shapley. Chỉ với tên khác và dùng vector liên minh.
M
ÿ M
ÿ
f pxq “ φ0 ` φj x1j “ EX pfˆpXqq ` φj
j“1 j“1
2. Tính thiếu:
x1j “ 0 ñ φj “ 0
Tính thiếu cho rằng một đặc trưng thiếu cho một biểu hiện là 0. Lưu ý
rằng x1j đề cập đến các liên minh, trong đó giá trị 0 biểu thị sự vắng mặt
một giá trị đặc trưng. Trong ký hiệu liên minh, các giá trị liên minh x1j
cho một mẫu dữ liệu được giải thích nên là 1 11 . Sự hiện diện của số 0 nghĩa
là giá trị đặc trưng bị thiếu cho mô hình đang quan tâm. Tính chất này
không nằm trong các tính chất của giá trị Shapley “thông thường”. Vậy
tại sao ta cần nó cho SHAP? Lundberg gọi nó là “minor book-keeping
property”. Một đặc trưng thiếu có thể – trong lý thuyết – có một giá trị
Shapley từ ý mà không làm hỏng tính chính xác cục bộ, vì chúng được
nhân với x1j “ 0. Tính thiếu thực thi các đặc trưng bị thiếu có giá trị
Shapley là 0. Trong thực hành điều này chỉ liên quan tới các đặc trưng
không thay đổi.
φj pf 1 , xq ě φj pf, xq
Tính nhất quán nói rằng nếu mô hình thay đổi sao cho đóng góp biên
(marginal contribution) cho một giá trị đặc trưng tăng lên hoặc giữ
nguyên (mặc cho các đặc trưng khác), giá trị Shapley cũng tăng hoặc
giữ nguyên. Từ tính Nhất quán, các tính chất Shapley Tuyến tính, Nộm
tính, hoặc Đối xứng đi theo, như miêu tả trong phần Appendix của
Lundberg và Lee.
5.10.2 KernelSHAP
KernelSHAP ước lượng cho một mẫu dữ liệu x cho các đóng góp của mỗi
giá trị đặc trưng lên phép dự đoán. KernelSHAP bao gồm 5 bước:
1
(a) Mẫu liên minh zk P t0, 1uM , k P t1, . . . , Ku (1 = đặc trưng có mặt
trong liên minh, 0 = đặc trưng vắng mặt)
(b) Cho dự đoán với mỗi zk1 qua trước hết đổi zk1 qua không gian đặc
1
trưng gốc rồi áp dụng mô hình f : f phx pzk qq
(c) Tính trọng số (weight) cho mỗi zk1 tới hạt nhân SHAP.
(d) Khớp mô hình tuyến tính đã trọng số hoá.
(e) Trả lại các giá trị Shapley φk , các hệ số từ mô hình tuyến tính.
Ta có thể tạo ra một liên minh ngẫu nhiên qua các phép lật đồng xu liên
tục cho tới khi thu được các chuỗi 0 và 1. Ví dụ vector của p0, 1, 0, 1q
nghĩa rằng ta có một liên minh của đặc trưng thứ nhất và thứ ba. Số
lượng K liên minh đã lấy mẫu (sampling) làm thành tập dữ liệu cho mô
hình hồi quy. Đối tượng cho mô hình hồi quy là phép dự đoán cho một
liên minh (“Đợi đã!”, bạn sẽ nói, “Mô hình chưa được huấn luyện trên dữ
liệu liên minh nhị phân và không thể dự đoán được!) Để đi từ các liên
minh của các giá trị đặc trưng tới các mẫu dữ liệu hợp lệ, ta cần hàm
hx pz 1 q “ z với hx : t0, 1uM Ñ Rp . Hàm hx ánh xạ từ 1 tới giá trị tương
ứng từ mẫu dữ liệu x ta đang muốn giải thích. Với dữ liệu dạng bảng, nó
ánh xạ các số 0 tới các giá trị của một mẫu dữ liệu khác ta lấy mẫu từ
dữ liệu. Điều này nghĩa là ta đánh đồng “gía trị đặc trưng là vắng mặt”
với “gía trị đặc trưng bị thay đổi bởi gía trị đặc trưng ngẫu nhiên từ dữ
liệu.” Từ dữ liệu dạng bảng, hình sau mô phỏng ánh xã từ các liên minh
tới các giá trị đặc trưng:
Hàm hx cho dữ liệu dạng bảng xử lý XC và XS độc lập và tích phân
trong phân phối biên:
Lấy mẫu từ phân phối biên nghĩ là bỏ qua cấu trong phụ thuộc giữa các
đặc trưng có mặt và vắng mặt. KernelSHAP do đó gặp vấn đề tương tự
như tất cả các phương pháp diễn giải dự trên hoán vị. Phép ước tính đặt
quá nhiều trọng số lên các mẫu dữ liệu không chắc chắn. Kết quả có thể
trở nên không tin cậy. Nhưng cần thiết phải lấy mẫu từ phân phối biên.
Nếu các giá trị đặc trưng vắng mặt sẽ được lấy mẫu từ phân phối có điều
kiện, các giá trị kết qủa sẽ không còn là giá trị Shapley. Các kết quả sẽ vi
phạm tiên đề Shapley về Nộm tính, nói rằng một đặc trưng không đóng
góp lên kết quả nên có giá trị Shapley bằng 0.
Hình 5.48: hàm hx ánh xạ một liên minh tới một mẫu dữ liệu hợp lệ. Cho
đặc trưng có mặt (1), hx ánh xạ từ các giá trị đặc trưng cũa x. Cho các đặc
trưng vắng mặt p0q, ánh xạ từ các giá trị của một mẫu dữ liệu lấy mẫu ngẫu
nhiên
Cho các ảnh, hình sau miêu tả một hàm ánh xạ khả thi.
Khác biệt lớn nhất của LIME là trọng số của các mẫu dữ liệu trong mô
hình hồi quy. LIME trọng số hoá các mẫu dữ liệu theo mức độ gần gũi
của chúng với thể hiện ban đầu. Càng nhiều 0 trong vector liên minh,
trọng số trong LIME càng nhỏ. SHAP trọng số hoá các mẫu dự liệu được
lấy mẫu dựa trên trọng lương của liên minh sẽ lấy trong ước tính giá
trị Shapley. Các liên minh nhỏ (ít lượng số 1) và liên minh lớn (nhiều
lượng số 1) có các trọng số lớn nhất. Trực giác là như sau: ta học hầu
hết các đặc trưng riêng lẻ nếu chúng ta học được các ảnh hưởng (effects)
một cách riêng lẻ. Nếu một liên minh chứ một đặc trưng duy nhất, ta có
thể học được ảnh hưởng riêng lẻ chính của các đặc trưng lên dự đoán.
Nếu một liên minh bao gồm tất cả trừ một đặc trưng, ta có thể học ảnh
hưởng toàn phần của các đặc trưng này (ảnh hưởng chính cộng thêm các
tương tác đặc trưng). Nếu một liên minh bào gồm nửa các đặc trưng, ta
học rất ít về đóng góp từng đặc trưng riêng lẻ, vì có thể có nhiều liên
minh khả thi chỉ có một nửa đặc trưng. Để đạt được trọng số tuân thủ
Shapley, Lundberg et. al đề xuất hạt nhận SHAP:
pM ´ 1q
πx pz 1 q “ ` M ˘
|z 1 | |z 1 |pM ´ |z 1 |q
Hình 5.49: Hàm hx ánh xạ các liên minh của siêu pixels(sp) lên các ảnh. Siêu
pixels là nhóm các pixels. Cho giá trị đặc trưng có mặt p1q, hx trả về phần
tương ứng cho ảnh gốc. Cho các giá trị đặc trưng vắng mặt p0q, hx làm xám
đi khu vực tương ứng. Cho trung bình hoá màu của pixel xung quanh hoặc
tương tự cũng là một phương án.n
M
ÿ
1
gpz q “ φ0 ` φj zj1
j“1
Ta huấn luyện mô hình tuyến tính g qua tối ưu hoá hàm mất mát L:
ÿ
Lpf, g, πx q “ rf phx pz 1 qq ´ gpz 1 qs2 πx pz 1 q
z 1 PZ
Với Z là dữ liệu huấn luyện. Đây là tổng sai số bình phương cũ quen
thuộc mà chúng ta thường tối ưu hóa cho các mô hình tuyến tính. Các
hệ số ước tính của mô hình, φj là các giá trị Shapley.
5.10.3 TreeSHAP
Lundberg et. al (2018) đề xuất TreeSHAP, một biến thể của SHAP cho
các mô hình học máy dựa trên cây như cây quyết định, rừng ngẫu nhiên
và cây tăng cường gradient (gradient boosted trees). TreeSHAP được
giới thiệu là một giải pháp thay thế nhanh, theo mô hình cụ thể cho
KernelSHAP, nhưng hóa ra nó có thể tạo ra các thuộc tích (attributions)
về đặc trưng không trực quan.
TreeSHAP xác định hàm giá trị bằng cách sử dụng kỳ vọng có điều
kiện (conditional expectation) EXS |XC pf pxq|xS q thay vì kỳ vọng cận biên
(marginal expectation). Vấn đề với kỳ vọng có điều kiện là các đặc trưng
không có ảnh hưởng lên hàm dự đoán f có thể nhận ước tính TreeSHAP
khác 0. Ước tính khác 0 xảy ra khi đặc trưng tương quan với một đặc
trưng khác mà gây ảnh hưởng thực sự lên dự đoán.
TreeSHAP dùng kỳ vọng có điều kiện EXS |XC pf pxq|xS q để ước lượng các
ảnh hưởng. Ta sẽ cho bạn một số trực giác về các chúng ta tính kì vọng
dự đoán (prediction expectation) cho một cây, một mẫu dữ liệu x và một
tập con đặc trưng S. Nếu ta điều kiện hoá tất cả các đặc trưng – nếu S
là tập tất cả các đặc trưng – phép đặc trưng từ một nút (node) trong đó
mẫu dữ liệu x nằm trong là kỳ vọng dự đoán. Nếu chúng ta không điều
kiện hoá lên bất cứ đặc trưng nào – tập S rỗng – ta sẽ dùng trung bình
trọng số hoá (weighted average) của các dự đoán trong tất cả các nút
đầu cuối (terminal nodes). Nếu S chứa một số, nhưng không phải tất cả,
các đặc trưng, ta bỏ qua các dự đoán của các nút không truy cập được
(unreachable nodes). Không thể truy cập có nghĩa là đường quyết định
(decision path) mà dẫn đến nút này mẫu thuẫn với các gía trị xS . Từ
các nút đầu cuối còn lại, ta trung bình các dự đoán trọng số hoá bằng
kích thước các nút (tức số lượng mẫu huấn luyện trong nút đó). Trung
bình của các nút đầu cuối còn lại, trọng số hoá bằng số lượng mẫu dữ
liệu trên một nút, là kỳ vọng dự đoán cho x với S cho trước. Vấn đề ở
đây là chúng ta phải áp dụng quy trình này cho mỗi tập con các gái trị
đặc trưng S. TreeSHAP tính toán trong thời gian đa thức thay vì theo
cấp số nhân (exponential). Ý tưởng cơ bản là đẩy tất cả các tập con có
thể S xuống cây cùng một lúc. Cho mỗi nút quyết định (decision node)
ta phải theo dỏi chung số lượng các tập con. Điều này phụ thuộc vào các
tập con trong nút cha-mẹ (parent node). Ví dụ khi phần tách (split) đầu
tiên trong một cây là đặc trưng x3, mọi tập con chứa đặc trưng x3 đều
về một nút (nút mà x về). Các tập con không chứa x3 sẽ chuyển đến cả
hai nút với trọng số giảm. Không may các tập con với kích thước khác
nhau có trọng số khác nhau. Thuật toán phải theo dõi trọng số tổng thể
(overall) của các tập con trong một nút. Điều này tăng phức tạp cho
thuật toán. Ta để cho bài báo gốc cho chi tiết về TreeSHAP. Phép tính
toán có thể mở rộng cho nhiều cây hơn: Nhờ vào Cộng tính của các giá trị
Shapley, các giá trị Shapley của một nhóm cây (tree ensemble) là (trọng
số) trung bình của các giá trị Shapley của các cây riêng lẽ.
Tiếp theo, chúng ta sẽ xem xét các cách giải thích SHAP.
Ta huấn luyện một rừng ngẫu nhiên với 100 cây để dự đoán nguy cơ ung
thư cổ tử cung. Chúng ta dùng SHAP để giải thích các dự đoán riêng
lẽ. Ta có thể dùng phương pháp ước tính TreeSHAP nhanh hơn thay vì
KernelSHAP chậm hôn, vì một rừng ngẫu nhiên là một nhóm các cây.
Thay vì dựa vào các phân phối có điều kiện, ví dụ này dùng phân phối
biên. ĐIều này được miêu tả trong gói thư viện mà không phải trong tài
liệu gốc. Hàm Python TreeSHAP chậm hơn với phân phối biên, nhưng
vẫn nhanh hơn KernelSHAP, ví nó tỉ lệ tuyến tính với số lượng hàng
trong dữ liệu.
Bởi vì chúng ta sử dụng phân phối biên ở đây, cách giải thích giống
ở trong chương giá trị Shapley. Nhưng gói Python SHAP có một cách
hình dung khác: bạn có thể hình dung các thuộc tính đặc trưng (feature
attributions) như là các giá trị Shapley làm “các lực” (forces). Mỗi giá
trị đặc trưng là một lực làm tăng hay giảm dự đoán. Dự đoán bắt đầu
từ đường cơ sở (baseline). Đường cơ sở của giá trị Shapley là trung bình
tất cả các dự đoán. Trong phác hoạ, mỗi giá trị Shapley là một mũi tên
đẩy để tăng lên (giá trị dương) hoặc giảm đi (giá trị âm) dự đoán. Các
lực này cân bằng lẫn nhau ở dự đoán thật sự của mẫu huấn luyện.
Hình sau đây cho thấy các phác hoạ lực giải thích SHAP cho hai phụ nữ
trong tập dữ liệu ung thư cổ tử cung:
Đây là các giải thích cho các dự đoán cá nhân.
Giá trị Shapley có thể kết hợp vào các giải thích toàn cục. Nếu ta chạy
SHAP cho mỗi mẫu dữ liệu, ta có ma trận các gái trị Shapley. Ma trận
này gồm một hàng mỗi mẫu dũ liệu và một cột mỗi đặc trưng. Ta có thể
giải thích cả mô hình qua phân tích các giá trị Shapley trong ma trận
này.
Ta bắt đầu với mức quan trọng của đặc trưng SHAP.
Hình 5.50: Giá trị SHAP để giải thích dự đoán xác suất ung thư cho hai cá
nhân. Đường cơ sở – xác suất dự đoán trung bình – là 0.066. Người phụ nữ
đầu có nguy cơ dự đoán thấp với 0.06. Các ảnh hưởng tăng nguy cơ như là
STDs được bỳ đắp bằng các ảnh hưởng giảm như là tuổi. Người phụ nữ thứ
hai có nguy cơ dự đoán cao với 0.71. Tuổi 51 và với 34 năm hút thuốc làm
tăng nguy cơ ung thư dự đoán.
Ý tưởng đằng sau SHAP feature importance khá đơn giản: Các đặc trưng
với gía trị tuyệt đối Shapley cao rất quan trọng. Vì chúng ta muốn mức
quan trọng toàn cục (global importance), ta trung bình các giá trị tuyệt
đối Shapley với mỗi đặc trưng xuyên suốt các dữ liệu:
n
ÿ piq
Ij “ |φj |
i“1
Tiếp theo, ta sắp xếp các đặc trưng giảm dần theo độ quan trọng và phác
hoạ chúng. Hình dưới đây cho thấy mức quan trọng gía trị SHAP cho
huấn luyện rừng ngẫu nhiên trước đó để dự đoán ung thư cổ tử cung.
Hình 5.51: Mức quan trọng của đặc trưng SHAP được đo bằng trung bình
giá trị tuyệt đối Shapley. Số năm sử dụng các biện pháp tránh thai nội tiết tố
là đặc trưng quan trọng nhất, thay đổi xác suất ung thư tuyệt đối dự đoán
trên trung bình 2.4 điểm phần trăm (0.024 trên trục x).
Mức quan trọng của đặc trưng SHAP là một thay thế cho tầm quan
trọng của đặc trưng hoán vị. Có một sự khác biệt lớn giữa cả hai mức
đo độ quan trọng (important measures): Mức quan trọng của đặc trưng
hoán vị dựa trên sự giảm hiệu suất của mô hình. SHAP dựa trên mức
của các thuộc tính đặc trưng (feature attributions).
Đồ thị mức quan trọng đặc trưng hữu ích, nhưng không chứa thông tin
khác ngoài các mức quan trọng.
Phác hoạ tổng quan kết hợp mức quan trọng với các ảnh hưởng đặc
trưng. Mỗi điểm trong phác hoạ tổng quan là một giá trị Shapley cho
một đặc trưng và một mẫu dữ liệu. Vị trí trên trục y được quyết định
bởi đặc trưng và trên trục x qua giá trị Shapley. Màu thể hiện giá trị
của đặc trưng từ thấp tới bé. Các điểm chồng (overlapping points) lộn
xộn ở hướng trục y, nên ta hiểu được phân phối của các giá trị Shapley
trên mỗi đặc trưng. Các đặc trưng được sắp xếp theo mức quan trọng
của chúng.
Hình 5.52: Phác hoạ tổng quan SHAP. Ít năm dùng các biện pháp tránh thai
nội tiết tố thì giảm nguy cơ ung thư dự đoán, nhưng nhiều năm hơn thì sẽ
tăng nguy cơ. Các ảnh hưởng thường mô tả hành vi của mô hình và không
nhất thiết phải thông dụng trong thế giới thực.
Trong phác hoạ tổng quan, chúng ta thấy những dấu hiệu đầu tiên về
mối quan hệ của một đặc trưng và ảnh hưởng lên dự đoán. Nhưng để
thấy hình thức chính xác của mối quan hệ này, ta phải nhìn qua các phác
hoạ phụ thuộc SHAP.
Các phác hoạ phụ thuộc SHAP có thể là phác hoạ giải thích toàn cục đơn
giản nhất (simplest global intepretation plot): 1) Chọn một đặc trưng.
2) VỚi mỗi mẫu dữ liệu, phác hoạ một điểm với giá trị đặc trưng trên
trục x và giá trị Shapley tương ứng trên trục y. 3) Đã xong.
piq piq
Về mặt toán học, phác hoạ chứa các điểm sau: tpxj , φj quni“1 . Hình sau
cho thấy sự phụ thuộc đặc trưng SHAP trong nhiều năm vào các biện
pháp tránh thai nội tiết tố:
Hình 5.53: Phác hoạ phụ thuộc riêng SHAP cho nhiều năm vào các biện pháp
tránh thai nội tiết tố. So với 0 năm, một vài năm làm thấp hơn xác suất dự
đoán và số năm làm tăng xác suất ung thư dự đoán.
Các phác hoạ phụ thuộc SHAP là thay thế cho phác hoạ phụ thuộc riêng
(PDP) và các phác họa tích lũy ảnh hưởng cục bộ (ALE). Trong khi PDP
và ALE cho thấy các ảnh hưởng trung bình, phác hoạ phụ thuộc SHAP
cũng cho thấy phương sai trên trục y. Đặc biệt trong trường hợp tương
tác, phác hoạ phụ thuộc SHAP sẽ phân tán nhiều hơn trong trục y. Phác
hoạ phụ thuộc có thể cải thiện bằng cách làm nổi bật các tương tác đặc
trưng.
5.10.8 Giá trị tương tác SHAP (5.10.8 SHAP Inter-
action Values):
Ảnh hưởng tương tác (interaction effect) là ảnh hưởng đặc trưng kết hợp
bổ sung (additional combined feature effect) sau khi tính đến các hiệu
ứng đặc trưng riêng lẻ. Chỉ số tương tác Shapley (Shapley interaction
index) từ lý thuyết trò chơi được định nghĩa là:
ÿ |S|!pM ´ |S| ´ 2q!
φi,j “ δij pSq
2pM ´ 1q!
SĎzti,ju
Với i ‰ j và:
Công thức này trừ đi ảnh hưởng chính của các đặc trưng khi tính đến
các ảnh hưởng riêng lẻ để thu được ảnh hưởng đặc trưng thuần tuý. Ta
lấy trung bình tất cả khác liên minh đặc trưng có thể S, như trong phép
tính giá trị Shapley. Khi ta tính các giá trị tương tác SHAP cho tất cả
đặc trưng, ta thu về một đặc trưng trên một mẫu dữ liệu với kích thước
M ˆ M , với M là số lượng các đặc trưng.
Đây là các phác hoạ “lực” (force plots), với mỗi phác hoạ giải thích dự
đoán trên một mấu dữ liệu. Ta xoay các biểu đồ lực theo chiều dọc và
đặt chúng cạnh nhau theo như sự giống nhau từ phân cụm.
5.10.9 Ưu điểm
Vì SHAP tính toán các giá trị Shapley nên nó có tất cả các ưu điểm của
Shapley: SHAP có nền tảng lý thuyết vững chắc trong lý thuyết trò
chơi. Dự đoán được phân phối công bằng giữa các giá trị đặc trưng.
Ta thu được các giải thích trái ngược nhau (contrasive explanantions)
mà so sánh dự đoán với trung bình dự đoán.
SHAP kết nối LIME và các giá trị Shapley. Điều này rất cần thiết
để hiểu thêm cả hai phương pháp. Điều này giúp thống nhất ngành học
máy khả giải thích.
Hình 5.54: Phác hoá phụ thuộc đặc trưng SHAP với tương tác trực quan
hoá. Nhiều năm dùng biện pháp tránh thai nội tiết tố có tương tác với STDs.
Trong những trường hợp gần với 0 năm, sự xuất hiện của STD làm tăng nguy
cơ ung thư dự đoán. Một lần nữa, đây không phải mô hình nhân quả. Các
hiệu ứng có thể do nhiễu rối (confounding) (ví dụ STDs và nguy cơ ung thư
thấp có thể tương quan với đi khám bác sĩ nhiều hơn).
SHAP triển khai nhanh chóng cho cách mô hình dựa trên cây.
Ta tin rằng đây là chìa khoá cho sự phổ biến của SHAP, vì rào cản lớn
nhất cho áp dụng các giá trị Shapley là sự tính toán chậm.
Việc tính toán nhanh giúp khả thi việc tính nhiều các giá trị Shapley
cần thiết cho các diễn giải mô hình toàn cục (global intepretation
models). Các phương pháp diễn giải toàn cục gồm mức quan trọng của
đặc trưng, tính phụ thuộc đặc trưng, các tương tác, phân cụm và các
phác hoạ tổng quan, vì các giá trị Shapley là “đơn vị nguyên tử” cho các
diễn giải toàn cầu. Nếu bạn dùng LIME cho giải thích cục bộ và phác
hoạ phụ thuộc riêng chung với mức quan trọng hoán vị đặc trưng cho
giải thích toàn cục, bạn đã thiếu nền tảng chung.
Hình 5.55: Các giải thích SHAP chồng lên nhau được phân cụm theo tính
tương đồng khi khả giải thích. Mỗi vị trí trên trục x là một mẫu dữ liệu
của dữ liệu. Giá trị SHAP màu đỏ làm tăng dự đoán, giá trị màu xanh làm
giảm dự đoán. Có một cụm nổi bật: Bên phải là một nhóm có nguy cơ ung
thư dự đoán cao.
KernelSHAP chậm. Điều này làm KernelSHAP phi thực tế khi bạn
muốn tính toán giá trị Shapley cho nhiều điểm dữ liệu. Ngoài ra các
phương pháp SHAP toàn cục như là mức độ quan trọng đặc trưng SHAP
yêu cầu tính các gía trị Shapley cho rất nhiều điểm dữ liệu.
KernelSHAP bỏ qua sự phụ thuộc đặc trưng. Hầu hết các phương
pháp diễn giải dự trên hoán vị có vấn đề này. Qua thay đổi các giá trị
đặc trưng với các giá trị từ các mẫu dự liệu ngẫu nhiên, thường sẽ dễ
hơn để lấy mẫu ngẫu nhiên từ phân phối biên. Tuy nhiên, nếu các đặc
trưng phụ thuộc, tức tương quan, điều này dẫn đến đặt quá nhiều trọng
số lên các điểm dữ liệu không khả thi. TreeSHAP giải quyết vấn đề này
qua mô hình hoá cụ thể dự đoán kỳ vọng có điều kiện.
TreeSHAP có thể tạo ra các thuộc tính đặc trưng không trực
quan. Khi TreeSHAP giải quyết vấn đề ngoại suy (extrapolating) tới các
điểm dữ liệu không khả thi, nó thêm vào một vấn đề mới. TreeSHAP
thay đổi hàm giá trị bằng cách dựa vào dự đoán kỳ vọng có điều kiện.
Thay đổi hàm giá trị làm các đặc trưng mà không ảnh hưởng lên dự đoán
có thể nhận giá trị TreeSHAP khác 0.
Những nhược điểm của giá trị Shapley cũng áp dụng cho SHAP: Giá trị
Shapley có thể bị hiểu sai và cần có quyền truy cập dữ liệu để tính toán
chúng cho dữ liệu mới (ngoại trừ TreeSHAP).
Các tác giả đã triển khai SHAP trong gói Python shap. Việc triển khai
này hoạt động với các mô hình dựa trên cây trong thư viện học máy
scikit-learn cho Python. Gói shap cũng được dùng cho các ví dụ trong
chương này. SHAP được tích hợp vào các cơ chế tăng cường cây xgboost
và LightGBM. Trong R có các gói shapper và fastshap. SHAP cũng được
bao gồm trong gói R xgboost.
Chương 6
252
Một bác sĩ trông thấy một bệnh nhân có triệu chứng ho và sốt nhẹ một
cách không bình thường. Các triệu chứng này làm bác sĩ nhớ tới một bệnh
nhân khác của cô ta vài năm về trước với các triệu chứng tương tự. Cô ấy
nghi ngờ rằng bệnh nhân hiện tại có thể có cùng bệnh và cô ấy lấy mẫu máu
của bệnh nhân để xét nghiệm.
Một nhà khoa học dữ liệu làm việc với một dự án mới cho một trong
những khách hàng của anh ta: Phân tích các nhân tố nguy hiểm dẫn đến
lỗi hoạt động của một máy sản xuất bàn phím. Nhà khoa học dữ liệu nhớ
rằng một dự án tương tự anh ta đã làm và tái sử dụng một số phần của mã
code từ dự án cũ đó bởi vì anh ta nghĩ rằng khách hàng muốn kiểu phân tích
tương tự.
Một chú mèo con ngồi bên cửa sổ của một ngôi nhà hoang đang bị cháy.
Lính cứu hỏa vừa tới nơi và một trong số họ suy nghĩ có nên lao vào đống
lửa để cứu chú mèo hay không. Anh ta nhớ một số trường hợp tương tự mà
anh ta đã chứng kiến: các ngôi nhà gỗ cũ kĩ thường cháy âm ỉ và sẽ dễ dàng
sập xuống bất cứ lúc nào. Bởi vậy, anh ta quyết định không lao vào, bởi vì
nguy cơ là quá lớn. May mắn rằng, chú mèo đã nhảy ra khỏi cửa sổ và an
toàn, cũng như không ai bị thương.
Những câu chuyện trên phản ánh cách con người chúng ta suy nghĩ trong
các trường hợp thực tế. Đại thể của phương pháp giải thích dựa trên mẫu
dữ liệu đó là: B giống với A và A dẫn đến Y, do đó tôi dự đoán rằng B cũng
sẽ dẫn đến Y. Ta có thể thấy điều này với một số phương pháp học máy.
Các cây quyết định phân tách dữ liệu thành các nốt dựa trên điểm tương
đồng giữa các mẫu dữ liệu dựa vào các đặc trưng quan trọng cho việc dự
đoán mục tiêu. Một cây quyết định tạo ra dự đoán cho một mẫu dữ liệu mới
bằng cách tìm ra các mẫu dữ liệu tương đồng (tương đương với nốt cuối -
terminal node) và trả về giá trị đầu ra trung bình của các mẫu dữ liệu đó
như là các dự đoán. Với một mẫu dữ liệu mới, một mô hình k hàng xóm gần
nhất (knn) định vị k hàng xóm gần nhất và trả về giá trị đầu ra trung bình
của các hàng xóm như là dự đoán. Kết quả của một thuật toán k hàng xóm
gần nhất có thể được giải thích bằng cách diễn giải k hàng xóm, và điều này,
một lần nữa, chỉ có ý nghĩa nếu ta có thể biểu diễn chúng theo cách mà con
người có thể hiểu được.
Chương này bao gồm các phương pháp giải thích dựa trên mẫu dữ liệu:
- Giải thích phản chứng (counterfactual explanations): Cho ta biết mẫu
dữ liệu cần thay đổi như thế nào để đầu ra cũng bị thay đổi. Bằng cách tạo
ra các mẫu dữ liệu phản chứng, ta biết mô hình tạo ra dự đoán như thế nào
và có thể giải thích cho các dự đoán riêng rẽ.
- Các mẫu dữ liệu đối kháng (adversarial examples): Là các phản chứng
dùng để đánh lừa các mô hình học máy. Phần này tập trung vào việc thay
đổi dự đoán và không đi kèm giải thích.
- Nguyên mẫu (prototypes): Là việc lựa chọn ra các mẫu dữ liệu đại diện
từ một tập dữ liệu và ngoại lại (criticisms) là các mẫu dữ liệu không được
bao hàm bởi các nguyên mẫu.
- Các mẫu dữ liệu có ảnh hưởng (influential instances): Là các mẫu dữ
liệu quan trọng bậc nhất cho các tham số của một mô hình hoặc dự đoán.
Việc xác định và phân tích các mẫu dữ liệu này giúp ta hiểu được các vấn đề
trong tập dữ liệu, gỡ rối mô hình và nắm bắt hành vi của mô hình tốt hơn.
- Mô hình k hàng xóm gần nhất (k-nearest neighbors model): Là một
dạng mô hình học máy khả diễn giải dựa trên các mẫu dữ liệu.
được dự đoán có thể không phải là mối quan hệ nhân quả, chúng ta có thể
xem đầu vào của một mô hình là nguyên nhân của dự đoán.
Với biểu đồ đơn giản này, thật dễ dàng để xem làm thế nào chúng ta có
thể mô phỏng các phản chứng cho dự đoán của các mô hình học máy: Chúng
ta chỉ cần thay đổi các giá trị đặc trưng của một thể hiện (instance) trước khi
đưa ra dự đoán và chúng ta phân tích dự đoán thay đổi như thế nào. Chúng
ta quan tâm đến các kịch bản trong đó dự đoán thay đổi theo cách có liên
quan, như lật (flip) trong lớp dự đoán (ví dụ: đơn tín dụng được chấp nhận
thành từ chối) hoặc trong đó dự đoán đạt đến ngưỡng nhất định (ví dụ: xác
suất ung thư đạt 10%). Một giải thích phản chứng của dự đoán mô tả
sự thay đổi nhỏ nhất trên các giá trị đặc trưng nhằm thay đổi dự
đoán thành một giá trị được định trước.
Có cả phương pháp giải thích phản chứng dạng mô hình mẫu (model-
agnostic) và mô hình cụ thể (model-specific), nhưng trong chương này chúng
ta chỉ tập trung vào các phương pháp mô hình mẫu - chỉ yêu cầu đầu vào
và đầu ra (chứ không cần biết cấu trúc bên trong của các mô hình cụ thể).
Các phương pháp này cũng sẽ tương tự chương mô hình mẫu, vì cách diễn
giải có thể được biểu thị dưới dạng tóm tắt các sự khác biệt trong các giá
trị đặc trưng (“thay đổi đặc trưng A và B để thay đổi dự đoán”). Nhưng một
giải thích phản chứng tự nó là một mẫu dữ liệu mới, vì vậy nó nằm trong
chương này (“bắt đầu từ thể hiện X, thay đổi A và B để có được một thể
hiện phản chứng). Không giống như các nguyên mẫu (prototypes), các phản
chứng không nhất thiết phải là các mẫu dữ liệu thực tế từ dữ liệu huấn luyện,
mà có thể là một tổ hợp mới của các giá trị đặc trưng.
Trước khi thảo luận cách tạo nên các phản chứng, tôi muốn đề cập tới
một số công dụng của phản chứng và một phản chứng được coi là tốt khi
nào?
Trong ví dụ đầu tiên, Peter nộp đơn vay và bị từ chối bởi một phần mềm
ngân hàng (chạy bởi học máy). Anh ấy tự hỏi tại sao đơn đăng ký của mình
bị từ chối và làm thế nào để anh ấy có thể cải thiện cơ hội được vay. Câu hỏi
“tại sao” có thể được hình thành như một phản chứng: Thay đổi nhỏ nhất
đối với các đặc trưng (thu nhập, số thẻ tín dụng, độ tuổi, ...) sẽ thay đổi dự
đoán từ bị từ chối thành được chấp thuận là gì? Một câu trả lời có thể là:
Nếu Peter kiếm được thêm 10.000 Euro mỗi năm, thì anh ta sẽ được vay.
Hoặc nếu Peter có ít thẻ tín dụng hơn và không bị vỡ nợ cách đây 5 năm,
anh ta sẽ được vay. Peter sẽ không bao giờ biết lý do từ chối, vì ngân hàng
không quan tâm đến sự minh bạch, nhưng đó là một câu chuyện khác.
Trong ví dụ thứ hai, ta muốn giải thích một mô hình dự đoán một đầu
ra có giá trị liên tục với các giải thích phản chứng. Anna muốn cho thuê căn
hộ của mình, nhưng cô không chắc phải đòi bao nhiêu cho căn hộ đó, vì vậy
cô quyết định huấn luyện một mô hình học máy để dự đoán giá thuê. Tất
nhiên, vì Anna là một nhà khoa học dữ liệu, đó là cách cô ấy giải quyết vấn
đề của mình. Sau khi nhập tất cả các thông tin chi tiết về kích thước, vị trí,
vật nuôi có được phép nuôi hay không, v.v., mô hình nói với cô ấy rằng cô ấy
có thể tính phí 900 Euro. Cô ấy mong đợi từ 1000 Euro trở lên, nhưng cô ấy
tin tưởng mô hình của mình và quyết định thay đổi các giá trị đặc trưng của
căn hộ để xem cô ấy có thể cải thiện giá trị của căn hộ như thế nào. Cô phát
hiện ra rằng căn hộ có thể được cho thuê với giá hơn 1000 Euro, nếu nó lớn
hơn 15 m2. Rất thú vị nhưng không thể thực hiện được, bởi vì cô ấy không
thể mở rộng căn hộ của mình. Cuối cùng, bằng cách chỉ điều chỉnh các giá
trị tính năng trong tầm kiểm soát của cô ấy (bếp tích hợp có / không, vật
nuôi được phép có / không, loại sàn, v.v.), cô ấy phát hiện ra rằng nếu cô ấy
cho phép vật nuôi và cài đặt cửa sổ có cách nhiệt tốt hơn, cô ấy có thể tính
phí 1000 Euro. Anna đã bằng cách nào đó làm việc với các phản chứng để
thay đổi kết quả.
Phản chứng là những giải thích thân thiện với con người, bởi vì chúng
trái ngược với thực tế hiện tại và vì chúng có tính chọn lọc, có nghĩa là chúng
thường tập trung vào một số thay đổi nhỏ về tính năng. Nhưng phản chứng
lại bị “hiệu ứng Rashomon”. Rashomon là một bộ phim Nhật Bản kể về vụ
giết hại một Samurai do những người khác nhau kể lại. Mỗi câu chuyện giải
thích kết quả tốt như nhau, nhưng các câu chuyện mâu thuẫn với nhau. Điều
tương tự cũng có thể xảy ra với các phản chứng, vì thường có nhiều cách
giải thích phản chứng khác nhau. Mỗi phản chứng kể một “câu chuyện” khác
nhau về cách đạt được một kết quả nhất định. Một phản chứng có thể nói
thay đổi đặc điểm A, phản chứng khác có thể nói giữ nguyên A nhưng thay
đổi đặc điểm B, đó là một mâu thuẫn. Vấn đề này có thể được giải quyết
bằng cách trình bày tất cả các giải thích phản chứng hoặc dùng một tiêu chí
để đánh giá các phản chứng và chọn giải thích tốt nhất.
Nói về tiêu chí, làm thế nào để chúng ta định nghĩa một giải thích phản
chứng là tốt? Đầu tiên, người sử dụng giải thích phản chứng xác định sự
thay đổi có liên quan trong dự đoán của một mẫu dữ liệu (thực tế ngược -
alternative reality). Một yêu cầu đầu tiên rõ ràng là ta cần một phản chứng
tạo ra dự đoán càng gần với đầu ra định trước càng tốt. Không phải
lúc nào bạn cũng có thể tìm ra phản chứng với đầu ra cho trước. Ví dụ, trong
bài toán phân loại có hai lớp, một lớp hiếm và một lớp phổ thông, mô hình
có thể luôn phân loại một đầu vào là lớp phổ thông. Việc thay đổi các giá
trị tính năng sao cho nhãn được dự đoán sẽ chuyển từ lớp phổ thông sang
lớp hiếm có thể là điều không thể. Do đó, ta muốn nới lỏng yêu cầu rằng dự
đoán phản chứng tế phải khớp chính xác với kết quả được xác định trước.
Trong ví dụ phân loại, chúng ta có thể tìm ra một phản chứng trong đó xác
suất dự đoán của loại hiếm được tăng lên 10% thay vì 2% hiện tại. Câu hỏi
đặt ra là, những thay đổi tối thiểu nào trong các tính năng để xác suất dự
đoán thay đổi từ 2% thành 10% (hoặc gần 10%)? Một tiêu chí chất lượng
khác là phản chứng phải tương đồng nhất có thể với với mẫu dữ liệu
gốc về mặt giá trị đặc trưng. Khoảng cách giữa phản chứng và mẫu dữ
liệu gốc có thể được đo, ví dụ, với khoảng cách Manhattan hoặc khoảng cách
Gower nếu ta có cả các đặc trưng rời rạc và liên tục. Phản chứng không chỉ
nên gần với mẫu dữ liệu gốc mà còn đòi hỏi thay đổi càng ít đặc trưng
càng tốt. Để tính toán chất lượng của một giải thích phản chứng bằng một
thông số cụ thể, ta có thể đơn giản đếm số lượng đặc trưng bị thay đổi, hoặc
dùng giá trị khoảng L0 (chuẩn) giữa phản chứng và mẫu dữ liệu gốc. Thứ ba,
ta thường mong muốn tạo ra nhiều giải thích phản chứng đa dạng để
chủ thể quyết định có thể tiếp cận với nhiều cách khả thi để tạo ra một kết
quả định trước. Ví dụ, tiếp tục ví dụ về khoản vay của, một giải thích phảng
chứng có thể đề xuất tăng gấp đôi thu nhập để được vay, trong khi một giải
thích khác có thể gợi ý chuyển đến một thành phố lân cận và tăng thu nhập
lên một khoản nhỏ để được vay. Có thể lưu ý rằng mặc dù phản chứng đầu
tiên có thể thực hiện được đối với một số người, nhưng phản chứng thứ hai
sẽ khả dĩ hơn rất nhiều. Do đó, bên cạnh việc cung cấp cho chủ thể quyết
định những cách thức khác nhau để có được kết quả mong muốn, sự đa dạng
còn cho phép các cá nhân “đa dạng” thay đổi các đặc trưng thuận tiện cho
họ. Yêu cầu cuối cùng là một phản chứng phải có các giá trị đặc trưng
hợp lý. Sẽ là phi lý nếu tạo ra một giải thích phản chứng cho ví dụ về giá
thuê trong đó diện tích căn hộ là âm hoặc số phòng được đặt thành 200.
Thậm chí còn tốt hơn nếu phản chứng có thể tuân theo phân phối chung của
dữ liệu, ví dụ, một căn hộ có 10 phòng và 20 m2 không nên được coi là phản
chứng (vì diện tích phòng quá nhỏ). Tốt nhất, nếu số mét vuông được tăng
lên, thì việc tăng số lượng phòng cũng nên được đề xuất.
Tổng khoảng cách là tổng của tất cả p khoảng cách theo đặc trưng, tức
là sự khác biệt tuyệt đối của các giá trị đặc trưng giữa mẫu x và mẫu x1 . Các
khoảng cách theo đặc trưng được chia tỷ lệ bởi nghịch đảo của độ lệch tuyệt
đối trung vị của đặc trưng j trên toàn tập dữ liệu được xác định là:
|fˆpx1 q ´ y 1 | ď
Để tối ưu hàm mất mát này, có thể sử dụng bất kỳ thuật toán tối ưu hóa
phù hợp nào, chẳng hạn như Nelder-Mead. Nếu ta có thể tiếp cận gradient
của mô hình học máy, ta có thể sử dụng các phương pháp tối ưu dựa trên
gradient như ADAM. Mẫu x được giải thích, đầu ra mong muốn y 1 và tham
số dung sai phải được xác định trước. Hàm mất mát được tối ưu để tìm ra
x1 khi tăng giá trị λ cho đến khi đầu ra nằm giá khoảng giá trị mong muốn
(= trong tham số dung sai):
arg min
1
max Lpx, x1 , y 1 , λq.
x λ
Mỗi hàm mất mát từ o1 tới o4 tương ứng với một trong 4 tiêu chí nêu
trên. Hàm mất mát đầu tiên o1 phản ánh tiêu chí rằng dự đoán trên phản
chứng x1 nên gần giống với giá trị y 1 mong muốn. Do đó, ta cần tối ưu khoảng
cách giữa fˆpx1 q và y 1 . Ở đây ta sử dụng công thức Manhattan (chuẩn L1 ).
$
&0 if fˆpx1 q P y 1
o1 pfˆpx q, y q “
1 1
% inf
1 1
|fˆpx1 q ´ y 1 | else
y Py
Hàm mục tiêu o2 phản ánh rằng phản chứng của ta nên gần giống với
mẫu dữ liệu x. Điều này được thể hiện bởi khoảng cách giữa x1 và x theo
khoảng cách Gower:
p
1 1ÿ
o2 px, x q “ δG pxj , x1j q
p j“1
với p là số lượng đặc trưng. Giá trị δG phụ thuộc vào loại đặc trưng của
xj :
$
& 1 |xj ´ x1 | if xj numerical
j
δG pxj , xj q “ Rj
1 p
%I
xj ‰x1j if xj categorical
Bằng cách tối ưu o3 , ta hướng tới tiêu chí thứ ba - số lượng đặc trưng bị
thay đổi ít.
Hàm mục tiêu thứ tư o4 phản ánh rằng phản chứng của ta nên có các giá
trị đặc trưng hoặc các tổ hợp hợp lý. Ta có thể tính toán “độ hợp lý” của một
mẫu dữ liệu bằng cách sử dụng tập huấn luyện hoặc một tập dữ liệu bất kỳ.
Đặt tập dữ liệu này tên là X obs . Như một phép xấp xỉ độ hợp lý (likelihood),
o4 tính toán khoảng cách Gower trung bình giữa x1 và mẫu dữ liệu quan sát
gần nhất xr1s P X obs .
p
1 1ÿ
obs r1s
o4 px , X q “ δG px1j , xj q
p j“1
So sánh với phương pháp của Wachter et al. thì Lpx, x1 , y 1 , X obs q không
có tham số cân bằng λ. Ta không muốn gộp cả bốn hàm mục tiêu này thành
một bằng cách cộng tổng và nhân trọng số chúng, điều ta muốn là tối ưu tất
cả bốn hàm mục tiêu này cùng một lúc.
Làm thế nào chúng ta có thể làm được điều đó? Ta sử dụng thuật toán di
truyền sắp xếp không thống trị (Nondominated Sorting Genetic Algorithm)
hoặc ngắn gọn hơn là NSGA-II. NSGA-II là một thuật toán lấy cảm hứng
từ việc áp dụng định luật của Darwin về chọn lọc tự nhiên (survival of the
fittest). Ta biểu diễn mức độ “mạnh” của một phản chứng bằng một vectơ
chứa giá trị của các hàm mục tiêu po1 , o2 , o3 , o4 q. Phản chứng càng có giá trị
vector thấp thì nó càng mạnh.
Thuật toán bao gồm bốn bước lặp đi lặp lại cho tới khi các với điều kiện
nhất định (ví dụ số lượng vòng lặp/tạo). Hình sau đây trực quan hóa 4 bước
cho việc tạo ra phản chứng.
Hình 6.2: Các bước tạo ra phản chứng sử dụng thuật toán NSGA-II.
Trong lần tạo phản chứng thứ nhất, một nhóm các ứng viên cho phản
chứng được khởi tạo bằng cách thay đổi ngẫu nhiên một số đặc trưng so với
mẫu x đang được giải thích. Theo ví dụ về tín dụng ở trên, một phản chứng
có thể đề xuất tăng thu nhập thêm 30.000 Euro trong khi một đối tượng
khác đề xuất không có vỡ nợ trong 5 năm qua và giảm 10 tuổi. Tất cả các
giá trị đặc trưng khác đều bằng giá trị của x. Mỗi ứng viên sau đó được đánh
giá bằng cách sử dụng bốn hàm mục tiêu ở trên. Trong số đó, ta chọn ngẫu
nhiên một số ứng viên, trong đó các ứng viên có độ mạnh lớn hơn có nhiều
khả năng được chọn hơn. Các ứng cử viên được kết hợp lại theo cặp để tạo
ra những phản chứng con giống với chúng bằng cách lấy trung bình các giá
trị đặc trưng số của chúng hoặc bằng cách loại bỏ các đặc trưng dạng hạng
mục. Ngoài ra, ta thay đổi một chút các giá trị đặc trưng của phản chứng
con để khám phá toàn bộ không gian đặc trưng.
Từ hai nhóm được sinh ra, gồm một phản chứng cha và một phản chứng
con, ta chỉ muốn một nửa tốt nhất bằng cách sử dụng hai thuật toán sắp xếp.
Thuật toán sắp xếp NSGA sắp xếp các ứng viên theo các giá trị của hàm mục
tiêu po1 , o2 , o3 , o4 q (objective values) của chúng. Nếu các ứng viên mạnh như
nhau, thuật toán phân bố đều mật độ ước lượng (crowding distance sorting
algorithm) sẽ sắp xếp các ứng viên theo mức độ đa dạng của chúng.
Với kết quả của hai thuật toán sắp xếp, ta chọn một nửa lượng ứng cử
viên có triển vọng nhất và/hoặc đa dạng nhất. Ta lại sử dụng tập ứng viên
này cho lần tạo phản chứng tiếp theo và bắt đầu lại với quá trình chọn lọc,
tái tổ hợp và biến đổi. Bằng cách lặp đi lặp lại các bước, ta hy vọng sẽ có
được một tập hợp đa dạng các ứng viên triển vọng với giá trị của hàm mục
tiêu thấp. Từ bộ này, ta có thể chọn những phản chứng mà ta hài lòng nhất
hoặc có thể đưa ra một bản tóm tắt về tất cả các phản chứng bằng cách đánh
dấu những tính năng nào và tần suất đã được thay đổi.
6.1.2 Ví dụ
Ví dụ dưới đây dựa trên ví dụ về điểm tín dụng trong Dandl et al. (2020).
Tập dữ liệu German Credit có thể được tìm thấy tại trang Kaggle. Các tác
giả đã huấn luyện một mô hình SVM với nhân bán kính cơ sở (radial basis
kernel) để dự đoán độ rủi ro tín dụng của một khách hàng. Tập dữ liệu này
có 522 mẫu hoàn chỉnh và 9 đặc trưng chứa thông tin tín dụng và khách
hàng. Mục tiêu là tìm ra các giải thích phản chứng (counterfactual) cho một
khách hàng với các giá trị đặc trưng trong bảng 6.1.
Bảng 6.1: Giá trị đặc trưng của một mẫu dữ liệu.
age sex job housing savings checking amount duration purpose
58 f unskilled free little little 6143 48 car
Mô hình SVM dự đoán rằng phụ nữ có rủi ro tín dụng thấp với xác suất
24,2%. Các phản chứng nên trả lời câu hỏi: Các đặc trưng đầu vào cần phải
thay đổi như thế nào để có xác suất dự đoán lớn hơn 50%? Bảng 6.2 chứa 10
phản chứng tốt nhất:
Năm cột đầu tiên chứa các đề xuất thay đổi đặc trưng (chỉ các đặc trưng
đã thay đổi được hiển thị), ba cột tiếp theo hiển thị các giá trị của hàm mục
tiêu (objective values) (o1 bằng 0 trong mọi trường hợp) và cột cuối cùng
hiển thị xác suất dự đoán.
Tất cả các phản chứng đều có xác suất dự đoán lớn hơn 50% và không
chi phối lẫn nhau. Sự không chi phối (non-dominated) có nghĩa là không có
phản chứng nào mà giá trị của cả 4 hàm mục tiêu đều nhỏ hơn 4 giá trị tương
ứng của một phản chứng khác. Chúng ta có thể coi các phản chứng như một
tập hợp các giải pháp mang tính đánh đổi (trade-off solutions).
Tất cả đều đề xuất giảm thời hạn từ 48 tháng xuống tối thiểu 23 tháng,
một số đề xuất rằng người vay nên có tay nghề cao. Một số phản chứng còn
đề nghị thay đổi giới tính từ nữ sang nam, cho thấy mô hình thiên vị giới
tính. Sự thay đổi này luôn đi kèm với việc giảm tuổi trong khoảng từ 1 đến
Bảng 6.2: 10 phản chứng tốt nhất.
age sex job amount duration o2 o3 o4 fˆpx1 q
skilled -20 0.108 2 0.036 0.501
skilled -24 0.114 2 0.029 0.525
skilled -22 0.111 2 0.033 0.513
-6 skilled -24 0.126 3 0.018 0.505
-3 skilled -24 0.120 3 0.024 0.515
-1 skilled -24 0.116 3 0.027 0.522
-3 m -24 0.195 3 0.012 0.501
-6 m -25 0.202 3 0.011 0.501
-30 m skilled -24 0.285 4 0.005 0.590
-4 m -1254 -24 0.204 4 0.002 0.506
30 tuổi. Chúng ta có thể thấy mặc dù một số phản chứng đề xuất thay đổi
đối với cả 4 đặc trưng, nhưng các phản chứng này rất gần với mẫu ta đang
xét trong bảng 6.1.
6.1.3 Ưu điểm
Việc giải thích bằng phản chứng rất rõ ràng. Nếu các giá trị đặc
trưng của một đối tượng được thay đổi theo phản chứng, thì dự đoán sẽ thay
đổi thành dự đoán đã xác định trước (predefined prediction). Do không có
thêm giả định, mô hình không có rủi ro như các phương pháp như LIME,
trong đó chúng ta không rõ chúng ta nên ngoại suy mô hình cục bộ bao xa
để tạo tính khả giải thích.
Phương pháp phản chứng tạo ra một mẫu dữ liệu (instance) mới, nhưng
ta cũng có thể tổng quan hóa một phản chứng thông qua các đặc trưng đã bị
thay đổi. Điều này cung cấp hai lựa chọn cho việc diễn giải kết quả. Ta
có thể diễn giải mẫu dữ liệu phản chứng hoặc đánh dấu các đặc trưng nào
đã được thay đổi giữa mẫu dữ liệu quan tâm và mẫu dữ liệu phản chứng.
Phương pháp phản chứng không yêu cầu quyền truy cập vào dữ
liệu hoặc mô hình. Nó chỉ yêu cầu truy nhập vào hàm dự đoán của mô
hình. Ví dụ, hàm dự đoán hoạt động thông qua API web. Điều này có ích cho
các công ty được kiểm toán bởi bên thứ ba hoặc giải thích cho người dùng
mà không tiết lộ mô hình hoặc dữ liệu. Công ty quan tâm đến việc bảo vệ mô
hình và dữ liệu vì bí mật thương mại hoặc lý do bảo vệ dữ liệu. Giải thích
phản chứng đưa ra sự cân bằng giữa giải thích các dự đoán của mô hình và
bảo vệ lợi ích của chủ sỡ hữu mô hình.
Phương pháp này cũng hoạt động với các hệ thống không sử
dụng học máy. Chúng ta có thể tạo phản chứng cho bất kỳ hệ thống nào
nhận đầu vào và trả đầu ra. Hệ thống dự đoán giá thuê căn hộ cũng bao gồm
các đặc trưng thủ công và các giải thích phản chứng vẫn hoạt động được tốt.
Phương pháp giải thích phản chứng tương đối dễ thực hiện. Vì
nó về cơ bản là một hàm mất mát (loss function) (với một hoặc nhiều mục
tiêu) có thể được tối ưu hóa với các gói tối ưu hóa tiêu chuẩn. Một số chi
tiết có thể bổ sung như giới hạn giá trị đặc trưng trong khoảng có ý nghĩa
(ví dụ: kích thước căn hộ trong khoảng số dương).
Có thứ gì đó không đúng với chú chó của tôi Szegedy et al. (2013)
đã sử dụng phương pháp tối ưu dựa trên gradient trong bài báo “Intriguing
properties of neural networks” để tìm các mẫu dữ liệu đối kháng cho các
mạng học sâu trong hình 6.2.1
Các mẫu dữ liệu đối kháng này được sinh ra bởi tối thiểu hóa hàm nhiễu
sau với r:
Trong công thức này, x là hình ảnh (đại diện bởi một vector của các
pixel), r là sự thay đổi đối với các pixel đó để tạo ra một hình ảnh đối kháng
(x ` r tạo ra một hình mới), l là dự đoán mong muốn, và tham số c được sử
dụng để làm cân bằng khoảng cách giữa các hình ảnh và khoảng cách giữa
các dự đoán. Biểu thức thứ nhất là khoảng cách giữa dự đoán đầu ra trên
mẫu dữ liệu đối kháng với lớp l mong muốn, biểu thức thứ hai đo khoảng
cách giữa mẫu dữ liệu đối kháng với ảnh gốc. Công thức trên hầu như giống
với hàm mất mát để tạo ra các giải thích phản chứng. Có thêm một số ràng
buộc cho r để các giá trị pixel nằm giữa 0 và 1. Tác giả đề xuất để giải quyết
bài toán tối ưu này bằng phương pháp L-BFGS, một thuật toán tối ưu hoạt
động với các gradient.
Xáo trộn gấu trúc: Fast gradient sign method) Goodfellow et al.
(2014) đã phát minh ra phương pháp FGSM cho việc sinh ra các hình ảnh
đối kháng. Phương pháp này sử dụng gradient của mô hình gốc để tìm mẫu
dữ liệu đối kháng. Hình ảnh gốc x được thay đổi bởi việc thêm hoặc bớt đi
một nhiễu nhỏ e cho mỗi pixel. Việc ta thêm hoặc bớt e phụ thuộc vào dấu
của gradient cho các pixel là dương hoặc âm. Thêm các nhiễu theo hướng
của gradient nhằm mục đích làm cho mô hình phân loại sai hình ảnh đó.
Hình 6.3: Các mẫu dữ liệu đối kháng đối với với mạng AlexNet bởi Szegedy
et al. (2013). Tất cả hình trên cột trái là đã được phân loại chính xác. Cột
giữa hiển thị nhiễu được thêm vào hình ảnh để tạo thành các hình trong
cột phải, tất cả được phân loại (không chính xác) là “Đà điểu”. “Intriguing
properties of neural networks”.
Trong đó 5x J là gradient của hàm mất mát của mô hình tương ứng với
vector pixel đầu vào x, y là vector nhãn đúng cho x và θ là vector trọng số
mô hình. Từ vector gradient (cùng có kích thước giống như vector của các
pixel đầu vào) ta chỉ cần dấu: Dấu của gradient là dương (+1) nếu sự tăng
cường độ pixel làm tăng giá trị hàm mất mát (độ lệch mà mô hình tạo ra)
và âm (-1) nếu sự giảm đi của cường độ pixel làm giảm hàm mất mát. Mô
hình dễ bị tấn công khi một mạng nơ-ron coi mối quan hệ giữa cường độ
pixel đầu vào và đầu ra là tuyến tính. Đặc biệt, các kiến trúc mạng nơ-ron
thiên về tuyến tính, như là LSTMs, mạng Maxout, mạng với hàm kích hoạt
là ReLU hay các thuật toán học máy tuyến tính khác như hồi quy tuyến tính
là dễ bị tấn công bởi phương pháp FGSM. Sự tấn công được thực hiện bởi
phép ngoại suy. Liên kết tuyến tính giữa cường độ pixel đầu vào và đầu ra là
nguyên nhân của việc các mô hình dễ bị tấn công bởi các ngoại lai (outlier),
mẫu dữ liệu mà có thể được tạo ra bằng cách dịch chuyển giá trị pixel vào
khu vực ngoài vùng phân phối dữ liệu hiện tại. Tôi mong rằng các mẫu dữ
liệu đối kháng là chuyên biệt cho các kiến trúc mạng nơ-ron, nghĩa là chỉ một
vài kiến trúc mạng bị đánh lừa bởi chúng. Nhưng hóa ra, ta có thể tái sử
dụng các mẫu dữ liệu đối kháng để đánh lừa mạng với một kiến khác được
huấn luyện trên cùng một nhiệm vụ (ví dụ phân loại hình ảnh).
Goodfellow et al. (2014) đã đề xuất việc thêm các mẫu dữ liệu đối kháng
vào dữ liệu huấn luyện để tăng sức mạnh của mô hình.
Một con sứa... Không, chờ đã. Là một bồn tắm: Tấn công trên 1
pixel Phương pháp được phát minh bởi Goodfellow et al. (2014) yêu cầu
nhiều pixel thay đổi cùng lúc một lượng nhỏ. Nhưng chuyện gì xảy ra nếu ta
chỉ có thể thay đổi một pixel duy nhất? Ta có khả năng đánh lừa mô hình
học máy không? Su et al. (2019) đã chỉ ra rằng thực chất có thể đánh lừa
việc phân loại hình ảnh bằng cách thay đổi duy nhất một pixel.
Hình 6.4: Bằng việc thay đổi chủ ý một pixel, một mạng nơ-ron đã huấn
luyện trên ImageNet có thể bị đánh lừa để dự đoán sai lớp thay vì lớp đúng
ban đầu.
Tương tự như các phản chứng, tấn công trên 1-pixel tìm một mẫu dữ liệu
x1 mà nó gần với hình ảnh gốc x, nhưng thay dự đoán tới một đầu ra đối
kháng. Tuy nhiên, định nghĩa của việc “gần” là khác: chỉ một pixel có thể
thay đổi. Tấn công trên 1-pixel sử dụng phép vi phân để tìm ra pixel nào
được thay đổi và cách thay đổi. Phép vi phân này được lấy cảm hứng từ tiến
hóa sinh học của các loài. Một nhóm các ứng viên cho pixel được sửa đổi
được tái tổ hợp liên tục cho đến khi đáp án được tìm ra. Mỗi ứng viên ứng
với một pixel bị thay đổi và nó được thể hiện bởi một vector với 5 thành
phần: giá trị trục x, y và màu đỏ, xanh lá cây và xanh da trời (RGB). Việc
tìm kiếm bắt đầu với 400 ứng cử viên và tạo ra một thế hệ các giải pháp ứng
cử viên (con) mới từ thế hệ cha sử dụng công thức sau đây:
Trong đó xi là một thành phần của một ứng viên (có thể là toạ độ x, tọa
độ y, đỏ, xanh lá cây và xanh da trời), g là thế hệ hiện tại, F là tham số tỷ
lệ (được chọn là 0.5) và r1, r2 và r3 là các con số ngẫu nhiên khác nhau. Mỗi
giải pháp trả con mới bao gồm 5 thuộc tính cho tọa độ và màu, mỗi thuộc
tính đó là sự pha trộn từ ba pixel cha ngẫu nhiên.
Việc tạo ra các ứng viên con được dừng lại nếu một trong ứng cử viên là
một mẫu dữ liệu đối kháng, nghĩa là nó đã được phân loại sai, hoặc nếu số
vòng lặp được chỉ định bởi người lập trình được đạt đến.
Tất cả đều là máy nướng bánh: Mảng đối kháng (adversarial patch)
Một trong những phương pháp ưa thích của tôi mang các mẫu đối kháng vào
đời thực. Brown et al. (2017) đã thiết kế một mảng có thể đính vào bên cạnh
các vật thể để một bộ phân loại hình ảnh luôn phân loại chúng là các máy
nướng bánh.
Phương pháp này khác xa với các phương pháp khác cho các mẫu dữ liệu
đối kháng, do ràng buộc rằng mẫu đối kháng phải rất gần với ảnh gốc được
loại bỏ. Thay vào đó, phương pháp này hoàn toàn thay thế một phần của
ảnh gốc với một mảng có hình dạng bất kỳ. Mảng được tối ưu trên các ảnh
nền (background images) khác nhau, với vị trí khác nhau mảng trên ảnh nền
(đôi lúc bị dịch, đôi lúc lại lớn hơn hay nhỏ hơn và bị xoay nên mảng hoạt
động được trong nhiều tình huống khác nhau). Cuối cùng, hình ảnh tối ưu
này có thể được in ra và sử dụng để đánh lừa các bộ phân loại hình ảnh trong
thực tế.
Hình 6.5: Một mảng làm cho mạng VGG16 huấn luyện trên tập ImageNet
phân biệt ảnh quả chuối thành máy nướng bánh.
Đừng bao giờ mang một con rùa in 3D đến một trận đấu súng,
thậm chí cả khi máy tính của ta cho đó là một ý tưởng tuyệt vời:
Các mẫu dữ liệu đối kháng linh hoạt Phương pháp tiếp theo về bản
chất chỉ là ta thêm một thành phần vào trong mảng đối kháng. Athalye et
al. (2017) đã in ra một con rùa 3D được thiết kế trông giống như một khẩu
súng trường đối với mạng nơ-ron sâu khi nhìn từ mọi góc cạnh. Đúng vậy,
bạn đọc đúng rồi đấy. Một vật trông giống như một con rùa đối với con người
lại trông giống như một khẩu súng trường đối với máy tính!
Các tác giả đã tìm ra cách để tạo các mẫu đối kháng 3D cho các bộ phân
loại làm việc trên ảnh 2D, đó là đối kháng dựa trên các biến đổi, ví dụ như
xoay, phóng to... Các phương pháp khác như FGSM không hoạt động khi
hình ảnh bị xoay hoặc hiển thị ở các góc khác nhau. Athalye et al. (2017)
đề xuất thuật toán Expection Over Transformation (EOT), là một phương
pháp sinh ra các mẫu dữ liệu đối kháng mà vẫn có thể hoạt động khi các
hình ảnh bị biến đổi. Ý tưởng chính đằng sau EOT là tối ưu hóa các mẫu dữ
liệu đối kháng qua nhiều biến đổi nhất có thể. Thay vì tối thiểu hóa khoảng
cách giữa các mẫu dữ liệu đối kháng và hình ảnh gốc, EOT giữ cho khoảng
cách kỳ vọng giữa hai mẫu này dưới một ngưỡng nhất định khi cho trước
một phân phối của các biến đổi (distribution of possible transformations).
Khoảng cách kỳ vọng theo biến đổi có thể được viết lại như sau:
Hình 6.6: Athalye et al. (2017) đã tạo ra một vật in 3D được nhận diện
trông giống như một khẩu súng bởi bộ phân loại InceptionV3 huấn luyện
trên Tensorflow.
Trong đó x là hình ảnh gốc, tpxq là hình ảnh đã qua biến đổi (ví dụ: xoay),
x1 là mẫu dữ liệu đối kháng và tpx1 q là phiên bản biến đổi của x1 . Bên cạnh
làm việc với phân phối của các biến đổi, EOT cũng dùng các phương pháp
tối ưu để tìm ra các mẫu dữ liệu đối kháng. Chúng ta cố gắng tìm một mẫu
dữ liệu đối kháng x1 mà cực đại hóa xác suất cho lớt yt (ví dụ: súng trường)
trên toàn bộ phân phối của các biến đổi T có thể:
arg max
1
Et„T rlogP pyt |tpx1 qqs
x
Với ràng buộc rằng khoảng cách kỳ vọng trên toàn bộ biến đổi có thể
giữa mẫu dữ liệu đối kháng x1 và hình ảnh gốc s duy trì ở dưới một ngưỡng
nhất định.
Đối thủ bịt mắt (The blindfolded adversary): Tấn công hộp đen
Hãy hình dung theo kịch bản sau: Tôi đưa cho bạn truy cập vào bộ phân
loại tốt nhất của tôi thông qua Web API. Bạn có thể lấy các dự đoán từ mô
hình, nhưng bạn không có quyền can thiệp vào các trọng số mô hình. Từ đó,
bạn có thể gửi dữ liệu lên và mô hình của tôi trả về các kết quả tương ứng.
Hầu hết các phương pháp tấn công dùng mẫu dữ liệu đối kháng không được
thiết kế để hoạt động trong kịch bản này bởi vì chúng yêu cầu truy cập vào
gradient của mạng nơ-ron sâu để tìm các mẫu dữ liệu đối kháng. Papernot
et al. (2017) đã chỉ ra rằng nó hoàn toàn có thể tạo ra các mẫu dữ liệu đối
kháng mà không cần thông tin bên trong của mô hình và không cần truy cập
vào dữ liệu huấn luyện. Đây là kiểu tấn công vô thức (zero-knowledge), hay
còn được gọi là tấn công hộp đen.
Nó làm việc như thế nào:
1. Bắt đầu với một vài hình ảnh nằm trong phân phối của dữ liệu huấn
luyện. Ví dụ, nếu bộ phân loại đang bị tấn công là một bộ phân loại chữ số
(từ 0 đến 9), ảnh được sử dụng cũng nên là các ảnh chữ số. Ta cần biết về
miền dữ liệu huấn luyện, nhưng không cần thiết truy cập chúng.
2. Lấy dự đoán cho tập hình ảnh hiện tại từ mô hình hộp đen đó.
3. Huấn luyện một mô hình đại diện (surrogate model) trên tập dữ liệu
ảnh hiện tại.
4. Tạo ra một tập dữ liệu ảnh nhân tạo mới bằng việc thay đổi các pixel
trên các hình ảnh này để làm mô hình có phương sai lớn hơn (more variance).
5. Lặp lại các bước 2 đến 4 cho một số epochs nhất định.
6. Tạo ra các mẫu dữ liệu đối kháng từ mô hình đại diện sử dụng phương
pháp FGSM (hoặc tương tự).
7. Tấn công mô hình ban đầu với các mẫu dữ liệu đối kháng.
Mục đích của mô hình đại diện là xấp xỉ ranh giới quyết định (decision
boundaries) của mô hình hộp đen, nhưng không cần thiết đạt độ chính xác
tương đương.
Các tác giả đã kiểm thử cách tiếp cạnh này bằng cách tấn công các bộ
phân loại được huấn luyện trên một số dịch vụ học máy đám mây (cloud
machine learning services). Những dịch vụ này huấn luyện bộ phân loại hình
ảnh trên dữ liệu và nhãn mà người dùng tải lên. Phần mềm huấn luyện mô
hình tự động, đôi khi bằng một thuật toán mà người dùng không biết và
triển khai nó. Bộ phân loại có thể cho các dự đoán cho các hình ảnh được
đăng tải lên, nhưng chính mô hình đó lại không thể được kiểm soát hoặc tải
về. Các tác giả đã tìm ra các mẫu dữ liệu đối kháng cho rất nhiều mô hình
kiểu đám mây, và lên đến 84% các mẫu dữ liệu đối kháng được phân loại sai
lớp.
Phương pháp trên thậm chí làm việc cả khi mô hình hộp đen không phải
là một mạng nơ-ron. Chúng bao hàm những mô hình học máy mà không có
gradient ví dụ như cây quyết định.
Nguyên mẫu là một cá thể dữ liệu đại diện cho cả tập dữ liệu. Ngoại lai
là một điểm dữ liệu không được bao hàm (không cùng phân phối dữ liệu với)
bởi tập hợp các nguyên mẫu. Mục đích sử dụng của ngoại lai là cung cấp
những hiểu biết sâu sắc về tập dữ liệu cùng với các nguyên mẫu, đặc biệt
là đối với các điểm dữ liệu mà nguyên mẫu không thể thể hiện. Các nguyên
mẫu và ngoại lai có thể được sử dụng độc lập với mô hình học máy để mô
tả dữ liệu, nhưng chúng cũng có thể được sử dụng để tạo mô hình khả diễn
giải nội tại (intrinsically interpretable) được hoặc để làm cho mô hình hộp
đen trở nên khả diễn giải.
Trong chương này, ta sử dụng cụm từ “điểm dữ liệu” để chỉ một mẫu dữ
liệu duy nhất, và để nhấn mạnh cách giải thích rằng một mẫu dữ liệu cũng là
một điểm trong hệ tọa độ đa chiều mà mỗi đặc trưng là một chiều. Hình sau
đây cho thấy một phân phối dữ liệu mô phỏng, với một số trường hợp được
chọn làm nguyên mẫu và một số trường hợp là ngoại lai. Những điểm nhỏ là
dữ liệu, những điểm lớn là ngoại lai và những ô vuông lớn là những nguyên
mẫu. Các nguyên mẫu được chọn (theo cách thủ công) để bao phủ các trung
tâm của các cụm dữ liệu và các ngoại lai là các điểm trong các cụm không
xuất hiện nguyên mẫu. Các nguyên mẫu và ngoại lai luôn là các mẫu dữ liệu
thực tế từ tập dữ liệu.
Ở đây tôi chọn các nguyên mẫu theo cách thủ công, do đó kết quả có thể
không được tốt. Có nhiều cách tiếp cận để tìm ra nguyên mẫu trong dữ liệu.
Một trong số đó là k-medoids, một thuật toán phân cụm liên quan đến thuật
toán k-means. Bất kỳ thuật toán phân cụm nào trả về các điểm dữ liệu thực
tế dưới dạng trung tâm cụm sẽ thỏa mãn cho việc chọn các nguyên mẫu.
Nhưng hầu hết các phương pháp này chỉ tìm thấy nguyên mẫu chứ không
trả về ngoại lai. Chương này trình bày thuật toán MMD-critic của Kim et.
al (2016), là một cách tiếp cận kết hợp việc tìm ra các nguyên mẫu và ngoại
lai một các đồng thời
MMD-critic so sánh phân phối dữ liệu thực tế và sự phân bố của các
nguyên mẫu đã chọn. Đây là khái niệm trung tâm cho việc hiểu phương pháp
này. MMD-critic chọn các nguyên mẫu giúp giảm thiểu sựsai khác giữa hai
phân phối đã nêu. Các điểm dữ liệu trong các cụm có mật độ cao là các
Hình 6.7: Nguyên mẫu và ngoại lai cho một phân phối dữ liệu với hai đặc
trưng x1 và x2.
nguyên mẫu tốt, đặc biệt khi các điểm được chọn từ các “cụm dữ liệu” khác
nhau. Các điểm dữ liệu từ các cụm không được giải thích rõ bởi các nguyên
mẫu được chọn làm ngoại lai.
Chúng ta hãy nghiên cứu sâu hơn về lý thuyết.
6.3.1 Lý thuyết
MMD-critic có thể được tóm tắt ngắn gọn như sau:
1. Chọn số lượng nguyên mẫu và ngoại lai bạn muốn tìm.
2. Tìm nguyên mẫu bằng tìm kiếm tham lam (greedy search). Các nguyên
mẫu được chọn sao cho phân phối của các nguyên mẫu gần với phân phối dữ
liệu.
3. Tìm ngoại lai bằng cách tìm kiếm tham lam. Các điểm được chọn làm
ngoại lai nằm trong cụm có phân phối của các nguyên mẫu khác với phân
phối của dữ liệu.
Chúng tôi cần một vài công cụ để tìm nguyên mẫu và ngoại lai cho tập dữ
liệu với MMD-critic. Cơ bản nhất, chúng ta cần một hàm nhân để ước tính
mật độ dữ liệu. Kernel là một hàm gán trọng số cho hai điểm dữ liệu theo
khoảng cách (proximity) của chúng. Dựa trên ước tính mật độ, ta cần một
thước đo cho ta biết hai phân phối khác nhau như thế nào để ta có thể xác
định xem liệu phân phối của các nguyên mẫu mà ta chọn có gần với phân
phối dữ liệu hay không. Điều này được giải quyết bằng cách đo sự khác biệt
trung bình tối đa (maximum mean discrepancy - MMD). Cũng dựa trên hàm
nhân, chúng ta cần hàm nhân chứng (witness function) để cho chúng ta biết
hai phân phối khác nhau như thế nào tại một điểm dữ liệu cụ thể. Với hàm
nhân chứng, chúng ta có thể chọn các ngoại lai, tức là các điểm dữ liệu mà
tại đó phân phối của các nguyên mẫu và dữ liệu khác nhau và hàm nhân
chứng nhận các giá trị tuyệt đối lớn. Cuối cùng, ta cần một phương pháp
tìm kiếm các nguyên mẫu và ngoại lai tốt, vấn đề này được giải quyết bằng
một thuật toán tìm kiếm tham lam đơn giản.
Chúng ta hãy bắt đầu với khác biệt trung bình tối đa (MMD), công thức
này đo lường sự khác biệt giữa hai phân phối. Việc lựa chọn các nguyên mẫu
tạo ra sự phân bố mật độ của các nguyên mẫu. Ta muốn đánh giá xem phân
phối nguyên mẫu có khác với phân phối dữ liệu hay không. Do đó, ta ước
tính cả hai phân phối với các hàm mật độ nhân. MMD đo lường sự khác biệt
giữa hai phân phối, trên một không gian hàm của sự khác biệt giữa các kỳ
vọng theo hai phân phối. Tất cả rõ ràng chứ? Cá nhân tôi hiểu những khái
niệm này tốt hơn nhiều khi tôi quan sát tính toán với dữ liệu cụ thể. Công
thức sau đây cho biết cách tính MMD bình phương (MMD2):
m m,n n
1 ÿ
2 2 ÿ 1 ÿ
MMD “ 2 kpzi , zj q ´ kpzi , xj q ` 2 kpxi , xj q
m i,j“1 mn i,j“1 n i,j“1
k là một hàm nhân đo sự giống nhau của hai điểm, ta sẽ nói thêm về
điều này sau. m là số nguyên mẫu z và n là số điểm dữ liệu x trong tập
dữ liệu ban đầu của chúng ta. Nguyên mẫu z là sự lựa chọn từ các điểm dữ
liệu x. Mỗi điểm là đa chiều, tức là nó có thể có nhiều đặc trưng. Mục tiêu
của MMD-critic là giảm thiểu MMD2. MMD2 càng gần bằng 0, phân phối
của các nguyên mẫu càng khớ với dữ liệu. Chìa khóa để đưa MMD2 xuống
0 là thành phần ở giữa trong công thức trên, tính toán khoảng cách trung
bình giữa các nguyên mẫu và tất cả các điểm dữ liệu khác (nhân với 2). Nếu
thành phần này cộng với thành phần đầu tiên (khoảng cách trung bình của
các nguyên mẫu với nhau) cộng với thành phần cuối cùng (khoảng cách trung
bình của các điểm dữ liệu với nhau), thì nguyên mẫu sẽ giải thích dữ liệu
một cách hoàn hảo. Hãy thử xem điều gì sẽ xảy ra với công thức trên nếu ta
sử dụng tất cả n điểm dữ liệu làm nguyên mẫu.
Hình ảnh sau đây minh họa cách tính MMD2. Hình đầu tiên hiển thị các
điểm dữ liệu với hai đặc trưng, theo đó ước tính mật độ dữ liệu được hiển thị
với nền bóng mờ. Mỗi hình còn lại là các lựa chọn nguyên mẫu khác nhau,
cùng với giá trị MMD2. Nguyên mẫu là các chấm lớn và phân bố của chúng
được thể hiện dưới dạng các đường đồng mức (contour lines). Việc lựa chọn
các nguyên mẫu mà phủ dữ liệu một cách tốt nhất (dưới cùng bên trái) cho
ta giá trị sai khác nhỏ nhất.
Hình 6.8: Giá trị MMD2 cho một tập dữ liệu với hai đặc trưng và các cách
lựa chọn nguyên mẫu khác nhau.
` ˘
kpx, x1 q “ exp ´γ||x ´ x1 ||2
trong đó ||x ´ x1 ||2 là khoảng cách Euclidean giữa hai điểm và γ là thông
số mở rộng (scaling parameter). Giá trị của nhân giảm theo khoảng cách giữa
hai điểm và nằm trong khoảng 0 và 1: 0 khi hai điểm xa nhau vô cực và 1
khi hai điểm trùng nhau.
Ta gói gọn cách tính MMD2, nhân và tìm kiếm tham lam vào một thuật
toán để tìm nguyên mẫu:
1. Bắt đầu với một danh sách rỗng các nguyên mẫu.
2. Khi số lượng nguyên mẫu thấp hơn số m đã chọn:
- Đối với mỗi điểm trong tập dữ liệu, kiểm tra xem MMD2 bị giảm bao
nhiêu khi điểm đó được thêm vào danh sách các nguyên mẫu. Thêm điểm dữ
liệu mà làm giảm MMD2 vào danh sách.
3. Trả về danh sách các nguyên mẫu.
Để tìm ngoại lai ta cần hàm nhân chứng, cho ta biết hai phân phối khác
nhau như thế nào tại một điểm cụ thể. Giá trị này được tính như sau:
n m
1ÿ 1 ÿ
witnesspxq “ kpx, xi q ´ kpx, zj q
n i“1 m j“1
Đối với hai tập dữ liệu (có các đặc trưng giống nhau), hàm nhân chứng
cung cấp cho ta phương tiện đánh giá xem điểm x khớp hơn với phân phối
thực nghiệm nào. Để tìm ra các ngoại lai, ta tìm kiếm các giá trị cực trị của
hàm nhân chứng theo cả chiều âm và chiều dương. Số hạng đầu tiên trong
hàm nhân chứng là khoảng cách trung bình giữa điểm x và dữ liệu, tương ứng,
số hạng thứ hai là khoảng cách trung bình giữa điểm x và các nguyên mẫu.
Nếu hàm nhân chứng cho một điểm x gần bằng 0, thì hàm mật độ của dữ
liệu và các nguyên mẫu gần nhau, có nghĩa là phân phối của các nguyên mẫu
giống với phân phối của dữ liệu tại điểm x. Hàm nhân chứng nhận giá trị âm
tại điểm x có nghĩa là phân phối nguyên mẫu quá ước lượng (overestimate)
phân phối dữ liệu (ví dụ: nếu chúng ta chọn một nguyên mẫu nhưng chỉ có
vài điểm dữ liệu gần đó); một hàm nhân chứng là dương tại điểm x có nghĩa
là phân phối nguyên mẫu dưới ước lượng (underestimate) phân phối dữ liệu
(ví dụ: nếu có nhiều điểm dữ liệu xung quanh x nhưng ta chưa chọn bất kỳ
nguyên mẫu nào gần đó). Để cho bạn dễ hiểu, ta sử dụng lại các nguyên mẫu
từ hình ảnh trước đó với MMD2 thấp nhất và hiển thị hàm nhân chứng cho
một vài điểm được chọn thủ công. Các nhãn trong biểu đồ sau đây hiển thị
giá trị của hàm nhân chứng cho các điểm khác nhau được đánh dấu là hình
tam giác. Chỉ có điểm ở giữa có giá trị tuyệt đối cao và do đó là ứng cử viên
sáng giá cho một ngoại lai.
Hình 6.9: Giá trị của hàm nhân chứng tại các điểm khác nhau.
Hàm nhân chứng cho phép ta tìm kiếm một cách tường minh các mẫu dữ
liệu không được thể hiện tốt bởi các nguyên mẫu. Ngoại lai là những điểm
có giá trị tuyệt đối cao trong hàm nhân chứng. Giống như nguyên mẫu, các
ngoại lai cũng được tìm thấy thông qua việc tìm kiếm tham lam. Nhưng thay
vì giảm MMD2, ta đang tìm kiếm các điểm tối đa hóa hàm chi phí bao gồm
hàm nhân chứng và thông số điều chuẩn. Thanh phần được bổ sung trong
hàm tối ưu hóa làm tăng tính đa dạng của các điểm, điều này cần thiết để
các điểm đến từ các cụm dữ liệu khác nhau.
Bước thứ hai độc lập với cách các nguyên mẫu được tìm ra. Ta cũng có
thể chọn thủ công một số nguyên mẫu và sử dụng quy trình được mô tả ở
trên để tìm ra các ngoại lai. Hoặc các nguyên mẫu có thể được tìm ra từ bất
kỳ thuật toán phân cụm nào, như k-medoid.
Trên đây là các phần quan trọng về lý thuyết của MMD-critic. Vẫn còn
một câu hỏi: Làm cách nào ta có thể áp dụng MMD-critic trong học
máy khả diễn giải?
MMD-critic có thể bổ sung tính diễn giải theo ba cách: Bằng cách giúp
hiểu rõ hơn về phân phối dữ liệu; bằng cách xây dựng một mô hình khả diễn
giải; bằng cách làm cho mô hình hộp đen trở nên khả diễn giải.
Nếu bạn áp dụng MMD-critic vào phân tích dữ liệu để tìm nguyên mẫu và
ngoại lai, nó sẽ giúp bạn tăng thêm hiểu biết về dữ liệu bạn đang có, đặc biệt
nếu bạn có một phân phối dữ liệu phức tạp với nhiều nhiễu. Với MMD-critic
bạn có thể đạt được nhiều hơn thế!
Ví dụ: ta có thể tạo một mô hình dự đoán khải diễn giải: gọi là “mô hình
nguyên mẫu gần nhất”. Chức năng dự đoán được định nghĩa là:
6.3.2 Ví dụ
Ví dụ sau về MMD-critic sử dụng tập dữ liệu chữ số viết tay.
Nhìn vào các nguyên mẫu thực tế, bạn có thể nhận thấy rằng số lượng
hình ảnh trên mỗi chữ số là khác nhau. Điều này là do nguyên mẫu đã được
tìm kiếm trên toàn bộ tập dữ liệu chứ không phải ta xác định trước số lượng
số cố định cho mỗi lớp. Đúng như dự đoán, các nguyên mẫu cho thấy các
cách viết chữ số khác nhau.
Hình 6.10: Nguyên mẫu cho tập dữ liệu chữ số viết tay.
6.3.3 Ưu điểm
Trong một nghiên cứu người dùng, các tác giả của MMD-critic đã đưa các
hình ảnh cho những người tham gia, họ phải so sánh trực quan với một trong
hai bộ hình ảnh, mỗi bộ đại diện cho một trong hai lớp (ví dụ: hai giống
chó). Những người tham gia thực hiện tốt nhất khi các bộ hiển thị
nguyên mẫu và ngoại lai thay vì hình ảnh ngẫu nhiên của một lớp.
Bạn có thể tự do lựa chọn số lượng nguyên mẫu và ngoại lai.
MMD-critic làm việc trên các ước lượng mật độ (density estimate) của
dữ liệu. Do đó, phương pháp sẽ này hoạt động với bất kỳ loại dữ liệu
nào và bất kỳ loại mô hình học máy nào.
Thuật toán dễ dàng cho việc lập trình
MMD-critic rất linh hoạt trong cách sử dụng để tăng khả năng diễn giải.
Nó có thể được sử dụng để hiểu các phân phối dữ liệu phức tạp. Nó có thể
được sử dụng để xây dựng một mô hình học máy khả giải thích. Hoặc nó có
thể làm sáng tỏ việc ra quyết định của một mô hình hộp đen.
Việc tìm kiếm ngoại lai độc lập với quá trình lựa chọn nguyên
mẫu. Nhưng sẽ hợp lý nếu chọn nguyên mẫu theo MMD-critic, vì cả nguyên
mẫu và ngoại lai đều được tạo ra bằng cách sử dụng cùng một phương pháp.
Mô hình học máy là sản phẩm của dữ liệu huấn luyện và việc xóa một
trong các mẫu dữ liệu huấn luyện có thể ảnh hưởng đến mô hình cuối cùng.
Ta gọi một mẫu dữ liệu huấn luyện là “có ảnh hưởng” khi việc xóa nó khỏi
dữ liệu huấn luyện làm thay đổi đáng kể các tham số hoặc dự đoán của mô
hình. Bằng cách xác định các mẫu dữ liệu huấn luyện có ảnh hưởng, ta có
thể “gỡ lỗi” các mô hình học máy và giải thích tốt hơn các hành vi và dự
đoán của chúng.
Chương này chỉ cho ta hai phương pháp để xác định các mẫu dữ liệu có ảnh
hưởng, đó là chẩn đoán xóa (deletion diagnostics) và hàm ảnh hưởng(influence
functions). Cả hai phương pháp đều dựa trên thống kê linh động (robust
statistics), điều này giúp các phương pháp thống kê ít bị ảnh hưởng bởi các
giá trị ngoại lai hay các vi phạm về giả định của mô hình. Thống kê linh
động cũng cung cấp các phương pháp để đo lường độ linh động của các ước
lượng từ dữ liệu (chẳng hạn như ước lượng trung bình hay trọng số của mô
hình).
Hãy tưởng tượng bạn muốn ước lượng thu nhập trung bình của người
dân trong thành phố của bạn và hỏi mười người ngẫu nhiên trên đường phố
họ kiếm được bao nhiêu. Ngoài thực tế là mẫu dữ liệu có thể có chất lượng
kém, ước lượng thu nhập trung bình của bạn có thể bị ảnh hưởng bao nhiêu
bởi một người? Để trả lời câu hỏi này, bạn có thể tính toán lại giá trị trung
bình bằng cách bỏ qua các mẫu đơn lẻ hoặc suy ra bằng toán học thông qua
“hàm ảnh hưởng” lượng giá trị trung bình có thể bị ảnh hưởng khi loại bỏ
các mẫu đơn lẻ đó. Với phương pháp xóa, ta tính toán lại giá trị trung bình
mười lần, mỗi lần bỏ qua một trong các báo cáo thu nhập và đo lường mức
độ thay đổi ước lượng trung bình. Một sự thay đổi lớn có nghĩa là một mẫu
dữ liệu có ảnh hưởng rất lớn. phương pháp thứ hai làm tăng trọng số của
một người bằng một trọng số nhỏ nhất định, tương ứng với việc tính toán
đạo hàm bậc nhất của một thống kê hoặc mô hình. phương pháp này còn
được gọi là “phương pháp vô cực” hoặc “hàm ảnh hưởng”. Nhân tiện, câu trả
lời là ước lượng trung bình của bạn có thể bị ảnh hưởng rất mạnh bởi một
mẫu duy nhất, vì giá trị trung bình tỷ lệ tuyến tính với các giá trị đơn lẻ.
Một cách lựa chọn tốt hơn là sử dụng giá trị trung vị (median - giá trị mà
tại đó một nửa số người kiếm được nhiều hơn và nửa còn lại ít hơn), bởi vì
ngay cả khi người có thu nhập cao nhất trong mẫu của bạn kiếm được nhiều
hơn mười lần trung vị, giá trị trung vị sẽ không bị thay đổi.
Chẩn đoán xóa và hàm ảnh hưởng cũng có thể được áp dụng cho các
tham số hoặc dự đoán của mô hình học máy để hiểu hành vi của chúng tốt
hơn hoặc để giải thích các dự đoán riêng lẻ. Trước khi xem xét hai phương
pháp này để tìm các mẫu dữ liệu có ảnh hưởng, chúng ta sẽ xem xét sự khác
biệt giữa một mẫu dữ liệu ngoại lai và một mẫu dữ liệu có ảnh hưởng.
Ngoại lai Một mẫu dữ liệu ngoại lai là một mẫu dữ liệu khác xa với các
mẫu dữ liệu khác trong tập dữ liệu. “Xa” có nghĩa là khoảng cách, ví dụ
khoảng cách Euclide, đến tất cả các mẫu dữ liệu khác là rất lớn. Trong một
tập dữ liệu về trẻ sơ sinh, một trẻ sơ sinh nặng 6 kg sẽ được coi là một ngoại
lai. Trong tập dữ liệu các tài khoản ngân hàng chủ yếu là tài khoản séc, một
tài khoản cho vay chuyên dụng (số dư âm lớn, ít giao dịch) sẽ được coi là
ngoại lai. Hình sau đây cho thấy ngoại lai của phân phối 1 chiều.
Hình 6.11: Đặc trưng x tuân theo phân phối Gaussian với ngoại lai ở x=8.
Ngoại lai có thể là những điểm dữ liệu thú vị. Khi một ngoại lai ảnh
hưởng đến mô hình, nó cũng là một mẫu có ảnh hưởng.
Mẫu dữ liệu có ảnh hưởng Một mẫu có ảnh hưởng là một mẫu dữ liệu
mà việc loại bỏ nó có ảnh hưởng mạnh đến mô hình được huấn luyện. Các
tham số hoặc dự đoán của mô hình càng thay đổi khi mô hình được huấn
luyện lại với một mẫu cụ thể bị xóa khỏi dữ liệu huấn luyện, thì mẫu đó càng
có ảnh hưởng. Việc một mẫu có ảnh hưởng đối với một mô hình được huấn
luyện hay không cũng phụ thuộc vào giá trị của nó đối với mục tiêu y. Hình
dưới đây cho thấy một mẫu có ảnh hưởng đối với mô hình hồi quy tuyến
tính.
Hình 6.12: Một mô hình tuyến tính với một đặc trưng. Được huấn luyện lần
đầu với dữ liệu đầy đủ và lần sau không có mẫu dữ liệu có ảnh hưởng. Việc
loại bỏ mẫu dữ liệu có ảnh hưởng sẽ thay đổi đáng kể gradient(trọng số/hệ
số)
Tại sao các mẫu dữ liệu có ảnh hưởng lại giúp ta hiểu mô hình?
Các mẫu dữ liệu có ảnh hưởng có thể giúp ta đạt được tính khả diễn giải là
do chúng có thể giúp ta truy ngược lại (trace back) các tham số và dự đoán
để giải thích tại sao chúng được sinh ra, và điểm đầu chính là dữ liệu huấn
luyện. Bộ học, tức là, thuật toán tạo ra mô hình học máy, là một hàm nhận
dữ liệu huấn luyện bao gồm các đặc trưng X và mục tiêu y sau đó tạo ra một
mô hình học máy. Ví dụ, bộ học cây quyết định là một thuật toán chọn các
đặc trưng phân tách và các giá trị để phân tách. Một bộ học mạng nơ-ron
sử dụng phương pháp lan truyền ngược (backpropagation) để tìm ra trọng
số tốt nhất.
Hình 6.13: Một bộ học học một mô hình từ dữ liệu huấn luyện (các đặc trưng
và mục tiêu). Mô hình đưa ra dự đoán cho dữ liệu mới.
Ta tự hỏi các thông số mô hình hoặc các dự đoán sẽ thay đổi như thế nào
nếu ta xóa các mẫu dữ liệu khỏi dữ liệu huấn luyện trong quá trình huấn
luyện. Điều này trái ngược với các phương pháp diễn giải khác khi mà chúng
phân tích cách dự đoán thay đổi khi chúng ta biến đổi các đặc trưng của các
mẫu dữ liệu được dự đoán, chẳng hạn như PDP (5.1) hay PFI (5.5). Với các
mẫu dữ liệu có ảnh hưởng, ta không coi mô hình là cố định mà ta coi nó là
một hàm của dữ liệu huấn luyện. Các mẫu dữ liệu có ảnh hưởng giúp ta trả
lời các câu hỏi về hành vi của mô hình một cách toàn cục và các dự đoán
riêng lẻ. Những mẫu dữ liệu nào có ảnh hưởng nhất đến các thông số mô
hình hoặc dự đoán nói chung? Những mẫu dữ liệu nào có ảnh hưởng nhất
đối với một dự đoán cụ thể? Các mẫu dữ liệu có ảnh hưởng cho ta biết với
mẫu dữ liệu nào mô hình có thể có vấn đề, mẫu dữ liệu huấn luyện nào cần
được kiểm tra và đưa ra cái nhìn về mức độ linh động của mô hình. Chúng
ta có thể không tin tưởng một mô hình nếu một mẫu dữ liệu đơn lẻ có ảnh
hưởng mạnh mẽ đến các dự đoán và tham số của mô hình. Hay ít nhất điều
đó sẽ khiến ta phân vân.
Làm thế nào chúng ta có thể tìm ra các mẫu dữ liệu có ảnh hưởng? Ta có
hai cách để đo lường mức độ ảnh hưởng: Cách đầu tiên của ta là xóa mẫu dữ
liệu khỏi dữ liệu huấn luyện, huấn luyện lại mô hình trên tập dữ liệu huấn
luyện đã rút gọn và quan sát sự khác biệt trong các tham số hoặc dự đoán
của mô hình (riêng lẻ hoặc trên toàn bộ tập dữ liệu). Cách thứ hai là tăng
trọng số của một mẫu dữ liệu bằng cách xấp xỉ các thay đổi tham số dựa
trên gradient của các tham số mô hình. Phương pháp xóa dễ hiểu hơn và là
cơ sở của phương pháp tăng trọng số, vì vậy ta bắt đầu với phương pháp này
trước.
n
p´iq 1 ÿ ˇˇ ˇ
p´iq ˇ
Influence “ ˇŷj ´ ŷj ˇ
n j“1
Biểu thức này về cơ bản là tử số của khoảng cách Cook, với sự khác biệt
là giá trị sai khác tuyệt đối được cộng lại thay vì giá trị sai khác bình phương.
Đây là lựa chọn của tôi, vì nó sẽ hữu ích đối với các ví dụ dưới đây. Công
thức chung của các phương pháp chẩn đoán xóa bao gồm việc chọn một đối
tượng (chẳng hạn như kết quả dự đoán) và tính toán sự khác biệt của đối
tượng cho mô hình được huấn luyện trên tất cả các mẫu dữ liệu và khi mẫu
dữ liệu bị xóa.
Chúng ta có thể dễ dàng chia nhỏ để giải thích cho dự đoán của mẫu dữ
liệu j bị ảnh hưởng bởi mẫu dữ liệu huấn luyện thứ i như thế nào:
ˇ ˇ
p´iq p´iq ˇ
Influencej “ ˇŷj ´ ŷj ˇ
ˇ
Phương pháp này cũng sẽ hoạt động tốt nếu ta tính sai khác giữa các
thông số mô hình hoặc sự sai khác về giá trị hàm mất mát. Trong ví dụ sau,
ta sẽ sử dụng các phương pháp đơn giản này.
Ví dụ về chẩn đoán xóa Trong ví dụ sau, ta huấn luyện một máy vector
hỗ trợ để dự đoán ung thư cổ tử cung do tố nguy cơ và chỉ ra các mẫu dữ
liệu huấn luyện nào có ảnh hưởng nhất đến tổng thể và cho một dự đoán cụ
thể. Vì dự đoán ung thư là bài toán phân loại, ta đo lường ảnh hưởng bằng
sự sai khác trong xác suất dự đoán ung thư. Một mẫu có ảnh hưởng nếu xác
suất được dự đoán tăng hoặc giảm giá trị trung bình một cách mạnh mẽ khi
mẫu đó bị xóa khỏi huấn luyện. Việc đo lường mức độ ảnh hưởng của tất cả
858 mẫu dữ liệu huấn luyện yêu cầu huấn luyện mô hình một lần trên tất cả
dữ liệu và huấn luyện lại nó 858 lần (= kích thước của dữ liệu huấn luyện)
với một mẫu dữ liệu bị xóa mỗi lần.
Mẫu có ảnh hưởng nhất có độ ảnh hưởng khoảng 0,01. Mức ảnh hưởng
0,01 có nghĩa là nếu chúng ta loại bỏ mẫu dữ liệu thứ 540, xác suất dự đoán
trung bình thay đổi 1 phần trăm. Điều này là khá quan trọng khi xem xét
xác suất dự đoán trung bình cho bệnh ung thư là 6,4%. Giá trị trung bình
của phương pháp trên tất cả các lần xóa có thể là 0,2 phần trăm. Bây giờ ta
biết mẫu dữ liệu dữ liệu nào có ảnh hưởng nhất đến mô hình. Điều này sẽ
hữu ích để gỡ lỗi dữ liệu. Có một mẫu dữ liệu có vấn đề? Có sai số đo lường?
Các mẫu dữ liệu có ảnh hưởng là những mẫu dữ liệu đầu tiên cần được kiểm
tra lỗi, bởi vì mỗi lỗi trong đó ảnh hưởng mạnh mẽ đến các dự đoán của mô
hình.
Ngoài gỡ lỗi mô hình, chúng ta có thể hiểu rõ hơn về mô hình không?
Việc in ra 10 mẫu dữ liệu có ảnh hưởng nhất sẽ không hữu ích, vì nó chỉ là
một bảng các mẫu dữ liệu với các đặc trưng. Tất cả các phương pháp trả về
mẫu dữ liệu chỉ có ý nghĩa nếu chúng ta có thể biểu diễn chúng một cách
hiệu quả. Nhưng chúng ta có thể biết loại mẫu dữ liệu nào có ảnh hưởng nếu
ta trả lời được câu hỏi: Điều gì phân biệt mẫu dữ liệu có ảnh hưởng với mẫu
dữ liệu thông thường? Chúng ta có thể biến câu hỏi này thành một bài toán
hồi quy và mô hình độ ảnh hưởng của một mẫu dưới dạng hàm của các giá
trị đặc trưng. Ta có thể tự do chọn bất kỳ mô hình nào từ chương 4. Đối với
ví dụ này, tôi chọn cây quyết định (hình sau), và nó cho thấy dữ liệu của phụ
nữ từ 35 tuổi trở lên có ảnh hưởng nhất đối với máy vector hỗ trợ. Trong số
tất cả phụ nữ trong tập dữ liệu, 153 trong số 858 phụ nữ lớn hơn 35 tuổi.
Trong chương 5.1, chúng ta đã thấy rằng sau 40 tuổi, xác suất dự đoán mắc
bệnh ung thư tăng mạnh và trong chương 5.4 ta cũng đã phát hiện tuổi là
một những đặc trưng quan trọng nhất. Phân tích ảnh hưởng cho chúng ta
biết rằng mô hình ngày càng trở nên không ổn định khi dự đoán ung thư cho
các độ tuổi cao hơn. Điều này có giá trị, có nghĩa là các lỗi trong các mẫu
dữ liệu này có thể ảnh hưởng mạnh đến mô hình.
Hình 6.14: Một cây quyết định mô hình hóa mối quan hệ giữa ảnh hưởng của
các mẫu và các đặc trưng của chúng. Độ sâu tối đa của cây được đặt là 2.
Phân tích ảnh hưởng đầu tiên này đã tiết lộ mẫu dữ liệu tổng thể có ảnh
hưởng nhất. Bây giờ ta chọn một trong các mẫu dữ liệu, cụ thể là mẫu dữ
liệu thứ 7, mà ta muốn giải thích dự đoán bằng cách tìm các mẫu dữ liệu dữ
liệu huấn luyện có ảnh hưởng nhất. Nó giống như một câu hỏi phản chứng:
Dự đoán cho mẫu số 7 sẽ thay đổi như thế nào nếu chúng ta bỏ mẫu i khỏi
quá trình huấn luyện? Ta lặp lại việc loại bỏ này cho tất cả các mẫu dữ liệu.
Sau đó, ta chọn các mẫu dữ liệu huấn luyện dẫn đến thay đổi lớn nhất trong
dự đoán của mẫu dữ liệu 7 khi chúng bị bỏ qua tronh huấn luyện và sử dụng
chúng để giải thích dự đoán của mô hình cho mẫu dữ liệu đó. Tôi chọn giải
thích dự đoán cho mẫu 7 vì đây là mẫu dữ liệu có xác suất dự đoán ung thư
cao nhất (7,35%), và tôi nghĩ là một mẫu dữ liệu thú vị để phân tích. Ta có
thể trả về 10 mẫu dữ liệu có ảnh hưởng nhất đến dự đoán trên mẫu dữ liệu
thứ 7 dưới dạng bảng. Điều này không hữu ích lắm vì ta không thể có nhiều
thông tin dưới dạng bảng. Một lần nữa, sẽ có ý nghĩa hơn nếu ta tìm ra các
đặc trưng giúp phân biệt các mẫu dữ liệu có ảnh hưởng với các mẫu dữ liệu
thông thường. Ta sử dụng một cây quyết định được huấn luyện để dự đoán
ảnh hưởng của các đặc trưng, thực tế trong ví dụ này, ta chỉ dùng cấu trúc
thay vì quan tâm đến dự đoán của cây. Cây quyết định sau đây cho thấy loại
mẫu dữ liệu huấn luyện nào có ảnh hưởng nhất đến việc dự đoán mẫu dữ
liệu thứ 7.
Hình 6.15: Cây quyết định giải thích mẫu dữ liệu nào có ảnh hưởng nhất đến
việc dự đoán mẫu dữ liệu thứ 7. Dữ liệu từ những phụ nữ hút thuốc trong
18,5 năm hoặc lâu hơn có ảnh hưởng lớn đến dự đoán của mẫu dữ liệu thứ
7, với sự thay đổi trung bình trong dự đoán tuyệt đối là 11,7 phần trăm xác
suất ung thư.
Dữ liệu về các mẫu dữ liệu phụ nữ hút thuốc hoặc đã hút thuốc từ 18,5
năm trở lên có ảnh hưởng lớn đến dự đoán của mẫu dữ liệu thứ 7. Người
phụ nữ trong mẫu số 7 đã hút thuốc trong 34 năm. Trong dữ liệu, 12 phụ
nữ (1,40%) hút thuốc từ 18,5 năm trở lên. Bất kỳ sai sót nào trong việc thu
thập số năm hút thuốc của một trong những phụ nữ này sẽ có tác động rất
lớn đến kết quả dự đoán cho mẫu dữ liệu thứ 7.
Sự thay đổi lớn nhất trong dự đoán xảy ra khi ta loại bỏ mẫu dữ liệu
số 663. Bệnh nhân được cho là đã hút thuốc trong 22 năm, phù hợp với kết
quả từ cây quyết định. Xác suất dự đoán cho mẫu dữ liệu thứ 7 thay đổi từ
7,35% thành 66,60% nếu chúng ta loại bỏ mẫu dữ liệu 663!
Nếu chúng ta xem xét kỹ hơn các đặc trưng của mẫu dữ liệu có ảnh hưởng
nhất, chúng ta có thể thấy một vấn đề khác có thể xảy ra. Dữ liệu nói rằng
phụ nữ 28 tuổi và đã hút thuốc được 22 năm?!! Hoặc đó là một mẫu dữ liệu
đúng và cô ấy thực sự bắt đầu hút thuốc từ năm 6 tuổi, hoặc đây là một
lỗi dữ liệu. Tôi tin vào giải thiết số 2. Đây chắc chắn là một tình huống mà
chúng ta phải đặt câu hỏi về tính chính xác của dữ liệu.
Những ví dụ này cho thấy sự hữu ích khi xác định được các mẫu dữ liệu
có ảnh hưởng để gỡ lỗi mô hình. Một vấn đề với phương pháp được đề xuất
là mô hình cần được huấn luyện lại cho mỗi mẫu dữ liệu huấn luyện. Toàn
bộ quá trình huấn luyện lại có thể khá chậm, bởi vì nếu bạn có hàng nghìn
mẫu dữ liệu huấn luyện, bạn sẽ phải huấn luyện lại mô hình của mình hàng
nghìn lần. Giả sử mô hình mất một ngày để huấn luyện và bạn có 1000 mẫu
dữ liệu huấn luyện, thì việc tính toán các mẫu dữ liệu có ảnh hưởng - khi làm
việc tuần tự - sẽ mất gần 3 năm. Không ai có thời gian cho việc này. Trong
phần còn lại của chương này, tôi sẽ chỉ cho bạn một phương pháp không yêu
cầu huấn luyện lại mô hình.
Cơ sở toán học của các hàm ảnh hưởng. Ý tưởng đằng sau các hàm
ảnh hưởng là tăng trọng số trong hàm mất mát của một mẫu dữ liệu huấn
luyện bằng một bước nhỏ tối ưu , dẫn đến các thông số mô hình mới:
n
1ÿ
θ̂,z “ arg minp1 ´ q Lpzi , θq ` Lpz, θq
θPΘ n i“1
Với θ là vector tham số mô hình và θ̂,z là vector tham số sau khi tăng
trọng số z lên một lượng rất nhỏ .L là hàm mất mát mà mô hình được huấn
luyện, zi là dữ liệu huấn luyện và z là mẫu huấn luyện mà chúng ta muốn
tăng trọng số để mô phỏng việc loại bỏ nó. Ý tưởng đằng sau công thức này
là: Mất mát sẽ thay đổi bao nhiêu nếu chúng ta tăng trọng số một mẫu dữ
liệu cụ thể zi từ dữ liệu huấn luyện bởi 1 lượng nhỏ và giảm trọng số của
các mẫu dữ liệu dữ liệu khác cho phù hợp? Vector tham số ứng với hàm mất
mát mới này sẽ là gì? Hàm ảnh hưởng của các tham số, tức là ảnh hưởng của
mẫu dữ liệu huấn luyện tăng trọng số z lên các tham số, có thể được tính
như sau.
ˇ
dθ̂,z ˇˇ
Iup,params pzq “ ˇ “ ´Hθ̂´1 ∇θ Lpz, θ̂q
d ˇ
“0
Biểu thức ∇θ Lpz, θ̂q là gradient liên quan đến các tham số cho mẫu dữ
liệu huấn luyện. Gradient là tỷ lệ thay đổi của mất mát với mẫu dữ liệu
huấn luyện. Nó cho chúng ta biết mức độ mất mát thay đổi ra sao khi chúng
ta thay đổi các thông số mô hình θ̂ 1 lượng nhỏ. Dấu dương trong vector
gradient có nghĩa là sự gia tăng nhỏ của tham số mô hình tương ứng sẽ làm
tăng mất mát, dấu âm có nghĩa là sự gia tăng của tham số làm giảm mất
mát. Phần đầuHθ̂´1 là ma trận Hessian nghịch đảo (đạo hàm cấp hai của mất
mát đối với các tham số mô hình). Ma trận Hessian là tốc độ thay đổi của
gradient, hoặc được biểu thị bằng mất mát, nó là tốc độ thay đổi của mất
mát. Nó có thể được ước tính bằng:
n
1ÿ 2
Hθ “ ∇ Lpzi , θ̂q
n i“1 θ̂
Chính xác hơn: Ma trận Hessian thể hiện độ cong của mất mát tại một
điểm nhất định. Hessian là một ma trận và không chỉ là một vector, bởi vì nó
mô tả độ cong mất mát và độ cong phụ thuộc vào hướng mà chúng ta nhìn.
Việc tính toán thực tế của ma trận Hessian sẽ tốn thời gian nếu ta có nhiều
tham số. Koh và Liang đã đề xuất một số thủ thuật để tính toán một cách
hiệu quả (nằm ngoài phạm vi của chương này). Việc cập nhật các tham số
mô hình, như được mô tả bởi công thức trên, tương đương với việc thực hiện
một bước Newton sau khi hình thành một khai triển bậc hai xung quanh các
tham số mô hình được ước lượng.
Công thức hình thành từ khai triển bậc hai xung quanh các tham số θ̂.
Điều đó có nghĩa là ta thực sự không biết, hoặc quá phức tạp để tính toán
chính xác mất mát trên mẫu z sẽ thay đổi như thế nào khi nó bị loại bỏ/tăng
trọng số. Ta ước lượng cục bộ hàm bằng cách sử dụng thông tin về gradient
và độ cong (= ma trận Hessian) ở cài đặt thông số mô hình hiện tại. Với ước
lượng mất mát này, chúng ta có thể tính toán các tham số mới sẽ như thế
nào nếu chúng ta tăng trọng số mẫu z:
1
θ̂´z « θ̂ ´ Iup,params pzq
n
Vector tham số gần đúng về cơ bản là tham số ban đầu trừ đi gradient của
mất mát trên z (vì chúng ta muốn giảm mất mát) được chia tỷ lệ theo độ
cong (= nhân với ma trận Hessian nghịch đảo) và chia tỷ lệ 1 trên n, vì đó là
trọng số của một mẫu dữ liệu huấn luyện duy nhất. Hình sau cho thấy cách
hoạt động của việc tăng trọng số. Trục x hiển thị giá trị của tham số và trục
y là giá trị tương ứng của mất mát với mẫu dữ liệu z. Tham số mô hình ở
đây là 1 chiều cho mục đích biểu diễn, nhưng trong thực tế nó thường là đa
chiều. Ta chỉ dịch chuyển từ 1 đến n để cải thiện mất mát, ví dụ z. Ta không
biết mất mát sẽ thực sự thay đổi như thế nào khi ta xóa z, nhưng với đạo
hàm thứ nhất và thứ hai của mất mát, ta tạo ra xấp xỉ bậc hai xung quanh
tham số mô hình hiện tại của ta và giả sử rằng đây là cách hoạt động của
mất mát thực sự.
Hình 6.16: Cập nhật thông số mô hình (trục x) bằng cách hình thành một
khai triển bậc hai của mất mát xung quanh thông số mô hình hiện tại và di
chuyển 1/n sang hướng mà mất mát với mẫu dữ liệu có trọng số z (trục y)
được cải thiện nhiều nhất. Việc tăng trọng số của mẫu z trong mất mát này
xấp xỉ với những thay đổi tham số nếu chúng ta xóa z và huấn luyện mô hình
trên dữ liệu mới.
Chúng ta thực sự không cần phải tính toán các tham số mới, nhưng chúng
ta có thể sử dụng hàm ảnh hưởng như một phép đo mức độ ảnh hưởng của
z đến các tham số.
Các dự đoán thay đổi ra sao nếu ta tăng trọng số cho z? Chúng ta có
thể tính toán các tham số mới và sau đó đưa ra dự đoán bằng cách sử dụng
mô hình mới được tham số hóa hoặc chúng ta cũng có thể tính trực tiếp ảnh
hưởng của mẫu dữ liệu z lên các dự đoán, vì chúng ta có thể tính toán ảnh
hưởng bằng cách sử dụng quy tắc chuỗi:
ˇ
dLpztest , θ̂,z q ˇˇ
Iup,loss pz, ztest q “ ˇ
d ˇ
“0
ˇ
T dθ̂,z ˇ
ˇ
“ ∇θ Lpztest , θ̂q ˇ
d ˇ
“0
T ´1
“ ´∇θ Lpztest , θ̂q Hθ ∇θ Lpz, θ̂q
Dòng đầu tiên của phương trình này có nghĩa là ta đo lường ảnh hưởng
của một mẫu dữ liệu huấn luyện lên một dự đoán nhất định ztest (thay đổi
trong hàm mất mát với mẫu kiểm tra khi ta tăng trọng số mẫu z và nhận
các tham số mới θ̂,z ). Đối với dòng thứ hai của phương trình, ta áp dụng
quy tắc chuỗi của đạo hàm và lấy đạo hàm của mất mát của mẫu kiểm tra
đối với các tham số nhân với ảnh hưởng của z lên các tham số. Trong dòng
thứ ba, ta thay thế biểu thức bằng hàm ảnh hưởng cho các tham số. Số hạng
đầu tiên ở dòng thứ ba ∇θ Lpztest , θ̂qT là gradient của mẫu kiểm tra đối với
các tham số mô hình.
Ta đã có công thức. Nhưng tôi nghĩ điều quan trọng là hiểu được ý nghĩa
của công thức. Công thức cho Iup,loss cho ta biết rằng hàm ảnh hưởng của
mẫu dữ liệu huấn luyện z lên dự đoán của một mẫu ztest : “mẫu phản ứng
mạnh như thế nào với sự thay đổi của các tham số mô hình” nhân với “mức
độ thay đổi của các tham số khi chúng ta tăng trọng số mẫu z”. Một cách
khác để đọc công thức: Ảnh hưởng tỷ lệ với độ lớn của gradient đối với mất
mát huấn luyện (training loss) và mất mát kiểm tra (test loss). Gradient của
mất mát huấn luyện càng cao, ảnh hưởng của nó đến các tham số càng cao
và ảnh hưởng càng cao đến dự đoán kiểm tra (test prediction). Gradient của
dự đoán kiểm tra càng cao, thì mẫu kiểm tra càng có ảnh hưởng. Toàn bộ
cấu trúc cũng có thể được coi là thước đo mức độ giống nhau (như mô hình
đã học) giữa huấn luyện và kiểm tra.
Đó là lý thuyết. Phần tiếp theo giải thích cách các hàm ảnh hưởng có thể
được áp dụng.
Ứng dụng của các hàm ảnh hưởng Các hàm ảnh hưởng có nhiều ứng
dụng, một số ứng dụng đã được trình bày trong chương này.
Hiểu hành vi của mô hình Các mô hình học máy khác nhau có những
cách đưa ra dự đoán khác nhau. Ngay cả khi hai mô hình có cùng hiệu suất
(performance), cách chúng đưa ra dự đoán từ các đặc trưng có thể rất khác
nhau và do đó có thể thất bại trong các tình huống khác nhau. Hiểu được
những điểm yếu cụ thể của một mô hình bằng cách xác định các mẫu dữ
liệu có ảnh hưởng sẽ giúp hình thành “mô hình tinh thần” (mental model) về
hành vi của mô hình học máy trong tâm trí bạn.
6.4.4 Nhược điểm của việc xác định các mẫu dữ liệu
có ảnh hưởng
Việc tính toán chẩn đoán xóa rất mất thời gian vì chúng yêu cầu huấn
luyện lại. Nhưng lịch sử đã chứng minh rằng tài nguyên máy tính không ngừng
tăng lên. Một phép tính mà 20 năm trước là không tưởng về tài nguyên có
thể dễ dàng được thực hiện với điện thoại thông minh của bạ hiện nay. Bạn
có thể huấn luyện các mô hình với hàng nghìn mẫu dữ liệu huấn luyện và
hàng trăm tham số trên máy tính xách tay trong vài giây/phút. Do đó, không
phải là vô lý khi cho rằng chẩn đoán xóa sẽ hoạt động mà không gặp vấn đề
gì ngay cả với các mạng nơ-ron lớn trong 10 năm nữa.
Các hàm ảnh hưởng là một giải pháp thay thế tốt cho chẩn đoán xóa,
nhưng chỉ dành cho các mô hình có các tham số, chẳng hạn như mạng nơ-ron.
Chúng không hoạt động đối với các phương pháp dựa trên cây như rừng ngẫu
nhiên, cây tăng cường hoặc cây quyết định. Ngay cả khi bạn có các mô hình
với các tham số và một hàm mất mát, mất mát có thể không có đạo hàm.
Nhưng đối với vấn đề cuối cùng, có một mẹo nhỏ: Sử dụng một mất mát có
thể đạo hàm được để thay thế cho việc tính toán ảnh hưởng khi, ví dụ, mô
hình sử dụng mất mát Hingle thay vì một số mất mát có đạo hàm.
Các hàm ảnh hưởng chỉ mang tính chất gần đúng, vì phương pháp này
tạo thành một khai triển bậc hai xung quanh các tham số. Sự xấp xỉ có thể
sai và ảnh hưởng của một mẫu dữ liệu thực sự cao hơn hoặc thấp hơn khi
bị loại bỏ. Koh và Liang (2017) đã chỉ ra một số ví dụ chứng minh rằng ảnh
hưởng được tính toán bởi hàm ảnh hưởng gần với ảnh hưởng thu được khi
mô hình được huấn luyện lại sau khi mẫu dữ liệu bị xóa. Nhưng không có gì
đảm bảo rằng giá trị gần đúng sẽ luôn gần với giá trị thực tế.
Không có giới hạn rõ ràng giữa mẫu có ảnh hưởng và mẫu thông thường.
Sẽ rất hữu ích nếu ta sắp xếp các mẫu dữ liệu theo mức ảnh hưởng, nhưng sẽ
tuyệt hơn nếu ta có thể phân biệt giữa có ảnh hưởng và không có ảnh hưởng.
Ví dụ: nếu bạn xác định 10 mẫu dữ liệu huấn luyện có ảnh hưởng nhất hàng
đầu cho một mẫu kiểm tra, một số mẫu dữ liệu trong số đó có thể không có
ảnh hưởng, ví dụ: chỉ 3 mẫu dữ liệu hàng đầu thực sự có ảnh hưởng.
Các phương pháp này chỉ tính đến việc xóa các mẫu dữ liệu riêng lẻ chứ
không phải xóa một số mẫu dữ liệu cùng một lúc. Các nhóm mẫu dữ liệu
lớn hơn có thể có một số tương tác ảnh hưởng mạnh đến việc huấn luyện và
dự đoán mô hình. Nhưng vấn đề nằm ở tổ hợp: Có n khả năng xóa một mẫu
riêng lẻ khỏi dữ liệu. Có n nhân (n-1) khả năng xóa hai mẫu dữ liệu khỏi dữ
liệu huấn luyện. Có n nhân (n-1) nhân (n-2) khả năng xóa ba ... Tôi đoán
bạn có thể thấy điều này sẽ xảy ra, chỉ có quá nhiều sự kết hợp.
308
để có thể khai phá chúng. Thứ hai, gradient có thể được dùng để tạo ra các
phương pháp mà có độ phức tạp về tính toán thấp hơn so với các công cụ
kiểu mẫu (phân tích mạng từ bên ngoài). Hầu hết các phương pháp trong
cuốn sách này nhằm giải thích các mô hình xây dựng từ dữ liệu dạng bảng
(tabular). Ảnh và văn bản cần các phương pháp khác.
- Các đặc trưng của những lớp tích chập đầu tiên là cạnh và một số kết
cấu đơn giản.
- Các đặc trưng của các lớp tích chập sau đó là các họa tiết (patterns or
textures) và kết cấu phức tạp hơn một chút.
- Các đặc trưng của các lớp tích chập cuối là vật thể hoặc một phần của
vật thể.
- Các lớp kết nối đầy đủ liên kết các kích hoạt từ các đặc trưng bậc cao
đến các lớp độc lập để tạo ra dự đoán cuối cùng.
Vậy là ta đã nắm một số khái niệm để hình dung về các đặc trưng được
học bởi mạng nơ-ron, vậy bằng cách nào chúng ta có thể biểu diễn chúng
một cách trực quan?
Hình 7.2: Trực quan hóa có thể tạo ra từ các thành phần khác nhau. A) Nơ-
ron tích chập, B) Kênh tích chập, C) Lớp tích chập, D) Nơ-ron, E) Lớp ẩn,
F) Nơ-ron xác suất phân loại lớp (hoặc tương đương với nơ-ron pre-softmax).
Trực quan hóa đặc trưng thông qua tối ưu hóa
Trong các thuật ngữ toán học, trực quan hóa là một vấn đề tối ưu. Chúng
ta giả sử rằng các trọng số của mạng là được cố định, có nghĩa rằng một
mạng được huấn luyện. Chúng ta tìm kiếm một hình ảnh mới mà tối đa hóa
(trung bình) kích hoạt một thành phần, ở đây là một nơ-ron đơn:
Hàm h là hàm kích hoạt của một nơ-ron, img là đầu vào của một mạng
(thường là hình ảnh), x và y mô tả không gian vị trí của nơ-ron, n là chỉ số
lớp và z là chỉ số kênh. Đối với kích hoạt trung bình của toàn bộ kênh z trong
lớp n chúng ta tối đa hóa:
ÿ
˚
img “ arg max hn,x,y,z pimgq
img
x,y
Trong công thức này, tất cả nơ-ron trong kênh z là có trọng số như nhau.
Ngoài ra, ta cũng có thể tối đa hóa các hướng ngẫu nhiên, nghĩa là các nơ-
trong sẽ được nhân bởi các tham số khác nhau, bao gồm cả các chiều âm.
Trong trường hợp này, chúng ta nghiên cứu cách mà các nơ-ron tương tác với
nhau trong kênh. Thay vì tối đa hóa kích hoạt, ta cũng có thể tối thiểu hóa
các giá trị này (tương đương với tối đa hóa theo chiều âm). Một điều rất thú
vị, khi ta tối đa hóa theo chiều âm, ta tạo sẽ thu về đặc trưng rất khác biệt
cho cùng thành phần:
Chúng ta có thể giải quyết bài toán tối ưu này theo các cách khác nhau.
Đầu tiên, tại sao chúng ta lại sinh ra các hình ảnh mới? Chúng ta có thể
đơn giản hóa bằng cách tìm kiếm trên các ảnh trong tập huấn luyện và lựa
chọn những bức ảnh làm cực đại kích hoạt. Đây là một cách tiếp cận hợp lý,
nhưng sử dụng dữ liệu huấn luyện có một vấn đề là các thành phần trong
các hình ảnh có thể bị tương quan và chúng ta không thể nhìn thấy những
gì mà mạng nơ-ron thực sự nhìn thấy. Nếu các hình ảnh trên sinh ra một
kích hoạt (activation) cao trên kênh hiện tại và ảnh đó thể hiện một con chó
và một quả bóng tennis, chúng ta không biết cái nào mà mạng nơ-ron đang
quan tâm, là con chó, là quả bóng tennis hay là có thể cả hai.
Một cách tiếp cận khác là tạo ra các hình ảnh mới, bắt đầu từ các nhiễu
ngẫu nhiên (random noise). Để thu được các hình ảnh trực quan có nghĩa,
Hình 7.3: Kích hoạt dương (trái) và âm (phải) của Inception V1 nơ-ron 484
từ lớp mix4d pre relu. Trong khi nơ-ron là được kích hoạt (activation) mạnh
nhất bởi các bánh xe, thì có một thứ gì đó trông giống như có mắt sinh ra
từ kích hoạt âm (code).
ta chấp nhận những ràng buộc trong hình ảnh, ví dụ chỉ có các thay đổi nhỏ
là được cho phép. Để giảm thiểu nhiễu trong trực quan hóa đặc trưng, ta
có thể áp dụng các rung động (jittering), xoay hoặc thay đổi tỷ lệ hình ảnh
trước bước tối ưu hóa. Các phương pháp khác sẽ dựa trên việc diều chuẩn
(regularization) bao gồm trừng phạt tần suất (ví dụ giảm phương sai của các
điểm ảnh lân cận) hoặc sinh ra các hình ảnh với xác suất tiên nghiệm đã học
trước đó (learned priors), ví dụ với các mạng GANs (Generative adversarial
networks) hoặc mạng giảm nhiễu autoencoders (denoising autoencoders).
Hình 7.4: Tối ưu hóa lặp đi lặp lại từ các hình ảnh ngẫu nhiên để tối đa hóa
kích hoạt.
Nếu bạn muốn tìm hiểu sâu hơn về trực quan hóa đặc trưng, hãy xem
qua trang tạp chí distill.pub, đặc biệt các trực quan hóa đặc trưng được đăng
bởi Olah et al. Cuốn sách này có sử dụng nhiều hình ảnh cũng như các khối
(building blocks) liên quan đến tính khả năng diễn giải.
Liên hệ tới các ví dụ của học đối kháng (Adversarial Examples)
Có một liên kết giữa trực quan hóa đặc trưng và các ví dụ đối kháng:
Cả hai kỹ thuật đều tối đa hóa kích hoạt của thành phần mạng nơ-ron. Với
các ví dụ đối kháng, chúng ta tìm kiếm các kích hoạt tối đa của nơ-ron cho
các lớp phản nghich (= lớp không chính xác). Một khác biệt là với hình ảnh
chúng ta bắt đầu: Đối với các ví dụ đối kháng, nó là hình ảnh mà chúng ta
muốn sinh ra hình ảnh đối kháng. Đối với trực quan hóa đặc trưng nó là các
nhiễu ngẫu nhiên, và phụ thuộc vào phương pháp tiếp cận.
Các nghiên cứu hiện nay đang tập trung vào trực quan hóa đặc trưng mạng
nơ-ron tích chập trong bài toán nhận diện hình ảnh (image recognition). Về
mặt kỹ thuật, không có điều gì ngăn ta tìm đầu vào mà tối đa kích hoạt
của một nơ-ron của mạng nơ-ron liên kết đầy đủ cho dữ liệu bảng hoặc một
mạng nơ-ron hồi tiếp (recurrent neural network) cho dữ liệu văn bản. Bạn
có thể không thể gọi nó là trực quan hóa đặc trưng nữa, vì các đặc trưng sẽ
là dữ liệu đầu vào dạng bảng hoặc văn bản. Ví dụ đối với bài toán với dự
đoán tín dụng mặc định, các đầu vào có thể là số lượng các tín dụng trước
đó, số lượng các hợp đồng di động, địa chỉ và hàng tá các đặc trưng khác.
Các đặc trưng được học của một nơ-ron sẽ là sự kết hợp nhất định của hàng
tá các đặc trưng này. Còn đối với mạng nơ-ron hồi tiếp, nó có chút dễ dàng
hơn để trực quan những gì mạng nơ-ron học được: Karpatht et. al (2015) đã
chỉ ra rằng mạng nơ-ron hồi tiếp thực sự có các nơ-ron mà học những đặc
trưng khả diễn giải. Chúng huấn luyện một mô hình dưới cấp độ các ký tự,
nó dự đoán những ký tự tiếp theo trong chuỗi từ những ký tự trước đó. Một
khi dấu mở ngoặc “(” xuất hiện, một trong những nơ-ron đạt kích hoạt cao,
và nơ-ron bị vô hiệu hóa khi một dấu đóng ngoặc ")" xuất hiện. Các nơ-ron
khác được kích hoạt ở cuối dòng. Một số nơ-ron bị kích thích bở các đường
dẫn (URLs). Sự khác biệt so với trực quan hóa đặc trưng cho CNNs đó là
các mẫu dữ liệu không được tìm thấy thông qua tối ưu, mà thông qua việc
nghiên cứu các kích hoạt trong dữ liệu huấn luyện. Một số hình ảnh có nội
dung thể hiện trông giống như mõm chó hoặc tòa nhà. Nhưng làm thế nào
để chúng ta có thể chắc chắn được? Phương pháp phân tách mạng (Network
Dissection) liên kết các khái niệm của con người với các thành phần nơ-ron
độc lập. Cảnh báo trước: Phương pháp phân tách mạng (Network Dissection)
yêu cầu thêm dữ liệu bổ sung mà trước đó ta cần gán nhãn với các khái niệm
của con người.
Hình 7.5: Cho một hình ảnh đầu vào và một mạng đã được huấn luyện (các
trọng số cố định), chúng ta đưa hình ảnh này qua các thành phần mạng ta
đang quan tâm, tăng kích thước hình ảnh của các kích hoạt để khớp với kích
thước hình gốc và so sánh các kích hoạt cực đại với các phân vùng ảnh đã
được gán nhãn từ ảnh gốc. Hình ảnh từ Bau & Zhou et. al (2017).
Bước 1: Tập dữ liệu Broden Bước đầu tiên là bước cực kỳ khó khăn
nhưng lại rất quan trọng đó là thu thập dữ liệu. Phân tách mạng (Network
Dissection) yêu cầu các hình ảnh được gán nhãn ở mức độ điểm ảnh với các
khái niệm và các cấp độ trừu tượng khác nhau (từ màu sắc cho đến bối cảnh).
Bau & Zhou et. al đã tạo ra một bộ dữ liệu được gán nhãn ở mức điểm ảnh.
Chúng ta gọi đây là tập dữ liệu “Broden”, viết tắt của “Broadly and Densely
labeled data”. Bộ dữ liệu Broden được phân vùng ở cấp độ điểm ảnh, với
một phần dữ liệu thì toàn bộ hình được gán nhãn. Broden chứa 60,000 hình
với trên 1,000 nhãn thực tế trong ở các cấp bậc trừu tượng khác nhau: 468
quang cảnh (scenes) 585 vật thể (objects), 234 bộ phận (parts), 32 nguyên
vật liệu (materials), 47 kết cấu (textures) và 11 màu sắc (colors). Hình ảnh
dưới đây trình bày một số ví dụ từ bộ dữ liệu Broden.
Hình 7.6: Một số ví dụ từ bộ dữ liệu Broden. Hình ảnh gốc từ Bau & Zhou
et. al (2017).
Bước 2: Truy xuất các kích hoạt của mạng Tiếp theo, chúng ta tạo
các mặt nạ (masks) của các vùng có kích hoạt lớn nhất ứng với mỗi kênh cho
mỗi ảnh đầu vào. Tại đây các nhãn vẫn chưa được sử dụng.
Hình 7.7: IoU được tính toán bằng cách so sánh các phân vùng được gắn
nhãn bởi người và các điểm ảnh có kích hoạt đứng đầu.
Hình ảnh sau đây chỉ ra một thành phần phát hiện chó:
Hình 7.8: Mặt nạ kích hoạt cho inception_4e kênh 750, kênh này phát hiện
chó với IoU = 0.203.
Tác giả của thuật toán phân tách mạng (Network Dissection) đã huấn
luyện các kiến trúc mạng khác nhau (AlexNet, VGG, GoogleNet, ResNet) từ
đầu (from scratches) trên các tập dữ liệu khác nhau (ImageNet, Places205,
Places365). ImageNet chứa 1.6 triệu hình và 1000 lớp. Places205 và Places365
chứa 2.4 triệu và 1.6 triệu hình từ 205 và 365 khung cảnh khác nhau. Họ huấn
luyện thêm AlexNet trên các bài toán huấn luyện tự giám sát (self-supervised
training) ví dụ như dự đoán thứ tự khung hình video hoặc tô màu hình ảnh.
Đối với các tùy chỉnh khác nhau, họ coi số bộ phát hiện khái niệm (duy nhất)
là một thước đo của tính khả diễn giải. Đây là một số phát hiện:
- Các mạng phát hiện các khái niệm cấp độ thấp (màu sắc, kết cấu) tại
những lớp thấp hơn và những khái niệm cao hơn (bộ phận, đối tượng) tại
các lớp cao hơn. Chúng ta đã thấy được điều đó trong 7.1.1.
- Chuẩn hóa theo batch (Batch normalization) giảm thiểu số các bộ phát
hiện khái niệm duy nhất.
- Nhiều thành phần trong mạng phát hiện cùng một khái niệm. Ví dụ,
có 95 kênh phát hiện chó trong VGG được huấn luyện trên ImageNet khi sử
dụng IoU > 0.04 (4 trong conv4_3, 91 trong conv5_3, xem trong website dự
án).
- Việc tăng số kênh trong một lớp cũng đồng thời làm tăng số bộ phát
hiện khái niệm.
- Các khởi tạo ngẫu nhiêu - random initializations (huấn luyện với các
seed ngẫu nhiên khác nhau) cho kết quả hơi khác nhau về số lượng của các
bộ phát hiện khái niệm.
- ResNet là một kiến trúc mạng với số bộ phát hiện duy nhất lớn nhất,
tiếp theo là VGG, GoogleNet và AlexNet là cuối cùng.
- Số bộ phát hiện khái niệm duy nhất lớn nhất là được học từ Places365,
tiếp theo là Places205 và ImageNet là cuối cùng.
- Số bộ phát hiện duy nhất tăng với số vòng lặp huấn luyện.
- Các mạng được huấn luyện trên các nhiệm vụ tự giám sát có các bộ
phát hiện duy nhất ít hơn so với các mạng được huấn luyện trên các nhiệu
vụ giám sát.
- Trong học truyền tải (transfer learning), khái niệm của một kênh có thể
thay đổi. Ví dụ, một bộ phát hiện chó có thể trở thành bộ phát hiện thác
nước. Điều này xảy ra trong một mô hình mà nó ban đầu được huấn luyện
để phân loại các đối tượng và sau đó tinh chỉnh để phân loại khung cảnh.
- Trong một thí nghiệm, tác giả xem xét các kênh theo phương pháp
mới (phương pháp xoay). Thí nghiệm được thực hiện với mạng VGG đã
huấn luyến trên ImageNet. “Xoay” không có nghĩa rằng hình ảnh đã bị xoay.
“Xoay” nghĩa là chúng ta lấy 256 kênh từ lớp conv5 và tính toán 256 kênh mới
Hình 7.9: ResNet được huấn luyện trên Places365 có số phát hiện duy nhất
cao nhất. AlexNet với các trọng số ngẫu nhiên có số bộ phát hiện duy nhất
thấp nhất và được dùng làm tham chiếu. Hình ảnh gốc từ Bau & Zhou et. al
(2017).
như là sự kết hợp tuyến tính của các kênh trước đó. Trong quá trình đó, các
kênh là phi tách bạch (entangled). Sự xoay giảm bớt khả năng diễn giải, tức
là số lượng kênh được điều chỉnh với một khái niệm giảm đi. Phép xoay được
thiết kế để giữ cho hiệu suất của mô hình không đổi. Kết luận thứ nhất: Khả
năng diễn giải của CNNs là phụ thuộc theo trục (axis-dependent). Điều này
có nghĩa rằng việc kết hợp ngẫu nhiên các sẽ không có nhiều khả năng tạo ra
các bộ phát hiện khái niệm duy nhất. Kết luận thứ hai: Khả năng diễn giải
là độc lập với khả năng phân loại (discriminative power). Các kênh có thể
được biến đổi với các phép biến đổi trực giao (orthogonal transformations)
trong khi khả năng phân loại duy trì như cũ, nhưng khả năng diễn giải giảm
đi.
Các tác giả cũng đã sử dụng phân tách mạng cho GANs (Generative
Adversarial Networks). Bạn có thể tìm thấy phân tách mạng cho GANs trên
website.
Hình 7.10: Số các bộ phát hiện khái niệm duy nhất giảm đi khi 256 kênh của
AlexNet conv5 (huấn luyện trên ImageNet) dần thay đổi trục bằng một phép
biến đổi trực giao ngẫu nhiên. Hình ảnh gốc từ Bau & Zhou et. al (2017). Để
hiểu rõ hơn, bạn có thể đọc thêm ở đây.
7.1.3 Ưu điểm
Việc trực quan hóa đặc trưng cung cấp cái nhìn sâu sắc độc đáo về
hoạt động của các mạng nơ ron, đặc biệt là bài toán nhận dạng hình
ảnh. Với sự phức tạp và thiếu tường minh của các mạng nơ ron, việc trực
quan hóa đặc trưng là một bước quan trọng trong việc phân tích và mô tả
các mạng nơ ron. Thông qua việc trực quan hóa đặc trưng, chúng ta thấy
rằng trong các lớp (layer) đầu tiên là các bộ phát hiện cạnh đơn giản cũng
như kết cấu; trong khi các thành phần phát hiện khái niệm trừu tượng và đối
tượng nằm ở các lớp cao hơn. Phân tách mạng cung cấp những hiểu biết và
làm cho tính khả giải thích của các thành phần mạng có thể đo lường được.
Phân tách mạng cho phép chúng ta tự động liên kết các thành phần
với các khái niệm, điểu này rõ ràng là rất hữu dụng.
Trực quan hóa đặc trưng là một công cụ tuyệt vời để thể hiện một cách
đơn giản cách thức hoạt động của các mạng nơ ron.
Với phân tách mạng, chúng ta cũng có thể phát hiện các khái niệm
ngoài các lớp (class) trong bài toán phân loại. Nhưng chúng ta cần các
bộ dữ liệu có chứa những hình ảnh với các khái niệm được gắn nhãn theo
pixel như Broden.
Trực quan hóa đặc trưng có thể được kết hợp với các phương pháp
thành tố đặc trưng (feature attribution), nhằm giải thích pixel nào là
quan trọng ứng với mỗi dự đoán. Sự kết hợp của cả hai phương pháp cho
phép giải thích một dự đoán riêng lẻ cùng với trực quan hóa cục bộ các đặc
trưng đã học có liên quan đến phân loại (xem thêm tại đây).
325
ngữ, lái xe, ở mức độ nhỏ, như nghiên cứu khoa học.
3. Hiểu nhầm: Ta đang không thể chỉ ra mục tiêu rõ ràng với
các điều kiện đưa ra. Nghĩ về thần đèn trong một cái chai và luôn sẵn
sàng đáp ứng các ước muốn của bạn. “Tôi muốn trở thành người giàu nhất
thế gian” - Bạn thành người giàu nhất thế giới, nhưng có một vấn đề đó là
tiền bạn giữ sẽ bị lạm phát. “Tôi muốn trở nên hạnh phúc cho cả phần đời
còn lại” - Bạn sẽ hạnh phúc trong 5 phút sau và thần đèn giết bạn. “Tôi ước
thế giới hòa bình” - Thần đèn hủy diệt cả nhân loại.
Do ta xác định mục tiêu sai, hoặc bởi vì ta không hề biết đến hoặc đong
đếm tất cả các ràng buộc. Một tập đoàn có mục tiêu đơn giản là kiếm tiền
cho các cổ đông của nó. Nhưng việc chỉ ra này không phản ánh đúng mục
đích thật sự với tất cả các ràng buộc mà ta muốn đảm bảo: Ví dụ, ta không
mong muốn công ty sẽ giết người để kiếm tiền, gây ô nhiễm các dòng sông,
hoặc in tiền giả. Con người có pháp luật, quy định, chế tài, trình tự phải
tuân theo, và công đoàn để hỗ trợ mục tiêu đó. Một ví dụ khác ta có thể
tự thấy đó là Paperclips, một trò chơi trong đó nhiệm vụ là bạn phải tạo ra
nhiều chiếc kẹp giấy nhất có thể. CẢNH BÁO: game gây nghiện. Tôi không
muốn tiết lộ quá nhiều ở đây. Trong học máy, sự không hoàn hảo của việc
xác định mục tiêu đến từ việc trừu tượng hóa dữ liệu không hoàn hảo (các
mẫu dữ liệu lỗi, lỗi đo đạc, ...), các hàm mất mát không có ràng buộc, thiếu
kiến thức về các ràng buộc, sự khác nhau về phần phối dữ liệu trong huấn
luyện và thực tế, ...
Sự số hóa đang dẫn dắt tự động hóa. Sự xác định mục tiêu không hoàn
hảo xung đột với việc tự động hóa. Tôi cho rằng xung đột này được gây ra
một phần bởi các phương pháp diễn giải.
Ta đã xác định được mục tiêu, quả cầu pha lê đã sẵn sàng, hãy cùng nhìn
xem ta sẽ đi tới đâu!
8.1 Tương lai của học máy
Nếu không có học máy sẽ không có học máy khả diễn giải. Do đó ta cần
phỏng đoán học máy sẽ đi về đâu trước khi ta nói tới tính khả diễn giải.
Học máy luôn đi kèm với rất nhiều hứa hẹn và kỳ vọng. Nhưng hãy bắt
đầu với một cái nhìn thiếu lạc quan một chút: Trong khi khoa học phát triển
rất nhiều các các công cụ học máy mới ra đời, theo tôi, khá khó để tích hợp
chúng vào đời sống và tạo ra các sản phẩm phục vụ con người. Không phải
vì ta không thể, chỉ đơn giản vì nó sẽ tốn thời gian cho các công ty và viện
nghiên cứu bắt kịp với nhau. Trong cơn lũ của trí tuệ nhân tạo hiện nay, các
công ty mở ra các phòng nghiên cứu về trí tuệ nhân tạo, các nhóm nghiên
cứu học máy và thuê các nhà khoa học dữ liệu, các chuyên gia học máy, các
kỹ sư AI, ... nhưng trên thực tế, việc này không ổn. Các công ty thường thậm
chí không có dữ liệu ở định dạng cần thiết và các nhà khoa học dữ liệu phải
đợi đến vài tháng. Đôi khi các công ty có những kỳ vọng quá cao về trí tuệ
nhân tạo và khoa học dữ liệu được thổi phồng bởi truyền thông và các nhà
học học dữ liệu không thể đáp ứng. Và thường không ai biết cách để đưa các
nhà khoa học dữ liệu vào các mô hình làm việc có sẵn bên cạnh rất nhiều
vấn đề khác. Điều này dẫn tới dự đoán đầu tiên của tôi:
Học máy sẽ phát triển chậm nhưng đều.
Số hóa đang được đẩy mạnh và mong muốn về tự động hóa cũng vậy.
Thậm chí nếu việc đưa học máy vào cuộc sống diễn ra chậm chạp đi chăng
nữa, học máy vẫn sẽ phát triển và có nhiều ứng dụng vào các doanh nghiệp,
sản phẩm, cũng như các mặt của đời sống.
Tôi tin rằng ta cần giải thích rõ ràng hơn cho những người ngoại đạo về
tính ứng dụng mạnh mẽ của học máy. Tôi biết rất nhiều nhà khoa học dữ
liệu được trả lương rất cao để thực hiện các công việc tính toán trên Excel
hoặc các tác vụ doanh nghiệp, và làm việc dựa trên các truy vấn SQL thay
vì ứng dụng học máy. Nhưng có một số ít công ty đã sử dụng học máy thành
công, đơn cử như các công ty tập đoàn công nghệ lớn. Ta cần tìm các phương
pháp ưu việt hơn để đưa học máy vào quy trình sản xuất và làm việc, huấn
luyện con người và phát triển các công cụ học máy dễ sử dụng. Tôi tin rằng
học máy sẽ trở nên dễ sử dụng hơn nhiều: Ta có thể đang thấy học máy
đang ngày càng dễ tiếp cận, ví dụ thông qua các dịch vụ đám mây (cloud
services) (“Machine Learning as a service”). Một khi học máy phát triển tới
một ngưỡng nhất định - hiện tại chúng ta qua những bước đầu tiên - dự đoán
tiếp theo của tôi là.
Học máy sẽ vận hành rất nhiều công việc.
Dựa trên nguyên lý rằng “những thứ có thể tự động hóa sẽ được tự động
hóa”, tôi kết luận rằng ngay khi có thể, các công việc sẽ được định hình lại
dưới bài toán có dạng dự đoán kết quả và được giải quyết bằng học máy. Học
máy là một dạng của tự động hóa hoặc ít nhất là một phần của nó:
- Sắp xếp/Ra quyết định/Hoàn thành tài liệu (ví dụ: các công ty bảo
hiểm, các doanh nghiệp pháp lý hoặc tư vấn).
- Đưa ra quyết định dựa trên dữ liệu ví dụ như các bài toán liên quan tới
tín dụng.
- Phát triển thuốc.
- Quản lý sản phẩm trong các dây chuyền lắp ráp.
- Xe tự hành.
- Chẩn đoán bệnh tật.
- Dịch ngôn ngữ. Với cuốn sách này, tôi sử dụng một dịch vụ dịch tên là
DeepL. Công cụ này sử dụng các mạng nơ ron để cải thiện chất lượng dịch
bằng cách dịch từ tiếng anh sang tiếng Đức sau đó dịch ngược lại tiếng Anh.
- Và rất nhiều các ứng dụng khác.
Sự đột phá của học máy không chỉ là thành quả của các máy tính hiện
đại, sự dồi dào của dữ liệu, các phần mềm tân tiến, mà còn:
Các công cụ khả diễn giải là chất xúc tác cho quá trình tích hợp
học máy.
Dựa trên tiên đề rằng mục tiêu của học máy có thể không bao giờ được
định rõ, điều này dẫn đến rằng học máy khả diễn giải sẽ cần thiết để thu hẹp
khoảng cách giữa các mục tiêu đúng đắn và các mục tiêu được xác định sai.
Trong rất nhiều lĩnh vực, tính khả diễn giải có thể là chất xúc tác cho việc
đưa học máy vào ứng dụng. Một vài dẫn chứng như sau: Rất nhiều người tôi
đã nói chuyện không sử dụng các mô hình học máy bởi vì chúng không thể
giải thích. Tôi tin rằng tính khả diễn giải sẽ giải quyết vấn đề này và giúp
học máy trở nên hấp dẫn đối với các doanh nghiệp và cá nhân đòi hỏi sự
minh bạch. Bên cạnh các mục tiêu được xác định sai, rất nhiều ngành khác
cũng đòi hỏi tính khả diễn giải, và coi nó thuộc về phạm trù pháp lý, do sự lo
ngại rủi ro hoặc để nhìn rõ bản chất vấn đề. Học máy tự động quá hóa trình
mô hình và giúp con người đi xa hơn từ dữ liệu và các bài toán: Điều này
làm tăng rủi ro với cách thiết lập thí nghiệm, phân phối huấn luyện, cách lấy
mẫu, mã hóa dữ liệu, kỹ thuật đặc trưng, ... Các công cụ diễn giải giúp ta
chỉ ra vấn đề dễ dàng hơn.
333
Chương 10
Trích dẫn
Nếu bạn thấy cuốn sách này hữu ích cho học tập, nghiên cứu, hoặc công
việc, sẽ rất tuyệt nếu bạn có thể trích dẫn cuốn sách này. Bạn có thể trích
dẫn như sau:
@book{molnar2019,
title = {Interpretable Machine Learning},
author = {Christoph Molnar},
note = {\url{https://christophm.github.io/
interpretable-ml-book/}},
year = {2019},
subtitle = {A Guide for Making Black Box Models Explainable}
}
Tôi luôn tò mò về việc liệu các phương pháp diễn giải được dùng ra sao
trong nghiên cứu cũng như trong công nghiệp. Nếu bạn dùng cuốn sách này
như một nguồn tham khảo, sẽ rất tuyệt nếu bạn có thể viết vài dòng cho tôi về
việc bạn dùng nó như thế nào. Tất nhiên việc này sẽ tùy vào cá nhân bạn và
chỉ để thỏa mãn tính hiếu kỳ của tôi cũng như để thúc đẩy việc trao đổi thông
tin giữa chúng ta. Thư điện tử của tôi là: christoph.molnar.ai@gmail.com .
334
Chương 11
335
Lời cảm ơn
Nhóm dịch xin chân thành cảm ơn Truc Loan (trucloan185@gmail.com)
đã đóng góp tích cực vào giai đoạn đầu của dự án này. Ngoài ra, bản dịch
không thể hoàn thành nếu thiếu sự giúp đỡ trong quá trình chỉnh lý của Lan
Phan (KIST, S. Korea - orchidna@gmail.com).
336
Bảng thuật ngữ
Khi dịch cuốn sách này, ngoài những thuật ngữ đã được dịch trong cuốn
“Đắm mình vào học sâu”, các thuật ngữ khác được chúng tôi dịch và tổng
hợp tại đây. Nếu bạn thấy cách dịch chưa hợp lý, hãy phản hồi bằng cách
tạo 1 issue trên trang Github của chúng tôi.
337