Tài liệu Tổng quan về Neural Networks ppt

76 365 1
Tài liệu Tổng quan về Neural Networks ppt

Đ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

Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 85 GVHD : Ths Hoàng Đình Chiến CHƯƠNG 1 TỔNG QUAN NEURAL NETWORKS 1. GIỚI THIỆU CHUNG eural Networks trong một vài năm trở lại đây đã được nhiều người quan tâm và đã áp dụng thành công trong nhiều lónh vực khác nhau, như tài chính, y tế, đòa chất và vật lý. Thật vậy, bất cứ ở đâu có vấn đề về dự báo, phân loại và điều khiển, Neural Networks đều có thể ứng dụng được. Sự thành công nhanh chóng của mạng Neural Networks có thể là do một số nhân tố chính sau: • Năng lực : Neural Networks là những kỹ thuật mô phỏng rất tinh vi, có khả năng mô phỏng các hàm cực kỳ phức tạp. Đặc biệt, Neural Networks hoạt động phi tuyến. Trong nhiều năm, mô hình tuyến tính là kỹ thuật được sử dụng rộng rãi trong hầu hết các lónh vực, vì thế mô hình tuyến tính có tính chiến lược tối ưu hóa được biết nhiều nhất. • Dễ sử dụng : Neural Networks có tính học theo các ví dụ. Người sử dụng Neural Networks thu thập các dữ liệu đặc trưng, và sau đó gọi các thuật toán huấn luyện để có thể tự học cấu trúc của dữ liệu. Mặc dù người sử dụng làm tất cả những điều cần thiết để có thể chọn và chuẩn bò dữ liệu, sử dụng loại mạng phù hợp và có thể hiểu được các kết quả, nhưng mức độ người sử dụng biết cách áp dụng thành công Neural Networks vẫn thấp hơn nhiều những người sử dụng các phương pháp thống kê truyền thống… Neural Networks dựa trên việc mô phỏng cấp thấp hệ thống neuron sinh học. Trong tương lai với sự phát triển mô phỏng neuron sinh học, chúng ta có thể có loại máy tính thông minh thật sự. 2. Ý TƯỞNG SINH HỌC Neural Networks phát triển từ nghiên cứu về trí tuệ nhân tạo; đặc biệt cố gắng bắt chước bộ não có cấu trúc cấp thấp về khả năng học và chấp nhận sai của hệ thống neuron sinh học. Suốt những năm 1960 – 1980 các nhà nghiên cứu về trí tuệ nhân tạo đã tìm ra Expert Systems dựa trên mô hình cấp cao về xử lý lý luận của bộ não. Mặc dù mô hình đã rất thành công trong một vài lónh vực, nhưng vẫn chưa bắt chước được trí tuệ con người. Điều này là do cấu trúc mô hình chưa bằng bộ não. Do đó, để tái tạo trí thông minh, chúng ta cần phải xây dựng những hệ thống có cấu trúc giống bộ não con người. N Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 86 GVHD : Ths Hoàng Đình Chiến Bộ não con người gồm một số rất lớn neuron (khoảng 10.000.000.000 neuron) kết nối với nhau (trung bình mỗi neuron kết nối với hàng chục ngàn neuron khác). Mỗi neuron là một tế bào đặc biệt, có thể truyền các tín hiệu điện. Neuron có cấu trúc rễ ngõ vào, thân tế bào và cấu trúc rễ ngõ ra (sợi thần kinh). Các sợi thần kinh của một tế bào kết nối với các tế bào khác thông qua synapse. Khi một neuron kích hoạt, nó tạo ra xung điện hóa học dọc theo sợi thần kinh. Tín hiệu này đi qua các synapse đến các neuron khác, và tiếp tục bò kích hoạt. Neuron hoạt động chỉ khi tất cả các tín hiệu nhận được ở thân tế bào thông qua rễ ngõ vào vượt quá một mức nào đó (ngưỡng hoạt động). Cường độ tín hiệu thu được của neuron phụ thuộc vào độ nhạy của synapse. Chỉ có việc học làm thay đổi cường độ kết nối synapse. Ví dụ như theo thí nghiệm có điều kiện Pavlovian cổ điển, gõ chuông trước khi cho chó ăn tối, con chó nhanh chóng học được rằng rung chuông gắn liền với ăn. Kết nối synapse giữa phần vỏ não thính giác và tuyến nước bọt đã nhạy hơn, vì thế khi rung chuông vỏ não thính giác bò kích thích, con chó bắt đầu tiết nước bọt. Do đó, từ một số rất lớn các đơn vò xử lý rất đơn giản này (mỗi đơn vò thực hiện tổng trọng số các ngõ vào sau đó kích hoạt một tín hiệu nhò phân nếu tổng ngõ vào vượt quá ngưỡng), bộ não điều khiển để hoạt động những công việc cực kì phức tạp. Dó nhiên, sự phức tạp trong hoạt động của bộ não không thể trình bày hết, nhưng dù sao mạng trí tuệ nhân tạo có thể đạt được một vài kết quả đáng chú ý với mô hình không phức tạp hơn bộ não. 3. MÔ HÌNH NHÂN TẠO CƠ BẢN Neuron nhân tạo được đònh nghóa như sau : • Neuron nhân tạo nhận một số các ngõ vào (từ dữ liệu gốc, hay từ ngõ ra các neuron khác trong mạng). Mỗi kết nối đến ngõ vào có một cường độ (hay trọng số), những trọng số này tương ứng với tác dụng synapse trong neuron sinh học. Mỗi neuron cũng có một giá trò ngưỡng. • Tín hiệu được truyền qua hàm kích hoạt (hay còn gọi là hàm truyền) tạo giá trò ngõ ra neuron. Nếu sử dụng hàm truyền nấc (nghóa là ngõ ra neuron là 0 nếu ngõ vào nhỏ hơn 0, và là 1 nếu ngõ vào lớn hơn hay bằng 0) thì neuron hoạt động giống như neuron sinh học. Thực tế, hàm nấc ít khi sử dụng trong mạng trí tuệ nhân tạo. Lưu ý rằng trọng số có thể âm, nghóa là synapse có tác dụng kiềm chế hơn là kích hoạt neuron, các neuron kiềm chế có thể tìm thấy trong bộ não. Trên đây mô tả các neuron đơn lẻ. Trong thực tế các neuron được kết nối với nhau. Khi mạng hoạt động, chúng phải có ngõ vào (mang giá trò hoặc biến của thế giới thực) và ngõ ra (dùng Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 87 GVHD : Ths Hoàng Đình Chiến để dự báo hoặc điều khiển). Ngõ vào và ngõ ra tương ứng với các neuron giác quan và vận động, như tín hiệu đưa vào mắt và điều khiển cánh tay. Tuy nhiên chúng còn có các neuron ẩn đóng vai trò ẩn trong mạng. Ngõ vào, neuron ẩn và ngõ ra cần được kết nối với nhau. Vấn đề chính ở đây là hồi tiếp. Một mạng đơn giản có cấu trúc tiến : tín hiệu đi vào ở ngõ vào, qua các neuron ẩn và cuối cùng đến các neuron ngõ ra. Cấu trúc như thế chạy ổn đònh. Tuy nhiên, nếu mạng có hồi tiếp (chứa các kết nối ngược trở về các neuron trước đó) mạng có thể chạy không ổn đònh và dao động rất phức tạp. Mạng hồi tiếp rất được các nhà nghiên cứu quan tâm, nhưng cấu trúc tiến đã chứng minh rất hiệu quả trong việc giải quyết các vấn đề thực tế. Mạng Neural Networks tiến cho như hình dưới. Các neuron được sắp xếp theo cấu trúc liên kết lớp riêng biệt. Lớp ngõ vào không phải là neuron thực : các neuron này hoạt động đơn giản là giới thiệu các giá trò của các biến vào. Các neuron lớp ẩn và lớp ngõ ra được kết nối với tất cả các neuron lớp trước đó. Cũng như vậy chúng ta có thể đònh nghóa mạng có các kết nối một phần với một vài neuron trong lớp trước đó; tuy nhiên, trong hầu hết các ứng dụng mạng có kết nối đầy đủ vẫn tốt hơn. Cấu trúc Neural Networks Khi mạng hoạt động, các giá trò biến ngõ vào được đặt vào các neuron ngõ vào, và sau đó các neuron lớp ẩn và lớp ngõ ra lần lượt được kích hoạt. Mỗi neuron tính giá trò kích hoạt của chúng bằng cách lấy tổng các trọng số ngõ ra của các neuron lớp trước đó, và trừ cho ngưỡng. Giá trò kích hoạt truyền qua hàm kích hoạt tạo ra giá trò ngõ ra của neuron. Khi toàn bộ mạng đã hoạt động, các ngõ ra của lớp ngõ ra hoạt động như ngõ ra của toàn mạng. 4. SỬ DỤNG NEURAL NETWORKS : Một loạt vấn đề dẫn tới việc giải quyết bằng mạng Neural được đònh nghóa bằng cách nó làm việc hoặc nó được huấn luyện. Neural Networks làm việc từ những ngõ vào khác nhau, đưa ra những ngõ ra khác nhau. Do đó có thể sử dụng khi biết một vài thông tin và sẽ dự đoán những thông tin chưa biết. Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 88 GVHD : Ths Hoàng Đình Chiến Ví dụ : • Dự đoán thò trường chứng khoán : nếu biết giá cả chứng khoán của tuần trước và chỉ số FTSE, ta sẽ dự đoán được giá cả chứng khoán ngày mai. • Điều khiển : ta muốn biết có hay không một robot biết quẹo phải, trái hay chuyển động về một phía để đạt được mục tiêu, ta sẽ biết được những gì robot đang quan sát. Điều kiện quan trọng trong việc sử dụng Neural Networks là phải biết mối liên hệ giữa ngõ vào và ngõ ra biết trước. Mối quan hệ này có thể kéo theo nhiều thứ nhưng nó nhất đònh phải tồn tại. Tổng quát, nếu ta sử dụng một mạng Neural Networks ta sẽ không biết chính xác trạng thái tự nhiên của mối liên hệ giữa ngõ vào và ngõ ra, nếu ta biết mối liên hệ ta sẽ làm mô hình đó trực tiếp. Một tính năng khác của Neural Networks là nó có thể học mối liên hệ giữa ngõ vào và ngõ ra thông qua việc huấn luyện. Có hai loại huấn luyện sử dụng trong Neural Networks là huấn luyện có giám sát và không giám sát. Với những loại mạng khác nhau thì sử dụng các loại huấn luyện khác nhau. Huấn luyện có giám sát sử dụng thông dụng nhất. Trong việc học có giám sát, người sử dụng mạng phải có một tập hợp dữ liệu cần huấn luyện. Tập hợp này chứa những ngõ vào mẫu với ngõ ra tương ứng và mạng sẽ huấn luyện để đưa ra mối liên hệ giữa ngõ ra và ngõ vào. Tập hợp dữ liệu thường được lấy từ những bản ghi chép trước đó. Neural Networks sau đó được huấn luyện bằng một trong các thuật toán học có giám sát (ví dụ backpropagation), sử dụng các dữ liệu để điều chỉnh trọng số và ngưỡng của mạng sao cho cực tiểu hóa sai số trong việc dự báo của mạng trên tập huấn luyện. Nếu mạng được huấn luyện chính xác, nghóa là nó đã học mô phỏng một hàm chưa biết với mối liên hệ giữa ngõ ra và ngõ vào, do đó với các tín hiệu vào đến sau, mạng sẽ dự báo tín hiệu ra tương ứng. 5. THU THẬP DỮ LIỆU CHO NEURAL NETWORKS Một khi ta quyết đònh giải quyết một vấn đề sử dụng Neural Networks ta cần phải thu thập dữ liệu cho mục tiêu huấn luyện. Tập hợp dữ liệu huấn luyện bao gồm một số các trường hợp, mỗi trường hợp chứa những giá trò của tầm ngõ vào và ngõ ra khác nhau. Những việc đầu tiên cần làm là : những biến nào sử dụng, bao nhiêu trường hợp cần thu thập. Sự lựa chọn các biến do trực giác quyết đònh. Công việc chuyên môn của ta trong lónh vực cần giải quyết sẽ cho ta những ý tưởng về các biến ngõ vào phù hợp. Trong Neural Networks, ta có thể chọn và loại bỏ nhiền biến và Neural Networks cũng có thể xác đònh bằng thực nghiệm Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 89 GVHD : Ths Hoàng Đình Chiến những biến hữu ích. Trong bước một ta nên tính đến bất kì biến nào mà ta nghó có ảnh hưởng đến quá trình thiết kế. Neural Networks xử lý dữ liệu số trong một tầm giới hạn rõ ràng. Điều này đưa ra một vấn đề nếu dữ liệu nằm trong một vùng đặc biệt như dữ liệu chưa biết hay không phải dữ liệu số. May mắn thay có nhiều phương pháp lý tưởng cho vấn đề này, được xây dựng trên Neural Networks. Dữ liệu số được chia nhỏ thành những khoảng thích hợp cho mạng và những giá trò thiếu có thể được thay thế bằng giá trò trung bình hay giá trò thống kê của biến đó thông qua những biến khác đã được huấn luyện. Xử lý dữ liệu không phải là số thì khó hơn. Loại dữ liệu không phải là số thông thường nhất là những biến có giá trò danh đònh như giới tính (nam, nữ). Biến có giá trò danh đònh có thể biểu diễn bằng số học và Neural Networks có chức năng hỗ trợ điều này. Tuy nhiên Neural Networks làm việc tốt với những trường hợp biến danh đònh là một tập nhiều giá trò. Số trường hợp mẫu dùng để huấn luyện mạng rất khó xác đònh. Đã có một vài hướng dẫn về mối liên hệ giữa số trường hợp mẫu với kích thước mạng (cách đơn giản nhất là số trường hợp mẫu gấp 10 lần số kết nối trong mạng). Thực ra số trường hợp mẫu cũng liên quan đến độ phức tạp của hàm mà mạng phải học. Khi số biến tăng lên, số trường hợp mẫu cần để huấn luyện cũng tăng phi tuyến, vì thế với một số nhỏ các biến (50 hoặc nhỏ hơn) thì lại cần một số lớn các trường hợp mẫu. Trong hầu hết các vấn đề trong thực tế, số trường hợp mẫu là khoảng hàng trăm hay hàng ngàn mẫu. Đối với những vấn đề rất phức tạp thì cần nhiều hơn, nhưng trường hợp này rất ít. Nếu dữ liệu huấn luyện ít hơn, rõ ràng không đủ thông tin để huấn luyện mạng, và cách tốt nhất là dùng mạng tuyến tính. Nhiều vấn đề trong thực tế có dữ liệu không đáng tin cậy, một vài dữ liệu bò phá hỏng do nhiễu, hoặc các giá trò không phối hợp được với nhau. Neural Networks có khả năng đặc biệt xử lý dữ liệu bò mất (sử dụng giá trò trung bình hay những giá trò thống kê khác). Vì thế nếu dữ liệu đưa vào ít, ta nên đưa vào những trường hợp giá trò bò mất (rõ ràng nếu không có thì không lý tưởng). Neural Networks cũng chòu được nhiễu, nhưng cũng phải có giới hạn. Nếu thỉnh thoảng có giá trò nằm xa ra khỏi vùng giá trò bình thường thì mạng huấn luyện phải có ngưỡng. Cách tốt nhất đối với trường hợp này là nhận ra và loại bỏ những giá trò nằm xa đó (có thể hủy trường hợp này hoặc xem giá trò nằm xa này là giá trò bò mất). Nếu giá trò xa này khó nhận ra, Neural Networks có chức năng huấn luyện chòu được giá trò nằm khỏi vùng này nhưng cách huấn luyện này thường kém hiệu quả hơn là huấn luyện chuẩn. Tóm lại, cách thu thập dữ liệu có thể nói gọn lại như sau : • Chọn những giá trò huấn luyện có tác dụng. Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 90 GVHD : Ths Hoàng Đình Chiến • Dữ liệu số và danh đònh có thể xử lý trực tiếp bằng Neural Networks. Chuyển những loại biến khác sang một trong các dạng này. • Cần hàng trăm hoặc hàng ngàn trường hợp mẫu huấn luyện; càng nhiều biến thì càng nhiều mẫu huấn luyện. Neural Networks có khả năng nhận ra những biến hữu dụng để huấn luyện. 6. TIỀN VÀ HẬU XỬ LÝ Tất cả các mạng Neural Networks lấy giá trò vào và ra là số. Hàm truyền thường được chọn sao cho có thể chấp nhận bất cứ vùng giá trò vào nào, và giá trò ngõ ra hữu hạn (có tác dụng nén). Mặc dù ngõ vào có bất kì giá trò nào, nên hàm truyền có giá trò bão hòa và chỉ nhạy trong một vùng hữu hạn nào đó. Hình vẽ dưới đây là một hàm truyền cơ bản nhất, logsig. Trong trường hợp này, ngõ ra chỉ có giá trò từ (0,1), và ngõ vào chỉ nhạy trong vùng giá trò (-1,1). Hàm này liên tục và dễ lấy vi phân, do đó các hàm huấn luyện dễ phân tích để huấn luyện mạng (đây là lý do tại sao không dùng hàm nấc trong thực tế). -4 -3 -2 -1 0 1 2 3 4 0 0.2 0.4 0.6 0.8 1 H a øm L og sig Do vùng đáp ứng hữu hạn và thông tin vào dưới dạng số, nên trong ứng dụng thực tế, neural thường có các bước tiền xử lý và hậu xử lý. Hai vấn đề cần hiểu rõ là : Phân đoạn : Giá trò số phải được chia thành một tầm thích hợp trong mạng. Thông thường giá trò biến ban đầu được phân đoạn thô tuyến tính. Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 91 GVHD : Ths Hoàng Đình Chiến Trong một vài trường hợp, phân đoạn phi tuyến có thể thích hợp (ví dụ nếu biết một biến được phân bố theo hàm mũ, ta phải dùng logarit). Biến danh đònh : có thể có hai hay nhiều trạng thái. Biến danh đònh hai trạng thái dễ dàng biểu diễn dưới dạng giá trò số (ví dụ nam = 0; nữ =1). Biến danh đònh nhiều trạng thái khó xử lý hơn. Nó có thể biểu diễn dưới dạng số. Cách tốt nhất là mã hóa một trong N, sử dụng một số trong một tập số đại diện cho một biến danh đònh đơn. Số giá trò trong tập bằng với số giá trò có thể có, (ví dụ chó={1,0,0}, thỏ={0,1,0}, mèo={ 0,0,1}). Neural Networks có khả năng biến đổi cả những biến danh đònh hai trạng thái và nhiều trạng thái để sử dụng trong mạng. Nhưng biến danh đònh trong một tập rất nhiều trạng thái sẽ cần một số lớn tập mã một trong N, dẫn đến kích thước mạng rất lớn và khó huấn luyện. Trong trường hợp như vậy chúng ta có thể mô phỏng biến danh đònh sử dụng chỉ số số đơn (mặc dù chưa đúng), ngoài ra chúng ta phải tìm kỹ thuật khác tốt hơn để biểu diễn thông tin. Vấn đề dự đoán có thể chia ra làm hai phạm trù chính : phân loại và hồi quy. • Trong vấn đề phân loại, mục tiêu là xác đònh ngõ vào thuộc lớp nào. Trong trường hợp này, ngõ ra yêu cầu rõ ràng là một biến danh đònh đơn. Nhiệm vụ phân loại thông thường nhất là hai trạng thái. • Trong vấn đề hồi quy, mục tiêu là dự đoán giá trò của biến liên tục. Trong trường hợp này, ngõ ra yêu cầu là một biến số đơn. Hiện nay Neural Networks có thể thực hiện một số phân loại và hồi quy cùng một lúc, mặc dù thông thường mỗi mạng chỉ hoạt động một nhiệm vụ. Vì thế, phần lớn các trường hợp, mạng có một biến ngõ ra đơn, mặc dù trong vấn đề phân loại nhiều trạng thái, mạng cần một số các neuron ở lớp ngõ ra. 7. PERCEPTRON NHIỀU LỚP Ngày nay, Perceptron là cấu trúc mạng được dùng phổ biến nhất. Mỗi neuron lấy tổng trọng số và ngưỡng của ngõ vào, qua hàm truyền đến ngõ ra, các neuron được sắp xếp theo các lớp tới. Vì thế mạng có thể mô phỏng các hàm phức tạp tùy theo số lớp và số neuron mỗi lớp. Tùy theo vấn đề mà các neuron có số ngõ vào và ngõ ra khác nhau. Chúng ta không thể biết chính xác sẽ sử dụng bao nhiêu ngõ vào. Tuy nhiên, chúng ta giả sử rằng số ngõ vào có thể chọn lựa dễ dàng. Và để dễ dàng, thường ta chọn có một lớp ẩn và số neuron trong đó bằng một nửa tổng số ngõ vào và ngõ ra. Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 92 GVHD : Ths Hoàng Đình Chiến 7.1 Huấn luyện Perceptron nhiều lớp Khi số các lớp, số neuron mỗi lớp đã được chọn, trọng số và ngưỡng của mạng phải được cài đặt sao cho có được cực tiểu sai số trong việc dự đoán của mạng. Đây chính là công việc của các thuật toán huấn luyện. Các trường hợp mẫu chúng ta thu thập đưa qua mạng để mạng tự điều chỉnh trọng số và ngưỡng sao cho cực tiểu hóa lỗi. Lỗi trong một cấu hình cụ thể của mạng được xác đònh bằng cách cho chạy tất cả các trường hợp huấn luyện qua mạng, so sánh giá trò ngõ ra của mạng với giá trò mong muốn. Lỗi này được tính theo hàm sai số của mạng. Thông thường hàm sai số là tổng bình phương lỗi (SSE – Sum Squared Error). Khái niệm cần biết thêm là mặt phẳng sai số. Mỗi trọng số và ngưỡng trong tổng số N trọng số và ngưỡng được xem là một chiều trong không gian. Chiều thứ (N + 1) là sai số mạng. Đối với bất kỳ cấu hình trọng số nào, lỗi cũng có thể vẽ ở chiều thứ (N+1), tạo thành mặt phẳng lỗi. Đối tượng của việc huấn luyện mạng là tìm điểm thấp nhất trong mặt phẳng nhiều chiều này. Trong mạng tuyến tính có hàm sai số SSE, mặt phẳng sai số là parapol, nghóa là có một giá trò nhỏ nhất. Do đó chúng dễ dàng xác đònh giá trò cực tiểu. Chúng ta không thể xác đònh được vò trí giá trò nhỏ nhất của mặt phẳng sai số, và vì thế huấn luyện mạng Neural Networks cần phải phân tích tỉ mó mặt phẳng sai số. Từ cấu hình ngẫu nhiên các trọng số và ngưỡng ban đầu (nghóa là điểm ngẫu nhiên trên mặt phẳng sai số) các thuật toán huấn luyện tìm kiếm đến giá trò nhỏ nhất. Thông thường, việc tìm kiếm dựa trên gradient (độ dốc) trên mặt phẳng sai số tại điểm hiện tại, và sau đó sẽ di chuyển xuống giá trò nhỏ hơn. Do đó có nhiều khả năng thuật toán dừng ở điểm thấp là điểm giá trò cực tiểu cục bộ (nhưng dù sao cũng hy vọng là giá trò nhỏ nhất). 7.2 Thuật toán backpropagation. Các ví dụ phổ biến nhất về thuật toán huấn luyện Neural Networks là backpropagation. Các thuật toán bậc hai hiện đại như conjugate gradient descent và Levenberg – Marquardt cơ bản nhanh hơn trong nhiều vấn đề, nhưng backpropagation vẫn có một số ưu điểm trong một vài trường hợp khác, và là thuật toán dễ hiểu nhất. Trong backpropagation, vector gradient của mặt phẳng sai số được tính toán. Vector này chỉ ra đường giảm dốc nhất và vò trí hiện tại, vì thế chúng ta biết rằng nếu chúng ta di chuyển dọc theo nó một “khoảng ngắn”, cuối cùng chúng ta sẽ đạt được giá trò nhỏ nhất. Khó khăn ở đây là quyết đònh độ lớn của từng bước di chuyển. Bước lớn có thể hội tụ nhanh hơn, nhưng có thể vượt quá điểm cần đến hay đi ra khỏi vùng có cực tiểu (nếu mặt phẳng sai số bò lệch tâm). Ngược lại, bước quá nhỏ có thể đi đến đúng hướng nhưng chúng ta cần phải thực hiện phép lặp nhiều lần. Trong thực tiễn, kích thước bước Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 93 GVHD : Ths Hoàng Đình Chiến tỷ lệ với độ dốc và hằng số đặc biệt : tốc độ học. Giá trò chính xác tốc độ học phụ thuộc vào từng ứng dụng cụ thể, và thường được chọn qua thực tiễn. Thuật toán thường có thêm khái niệm momentum. Momentum sẽ thúc đẩy di chuyển đi theo theo một hướng xác đònh nếu sau khi qua nhiều bước đi cùng một hướng, thuật toán sẽ di chuyển nhanh hơn, đưa đến khả năng thoát khỏi vùng giá trò cực tiểu cục bộ và cũng có thể di chuyển nhanh chóng qua vùng bằng phẳng. Thuật toán do đó xử lý lặp đi lặp lại, sau một số epoch. Ở mỗi epoch, các trường hợp huấn luyện sẽ được đưa ra xem xét trong mạng, các ngõ ra thực và mong muốn được so sánh và tính toán lỗi. Lỗi này kết hợp với gradent mặt phẳng sai số, sử dụng để điều chỉnh trọng số và sau đó quá trình xử lý lặp lại. Cấu hình mạng ban đầu là ngẫu nhiên, và huấn luyện chỉ dừng lại khi số vòng lặp epoch tối đa cho phép xảy ra hay khi sai số đạt được ở một mức cho phép, hoặc khi sai số không tăng nữa. 7.3 Học quá mức và tổng quát hóa Một vấn đề mà các kỹ thuật trên không thực sự cực tiểu sai số là khi chúng ta đưa một trường hợp mới vào mạng. Nói cách khác, thuộc tính mong muốn nhất của mạng là khả năng tổng quát hóa các trường hợp mới. Thực ra, mạng được huấn luyện cực tiểu hóa sai số dựa trên tập huấn luyện, tập này không hoàn hảo và hữu hạn, rõ ràng sẽ không đúng khi cực tiểu sai số trên mặt phẳng sai số thực – mặt phẳng sai số của mô hình cơ sở và chưa biết. Sự phân biệt ở đây chính là học quá mức hay khít quá mức. Cách dễ nhất để minh họa khái niệm này là việc dò theo đồ thò đường cong đa thức hơn là minh họa bằng Neural Networks nhưng ý nghóa thì giống nhau. Đa thức là phương trình có các hệ số và lũy thừa hằng số. Ví dụ : y = 2x + 3 y= 3x 2 + 4x + 1 Các đa thức khác nhau có đồ thò khác nhau, với bậc lớn hơn (và do đó có nhiều số hạng hơn) sẽ có đồ thò phức tạp hơn. Với một tập dữ liệu cho trước, chúng ta muốn tìm ra đa thức biểu diễn dữ liệu này. Dữ liệu có thể có nhiễu, vì thế chúng ta không cần thiết tìm ra phương trình đúng nhất cho tất cả các điểm. Đa thức bậc thấp hơn sẽ không thể đủ chính xác với tất cả các điểm, trong khi đó đa thức bậc cao hơn chính xác tất cả các dữ liệu sẽ rất phức tạp, đa thức này sẽ có đồ thò không đúng với hàm cơ sở. Neural Networks cũng có vấn đề như vậy. Mạng có càng nhiều trọng số thì hàm càng phức tạp và do đó sẽ rơi vào tình trạng khít quá mức. Mạng có ít trọng số hơn sẽ không đủ khả Phần 3_Chương 1 : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 94 GVHD : Ths Hoàng Đình Chiến năng để mô phỏng hàm cơ sở. Ví dụ như mạng không có các lớp ẩn chỉ mô phỏng hàm truyền tuyến tính đơn giản. Vậy chúng ta sẽ chọn lựa độ phức tạp của mạng đúng như thế nào? Mạng lớn hơn sẽ hầu như luôn luôn có được sai số nhỏ hơn, nhưng điều này có thể là khít quá mức hơn là một mô hình tốt. Câu trả lời là sử dụng xác nhận mức giao. Vài mẫu huấn luyện được lưu lại và không thực sự dùng cho huấn luyện trong thuật toán backpropagation. Để thay thế, những mẫu này được sử dụng để kiểm tra độc lập trong quá trình của thuật toán. Như vậy hiệu suất ban đầu của mạng luôn luôn bằng nhau ở những tập huấn luyện và xác minh lại. Trong quá trình huấn luyện, sai số huấn luyện tự nhiên giảm xuống, và cho phép huấn luyện cực tiểu hóa hàm sai số thực, sai số xác minh cũng giảm xuống. Tuy nhiên, nếu sai số xác minh không giảm, hay bắt đầu tăng lên, điều này có nghóa là mạng bắt đầu khít quá mức dữ liệu, và huấn luyện nên dừng lại (có thể cài đặt Neural Networks tự động dừng lại khi bắt đầu học quá mức). Trường hợp khít quá mức xảy ra trong quá trình xử lý huấn luyện gọi là học quá mức. Trong trường hợp này, chúng ta nên giảm số neuron ẩn hay/và lớp ẩn vì mạng quá mạnh đối với vấn đề này. Ngược lại, nếu mạng không đủ mạnh để mô phỏng hàm cơ sở, học quá mức không có khả năng xảy ra, cũng như sai số huấn luyện hay xác minh lại không rơi vào mức bão hòa. Những vấn đề liên quan đến cực tiểu cục bộ, và những quyết đònh sử dụng quá kích thước của mạng, nghóa là chúng ta phải chạy thử trên nhiều mạng khác nhau, có thể huấn luyện mỗi mạng vài lần (để tránh rơi vào trường hợp cực tiểu cục bộ sai số) và quan sát hiệu suất từng mạng. Điều quan trọng là quan sát sai số xác minh. Tuy nhiên, nên nhớ rằng nên mô phỏng mạng đơn giản hơn là mạng phức tạp, chúng ta cũng thể chọn mạng nhỏ hơn là mạng lớn có khả năng cải thiện sai số xác minh không đáng kể. Vấn đề đối với kỹ thuật này về việc thí nghiệm lặp đi lặp lại là tập xác minh không thực sự đóng vai trò chọn lựa mạng, nghóa là nó chỉ là một phần trong quá trình huấn luyện. Độ tin cậy của nó chỉ ở mức độ vừa phải – khi số lần thí nghiệm đủ, chúng ta có khả năng rơi vào trường hợp mạng thực hiện tốt trên tập xác minh. Để thêm độ tin cậy hiệu suất của mô hình cuối cùng thì trong thực tế thường sử dụng thêm một tập thứ ba – là tập kiểm tra. Mô hình cuối cùng được kiểm tra với tập dữ liệu kiểm tra để đảm bảo rằng kết quả của tập xác minh và huấn luyện là thật. Tóm lại, việc thiết kế mạng (khi các biến ngõ vào đã được chọn) gồm các bước sau: • Chọn cấu hình ban đầu (thường một lớp ẩn có số neuron ẩn bằng nửa tổng số neuron ngõ vào và ngõ ra). [...]... 1 : Tổng quan Neural Networks Trong trường hợp này, mạng phát ra xác suất thô để thay đổi trọng số, gọi là hệ số tổn hao (loss factor), sự tổn hao do phân loại sai Trong Neural Networks có thể thêm lớp thứ tư là ma trận tổn thất Ma trận này nhân vớ i các ước lượng xác suất của lớp thứ ba và lớp có tổn thất ước lượng nhỏ nhất sẽ được chọn Hệ số phẳng là hệ số điều khiển độ nhạy của mạng Neural Networks. .. loại tương tự liên quan với nhau Người sử dụng có thể hiểu được dữ liệu để tinh chỉnh mạng Khi một phân lớp dữ liệu được nhận ra, chúng có thể được dán nhãn, vì thế mạng có thể thực hiện phân loại Cách sử dụng thứ hai là nhận ra tính chất thay đổi bất thường của dữ liệu Mạng Kohonen có thể học nhận ra các nhóm trong dữ liệu huấn luyện và trả ra đáp ứng của dữ liệu đó Nếu bắt gặp dữ liệu mới, không giống... Nhật-Trương Ánh Thu 106 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 1 : Tổng quan Neural Networks tốc độ học cao và các neuron lân cận; pha dài có tốc độ học thấp và không có hoặc gần bằng không các neuron lân cận Khi mạng được huấn luyện để nhận ra cấu trúc dữ liệu, nó có thể sử dụng như là một công cụ trực giác kiểm tra dữ liệu Bảng dữ liệu tần số thắng (đếm số lần thắng của mỗi neuron trong các mẫu huấn... vỏ sọ) có những thuộc tính cấu trúc liên kết biết trước Lê Thanh Nhật-Trương Ánh Thu 107 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 2 : Mô hình Neural Networks CHƯƠNG 2 MÔ HÌNH MẠNG NEURAL NETWORKS Mô hình mạng Neural tổng quát có dạng như sau : Ngày nay mạng Neural có thể giải quyết nhiều vấn đề phức tạp đối với con người, áp dụng trong nhiều lónh vực như nhận dạng, đònh dạng, phân loại, xử lý tín hiệu,... này (nghóa là tổng trọng số các hàm Gaussian) RBF có một lớp ngõ ra chứa các neuron tuyến tính có hàm kích hoạt tuyến tính Lê Thanh Nhật-Trương Ánh Thu 100 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 1 : Tổng quan Neural Networks Mạng RBF có một số các ưu điểm so với MLP Đầu tiên, chúng có thể mô phỏng bất kỳ hàm phi tuyến nào sử dụng một lớp ẩn, loại bỏ một vài quyết đònh trong thiết kế về số lớp ẩn... 1 : Tổng quan Neural Networks suất của thông số mô hình đối với dữ liệu có giá trò Để cực tiểu lỗi, mô hình sau đó được chọn lựa sao cho các thông số của nó cực đại hàm mật độ xác suất pdf này Trong trường hợp phân loại, nếu chúng ta xây dựng bảng ước lượng các hàm pdf của các lớp có thể có, chúng ta có thể so sánh xác suất của các lớp khác nhau, và chọn ra lớp có xác suất lớn nhất Điều này mạng Neural. .. niệm đường thẳng Lê Thanh Nhật-Trương Ánh Thu 99 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 1 : Tổng quan Neural Networks Đáp ứng của neuron Radial Basis Một kỹ thuật trực giác và hấp dẫn giống như vậy chia không gian sử dụng bằng vòng tròn hay (tổng quát hơn) siêu hình cầu Một siêu hình cầu có tâm và bán kính Tổng quát hơn, giống như đáp ứng neuron MLP (phi tuyến), khoảng cách giữa các điểm đến đường... dữ liệu Các bước mô tả trên đều dựa trên một giả đònh, đó là dữ liệu huấn luyện, xác minh và kiểm tra phải đại diện cho mô hình cơ sở (hơn nữa, ba tập này phải độc lập) Nếu dữ liệu huấn luyện không đặc trưng thì giá trò mô hình chỉ là một sự dàn xếp, xấu nhất có thể không sử dụng được • Tương lai không phải là quá khứ Dữ liệu huấn luyện đặc trưng cho những gì đã xảy ra Nếu môi trường thay đổi, mối quan. .. thế các điểm lân cận đóng vai trò quan trọng trong việc ước tính) Lớp ẩn thứ nhất trong GRNN chứa các neuron radial Lớp ẩn thứ hai chứa các neuron giúp tính trung bình trọng số Đây là một thủ tục đặc biệt Mỗi ngõ ra có một neuron đặc biệt trong lớp này tạo tổng trọng số cho ngõ ra tương ứng Để lấy giá trò trung bình từ tổng trọng số, tổng trọng số phải được chia cho tổng các hệ số trọng số Có một neuron... Thanh Nhật-Trương Ánh Thu 104 GVHD : Ths Hoàng Đình Chiến Phần 3_Chương 1 : Tổng quan Neural Networks lớn và chậm (mặc dù không giống như PNN, không cần thiết phải có một neuron radial cho mỗi mẫu huấn luyện, nhưng số neuron của mạng vẫn lớn) Giống như mạng RBF, GRNN không có ngoại suy 11 MẠNG TUYẾN TÍNH Tiêu chí khoa học tổng quát là luôn luôn chọn mô hình đơn giản hơn là mô hình phức tạp, nếu mô . : Tổng quan Neural Networks Lê Thanh Nhật-Trương Ánh Thu 85 GVHD : Ths Hoàng Đình Chiến CHƯƠNG 1 TỔNG QUAN NEURAL NETWORKS 1. GIỚI THIỆU CHUNG eural Networks. ứng. 5. THU THẬP DỮ LIỆU CHO NEURAL NETWORKS Một khi ta quyết đònh giải quyết một vấn đề sử dụng Neural Networks ta cần phải thu thập dữ liệu cho mục tiêu

