Tổng quan về mạng nơ-ron và giới thiệu một số ứng dụng của mạng nơ-ron - Pdf 26

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
________________
BÁO CÁO THU HOẠCH MÔN HỌC
CÔNG NGHỆ TRI THỨC & ỨNG DỤNG
Đề tài:
Tổng quan về mạng nơ-ron
và giới thiệu một số ứng dụng của
mạng nơ-ron

Giảng viên : GS.TSKH. Hoàng Kiếm
Sinh viên thực hiện: Tăng Chí Tâm
MSSV : CH1101130

TP. HCM, NĂM 2012
Lời mở đầu
Ngày nay, không ai có thể phủ nhận vai trò cực kỳ quan trọng của máy tính trong hầu hết
mọi lĩnh vực của đời sống. Tuy nhiên, máy tính sẽ chỉ là một cỗ máy đơn thuần như bao cỗ máy
khác nếu như nó không được sự hỗ trợ từ các phần mềm. Mạng nơ-ron nhân tạo là một sản phẩm
phần mềm ra đời nhằm kết hợp khả năng xử lý thông tin cực nhanh của máy tính với khả năng
xử lý thông tin song song gần như cùng lúc của bộ não con người. Từ đó đã tạo nên sự kỳ diệu
cho máy tính.
Trong phạm vi bài thu hoạch này, em sẽ trình bày “Tổng quan về mạng nơ-ron và giới
thiệu một số ứng dụng của mạng nơ-ron”. Nội dung bài thu hoạch gồm các chương sau:
Chương 1: Tổng quan về mạng nơ-ron.
Chương 2: Giới thiệu một số ứng dụng của mạng nơ-ron
Mong rằng bài viết có thể giúp cho người đọc có được những khái niệm cơ bản về mạng
nơ-ron và định hình được hướng xây dựng đề tài nghiên cứu dựa trên mạng nơ-ron.
Cảm ơn Thầy Hoàng Kiếm và các anh chị đã cung cấp những tài liệu liên quan đến đề tài.
Mục Lục
1. TỔNG QUAN VỀ MẠNG NƠ-RON (NEURAL)

-Có thể phát hiện và hồi phục các thông tin bị mất dựa trên sự tương đồng giữa
các đối tượng
-Có khả năng xuống cấp và thay thế dần dần. Khi có những trục trặc tại các vùng
não (bệnh,chấn thương) hoặc bắt gặp các thông tin hoàn toàn mới lạ thì bộ não vẫn có thể tiếp
tục làm việc.
-Có khả năng học.
Nếu so sánh bộ não con người với các máy tính hiện đại thì ta có thể dễ dàng thấy được
sự tương đồng giữa chúng:
-Về khả năng lưu trữ thì bộ não ta có thể lưu nhiều thông tin hơn các máy tính.
Tuy nhiên điều này không phải đúng mãi mãi vì bộ não chúng ta tiến hóa rất chậm trong
khi đó khoa học kỹ thuật tiến bộ rất nhanh, khả năng lưu trữ của máy tính nhờ vào đó mà
tăng rất nhanh
4
-Về tốc độ tính toán thì các bộ xử lý có thể tính toán hàng triệu lệnh trong 1 giây,
trong khi đó bộ não cần vài mili giây để kích hoạt
-Về khả năng xử lý song song thì máy tính vẫn còn nhiều hạn chế trong xử lý
song song trong khi đó bộ não lại có khả năng kích hoạt gần như cùng một lúc tại nhiều nơ-ron
và các khớp nối. Chính điều này đã tạo nên sự kỳ diệu trong khả năng tính toán và xử lý thông
tin của bộ nảo chúng ta mà các máy tính hiện đại nhất cũng không thể so sánh được.
Mạng nơ-ron nhân tạo ra đời có ý nghĩa to lớn nhằm tạo cho các thiết bị có thể kết hợp
khả năng xử lý song song như bộ não và khả năng tính toán cao của máy tính. Tuy nhiên cần
một thời gian dài nữa để các mạng nơ-ron nhân tạo có thể mô phỏng các hành vi sáng tạo như
bộ não.Chẳng hạn như bộ não có thể nhận ra khuôn mặt người quen trong vòng vài giây trong
khi đó máy tính cần thực hiện rất nhiều phép toán để nhận dạng và trong trường hợp thông tin
khuôn mặt như trên không chính xác hay có sự thay đổi đôi chút thì đó là cả vấn đề đối với máy
tính.
Một nơ-ron sinh học và cấu tạo của nó : sợi nhánh (dendrite), thân nơ-ron (soma), sợi trục (axon), bao mi-ê-lin
(myelin sheath), eo răng-vi-ê (node of ranvier), khớp nối (synapse)
5
1.1.2.Nơ-ron nhân tạo

