Báo Cáo Môn Khai Phá Dữ Liệu: Đề tài Tính toán số và suy luận xấp xỉ

39 4 0
Báo Cáo Môn Khai Phá Dữ Liệu: Đề tài Tính toán số và suy luận xấp xỉ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - ĐHQGHN KHOA CÔNG NGHỆ THƠNG TIN Báo Cáo Mơn Khai Phá Dữ Liệu Giảng viên : PGS.TS Hà Quang Thụy Nội dung nghiên cứu Chương 4: Numerical Computation Chương 19: Approximate Inference Nhóm 13 Thành viên nhóm: Cao Phương Nam Trần Văn Tài Phát Hồ Đức Thành Nguyễn Tuấn Vượng Nguyễn Anh Tuấn MỤC LỤC Chương 4: Tính tốn số Các thuật tốn học máy thường u cầu khối lượng tính toán lớn Các thuật toán giải tốn tính tốn cách thực cập nhật tham số qua nhiều vịng lặp thay đưa cơng thức tính tốn cho kết cuối Các phép toán chủ yếu tối ưu hoá (tìm giá trị đối số để cực đại hố cực tiểu hoá giá trị hàm số) giải hệ phương trình tuyến tính Ngay việc đánh giá hàm số đơn giản liên quan tới số thực máy tính tốn khó, số thực khơng thể biểu diễn xác với lượng nhớ hữu hạn 1.1 Tràn luồng thấp luồng Khó khăn việc thực tính tốn máy tính cần biểu diễn số thực vô hạn với mơ thức bit hữu hạn Điều có nghĩa là, với hầu hết số thực, ta chấp nhận lượng sai số biểu diễn xấp xỉ số thực máy tính Trong nhiều trường hợp, sai số sai số làm trịn Tuy nhiên, việc làm tròn số lại gây vấn đề, đặc biệt kết hợp nhiều bước tính tốn, nhiều sai số nhỏ hợp sức gây sai số đủ lớn để khiến thuật toán thất bại thực tế dù hồn tồn lý thuyết khơng tính đến vấn đề thiết kế Có dạng lỗi làm trịn nguy hiểm thấp luồng (underflow) Thấp luồng xảy số gần làm tròn thành Nhiều hàm thay đổi tính chất cách đầu vào 0, thay số dương nhỏ Ví dụ, ta thường tránh phép chia cho (một số môi trường phần mềm sinh ngoại lệ (exception) trường hợp xảy ra, số khác trả giá trị NaN) phép lấy logarit (đầu thường coi −∞, sau trở thành NaN sử dụng phép tính số học đó) ND: NaN viết tắt Not a Number, nghĩa không-phải-số Một dạng lỗi nguy hiểm khác tràn luồng (overflow) Tràn luồng xảy số với giá trị lớn bị xấp xỉ thành ∞ −∞ Các phép tính số học sau quy giá trị vơ hạn thành NaN Một ví dụ hàm số cần phải bình ổn để tránh tràn luồng thấp luồng hàm softmax (softmax function) Hàm softmax thường dùng để dự đoán xác suất một phân bố multinoulli Hàm softmax định nghĩa sau: (4.1) Xét trường hợp tất có giá trị số c Về mặt giải tích, ta dễ thấy tất đầu hàm Nhưng mặt số học, điều khơng xảy c có trị tuyệt đối cực lớn Nếu c âm, exp(c) bị thấp luồng Điều dẫn tới việc mẫu số hàm cực đại mềm kết hàm vô định Khi c dương, exp(c) bị tràn luồng kết hàm vô định Cả hai vấn đề giải cách tính gián tiếp hàm softmax(x) thông qua hàm softmax(z) với Một vài biến đổi đại số đơn giản giá trị hàm softmax không bị thay đổi mặt giải tích ta cộng trừ vector đầu vào với đại lượng vô hướng (chẳng hạn số) Khi trừ phần tử vector cho , giá trị đối số lớn hàm exp Điều loại bỏ nguy bị tràn luồng Tương tự, mẫu số hàm có thành phần có giá trị (ứng với trường hợp đối số hàm exp nói trên), ta loại bỏ khả mẫu số bị thấp luồng gây phép chia cho Tuy nhiên, tồn vấn đề nhỏ Thấp luồng tử số khiến giá trị biểu thức Có nghĩa ta tính tốn giá trị hàm logsoftmax(x) cách tính giá trị hàm cực đại mềm trước thực phép lấy logarit, ta thu kết sai −∞ Thay vào đó, ta cần cài đặt hàm riêng để tính tốn hàm logsoftmax theo cách bình ổn kết mặt số học Ta bình ổn hàm logsoftmax kĩ thuật tương tự dùng với hàm cực đại mềm Trong phần lớn sách này, không liệt kê cụ thể tất vấn đề liên quan tới tính tốn số thực thi nhiều thuật toán nêu sách Những nhà phát triển thư viện bậc thấp cần quan tâm tới vấn đề liên quan tới tính tốn số lập trình thuật toán học sâu Hầu hết độc giả sách đơn giản dựa vào thư viện bậc thấp cung cấp cách cài đặt ổn định Trong vài trường hợp, ta cài đặt thuật toán thư viện bậc thấp tự bình ổn kết thuật tốn Ví dụ, Theano [Bergstra et al., 2010; Bastien et al., 2012] thư viện tự động phát bình ổn nhiều biểu thức khơng ổn định mặt tính tốn số thường gặp nghiên cứu học sâu 1.2 Tính điều hịa Tính điều hịa, nói đến mức độ thay đổi đầu hàm tương ứng biến đầu vào có thay đổi nhỏ Những hàm thay đổi nhanh biến đầu vào biến động chút gây vấn đề hệ thống tính tốn, sai số làm trịn đầu vào dẫn đến thay đổi lớn đầu Xét hàm Khi ma trận có phép phân tích giá trị riêng, hệ số điều hịa (condition number) là: (4.2) Đây tỉ số giá trị tuyệt đối giá trị riêng lớn nhỏ Khi tỉ số lớn, phép lấy ma trận nghịch đảo nhạy cảm với sai số đầu vào Sự nhạy cảm tính chất nội ma trận, kết sai số làm tròn nghịch đảo ma trận Các ma trận điều hòa khuếch đại sai số tồn trước ta thực phép nhân với ma trận nghịch đảo thực Trong thực tế, sai số nghiêm trọng sai số liên quan tới tính tốn số q trình tính nghịch đảo 1.3 Tối ưu dựa gradient Phần lớn thuật toán học sâu liên quan tới tối ưu theo cách hay cách khác Tối ưu tác vụ cực tiểu hóa cực đại hóa hàm f(x) cách thay đổi x Ta thường đưa tốn tối ưu dạng cực tiểu hóa hàm f(x) Ta giải tốn tìm cực đại thơng qua thuật tốn tìm cực tiểu cách cực tiểu hoá hàm −f(x) Các hàm ta cần cực tiểu hóa cực đại hóa gọi hàm mục tiêu (objective function), tiêu chuẩn (criterion) Khi ta cực tiểu hố chúng, hàm cịn gọi hàm chi phí (cost function), hàm mát (loss function) hay hàm sai số (error function) Trong sách này, thuật ngữ dùng thay mang ý nghĩa tương đương, số tài liệu khác học máy sử dụng thuật ngữ với ý nghĩa khác Ta thường kí hiệu giá trị đối số để hàm số đạt cực đại cực tiểu dấu ∗ Ví dụ, ta kí hiệu Chúng ngầm định độc giả quen thuộc với phép tính vi tích phân, chúng tơi điểm qua số khái niệm phép tính vi tích phân liên quan tới tốn tối ưu hóa Giả sử, ta có hàm với số thực Đạo hàm (derivative) hàm kí hiệu hay Đạo hàm cho ta biết độ dốc hàm điểm Nói cách khác, cho ta biết thay đổi hàm tương ứng với thay đổi nhỏ biến: Do đó, đạo hàm có ích việc tối thiểu hóa hàm cho biết nên thay đổi để cải thiện hàm tối ưu lượng nhỏ Ví dụ, ta biết với đủ nhỏ nhỏ Từ đây, ta giảm giá trị hàm cách tăng giảm lượng nhỏ hướng ngược với hướng của đạo hàm Kỹ thuật gọi trượt gradient (gradient descent) Hình 4.1 minh họa cho kỹ thuật trượt gradient (gradient descent) Khi f′(x)=0f , ta nên thay đổi x dựa vào đạo hàm Ta gọi điểm mà f′(x)=0 điểm tới hạn (critical point) điểm dừng (stationary point) Điểm cực tiểu cục (local minimum) điểm mà giá trị f(x) nhỏ giá trị hàm tất điểm lân cận, đó, ta giảm giá trị hàm f(x) cách thay đổi x lượng vô nhỏ trước Tương tự, điểm cực đại cục (local maximum) điểm mà f(x) có giá trị lớn giá trị hàm tất điểm lân cận, đó, ta khơng thể tăng giá trị hàm f(x) cách thay đổi x lượng vô nhỏ trước Có vài điểm tới hạn khơng phải cực đại hay cực tiểu Các điểm ta gọi điểm yên ngựa (saddle point) Hình 4.2 minh họa loại điểm tới hạn Một điểm mà hàm f(x) đạt giá trị nhỏ gọi cực tiểu toàn cục (global optimum) hàm Một hàm số có nhiều điểm cực tiểu tồn cục Hàm có điểm cực tiểu cục mà khơng phải cực tiểu tồn cục Trong phạm vi học sâu, thường gặp tốn tối ưu mà hàm có nhiều cực tiểu cục khơng phải tồn cục, hàm có nhiều điểm yên ngựa bao quanh vùng phẳng Tất vấn đề làm cho việc tối ưu hóa trở nên khó khăn, đặc biệt biến hàm số biến nhiều chiều Do đó, thường cần tìm giá trị mà hàm ff có giá trị nhỏ không thiết phải cực tiểu theo nghĩa Xem ví dụ minh họa hình 4.3 Chúng ta thường cực tiểu hóa hàm đa biến: Để khái niệm “tối ưu hóa” trở nên hợp lý, đầu hàm phải đại lượng vô hướng Với hàm đa biến, ta phải sử dụng khái niệm đạo hàm riêng (partial derivative) Đạo hàm riêng đại lượng đo biến thiên hàm số f tăng điểm Gradient khái niệm tổng quát đạo hàm cho vector: gradient hàm số vector chứa tất đạo hàm riêng hàm số, kí hiệu: Phần tử gradient biểu diễn đạo hàm riêng phần rong không gian đa chiều, điểm tới hạn điểm mà phần tử gradient Đạo hàm theo hướng (directional derivative) theo phương (một vector đơn vị) độ dốc hàm số theo phương Nói cách khác, đạo hàm theo hướng đạo hàm hàm số Để tìm giá trị nhỏ , cần tìm hướng cho hàm giảm nhanh Ta thực điều cách sử dụng đạo hàm theo hướng: (4.3) = (4.4) với θ góc u gradient Thay bỏ qua đại lượng không phụ thuộc vào u, tốn trở thành tìm Hàm số đạt giá trị cực tiểu u có hướng ngược lại so với gradient Nói cách khác, gradient theo hướng lên phương nghịch gradient theo hướng xuống Chúng ta giảm f cách di chuyển theo phương nghịch gradient Phương pháp gọi gradient dốc (steepest gradient) trượt gradient (gradient descent) Trượt gradient đưa điểm mới: (4.5) ϵ tốc độ học (learning rate), đại lượng vô hướng dương xác định kích thước bước nhảy Chúng ta lựa chọn ϵ theo nhiều cách khác Một cách phổ biến cho ϵ nhận giá trị số nhỏ, tìm bước nhảy khiến cho đạo hàm theo hướng bị triệt tiêu Một cách tiếp cận khác tìm giá trị với số giá trị khác ϵ lựa chọn giá trị dẫn đến giá trị nhỏ hàm mục tiêu Chiến lược gọi dò đường (line search) Trượt gradient hội tụ phần tử gradient (hoặc, thực tế, gần 0) Trong vài trường hợp, ta tránh việc chạy thuật tốn theo vịng lặp mà nhảy trực tiếp đến điểm tới hạn cách giải phương trình để tìm x Mặc dù trượt gradient bị giới hạn để tối ưu hóa khơng gian liên tục, ý tưởng chung việc lặp lại bước di chuyển nhỏ (mà coi bước di chuyển nhỏ tốt nhất) để hướng tới kết tốt khái qt hóa cho khơng gian rời rạc Quá trình tăng hàm mục tiêu tham số rời rạc gọi trình leo đồi(hill climbing) [Russel and Norvig, 2003] 1.3.1 Ma trận Jacobi ma trận Hesse Đơi cần tìm tất đạo hàm riêng hàm có đầu vào đầu vector Ma trận chứa tất đạo hàm riêng gọi ma trận Jacobi(Jacobian matrix) Cụ thể, có hàm , ma trận Jacobi f xác định sau Đôi quan tâm đến đạo hàm đạo hàm Ta gọi đạo hàm bậc hai (second derivative) Ví dụ, hàm , đạo hàm đạo hàm ký hiệu Trong trường hợp chiều, ta kí hiệu f′′(x) Đạo hàm bậc hai cho biết đạo hàm bậc biến thiên thay đổi đầu vào Đây tính chất quan trọng cho ta biết liệu bước cập nhật gradient có cải thiện hàm số mong đợi dựa gradient hay không Chúng ta coi đạo hàm bậc hai phép đo độ cong (curvature) Giả sử có hàm bậc hai (nhiều hàm phát sinh thực nghiệm bậc hai xấp xỉ tốt dạng bậc hai, cách cục bộ) Nếu hàm có đạo hàm bậc hai khơng có độ cong Nó hoàn toàn đường thẳng cần sử dụng gradient ta dự đốn giá trị Nếu gradient 1, thực bước cập nhật có kích thước ϵ dọc theo vector đối gradient, hàm chi phí giảm lượng ϵ Nếu đạo hàm bậc hai số âm, hàm cong xuống dưới, hàm chi phí thực tế giảm nhiều ϵ Cuối cùng, đạo hàm bậc hai dương, đường cong hàm hướng lên trên, đó, hàm chi phí giảm ϵ Xem hình 4.4 để thấy dạng cong khác ảnh hưởng đến mối quan hệ giá trị dự đoán hàm chi phí sử dụng gradient với giá trị thực hàm Khi hàm có biến số nhiều chiều, có nhiều đạo hàm bậc hai Ta thu thập đạo hàm lại với thành ma trận gọi ma trận Hesse (Hessian matrix) Ma trận Hesse xác định sau: (4.6) Nói cách khác, ma trận Hesse ma trận Jacobi gradient Tại điểm mà đạo hàm riêng bậc hai liên tục, tốn tử vi phân có tính chất giao hốn; có nghĩa là, thứ tự chúng hoán đổi: (4.7) Điều dẫn tới , ma trận Hesse đối xứng điểm Hầu hết hàm số gặp phải học sâu có Hesse đối xứng hầu hết nơi (almost everywhere) Bởi ma trận Hessie thực đối xứng, nên ta phân tách thành tập giá trị riêng thực sở trực giao vector riêng(eigenvector) Đạo hàm bậc hai theo hướng cụ thể biểu diễn vector đơn vị d cho Khi d vector riêng H, đạo hàm bậc hai theo hướng giá trị riêng tương ứng Đối với hướng khác d, đạo hàm bậc hai theo hướng trung bình có trọng số tất trị riêng, với trọng số nằm 1, vector riêng có góc nhỏ với d nhận trọng số lớn Trị riêng lớn giá trị lớn đạo hàm bậc hai (theo hướng) trị riêng nhỏ giá trị nhỏ đạo hàm bậc hai Đạo hàm bậc hai (theo hướng) cho ta biết ta kỳ vọng bước trượt gradient thực tốt Chúng ta tạo xấp xỉ chuỗi Taylor bậc hai hàm f(x) xung quanh điểm : (4.8) gradient ma trận Hesse Nếu ta sử dụng tốc độ học , điểm Thay vào công thức xấp xỉ trên, ta thu (4.9) Ba số hạng công thức theo thứ tự là: giá trị ban đầu hàm , mức giảm kỳ vọng độ dốc hàm hiệu chỉnh ta đưa vào để tính đến độ cong hàm Khi đại lượng cuối lớn, bước trượt gradient thực tế di chuyển lên Khi số số âm, xấp xỉ chuỗi Taylor dự đoán tăng mãi giảm mãi Khi số dương, giải phương trình tìm giá trị bước nhảy tối ưu để giảm chuỗi xấp xỉ Taylor hàm chi phí lượng lớn nhất, ta có (4.10) Trong trường hợp xấu nhất, có hướng với vector riêng tương ứng với giá trị riêng tối đa , độ lớn bước nhảy tối ưu Trong phạm vi mà hàm số 10 Nếu nối vector tập huấn luyện vào ma trận , nối tất vector vào ma trận , quy trình học mã hố thưa thớt bao gồm việc cực tiểu hóa (19.16) Hầu tất ứng dụng mã hoá thưa bao gồm suy giảm trọng số ràng buộc tiêu chuẩn cột ma trận , để ngăn cản giải pháp bệnh lý cực nhỏ cực lớn Chúng ta cực tiểu hoá cách luân phiên việc cực tiểu hoá cực tiểu hoá Cả hai toán phụ lồi Trên thực tế, cực tiểu hố với tốn hồi quy tuyến tính Cực tiểu hố hai đối số thường khơng phải toán lồi Việc cực tiểu hoá cần phải có thuật tốn đặc biệt thuật tốn tìm dấu hiệu thuộc tính (Lee cộng sự, 2007) 2.4 Suy luận học biến phân Chúng ta thấy làm mà cận rõ ràng cận , mà suy luận xem cực đại hố , cách việc học xem cực đại hoá Chúng ta thấy thuật tốn EM giúp có bước tiến lớn việc học với giá trị cố định thuật toán học dựa vào suy luận MAP giúp học việc dùng điểm ước lượng suy luận toàn phân phối Bây giờ, đưa phương pháp tổng quát cho việc học biến phân Ý tưởng đằng sau việc học biến phân cực đại hố qua họ phân phối hạn chế Họ phân phối chọn để dễ dàng tính tốn Cách thường dùng đưa giả định việc tìm thừa số Một cách tiếp cận phổ biến để học biến phân áp đặt hạn chế qq phân bố giai thừa: (19.17) Phương pháp gọi trường trung bình (mean field) Một cách tổng quát hơn, áp đặt cấu trúc đồ thị ta chọn qq, để xác định cách linh động tương tác mà ta muốn phép xấp xỉ thu nạp Tồn mơ hình đồ thị gọi suy luận biến phân có cấu trúc (structured variational inference) (Saul Jordan, 1996) Sự tuyệt vời phương pháp không cần phải định dạng tham số cụ thể cho Chúng ta định rõ cách tìm thừa số cho nó, sau tốn tối ưu hố 25 định phân phối xác suất tối ưu hạn chế tìm thừa số Đối với biến tiềm ẩn rời rạc, sử dụng kỹ thuật tối ưu hóa truyền thống để tối ưu hóa số biến số hữu hạn mô tả phân phối Đối với biến ẩn liên tục, dùng phép tính biến phân (một nhánh tốn học) để tối ưu qua trường không gian hàm xác định hàm sử dụng để biểu diễn Phép tính biến phân khởi nguồn tên “phép học biến phân” “suy luận biến phân”, tên chí dùng biến ẩn rời rạc mà phép biến phân không cần thiết Với biến ẩn liên tục, phép tính biến phân kỹ thuật mạnh mẽ để loại bỏ trách nhiệm người thiết kế cho mơ hình, mà người thiết kế mơ hình cần cách tìm thừa số , phải đoán xem để thiết kế cho xấp xỉ hậu nghiệm xác Bởi định nghĩa , nghĩ việc cực đại hóa với giống cực tiểu hóa Nghĩa là, làm khớp cho Tuy nhiên, ta làm điều theo hướng ngược lại với độ phân kỳ KL thay thường dùng để làm khớp phép xấp xỉ Khi mà dùng hợp lý hàm cực học cách làm khớp mơ hình cho liệu, ta cực tiểu hóa Như mơ tả hình 3.6, hợp lý hàm cực đại khyến khích mơ hình lấy xác st cao điểm mà liệu có xác suất cao, thủ tục suy luận hướng tối ưu hóa khuyến khích lấy xác suất thấp điểm mà hậu nghiệm thực có xác suất thấp Cả hai hướng phân kỳ KL có tính chất đáng mong muốn không mong muốn Sự lựa chọn sử dụng tuỳ thuộc vào thuộc tính ưu tiên ứng dụng Trong tốn suy luận tối ưu, dùng lý tính tốn Cụ thể hơn, để tính tốn , phải đánh kỳ vọng theo , để làm ta cần thiết kế cho đơn giản, cần đơn giản hoá kỳ vọng yêu cầu Hướng ngược lại phân kỳ KL yêu cầu tính giá trị kỳ vọng theo hậu nghiệm thực Bởi dạng hậu nghiệm thực định lựa chọn mơ hình, khơng thiết kế cách tiếp cận tốn để tính xác 2.4.1 Những biến ẩn rời rạc Suy luận biến phân với giá trị ẩn rời rạc tương đối cụ thể Chúng ta định nghĩa phân phối , thường định nghĩa phân phối chọn mà thừa số định nghĩa truy hồi trạng thái rời rạc Trong trường hợp đơn giản nhất, nhị phân giả định trường trung bình tìm thừa số thơng qua Trong trường hợp này, tham số hóa với vector có đầu vào xác xuất Khi Sau định để biểu diễn , đơn giản tối ưu tham số Với biến ẩn rời rạc, toán tối ưu tiêu chuẩn Theo 26 nguyên tắc, lựa chọn q thực thuật tốn tối ưu nào, ví dụ trượt gradient Bởi việc tối ưu phải xảy vịng lặp lồng thuật tốn học, nhanh Để đạt tốc độ này, thường dùng thuật toán tối ưu thiết kế để giải vấn đề tương đối nhỏ đơn giản vài bước lặp Một lựa chọn thường thấy lặp lại thông qua phương trình điểm cố định, cách khác giải quyết: (19.18) cho Chúng ta liên tục cập nhật phần tử ta thoả mãn điều kiện hội tụ Một cách cụ thể hơn, trình bày cách ứng dụng suy luận biến phân cho mơ hình mã hố thưa nhị phân (binary sparse coding model) (mơ hình trình bày phát triển Henniges cộng [2010], chứng minh cổ điển, trường đồng chủng trung bình mơ hình này, họ đưa thuật toán đặc biệt) Đạo hàm bắt đầu vào chi tiết toán học đáng kể dành cho bạn đọc muốn giải hoàn tồn mơ hồ mơ tả khái niệm bậc cao suy luận học biến phân mà trình bày Những bạn đọc không muốn dẫn xuất thực thi thuật tốn học biến phân bỏ qua phần mà khơng sợ bỏ lỡ kiếm niệm bậc cao Những bạn đọc muốn theo đuổi ví dụ mã hố thưa nhị phân khuyến khích coi qua thuộc tính hữu ích hàm thường sinh mơ hình xác xuất phần 3.10 Chúng ta dùng thuộc tính cách rộng rãi đạo hàm mà khơng nói rõ cụ thể sử dụng Trong mơ hình mã hố thưa nhị phân, giá trị đầu vào sinh từ mơ hình cách thêm vào giá trị nhiều Gaussian cho tổng mm thành phần khác nhau, điều biểu diễn khơng Mỗi thành phần kích hoạt đơn vị ẩn : (19.19) (19.20) tập hệ số tự học được, ma trận trọng số học được, ma trận đường chéo xác học Yêu cầu để huấn luyện mơ hình với hợp lý hàm cực đại phải lấy đạo hàm theo tham số Tiếp đến đạo hàm theo hệ số tự do: 27 Điều u cầu phải tính tốn kì vọng có liên quan đến Tuy nhiên, lại phân phối phức tạp Tham khảo hình 19.2 cho cấu trúc đồ thị Phân phối hậu nghiệm thường liên hệ đến toàn đồ thị đơn vị ẩn, nên thuật toán khử biến khơng giúp tính tốn kì vọng cần thiết nhanh việc duyệt toàn Ta giải vấn đề cách sử dụng suy luận biến phân phép học biến phân Thực phép biến đổi xấp xỉ trường trung bình sau: (19.28) Các biến tiềm ẩn mơ hình mã hóa thưa nhị phân thuộc hệ nhị phân, nên để biểu diễn dạng giai thừa, phải mơ hình hóa phép phân phối Bernoulli Một cách hiển nhiên để biểu diễn trung bình phép phân phối Bernoulli vector xác suất với Chúng ta ràng buộc hay 1, để tránh sai sót q trình tính tốn, ví dụ trường hợp Từ phân tích, ta nhận định phương trình suy luận biến phân gán giá trị cho Tuy nhiên, cài đặt lập trình, sai số máy học lại thường cho kết trả Trong lĩnh vực phần mềm mong muốn 28 cài đặt mã hóa thưa nhị phân cách sử dụng vector tự tham số biến phân thu thơng qua quan hệ Từ đó, ta hồn tồn tính máy tính cách thay , có liên hệ đến hàm chữ S hàm dương mịn Để tiến hành đạo hàm phép học biến phân mơ hình mã hóa thưa nhị phân, ta phải phép biến đổi xấp xỉ trường trung bình giúp truy vết việc học dễ dàng Cận hàm xác suất thực nghiệm tính sau: Những phương trình trên, khơng đẹp đẽ, lại cho thấy biểu diễn với số phép toán tử giản đơn Như dễ dàng cho việc truy vết cận hàm xác suất thực nghiệm Chúng ta sử dụng để thay cho hàm khó truy vết logarit hàm hợp lý Trên lý thuyết, ta sử dụng phương pháp gradient acsent cho , dẫn đến thuật toán kết hợp tốt phép suy luận huấn luyện Tuy nhiên, không nên sử dụng phương pháp hai lý Thứ nhất, việc đòi hỏi lưu trữ với Chúng ta nên ưu tiên thuật toán hạn chế tối đa liệu ghi cho trường hợp Sẽ khó để phổ quát giải thuật học máy đến hàng tỷ ví dụ tất lưu trữ vector cập nhật biến động liên quan đến Thứ nhì, mong muốn trích xuất tính chất nhanh có thể, để đọc thơng tin Trong thực tế triển khai cài đặt, ta cần phải tính tốn thời gian thực Từ hai lý nêu trên, không sử dụng phương pháp trượt gradient để tính tốn tham số trường trung bình Thay vào đó, ta dùng phép lặp ước lượng chúng với điểm phương trình cố định 29 Ý tưởng điểm phương trình cố định việc tìm kiếm cực đại , với Sẽ không hiệu cố giải phương trình lúc Tuy nhiên, biến có thể: (19.37) Chúng ta lặp lại phương pháp để giải phương trình với tiếp tục chu trình thỏa mãn với tiêu chuẩn hội tụ Một tiêu chuẩn hội tụ thông thường bao gồm điều kiện để ngưng vịng lặp sau chu trình cập nhật khơng cho kết khả quan rõ rệt, hay chu trình khơng thể thay đổi với độ chênh lệch lớn giá trị Phép lặp điểm phương trình trường trung bình cố định kĩ thuật cung cấp nhanh chóng suy luận biến phân đa số loại mơ hình Để chắn điều này, ta trình bày cách suy cập nhật, cụ thể cho mơ hình mã hóa thưa nhị phân Đầu tiên, phải biểu diễn đạo hàm theo Thế phương trình 19.36 vào vế trái phương trình 19.37: Để áp dụng quy luật điểm cập nhật suy luận cố định, giải để phương trình 19.43 nhận giá trị 0: Đến đây, ta thấy liên kết chặt chẽ mạng neural truy tốn phép suy luận mơ hình đồ thị Đặc biệt, điểm phương trình trường trung bình cố định lại định nghĩa mạng neural truy toán Nhiệm vụ mạng thực phép suy luận Chúng ta biểu diễn cách thức thu mạng lưới từ phép miêu tả mô 30 hình, nhiên, khả thi trường hợp ta muốn trực tiếp huấn luyện mạng suy luận Một vài ý tưởng dựa chủ đề đề cập chương 20 Trong trường hợp mã hóa thưa nhị phân, ta thấy liên kết mạng truy tốn xác định phương trình 19.44 bao gồm việc liên tục cập nhật đơn vị ẩn dựa giá trị thay đổi đơn vị ẩn kề Đầu vào ln gửi liệu cố định với đến đơn vị ẩn, đơn vị ẩn lại liên tục cập nhật thông tin truyền qua lại Đặc biệt, hai đơn vị ẩn lại ức chế trọng số vector hai tiến đến gần Đây tranh chấp hai đơn vị ẩn có vai trò diễn dịch đầu vào, đơn vị giải thích tốt giữ lại hoạt động Sự tranh chấp đến từ trình chọn lọc tương tác diễn giải hậu nghiệm trình mã hóa thưa nhị phân Hiện tượng diễn giải phải dẫn đến hậu nghiệm đa mơ hình, ta trích xuất mẫu từ hậu nghiệm, vài mẫu có đơn vị hoạt động, mẫu khác có đơn vị hoạt động, số có hai hoạt động Tuy nhiên, tương tác diễn giải khơng thể mơ hình giai thừa dùng trường trung bình, nên phương pháp xấp xỉ trường trung bình buộc phải chọn quy tắc để mơ hình hóa Đây ví dụ cho trạng thái mơ tả hình 3.6 Chúng ta viết lại phương trình 19.44 dạng tương đương gợi mở nhiều vấn đề hơn: Sau tinh chỉnh công thức, ta thấy đầu vào bước bao gồm không đơn Từ ta cho nhiệm vụ đơn vị cố gắng mã hóa lỗi dư thừa , sử dụng mã lệnh từ đơn vị khác Trong mã hóa rời rạc lại tự động mã hóa, liên tục mã hóa giải mã đầu vào nó, để sửa chữa lỗi sai từ trình tái tạo liệu sau vịng lặp Trong ví dụ này, thu thập quy luật trình cập nhật đơn vị thời điểm Và tốt thời điểm, ta cập nhật lúc nhiều đơn vị Một số mơ hình đồ thị, ví dụ mơ hình học máy sâu Boltzmann, thiết kế với cấu trúc lúc giải nhiều liệu đầu vào Tuy nhiên, mã hóa thưa nhị phân lại tiếp nhận việc cập nhật theo khối Thay vào đó, ta sử dụng kỹ thuật giảm xóc (damping) phương pháp heuristic để thực việc cập nhật khối Với cách tiếp cận này, tìm giá trị tối ưu cho riêng biệt, sau dịch chuyển giá trị với bước nhỏ theo phương chúng Phương pháp không đảm bảo tăng theo bước, lại hoạt động tốt nhiều mơ hình thực nghiệm Tham khảo Koller and Friedman (2009) để hiểu thêm cách đồng hóa kỹ thuật damping thuật tốn truyền tin 31 2.4.2 Phương pháp tính biến phân Trước tiếp tục với phần trình bày phương pháp học biến phân phải rõ ràng vấn đề giới thiệu tập hợp công cụ toán học quan trọng phần này: Phương pháp tính biến phân (calculus of variations) Hầu hết kĩ thuật học máy dựa việc tối giản phương trình cách tìm kiếm đầu vào vector với điều kiện đạt giá trị nhỏ Điều thực phương pháp tính đa lượng biến đại số tuyến tính, cách tìm điểm giới hạn thỏa phương trình Trong số trường hợp, ta mong muốn tìm hàm , chẳng hạn ta muốn ưu tiên tìm hàm mật độ xác suất giá trị Chúng ta thực điều nhờ phương pháp tính biến phân Một hàm hàm gọi phiếm hàm (functional) Giống việc lấy đạo hàm vi phân hàm theo phần tử thuộc đối số có giá trị vector hàm, ta lấy đạo hàm phiếm hàm (functional derivatives), hay gọi đạo hàm biến phân (variational derivatives), phiếm hàm theo giá trị hàm giá trị Đạo hàm phiếm hàm phiếm hàm theo giá trị hàm điểm kí hiệu Việc đề cập đến ứng dụng hoàn chỉnh đạo hàm phiếm hàm vượt ngồi mục đích sách Vì vậy, cần định rõ trước rằng, với hàm khả vi khả vi có đạo hàm liên tục, thì: (19.46) Để cảm nhận trực giác tính đồng này, ta hình dung vector với vô số phần tử đánh số vector thực Với quan điểm (chưa trọn vẹn theo cách đó) này, tính đồng sinh hàm đạo hàm giống kết ta thu từ vector (được đánh số số nguyên dương): (19.47) Người ta đạt nhiều kết công bố khác học máy cách sử dụng phương trình Euler-Lagrange tổng quát hơn, cho phép gg phụ thuộc đồng thời vào đạo hàm f thân f Tuy nhiên với kết sách không sử dụng dạng tổng quát Để tối ưu hàm số có biến vector, lấy gradient hàm số vector tìm giá trị biến cho phần tử gradient Tương tự vậy, ta tối ưu hàm (functional) cách tìm điểm làm cho đạo hàm hàm số 32 Để minh họa cho phương pháp này, ta xem xét tốn tìm hàm phân phối xác suất theo có vi phân entropy lớn (maximal di fferential entropy) Trong entropy phân phối xác suất định nghĩa sau: (19.48) Đối với biến liên tục, giá trị kỳ vọng H[p] tích phân: (19.49) Kì vọng khơng thể cực đại hóa cách đơn giản kết khơng phải phân phối xác suất Thay vào cần sử dụng nhân tử Lagrange để ràng buộc có tích phân Kèm theo đó, entropy phải tăng không giới hạn phương sai tăng Điều khiến cho câu hỏi phân phối có entropy lớn khơng cịn đáng ý mà thay vào đó, tìm phân phối có entropy lớn phương sai khơng đổi Sau tốn trở nên chưa xác định phân phối dịch chuyển tùy ý mà không làm thay đổi entropy Để đạt nghiệm nhất, ta cần ràng buộc thêm giá trị trung bình phân phối Hàm Lagrangian (Lagrangian functional) cho toán tối ưu là: (19.50) (19.51) Để cực tiểu hóa nhân tử Lagrang theo , ta ấn định đạo hàm 0: (19.52) Điều kiện gợi ý dạng hàm Sắp xếp lại (19.52) ta có: (19.53) Chúng ta chưa giả định cách trực tiếp dạng hàm cho mà thực tế ta thu biểu thức cách cực tiểu hóa phân tích hàm ( analytically minimizing a functional) Để kết thúc tốn cực tiểu hóa, ta cần chọn giá trị cho điều kiện ràng buộc chắn thõa mãn Chúng ta lựa chọn tùy ý giá trị nào, gradient nhân tử Lagrang theo biến không điều kiện ràng buộc thõa mãn Chúng ta chọn , , để có: (19.54) 33 Đây lí phân phối chuẩn sử dụng phân phối thực chưa biết Bởi phân phối chuẩn có entropy lớn nhất, áp đặt số lượng hợp lý nhỏ cấu trúc với giả định Khi khảo sát điểm tới hạn hàm nhân tử Lagrang (Lagrangian functional) cho entropy, tìm thấy điểm tới hạn thoã mãn điều kiện entropy cực đại với phương sai cố định Còn hàm phân phối xác suất cực tiểu hóa entropy sao? Tại khơng tìm thấy điểm tới hạn thứ hai tương ứng với cực tiểu entropy? Lý khơng có hàm đặc biệt đạt entropy cực tiểu Khi hàm số tập trung mật độ nhiều vào hai điểm x=μ+σ x=μ−σ, phân bố mật độ vào giá trị khác xx, chúng đánh entropy giữ nguyên phương sai mong muốn Tuy nhiên hàm số phân bố mật độ không điểm trừ hai điểm nói có tích phân khác phân bố xác suất hợp lệ Do khơng có hàm phân bố xác suất đơn lẻ có entropy nhỏ khơng có số thực dương nhỏ Thay vào đó, nói có dãy hàm hội tụ đến hàm phân bố mật độ vào hai điểm nêu Trường hợp suy biến mơ tả hàm phân bố xác suất đơn giản phân bố Dirac (hay hợp phân bố Dirac) tương ứng với điểm đặc biệt đơn lẻ không gian hàm Các hàm bất khả kiến với phương pháp việc tìm điểm mà đạo hàm khơng Đây hạn chế phương pháp Do phân bố Dirac phải tìm phương pháp khác, việc tiên đốn chúng chứng minh chúng chẳng hạn 2.4.3 Các biến ẩn liên tục Một mơ hình đồ thị chứa biến ẩn liên tục, ta tiếp tục thực suy luận biến phân (variational inference) tìm hiểu cách cực đại hóa Tuy nhiên lúc cần phải sử dụng phép tính biến phân (calculus of variations) cực đại hóa theo Trong phần lớn trường hợp, tồn phương trình tổng quát cho việc cập nhật trường trung bình cố định điểm (mean field fixed-point) Nếu ta đặt xấp xỉ trường trung bình (mean filed) là: (19.55) cố định với , giá trị tối ưu nhận cách chuẩn hóa phân phối chưa chuẩn: (19.56) 34 p chưa gán xác suất cho cách kết hợp biến Việc kỳ vọng chất bên phương trình sinh dạng hàm q(hi|v) Dạng đạo hàm qq có sử dụng trực tiếp phép tính biến phân cần thiết phải phát triển dạng việc học biến phân Phương trình 19.56 tạo xấp xỉ trường trung bình cho mơ hình thống kê Phương trình 19.56 phương trình điểm cố định, thiết kế để áp dụng lặp lại cho giá trị đến hội tụ Tuy nhiên, cho biết nhiều Nó cho biết dạng hàm nghiệm tối ưu nhận mà khơng quan trọng việc đạt điều phương trình cố định điểm hay khơng Điều có nghĩa lấy dạng hàm từ phương trình theo vài giá trị xuất tham số mà ta tối ưu hóa phương pháp Ví dụ, mơ hình thống kê đơn giản với biến ẩn liên tục biến khả kiến Giả sử Thực tế đơn giản hóa mơ hình phép lấy tích phân theo để kết đơn giản phân phối Gausian theo Bản thân mô hình khơng có thú vị, cấu trúc để đưa minh chứng đơn giản việc phép tính biến phân áp dụng vào mơ hình hóa thống kê Xác suất hậu nghiệm thực đưa theo số chuẩn hóa bởi: (19.57) (19.58) (19.59) (19.60) (19.61) Bởi xuất nhân tử , thấy xác suất hậu nghiệm thực khơng phân tích thành thừa số theo Áp dụng phương trình 19.56, ta có: (19.62) (19.63) (19.64) (19.65) 35 Từ ta thấy thực tế có hai giá trị cần đạt từ Viết lại giá trị thành ⟨⟩ ⟨⟩, ta có: (19.66) (19.67) Từ ta thấy có dạng hàm Gaussian Do ta kết luận với ma trận đường chéo tham số biến phân tối ưu kĩ thuật Điều quan trọng cần nhắc lại chưa giả định có dạng Gaussian; dạng Gaussian thu cách tự nhiên phép tính biến phân tối ưu theo Các cách tiếp cận tương tự sinh dạng hàm khác Điều tất nhiên trường hợp nhỏ đưa với mục đích làm minh chứng Ví dụ chương trình ứng dụng thực với việc học biến phân biến liên tục ngữ cảnh học sâu Goodfellow cộng 2.4.4 Tương tác Học Suy luận Việc sử dụng phương pháp suy luận xấp xỉ thuật toán học gây ảnh hưởng đến tiến trình học, lên độ xác thuật tốn suy luận Chính xác là, thuật tốn huấn luyện có xu hướng theo mơ hình cách cho giả thuyết xấp xỉ hoá làm sở để thuật toán suy luận xấp xỉ xác Khi huấn luyện tham số, học biến phân tăng lên (19.68) Với giá trị cụ thể, điều có nghĩa tăng cho giá trị có xác suất cao chịu tác động giảm giá trị có xác suất thấp chịu tác động hành vi làm cho giả thiết xấp xỉ đơn phương tự thỏa mãn Hãy xem xây dựng mơ hình với hậu nghiệm xấp xỉ đơn biến (unimodal approximate posterior), thu mơ hình với hậu nghiệm thực khác xa với đơn biến xây dựng mơ hình với suy luận xác Tính tốn mơ hình độ xác gây xấp xỉ biến phân khơng đơn giản Có vài cách làm để dự đốn Thường dự đốn sau huấn luyện mơ hình tìm mức chênh lệch khơng đáng kể Từ điều kết luận xấp xỉ biến phân xác giá trị định tìm từ tiến trình học Chúng ta khơng thể kết luận xấp xỉ biến phân xác cách tổng quát kết luận xấp xỉ biến phân gây thiệt hại nhỏ tiến trình học Để tính độ thiếu xác thực gây xấp xỉ biến phân, có lẽ cần biết giá 36 trị Hai điều kiện sau giữ nhau: Nếu , ) khiến phân phối hậu nghiệm trở nên phức tạp để họ thu nạp, nến tiến trình học khơng tiến đến giá trị Một vấn đề khó nhận biết biết chắn điều xảy có thuật tốn ưu việt để tìm dùng cho việc so sánh 2.5 Suy luận xấp xỉ học Chúng ta thấy suy luận xem thủ tục tối ưu hóa làm tăng giá trị hàm Rõ ràng biểu diễn tối ưu hóa thơng qua thủ tục lặp phương trình điểm cố định hay tối ưu hố dựa gradient tốn Nhiều phương án suy luận tránh hao phí cách học để biểu diễn suy luận xấp xỉ Cụ thể coi q trình tối ưu hóa hàm ánh xạ đầu vơ đến phân phối xấp xỉ Một ta nghĩ q trình tối ưu hố lặp đa bước hàm, xấp xỉ hố với mạng neuron mà thực thi hàm xấp xỉ 2.5.1 Thức – Ngủ (Wake – Sleep) Một khó khăn huấn luyện mơ hình để suy luận từ khơng có tập huấn luyện có giám sát Với giá trị phù hợp Sự ánh xạ từ đến phụ thuộc vào họ mơ hình lựa chọn, phát triển thơng qua q trình học thay đổi Thuật toán thức-ngủ (Hinton cộng sự, 1995b; Frey cộng 1996) giải vấn đề việc định mẫu từ phân phối mơ hình Ví dụ, mơ hình trực tiếp, cơng việc thực cách rẻ tiền biểu diễn lấy mẫu di truyền từ kết thúc Mạng suy luận sau huấn luyện để biểu diễn đảo ngược ánh xạ: dự đốn hh có Hạn chế phương pháp có khả huấn luyện mạng suy luận giá trị mà có xác suất cao chịu tác động mơ hình Khi q trình học bắt đầu, phân phối mơ hình khơng giống phân phối liệu, mạng suy luận khơng có hội để học mẫu giống với liệu Trong phần 18.2, thấy cách giải thích cho vai trị ngủ mơ người động vật, giấc mơ cung cấp mẫu pha âm mà thuật toán huấn luyện Monte Carlo sử dụng để xấp xỉ hoá số dối gradient logarit hàm phân hạnh mơ hình khơng trực tiếp Một cách giải thích khác cho giấc mơ sinh học cung cấp từ mẫu sử dụng cho huấn luyện mơ hình mạng suy luận để dự đốn h có v Cách giải thích khía cạnh có lẽ hợp lý cách giải thích dựa hàm phân hạch Các thuật tốn 37 Monte Carlo thường không hiệu chúng chạy pha gradient dương sau pha âm cho bước Con người động vật thức hay ngủ nhiều liên tục Chưa rõ liệu nhịp sinh hoạt hỗ trợ việc học Monte Carlo mơ hình gián tiếp hay khơng Những thuật tốn học dựa cực đại hóa chạy giai đoạn kéo dài để cải thiện q giai đoạn kéo dài để cải thiện q θ Nếu vai trò giấc mơ sinh học huấn luyện mạng để dự đốn q, điều giải thích lồi động vật nhiều đồng hồ có khả thức (thời gian thức thức lâu khoảng cách logp(v) lớn, nhiên trì cận dưới) để trì giấc ngủ ( mơ hình sinh mẫu không tự điều chỉnh ngủ) mà khơng gây hại đến mơ hình nội Tất nhiên, lý thuyết, đồng thời minh chứng rõ ràng việc giấc mơ hoàn thành mục tiêu Giấc mơ ngồi giúp học tăng cường mơ hình hóa xác xuất, việc lấy mẫu kinh nghiệm tổng hợp từ mơ hình chuyển giao động vật để huấn luyện nguyên tắc động vật Hoặc giấc ngủ có lẽ phục vụ hoạch định khác chưa tiên liệu cộng đồng học máy 2.5.2 Các dạng khác Suy luận học Chiến lược suy đoán xấp xỉ học áp dụng cho mô hình khác Salakhutdinov Larochelle (2010) mạng suy luận chạy lần có khả cho suy luận nhanh lặp lại phương trình trường trung bình điểm cố định DBM Thủ tục huấn luyện dựa việc vận hành mạng suy luận, sau áp dụng bước trường trung bình để cải thiện ước lượng nó, huấn luyện mạng suy luận để đưa ước lượng chọn lọc thay ước lượng nguyên Như xem phần 14.8 , mơ hình phân rã thưa tiên đốn huấn luyện mạng mã hóa nơng để dự đốn mã thưa thớt cho liệu đầu vào Điều xem kết hợp tự mã hóa mã hóa thưa Chúng ta phát minh ngữ học xác xuất cho mơ hình, mà theo chúng mã hóa coi để biểu diễn suy luận MAP xấp xỉ học Do mã hóa nơng nó, PSD khơng có khả để thực thi cạnh tranh đơn vị mà thấy suy luận trường trung bình Tuy nhiên, vấn đề giải cách huấn luyện mã hóa đa tầng để biểu diễn suy luận xấp xỉ học, phương pháp ITSA (Greror LeCun, 2010b) Suy luận xấp xỉ học gần trở thành định hướng chủ đạo mơ hình hố sinh mẫu, dạng tự mã hóa biến phân (Kingma, 2013; Rezende 38 cộng sự, 2014) Theo phương pháp tiếp cận đặc biệt này, không cần để cấu trúc mục tiêu rõ ràng cho mạng suy luận Thay vào đó, mạng suy luận đơn giản định , sau tham số mạng suy luận kết hợp để tăng giá trị Mơ hình miêu tả kĩ phần 20.10.3 Nhờ sử dụng suy luận xấp xỉ, huấn luyện sử dụng đa dạng nhiều loại mơ hình Những mơ miêu tả chương sau Tài liệu tham khảo Ian Goodfellow, Yoshua Bengio, Aaron Courville Deep Learning - Chap 4: Numerical Computation - Chap 19: Approximate Inference 39 ... xấp xỉ sau suy cách lấy xấp xỉ toán tối ưu Nhiều cách tiếp cận để đối mặt với vấn đề khó khăn suy luận, vận dụng kĩ thuật quan sát ta thấy suy luận xác mơ tả toán tối ưu Thuật toán suy luận xấp. .. suy luận xấp xỉ - (suy luận MAP) tính giá trị xác Tuy nhiên, muốn xây dựng quy trình học dựa cực đại hóa , xem suy luận MAP quy trình để tính giá trị Với lập luận đó, xem suy luận MAP suy luận. .. đơn vị mà thấy suy luận trường trung bình Tuy nhiên, vấn đề giải cách huấn luyện mã hóa đa tầng để biểu diễn suy luận xấp xỉ học, phương pháp ITSA (Greror LeCun, 2010b) Suy luận xấp xỉ học gần trở

