
Thứ Bảy, 19 tháng 3, 2016
Nghiên cứu mạng nơron nhân tạo và ứng dụng vào bài toán nhận dạng ảnh ký tự
y1
a
w1
y2
yk
∑
f
w2
wk
b
Đầu ra a = f( wy+b)
Đầu vào
Hình 1.2: Mô hình một nơron nhân tạo
Một nơron đƣợc cầu tạo gồm các thành phần chính: liên kết nơron, bộ
cộng, hàm kích hoạt.
Liên kết nơron là một thành phần của mạng nơron nhận tạo để liên kết
giữa các nơron, nó nối đầu ra của nơron lớp này với đầu vào của một nơron
trong lớp khác. Đặc trƣng của thành phần liên kết là một trọng số mà mỗi tín
hiệu đi qua đều đƣợc nhân với trọng số này. Các trọng số liên kết chính là các
tham số tự do cơ bản của mạng nơron, có thể thay đổi đƣợc nhằm thích nghi
với môi trƣờng xung quanh.
Bộ cộng dùng để tính tổng các tín hiệu đầu vào của nơron, đã đƣợc
nhân với các trọng số liên kết tƣơng ứng. Phép toán đƣợc mô tả ở đây tạo nên
một bộ hợp tuyến tính.
Hàm kích hoạt hay còn gọi hàm kích hoạt phi tuyến, chuyển đổi một tổ
hợp tuyến tính của tất cả các tín hiệu đầu vào thành tín hiệu đầu ra. Hàm kích
hoạt này đảm bảo tính chất phi tuyến cho tính toán mạng nơron. Nó đƣợc xem
nhƣ là một hàm giới hạn, nó giới hạn phạm vi biên độ cho phép của tín hiệu
đầu ra trong một khoảng giá trị hữu hạn. Mô hình nơron trong hình 2 còn bao
11
gồm một hệ số điều chỉnh b tác động từ bên ngoài. Hệ số điều chỉnh b có tác
dụng tăng lên hoặc giảm đi đầu vào thực của hàm kích hoạt, tùy theo nó
dƣơng hay âm.
1.1.4. Các thành phần của một nơron nhân tạo
Phần này mô tả một số thành phần cơ bản của một nơron nhân tạo.
Những thành phần này là giống nhau cho dù nơron đó dùng trong tầng vào,
tầng ra hay là ở trong tầng ẩn.
Thành phần 1. Các nhân tố trọng số: Một nơron thƣờng nhận nhiều
đầu vào cùng lúc. Mỗi đầu vào có trọng số liên quan của riêng nó, trọng số
này giúp cho đầu vào có ảnh hƣởng cần thiết lên hàm tổng của đơn vị xử lý
(thành phần xử lý). Những trọng số này có chức năng giống nhƣ sức mạnh
của các synapes khác nhau trong nơron sinh học. Trong cả hai trƣờng hợp
(nhân tạo và sinh học), một số đầu vào quan trọng hơn những đầu vào khác do
vậy chúng có ảnh hƣởng lớn hơn tới thành phần xử lý để rồi chúng kết hợp lại
để tạo ra sự phản ứng của nơron (neural response).
Các trọng số là những hệ số thích nghi bên trong một mạng, chúng xác
định cƣờng độ (sức mạnh hay là sức ảnh hƣởng) của tín hiệu vào lên nơron
nhân tạo. Những sức mạnh này có thể đƣợc điều chỉnh theo những tập đào tạo
đa dạng khác nhau và theo một kiến trúc mạng cụ thể hay là qua các luật học
của nó.
Thành phần 2. Hàm tổng: Bƣớc đầu tiên trong hoạt động của một
thành phần xử lý là tính toán tổng có trọng số của tất cả các đầu vào. Về mặt
toán học, những đầu vào và các trọng số tƣơng ứng là những véc tơ có thể
đƣợc biểu diễn I = (i1, i2, .., in) và W = (w1, w2, …, wn). Tín hiệu vào tổng là
tích vô hƣớng của mỗi thành phần trong véc tơ I với thành phần tƣơng ứng
trong véc tơ W và cộng lại tất cả các tích. Input1 = i1.w1, input2 = i2.w2 …
12
Cuối cùng đƣợc cộng lại: input1 + input2 + … + inputn. Kết quả là một số duy
nhất, không phải là một véc tơ.
Hàm tổng có thể phức tạp hơn nhiều so với mô tả ở trên. Đầu vào và
các hệ số trọng số có thể đƣợc kết hợp theo nhiều cách khác nhau trƣớc khi
đƣợc đƣa vào hàm chuyển đổi. Bên cạnh việc tính tổng các tích đơn giản, hàm
tổng có thể chọn max, min, tích… nhờ một số thuật toán chuẩn tắc. Thuật
toán cụ thể để kết hợp các đầu vào của nơron đƣợc xác định bởi việc chọn
kiến trúc mạng và mô hình mạng.
Thành phần 3. Hàm chuyển đổi: Kết quả của hàm tổng, hầu nhƣ luôn
là tổng có trọng số, đƣợc chuyển đổi thành một đầu ra có ý nghĩa nhờ một quá
trình xử lý có thuật toán gọi là hàm chuyển đổi. Trong hàm chuyển đổi tổng
có thể đƣợc so sánh với một ngƣỡng nào đó để quyết định đầu ra của mạng.
Nếu nhƣ tổng lớn hơn giá trị ngƣỡng thì thành phần xử lý đƣa ra đầu ra một
tín hiệu. Nếu nhƣ tổng của đầu vào và các tích có trọng số nhỏ hơn ngƣỡng
thì không có tín hiệu ở đầu ra. Cả hai kiểu phản ứng đều quan trọng.
Giá trị ngƣỡng, còn gọi hàm chuyển đổi, thƣờng là phi tuyến. Các hàm
tuyến tính bị giới hạn vì đầu ra chỉ đơn giản là tỷ lệ của đầu vào. Hàm chuyển
đổi có thể chỉ đơn giản là cho biết hàm tổng là dƣơng hay âm. Mạng có thể
cho ra đầu ra 0 và 1, 1 và -1, hay con số kết hợp nào đó.
Thành phần 4. Hàm ra: Mỗi thành phần xử lý cho phép một tín hiệu
đầu ra mà đầu ra này có thể đi tới hàng trăm nơron khác. Điều này giống với
nơron sinh học trong đó có rất nhiều đầu vào và chỉ có một hành động ra.
Thƣờng thì đầu ra tƣơng đƣơng với kết quả của hàm chuyển đổi. Tuy nhiên,
một số kiến trúc mạng chỉnh sửa kết quả của hàm chuyển đổi để kết hợp với
những thành phần xử lý lân cận. Các nơron cho phép cạnh tranh với những
nơron khác, khi này chúng hạn chế các thành phần xử lý khác trừ các thành
phần xử lý có sức mạnh rất lớn. Sự cạnh tranh có thể xảy ra ở một hay là cả
hai mức. Đầu tiên sự cạnh tranh quyết định xem nơron nhân tạo nào sẽ là tích
13
cực, hay là cung cấp một đầu ra. Tiếp theo các đầu ra cạnh tranh giúp xác
định thành phần xử lý nào sẽ tham gia và quá trình học hay là quá trình thích
nghi.
Thành phần 5. Giá trị truyền ngƣợc và hàm lỗi: Trong hầu hết các
mạng học sự khác biệt giữa đầu ra hiện tại và đầu ra mong muốn đƣợc tính
toán, sự khác biệt có thể đƣợc gọi là lỗi thô. Sau khi đƣợc tính toán, lỗi thô đó
đƣợc chuyển đổi bởi hàm lỗi để làm cho phù hợp với một kiến trúc mạng cụ
thể nào đó. Các kiến trúc mạng cơ sở nhất sử dụng lỗi này một cách trực tiếp
nhƣng một số khác bình phƣơng lỗi đó trong khi vẫn giữ lại dấu của nó, một
số tính bậc ba của lỗi, một số khác lại hiệu chỉnh lỗi thô đó để đạt đƣợc mục
đích cụ thể nào đó. Lỗi của nơron nhân tạo thƣờng đƣợc truyền vào hàm học
của một thành phần xử lý khác. Số hạng lỗi này đôi khi còn đƣợc gọi là lỗi
hiện thời.
Lỗi hiện thời thƣờng đƣợc truyền ngƣợc về một tầng trƣớc đó. Nhƣng
giá trị truyền ngƣợc này có thể là lỗi hiện thời hay là lỗi hiện thời đã đƣợc
điều chỉnh theo một cách nào đó (thƣờng sử dụng đạo hàm của hàm chuyển
đổi), hay là một đầu ra mong muốn nào đó, điều này phụ thuộc vào kiểu mạng
nơron đƣợc sử dụng. Thƣờng thì giá trị truyền ngƣợc này sau khi đƣợc điều
chỉnh bởi hàm học đƣợc nhân với mỗi trọng số kết nối vào để thay đổi chúng
trƣớc khi bƣớc vào chu kỳ học mới.
Thành phần 6. Hàm học: Mục đích của hàm học là để thay đổi giá trị
của biến trọng số kết nối ở các đầu vào của mỗi thành phần xử lý theo một
thuật toán nào đó. Quá trình thay đổi các trọng số của các kết nối đầu nào
nhằm thu đƣợc một số kết quả mong muốn cũng có thể đƣợc gọi là hàm thích
nghi, hay còn gọi là chế độ học. Có hai kiểu học chính là học có giám sát và
học không có giám sát. Học có giám sát đòi hỏi có một “giáo viên”. Ngƣời
“giáo viên” này có thể là một tập dữ liệu đào tạo hay là một “ngƣời quan sát”,
“ngƣời quan sát” này đánh giá kết quả hoạt động của mạng. Trong khi không
14
có “giáo viên” bên ngoài nào, hệ thống sẽ phải tự sắp xếp nhờ một tiêu chuẩn
bên trong đƣợc thiết kế sẵn trong mạng.
1.1.5. Mạng nơron nhân tạo
Là một hệ thống bao gồm nhiều phần tử xử lý đơn giản (hay còn gọi là
nơron) tựa nhƣ nơron thần kinh của não ngƣời, hoạt động song song và đƣợc
nối với nhau bởi các liên kết nơron. Mỗi liên kết kèm theo một trọng số nào
đó, đặc trƣng cho tính kích hoạt hoặc ức chế giữa các nơron.
Có thể xem các trọng số là phƣơng tiện để lƣu trữ thông tin dài hạn trong
mạng nơron và nhiệm vụ của quá trình huấn luyện của mạng là cập nhật các
trọng số khi có thêm thông tin về mẫu học. Hay nói một cách khác, các trọng
số đều đƣợc điều chỉnh sao cho dáng điệu vào ra của mạng sẽ mô phỏng hoàn
toàn phù hợp với môi trƣờng đang xem xét.
Mô hình mạng nơron đƣợc mô tả trong hình 1.3
Hình 1.3: Sơ đồ đơn giản về một mạng nơron nhân tạo
Mô hình mạng nơron ở trên gồm 3 lớp: lớp nhập (input), lớp ẩn (hidden)
và lớp xuất (output). Mỗi nút trong lớp nhập nhận giá trị của một biến độc lập
và chuyển vào mạng.
15
Dữ liệu từ tất cả các nút trong lớp nhập đƣợc tích hợp – ta gọi là tổng
trọng số – và chuyển kết quả cho các nút trong lớp ẩn. Gọi là “ẩn” vì các nút
trong lớp này chỉ liên lạc với các nút trong lớp nhập và lớp xuất, và chỉ có
ngƣời thiết kế mạng mới biết lớp này (ngƣời sử dụng không biết lớp này).
Các nút trong lớp xuất nhận các tín hiệu tổng trọng hóa từ các nút trong
lớp ẩn. Mỗi nút trong lớp xuất tƣơng ứng với một biến phụ thuộc.
1.2. Đơn vị xử lý
Một đơn vị xử lý (Hình 1.4), cũng đƣợc gọi là một nơron hay một nút
(node), thực hiện một công việc rất đơn giản: nó nhận tín hiệu vào từ các đơn
vị phía trƣớc hay một nguồn bên ngoài và sử dụng chúng để tính tín hiệu ra sẽ
đƣợc lan truyền sang các đơn vị khác.
Hình 1.4: Đơn vị xử lý (Processing unit)
Trong đó:
Xj : các đầu vào
wji : các trọng số tƣơng ứng với các đầu vào
θj : độ lệch (bias)
aj : đầu vào mạng (net-input)
zj : đầu ra của nơron
g(x): hàm chuyển (hàm kích hoạt).
Trong một mạng nơron có ba kiểu đơn vị:
1) Các đơn vị đầu vào (Input units), nhận tín hiệu từ bên ngoài;
16

Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét