Thuật toán lan truyền ngược với kỹ thuật biến đổi hệ số học

Một phần của tài liệu Mạng nơron và ứng dụng mạng nơron trong nhận dạng cảm xúc trên khuôn mặt người (Trang 43)

Trong phần trước chúng ta đã nhận xét là có thể tăng tốc độ hội tụ nếu tăng được hệ số học trên các mặt phẳng và sau đó giảm hệ số học khi độ dốc tăng. Trong phần này chúng ta sẽ khảo sát kỹ về nhận xét này.

Nhớ lại rằng mặt hiệu suất sai số bình phương trung bình cho các mạng 1 lớp tuyến tính thường là hàm bậc 2, và ma trận Hessian là hằng số. Hệ số học ổn định cực đại cho thuật toán giảm nhanh nhất là 2 chia cho giá trị riêng cực đại của ma trận Hessian.

Như chúng ta đã thấy, mặt sai số của mạng nhiều lớp không phải là hàm bậc 2. Đường cong của mặt có thể rất khác trong những vùng khác nhau của không gian tham số. Chúng ta có thể tăng tốc độ hội tụ bằng cách thay đổi hệ số học trong suốt quá trình huấn luyện. Việc cần làm lúc này là xác định khi nào cần thay đổi hệ số học và độ thay đổi là bao nhiêu.

Có nhiều cách để biến đổi hệ số học. Chúng ta sẽ mô tả một thủ tục rất dễ hiểu theo lô, khi hệ số học biến đổi theo hiệu suất của thuật toán. Các quy tắc biến đổi hệ số học cho thuật toán lan truyền ngược là:

1. Nếu bình phương sai số (trên toàn bộ tập huấn luyện) tăng nhiều hơn một số

phần trăm  nào đó (thường từ 1 –5%) sau khi cập nhật trọng số, thì cập nhật trọng

số bị hủy, hệ số học được nhân với một nhân tố 0<<1, và hệ số quán tính (nếu

2. Nếu bình phương sai số (trên toàn bộ tập huấn luyện) giảm sau khi cập nhật trọng số, thì cập nhật trọng số được chấp nhận và hệ số học được nhân với một nhân tố >1. Nếu  trước đó bị đặt về 0, nó sẽ được đặt lại về giá trị khởi tạo.

3. Nếu bình phương sai số tăng ít hơn một số  nào đó, thì cập nhật trọng số

được chấp nhận nhưng hệ số học không thay đổi. Nếu  trước đó bị đặt về 0, nó sẽ

được đặt lại về giá trị khởi tạo.

Để làm rõ thuật toán VLBP, chúng ta hãy áp dụng nó cho bài toán xấp xỉ hàm của phần trước. Hình 2.11 hiển thị quỹ đạo của thuật toán khi sử dụng cùng các giá trị khởi tạo, hệ số học và hệ số quán tính như đã dùng trong hình 2.10. Các tham số mới được chỉ định là

=1.05, =0.7, =4% (2.11)

Hình 2.11 - Quỹ đạo của biến đổi hệ số học

Chú ý rằng ta đang thay đổi hệ số học, do đó kích thước bước có xu hướng tăng khi quỹ đạo di chuyển trên một đường thẳng với sai số giảm dần. Hiệu quả này có thể nhìn thấy trong hình 2.12, trong đó chỉ ra rằng bình phương sai số và hệ số học nghịch đảo với số lần lặp.

Khi quỹ đạo hướng tới một „vũng‟ hẹp, hệ số học nhanh chóng giảm xuống. Nói cách khác quỹ đạo sẽ trở nên dao động, và sai số sẽ tăng đột ngột. Với mỗi bước tiềm năng khi sai số sẽ tăng nhiều hơn 4%, hệ số học giảm và quán tính bị loại

trừ, làm cho quỹ đạo nhanh chóng đi theo „vũng‟ tới điểm cực tiểu. Khi đó hệ số học sẽ tăng trở lại để đẩy nhanh tốc độ hội tụ. Hệ số học lại giảm trở lại khi quỹ đạo vượt qua điểm cực tiểu khi thuật toán gần như đã hội tụ. Quá trình này là thường xuyên xảy ra với quỹ đạo thuật toán VLBP.

Hình 2.12 - Các đặc điểm hội tụ của Biến đổi hệ số học

Có nhiều dạng của thuật toán biến đổi hệ số học. Jacobs đề xuất luật học delta- bar-delta, cho mỗi tham số mạng có hệ số học của riêng nó. Thuật toán tăng hệ số học cho một tham số mạng khi tham số thay đổi có cùng hướng của nhiều lần lặp. Nếu hướng của tham số thay đổi bị trệch đi thì hệ số học bị giảm bớt. Thuật toán SuperSAB của Tollenaere tương tự với luật delta-bar-delta, nhưng nó có các luật phức tạp hơn để thay đổi hệ số học.

Một phần của tài liệu Mạng nơron và ứng dụng mạng nơron trong nhận dạng cảm xúc trên khuôn mặt người (Trang 43)