Machine unlearning

Trong học máy, Machine unlearning (tạm dịch: Máy học cách quên) là một kỹ thuật giúp xóa kiến thức từ một phần dữ liệu đã học khỏi mô hình. Với sự phổ biến của các mô hình ngôn ngữ lớn như ChatGPT hay Gemini, nhiều người cho rằng chỉ cần yêu cầu mô hình "hãy quên đi" hay xóa đoạn chat là có thể khiến chúng "quên" những gì mình mong muốn. Tuy nhiên, trên thực tế, điều này không hề thay đổi tham số của mô hình mạng thần kinh nhân tạo, và chẳng mấy ảnh hưởng đến việc chúng có thực sự quên đi hay không.

Việc mô hình có thực sự "quên" đi hay không thường được định nghĩa theo "tiêu chuẩn vàng" là khiến mô hình phải học lại tất cả các kiến thức từ đầu theo đúng trình tự nó đã từng được huấn luyện, với điểm khác biệt duy nhất là không bao gồm phần dữ liệu mình muốn quên đi kia. Đây được gọi là phương pháp Học-lại-từ-đầu (Retrain-from-scratch), một giải pháp hết sức tốn kém nhưng đảm bảo được mô hình chắc chắn không còn tí dấu vết gì của những dữ liệu kia.

Nhu cầu 
Năm 2016, Liên minh châu Âu đã thông qua quy định bảo vệ dữ liệu chung (GDPR), trong đó cho phép người dùng của bất kì dịch vụ nào trên không gian mạng có "quyền được quên". Quyền này yêu cầu nhà cung cấp dịch vụ (chẳng hạn như ChatGPT) phải xóa sạch tất cả những thông tin họ có về người dùng này khỏi hệ thống của họ. Tuy nhiên, khi "hệ thống của họ" là một mạng thần kinh nhân tạo, việc xóa bỏ này trở nên hết sức phức tạp bởi bản chất mô hình học máy là một "hộp đen" mà ta chỉ có thể biết đầu vào nào sẽ cho ra đầu ra gì, và kể cả khi biết rõ giá trị của từng tham số, ta cũng khó lòng diễn giải được từng giá trị thực sự mang ý nghĩa gì, hay đâu là tham số trực tiếp khiến mô hình đưa ra dự đoán sai.

Ngoài ra, Machine unlearning còn hữu dụng khi người sở hữu mô hình nhận ra các vấn đề bên trong tập dữ liệu huấn luyện, chẳng hạn như có người cố tình thêm các mẫu mã độc vào để backdoor mô hình, hoặc đơn giản là loại bỏ các dữ liệu bị lỗi hoặc không mong muốn.

Định nghĩa 
Cho mô hình  được huấn luyện bởi thuật toán  trên tập dữ liệu . Gọi  là tập dữ liệu cần xóa bỏ (forget set) và ​ là tập dữ liệu cần giữ lại (retain set). Machine unlearning là bài toán tìm một thuật toán  sao cho mô hình đầu ra  hoặt động như thể nó chỉ được huấn luyện trên  từ đầu, tức là , mà không cần thực sự chạy lại , hay .

Phân loại

Theo độ chính xác 
Quên chính xác (Exact unlearning) yêu cầu mô hình đầu ra  phải có phân phối đầu ra giống hệt về mặt toán học với mô hình được học lại từ đầu trên ​, tức là . Để đạt được điều này mà không cần học lại toàn bộ, các phương pháp exact unlearning thường yêu cầu thay đổi cách tổ chức dữ liệu và quá trình huấn luyện ngay từ đầu. Ví dụ tiêu biểu là SISA  (Sharded, Isolated, Sliced, and Aggregated) của Bourtoule và cộng sự, trong đó tập dữ liệu được chia thành nhiều mảnh (shard) không giao nhau, mỗi phần được dùng để huấn luyện một mô hình con độc lập trước khi được tổng hợp thành một mô hình toàn cục. Khi có yêu cầu xóa dữ liệu, chỉ cần học lại mô hình con chứa dữ liệu đó, thay vì học toàn bộ. Về cơ bản phuơng pháp hoạt động của nó có điểm tưởng đồng với học liên kết nếu ta coi mỗi mảnh là một client, tuy nhiên nó không có quá trình phân phối lại mô hình toàn cục cho các mô hình con, nên các mô hình con này hoàn toàn không biết gì về kiến thức của nhau, giúp unlearning thuận tiện hơn. Nhược điểm của các phương pháp exact unlearning như vậy là đòi hỏi thay đổi toàn bộ quy trình huấn luyện và tốn thêm bộ nhớ để lưu trữ các mô hình trung gian.