Ngày đăng: 26/12/2013, 00:16

Hình ảnh liên quan

Mạng Neural Networks tiến cho như hình dưới. Các neuron được sắp xếp theo cấu trúc liên kết lớp riêng biệt - Tài liệu Tổng quan về Neural Networks ppt

ng.

Neural Networks tiến cho như hình dưới. Các neuron được sắp xếp theo cấu trúc liên kết lớp riêng biệt Xem tại trang 3 của tài liệu.
trong một vùng hữu hạn nào đó. Hình vẽ dưới đây là một hàm truyền cơ bản nhất, logsig. - Tài liệu Tổng quan về Neural Networks ppt

trong.

một vùng hữu hạn nào đó. Hình vẽ dưới đây là một hàm truyền cơ bản nhất, logsig Xem tại trang 6 của tài liệu.
Phần 3_Chương 2: Mô hình Neural Networks - Tài liệu Tổng quan về Neural Networks ppt

h.

ần 3_Chương 2: Mô hình Neural Networks Xem tại trang 24 của tài liệu.
Một neuron được cho trên hình vẽ sau với vector nhập p= [p1 ,p 2, ……pR ], trọng số W= w1,1, w 1,2,……w1,R, ngưỡng b và hàm truyền f  - Tài liệu Tổng quan về Neural Networks ppt

t.

neuron được cho trên hình vẽ sau với vector nhập p= [p1 ,p 2, ……pR ], trọng số W= w1,1, w 1,2,……w1,R, ngưỡng b và hàm truyền f Xem tại trang 25 của tài liệu.
Phần 3_Chương 2: Mô hình Neural Networks - Tài liệu Tổng quan về Neural Networks ppt

h.

ần 3_Chương 2: Mô hình Neural Networks Xem tại trang 26 của tài liệu.
Trong hình dưới mô tả một lớp neuron với R: số phần tử của vectơ đầu vào S : số neuron trong lớp  - Tài liệu Tổng quan về Neural Networks ppt

rong.

hình dưới mô tả một lớp neuron với R: số phần tử của vectơ đầu vào S : số neuron trong lớp Xem tại trang 26 của tài liệu.
Phần 3_Chương 2: Mô hình Neural Networks - Tài liệu Tổng quan về Neural Networks ppt

h.

ần 3_Chương 2: Mô hình Neural Networks Xem tại trang 28 của tài liệu.
phân loại mô hình, mạng này giải quyết vấn đề nhanh chóng và đáng tin cậy. - Tài liệu Tổng quan về Neural Networks ppt

ph.

ân loại mô hình, mạng này giải quyết vấn đề nhanh chóng và đáng tin cậy Xem tại trang 30 của tài liệu.
1. MÔ HÌNH NEURON - Tài liệu Tổng quan về Neural Networks ppt

