1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

18 716 3
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Giới thiệu về mạng nơ-ron nhân tạo
Định dạng
Số trang 18
Dung lượng 354,79 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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 đ

Trang 1

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

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:

Trang 2

- 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

Trang 3

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 đó:

- x i

với i=1,2, ,n

: các tín hiệu đầu vào

- ij

w

với i=1,2, ,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

Trang 4

Đầu vào của nơron nhân tạo gồm n tín hiệu x i

với i=1,2, ,n

Mỗi tín hiệu

đầu vào tương ứng với một trọng số ij

w

với i=1,2, ,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

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

n

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

Trang 5

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

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

Trang 6

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<

q

ïï

=í ïïî

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

f x

e

-= +

(2.5)

0

1

Trang 7

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

-= +

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

Trang 8

x

2

x

n

x

1

y

2

y

m

y

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ể

Trang 9

n

x

M

m

y

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

Trang 10

n

x

M

m

y

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ố

Trang 11

Mạng nơron

Sản sinh sai số

2.3.1 Học tham số

Học tham số quan tâm đến chiến lược hiệu chỉnh các trọng số của các nơron trong mạng

Giả sử có n

nơron, mỗi nơron có m

trọng số Chúng ta có thể kết hợp được lại tạo thành ma trận dạng sau:

n n

W

K K

K

(2.7)

Trong đó, ij

w

là trọng số liên kết từ nơron i

đến nơron j

Các thủ học tham số nhằm tìm kiếm ma trận trọng só W

sao cho mạng có khả năng đưa ra các dự báo sát với thực tế Các thủ học có tham số có thể được chia thành ba lớp nhỏ hơn: học có chỉ đạo (học có thầy), học tăng cường, học không chỉ đạo (học không có thầy hay học tự tổ chức)

- Học có chỉ đạo

Hình 2.8 Sơ đồ học có chỉ đạo

Trang 12

Mạng nơron

Sản sinh tín hiệu tăng cường

Tín hiệu tăng cường

Mỗi lần véc tơ tín hiệu vào X

được cấp cho mạng, ta cũng cấp luôn cho mạng véc tơ đầu ra mong muốn Y

Mạng phải sản sinh ra tín hiệu đầu ra out

sao cho nó

gần với Y

nhất Cụ thể, nếu ta cấp một tập ngẫu nhiên

( i, i)

M= X Y

Khi véc tơ i

X

đi vào mạng, véc tơ đầu ra i

Y

cũng được cung cấp (Hình 2.8) Độ lệch tín hiệu giữa

đầu ra i

out

và véc tơ đầu ra i

Y

sẽ được bộ sản sinh sai số thu nhận và sản sinh ra tín hiệu sai số Tín hiệu sai số này sẽ đi vào mạng và mạng sẽ hiệu chỉnh các trọng số

của mình sao cho tín hiệu đầu ra out i

sẽ gần với véc tơ đầu ra mong muốn Y i

Nếu tín hiệu ra out

= Y

thì lúc đó mạng nơron đã bão hoà, ta nói thủ tục học của mạng đã hội tụ

- Học tăng cường

Hình 2.9 Sơ đồ học tăng cường.

Học tăng cường cũng là một dạng của học có chỉ đạo vì mạng nơron vẫn nhận tín hiệu ngoài môi trường Tuy nhiên, tín hiệu ngoài môi trường chỉ là những tín hiệu mang tính phê phán, chứ không phải là các chỉ dẫn cụ thể như trong học có chỉ

Trang 13

Mạng nơron

đạo Nghĩa là, tín hiệu tăng cường chỉ có thể nói cho mạng biết tín hiệu vừa sản sinh là đúng hay sai, chứ không chỉ cho mạng biết tín hiệu đúng phải như thế nào

Tín hiệu tăng cường được xử lý bởi bộ xử lý tín hiệu tăng cường (Hình 2.9), nhằm

mục đích giúp mạng hiệu chỉnh các trọng số với hi vọng nhận được tín hiệu tăng cường tốt hơn trong tương lai Các thủ tục học tăng cường thường được biết đến như các thủ tục học với nhà phê bình chứ không phải là học với thầy như các thủ tục học có chỉ đạo

- Học không chỉ đạo

Hình 2.10 Sơ đồ học không chỉ đạo.

Trong thủ tục này, không có thông tin nào từ ngoài môi trường chỉ ra tín hiệu đầu ra out

phải như thế nào hoặc đúng hay sai Mạng nơron phải tự khám phá các đặc điểm, các mối quan hệ đang quan tâm như: dạng đưòng nét, có chuẩn – có bình thường hay không, các hệ số tương quan, tính cân xứng, tính chạy, … của các mẫu học và sau đó chuyển những quan hệ tìm thấy qua đầu ra Trong quá trình học, các trọng số của mạng sẽ thay đổi để thể hiện các đặc tính được phát hiện Do đó các

thủ tục này còn được gọi là tự tổ chức (Hình 2.10).

2.3.2 Học cấu trúc

Học cấu trúc là thuật toán tìm kiếm các tham số của cấu trúc mạng để tìm ra một cấu trúc mạng hoạt động tốt nhất Trong thực tế, việc học cấu trúc là việc tìm

ra số lớp ẩn và số nơron trên lớp đó

Trang 14

m

x

M

n

y

%

M

2

y %

1

M

1

x

2

x

1, 2, .,

1, 3, .,

qj

v

=

=

1, 2, .,

1, 3, .,

iq

w

=

=

2.4 Thuật toán lan truyền ngược

Hình 2.11 Mạng nơron hai lớp truyền thẳng

Từ một mẫu học cụ thể

( )k

x

,

( )k

y

và các trọng số đã có của mạng Chẳng hạn

như

( )k

w

,

( )k

v

ở mạng hai lớp, người ta xác định đầu ra thực

( )k

y%

Sau đó trên cơ sở

so sánh với mẫu học

( )k

y

, các trọng số của lớp nơron đầu ra, ví dụ

( )k

w

, được hiệu

chỉnh thành

(k 1 )

w +

Tiếp tục từ trọng số mới

(k 1 )

w +

người ta lại hiệu chỉnh trọng số

của các nơron thuộc lớp phía trước, ví dụ như

( )k

v

thành

(k 1 )

v +

Cứ như vậy cho đến trọng số của lớp nơron đầu vào

Để phần giải thích chi tiết thuật toán lan truyền ngược được đơn giản, sau đây

ta sẽ lấy mạng hai lớp ở hình 2.11 làm ví dụ.

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

TỪ KHÓA LIÊN QUAN

w