Quên tuơng đối (Approximate unlearning) chấp nhận một sai số nhỏ so với tiêu chuẩn vàng, đổi lại không cần thay đổi cách huấn luyện và nhanh hơn đáng kể. Mức độ "gần" được đo bằng khoảng cách giữa phân phối của  và , thường dùng theo bảo mật vi sai (differential privacy):  được gọi là -unlearned nếu với mọi tập đầu ra :Trong đó  và  càng nhỏ thì  càng gần với mô hình học-lại-từ-đầu. Mặc dù vậy, không phải cứ áp dụng bảo mật vi sai vào mô hình là sẽ đạt được unlearning tốt: một mô hình unlearn tốt có tính bảo mật vi sai, không đồng nghĩa với bảo mật vi sai thì sẽ unlearn tốt. Bởi nhẽ sử dụng bảo mật phương sai thường sẽ giảm cả hiệu quả trên tập dữ liệu . Khi , đây chính là quên chính xác. Một vài hướng tiếp cận phổ biến trong quên tuơng đối bao gồm:

 Gia tăng độ dốc (Gradient ascent): thay vì dùng suy giảm độ dốc để giảm thiểu hàm mất mát trên , thuật toán thực hiện gia tăng độ dốc, tức đi cùng chiều với gradient, để tăng mất mát trên , qua đó làm suy giảm dần ảnh hưởng của những dữ liệu này lên mô hình. Nhược điểm là gia tăng độ dốc thuần túy có thể phá hủy hiệu suất của mô hình trên ​ nếu không được kiểm soát. Để khắc phục nhược điểm trên, một số phương pháp kết hợp gia tăng độ dốc trên  với suy giảm độ dốc trên ​ trong cùng một bước cập nhật, sao cho mô hình vừa "quên"  vừa duy trì hiệu suất trên phần dữ liệu còn lại.
 Dán nhãn ngẫu nhiên: thay vì tối đa hóa mất mát như gia tăng độ dốc, thuật toán fine-tune mô hình trên ​ với các nhãn được gán ngẫu nhiên, khiến mô hình "nhầm lẫn" về những dữ liệu này thay vì hoàn toàn phủ nhận chúng. Phương pháp này ít gây bất ổn hơn gradient ascent nhưng đôi khi không đủ mạnh để xóa hoàn toàn ảnh hưởng của .
 Thêm nhiễu: Guo và cộng sự đề xuất dùng một bước cập nhật Newton để xấp xỉ ảnh hưởng của việc xóa một điểm dữ liệu, và chứng minh rằng kết quả thỏa mãn -certified removal tức mô hình thu được không thể phân biệt được so với mô hình học-lại-từ-đầu về mặt xác suất. Về cơ bản nó là sử dụng bảo mật vi sai trên các tham số của mô hình như đã phân tích ở trên, nên cũng gặp vấn đề tương tự. Để khắc phục, Golatkar và cộng sự cũng thêm nhiễu, nhưng dựa vào phân phối chuẩn tùy theo độ nhạy của mỗi tham số trên  để giảm ảnh hưởng đến hiệu suất. 
 Chứng cất tri thức với mô hình được chưng cất có kết quả yếu: Chundawat và cộng sự đề xuất phương pháp sử dụng hai "giáo viên": một giáo viên giỏi (mô hình gốc) dạy mô hình mới cách xử lý ​, và một giáo viên kém (một mô hình nhỏ không có khả năng ghi nhớ) đưa ra các đầu ra vô nghĩa cho ​. Mô hình học sinh được huấn luyện để bắt chước giáo viên giỏi trên Dr​ và giáo viên kém trên , qua đó quên đi  mà không làm hỏng hiệu suất trên ​.

Theo loại dữ liệu cần quên 
Ngoài cách phân loại theo mức độ chính xác, machine unlearning còn được phân loại theo loại thông tin cần xóa bỏ.

 Sample unlearning: xóa ảnh hưởng của một hoặc một số mẫu dữ liệu cụ thể. Đây là dạng phổ biến nhất, thường gặp khi người dùng yêu cầu xóa dữ liệu cá nhân theo GDPR.
 Class unlearning: xóa toàn bộ kiến thức liên quan đến một nhãn hoặc lớp trong bài toán phân loại. Ví dụ: xóa khả năng nhận diện một loại vật thể cụ thể khỏi mô hình thị giác máy tính.
 Feature unlearning: xóa ảnh hưởng của một thuộc tính nhất định trong dữ liệu, chẳng hạn như thông tin về chủng tộc hay giới tính, nhằm giảm thiên kiến trong mô hình.
 Client unlearning: đối với học liên kết còn có một loại unlearning nữa, là xóa toàn bộ dữ liệu của một người dùng. Điều này có phần phức tạp hơn so với việc unlearning trong một mô hình học máy thông thường, vì kiến thức của một người dùng đã bị phân tán một cách gián tiếp thông qua quá trình học tập, tổng hợp, và gửi lại mô hình chung từ máy chủ xuống các người dùng. Vì vậy phần lớn phuơng pháp unlearning trong học liên kết là quên tương đối.