: trị số ngưỡng kích hoạt của nơ-ron
y
k
: tín hiệu ra của nơ-ron k
f : hàm điều chỉnh biên độ tín hiệu ngõ ra của nơ-ron
6
u
0
1
f(u)
Hàm f được gọi là hàm truyền khi thỏa các tính chất sau:
f(u) là hàm bị chặn, nghĩa là các giá trị của f(u) không bao giờ được vượt quá chặn trên
cũng như thấp hơn chặn dưới với mọi giá trị của u.
f(u) là hàm đơn điệu tăng, nghĩa là giá trị của f(u) luôn tăng khi giá trị của u tăng.
f(u) là hàm liên tục tăng.
Một số hàm kích hoạt cơ bản trong mạng nơ-ron:
-Hàm logistic:
Đồ thị hàm logistic:
Hàm logistic thường dùng khi muốn kết xuất có giá trị trong khoảng [0,1].
Khi muốn kết xuất có giá trị trong khoảng [-1,1], ta có thể sử dụng một trong hai
hàm sau:
-Hàm hyperbol:
-Hàm tang-hyperbol:
Hàm tang-hyperbol tiến đến giới hạn của nó nhanh hơn hàm hyperbol.
1.1.3.Mạng nơ-ron nhân tạo
Là một hệ thống gồm nhiều nơ-ron hoạt động song song và 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 hay ứ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ề

