Một số quy trình huấn luyện mạng nơron và ứng dụng xấp xỉ hàm số

  • Số trang: 96 |
  • Loại file: PDF |
  • Lượt xem: 133 |
  • Lượt tải: 1
nhattuvisu

Đã đăng 26946 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI KHOA CÔNG NGHỆ DƯƠNG THĂNG LONG MỘT SỐ QUY TRÌNH HUẤN LUYỆN MẠNG NƠRON VÀ ỨNG DỤNG XẤP XỈ HÀM SỐ LUẬN VĂN THẠC SỸ Người hướng dẫn: PGS.TSKH. Bùi Công Cường Hà nội - 2004 MỤC LỤC Chương 1- Giới thiệu mạng nơron nhân tạo ....................................................................... 1 1.1. Giới thiệu mạng nron nhân tạo ................................................................................ 1 1.1.1. Giới thiệu nron sinh học ................................................................................... 1 1.1.2. Mô hình nron một đầu vào ............................................................................... 2 1.1.3. Mô hình nron nhiều đầu vào ............................................................................. 4 1.2- Kiến trúc mạng nron nhân tạo ................................................................................. 5 1.2.1. Mô hình một lớp nron (Layer) .......................................................................... 5 1.2.2. Mô hình nhiều lớp nron (Multiple Layer) ......................................................... 6 1.2.3. Mô hình mạng nron có phn hồi (reccurent networks) ........................................ 8 1.3- Ứng dụng của mạng nron nhân tạo ....................................................................... 10 1.4- Một số vấn đề liên quan ........................................................................................ 11 1.4.1. Đầu vào và đầu ra của mạng ........................................................................... 11 1.4.2. Tập dữ liệu huấn luyện và kiểm tra................................................................. 12 1.4.3. Ưu nhược điểm của mạng nron ...................................................................... 12 Chương 2- Đảm bảo toán học cho luyện mạng................................................................. 14 2.1- Các mặt hiệu suất và điểm tối ưu .......................................................................... 14 2.1.1. Chuỗi Taylor .................................................................................................. 15 2.1.2. Trường hợp véct ............................................................................................. 16 2.1.3. Hướng của đạo hàm ....................................................................................... 17 2.1.4. Các điểm cực tiểu........................................................................................... 19 2.1.5. Các điều kiện cần cho sự tối ưu ...................................................................... 21 2.1.6. Hàm bậc hai ................................................................................................... 23 2.2. Tìm kiếm điểm tối ưu ........................................................................................... 27 2.2.1. Phương pháp xuống dốc từng bước ................................................................ 28 2.2.2. Phương pháp Newton ..................................................................................... 33 2.2.3. Phương pháp liên hợp gradient ....................................................................... 34 Chương 3- Một số phương pháp huấn luyện mạng nron ................................................... 39 3.1. Mạng Perceptron và quy tắc học Perceptron.......................................................... 39 3.1.1. Kiến trúc perceptron....................................................................................... 39 3.1.2. Quy tắc học perceptron .................................................................................. 40 3.1.3. Xét sự hội tụ của thuật toán học ..................................................................... 41 3.1.4. Minh hoạ........................................................................................................ 44 3.1.5. Những hạn chế của luật học perceptron .......................................................... 45 3.2. Thuật toán học Widrow-Hoff ................................................................................ 46 3.2.1. Mạng ADALINE ........................................................................................... 47 3.2.2. Sai số bình phưng trung bình .......................................................................... 48 3.2.3. Thuật toán LMS ............................................................................................. 51 3.2.4. Phân tích sự hội tụ.......................................................................................... 53 3.2.5. Minh hoạ........................................................................................................ 54 3.3. Thuật toán lan truyền ngược (the back propagation algorithms) ............................ 57 3.3.1. Giới thiệu mạng perceptron nhiều lớp ............................................................ 58 3.3.2. Bài toán phân lớp các đối tượng ..................................................................... 59 3.3.3. Bài toán xấp xỉ hàm ....................................................................................... 60 3.3.4. Thuật toán lan truyền ngược ........................................................................... 62 3.3.5. Sự thay đổi tốc độ học .................................................................................... 68 3.4. Học liên hợp ( associative learning ) ..................................................................... 69 3.4.1. Mô hình nron liên hợp đn gin ......................................................................... 70 3.4.2. Luật học Hebb................................................................................................ 72 3.4.3. Luật học Kohonen .......................................................................................... 72 3.5. Học cạnh tranh ( competitive learning ) ................................................................ 73 2.5.1. Mô hình một lớp nơron cạnh tranh ................................................................. 73 3.5.2. Học cạnh tranh ............................................................................................... 73 3.6. Kết luận ................................................................................................................ 73 Chương 4- Xây dựng mạng nơron để xấp xỉ hàm phi tuyến ............................................. 75 4.1. Xây dựng mạng nron theo hướng loại bỏ - Destructive learning ............................ 76 4.1.1. Giới thiệu ....................................................................................................... 76 4.1.2. Thuật toán huấn luyện mạng và loại bỏ dư thừa.............................................. 77 4.2. Xây dựng mạng nron theo hướng thêm vào - Constructive learning ...................... 80 4.2.1. Không gian trạng thái ..................................................................................... 81 4.2.2. Trạng thái xuất phát ....................................................................................... 82 4.2.3. Trạng thái kết thúc ......................................................................................... 82 4.2.4. Chiến lược tìm kiếm ....................................................................................... 83 4.2.5. Thuật toán xây dựng mạng theo phưng pháp constructive............................... 87 4.3. Một thuật toán kết hợp giữa hai phưng pháp trên .................................................. 88 4.4. Kết qu thử nghiệm ................................................................................................ 91 4.4.1. Thử nghiệm đối với hàm F1 ........................................................................... 92 4.4.2. Thử nghiệm đối với hàm F2 ........................................................................... 94 4.4.3. Thử nghiệm đối với hàm F3 ........................................................................... 96 4.5. Phụ lục - đoạn chưng trình chính của thuật toán TT2 ............................................ 98 4.5.1. Thuật toán TT1 .............................................................................................. 98 4.5.2. Thuật toán TT2 ............................................................................................ 102 LỜI MỞ ĐẦU Sự phát triển và ứng dụng Công nghệ tin học vào trong cuộc sống ngày càng rộng rãi và đem lại những lợi ích to lớn cho xã hội. Các nghiên cứu và tìm kiếm công nghệ mới nhằm nổ lực hơn nữa đem lại các kết quả tốt đẹp hơn. Một trong những nghiên cứu và ứng dụng công nghệ mới đó là cố gắng bắt chước cách làm việc của bộ não người, tức là xây dựng các chương trình cho máy tính làm việc giống với khả năng (tuy nhiên một phần nào đó) của con người. Khái niệm về mạng nơron đầu tiên được đề xuất bởi Warren McCulloch và Walter Pitts vào những năm 1940. Năm 1950, mạng nơron nhân tạo đầu tiên là perceptron được đề xuất bởi Frank Rosenblatt, sau đó Bernard Widrow và Ted Hoff giới thiệu một thuật toán học sử dụng để luyện mạng nơron tuyến tính thích nghi (có cấu trúc và khả năng tương tự perceptron). Năm 1970 Teuvo Kohonen và James Anderson đã phát triển các mạng nơron mới thực hiện như những bộ nhớ, Stephen Grossberg cũng đã đề xuất mạng nơron tự tổ chức. Đặc biệt là kết quả công bố của David Rumelhart và James McClelland về thuật toán lan truyền ngược để luyện mạng nơron perceptron nhiều lớp, được phát triển vào những năm 1980, đã đem lại nhiều kết quả mới trong nghiên cứu và ứng dụng mạng nơron. Đến nay mạng nơron đã tìm thấy được rất nhiều ứng dụng, như phân lớp mẫu, nhận dạng, xấp xỉ hàm, hồi quy,…. Để ứng dụng mạng nơron chúng ta cần thực hiện: thứ nhất xây dựng một cấu trúc mạng thật hợp lý để giải quyết vấn đề đặt ra, thứ hai chọn một giải pháp luyện mạng thích hợp. Tuy nhiên trong thực tế có nhiều vấn đề khó có thể thu thập được các thông tin cho việc xây dựng một cấu trúc mạng nơron hợp lý, cũng như bộ não con người, chủ yếu được hình thành quá trình học, do đó việc xây dựng một cấu trúc mạng cũng phải được thông qua việc huấn luyện. Trong khuôn khổ bản luận văn tốt nhiệp này, chúng tôi sẽ trình bày một số vấn đề về mạng nơron bao gồm luyện tham số, luyện cấu trúc và ứng dụng vào một bài toán xấp xỉ hàm. chương 1 Giới thiệu mạng nơron nhân tạo 1.1. Giới thiệu mạng nơron nhân tạo Mạng nơron nhân tạo được xây dựng trên cơ sở thừa kế mạng nơron sinh học bao gồm cấu trúc và sự hoạt động, sau đây chúng ta sẽ xem xét tổng quan về cấu trúc và sự hoạt động của mạng nơron sinh học. 1.1.1. Giới thiệu nơron sinh học Chúng ta đ• biết bộ n•o người chứa đựng khoảng 1011 các nơron liên kết với nhau ở mức cao, khoảng 104 liên kết tới một nơron. Mỗi nơron có ba thành phần chính gồm: dendrites (vòi thu nhận tín hiệu), cell body (nhân nơron), axon (trục chuyển tín hiệu). Vòi nhận tín hiệu có hình cây để nhận các tín hiệu đưa vào trong nhân của nơron. Nhân có nhiệm vụ tổng hợp các tín hiệu được thu nhận từ các vòi và kích hoạt nó, nếu vượt một ngưỡng nào đó thì tín hiệu sẽ được chuyển tới axon và truyền đến các nơron khác. Khớp nối giữa axon của một nơron với vòi của nơron khác gọi là synapse. Hình 1.1- Sơ đồ mạng nơron sinh học Khi mới sinh ra bộ n•o người có cấu trúc đơn giản, và ngày càng được hoàn thiện bởi việc học của con người. Đó là việc thiết lập các liên giữa các nơron lại với nhau để biểu diễn tri thức của con người có được, từ đó xử lý các thông tin khác. Mạng nơron nhân tạo không tiếp cận theo cách liên kết phức tạp của n•o người. Tuy nhiên có 2 điểm chính tương tự nhau đó là: xây dựng các khối đều là những phần tính toán đơn giản được kết nối với nhau ở mức cao; liên kết giữa các nơron xác định chức năng của mạng. 1.1.2. Mô hình nơron một đầu vào Nơron có một đầu vào được biểu diễn như hình 1.2, đầu vào p sẽ nhân với trọng số liên kết w đưa vào bộ tổng, thêm một đầu vào bằng 1 nhân với độ lệch b đưa vào bộ tổng. Kết quả đầu ra là z sẽ qua hàm kích hoạt f để cho đầu ra của nơron đó là a. Hình 1.2- Nơron một đầu vào Trong đó: p - tín hiệu đầu vào của nơron w - trọng số liên kết giữa đầu vào p tới nơron b - độ hiệu chỉnh (độ lệch) đóng vai trò ngưỡng trong nơron sinh học z - tổng tín hiệu đầu vào cùng với độ lệch b f - hàm kích hoạt của nơron a - tín hiệu ra của nơron Kết quả đầu ra của nơron được tính như sau: (1.3) Ví dụ: trọng số liên kết là w=3, đầu vào p=2 và độ lệch b=-1.5 thì (1.4) Kết quả đầu ra sẽ phụ thuộc vào việc lựa chọn hàm kích hoạt f. Độ lệch b xem như một trọng số liên kết với đầu vào luôn là 1, tuy nhiên nếu không cần thiết thì chúng ta có thể bỏ đi. Trọng số w và độ lệch b là những tham số có thể điều chỉnh trong quá trình học của nơron, việc thay đổi này sẽ được giới thiệu qua một số phương pháp học của mạng nơron ở chương sau. Hàm kích hoạt có thể là tuyến tính hoặc phi tuyến, hàm được chọn sao cho thoả m•n một số tiêu chuẩn của vấn đề mà nơron cần giải quyết. Một số hàm kích hoạt thường dùng thể hiện trong bảng sau. Tên hàm Diễn giải: a=f(z) Ký hiệu Hard Limit hardlim Symmetrical Hard Limit hardlims Linear a=f(z)=z purelin Saturating Linear sarlin Symmetric Sarturating Linear sarlins Log-Sigmoid logsig Hyperbolic Tangent Sigmoid tansig Positive Linear poslin Competitive compet 1.1.3. Mô hình nơron nhiều đầu vào Một nơron thực chất sẽ có nhiều đầu vào qua các liên kết, với một nơron có R đầu vào p1, p2, ... , pR, mỗi đầu vào sẽ qua một liên kết có trọng số là w1,1, w1,2, ..., w1,R của ma trận trọng số W. Hình 1.5- Nơron nhiều đầu vào Nơron có độ lệch b do đó tổng đầu vào (net) của nó sẽ là z: (1.6) Hay viết dưới dạng ma trận ta có: (1.7) Trong đó ma trận trọng số W cho một nơron nên nó chỉ có một dòng. Kết quả đầu ra của mạng được tính là: (1.8) Chúng ta đánh chỉ số liên kết của ma trận trọng số theo cách thông thường, chỉ số đầu là liên kết đích, chỉ số sau là liên kết nguồn. Ví dụ ta viết w1,3 có nghĩa là trọng số liên kết tới nơron thứ 1 từ nơron thứ 3. Chúng ta có thể minh hoạ nơron nhiều đầu vào bằng hình vẽ sau: Hình 1.9- Nơron nhiều đầu vào 1.2- Kiến trúc mạng nơron nhân tạo Mạng nơron sinh học có kiến trúc rất phức tạp, các liến kết giữa các nơron rất nhiều (mỗi nơron có khoảng 104 liến kết tới các nơron khác). Đối với mạng nơron nhân tạo ta chỉ xét loại mạng truyền thẳng là chủ yếu, tức là các nơron được chia thành lớp và xếp theo thứ tự mỗi lớp, các nơron ở lớp trước kết nối trực tiếp tới các nơron ở lớp kề sau. 1.2.1. Mô hình một lớp nơron (Layer) Một lớp có S nơron được biểu diễn như hình 1.10, mỗi nơron sẽ liên kết đầy đủ với các đầu vào pi vì thế ma trận trọng số liên kết sẽ có kích thước S x R. Hình 1.10- Một lớp S nơron Một lớp nơron sẽ gồm có một ma trận trọng số W, các bộ tổng, véctơ độ lệch b, hàm kích hoạt và véctơ đầu ra a. Các đầu vào của lớp nơron này cũng có thể là các đầu ra của một lớp nơron khác (lớp kề trước). Số nơron trong lớp sẽ khác (độc lập với) số đầu vào (R?S). Hàm kích hoạt của các nơron trong lớp người ta thường dùng chung một hàm, tuy nhiên ta có thể xây dựng lớp mà các nơron có hàm kích hoạt khác nhau. Ma trận trọng số liên kết của một lớp nơron được biểu diễn như sau: (1.11) Một lớp có S nơron và R đầu vào có thể được minh hoạ bởi hình sau: Hình 1.12- Một lớp S nơron 1.2.2. Mô hình nhiều lớp nơron (Multiple Layer) Bằng cách liên kết nhiều lớp nơron lại với nhau để tạo thành một mạng nơron nhân tạo. Lớp đầu tiên ta gọi là lớp vào - Input layer, lớp cuối cùng gọi là lớp ra - Output layer, các lớp trong gọi là lớp ẩn Hidden layer. Các nơron ở lớp sau sẽ liên liên kết với các nơron ở lớp kề trước, trừ lớp vào. Hình 1.13- Mạng nơron truyền thẳng nhiều lớp Kết quả đầu ra chi tiết như sau : (1.14) Ta gọi mạng trên là mạng nơron truyền thẳng nhiều lớp (Feedforward Neuron Network), các nơron ở lớp trước kết nối tới các nơron ở lớp sau, không có nơron ở lớp sau nối ngược sang lớp trước. Mỗi lớp i (i=1, 2, ...) có số nơron trong lớp là si và ma trận liên kết với lớp trước là Wi có kích thước Si x Si-1. Mạng nơron nhiều lớp mạnh hơn mạng một lớp. Ví dụ mạng nơron hai lớp có lớp đầu là sigmoid và lớp sau là linear có thể huấn luyện để xấp xỉ các hàm tuz ý rất tốt. Mạng một lớp không làm được điều này. Quá sớm để nói đến việc lựa chọn cấu trúc cho mạng nơron. Số nút vào, số nút ra được lựa chọn dựa vào cấn đề cần thực hiện. Ví thế nếu số biến vào là 3 thì số nút vào của mạng là 3, nếu số biến ra là 7 thì số nút ra của mạng phải là 7. Cuối cùng các đặc trưng mong muốn ở đầu ra giúp chúng ta lựa chọn hàm kích hoạt cho kết quả ra. Nếu đầu ra là -1 hoặc 1 thì sử dụng hàm symmetrical hard limit. Vì vậy kiến trúc của mạng một lớp xác định hoàn toàn đặc tả vấn đề, bao gồm số nút vào, số nút ra và các đặc trưng đầu ra. Đối với mạng nhiều hơn 2 lớp chúng ta sẽ không xác định được trực tiếp số nơron cần trong lớp ẩn từ vấn đề. Thực tế có 3 vấn đề có thể dự đoán số nơron ẩn thích hợp cần trong lớp ẩn. Đây là một mảng được nghiên cứu rất sôi động hiện nay. Cũng như vấn đề số lớp, hầu hết các mạng được sử dụng chỉ có 3 lớp. Từ 4 lớp trở lên ít khi được sử dụng. Chúng ta có thể chọn mạng có độ lệch (bias) hoặc không. Độ lệch đưa lại cho mạng nhiều biến đổi và chúng ta sẽ thấy mạng có độ lệch sẽ hoạt động mạnh và hiệu quả hơn. Ví dụ một nơron không có độ lệch khi một đầu vào p là 0 thì tổng tín hiệu của nơron sẽ là 0. Điều này không mong muốn và có thể tránh được bằng việc sử dụng độ lệch. 1.2.3. Mô hình mạng nơron có phản hồi (reccurent networks) Trước hết chúng ta xét một số khối đơn giản. Khối thứ nhất là bộ trễ được giới thiệu trong hình sau. Hình 1.15- Bộ trễ Đầu ra của bộ trễ a(t) được tính từ đầu vào u(t) theo công thức a(t)=u(t-1). Vì vậy đầu ra sẽ bị trễ một bước, ở thời điểm t=0 có đầu ra ban đầu là a(0). Thứ 2 xét bộ tích hợp được sử dụng trong mạng hồi quy thời gian liên tục như hình vẽ sau. Hình 1.16- Bộ tích hợp Một mạng hồi quy là mạng có tín hiệu phản hồi, một số nút ra được nối tới nút vào. Đây là sự khác biệt đáng kể mà chúng ta phải xem xét so với mạng hoàn toàn truyền tới, không có liên kết ngược. Một mạng hồi quy với thời gian rời rạc sẽ được biểu diễn như hình sau. Hình 1.17- Mạng nơron hồi quy Trong mạng này véctơ p cung cấp điều kiện khởi tạo (a(0) = p). Sau đó đầu ra của mạng được tính từ đầu ra trước đó. a(1) = satlins(W.a(0)+b) , a(2) = satlins(W.a(1)+b) , ... Mạng nơron hồi quy có tiềm năng mạnh hơn mạng truyền tới và có thể đưa ra các ứng xử thời gian. 1.3- ứng dụng của mạng nơron nhân tạo Mạng nơron nhân tạo đ• được ứng dụng thành công và rộng r•i trong nhiều lĩnh vực như điều khiển, viễn thông, chẩn đoán y học, thăm dò dầu khí, tài chính và một số lĩnh vực khác. Các ứng dụng này có thể chia thành các nhóm chính sau: thứ nhất là các bài toán phân lớp (classification) trong đó đầu vào được ấn định tới một trong các lớp hoặc nhóm phân biệt, thứ hai là các vấn đề xấp xỉ và hồi quy (regression) trong đó có một ánh xạ liên tục từ các đầu vào tới một hoặc nhiều đầu ra; thứ ba là các bài toán tối ưu hóa; thứ tư là các bài toán đối sánh mẫu; và cuối cùng là bộ nhớ liên hợp. Một số ví dụ cho vấn đề phân lớp bao gồm nhận dạng chữ, nhận dạng người nói, cân bằng kênh tính hiệu số và nhận dạng đối tượng. Trong trường hợp này mạng nơron có một hoặc nhiều nút ra rời rạc và thường là giá trị nhị phân. Ví dụ để cân bằng kênh tín hiệu số sử dụng mạng nơron (loại bỏ nhiễu và tiếng ồn trên kênh truyền) các đầu ra nhị phân trở thành các bít trong việc cấu trúc lại m• tín hiệu số. Mặt khác nhiều ứng dụng bao gồm cả thiết lập một ánh xạ hàm phi tuyến giữa các nút vào và nút ra. Ví dụ trong các hệ điều khiển như là điều khiển rô bốt, ước lượng rủi ro trong bảo hiểm, điều khiển các phần kính thiên văn sử dụng thích nghi của mắt, dự báo tỷ giá hối đoái tiền tệ, … Các vấn đề phân lớp và hồi quy thường sử dụng kiến trúc mạng nơron nhiều lớp. Để huấn luyện mạng nơron thường chúng ta sử dụng thuật toán lan truyền ngược và lựa chọn các mạng hàm cơ sở xuyên tâm RBF (Radial Basic Function) cho các vấn đề trên. Thuật toán lan truyền ngược xác định được các trọng số và độ lệch của mỗi nút bằng cách sử dụng thủ tục xuống dốc những kiến trúc của mạng không thay đổi. Thông thường mạng được huấn luyện với một số các nút ẩn được chọn và hiệu quả được đánh giá đối với một tập thẩm định để xác định số lượng nút ẩn tối ưu. Việc này cần nhiều sự tính toán do đó chỉ một phần nhỏ không gian các mạng có thể được đánh giá. Với mạng RBF để tìm các lựa chọn tối ưu của các hàm cơ sở cho việc phủ và phân bố dày đặc trên dữ liệu vào cũng quan trọng tương tự. 1.4- Một số vấn đề liên quan 1.4.1. Đầu vào và đầu ra của mạng Các ứng dụng mạng nơron trải rộng từ những trường hợp mà các đầu vào tới các nơron là riêng biệt, cho đến các trường hợp sử dụng các nhóm nơron để biểu diễn các giá trị của những đặc trưng chắc chắn của một đối tượng. Việc lựa chọn các đầu vào cho mạng nơron thông thường là phán đoán. Các đầu vào có thể được tiền xử lý, như là lượng hóa và lọc các dữ liệu. Trong một số trường hợp có các công cụ toán học trợ giúp lựa chọn đầu vào. Tuy nhiên cũng có thể thêm vào các giả thiết để lựa chọn các đầu vào cho phù hợp. Rõ ràng những hạn chế trong các hệ thống đo lường đối với một ứng dụng cụ thể sẽ hạn chế tập các đầu vào có thể. Hơn nữa số lượng tiền xử lý cần thiết sẽ ảnh hưởng đến lựa chọn đầu vào. Ví dụ trong việc nhận dạng các chữ số, một lựa chọn có thể là mỗi chữ số được m• hóa trong ma trận nhị phân 11x8, hoặc chuyển nó thành véctơ nhị phân 88x1. Thông thường sự ánh xạ đầu vào tới đầu ra của mạng nơron là không đổi khi có một số thay đổi hoặc chênh lệch trong các yêu cầu đầu vào. Vì thế mạng nơron cho thấy sự bất biến khi một số đầu vào thay đổi. Một cách nhìn khác đó là sự phản ứng giống nhau được mong muốn đối với một lớp hoặc tập các tác nhân đầu vào. Những sự thay đổi này chịu nhiều nguyên nhân, trong đó có nhiễu. Ví dụ con người có thể nhận ra chữ in hoặc chữ viết tay với các kích thước và hướng khác nhau. Chúng ta không thể thiết lập một cái máy làm việc chính xác như thế được. Lựa chọn đầu ra song song với việc lựa chọn đầu vào và hầu như phụ thuộc vào từng ứng dụng cụ thể. 1.4.2. Tập dữ liệu huấn luyện và kiểm tra Giả sử rằng một lượng thông tin chắc chắn đ• biết trước, như là tập các ánh xạ mẫu vào/ra hoặc chỉ có các mầu vào, và đó là tập dữ liệu huấn luyện và tập dữ liệu kiểm tra, định nghĩa hành vi một hệ thống mong muốn cho việc xây dựng mạng nơron. Xuất phát từ một mạng nơron đ• được xác định cấu trúc theo những dự đoán kinh nghiệm chuyên gia, hoặc một cấu trúc bất kz, sử dụng tập huấn luyện (training set) để huấn luyện mạng nơron thực hiện được yêu cầu đặt ra. Sau khi huấn luyện xong hoặc trong quá trình chúng ta sử dụng tập kiểm tra (test set) để đánh giá kiểm tra sự họat động hiệu quả của mạng nơron. 1.4.3. Ưu nhược điểm của mạng nơron Xét dưới góc độ tính toán chúng ta thấy mạng nơron là một mô hình tính toán mới, nó có những thuận lợi và khó khăn riêng so với việc tính toán truyền thống. Ưu điểm - Thừa kế việc tính toán song song - Có thể loại bỏ các khuyết điểm sai bởi vì cơ chế song song - Có thể được thiết kế để thích nghi - Cần ít đặc điểm mô tả vấn đề - Khả năng xấp xỉ rất tốt các hàm phức tạp Nhược điểm - Không có các quy tắc hoặc nguyên tắc thiết kế rõ ràng cho mọi ứng dụng - Không có cách tổng quát để đánh giá sự hoạt động bên trong mạng - Việc huấn luyện có thể rất khó hoặc không thực hiện được - Khó dự đoán hiệu quả tương lai của mạng nơron Tóm lại, việc lựa chọn và xây dựng một mạng nơron ứng dụng để giải quyết các vấn đề trong thực tiễn là một công việc rất quan trọng. Có thể xác định kiến trúc mạng trước, sau đó sử dụng tập dữ liệu huấn luyện mạng để sao cho mạng nơron thu được hoạt động đúng và hiệu quả. Cũng có thể trong quá trình huấn luyện chúng ta xác định cấu trúc mạng cho hợp l{. Sau đây chúng tôi sẽ trình bày một số phương pháp huấn luyện mạng nơron. chương 2 đảm bảo toán học cho luyện mạng 2.1- Các mặt hiệu suất và điểm tối ưu Trong phần này trình bày một số cơ sở cho kỹ thuật huấn luyện mạng nơron gọi là học hiệu suất (performance learning). Có một số lớp các luật học mạng khác nhau, bao gồm học liên hợp và học cạnh tranh. Học hiệu suất là một lớp quan trọng, trong đó các tham số mạng được điều chỉnh để tối ưu hiệu suất họat động của mạng. Hiệu suất này được đánh giá qua một hàm đặc trưng thực hiện (performance index function), ta gọi tắt là hàm hiệu suất. Sau đó sẽ trình bày cơ sở cho việc phát triển của việc học hiệu suất mạng. Mục tiêu chính của phần này là nghiên cứu các bề mặt của hàm hiệu suất, ta gọi tắt là mặt hiệu suất, và để xác định các điều kiện cho việc tồn tại điểm cựu tiểu và cực đại của bề mặt hiệu suất đó. Phần sau sẽ xem xét các thủ tục để xác định điểm cực tiểu và cực đại. Có hai bước trong tiến trình tối ưu này. Bước đầu phải xác định hàm hiệu suất là như thế nào, tức là xác định độ đo định lượng của hiệu suất mạng, được gọi là chỉ số hiệu suất, độ đo này sẽ càng nhỏ khi mạng hoạt động tốt và càng lớn khi mạng hoạt động tồi. Trong phần này xem như đ• có chỉ số hiệu suất, còn việc lựa chọn nó sẽ xem xét ở phần sau. Bước thứ hai là tìm kiếm không gian tham số (điều chỉnh trọng số và độ lệch) để giảm chỉ số hiệu suất. Trong phần này sẽ xem xét các đặc tính của các mặt hiệu suất và một số điều kiện để đảm bảo sẽ có một điểm cực tiểu. 2.1.1. Chuỗi Taylor Ta nói rằng chỉ số hiệu suất mà chúng ta muốn cực tiểu được đưa ra bằng F(x), trong đó x là tham số vô hướng chúng ta cần điều chỉnh. Giả sử chỉ số hiệu suất là một hàm giải tích, vì thế tất cả đạo hàm của nó đều tồn tại. Nó có thể được biểu diễn bởi sự mở rộng chuỗi Taylor xung quanh điểm x* như sau: (2.1) Chúng ta sẽ sử dụng chuỗi Taylor mở rộng để xấp xỉ chỉ số hiệu suất bằng việc giới hạn sự mở rộng tới một số hữu hạn các số hạng. Ví dụ, xét hàm sau: F(x)=cos(x) (2.2) Mở rộng chuỗi Taylor của F(x) xung quanh x* = 0 là (2.3) Xấp xỉ đến số hạng thứ 0 của F(x) là: (2.4) Xấp xỉ đến số hạng thứ 2 là: (2.5) Xấp xỉ đến số hạng thứ 4 là: (2.6) Hình vẽ sau cho thấy sự xấp xỉ này. Hình 2.7- Hàm cos(x) và chuỗi Taylor mở rộng Từ hình vẽ trên chúng ta thấy tất cả các xấp xỉ là chính xác nếu x là rất gần với x* = 0. Tuy nhiên khi x dịch ra xa so với x* thì chỉ những xấp xỉ tới số hạng cao mới chính xác. Xấp xỉ tới số hạng thứ 2 có khoảng chính xác lớn hơn thứ 0, và xấp xỉ tới số hạng thứ 4 có khoảng chính xác lớn hơn thứ 2. Công thức (2.1) cho chúng ta thấy điều này. Chúng ta sử dụng xấp xỉ chuỗi Taylor của hàm đặc trưng thực hiện để xem xét hình dạng của hàm đặc trưng thực hiện trong lân cận điểm tối ưu có thể. 2.1.2. Trường hợp véctơ Tuy nhiên hàm đặc trưng thực hiện của mạng nơron không phải là một giá trị vô hướng x. Nó sẽ là một hàm của tất cả các trọng số, độ lệch của mạng. Vì vậy chúng ta cần mở rộng chuỗi Taylor tới các hàm nhiều biến. Xét hàm n biến sau. (2.8) Chuỗi Taylor cho sự mở rộng này quanh điểm x* là: (2.9) Công thức ở trên rất kồng kềnh, do vậy ta có thể viết dưới dạng ma trận như sau: (2.10) trong đó là gradient và được định nghĩa như sau: (2.11) và là ma trận Hessian và được định nghĩa như sau: (2.12) Véctơ Gradient và ma trận Hessian là rất quan trọng để chúng ta hiểu về các mặt hiệu quả. Phần tiếp theo sẽ xem xét { nghĩa của 2 khái niệm này. 2.1.3. Hướng của đạo hàm Thành phần thứ i của gradient, , là đạo hàm bậc nhất của hàm đặc trưng thực hiện F theo trục xi. Thành phần thứ i trên đường chéo chính của ma trận Hessian, , là đạo hàm bậc 2 của hàm đặc trưng thực hiện F theo trục xi. Chúng ta đặt p là véctơ theo hướng đạo hàm của F, theo hướng đạo hàm p này ta có thể tính đạo hàm bậc nhất bởi công thức sau: (2.13) Đạo hàm bậc 2 theo p có thể được tính bởi công thứ sau: (2.14) Ví dụ min hoạ: xét hàm sau Giả sử chúng ta muốn biết đạo hàm của F tại điểm theo hướng . Tính gradient tại x* ta được: (2.15) Đạo hàm theo hướng p được tính là: (2.16) Vì thế hàm này có hệ số góc bằng 0 theo hướng p từ điểm x*. Chúng ta thấy rằng, theo định nghĩa hướng đạo hàm ở công thức (2.13), tử số là tích trong giữa véctơ hướng và gradient. Vì thế bất kz hướng nào mà trực giao với gradient sẽ có hệ số góc bằng 0. Hệ số lớn nhất xẩy ra khi tích trong của véctơ hướng và gradient là lớn nhất. Điều này xẩy ra khi véctơ hướng giống với véctơ gradient. Chúng ta thấy điều này trong hình vẽ sau, ở hình các đường đồng mức có 5 véctơ bắt đầu từ điểm x* và tới các hướng khác nhau, tại điểm cuối của mỗi véctơ hiển thị hướng đạo hàm bậc nhất. Đạo hàm bậc nhất lớn nhất theo hướng của gradient. Đạo hàm bằng 0 theo hướng trực giao với gradient.
- Xem thêm -