RBM là một dạng của máy Boltzmann, nhưng có một điểm khác biệt quan trọng: các nơ-ron trong RBM phải sắp xếp thành một mạng lưới hai phía. Điều này có nghĩa là:
một cặp nút từ mỗi nhóm trong hai nhóm đơn vị (thường được gọi là các đơn vị "nhìn thấy" và "ẩn" tương ứng) có thể có kết nối đối xứng giữa chúng; và
không có kết nối nào giữa các nút trong cùng một nhóm.
Ngược lại, máy Boltzmann không bị hạn chế có thể có các kết nối giữa các đơn vị ẩn. Điều này giúp việc đào tạo hiệu quả hơn bằng các thuật toán so với lớp máy Boltzmann thông thường, đặc biệt là thuật toán phân kỳ đối nghịch dựa trên suy giảm độ dốc.[12]
Máy Boltzmann hạn chế cũng có thể được dùng trong các mạng học sâu. Cụ thể, mạng niềm tin sâu được tạo ra bằng cách "xếp chồng" các RBM, và có thể điều chỉnh lại mạng này bằng suy giảm độ dốc và truyền ngược.[13]
Cấu trúc
Loại RBM chuẩn có các đơn vị ẩn và đơn vị nhìn thấy có giá trị nhị phân (Boolean), với một ma trận trọng số kích thước . Mỗi trọng số của ma trận kết nối đơn vị nhìn thấy (đầu vào) và đơn vị ẩn . Ngoài ra, còn có các trọng số bù cho và cho . Với các trọng số và bù, năng lượng của một cấu hình (cặp vector Boolean) (v,h) được định nghĩa như sau:
hoặc, theo dạng ma trận:
Hàm năng lượng này tương tự với của mạng Hopfield. Cũng giống các máy Boltzmann khác, phân phối xác suất đồng thời cho các vector nhìn thấy và ẩn được định nghĩa dựa trên hàm năng lượng:[14]
trong đó là một hằng số chuẩn hóa đảm bảo tổng tất cả xác suất là 1. Xác suất biên của một vector nhìn thấy là tổng của trên tất cả các cấu hình của lớp ẩn,[14]
,
và ngược lại. Vì RBM có cấu trúc đồ thị hai phía (không có kết nối trong cùng một lớp), các đơn vị ẩn hoạt động độc lập khi đã biết các đơn vị nhìn thấy, và ngược lại.[12] Điều này có nghĩa là, với m đơn vị nhìn thấy và n đơn vị ẩn, xác suất có điều kiện của các đơn vị nhìn thấy v, khi biết cấu hình của các đơn vị ẩn h, là:
.
Ngược lại, xác suất có điều kiện của h khi biết v là:
Các đơn vị nhìn thấy của Máy Boltzmann hạn chế có thể là đa thức, dù các đơn vị ẩn tuân theo phân phối Bernoulli.[cần giải thích] Khi đó, hàm logistic cho các đơn vị nhìn thấy được thay bằng hàm softmax:
trong đó K là số giá trị rời rạc mà các giá trị nhìn thấy có. Chúng được sử dụng trong mô hình chủ đề,[7] và hệ thống gợi ý.[5]
Quan hệ với các mô hình khác
Máy Boltzmann Hạn chế là một dạng đặc biệt của máy Boltzmann và các trường ngẫu nhiên Markov.[15][16]
Máy Boltzmann hạn chế được huấn luyện để tối đa hóa các xác suất được gán cho một tập huấn luyện (một ma trận mà mỗi hàng là một vector nhìn thấy ),
hoặc tương đương, để tối đa hóa logarit kỳ vọng của một mẫu huấn luyện được chọn ngẫu nhiên từ :[15][16]
Thuật toán phổ biến nhất để huấn luyện RBM, tức là tối ưu hóa ma trận trọng số , là thuật toán phân kỳ đối nghịch (CD) do Hinton phát triển, ban đầu để huấn luyện các mô hình PoE (product of experts).[18][19]
Thuật toán này sử dụng kỹ thuật lấy mẫu Gibbs và nằm trong quy trình suy giảm độ dốc (tương tự như cách truyền ngược hoạt động khi huấn luyện mạng thần kinh tiến thẳng) để tính toán cập nhật trọng số.
Quy trình cơ bản của phân kỳ đối nghịch một bước (CD-1) cho một mẫu đơn lẻ có thể được tóm tắt như sau:
Lấy một mẫu huấn luyện v, tính toán xác suất của các đơn vị ẩn và lấy mẫu một vector kích hoạt ẩn h từ phân phối xác suất này.
Tính tích ngoài của v và h, gọi đó là gradient dương.
Từ h, lấy mẫu một bản dựng lại v' của các đơn vị nhìn thấy, sau đó lại lấy mẫu các kích hoạt ẩn h' từ đó. (Bước lấy mẫu Gibbs)
Tính tích ngoài của v' và h' và gọi đó là gradient âm.
Cập nhật ma trận trọng số bằng cách lấy gradient dương trừ đi gradient âm, nhân với một hệ số học: .
Cập nhật các trọng số bù a và b tương tự: , .
A Practical Guide to Training RBMs (Hướng dẫn Thực hành để Huấn luyện Máy Boltzmann Hạn chế) được viết bởi Hinton có thể được tìm thấy trên trang chủ của ông.[14]
Máy Boltzmann Hạn chế Xếp chồng
Sự khác biệt giữa Máy Boltzmann Hạn chế Xếp chồng (Stacked Restricted Boltzmann Machines) và RBM là ở chỗ, trong RBM, các kết nối ngang giữa các nút trong cùng một lớp không được phép, điều này giúp dễ phân tích hơn. Còn Máy Boltzmann Xếp chồng thì kết hợp một mạng ba lớp, trong đó có lớp học tự động (không giám sát) với trọng số đối xứng, và một lớp trên được huấn luyện có giám sát để giúp nhận dạng tốt hơn ba lớp.
Máy Boltzmann Xếp chồng được dùng để hiểu ngôn ngữ tự nhiên, tìm kiếm tài liệu, tạo ra hình ảnh và phân loại dữ liệu. Những chức năng này được học qua quá trình học không giám sát (học mà không có sự can thiệp của con người) và/hoặc được tinh chỉnh bằng cách học có giám sát (học với hướng dẫn). Khác với mạng có trọng số đối xứng ở lớp trên, RBM có một lớp hai chiều kết nối không đối xứng. Máy Boltzmann Hạn chế có ba lớp với trọng số không đối xứng và kết hợp hai mạng thành một.
Máy Boltzmann Xếp chồng có một số điểm tương đồng với RBM, như các neuron trong Máy Boltzmann Xếp chồng cũng là các neuron nhị phân giống như trong Máy Boltzmann Hạn chế. Cả Máy Boltzmann Hạn chế và RBM đều dựa trên một hàm gọi là hàm xác suất Gibbs: . Quá trình huấn luyện của Máy Boltzmann Hạn chế tương tự như RBM, huấn luyện từng lớp một và dùng một quy trình ba bước để ước lượng trạng thái cân bằng, không dùng cách lan truyền ngược. Máy Boltzmann Hạn chế có thể dùng cả phương pháp giám sát và không giám sát để huấn luyện các RBM khác nhau, nhằm phân loại và nhận dạng. Quá trình huấn luyện sử dụng phân kỳ đối nghịch kết hợp với lấy mẫu Gibbs: Δwij = e*(pij - p'ij).
Ưu điểm của Máy Boltzmann Hạn chế là nó có thể thực hiện biến đổi phi tuyến, dễ mở rộng và tạo ra các lớp đặc trưng theo tầng. Tuy nhiên, nhược điểm là nó tính toán phức tạp hơn khi sử dụng các neuron với giá trị là số nguyên hoặc số thực. Nó không tuân theo gradient của bất kỳ hàm nào, vì vậy cần ước lượng phân kỳ đối nghịch với xác suất cực đại để cải thiện.[14]
Văn học
Fischer, Asja; Igel, Christian (2012), “An Introduction to Restricted Boltzmann Machines”, Progress in Pattern Recognition, Image Analysis, Computer Vision, and Applications, Lecture Notes in Computer Science, Berlin, Heidelberg: Springer Berlin Heidelberg, 7441, tr. 14–36, doi:10.1007/978-3-642-33275-3_2, ISBN978-3-642-33274-6
^Sherrington, David; Kirkpatrick, Scott (1975), “Solvable Model of a Spin-Glass”, Physical Review Letters, 35 (35): 1792–1796, doi:10.1103/PhysRevLett.35.1792S
^ abSalakhutdinov, R.; Mnih, A.; Hinton, G. (2007). Restricted Boltzmann machines for collaborative filtering. Proceedings of the 24th international conference on Machine learning - ICML '07. tr. 791. doi:10.1145/1273496.1273596. ISBN978-1-59593-793-3.
^Pan, Ruizhi; Clark, Charles W. (2024). “Efficiency of neural-network state representations of one-dimensional quantum spin systems”. Physical Review Research. 6: 023193. doi:10.1103/PhysRevResearch.6.023193.
^María Angélica Cueto; Jason Morton; Bernd Sturmfels (2010). “Geometry of the restricted Boltzmann machine”. Algebraic Methods in Statistics and Probability. American Mathematical Society. 516. arXiv:0908.4425. Bibcode:2009arXiv0908.4425A.
Nicholson, Chris; Gibson, Adam. “Understanding RBMs”. Deeplearning4j Documentation. Bản gốc lưu trữ ngày 20 tháng 9 năm 2016. Truy cập ngày 29 tháng 12 năm 2014.