Đánh giá sự hiệu quả 
Một thách thức quan trọng của machine unlearning là làm sao biết mô hình đã thực sự "quên", vì ta không thể kiểm tra trực tiếp bên trong tham số xem kiến thức về  còn tồn tại hay không. Các phương pháp phổ biến hiện nay bao gồm:

 So sánh đầu ra và tham số với mô hình học-lại-từ-đầu là cách trực tiếp nhất. Người ta đo khoảng cách giữa  và  qua các chỉ số như độ chính xác trên  (mô hình đã quên tốt nếu độ chính xác trên ​ giảm về mức gần với mô hình chưa thấy dữ liệu đó) và độ chính xác trên ​ (phải được giữ nguyên). Ngoài ra, một số phương pháp so sánh trực tiếp phân phối của các logit đầu ra hoặc khoảng cách giữa các tham số  và , tuy nhiên khoảng cách tham số nhỏ không đảm bảo hành vi giống nhau và ngược lại.
 Tấn công suy luận thành viên (Membership inference attack) là cách đánh giá từ góc độ bảo mật. Ý tưởng của nó là: nếu mô hình đã thực sự quên ​, thì một kẻ tấn công có mô hình trong tay cũng không thể đoán được liệu một mẫu trong ​ từng nằm trong tập huấn luyện hay không, tốt hơn mức đoán ngẫu nhiên. Nếu tấn công suy luận thành viên vẫn phân biệt được ​ với mức chính xác cao, điều đó cho thấy mô hình chưa thực sự quên.
 Hàm ảnh hưởng (Influence functions) ước tính mức độ ảnh hưởng của từng điểm dữ liệu lên tham số mô hình thông qua ma trận Hessian hay các ước tính của nó như ma trận Fisher của hàm mất mát. Về lý thuyết, nếu ​ đã bị "lãng quên" hoàn toàn, ảnh hưởng của nó lên ​ phải bằng không. Tuy nhiên trên thực tế, do hàm ảnh hưởng có thể được tính ngay trong quá trình unlearning, nên chúng thường được dùng trực tiếp như một phần của thuật toán unlearn hơn là chỉ để đánh giá.
 Tấn công backdoor trong học liên kết: trong học liên kết, một cách kiểm tra xem client unlearning có thực sự hoàn tất hay không là thử cấy một mô hình độc hại chứa backdoor trong quá trình huấn luyện, rồi kiểm tra xem cửa hậu đó có còn kích hoạt được sau khi unlearn không. Nếu mô hình sau unlearn vẫn phản ứng với trigger, điều đó chứng tỏ ảnh hưởng của client đó chưa được xóa hoàn toàn.

Thách thức 
Đánh đổi giữa tốc độ, độ chính xác, và hiệu suất: các phương pháp exact unlearning đảm bảo kết quả toán học nhưng đòi hỏi thay đổi toàn bộ quy trình huấn luyện và tốn bộ nhớ lưu trữ trung gian. Các phương pháp approximate unlearning nhanh hơn nhưng không có bảo đảm chắc chắn, và thường phải cân bằng giữa mức độ quên  và việc duy trì hiệu suất trên .

Quên quá mức: nếu thuật toán unlearn quá "mạnh", đặc biệt với các phương pháp dựa trên gia tăng độ dốc, mô hình có thể mất đi kiến thức không liên quan đến , làm giảm hiệu suất tổng thể. Đây là vấn đề đặc biệt nghiêm trọng khi  và  có phân phối dữ liệu tương tự nhau.

Trong các mô hình ngôn ngữ lớn: với các mô hình có hàng tỉ tham số và tập dữ liệu huấn luyện không được ghi chép đầy đủ, việc xác định chính xác  và  vốn đã khó, chưa kể việc kiến thức trong LLM không được lưu trữ cục bộ mà phân tán khắp các lớp và tham số, khiến unlearning một khái niệm hay một sự kiện cụ thể trở nên phức tạp hơn nhiều so với xóa một mẫu dữ liệu đơn lẻ. Không chỉ vậy, việc mộ hình có thể "đoán" ra ý nghĩa của một số từ đã bị quên đi cũng khiến việc đánh giá trở nên khó khăn hơn.

Thiếu tiêu chuẩn đánh giá thống nhất: hiện chưa có một bộ benchmark hay metric được cộng đồng đồng thuận rộng rãi để đánh giá chất lượng unlearning. Các phương pháp khác nhau thường dùng các tập dữ liệu, phương pháp đánh giá, và định nghĩa thế nào là "quên thành công" khác nhau, khiến việc so sánh kết quả giữa các nghiên cứu trở nên khó khăn.

Tham khảo 

Khoa học máy tính
Học máy
Trí tuệ nhân tạo
Bảo mật dữ liệu