Ngày đăng: 17/02/2022, 22:02

Mục lục

  • TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - ĐHQGHN

  • KHOA CÔNG NGHỆ THÔNG TIN

  • 1. Chương 4: Tính toán số

    • 1.1 Tràn luồng và thấp luồng

    • 1.2 Tính kém điều hòa

    • 1.3 Tối ưu dựa trên gradient

      • 1.3.1 Ma trận Jacobi và ma trận Hesse

      • 1.4 Tối ưu có ràng buộc

      • 1.5 Ví dụ: Bình phương cực tiểu tuyến tính

      • 2. Chương 19: Suy luận xấp xỉ

        • 2.1 Suy luận như là Tối ưu hóa

        • 2.2 Cực đại kỳ vọng

        • 2.3 Suy luận MAP và mã hóa thưa thớt

        • 2.4 Suy luận và học biến phân

          • 2.4.1 Những biến ẩn rời rạc

          • 2.4.2 Phương pháp tính các biến phân

          • 2.4.3 Các biến ẩn liên tục

          • 2.4.4 Tương tác giữa Học và Suy luận

          • 2.5 Suy luận xấp xỉ được học

            • 2.5.1 Thức – Ngủ (Wake – Sleep)

            • 2.5.2 Các dạng khác của Suy luận được học

            • 3. Tài liệu tham khảo

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan