Phần 3_Chương 7 : Mạnghồi tiếp CHƯƠNG 7 MẠNGHỒI TIẾP Mạnghồi tiếp là đề tài được quan tâm nhiều nhất. Ở đây xem xét hai mạng : mạng Elman và mạng Hopfield. Mạng Elman là mạng backpropagation hai lớp, hơn nữa mạng này có kết nối hồi tiếp từ ngõ ra của lớp ẩn về ngõ vào. Đường hồi tiếp này cho phép mạng Elman học cách nhận dạng và phát các mẫu thời gian cũng như mẫu không gian. Mạng Hopfield dùng để lưu trữ một hoặc nhiều vector đích tónh. Các vector tónh này có thể xem như là bộ nhớ của mạng và sẽ được lấy ra từ các vector vào tương tự. Hàm newelm dùng thiết kế mạng Elman. Hàm newhop dùng thiết kế mạng Hopfield. 1. MẠNG ELMAN 1.1 Cấu trúc mạngMạng Elman thông thường là mạng hai lớp có đường hồi tiếp từ ngõ ra lớp một về ngõ vào. Đường hồi tiếp này cho phép mạng Elman nhận ra và phát những mẫu thời gian thay đổi. Lê Thanh Nhật-Trương Ánh Thu 1 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 7 : Mạnghồi tiếp Mạng Elman có neuron tansig trong lớp ẩn và neuron purelin ở lớp ngõ ra. Sự kết hợp này là đặc biệt trong mạng hai lớp với những hàm truyền này có thể gần đúng bất kì hàm nào với độ chính xác tùy ý. Yêu cầu duy nhất là lớp ẩn phải có đủ neuron. Số neutron ẩn nhiều hơn thì mạng sẽ khít về độ phức tạp. Lưu ý rằng mạng Elman khác những mạng hai lớp thông thường khác ở chỗ lớp thứ nhất có kết nối hồi tiếp. Độ trễ trong kết nối này lưu trữ giá trò từ thời điểm trước, có thể sử dụng ở thời điểm hiện tại. Vì thế thậm chí với hai mạng Elman có cùng trọng số và ngưỡng, có ngõ vào giống nhau ở cùng thời điểm, ngõ ra có thể khác nhau do trạng thái hồi tiếp khác nhau. Bởi vì mạng có thể lưu thông tin nên có thể học các mẫu theo thời gian cũng như không gian. Mạng Elman có thể huấn luyện để đáp ứng và phát cả hai loại mẫu này. 1.2 Thiết kế mạng Elman Mạng Elman có hai hay nhiều lớp có thể được tạo bằng hàm newelm. Các lớp ẩn thường có hàm truyền tansig. Hàm truyền lớp ngõ ra là purelin. Hàm huấn luyện backpropagation mặc đònh là trainbfg, hoặc có thể dùng trainlm, nhưng quá nhanh nên không cần thiết sử dụng trong mạng Elman. Hàm học mặc đònh là learngdm và hiệu suất là mse. Khi mạng được tạo, mỗi lớp trọng số và ngưỡng được khởi động bằng phương pháp khởi động lớp Nguyễn – Widrow trong hàm initnw. 1.3 Huấn luyện mạng Elman Mạng Elman có thể được huấn luyệân bằng hai hàm : train hoặc adapt. 1.3.1 Hàm train • Sau khi toàn bộ chuỗi ngõ vào đã vào mạng, ngõ ra được tính và so sánh với chuỗi đích để phát ra chuỗi sai số. • Với mỗi nấc thời gian sai số được truyền ngược để tìm gradient của các sai số đối với mỗi trọng số và ngưỡng. Gradient này là gần đúng khi các trọng số và ngưỡng góp phần vào sai số thông qua kết nối hồi tiếp trễ được bỏ qua. Lê Thanh Nhật-Trương Ánh Thu 2 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 7 : Mạnghồi tiếp • Sau đó gradient này được sử dụng để cập nhật trọng số với hàm huấn luyện tự chọn, thường dùng hàm traingdx. 1.3.2 Hàm adapt • Sau khi ngõ vào đã vào mạng, phát ngõ ra sai số của mạng. • Sai số được truyền ngược lại để tính gradient của sai số cho mỗi trọng số và ngưỡng. Gradient này là gần đúng khi các trọng số và ngưỡng góp phần tạo sai số qua kết nối hồi tiếp trễ được bỏ qua. • Sau đó gradient gần đúng này cập nhật trọng số với hàm học tự chọn, thường chọn hàm learngdm. Mạng Elman không tin cậy bằng những mạng khác bởi vì cả hàm train và adapt đều sử dụng hàm gần đúng sai số gradient. Đối với cùng một vấn đề mạng Elman cần dùng nhiều neuron ẩn hơn các mạng khác. Mạng Elman khó có thể tìm được các trọng số đúng nhất cho các neuron ẩn vì gradient sai số được tính gần đúng. Hàm train huấn luyện mạng Elman phát ra một chuỗi vector đích khi có chuỗi vector vào. Các vector ngõ vào và đích là các ma trận P và T. Hàm train lấy các vector này và trọng số, ngưỡng của mạng, huấn luyện mạng sử dụng phương pháp backpropagation tốc độ học thay đổi có quán tính, và trả về trọng số và ngưỡng mới. 2. MẠNG HOPFIELD Mục đích ở đây là thiết kế mạng chứa một tập các điểm cân bằng, khi điều kiện đầu xác lập mạng cuối cùng sẽ đi đến điểm được thiết kế. Mạng có hồi tiếp từ ngõ ra về ngõ vào. Mạng này không hoàn hảo khi có các điểm cân bằng giả không mong muốn. Tuy nhiên, số các điểm không mong muốn này trong phương pháp thiết kế sẽ làm càng nhỏ càng tốt, cũng như làm tăng phạm vi tối đa của các điểm cân bằng. Lê Thanh Nhật-Trương Ánh Thu 3 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 7 : Mạnghồi tiếp 2.1 Cấu trúc mạng Ngõ vào P của mạng chỉ đơn thuần là các điều kiện đầu. Mạng Hopfield sử dụng hàm truyền tuyến tính bão hòa satlins. Khi ngõ vào nhỏ hơn –1, ngõ ra bằng -1, ngõ vào trong khoảng (-1,1) trả ra giá trò bằng ngõ vào, ngõ vào lớn hơn 1 thì ngõ ra bằng 1. Mạng này được kiểm tra với một hoặc nhiều ngõ vào là điều kiện đầu của mạng. Sau khi đã có điều kiện đầu, ngõ ra của mạnghồi tiếp về ngõ vào. Quá trình này lặp lại cho đến khi ngõ ra ổn đònh. Rõ ràng, cuối cùng ngõ ra của mạng sẽ hội tụ về điểm cân bằng được thiết kế. 2.2 Thiết kế mạng Với một tập hợp các điểm cân bằng cho trước (ma trận đích T), hàm newhop trả về trọng số và ngưỡng cho mạng đệ quy. Mạng bảo đảm có các điểm cân bằng ở vector đích nhưng có thể chứa các điểm cân bằng giả. Phương pháp này làm giảm thiểu số các điểm không mong muốn này. Khi mạng được thiết kế, nó kiểm tra với một hoặc nhiều vector ngõ vào. Các vector ngõ vào gần với điểm cân bằng đích sẽ tìm ra ngõ ra yêu cầu. Ngõ vào mạng vào cùng lúc, mạng đưa ngõ ra có hồi tiếp về ngõ vào. Các vector ngõ ra có thể so sánh với vector đích để thấy kết quả xử lý. 3. Kết luận Lê Thanh Nhật-Trương Ánh Thu 4 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 7 : Mạnghồi tiếp Mạng Elman có vòng hồi tiếp trong, có khả năng học để nhận ra và phát các mẫu thời gian. Điều này làm cho mạng có ưu điểm trong vấn đề xử lý tín hiệu và dự đoán mà thời gian đóng vai trò quan trọng. Bởi vì mạng Elman là dạng mở rộng của cấu trúc mạng hai lớp sigmoid/tuyến tính, nên chúng có khả năng khít với bất kì hàm nào. Chúng cũng có khả năng đúng đối với các mẫu thời gian nhưng cần nhiều neuron trên lớp hồi tiếp. Mạng Hopfield cũng có khả năng sửa lỗi và phân loại vector. Vector ngõ vào sử dụng như điều kiện đầu của mạng, được hồi tiếp cho đến khi vector ngõ ra ổn đònh. Mạng Hopfield rất được quan tâm trên lý thuyết nhưng rất hiếm khi được sử dụng trong thực tế. Thậm chí khi mạng Hopfield được thiết kế tốt nhất vẫn có các điểm tónh giả dẫn đến sai số. Lê Thanh Nhật-Trương Ánh Thu 5 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 8 : Mạng Self-Organizing CHƯƠNG 8 MẠNG SELF – ORGANIZING Tự tổ chức trong mạng là một trong những đề tài thú vò nhất trong lónh vực Neural Networks. Mạng này có khả năng học, tìm ra quy luật và các tương quan ở ngõ vào và thích ứng với các đáp ứng có ngõ vào tương ứng. Các neuron của mạng cạnh tranh học nhận ra các nhóm vector ngõ vào giống nhau. Các bản đồ tự tổ chức học nhận ra các nhóm vector ngõ vào tương tự nhau theo cách các neuron gần nhau về mặt vật lý trong lớp neuron đó tương ứng với các vector ngõ vào tương tự nhau. Các lớp cạnh tranh và bản đồ tự tổ chức được tạo bằng hàm newc và neusom. 1. HỌC CẠNH TRANH Các neuron trong lớp cạnh tranh tự phân bố để nhận ra tần số xuất hiện các vector ngõ vào. 1.1 Cấu trúc mạng Khối dist nhận vector ngõ vào P và ma trận trọng số ngõ vào IW 1.1 , tạo ra vector có S 1 thành phần. Các thành phần có giá trò bằng trừ khoảng cách giữa vector ngõ vào và vector i IW 1.1 . Ngõ vào mạng n 1 ở lớp cạnh tranh được tính bằng cách tìm giá trò âm khoảng cách giữa vector ngõ vào P và các vector trọng số và sau đó được cộng với ngưỡng b. Nếu tất cả các ngưỡng bằng 0, ngõ vào neuron có giá trò lớn nhất bằng 0. Điều này xảy ra khi vector ngõ vào P bằng với vector trọng số. Lê Thanh Nhật-Trương Ánh Thu 6 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 8 : Mạng Self-Organizing Hàm truyền cạnh tranh nhận vector ngõ vào mạng cho một lớp và trả ra giá trò 0 cho tất cả các neuron ngoại trừ neuron thắng, neuron thắng là neuron có thành phần ngõ vào mạng n 1 dương nhất. Ngõ ra của neuron thắng bằng 1. Nếu tất cả các ngưỡng bằng 0 thì neuron có vector trọng số gần nhất với vector ngõ vào sẽ có ngõ vào mạng ít âm nhất, và do đó thắng trong cuộc cạnh tranh cho ngõ ra a bằng1. 1.2 Quy luật học Kohonen ( LEARNK ) Các trọng số của neuron thắng (là một hàng trong ma trận trọng số ngõ vào) được hiệu chỉnh bằng quy luật học Kohonen. Giả sử rằng neuron thứ i thắng, hàng thứ i trong ma trận trọng số được điều chỉnh như sau : ( ) ( ) ( ) )1()1( 1,11,11,1 −−+−= qIWqpqIWqIW iii α Quy luật Kohonen cho phép các trọng số của một neuron học một vector ngõ vào, do đó đây là lợi điểm dùng trong các ứng dụng nhận dạng. Do đó neuron có vector trọng số gần nhất với vector ngõ vào được cập nhật để gần hơn. Kết quả là neuron thắng gần như thắng tiếp trong lần cạnh tranh sau khi các vector vào tương tự. Vì thế khi có nhiều vector vào, mỗi neuron sẽ tự điều chỉnh đến gần nhất các nhóm vector vào. Cuối cùng, nếu có đủ neuron, mỗi nhóm các vector ngõ vào tương tự nhau sẽ có một neuron cho ngõ ra bằng 1 khi có một vector trong nhóm vào mạng. Vì thế mạng cạnh tranh học phân loại các vector ngõ vào. 1.3 Quy luật học ngưỡng (Learncon) Một trong những giới hạn của mạng cạnh tranh là có vài neuron có thể luôn luôn không được chỉ đònh. Nói cách khác có một vài vector trọng số neuron có thể bắt đầu từ rất xa với bất kì các vector ngõ vào và sẽ không bao giờ thắng trong cuộc cạnh tranh cho dù thời gian huấn luyện có lâu đi nữa. Kết quả là các trọng số của chúng sẽ không được học và chúng sẽ không bao giờ thắng. Các neuron không may mắn gọi là neuron “chết”, hoàn toàn không có ích trong mạng. Để ngăn cản điều này xảy ra, ngưỡng sử dụng để đưa neuron chỉ thắng trong một vài cuộc cạnh tranh (hoặc chưa bao giờ) một lợi thế hơn tất cả các neuron khác thường hay thắng. Với ngưỡng dương, cộng với khoảng cách âm làm cho khoảng cách của neuron có nhiều khả năng thắng hơn. Để làm điều này ta giữ lại trung bình chạy của ngõ ra các neuron, tương đương với số phần trăm thời gian mỗi ngõ ra bằng 1. Giá trò trung bình này sử dụng để cập nhật ngưỡng (dùng hàm học learncon). Do đó ngưỡng của các neuron ít hoạt động này sẽ lớn hơn. Lê Thanh Nhật-Trương Ánh Thu 7 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 8 : Mạng Self-Organizing Tốc độ học của hàm learncon thường được cài đặt nhỏ hơn hàm learnk. Làm điều này để bảo đảm giá trò trung bình chạy được chính xác. Kết quả là ngưỡng của các neuron không được đáp ứng thường xuyên sẽ tăng so với ngưỡng các neuron đáp ứng thường xuyên. Khi ngưỡng của các neuron ít hoạt động tăng, không gian ngõ vào mà neuron đó đáp ứng sẽ tăng. Khi không gian ngõ vào đó tăng, neuron ít hoạt động sẽ đáp ứng và di chuyển về phía các vector ngõ vào. Cuối cùng neuron sẽ đáp ứng với tần số bằng với các neuron khác. Điều này có hai ưu điểm. Thứ nhất nếu neuron không bao giờ thắng trong cuộc cạnh tranh vì trọng số của nó rất xa so với các vector ngõ vào, cuối cùng ngưỡng của nó sẽ có giá trò đủ lớn để neuron này có thể thắng. Khi điều này xảy ra neuron sẽ di chuyển về phía một nhóm vector ngõ vào, trọng số của nó sẽ giảm về 0. Như vậy, vấn đề về neuron chết đã được giải quyết. Ưu điểm thứ hai về ngưỡng là chúng buộc mỗi neuron phân loại thô các vector ngõ vào bằng nhau. Vì thế nếu một vùng của không gian ngõ vào có nhiều neuron đáp ứng hơn các vùng khác, thì mạng sẽ phân bố lại chia vùng đó thành nhiều vùng con. 2. BẢN ĐỒ TỰ TỔ CHỨC Bản đồ chức năng tự tổ chức (SOFM) học phân loại vector ngõ vào tùy theo chúng được nhóm vào không gian ngõ vào nào. Mạng này khác với các lớp cạnh tranh về mặt các neuron lân cận trong bản đồ tự tổ chức học nhận biết các phần lân cận của không gian ngõ vào. Vì thế bản đồ tự tổ chức học cả sự phân bố và cấu trúc liên kết của các vector ngõ vào. Các neuron trong lớp SOFM ban đầu được sắp xếp theo vò trí vật lý tùy theo hàm cấu trúc liên kết. Hàm gridtop, hextop hay randtop có thể sắp xếp các neuron dưới dạng lưới, lục giác hoặc ngẫu nhiên. Khoảng cách giữa các neuron được tính dựa trên vò trí của chúng. Có bốn hàm tính khoảng cách là dist, boxdist, linkdist và mandist. Khoảng cách liên kết thường dùng nhất. Ở đây mô tả mạng bản đồ chức năng tự tổ chức nhận dạng một neuron thắng i * sử dụng cùng thủ tục với lớp cạnh tranh. Tuy nhiên, thay vì chỉ cập nhật đối với neuron thắng, tất cả các neuron trong vùng lân cận N i* (d) của neuron thắng sẽ được cập nhật bằng luật Kohonen. Đặc biệt, chúng ta sẽ điều chỉnh tất cả các neuron i∈ N i* (d) như sau : ( ) ( ) ( ) ( )( ) 11 −−+−= qwqpqwqw iii α hoặc ( ) ( ) ( ) ( ) qpqwqw i i αα +−−= 11 Lê Thanh Nhật-Trương Ánh Thu 8 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 8 : Mạng Self-Organizing Ở đây lân cận N i* (d) chứa tất cả các chỉ số của tất cả các neuron nằm trong bán kính d của neuron thắng i * . { } ddjdN iji ≤= ,)( Vì thế khi có vector P vào mạng, các trọng số của neuron thắng và các neuron lân cận sẽ di chuyển về phía P. Kết quả sau nhiều lần xuất hiện vector P, các neuron lân cận sẽ học các vector tương tự của nhau. Để minh họa khái niệm lân cận ta xem xét hình dưới. Giản đồ bên trái minh họa lân cận hai chiều có bán kính d = 1 quanh neuron thứ 13. Giản đồ bên phải minh họa lân cận bán kính d = 2. Lê Thanh Nhật-Trương Ánh Thu 9 GVHD : Ths Hoàng Đình Chiến . 3_Chương 7 : Mạng hồi tiếp CHƯƠNG 7 MẠNG HỒI TIẾP Mạng hồi tiếp là đề tài được quan tâm nhiều nhất. Ở đây xem xét hai mạng : mạng Elman và mạng Hopfield. Mạng. thiết kế mạng Elman. Hàm newhop dùng thiết kế mạng Hopfield. 1. MẠNG ELMAN 1.1 Cấu trúc mạng Mạng Elman thông thường là mạng hai lớp có đường hồi tiếp