theo một thứ tự khác. Như vậy mạng nơ-ron học từ các ví dụ bằng cách xây dựng nên một
tương ứng đầu vào-đầu ra cho vấn đề cần giải quyết.
3. Tính chất thích nghi
Các mạng nơ-ron có một khả năng mặc định là biến đổi các trọng số liên kết tuỳ theo sự
thay đổi của môi trường xung quanh. Đặc biệt, một mạng nơ-ron đã được tích luỹ để hoạt động
trong một môi trường xác định có thể được tích luỹ lại một cách dễ dàng khi có những thay đổi
nhỏ của các điều kiện môi trường hoạt động.
4. Tính chất đưa ra lời giải có bằng chứng
Trong ngữ cảnh phân loại mẫu, một mạng nơ-ron có thể được thiết kế để đưa ra thông tin
không chỉ về mẫu được phân loại, mà còn về sự tin cậy của quyết định đã được thực hiện.
Thông tin này có thể được sử dụng để loại bỏ các mẫu mơ hồ hay nhập nhằng.
5. Tính chất chấp nhận sai sót
Một mạng nơ-ron, được cài đặt dưới dạng phần cứng, vốn có khả năng chấp nhận lỗi, hay
khả năng tính toán thô, với ý nghĩa là tính năng của nó chỉ thoái hoá khi có những điều kiện hoạt
động bất lợi. Ví dụ, nếu một nơ-ron hay các liên kết kết nối của nó bị hỏng, việc nhận dạng lại
một mẫu được lưu trữ sẽ suy giảm về chất lượng.
6. Tính chất đồng dạng trong phân tích và thiết kế
Về cơ bản, các mạng nơ-ron có tính chất chung như là các bộ xử lý thông tin. Chúng ta
nêu ra điều này với cùng ý nghĩa cho tất cả các lĩnh vực có liên quan tới việc ứng dụng mạng
nơ-ron. Đặc tính này thể hiện ở một số điểm như sau:
Các nơ-ron, dưới dạng này hoặc dạng khác, biểu diễn một thành phần chung cho tất cả
các mạng nơ-ron.
Tính thống nhất này đem lại khả năng chia sẻ các lý thuyết và các thuật toán học trong
nhiều ứng dụng khác nhau của mạng nơ-ron.
Các mạng tổ hợp (modular) có thể được xây dựng thông qua một sự tích hợp các mô hình
khác nhau.
7. Khả năng cài đặt VLSI (very large scale intergrated
Bản chất song song đồ sộ của một mạng nơ-ron làm cho nó rất nhanh trong tính toán đối
với một số công việc. Đặc tính này cũng tạo ra cho một mạng nơ-ron khả năng phù hợp cho việc
cài đặt sử dụng kỹ thuật Very-large-scale-intergrated (VLSI). Kỹ thuật này cho phép xây dựng

ron ẩn là can thiệp vào giữa đầu vào và đầu ra của mạng một cách hữu hiệu. Bằng việc thêm
một vài mức ẩn, mạng có khả năng rút ra được các thống kê bậc cao của tín hiệu đầu vào. Khả
năng các nơ-ron ẩn rút ra được các thống kê bậc cao đặc biệt có giá trị khi mức đầu vào có kích
thước lớn
Mạng nơ-ron trong hình bên dưới được gọi là kết nối đầy đủ với ý nghĩa là tất cả các nút
trong mỗi mức của mạng được nối với tất cả các nút trong mức tiếp sau. Nếu một số kết nối
không tồn tại trong mạng, chúng ta nói rằng mạng là kết nối không đầy đủ.
10
1.3.2.2. Mạng hồi quy
Trái với mạng nơ-ron dẫn tiến , mạng hồi quy là những mô hình với hai luồng dữ liệu có
hướng. Trong khi mạng dẫn tiến truyền dữ liệu theo một đường thẳng thì những mạng nơ-ron
hồi quy có ít nhất một phản hồi từ những nơ-ron xử lý sau quay trở lại các nơ-ron xử lý trước đó
11
1.4.Huấn luyện mạng nơ-ron
1.4.1.Phương pháp học
Mạng nơ-ron nhân tạo phỏng theo việc xử lý thông tin của bộ não người, do vậy đặc
trưng cơ bản của mạng là có khả năng học, khả năng tái tạo các hình ảnh và dữ liệu khi đã học.
Trong trạng thái học thông tin được lan truyền theo hai chiều nhiều lần để học các trọng số. Có
3 kiểu học chính, mỗi kiểu học tương ứng với một nhiệm vụ học trừu tượng.
Đó là học có giám sát (có mẩu), học không giám sát và học tăng cường.
Thông thường loại kiến trúc mạng nào cũng có thể dùng được cho các nhiệm
vụ.
1.4.1.1. Học có giám sát
Một thành phần không thể thiếu của phương pháp này là sự có mặt của một người thầy (ở
bên ngoài hệ thống). Người thầy này có kiến thức về môi trường thể hiện qua một tập hợp các
cặp đầu vào - đầu ra đã được biết trước. Hệ thống học (ở đây là mạng nơ-ron) sẽ phải tìm cách
thay đổi các tham số bên trong của mình (các trọng số và các ngưỡng) để tạo nên một ánh xạ có
khả năng ánh xạ các đầu vào thành các đầu ra mong muốn. Sự thay đổi này được tiến hành nhờ
việc so sánh giữa đầu ra thực sự và đầu ra mong muốn.
1.4.1.2. Học không giám sát

Thuật toán lan truyền ngược là dạng tổng quát của thuật toán trung bình bình phương tối
thiểu(Least Means Square-LMS). Thuật toán này thuộc dạng thuật toán xấp xỉ để tìm các điểm
mà tại đó hiệu năng của mạng là tối ưu. Chỉ số tối ưu thường được xác định bởi một hàm số của
các trọng số và các đầu vào nào đó do bài toán đặt ra.
Để huấn luyện mạng bằng thuật toán lan truyền ngược thì ta thực hiện hai quá trình: Quá
trình truyền tuyến tính và quá trình truyền ngược.
-Quá trình truyền tuyến tính: Dữ liệu từ lớp nhập qua lớp ẩn và đến lớp xuất để:
+ Thay đổi giá trị trong số liên kết W của các nơ-ron trong mạng biểu diễn
được dữ liệu học.
+ Tìm ra sự khác nhau giữa giá trị thật hàm mẫu mà mạng tính được và
kết quả dự đoán của mạng gọi là lỗi.
-Quá trình truyền ngược: giá trị lỗi sẽ được truyền ngược lại sao cho quá trình
huấn luyện sẽ tìm ra trọng số Wi để lỗi nhỏ nhất.
Để minh họa, chúng ta dẽ xem xét giải thuật lan truyền ngược hiệu chỉnh các trọng số của
một mạng nơ-ron gồm 3 lớp với 2 đầu vào và 1 đầu ra như sau:
13
Mỗi nơ-ron sẽ gồm hai thành phần chính. Thứ nhất là các trọng số w và các trị số đầu vào
x . Phần thứ 2 là hàm kích hoạt f. Và “y = f(e)” là đầu ra của một nơ-ron.
Để huấn luyện cho mạng chúng ta cần phải có các mẩu. Mỗi mẩu bao gồm hai thành
phần đó là
-Đầu vào x1, x2
-Đầu ra z là kết quả của mẩu
Quá trình lan truyền tuyến tính: Chúng ta sẽ bắt đầu với hai đầu vào x1, x2. Từ đó
chúng ta có thể tính được đầu ra của mỗi nơ-ron trong mạng. Hình dưới minh họa cho sự lan
truyền các giá trị trong mạng. Trong đó :
- W
(xm)n
: tượng trưng cho các trọng số w của kết nối giữa đầu vào x
m
và nơ-ron n

trong quá trình lan truyền tuyến tính. Chỉ có chiều của lan truyền tín hiệu là
thay đổi. Kỹ thuật này được dùng cho tất cả các lớp của mạng. Ta có thể thấy bằng hình ảnh :
17
Khi tín hiệu lỗi của mỗi nơ-ron đã được tính thì chúng ta có thể dựa vào tín hiệu lỗi này
để thay đổi giá trị của các trọng số. Trong giải thuật lan truyền ngược, trọng số thay đổi dựa vào
đạo hàm của hàm kích hoạt trong mỗi nơ-ron.
18
Trong đó :
-df(e)/de : là đạo hàm của hàm kích hoạt.
-
η
là đại lượng ngẫu nhiên ảnh hưởng đến tốc độ huấn luyện của mạng. Có nhiều
cách để chọn
η
Có thể bắt đầu quá trình học bằng cách chọn
η
là một đại lượng lớn rồi
trong quá trình học sẽ giảm dần giá trị này. Hoặc bắt đầu bằng một giá trị nhỏ rồi sau đó
trong quá trình học có thể tăng dần giá trị này, đến cuối quá trình học lại giảm giá trị này
xuống
19
20
1.5.Thu thập dữ liệu cho mạng nơ-ron
Một khi ta quyết định giải quyết một vấn đề sử dụng mạng nơ-ron 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ố trường hợp, mỗi
trường hợp chứa những giá trị của đầu vào và đầu ra khác nhau. Những việc đầu tiên cần làm là:
những biến nào được sử dụng, bao nhiêu trường hợp cần thu thập. Sự lựa chọ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 đầu vào phù hợp. Trong các mạng nơ-ron ta có thể chọn và loại bỏ nhiều biến và
mạng nơ-ron cũng có thể xác định bằng quá trình thực nghiệm. Trong một bước ta nên tính đến

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. Mạng nơ-ron có khả năng nhận ra những biến hữu dụng để
huấn luyện.
1.6.Một số vần đề của mạng nơ-ron
Khi xây dựng một ứng dụng mạng nơ-ron chúng ta cần quan tâm một số vấn đề sau:
-Vấn đề về kiến trúc mạng nơ-ron : nơ-ron nào nối với nơ-ron nào? Đây chính là
sự lựa chọn mô hình của mạng nơ-ron. Nó sẽ phụ thuộc vào sự trình bày dữ liệu và ứng
dụng. Những mô hình phức tạp quá dẫn đến những vấn đề về lựa chọn quá trình huấn
luyện và giải thuật học.
-Lựa chọn giải thuật học: ở đây có nhiều sự cân bằng giữa các giải thuật học. Gần
như bất kỳ giải thuật nào sẽ làm tốt với độ chính xác của các siêu tham số cho việc huấn
luyện trên tập dữ liệu cố định cho trứớc. Tuy nhiên sự lựa chọn và điều hướng của giải
thuật cho việc huấn luyện trên các tập dữ liệu này cần thực hiện nhiều thí nghiệm, đó là
điều rất quan trọng. Trên một mô hình nếu lựa chọn giải thuật và hàm đánh giá phù hợp
thì mạng nơ-ron có thể cho kết quả rất tốt.
-Trọng số của các cung nối và ngưỡng thay đổi thường xuyên. Đã có nhiều nghiên
cứu về vấn đề này và cũng đã có một số kết quả: Nếu mạng gây ra lỗi, thì có thể xác định
nơ-ron nào gây ra lỗi => điều chỉnh nơ-ron đó.Với cách tiếp cận này, mạng phải biết rằng
nó gây ra lỗi. Trong thực tế, lỗi chỉ được biết sau một thời gian dài.
1.7.Một số hướng dẫn khi sử dụng mạng nơ-ron
Xây dựng mạng khởi tạo(dùng một lớp ẩn có số nơ-ron = ½ tổng số nơ-ron của lớp nhập
và lớp xuất)
Huấn luyện mạng dùng các giải thuật huấn luyện. Nên thực hiện trên nhiều mạng khác
nhau để tránh trường hợp cực tiểu cục bộ
Nếu máy “Không thuộc bài” => thêm một vài nơ-ron cho tầng ẩn
Ngược lại nếu máy “Học vẹt”=> bớt một vài nơ-ron ra khỏi tầng ẩn
Khi đã tìm được một kiến trúc mạng tương đối tốt thì lấy mẫu lại tập dữ liệu và huấn
luyện lại để tìm các mạng mới.
22

23


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status