3. Ngày giao nhiệm vụ luận văn:
3.3.8.3 Vấn đề quá khớp và năng lực của mạng:
Một trong những vấn đề thường xảy ra trong suốt quá trình huấn luyện mạng là quá khớp. Sai số trong tập huấn luyện được kéo xuống rất bé, nhưng khi đưa dữ liệu mới vào thì mạng lại tạo sai số lớn. Mạng có nhớ được các mẫu huấn luyện, nhưng mạng không học được tính tổng quát hóa trường hợp mới.
Đa thức là phương trình có các hệ số và lũy th a hằng số. Ví dụ : y = 2x + 3
y= 3x2 + 4x + 1
Các đa thức khác nhau có đồ thị khác nhau, với bậc lớn hơn (và do đó có nhiều số hạng hơn) sẽ có đồ thị phức tạp hơn. Với một tập dữ liệu cho trước, chúng ta muốn tìm ra đa thức biểu diễn dữ liệu này. Dữ liệu có thể có nhiễu, vì thế chúng ta không cần thiết tìm ra phương trình đúng nhất cho tất cả các điểm. Đa thức bậc thấp hơn sẽ không thể đủ chính xác với tất cả các điểm, trong khi đó đa thức bậc cao hơn chính xác tất cả các dữ liệu sẽ rất phức tạp, đa thức này sẽ có đồ thị không đúng với hàm cơ sở.
Neural Networks cũng có vấn đề như vậy. Mạng có càng nhiều trọng số thì hàm càng phức tạp và do đó sẽ rơi vào tình trạng khớp quá mức. Mạng có ít trọng số hơn sẽ không đủ khả năng để mô phỏng hàm cơ sở. Ví dụ như mạng không có các lớp ẩn chỉ mô phỏng hàm truyền tuyến tính đơn giản.
Hình dưới cho thấy đáp ứng của mạng được huấn luyện 50000 lần. Rõ ràng mạng này quá khớp với dữ liệu và không tổng quát hóa tốt.Mạng bị quá khớp với số lần luyện quá nhiều
Hình 35 Mạng bị quá khớp với mẫu học
Vậy chúng ta sẽ chọn lựa độ phức tạp của mạng đúng như thế nào? Mạng lớn hơn sẽ hầu như luôn luôn có được sai số nhỏ hơn, nhưng điều này có thể là khớp quá mức hơn là một mô hình tốt.
Câu trả lời là sử dụng xác nhận mức giao. Vài mẫu huấn luyện được lưu lại và không thực sự dùng cho huấn luyện trong thuật toán backpropagation. Để thay thế, những mẫu này được sử dụng để kiểm tra độc lập trong quá trình của thuật toán. Như vậy hiệu suất ban đầu của mạng luôn luôn bằng nhau ở những tập huấn luyện và xác minh lại. Trong quá trình huấn luyện, sai số huấn luyện tự nhiên giảm xuống, và cho phép huấn luyện cực tiểu hóa hàm sai số thực, sai số xác minh cũng giảm xuống. Tuy nhiên, nếu sai số xác minh không giảm, hay bắt đầu tăng lên, điều này có nghĩa là mạng bắt đầu khớp quá mức dữ liệu, và huấn luyện nên d ng lại (có thể cài đặt Neural Networks tự động d ng lại khi bắt đầu học quá mức). Trường hợp khớp quá mức xảy ra trong quá trình xử lý huấn luyện gọi là học quá mức. Trong trường hợp này, chúng ta nên giảm số neural ẩn hay/và lớp ẩn vì mạng quá mạnh đối với vấn đề này. Ngược lại, nếu mạng không đủ mạnh để mô phỏng hàm cơ sở, học quá mức không có khả năng xảy ra, cũng như sai số huấn luyện hay xác minh lại không rơi vào mức bão hòa.
Những vấn đề liên quan đến cực tiểu cục bộ, và những quyết định sử dụng quá kích thước của mạng, nghĩa là chúng ta phải chạy thử trên nhiều mạng khác nhau, có thể huấn luyện mỗi mạng vài lần (để tránh rơi vào trường hợp cực tiểu cục bộ sai số) và quan sát hiệu suất t ng mạng. Điều quan trọng là quan sát sai số xác minh. Tuy nhiên, nên nhớ rằng nên mô phỏng mạng đơn giản hơn là mạng phức tạp, chúng ta cũng thể chọn mạng nhỏ hơn là mạng lớn có khả năng cải thiện sai số xác minh không đáng kể.
Vấn đề đối với kỹ thuật này về việc thí nghiệm lặp đi lặp lại là tập xác minh không thực sự đóng vai tr chọn lựa mạng, nghĩa là nó chỉ là một phần trong quá trình huấn luyện. Độ tin cậy của nó chỉ ở mức độ v a phải – khi số lần thí nghiệm đủ, chúng ta có khả năng rơi vào trường hợp mạng thực hiện tốt trên tập xác minh. Để thêm độ tin cậy hiệu suất của mô hình cuối cùng thì trong thực tế thường sử dụng thêm một tập thứ ba – là tập kiểm tra. Mô hình cuối c ng được kiểm tra với tập dữ liệu kiểm tra để đảm bảo rằng kết quả của tập xác minh và huấn luyện là thật.
3.3.8.4 Phương pháp cải thiện tính tổng quát hóa
Ngưng luyện khi mạng bắt đầu quá khớp: Trong kỹ thuật này, dữ liệu chia thành ba tập con. Tập thứ nhất là tập huấn luyện, d ng để tính gradient và cập nhật trọng số, ngưỡng của mạng. Tập thứ hai là tập phê chuẩn. Sai số trên tập này được giám sát trong suốt quá trình huấn luyện.Tập thứ ba là tập kiểm tra. Sai số phê chuẩn thường giảm trong giai đoạn đầu huấn luyện. Tuy nhiên khi mạng bắt đầu quá khớp dữ liệu, sai số trên tập phê chuẩn thường bắt đầu tăng. Khi sai số phê chuẩn tăng sau một số vòng lặp, huấn luyện sẽ ng ng, trọng số và ngưỡng ở cực tiểu sai số phê chuẩn sẽ được trả lại.
Sai số tập kiểm tra không sử dụng trong quá trình huấn luyện, nhưng sử dụng để so sánh giữa các mô hình khác nhau.
Hình 36 Mạng được ngưng tiến trình huấn luyện đúng lúc
3.3.8.5 Kết luận
Việc thiết kế mạng (khi các biến ng vào đã được chọn) gồm các bước sau:
Chọn cấu hình ban đầu (thường một lớp ẩn có số neural ẩn bằng nửa tổng số neural ngõ vào và ngõ ra).
Thực hiện lặp đi lặp lại số thí nghiệm của mỗi cấu hình, giữ lại mạng tốt nhất (thường dựa trên sai số xác minh). Thí nghiệm nhiều lần trên mỗi cấu hình mạng để tránh rơi vào sai số cục bộ.
Trong mỗi lần thí nghiệm, nếu xảy ra việc học chưa đủ (mạng không đạt được mức hiệu suất chấp nhận) thì thử tăng số neural trong lớp ẩn. Nếu không hiệu quả, thì thêm một lớp ẩn.
Nếu xảy ra học quá mức (sai số xác minh bắt đầu tăng lên) thử bỏ bớt một vài neural ẩn (và có thể bỏ lớp ẩn).
Và chọn một trong các kỹ thuật trên để cải thiện mạng.