Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
335,65 KB
Nội dung
Ngày 1/10/2010 Nhóm Kiên – Long Using SVM For Time Series Prediction Tổng quan Support vector regression (SVR) Ý tưởng ánh xạ liệu x vào không gian đặc trưng có số chiều lớn Ғ (high-dimensional feature space) ánh xạ phi tuyến φ thực hồi quy tuyến tính không gian này: ƒ(x) = ( ω.φ(x) ) + b với φ : Rn Ғ, ω є Ғ, [1.1] b ngưỡng (threshold) Vì vậy, hồi quy tuyến tính không gian có số chiều lớn tương ứng với hồi quy phi tuyến không gian đầu vào R n (không gian có số chiều nhỏ) Nếu ta dùng thủ thuật tính toán cho kernel tích vô hướng ω.φ(x) phải tính trực tiếp không gian Ғ Khi ánh xạ φ cố định, ta phải tìm ω từ liệu cách tối thiểu hóa tổng giá trị rủi ro kinh nghiệm (empirical risk) Remp[ƒ] ||ω2|| Điều làm tăng tính phẳng(flatness) không gian đặc trưng Rreg[ƒ] = Remp[ƒ] + λ|| ω2|| = , [1.2] Với l kích thước tập mẫu (x 1, …, xl), C(.) hàm chi phí, λ tiêu chuẩn (regularization constant) Đối với tập hợp hàm chi phí, đẳng thức [1.2] tối thiểu hóa cách giải vấn đề cực trị hàm bậc hai (quadratic programming problem) Ngoài ra, vector ω tính thông qua điểm liệu sau: ω= [1.3] giải pháp cho vấn đề cực trị hàm bậc trình bày Ngoài ra, hiểu cách trực quan giúp điều chỉnh giá trị tiến gần yi Từ [1.1] [1.3] ta suy vấn đề không gian đầu vào R n sau: SVM for Time Series Prediction Kien - Long Page ƒ(x) = [1.4] Trong đó, k(xi, xj) = (φ(xi).φ(xj)) hàm kernel Và hàm kernel đối xứng phải thỏa định lý Mercer tương ứng với tích vô hướng không gian đặc trưng Thông thường RBF kernel (còn gọi Gaussian kernel): k(x,y) = exp(-||x – y||2/ (2σ2)) 1.1 Vapnik’s ε-insensitive Loss Function Đối với hàm chi phí này, số nhân Lagrange α i, αi* thường “thưa thớt” tức chúng khác sau tối ưu hóa chúng vượt khỏi cận (outside of the boundary) Điều có nghĩa chúng thỏa mãn điều kiện Karush-Kuhn-Tucker Hàm chi phí ε-insensitive cho C(ƒ(x) – y) = [1.5] Vấn đề quadratic programming định sau Tối thiểu hóa Với [1.6] Càng nhiễu, αi, αi* “thưa thớt” Ngoài ra, ε lớn, chúng có xu hướng không khớp hồi quy, đặc biệt ε lớn kết hồi quy trở thành SVM for Time Series Prediction Kien - Long Page Đây hồi quy trường hợp ε-insensitive (dùng kernel B-splines) hàm sinc Nó thể tính phẳng tối đa với ε tube áp xung quanh liệu Những điểm biên, nơi mà ƒ(xi) – yi = ε sign(αi – αi*) sử dụng để tính ngưỡng b 1.2 Huber’s Loss Function Ưu điểm hàm không đưa thêm độ lệch (bias) giống ε-insensitive Tuy nhiên, αi αi* không “thưa thớt” C(ƒ(x) – y) = [1.7] Vấn đề quadratic programming có dạng Tối thiểu hóa Với [1.8] Như vậy, bản, tất mẫu support vector SVM for Time Series Prediction Kien - Long Page ε-insensitive Huber’s loss function với ε = 1.3 Cách tính ngưỡng b Phương trình [1.6] [1.8] dùng để tính αi αi* Để chọn b phù hợp, ta phải sử dụng cách trực tiếp điều kiện Karush-Kuhn-Tucker để đưa đến vấn đề quadratic programming trình bày Điểm mấu chốt chọn αk, αk* cho độ lỗi δk = ƒ(xk) – yk xác định cách độc lập Trong trường hợp ε-insensitive, điều có nghĩa chọn điểm xk biên với điều kiện αk, αk* nằm khoảng mở (0;1/�) Trong trường hợp đó, ta δk = ε sign(αi – αi*) Về bản, giá trị xk đủ để giúp ta xác định b để vững hơn, ta nên lấy trung bình tất điểm biên với b = averagek { δk + yk - } Cho trường hợp Huber, b tính tương tự với SVM for Time Series Prediction Kien - Long Page δk = �(αi – αi*) với αk, αk* thuộc [0; ε/�) nghĩa điểm mà phần toàn phương (bậc 2) hàm chi phí xác định Chú ý ta giải vấn đề quadratic programming với tối ưu để tính toán giá trị double dual ta tìm giá trị biến b Giải thích thêm 2.1 Review bước thực SVR giai đoạn regression Cho điểm x không gian đầu vào, nhiệm vụ ta phải dự đoán giá trị đích ứng với x Bước 1: Ánh xạ mẫu từ không gian đầu vào sang không gian đặc trưng ánh xạ Bước 2: Tính tích vô hướng thông qua kernel k(xi, x) với i = 1, 2, …, n Bước 3: Nhân tích vô hướng với trọng tương ứng () cộng tất lại với Bước 4: Cộng kết với b cho ta kết dự đoán cuối SVM for Time Series Prediction Kien - Long Page Ghi chú: giá trị trọng tính toán trước training 2.2 Giải thích “tính phẳng” (flatness) hàm Từ “phẳng” thực xuất phát từ ý nghĩa hình học Ta ngó qua hình vẽ đây: Có đường, đường tạo thành , đường đường hồi qui ta “Tính phẳng nhất” có nghĩa là: phạm vi giới hạn ống trên, ta phải tìm đường cho “uốn lượn” Ý nghĩa việc “uốn lượn” đơn giản để tránh overfit Thấy lớn, đường hồi qui ta có nguy trở thành đường thẳng song song với trục hoành SVM for Time Series Prediction Kien - Long Page Nếu nhỏ, tiến tới đường ta có độ xác cao Vậy ta đặt làm cho phức tạp, cho = cho độ xác cao? Ngay đây, ta có câu trả lời cho chuyện 2.3 Mối quan hệ độ xác (độ rộng ) số điểm SV Từ hình vẽ, ta nhận thấy ống rộng (độ xác thấp) số điểm SV cần đường hồi qui ta Câu trả lời cho câu hỏi phía chỗ Cụ thể ta cho số điểm SV cần để tạo đường hồi qui toàn điểm train Thông thường số điểm train lớn dẫn đến vấn đề tính toán chậm Vậy nên, áp dụng thực tế ta cần phải cân nhắc độ xác độ phức tạp tính toán SVM for Time Series Prediction Kien - Long Page 2.4 Ý nghĩa nhân tử Lagrange Nhân tử Lagrange thể cho lực kéo/ đẩy nhằm đảm bảo cho đường hồi qui ta nằm ống Như vậy, chỗ mà đường hồi qui ta chạm/ vượt khỏi ống ta cần đến “lực kéo/ đẩy” Lagrange; chỗ lại, lực = Tối ưu hóa 3.1 Lý thuyết tối ưu hóa 3.1.1 Tối ưu hóa có ràng buộc (Constrained Optimization) Xét toán tối ưu hóa có ràng buộc sau: Gọi S mặt ràng buộc định g SVM for Time Series Prediction Kien - Long Page Để giải toán khó này, ta tìm trước điều kiện ắt: Giả sử có thêm điểm khảo sát có grad g() ≠ (Tại , S có mặt phẳng tiếp xúc có vector pháp tuyến grad g().) Giả sử hàm số f có cực trị có ràng buộc cho đường C khả vi, liên tục /S qua : hàm vector C có C’ liên tục khoảng I Hàm hợp f[C(t)] hàm số theo biến số có cực trị t0 (vì theo giả thiết f có cực trị X0 rồi.) (Theo qui tắc mắt xích) Như giải pháp, vector gradient hàm mục tiêu f phải vuông góc với mặt ràng buộc (feasible set) định nghĩa g(x) = hay Ở đây, gọi nhân tử Lagrange 3.1.2 Ràng buộc bất đẳng thức Xét toán tối ưu hóa có ràng buộc bất đẳng thức sau: Ta xét trường hợp: Tại giải pháp, g(x)=0 Có phải tồn nhân tử Lagrange để: [1] nữa, >0 (Nếu không, ta giảm f(x) đến vô hạn theo chiều - mà nằm miền ràng buộc.) Tại giải pháp, g(x)>0 Hiểu ta đứng cực tiểu f Do đó: SVM for Time Series Prediction Kien - Long Page Tổng hợp lại, ta có điều kiện KKT (Karush–Kuhn–Tucker) cho toán tối ưu hóa có ràng buộc bất đẳng thức: 3.1.3 Convex Optimization Giả sử f(x) convex, g(x) concave hai khả vi liên tục Đặt: Từ [1] ta có: Cố định , L convex theo x có cực tiểu Cố định x, L tuyến tính theo Đặt: có cực đại () • Nếu cực đại xảy : , nghĩa ta đứng cực tiểu toàn cục f • Nếu cực đại xảy , ta biên miển ràng buộc Tóm lại, toán: tương đương với: Đây gọi vấn đề đôi (dual problem), giải pháp giải pháp vấn đề ban đầu (primal problem): 3.2 Vấn đề tối ưu hóa SVM 3.2.1 Hàm rủi ro Ta có train Giả sử điểm IID (independent and identically distributed) phát sinh hàm phân phối P(x, y) Mục đích ta tìm hàm f cho hàm rủi ro R đạt cực tiểu tập X: SVM for Time Series Prediction Kien - Long Page 10 Trong đó, c(x, y, f(x)) làm hàm chi phí, thể mức phạt ta lỗi Nếu ta P(x, y), ta tính R[f] sau: Hàm rủi ro gọi hàm rủi ro kinh nghiệm (empirical risk function) Tuy nhiên, để tránh vấn đề overfit, ta có hàm rủi ro chuẩn hóa (regularized risk function) sau: với gọi chuẩn hóa 3.2.2 Hàm chi phí 3.2.3 Biểu diễn lại vấn đề tối ưu hóa theo nhân tử Lagrange Từ hàm rủi ro chuẩn hóa, ta thể lại vấn đề sau: Tìm của: với ràng buộc Từ đây, ta có dạng dual sau: Tìm max của: đó: với ràng buộc: SVM for Time Series Prediction Kien - Long Page 11 SVM for Time Series Prediction Kien - Long Page 12 [...]... thể hiện lại vấn đề như sau: Tìm min của: với ràng buộc Từ đây, ta có dạng dual như sau: Tìm max của: trong đó: với ràng buộc: SVM for Time Series Prediction Kien - Long Page 11 SVM for Time Series Prediction Kien - Long Page 12