1..

MÔ HÌNH NEURON Xem tại trang 33 của tài liệu.
Hình dưới là mạng một lớp gồ mS neuron kết nối với R ngõ vào qua ma trận trọng số W. - Tài liệu Tổng quan về Neural Networks ppt

Hình d.

ưới là mạng một lớp gồ mS neuron kết nối với R ngõ vào qua ma trận trọng số W Xem tại trang 34 của tài liệu.
Mô hình mạng tuyến tính này có cấu trúc giống mạng perceptron, chỉ khác là sử dụng hàm - Tài liệu Tổng quan về Neural Networks ppt

h.

ình mạng tuyến tính này có cấu trúc giống mạng perceptron, chỉ khác là sử dụng hàm Xem tại trang 34 của tài liệu.
Trong hình trên mô tả các đường trễ kết nối. Tín hiệu vào bên trái, đi qua N-1 khối trễ - Tài liệu Tổng quan về Neural Networks ppt

rong.

hình trên mô tả các đường trễ kết nối. Tín hiệu vào bên trái, đi qua N-1 khối trễ Xem tại trang 37 của tài liệu.
Chú ý rằng những số này được sắp xếp từ trái qua phải tương ứng với bộ trễ trên hình từ trên xuống dưới - Tài liệu Tổng quan về Neural Networks ppt

h.

ú ý rằng những số này được sắp xếp từ trái qua phải tương ứng với bộ trễ trên hình từ trên xuống dưới Xem tại trang 38 của tài liệu.
ngẫu nhiên tĩnh, p(t), theo hình dưới : - Tài liệu Tổng quan về Neural Networks ppt

ng.

ẫu nhiên tĩnh, p(t), theo hình dưới : Xem tại trang 40 của tài liệu.
Mạng một lớp tuyến tính có thể thực hiện hàm tuyến tính xấp xỉ hoặc mô hình kết hợp. - Tài liệu Tổng quan về Neural Networks ppt

ng.

một lớp tuyến tính có thể thực hiện hàm tuyến tính xấp xỉ hoặc mô hình kết hợp Xem tại trang 42 của tài liệu.
Hình dưới cho thấy đáp ứng của mạng 1– 20-1 huấn luyện lần theo hàm sin. Rõ ràng mạng này quá khít với dữ liệu và không tổng quát hóa tốt - Tài liệu Tổng quan về Neural Networks ppt

Hình d.

ưới cho thấy đáp ứng của mạng 1– 20-1 huấn luyện lần theo hàm sin. Rõ ràng mạng này quá khít với dữ liệu và không tổng quát hóa tốt Xem tại trang 55 của tài liệu.
Hình dưới cho thấy đáp ứng của mạng 1-20-1 không quá khít dữ liệu, và do đó mạng sẽ tổng quát hóa tốt các dữ liệu mới vào - Tài liệu Tổng quan về Neural Networks ppt

Hình d.

ưới cho thấy đáp ứng của mạng 1-20-1 không quá khít dữ liệu, và do đó mạng sẽ tổng quát hóa tốt các dữ liệu mới vào Xem tại trang 57 của tài liệu.
Mô hình mạng radial basis với R ngõ vào. - Tài liệu Tổng quan về Neural Networks ppt

h.

ình mạng radial basis với R ngõ vào Xem tại trang 62 của tài liệu.
Khối dist trong hình có ngõ vào là vecto rp và ma trận trọng số IW1.1, cho ngõ ra vector S1 - Tài liệu Tổng quan về Neural Networks ppt

h.

ối dist trong hình có ngõ vào là vecto rp và ma trận trọng số IW1.1, cho ngõ ra vector S1 Xem tại trang 63 của tài liệu.

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan