Giới thiệu về mạng nơron nhân tạo

18 712 3
Giới thiệu về mạng nơron nhân tạo

Đ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

Giới thiệu về mạng nơron nhân tạo Mạng nơron hay mạng nơron nhân tạo là sự tái tạo bằng kỹ thuật những chức năng của hệ thần kinh con người. Trong quá trình tái tạo không phải tất cả các chức năng của bộ não con người có đều được tái tạo, mà chỉ có những chức năng cần thiết. Bên cạnh đó còn có những chức năng mới được tạo ra nhằm giải quyết một bài toán điều khiển đã định hướng trước. Trước khi tìm hiểu về mạng nơron chúng ta giới thiệu sơ lược về mạng nơron sinh học. 2.1. Mạng nơron sinh học Não người là tổ chức vật chất cấp cao, có cấu tạo vô cùng phức tạp, dày đặc các mối liên kết giữa các nơron nhưng xử lý thông tin rất linh hoạt trong môi trường bất định. Hình 2.1. Mô hình mạng nơron sinh học Trong bộ não người có khoảng 11 12 10 - 10 tế bào thần kinh được gọi là các nơron và mỗi nơron có thể liên kết với 14 10 nơron khác thông qua các khớp nối thần kinh (synapse). Dưới con mắt của những người làm tin học cấu tạo của mỗi nơron gồm các thành phần cơ bản sau: - Thân nơron được giới hạn trong một màng membran và trong cùng là nhân. Từ thân nơron còn có rất nhiều đường rẽ nhánh tạm gọi là rễ. - “Bus” liên kết nơron này với các nơron khác được gọi là axon, trên axon có các đường rẽ nhánh. Nơron còn có thể liên kết với các nơron khác qua các rễ. Chính vì cách liên kết đa dạng như vậy nên mạng nơron có độ liên kết rất cao. Các rễ của noron được chia làm hai loại: loại nhận thông tin từ các nơron khác qua axon, mà ta sẽ gọi là rễ đầu vào và loại đưa thông tin qua axon tới các nơron khác, gọi là rễ đầu ra. Một nơron có thể có nhiều rễ đầu vào, nhưng chỉ có một rễ đầu ra. Bởi vậy nếu coi nơron như một khâu điều khiển thì nó chính là khâu có nhiều đầu vào, một đầu ra. Một nơron sẽ ở trạng thái kích thích khi tại đầu vào xuất hiện một tín hiệu tác động vượt quá ngưỡng cân bằng của nơron. Một tính chất rất cơ bản của mạng nơron sinh học là các đáp ứng theo kích thích có khả năng thay đổi theo thời gian. Các đáp ứng có thể tăng lên, giảm đi hoặc hoàn toàn biến mất. Qua các nhánh axon liên kết tế bào nơron này với các nơron khác, sự thay đổi trạng thái của một nơron cũng dẫn theo sự thay đổi trạng thái của những nơron khác và do đó là sự thay đổi của toàn bộ mạng nơron. Việc thay đổi trạng thái của mạng nơron có thể thực hiện qua một quá trình “dạy” hoặc do khả năng “học” tự nhiên. Cấu trúc của mạng nơron luôn luôn phát triển và thay đổi để thích nghi dần với môi trường, làm cho cấu trúc bộ não ngày càng trở nên phức tạp sau mỗi lần học. Một số cấu trúc của nơron được xác định trước, một số sau này mới được hình thành và một số thì bị huỷ bỏ qua quá trình chọn lọc tự nhiên, học và thích nghi. Các nhà khoa học đã và đang xây dựng và phát triển các mô hình xử lý thông tin mô phỏng hoạt dộng của bộ não người. Đó chính là mô hình mạng nơron nhân tạo. å M 1 x 2 x n x j y 1 j w nj w 2 j w j q net j ( )f net 2.2. Mạng nơron nhân tạo 2.2.1 Mô hình nơron nhân tạo Một nơron nhân tạo phản ánh các tính chất cơ bản của nơron sinh học. Mỗi nơron nhân tạo là một đơn vị xử lí thông tin làm cơ sở cho hoạt động của một mạng nơron. Nó có chức năng nhận tín hiệu vào, tổng hợp và xử lý các tín hiệu vào để tính tín hiệu ra. Dưới đây là một mô hình của một nơron nhân tạo. Hình 2.2. Mô hình một nơron nhân tạo Trong đó: - i x với 1,2, .,i n= : các tín hiệu đầu vào. - ij w với 1,2, .,i n= : các trọng số tương ứng với đầu vào. - j q : ngưỡng kích hoạt của nơron j . - net : tín hiệu tổng hợp đầu vào. - ( )f net : Hàm kích hoạt. - j y : tín hiệu ra của nơron j . Đầu vào của nơron nhân tạo gồm n tín hiệu i x với 1,2, .,i n= . Mỗi tín hiệu đầu vào tương ứng với một trọng số ij w với 1,2, .,i n= , nó thể hiện mức độ ảnh hưởng của tín hiệu i x đến nơron j . Một nơron có thể có nhiều đầu vào nhưng chỉ có một tín hiệu đầu ra. Tín hiệu đầu vào của một nơron có thể là dữ liệu từ bên ngoài mạng, hoặc đầu ra của một nơron khác, hoặc là đầu ra của chính nó. Nhằm tăng khả năng thích nghi của mạng nơron trong quá trình học, người ta sử dụng gán thêm một tham số (Bias) cho mỗi nơron nhân tạo. Tham số đó còn gọi là trọng số của nơron, ta kí hiệu trọng số của nơron thứ j là j q . Mỗi một nơron trong một mạng kết hợp các giá trị đưa vào nó thông qua các liên kết với nơron khác, sinh ra một giá trị gọi là net . Hàm thực hiện nhiệm vụ này gọi là hàm kết hợp (combination function), được định nghĩa bởi một luật lan truyền cụ thể. Trong phần lớn các mạng nơron, chúng ta giả sử rằng mỗi một nơron cung cấp một bộ cộng như là đầu vào cho đơn vị mà nó liên kết. Để tính tổng hợp tín hiệu đầu vào net , ta giả định net là hàm của các tín hiệu i x và các trọng số ij w . 1 1 2 2 1 . n j j n nj i ij i net x w x w x w x w = = + + + = å . (2.1) Có nhiều cách để tính tổng tín hiệu vào của nơron, trên dây là cách khá đơn giản và hữu ích khi chúng ta xây dựng một mạng có nhiều nơron. Trường hợp 0 ij w > , nơron được coi là đang ở trạng thái kích thích. Tương tự, nếu như 0 ij w < , nơron ở trạng thái kiềm chế. Sau khi tổng hợp được tín hiệu đầu vào net , sử dụng hàm kích hoạt f biến đổi net để thu được tín hiệu đầu ra out . ( ) j j y out f net= = (2.2) Tóm lại có thể xem nơron là một hàm phi tuyến nhiều đầu vào, một đầu ra. Hàm kích hoạt phải thoả mãn các điều kiện sau: - Tín hiệu đầu ra phải không âm với mọi giá trị của net . - Hàm f phải liên tục và bị chặn trong khoảng [ ] 0,1 . Hàm kích hoạt hay còn được gọi là hàm nén vì chúng nén tín hiệu đầu ra vào một khoảng nhỏ. Hàm kích hoạt hay được sử dụng là: 1) Hàm đồng nhất (Linear function, Identity function) ( ) f x x= (2.3) Nếu coi các đầu vào là một đơn vị thì chúng ta sẽ sử dụng hàm này. Đôi khi một hằng số được nhân với net để tạo ra một hàm đồng nhất. 1 -1 1 f(x) 1 x -1 0 1 2 3 4 x -1 f(x) Hình 2.3. Hàm đồng nhất 2) Hàm bước nhị phân (Binary step function, Hard limit function) Hàm này còn được gọi là hàm ngưỡng (Threshold function hay Heaviside function). Đầu ra của hàm này chỉ giới hạn trong hai giá trị: ( ) 1, nÕu x 0, nÕu x< f x q q ì ³ ï ï = í ï ï î (2.4) Dạng hàm này được sử dụng trong các mạng chỉ có một lớp. Trong hình vẽ sau, q được chọn bằng 1. Hình 2.4. Hàm bước nhị phân 3) Hàm sigmoid (Sigmoid function (logsig)) ( ) 1 1 x f x e - = + (2.5) 0 1 Hàm này đặc biệt thuận lợi khi sử dụng cho các mạng được huấn luyện (trained) bởi thuật toán lan truyền ngược (back-propagation), bởi vì nó dễ lấy đạo hàm, do đó có thể giảm đáng kể tính toán trong quá trình huấn luyện. Hàm này được ứng dụng cho các chương trình ứng dụng mà các đẩu ra mong muốn rơi vào khoảng [0,1]. 4) Hàm sigmoid lưỡng cực (Bipolar sigmoid function (tansig)) ( ) 1 1 x x e f x e - - - = + (2.6) Hàm này có các thuộc tính tương tự của hàm sigmoid. Nó làm việc tốt đối với các ứng dụng có đầu ra yêu cầu trong khoảng [-1,1]. 2.2.2 Định nghĩa và phân loại mạng nơron nhân tạo. 2.2.2.1 Định nghĩa Mạng nơron nhân tạo là sự mô phỏng hoạt động của bộ não con người. Nó là sự liên giữa các nơron độc lập với nhau. Không có một định nghĩa tổng quát về mạng nơron, song phần lớn những người làm việc trong lĩnh vực mạng nơron đều có thể đồng ý với định nghĩa sau: “Mạng nơron là một hệ thống bao gồm rất nhiều phần tử xử lý đơn giản hoạt động song song. Tính năng của hệ thống này phụ thuộc vào cấu trúc của hệ thống, cường độ liên kết giữa các phần tử và quá trình xử lý bên trong các phần tử. Hệ thống này có thể học số liệu và có khả năng tổng quát hoá từ các số liệu được học”. Trong định nghĩa trên, các phần tử xử lý được nhắc đến chính là các nơron. 2.2.2.2 Phân loại Liên kết các đầu vào và ra của nhiều nơron với nhau ta được một mạng nơron. Nguyên lý cấu tạo của một mạng nơron bao gồm một hoặc nhiều lớp. Mỗi lớp bao gồm nhiều nơron có cùng một chức năng trong mạng. Mạng nơron nhân tạo có thể được chế tạo bằng nhiều cách khác nhau vì vậy trong thực tế tồn tại rất nhiều kiểu mạng nơron nhân tạo. Dựa vào số lớp hay sự liên 1 x 2 x n x 1 y 2 y m y M M kết giữa các lớp trong mạng mà người ta phân mạng nơron nhân tạo thành các nhóm khác nhau. * Phân loại theo số lớp Phân loại theo số lớp thì mạng nơron nhân tạo gồm có hai nhóm: mạng một lớp và mạng nhiều lớp. - Mạng một lớp Mạng một lớp cấu thành từ một lớp mạng, nó vừa là lớp vào vừa là lớp trung gian và cũng là lớp ra. Một lớp mạng bao gồm một nhóm các nơron được tổ chức theo một cách sao cho tất cả chúng đều nhận cùng một véc tơ đầu vào để xử lý cùng thời điểm. Việc sản sinh ra net đầu vào, biến đổi thành tín hiệu đầu ra out xuất hiện cùng một lúc trong tất cả các nơron. Hình 2.5. Mô hình mạng một lớp. - Mạng nhiều lớp Mạng nhiều lớp được cấu thành từ nhiều lớp liên kết với nhau, bao gồm một lớp vào, lớp ẩn và một lớp ra. Trong đó, lớp nhận tín hiệu đầu vào được gọi là lớp vào. Các tín hiệu đầu ra của mạng được sản sinh bởi lớp ra của mạng. Các lớp nằm giữa lớp vào và lớp ra được gọi là lớp ẩn. Lớp ẩn là thành phần nội tại của mạng, nó không có bất kỳ tiếp xúc nào với môi trường bên ngoài. Số lượng lớp ẩn có thể M n x M m y M M 2 y 1 y M 1 x 2 x dao động từ 0 đến một vài lớp. Tuy nhiên thực tế cho thấy chỉ cần một lớp ẩn là mạng đã đủ để giải quyết được một lớp các bài toán phức tạp nào. Hình 2.6. Mô hình mạng 3 lớp truyền thẳng. * Phân loại theo sự liên kết giữa các lớp Sự liên kết trong mạng nơron tuỳ thuộc vào nguyên lý tương tác giữa đầu ra của từng nơron riêng biệt với nơron khác và tạo ra cấu trúc mạng nơron. Về nguyên tắc sẽ có rất nhiều kiểu liên kết giữa các nơron, nhưng chỉ có một số cấu trúc hay gặp trong ứng dụng sau: - Mạng truyền thẳng (Feedforward neural networks) Dòng dữ liệu đầu vào từ các nơron đầu vào đến các nơron đầu ra chỉ được truyền thẳng. Việc xử lý dữ liệu có thể mở rộng ra nhiều lớp, nhưng không có các liên kết ngược. Tức là, không có các liên kết từ các đơn vị đầu ra tới các đơn vị đầu vào trong cùng một lớp hay các lớp trước đó. Nếu mô hình hoá mạng truyền thẳng bằng một đồ thị, thì nó là một đồ thị có hướng hữu hạn không chu trình. Trong đó, mỗi nơron là một nút, các liên liên kết giữa các nơron là các cung của đồ thị. Hình 2.6 là một minh họa về mạng truyền thẳng nhiều lớp. lớp vào lớp ẩn lớp ra M n x M m y M M 2 y 1 y M 1 x 2 x - Mạng hồi quy (mạng nối ngược) (Recurrent neural network) Khác với mạng truyền thẳng, mạng hồi quy có chứa các liên kết ngược. Mô hình hoá mạng hồi quy bằng một đồ thị thì nó là một đồ thị có hướng hữu hạn có chu trình. Hình 2.7 minh họa cho một mạng hồi quy. Hình 2.7. Mô hình mạng nơron nhiều lớp hồi quy 2.3. Thủ tục học của mạng nơron nhân tạo Mạng nơron khi mới hình thành chưa có tri thức, để có thể giải quyết một bài toán cụ thể nào đó thì phải cho mạng nơron học. Mạng nơron học thông qua quá trình huấn luyện mạng bằng một tập dữ liệu (training data). Tiến trình điều chỉnh các trọng số để mạng “nhận biết ” được mối quan hệ giữa đầu vào và đích mong muốn được gọi là học (learning) hay huấn luyện (training) . Rất nhiều thuật toán học đã được phát minh để tìm ra tập trọng số tối ưu làm giải pháp cho bài toán. Các nhân tố quyết định tới khả năng của một mạng nơron gồm: cấu trúc của mạng (số lớp, số nơron trên một lớp, và cách mà các lớp được liên kết với nhau) và các trọng số của các liên kết bên trong mạng. Dựa vào điều này, người ta phân các thuật toán học của mạng nơron thành hai nhóm chính: học cấu trúc và học tham số. . Giới thiệu về mạng nơron nhân tạo Mạng nơron hay mạng nơron nhân tạo là sự tái tạo bằng kỹ thuật những chức năng của. hình mạng nơron nhân tạo. å M 1 x 2 x n x j y 1 j w nj w 2 j w j q net j ( )f net 2.2. Mạng nơron nhân tạo 2.2.1 Mô hình nơron nhân tạo Một nơron nhân tạo

Ngày đăng: 26/10/2013, 03:20

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