Mục tiêu
Một trong những câu hỏi chúng tôi nêu ra trong chương 3 là: "Làm thế nào để chúng ta xác định ma trận trọng số và hệ số hiệu chỉnh cho các mạng perceptron với nhiều đầu vào, trường hợp không thể hình dung ranh giới quyết định?" Trong chương này, chúng tôi sẽ mô tả một thuật toán cho phép đào tạo mạng perceptron, để giải quyết vấn đề phân loại. Chúng tôi sẽ bắt đầu bằng cách giải thích một luật học và sau đó sẽ phát triển các luật học perceptron. Chúng tôi sẽ kết thúc bằng việc thảo luận những lợi thế và hạn chế của mạng perceptron đơn lớp. Thảo luận này sẽ dẫn chúng ta đến các chương sau.
77 trang |
Chia sẻ: maiphuongzn | Lượt xem: 2133 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Đề tài Luật học perceptron, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LUẬT HỌC PERCEPTRON Nguyễn Thành Trung Lớp :THB – K53 Khoa: Công nghệ thông tin ĐH Nông nghiệp Hà Nội NỘI DUNG Mục tiêu Lý thuyết và ví dụ Luât học Kiến trúc Perceptron Perceptron một noron Perceptron nhiều noron Luật học Perceptron Kiểm tra vấn đề Xây dựng Luật học Luật học thống nhất Huấn luyện mạng perceptron nhiều noron Tóm tắt kết quả Bài tập mẫu Kết luận Mục tiêu Một trong những câu hỏi chúng tôi nêu ra trong chương 3 là: "Làm thế nào để chúng ta xác định ma trận trọng số và hệ số hiệu chỉnh cho các mạng perceptron với nhiều đầu vào, trường hợp không thể hình dung ranh giới quyết định?" Trong chương này, chúng tôi sẽ mô tả một thuật toán cho phép đào tạo mạng perceptron, để giải quyết vấn đề phân loại. Chúng tôi sẽ bắt đầu bằng cách giải thích một luật học và sau đó sẽ phát triển các luật học perceptron. Chúng tôi sẽ kết thúc bằng việc thảo luận những lợi thế và hạn chế của mạng perceptron đơn lớp. Thảo luận này sẽ dẫn chúng ta đến các chương sau. Lý thuyết và ví dụ Trong năm 1943, Warren McCulloch và Walter Pitts giới thiệu một trong những neuron nhân tạo đầu tiên. Các tính năng chính của mô hình neuron của họ là sự tổng hợp có trọng số của tín hiệu đầu vào được so sánh với ngưỡng để tìm đầu ra của neuron. Khi tổng lớn hơn hoặc bằng ngưỡng, đầu ra là 1. Khi tổng nhỏ hơn ngưỡng, đầu ra là 0. Họ tiếp tục cho thấy mạng neuron có thể tính toán số học hoặc hàm logic. Không giống như các mạng sinh học, các thông số mạng của chúng được thiết kế mà không có phương pháp đào tạo có sẵn. Tuy nhiên, mối quan hệ giữa sinh học và máy tính kỹ thuật số tạo ra rất nhiều sự quan tâm. Trong cuối những năm 1950, Frank Rosenblatt và một số nhà nghiên cứu khác phát triển một lớp học về mạng neuron là perceptrons. Các neuron trong mạng này cũng tương tự như của McCulloch và Pitts. Đóng góp quan trọng của Rosenblatt là giới thiệu một luật học để huấn luyện các mạng perceptron để giải quyết vấn đề nhận dạng mẫu. Ông đã chứng minh rằng luật học của mình sẽ luôn luôn hội tụ về các trọng số mạng chính xác, nếu trọng số tồn tại để giải quyết vấn đề. Sự huấn luyện đã được đơn giản và tự động. Tuy nhiên, mạng perceptron có nhiều hạn chế. Những hạn chế này đã được công bố trong cuốn Perceptrons của Marvin Minsky và Seymour Papert. Họ đã chứng minh rằng mạng perceptron đã không có khả năng thực hiện một số chức năng cơ bản. Mãi đến những năm 1980 những hạn chế này mới được khắc phục với các mạng perceptron cải tiến (nhiều lớp) và những luật học liên quan. Chúng tôi sẽ nói về những cải tiến này trong các chương 11 và 12. Ngày nay các perceptron vẫn còn được xem như là một mạng quan trọng. Nó vẫn còn là một mạng nhanh và đáng tin cậy cho các vấn đề mà nó có thể giải quyết. Ngoài ra, sự hiểu biết về hoạt động của perceptron sẽ tạo cơ sở tốt cho sự hiểu biết các mạng lưới phức tạp hơn. Như vậy, mạng perceptron, và các luật học liên quan , cũng có giá trị thảo luận ở đây. Trong phần còn lại của chương này chúng tôi sẽ xác định ý nghĩa của luật học, giải thích các mạng perceptron và luật học, và thảo luận về những hạn chế của mạng perceptron . Luật học Luật học là một thủ tục để sửa đổi các trọng số và hệ số hiệu chỉnh của mạng neuron. (Thủ tục này cũng có thể được gọi là một thuật toán huấn luyện.) Mục đích của luật học là huấn luyện mạng để thực hiện một số nhiệm vụ. Có nhiều loại luật học huấn luyện mạng neuron. Chúng gồm ba loại chính: luật học có giám sát, luật học không giám sát và luật học gia tăng (hoặc phân loại). Trong luật học có giám sát, luật học đưa ra một tập hợp các mẫu có quy tắc và tương thích với mạng: pq là một đầu vào mạng và tq tương ứng với đầu ra chính xác (mục tiêu). Khi các đầu vào được áp dụng vào mạng, các kết quả đầu ra mạng được so sánh với các mục tiêu. Luật học sau đó được sử dụng để điều chỉnh trọng số và hệ số hiệu chỉnh của mạng để dịch chuyển đầu ra gần với các mục tiêu hơn. Luật học perceptron được xếp vào loại luật học có giám sát. Luật học gia tăng tương tự luật học có giám sát, ngoại trừ việc, thay vì đưa ra các đầu ra chính xác cho mỗi đầu vào mạng, thuật toán chỉ cho một lớp. Lớp là thước đo cho sự hoạt động của mạng trên một chuỗi đầu vào. Đây là loại luật học hiện nay ít phổ biến hơn so với luật học có giám sát. Nó dường như là phù hợp nhất để kiểm soát các ứng dụng hệ thống. Luật học không giám sát, trọng số và hệ số hiệu chỉnh được sửa đổi để đáp ứng với đầu vào mạng. Có mục tiêu không là đầu ra có sẵn. Điều này dường như không thực tế. Làm thế nào bạn có thể huấn luyện một mạng nếu bạn không biết nó phải làm gì? Hầu hết các thuật toán thực hiện sự hoạt động phân cụm. Chúng được luyện để phân loại các mô hình đầu vào thành một số hữu hạn các lớp. Điều này đặc biệt hữu ích trong các ứng dụng như là lượng tử hóa vector. Chúng ta sẽ thấy trong các chương 13-16 một số thuật toán không giám sát. Kiến trúc Perceptron. Các mạng nơron mà trong mỗi nơron chỉ được liên kết với tất cả các nơron ở lớp kế tiếp và tất cả các mối liên kết chỉ được xây dựng từ trái sang phải được gọi là mạng nhiều lớp truyền thẳng (perceptrons) Đầu ra của mạng được cho bởi: Để thuận tiện cho sự xem xét các phần tử riêng lẻ của vector đầu ra. Hãy xem xét ma trận trọng số: Chúng tôi sẽ xác định một vector gồm các phần tử của hàng thứ i của W: Ma trận trọng số trở thành: Phần tử thứ i của vector đầu ra mạng: Mà hàm truyền harlim được định nghĩa như sau: Vì vậy, tích trong hàng thứ i của ma trận trọng số với vecto đầu vào lớn hơn hoặc bằng -bi , thì đầu ra sẽ là 1, trái lại đầu ra sẽ là 0. Vì thế mỗi neuron trong mạng chia không gian đầu vào thành hai khu vực. Nó rất hữu ích để điều tra các ranh giới giữa các khu vực này. Chúng tôi sẽ bắt đầu với các trường hợp đơn giản của một perceptron đơn lớp với hai đầu vào. Perceptron đơn lớp Chúng ta hãy xem xét một perceptron hai đầu vào: Đầu ra của mạng này được xác định bởi Ranh giới phân loại các vector đầu vào được xác định bởi: Cụ thể hơn, chúng ta hãy chỉ định các giá trị của trọng số và hệ số hiệu chỉnh là: Ranh giới quyết định sẽ là: Điều này xác định 1 đường trong không gian đầu vào. Trên một bên của đường đầu ra sẽ là 0 ; trên đường và phía bên kia của đường đầu ra sẽ là 1. Để vẽ đường, chúng ta có thể tìm những điểm cắt các trục p1 và p2 . Để tìm điểm cắt p2 ta đặt p1 = 0: Để tìm điểm cắt p1, ta đặt p2 = 0: Để tìm ra khu vực mà đầu ra tương ứng là 1, chúng ta chỉ cần kiểm tra một điểm. Đối với các đầu vào p = [2 0]T, đầu ra của mạng sẽ là : Do đó, đầu ra của mạng sẽ là 1 đối với khu vực trên và bên phải của ranh giới quyết định. Khu vực này được chỉ định bởi các khu vực bóng mờ trong hình 4.3: Lưu ý: Ranh giới luôn luôn là trực giao với 1w , và được xác định bởi: Đối với tất cả các điểm nằm trên ranh giới, tích trong của các vector đầu vào với các vector trọng số là như nhau. Ngoài ra, bất kỳ vector trong khu vực bóng mờ của hình 4.3 sẽ có tích trong lớn hơn -b, và vector trong khu vực không có bóng mờ sẽ có tích trong ít hơn -b . Vì vậy vector trọng số 1w sẽ luôn luôn hướng về phía khu vực nơi mà đầu ra của mạng là 1. Sau khi chúng tôi đã chọn một vector trọng số với định hướng góc chính xác, hệ số hiệu chỉnh có thể được tính bằng cách chọn một điểm trên ranh giới và thỏa mãn Eq. (4,15). Chúng ta sẽ áp dụng một trong những khái niệm thiết kế mạng perceptron để thực hiện một hàm logic đơn giản: các cổng AND. Các cặp đầu vào/mục tiêu cho các cổng AND là: Hình dưới minh họa cho vấn đề bằng đồ thị. Mỗi vector đầu vào sẽ được dán nhãn theo mục tiêu. Các vòng tròn đen chỉ ra rằng mục tiêu là 1, và các vòng tròn trắng cho mục tiêu là 0. Bước đầu tiên của thiết kế là chọn một ranh giới quyết định. Chúng ta muốn có một đường phân cách giữa vòng tròn đen và những vòng tròn trắng. Có vô số các giải pháp cho vấn đề này. Giải pháp hợp lý nhất để lựa chọn đường nằm giữa hai loại đầu vào, như thể hiện trong hình dưới: Tiếp theo chúng ta muốn chọn một vector trọng số trực giao với ranh giới quyết định. Các vector trọng số có thể có chiều dài bất kỳ, vì vậy có thể chọn bất kỳ, VD chọn: Cuối cùng, chúng ta cần phải tìm ra hệ số hiệu chỉnh. Chúng ta có thể làm điều này bằng cách chọn một điểm trên ranh giới quyết định và đáp ứng Eq. (4,15). Nếu chúng ta sử dụng để tìm Bây giờ có thể kiểm tra lại mạng trên bằng một trong các cặp đầu vào/mục tiêu. Nếu chúng ta áp dụng p2 vào mạng , đầu ra sẽ là: bằng với đầu ra đích t2. Các cặp còn lại co thể kiểm tra tương tự như trên. Perceptron nhiều noron Lưu ý rằng đối với mạng perceptron nhiều noron, như trong hình 4.1, sẽ có một ranh giới quyết định cho từng noron. Ranh giới quyết định cho noron i sẽ được xác định bởi: Một perceptron đơn lớp có thể phân loại các vector đầu vào thành hai loại, vì đầu ra của nó có thể là 0 hoặc 1. Một perceptron nhiều lớp có thể phân loại đầu vào thành nhiều loại. Mỗi loại được đại diện bởi một vector đầu ra khác nhau. Vì mỗi phần tử của vector đầu ra có thể là 0 hoặc 1, có tổng cộng 2s loại có thể, trong đó S là số noron. Luật Học Perceptron Luật học này là một ví dụ về luật học có giám sát, trong đó các luật học đưa ra một tập hợp các mẫu theo quy tắc của mạng: Tại pq là một đầu vào mạng và tq tương ứng với đầu ra chính xác (mục tiêu). Khi các đầu vào được áp dụng vào mạng, các kết quả đầu ra mạng được so sánh với các mục tiêu. Luật học sau đó được sử dụng để điều chỉnh trọng số và hệ số hiệu chỉnh của mạng để dịch chuyển đầu ra gần với các mục tiêu hơn. Vấn đề kiểm tra Để trình bày về luật học perceptron, chúng tôi sẽ bắt đầu với một vấn đề kiểm tra đơn giản. Cho các cặp đầu vào/mục tiêu là: Vấn đề được minh họa trong biểu đồ hình bên, tại 2 vectơ đầu vào mà mục tiêu là 0 được biểu diễn với một vòng tròn trắng, và các vector có mục tiêu là 1 được đại diện với một vòng tròn đen. Các mạng giải quyết cho vấn đề này cần phải có hai đầu vào và một đầu ra. Để đơn giản hóa việc khai triển các luật học, chúng ta sẽ bắt đầu với một mạng lưới mà không có hệ số hiệu chỉnh. Mạng lưới sẽ có 2 thông số, w1,1 và w1,2, như trong hình 4.4 Hình 4.4 Vấn đề kiểm tra mạng Bằng cách bỏ đi hệ số hiệu chỉnh, chúng ta có mạng như hình: Ranh giới quyết định phải đi qua gốc tọa độ. Chúng ta cần phải chắc chắn rằng mạng lưới này vẫn có thể giải quyết vấn đề kiểm tra. Cần phải tìm một ranh giới quyết định cho phép tách các vectơ p2 và p3 từ vectơ p1. Hình minh họa trên giải thích cho sự vô hạn của ranh giới. Hình trên cho thấy các vec tơ trọng số tương ứng với các ranh giới quyết định. Chiều dài của các vector trọng số không quan trọng, chỉ có hướng của nó là quan trọng. Xây dựng luật học Huấn luyện bắt đầu bằng cách chỉ định một số giá trị ban đầu cho các thông số mạng. Trong trường hợp này chúng tôi đang huấn luyện một mạng lưới 2 đầu vào/1 đầu ra mà không có hệ số hiệu chỉnh, vì vậy chúng tôi chỉ có thể thiết lập giá trị ban đầu với 2 trọng số của nó. Ở đây chúng tôi đặt các phần tử của vector trọng số 1w ngẫu nhiên với các giá trị sau : 1wT = [ 1.0 -0.8] ( 4.21 ) Các vectơ đầu vào của mạng được trình bày như sau: Với p1 ta có : Mạng không trả về giá trị chính xác. Đầu ra của mạng là 0, trong khi yêu cầu cần đáp ứng, t1, là 1. Chúng ta có thể xem những gì đã xảy ra bằng cách nhìn vào biểu đồ sau: Các giá trị ban đầu đã chọn của vector trọng số phân lớp không chính xác cho vector p1. Vì vậy chúng ta cần phải thay đổi vector trọng số để nó có vị trí gần vector p1 hơn, để trong tương lai nó có cơ hội phân loại chính xác hơn. Để giải quyết vấn đề ta có thể thiết lập 1w xấp xỉ bằng p1. Quy tắc này đơn giản và đảm bảo để p1 được phân loại chính xác cho vấn đề này. Tuy nhiên, ta có thể dễ dàng xây dựng nên một vấn đề mà không thể áp dụng quy tắc này. Đồ thị dưới cho thấy một vấn đề mà không thể giải quyết trực tiếp được với các vector trọng số tại một trong hai vector khác nhau thuộc cùng 1 lớp. Nếu lần nào chúng ta cũng áp dụng quy tắc 1w = p cho một trong hai vec tơ thì sẽ phân loại sai, trọng số của mạng chỉ đơn giản là sẽ dao động qua lại và sẽ không bao giờ tìm thấy được một giải pháp đúng đắn. Một khả năng khác là cộng p1 với 1w. Cộng p1 cho 1w làm cho các điểm của 1w gần p1 hơn. Quy luật này có thể được trình bày như sau : Áp dụng quy tắc này cho vấn đề trên ta được giá trị mới của 1w : Hình minh họa: Bây giờ chúng tôi chuyển sang vector đầu vào tiếp theo và tiếp tục làm thay đổi trọng số và lặp lại quá trình với tất cả các đầu vào cho đến khi phân loại chính xác. Với vector p2 ta có: Ta thấy mục tiêu t2 là 0 mà đầu ra ở trên lại là 1 => không đáp ứng yêu cầu của vấn đề. Tuy nhiên ở đây ta lại muốn vector trọng số rời xa các vector đầu vào mà mục tiêu tương ứng là 0. Để giải quyết vấn đề này đơn giản ta chỉ cần thay phép cộng bằng phép trừ trong biểu thức 4.23: Áp dụng vào vấn đề ta được: Hình minh họa: Tiếp theo là vector p3: Tương tự áp dụng biểu thức 4.26 ta có: Hình minh họa bên đã cho kết quả huấn luyện phân loại chính xác cho cả 3 vector Điều này đưa chúng ta tới quy tắc thứ ba và cuối cùng đó là: nếu mạng hoạt động, không sửa chữa nó. Dưới đây là ba quy tắc, bao gồm tất cả các tổ hợp của giá trị đầu ra và mục tiêu thích hợp : Thống nhất luật học Ba quy tắc trên có thể được viết lại thành 1 biểu thức đơn giản. Đầu tiên chúng ta sẽ định nghĩa 1 biến số mới được gọi là sai số perceptron e: Các quy tắc được viết lại như sau: Ta thấy trong 2 quy tắc đầu thì dấu của p và e là giống nhau. Hơn nữa quy tắc 3 không chứa p tương ứng với e = 0. Do đó ta có thể viết lại 3 quy tắc thành 1 quy tắc thống nhất như sau: Quy tắc trên có thể mở rộng để huấn luyện hệ số hiệu chỉnh bằng cách coi hệ số hiệu chỉnh như 1 trọng số đơn giản với đầu vào luôn là 1. Ta có thể thay đầu vào p trong biểu thức 4.34 như đầu vào luôn mang giá trị 1 để huấn luyện hệ số hiệu chỉnh: Huấn luyện mạng perceptron nhiều noron Các quy tắc perceptron, được cho bởi biểu thứcb (4,34) và (4,35), cập nhật vector trọng trọng cho perceptron một noron . Chúng ta có thể khái quát hóa quy tắc này cho các perceptron nhiều neuron của Hình 4.1 như sau. Để cập nhật hàng thứ i của ma trận trọng số ta có: Để cập nhật phần tử thứ i của vecto sa hệ số hiệu chỉnh ta áp dụng biểu thức: Để thuận tiện các quy tắc perceptron có thể được viết dươi dạng ký hiệu ma trận như sau: Để kiểm tra luật học perceptron, chúng ta sẽ xem xét lại ví dụ về táo/cam trong chương chương 3. Các cặp đầu vào/đầu ra sẽ được các vector mẫu thử nghiệm: Giả sử giá trị ban đầu của ma trận trọng số và hệ số hiệu chỉnh là: Bước đầu tiên chúng ta sẽ áp dung vector p1 vào mạng: Tiếp theo là tính giá trị sai số e: Bản cập nhật trọng lượng: Bản cập nhật hệ số hiệu chỉnh là: Bước 2: của quy tắc perceptron là: Bước 3 lặp lại một lần nữa với các vector đầu vào đầu tiên p1: Nếu tiếp tục lặp đi lặp lại sẽ thấy rằng cả hai vectơ đầu vào bây giờ sẽ được phân loại một cách chính xác. Thuật toán đã hội tụ về một phương pháp. Lưu ý: Ranh giới quyết định cuối cùng không giống như ranh giới mà chúng ta trình bày trong Chương 3, mặc dù cả hai ranh giới đều phân loại chính xác các vectơ hai đầu vào. Tóm tắt các kết quả Kiến trúc perceptron Ranh giới quyết định: Ranh giới quyết định luôn trực giao với vector trọng số. Perceptron đơn lớp chỉ có thể phân loại 2 vector tuyến tính tách rời. Luật học perceptron: Bài tập mẫu P4.1 : Giải thích 3 bài toán phân loại đơn giản trong hình P4.1 bằng cách vẽ một ranh giới quyết định. Tìm giá trị trọng số và hệ số hiệu chỉnh trong mạng perceptron một noron với ranh giới quyết định đã chọn. Giải Trước tiên chúng ta vẽ một đường giữa phân tách tập các điểm trắng và điểm đen. Bước tiếp theo là tìm kiếm các trọng số và hệ số hiệu chỉnh. Các vector trọng số phải được trực giao với ranh giới quyết định, và hướng về các điểm được phân loại bằng 1 (điểm đen). Các vector trọng số có thể cócó chiều dài tùy ý. Dưới đây là tập các vector trọng số được lựa chọn: 1wT = [-2 1] , (b) 1wT = [0 -2] , (c) 1wT = [2 -2] Bây giờ chúng ta đi tìm giá trị của các hệ số hiệu chỉnh cho từng perceptron bằng cách chọn một điểm trên ranh giới quyết định và đáp ứng được biểu thức ( 4.15 ) 1wTp + b = 0 b = - 1wTp Điều này cho chúng ta ba hệ số hiệu chỉnh sau : Bây giờ chúng tôi có thể kiểm tra nghiệm đối những điểm ban đầu. Ở đây chúng tôi thử nghiệm mạng đầu tiên trên vector đầu vào p = [ 2 -2 ]T P 4.3: Cho bài toán phân loại với bốn lớp vector đầu vào gồm : Thiết kế một mạng perceptron để giải bài toán này. P 4.2: Biến đổi bài toán phân loại dưới đây về các bất phương trình tương đương để tìm trọng số và hệ số hiệu chỉnh. Giải Với mỗi mục tiêu ti chỉ có thể đáp ứng 1 mạng đầu vào pi nhỏ hơn 0 hoặc lớn hơn hoặc bằng 0. Ví dụ với t1 = 1 thì mạng đầu vào tương ứng p1 phải lớn hơn hoặc bằng 0. Theo đó ta có các bất phương trình sau: Áp dụng tương tự với các cặp đầu vào/mục tiêu {p2, t2 }, {p3,t3} và {p4,t4} ta có cac bất phương trình sau: Việc giải hệ bất phương trình là rất khó so với giải hệ phương trình. Tuy nhiên, đây là 1 bài toán đơn giản nên ta có thể dùng đồ thị giải các bất phương trình này. Để ý ta thấy rằng w1,1 chỉ xuất hiện trong bất phương trình (ii) và (iv), và w1,2 chỉ xuất hiện trong bất phương trình (I) và (iii). Chúng ta có thể vẽ mỗi cặp bất phương trình bằng hai đồ thị Mọi giá trị của trọng số và hệ số hiệu chỉnh nằm trong cả 2 vùng màu tối đều có thể giải quyết bài toán phân loại trên. Một trong những giá trị đó là: W = [–2 3] b = 3 Giải Để giải giải bài toán với 4 lớp vector đầu vào chúng ta sẽ cần một perceptron với ít nhất hai nơron. Mạng perceptron hai nơron được minh họa trong hình P4.2. Các vector đầu vào mạng được minh họa trong hình P4.3. Các vòng tròn trắng thể hiện vector loại 1. Các hình vuông trắng thể hiện vector loại 2. Các vòng tròn đen thể hiện vector loại 3. Các hình vuông đen thể hiện vector loại 4. Mạng perceptron hai nơron cần tạo ra hai ranh giới quyết định. Vì vậy, để phân chia không gian đầu vào thành bốn loại, chúng ta cần phải có một ranh giới phân chia 4 loại thành hai tập của 2, ranh giới còn lại sẽ cô lập từng loại. Hai ranh giới đó được minh họa trong hình P4.4. Chúng ta biết rằng các mẫu của chúng tôi là tuyến tính tách riêng. Các vector trọng số trực giao với ranh giới quyết định và hướng về các khu vực nơi mà các kết quả đầu ra neuron là 1. Bước tiếp theo là quyết định bên nào của mỗi ranh giới cho kết quả đầu ra là 1. Một sự lựa chọn được minh họa trong hình P4.5, các khu vực bóng mờ đại diện cho các đầu ra là 1. Những bóng mờ nhất chỉ ra rằng cả hai đầu ra đều cho kết quả là 1. Lưu ý rằng giải pháp này tương ứng với giá trị mục tiêu của: Bây giờ chúng ta có thể chọn các vectơ trọng số: Lưu ý rằng độ dài của vectơ trọng số không quan trọng, chỉ có hướng của chúng là quan trọng. Chúng phải được trực giao với ranh giới quyết định. Bây giờ chúng ta có thể tính hệ số hiệu chỉnh bằng cách chọn một điểm trên một đường ranh giới và đáp ứng biểu thức (4.15): Ma trận trọng số và hệ số hiệu chỉnh là: P 4.4:Giải bài toán phân loại sau đây với luật học perceptron. Áp dụng từng vector đầu vào theo thứ tự, lặp lại quá trình cho đến khi vấn đề được giải quyết. Vẽ đồ thị của bài toán sau khi bạn đã tìm thấy một giải pháp tốt nhất. Giải Trọng số và hệ số điều chỉnh ban đầu: Chúng tôi bắt đầu bằng cách tính đầu ra của perceptron cho vector đầu vào đầu tiên p1, bằng cách sử dụng hệ số điều chỉnh và trọng số ban đầu. Đầu ra a không bằng giá trị mục tiêu t1 , vì vậy chúng ta sử dụng các quy tắc perceptron để tìm trọng số và hệ số điều chỉnh dựa trên sai số. Chúng ta tiếp tục áp dụng vector đầu vào thứ hai p2 , bằng cách sử dụng hệ số điều chỉnh và trọng số đã cập nhật. Tại đây đầu ra a là bằng với mục tiêu t2 . Áp dụng các quy tắc perceptron sẽ đưa ra kết quả không thay đổi. Chúng ta tiếp tục áp dụng với vector đầu vào thứ ba Ta thấy đầu ra đáp ứng vector đầu vào p3 bằng với mục tiêu t3 , vì vậy sẽ không có thay đổi. Chúng ta tiếp tục chuyển sang vector đầu vào cuối cùng p4 Ta thấy đầu ra a không bằng mục tiêu thích hợp t4 . Các quy tắc perceptron sẽ làm thay đổi các giá trị của W và b. Bây giờ chúng ta phải quay lại kiểm tra vector đầu tiên p1. Lúc này đầu ra a đã bằng với mục tiêu t1 . Do đó không có thay đổi Làm tương tự với vector p2 kết quả cho ra 1 sai số do đó ta cần thiết lập các giá trị mới của hệ số điều chỉnh và trọng số Dưới đây là những giá trị mới: Vậy thuật toán đã hội tụ. Kết quả cuối cùng là Làm tương tự với các vector đầu vào tiếp theo một lần nữa thì kết quả không có sai số Bây giờ chúng ta có đồ thị để huấn luyên dữ liệu và ranh giới quyết định của các giải pháp. Ranh giới quyết định được cho bởi Để tìm giao của trục p2 với ranh giới quyết định, ta thiết lập p1 = 0: Để tìm giao của trục p1 với ranh giới quyết định, ta thiết lập p2 = 0: Ranh giới quyết định kết quả được minh họa trong hình P4.6 Ta thấy ranh giới quyết định đi qua một điểm tương ứng với đầu ra bằng 1. Điều này có thể chấp nhận được vì theo định nghĩa hàm truyền hardlim cho kết quả đầu ra bằng 1 ngay cả khi n = 0. P 4.5: Xem xét lại các vấn đề quyết định bốn lớp mà chúng tôi giới thiệu trong bài P4.3. Huấn luyện một mạng perceptron để giải quyết vấn đề này bằng cách sử dụng luật học perceptron. Nếu chúng ta sử dụng các vector mục tiêu giống nhau mà chúng tôi giới thiệu trong vấn đề P4.3, các đào tạo sẽ thiết lập: Chúng ta bắt đầu thuật toán với trọng số và hệ số hiệu chỉnh ban đầu sau đây : Lần đầu tiên Lần thứ hai: Lần thứ 3: Lặp lại quá trình từ lần thứ tư đến lần thứ tám lần ta thấy trọng số không thay đổi. Lần thứ chín Lúc này, thuật toán đã hội tụ, vì tất cả các mẫu đầu vào đều được phân loại chính xác. Ranh giới quyết định cuối cùng được hiển thị trong hình dưới. Chúng ta có thể so sánh kết quả này với mạng thiết kế trong bài P4.3.
Các file đính kèm theo tài liệu này:
- luat_hoc_perceptron_167.ppt