TIỂU LUẬN MÔN CHUYÊN ĐỀ AN ILLUSTRATIVE EXAMPLE (Neural Network Design)

15 274 0
TIỂU LUẬN  MÔN CHUYÊN ĐỀ AN ILLUSTRATIVE EXAMPLE (Neural Network Design)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC TIỂU LUẬN MÔN CHUYÊN ĐỀ ĐỀ TÀI: AN ILLUSTRATIVE EXAMPLE Giảng viên hướng dẫn : TS.LÊ DŨNG Học viên cao học : LÊ HOÀI VIỆT LƯƠNG HỒNG QUÝ ĐINH VĂN HƯỜNG Lớp : KTTT1B 2 “Neural Network Design” (Martin T. Hagan, Howard B. Demuth, Mark Beale Thomson Learning, 1996) Chương 3: Một ví dụ minh họa Mục đích: Chương này chỉ đơn giản muốn đưa đến cho các bạn một vấn đề cơ bản và chỉ ra cách giải quyết nó dựa trên kiến trúc của ba mạng nơron. Chương này cũng chỉ ra cho các bạn cách ứng dụng những kiến thức về kiến trúc của ba mạng nơron đã nói đến trong các chương trước vào thực tiễn. Tuy nhiên các bạn cũng đừng kỳ vọng sau khi đọc xong chương này chúng ta sẽ hiểu hết được toàn bộ về ba mạng nơron này. Ở đây chúng tôi chỉ muốn giới thiệu cho các bạn sơ qua về mạng nơron để các bạn có thể hiểu được chúng ta có thể làm được những gì với mạng nơron trong tay, ngoài ra qua chương này chúng tôi cũng muốn chứng minh rằng chúng ta có rất nhiều cách giải quyết vấn đề ứng với mỗi một kiến trúc mạng nơron khác nhau đối với một bài toán cho trước. Ba mạng nơron trong chương này đại diện cho các mạng nơron được thảo luận trong phần còn lại của cuốn sách: mạng feedforward (đại diện bởi mạng perceptron), mạng cạnh tranh (đại diện bởi mạng Hamming), và mạng liên kết bộ nhớ hồi quy (đại diện bởi mạng Hopfield). Nguyên lý và các ví dụ Đặt vấn đề Một nhà buôn nọ có một kho để chứa rất nhiều rau và hoa quả. Khi hoa quả được mang đến kho, chúng bị trộn lẫn vào nhau. Nhà buôn này muốn có một chiếc máy có thể giúp ông ta phân loại được các hoa quả này. Sẽ có một băng chuyền để đưa các loại hoa quả đó vào, băng chuyền này sẽ đưa các hoa quả cần phân loại đi qua một bộ cảm biến, bộ cảm biến này có nhiệm vụ nhận dạng hoa quả dựa trên 3 đặc tính của chúng gồm: hình dạng, kết cấu và trọng lượng. Các bộ cảm biến này chỉ nhận dạng được hoa quả một cách khá thô sơ. Bộ cảm biến hình dạng trong đó sẽ đưa ra kết quả là 1 nếu hình dạng của hoa quả đó xấp xỉ tròn và đưa ra kết quả là -1 nếu hình dạng của hoa quả là dạng elip. Bộ cảm biến kết cấu sẽ đưa ra kết quả là 1 nếu bề mặt của hoa quả nhẵn và -1 nếu bề mặt này xù xì. Bộ cảm biến trọng lượng sẽ đưa ra kết quả là 1 nếu trọng lượng của hoa quả là lớn hơn 1 pound và -1 nếu trọng lượng của hoa quả nhỏ hơn 1 pound. Kết quả đưa ra từ các bộ cảm biến này sẽ trở thành đầu vào cho một mạng nơron. Mục đích của mạng nơron này là để quyết định xem loại quả trên băng chuyền là quả gì 3 để sau đó chuyển trực tiếp chúng đến nơi lưu trữ. Để đơn giản hóa vấn đề, chúng ta sẽ giả sử rằng chỉ có hai loại hoa quả ở trên băng truyền là cam và táo. Mỗi một loại quả sau khi đi qua bộ cảm biến sẽ được biểu diễn bằng một véc tơ ba thành phần. Thành phần thứ nhất sẽ mô tả hình dạng, thành phần thứ hai mô tả kết cấu và thành phần thứ ba mô tả trọng lượng.       (3.1) Do đó, một quả cam sẽ được nhận một véc tơ có giá trị như sau         (3.2) Còn một quả táo sẽ nhậ được một véc tơ có giá trị         (3.3) Mạng nơron sẽ nhận được một véc tơ (  hoặc   ) cho mỗi loại quả đang được vận chuyển trên băng truyền, sau đó sẽ dựa vào đó để đưa ra quyết định quả đó là cam hay táo. 4 Như vậy là chúng ta đã định nghĩa xong một hệ thống nhận dạng đơn giản, chúng ta sẽ phân tích chi tiết hơn về các mạng nơron khác nhau có thể được dùng để giải quyết bài toán này. Chính sự đơn giản trong bài toán này sẽ giúp chúng ta hiểu rõ hơn về hoạt động của các loại mạng nơron. Perceptron Mạng đầu tiên mà chúng ta nói tới ở đây sẽ là mạng perceptron. Hình 3.1 biểu diễn một mạng perceptron một lớp với hàm đối xứng hard-lims. Hình 3.1 Perceptron một lớp. Trường hợp hai đầu vào Trước khi chúng ta sử dụng perceptron để giải quyết bài toán nhận dạng cam và táo (bài toán này yêu cầu phải có một mạng perceptron 3 đầu vào), chúng ta sẽ nghiên cứu một mạng perceptron 2 đầu vào được minh họa trong hình 3.2 Hình 3.2 Mạng perceptron nơron đơn hai đầu vào. 5 Một mạng perceptron nơron phân loại các vec tơ đầu vào thành 2 loại. Ví dụ với một perceptron 2 đầu vào, nếu      thì:              (3.4) Do đó nếu một phần tử của ma trận khối lượng (trong trường hợp này thì nó chỉ là một hàng) có vec tơ đầu vào có giá trị lớn hơn hoặc bằng –b, đầu ra của nó sẽ là 1. Ngược lại, nó sẽ có giá trị là -1. Điều này sẽ chia không gian đầu vào thành 2 phần. Hình 3.3 mô tả trường hợp khi b = -1. Đường thẳng màu xanh trong hình đại diện cho tất cả các điểm có đầu vào lưới n bằng 0.          (3.5) Chú ý rằng sự quyết định ngưỡng luôn luôn trực giao với ma trận khối lượng và vị trí của mức ngưỡng có thể bị thay đổi bằng cách thay đổi b. Trong trường hợp tổng quát, W là một ma trận bao gồm một số các vec tơ hàng, mỗi véc tơ hàng được sử dụng trong một phương trình tương tự như phương trình (3.5). Sẽ có một mức ngưỡng khác nhau đối với mỗi hàng trong ma trận W. Chương 4 sẽ nói rõ hơn về trường hợp này. Hình 3.3 Mức ngưỡng trong perceptron. Đặc tính quan trọng nhất của mạng perceptron nơron đơn là chúng có thể phân chia được các vec tơ đầu vào thành 2 loại. Sự quyết định mức ngưỡng phân biệt giữa hai loại này được quy định bởi phương trình    (3.6) Bởi vì mức ngưỡng bắt buộc phải là một đường thẳng, mạng perceptron một lớp chỉ được sử dụng để phân biệt các mẫu có thể “phân tách thẳng” với nhau. Khái niệm này sẽ được nói rõ hơn ở chương 4. 6 Ví dụ về việc nhận ra mẫu Bây giờ chúng ta sẽ quay trở lại bài toán nhận dạng táo và cam. Bởi vì ở đây yêu cầu chỉ là nhận dạng hai mẫu do đó chúng ta có thể sự dụng mạng perceptron nơron đơn. Véc tơ đầu vào có 3 chiều, do đó phương trình percheptron sẽ là                      (3.7) Chúng ta muốn chọn độ lệch b và các phần tử của ma trận trọng lượng để mạng perceptron có thể phân biệt được táo và cam. Ví dụ chúng ta muốn đầu ra của perceptron sẽ là 1 khi đưa vào một quả táo và -1 khi chúng ta đưa vào một quả cam. Sử dụng khái niệm được mô tả trong hình 3.3, chúng ta sẽ đi tìm một đường thẳng mức ngưỡng để phân biệt giữa táo và cam. Hai véc tơ mẫu đầu tiên (sử dụng phương trình (3.2) và (3.3)) được vẽ ở trong hình 3.4. Từ hình này chúng ta có thể thấy rằng đường thẳng mức ngưỡng chia hai véc tơ này một cách đối xứng sẽ là mặt phẳng chứa     Hình 3.4 Véc tơ mẫu ban đầu. Mặt phẳng     , mặt phẳng mức ngưỡng của chúng ta, sẽ được mô tả bởi phương trình    (3.8) hoặc 7              (3.9) Từ đó ta suy ra ma trận trọng lượng và độ lệch b sẽ là      (3.10) Ma trận trọng lượng trực giao với mức ngưỡng và trỏ đến vùng chứa vec tơ   (táo),vùng mà chúng ta muốn đầu ra của perceptron là 1. Độ lệch là 0. Chúng ta sẽ kiểm tra hoạt động của mạng phân tách mẫu perceptron. Dễ dàng thấy cách phân chia này hoạt động tốt và phân loại đúng táo với cam vì: Với cam:                (3.11) Với táo                (3.12) Nhưng câu hỏi đặt ra ở đây là chuyện gì sẽ xảy ra khi chúng ta đưa vào một quả cam “không thực sự giống cam” vào bộ phân loại. Ví dụ chúng ta đưa vào một quả cam có hình elip đi qua bộ cảm biến hình dạng, khi đó véc tơ đầu vào sẽ là       (3.13) Đáp ứng ra lúc này của mạng perceptron sẽ là                (3.14) Tóm lại bất kỳ véc tơ đầu vào nào có dạng gần với vec tơ cam nguyên mẫu hơn là véc tơ táo nguyên mẫu đều sẽ được phân loại là “cam” và ngược lại. Ví dụ trên đây đã chứng minh một số tính năng của mạng perceptron. Nhưng chúng ta sẽ không nói quá nhiều về mạng perceptron ở chương này, vấn đề này sẽ được nghiên cứu sâu hơn ở các chương tiếp theo. Trong ví dụ trên chúng ta đã sử dụng đồ thị để thiết kế một mạng perceptron có mức ngưỡng phân biệt rất rõ ràng 2 khu vực cần phân biệt. Tuy nhiên vấn đề sẽ được giải quyết thế nào đối với bài toán thực tế khi số lượng đầu vào có thể lớn hơn? Trong chương 8 4, 7, 10 và 11 chúng ta sẽ học một phương pháp đại số được sử dụng để huấn luyện mạng giải quyết các vấn đề phức tạp bằng cách sử dụng một số lượng lớn các mẫu khởi tạo hành vi. Đặc tính quan trọng nhất của mạng perceptron một lớp là tạo ra một mức ngưỡng phẳng để phân biệt hai loại mẫu. Điều gì sẽ xảy ra khi mức ngưỡng này không phẳng? Câu hỏi này sẽ được trả lời trong chương 11 khi chúng tôi giới thiệu cho các bạn về một mạng perceptron đa lớp. Mạng đa lớp có khả năng giải quyết bài toán phân loại ở một mức độ phức tạp hơn. Mạng Hamming Phần này chúng ta sẽ xem xét nghiên cứu mạng Hamming, mạng này được thiết kế để giải quyết vấn đề nhận dạng mẫu ảnh nhị phân ( tại đó mỗi thành phần của vecto đầu vào chỉ có 2 thành phần giá trị ). Mạng này rất đáng chú ý vì nó có thể sử dụng cả cho lớp hồi tiếp hiện tại và tiếp theo ( phần này đã được đề cập trong chương 2 ). Hình 3.5 minh họa một mạng Hamming tiêu chuẩn, chú ý rằng số lượng noron trong lớp đầu tiên bằng với số lượng noron trong lớp thứ hai,. Mục tiêu của mạng Hamming là để quyết định xem loại vecto nào giống nhất đối với vecto đầu vào. Quyết định này được được đưa ra bởi đầu ra của lớp hiện tại , sẽ có 1 noron trong trong lớp hiện tại cho mỗi loại mẫu nhận dạng, chính noron này sẽ chỉ ra loại mẫu nào sẽ gần giống nhất đối với vecto đầu vào. Chũng ta sẽ xem xét chi tiết hai lớp của mạng Hamming trong hình minh họa. Hình 3.5. Sơ đồ mạng Hamming. 9 Lớp tiếp nhận : Lớp tiếp nhận hoạt động như một bộ tương quan hoặc là một sản phẩm bên trong mạng, giữa chúng có các loại mẫu và mẫu đầu vào. Để cho lớp tiếp nhận hoạt động chính xác thì số lượng hàng của ma trận trọng số trong lớp này được thiết lập làm một loại mẫu nhận dạng. Đối với ví dụ phân biệt táo và cam của chúng ta thì ta sẽ có ma trận như sau   =         =         (3.15) Lớp tiếp nhận sử dụng hàm biến đổi tuyến tính và mỗi thành phần sẽ có độ lệch R, với R là số lượng các thành phần của vecto đầu vào, trong ví dụ chúng ta xem xét thì vecto lệch có thể là:   =     (3.16) Với những sự lựa chọn đó về ma trận trọng số và vecto độ lệch đầu ra của lớp tiếp nhận sẽ là:   =   p +   =         +     =               (3.17) Chú ý rằng đầu ra của lớp tiếp nhận bằng với các giá trị bên trong của mỗi loại mẫu với đầu vào cộng them R. Độ dài tương đương của hai vecto và các giá trị bên trong sẽ là lớn nhất khi mà vecto điểm giống một cách trực tiếp và sẽ có giá trị nhỏ nhất khi mà các điểm đối ngược nhau. Bằng việc thêm vào giá trị R vào các thành phần bên trong của lớp chúng ta có thể đảm bảo rằng các đầu ra của lớp tiếp nhận không bao giờ là phủ định. Mạng này mang tên Hamming bởi vì các noron trong lớp tiếp nhận với số lượng đầu ra lớn nhất sẽ đáp ứng lại các loại mẫu khoảng cách Hamming là lớn nhất đối với các mẫu đầu vào.( Giá trị khoảng cách Hamming giữa hai vecto chính bằng số lượng các thành phần khác nhau và chúng chỉ được định nghĩa đối với vecto nhị phân). Chúng ta có kết quả là số lượng đầu ra của lớp tiếp nhận chính bằng 2R trừ đi 2 lần khoảng cách Hamming giữa loại mẫu có sẵn và mẫu đưa vào trong lớp. Lớp hồi quy Lớp hồi quy của mạng Hamming được biết đến là lớp so sánh, các noron trong lớp này sẽ được khởi tạo với các đầu ra của lớp tiếp nhận , chúng chỉ ra sự tương quan giữa mẫu chuẩn hóa và mẫu đầu vào. Sau đó các noron sẽ so sánh với từng thành phần khác 10 nhau để quyết định giá trị nào lớn hơn, khi thực hiện so sánh xong chỉ 1 noron sẽ có kết quả đầu ra khác 0. Noron đứng đầu đó sẽ chỉ ra loại của đầu vào được đưa tới mạng ( như trong ví dụ của chúng ta là hai loại táo và cam). Các phương trình diễn tả quá trình so sánh như sau:   (0) =   ( Điều kiện khởi tạo) (3.18) và   (t+1) = poslin (     (t)). (3.19) Hàm biến đổi Poslin là một hàm biến đổi tuyến tính các giá trị dương và bằng 0 đối với các giá trị âm, ma trận trọng số   có dạng sau:   =       (3.20) Trong đó € là một số nhỏ hơn 1/(S-1) và S là số lượng noron có trong lớp hồi quy . Quá trình lặp của lớp hồi quy theo phương trình sau :   (t+1) = poslin           = poslin                 (3.21) Mỗi thành phần sẽ được trừ đi một lượng với cùng 1 hệ số, giá trị lớn nhất sẽ bị trừ đi một lượng nhỏ và giá trị nhỏ sẽ bị trừ đi một lượng lớn hơn do đó thì sự khác nhau càng gia tăng thêm. Hậu quả của việc này đó là làm cho lớp hồi quy sẽ đưa giá trị 0 tại tất cả các noron đầu ra ngoại trừ 1 với giá trị khởi tạo lớn nhất ( cái mà đáp ứng với loại mẫu giống với khoảng cách Hamming nhất tại đầu ra ). Để minh họa cho hoạt động của mạng Hamming chúng ta xem xét lại khuôn dạng ta sử dụng để kiểm tra : P =      (3.22) Khi đó đầu ra của lớp tiếp nhận sẽ là :   =             +     =     (3.23) Giá trị ở trên sẽ trở thành giá trị khởi tạo cho lớp hồi quy. Ma trận trọng số cho lớp hồi quy được cho bởi công thức bên trên sẽ có giá trị ½ ( bất kỳ giá trị nào nhỏ hơn 1 cũng có thể được sử dụng ). Quá trình lặp của lớp hồi quy được thể hiện như sau : [...]... thức (3.28) là ( ) ( ( ) ( ) ) (3.29) ( )) ( ) ( ( ) ) Không quan tâm đến các giá trị ban đầu, ai(0) , phần tử thứ nhất sẽ được tăng cho đến khi no đạt giá trị 1, và phần tử thứ ba sẽ được giảm đến khi nó bằng -1 Phần tử thứ hai sẽ được nhân với một số lớn hơn 1 Nhờ đó nếu ban đầu nó là số âm, thì cuối cùng nó cũng sẽ đạt giá trị -1; nếu ban đầu nó là số dương, thì cuối cùng nó cũng sẽ đạt giá trị 1... (chương 10) và điều khiển tự động Các mạng cạnh tranh, điển hình ở đây là mạng Hamming được mô tả bởi 2 đặc tính Thứ nhất, chúng tính toán các thông số khoảng cách giữa các mẫu nguyễn mẫu đã lưu trữ và mẫu đầu vào Thứ hai, chúng tiến hành một cạnh tranh để xác định nơ ron nào mẫu nguyên mẫu gần nhất với mẫu đầu vào Trong các mạng cạnh tranh mà được thảo luận ở chương 14 – 16, các mẫu nguyên mẫu sẽ được... nhớ kết hợp, nơi mà dữ liệu đã lưu trữ được rút lại bởi sự liên kết với dữ liệu đầu vào, đúng hơn là bởi một địa chỉ Chúng cũng được sử dụng để giải quyết sự đa dạng của các vần đề về sự tối ưu hóa Những vấn đề này sẽ được thảo luận kỹ hơn ở chương 17 và 18 Chúng tôi hi vọng chương này đã khơi dậy tính tò mò của bạn về khả năng của các mạng nơ ron Các câu hỏi dưới sẽ được trả lời ở các chương sau: 1 Chúng... mạng Hamming, ở đây các trọng số trong tầng truyền thẳng là các mẫu đầu tiên Các quy trình thiết kế mạng Hopfield sẽ được thảo luận chi tiết trong chương 18 Để minh họa hoạt động của mạng, chúng ta sẽ xác định một ma trận trọng số và một vec tơ đường chéo mà có thể giải quyết vấn đề nhận dạng mẫu cam và táo Chúng được đưa ra trong phương trình 3.28 [ ] [ ] (3.28) Mặc dù quy trình tính toán các trọng số... tổ chức vì chúng có thể điều chỉnh được loại vecto cơ bản của chúng dựa trên sự thay đổi của đầu vào Mạng Hopfield Mạng cuối cùng mà chúng tôi sẽ thảo luận trong phần tóm tắt này là mạng Hoplfield Đây là một mạng lặp mà tương tự như trong các mối liên quan tới tầng lặp của mạng Hamming nhưng nó có thể thực hiện một cách có hiệu quả các hoạt động của cả các tầng của mạng Hamming Sơ đồ của mạng Hopfield... poslin { ([ (0)} = { ] [ ]) ([ ]) (3.24) [ ] Quá trình tiếp theo được khởi tại dựa vào quá trình đầu tiên : ([ (2) = poslin { (1)} ={ ([ ] [ ]) ]) (3.25) [ ] Bởi vì đầu ra của tất cả các quá trình khởi tạo đều giống nhau do đó quá trình là hội tụ Mẫu số một là quả cam được lựa chọn để hoàn toàn chính xác bởi vì đầu ra luôn luôn khác 0 Sự chính xác này có được là do chúng ta đã lựa chọn khoảng cách Hamming... Trong mạng Hopfield mẫu nguyên bản xuất hiện đầu ra của mạng Phần Kết Ba mạng vừa được chúng tôi giới thiệu trong chương này giải thich cho nhiều đặc tính được tìm thấy trong các kiến trúc mà được thảo luận thông qua quyển sách này Các mạng truyền thẳng mà perceptron là một ví dụ được biểu diễn ở các chương 4, 7, 11 và 12 Trong các mạng này, đầu ra được tính trực tiếp từ đầu vào, không có hồi tiếp 13... nào, ở đâu không thể hình dung về giới hạn của quyết định này? (chương 4 và 10) 2 Nếu các loại được thừa nhận không thể tách riêng tuyến tính, chúng ta có thể mở rộng perceptron chuẩn để giải quyết vấn đề này không? (chương 11 và 12) 3 Chúng ta có thể lắng nghe các trọng số và đường chéo của mạng Hamming khi chúng ta không biết các mẫu nguyên mẫu như thế nào? (chương 14 – 16) 4 Chúng ta xác định ma trận . KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC TIỂU LUẬN MÔN CHUYÊN ĐỀ ĐỀ TÀI: AN ILLUSTRATIVE EXAMPLE Giảng viên hướng dẫn : TS.LÊ DŨNG Học viên cao học : LÊ. lại, nó sẽ có giá trị là -1. Điều này sẽ chia không gian đầu vào thành 2 phần. Hình 3.3 mô tả trường hợp khi b = -1. Đường thẳng màu xanh trong hình đại diện cho tất cả các điểm có đầu vào.                           (3.29) Không quan tâm đến các giá trị ban đầu, a i (0) , phần tử thứ nhất sẽ được tăng cho đến khi no đạt giá trị 1, và phần

Ngày đăng: 07/11/2014, 18:24

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan