Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Mạng nơron nhân tạo và ứng dụng
Nội dung xem thử
Mô tả chi tiết
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
MỤC LỤC
Tổng quan về mạng nơron nhân tạo..................................................................2
Mạng nơron lan truyền ngược sai số...............................................................13
Giải thuật di truyền...........................................................................................29
Giới thiệu về JOONE........................................................................................45
Phát triển JOONE.............................................................................................62
Kiểm nghiệm lại các quy tắc học đã cài đặt. Ứng dụng JOONE cho bài toán
tính năng lượng bức xạ mặt trời......................................................................95
KẾT LUẬN......................................................................................................117
PHỤ LỤC A - Hướng dẫn cài đặt và sử dụng...............................................119
PHỤ LỤC B - Bảng chữ viết tắt và thuật ngữ...............................................120
PHỤ LỤC C – Danh sách cỏc hỡnh...............................................................121
PHỤ LỤC E – Danh sách các bảng................................................................124
PHỤ LỤC F – Danh sách từ khoá..................................................................125
Tài liệu tham khảo...........................................................................................127
Trần Ngọc Tú - Lớp CNPM – K44 1
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
Tổng quan về mạng nơron nhân tạo
I.1. Giới thiệu chung
Mạng nơron nhân tạo (Artificial Neural 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, mạng nơron nhân tạo đều có thể ứng dụng
được. Sự thành công nhanh chóng của mạng mạng nơron nhân tạo có thể là do một
số nhân tố chính sau:
• Năng lực: mạng nơron nhân tạo 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, mạng nơron nhân
tạo 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: mạng nơron nhân tạo có tính học theo các ví dụ. Người sử
dụng mạng nơron nhân tạo 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 mạng nơron nhân tạo 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…
Mạng nơron nhân tạo dựa trên việc mô phỏng cấp thấp hệ thống nơron sinh
học. Trong tương lai với sự phát triển mô phỏng nơron sinh học, chúng ta có thể có
loại máy tính thông minh thật sự.
I.1.1. Ý tưởng sinh học
Mạng nơron nhân tạo 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 nơron sinh học.
Bộ não con người gồm một số rất lớn nơron (khoảng 10.000.000.000 nơron)
kết nối với nhau (trung bình mỗi nơron kết nối với hàng chục ngàn nơron khác).
Mỗi nơron là một tế bào đặc biệt, có thể truyền các tín hiệu điện. Nơron 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 các khớp thần kinh (synapse). Khi
Trần Ngọc Tú - Lớp CNPM – K44 2
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
một nơron 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 khớp thần kinh đến các nơron khác, và tiếp tục bị kích hoạt. Nơron
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ấu trúc cơ bản của nơron thần kinh sinh học.
Cường độ tín hiệu thu được của nơron phụ thuộc vào độ nhạy của khớp thần
kinh. Chỉ có việc học làm thay đổi cường độ kết nối của khớp thần kinh. 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. Khớp thần kinh
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.
I.1.2. Mô hình nơron nhân tạo
Nơron nhân tạo được định nghĩa như sau:
Trần Ngọc Tú - Lớp CNPM – K44 3
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
• Nơron 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
nơron 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 khớp thần kinh trong
nơron sinh học. Mỗi nơron 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 nơron.
Nếu sử dụng hàm truyền nấc (nghĩa là ngõ ra nơron 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ì nơron hoạt động giống như nơron
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à khớp thần kinh có tác dụng kiềm chế hơn là kích hoạt
nơron.
Mô hình một nơron nhõn tạo.
I.2. Mạng nơron nhân tạo
I.2.1. Mô hình
Trên đõy mô tả các nơron đơn lẻ. Trong thực tế các nơron đượ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 để dự báo hoặc điều khiển). Ngõ vào và ngõ ra tương
ứng với các nơron giác quan và vận động, như tín hiệu đưa vào từ mắt và điều khiển
cánh tay. Tuy nhiên chỳng cũn cú cỏc nơron ẩn đóng vai trò ẩn trong mạng.
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 nơron
ẩn và cuối cùng đến các nơron 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 nơron 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ế.
Trần Ngọc Tú - Lớp CNPM – K44 4
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
Mô hình một mạng nơron nhân tạo.
Mạng nơron nhân tạo tiến cho như hình 4. Các nơron đượ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à nơron thực: các nơron 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 nơron lớp ẩn và
lớp ngõ ra được kết nối với tất cả các nơron 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 nơron 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.
Mạng nơron nhõn tạo tiến kết nối đầy đủ.
Khi mạng hoạt động, các giá trị biến ngõ vào được đặt vào các nơron ngõ vào,
và sau đó các nơron lớp ẩn và lớp ngõ ra lần lượt được kích hoạt. Mỗi nơron 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 nơron 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 nơron. 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.
I.2.2. Phạm vi ứng dụng
Mạng nơron được coi như một hộp đen biến đổi đầu vào m biến thành vộctơ
ra n biến. Các biến của vộctơ vào và ra có thể là các số thực, tốt nhất nằm trong
Trần Ngọc Tú - Lớp CNPM – K44 5
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
khoảng [0, 1] hoặc [-1, 1]; số nhị phân 0, 1 hay số nhị cực -1, +1. Số biến của vộctơ
vào ra không bị hạn chế song sẽ ảnh hưởng tới thời gian tính và tài nguyên của máy
tính. Với số lượng lớn các biến của cỏc vộctơ đầu vào và ra đồng nghĩa với việc
tăng số lượng các số liệu quan sát. Thường số biến của vộctơ ra nhỏ hơn số biến của
vộctơ vào nhưng không phải bắt buộc là như vậy. Các lĩnh vực mà mạng nơron
thường được ứng dụng là :
• Phân loại (Classification)
• Mô hình hoá (Modeling)
• Biến đổi (Transformation and mapping)
a. Phân loại:
Một trong các công việc đơn giản và thường được sử dụng nhiều trong việc
quản lý các đối tượng đa biến là phân loại. Đó có thể là sắp xếp các đối tượng vào
các tập theo từng loại hoặc theo tầng lớp hoặc theo các lớp con của các lớp lớn hơn.
Thường xuyên việc phân loại theo tầng lớp bao gồm nhiều mức của cỏc phộp
ra quyết định, phân lớp một đối tượng vào nhúm, nhúm con, chủng loại, chủng loại
con, hoặc lớp. Ví dụ trong hoá học việc dự báo các đặc điểm cấu trúc khác nhau
cùng một hợp chất chưa biết trên phổ của nó.
b. Mô hình hoá:
Các hệ thống phân loại đưa ra các câu trả lời rời rạc như cú, khụng hoặc một
số nguyên định danh đối tượng đầu vào thuộc lớp nào. Tuy nhiên việc mô hình hoá
yêu cầu hệ thống phải sản sinh ra các câu trả lời mang tính liên tục. Trong việc mô
hình hoá một số lượng nhỏ các số liệu được sử dụng để xây dựng mô hình. Mô hình
này có thể đưa ra các dự báo cho tất cả các đối tượng đầu vào có thể. Việc tìm ra
đường cong phù hợp với các số liệu thực nghiệm (curve-fitting) là một trong những
ứng dụng thuộc dạng này. Trong phần lớn các ứng dụng chúng chỉ là thủ tục một
biến vào - một biến ra như sau:
Y = f(x, a, b, … , p)
Ở đây hàm f chứa một tập các tham số a, b, …., p. Các tham số này phải được
xác định bằng việc tối thiểu hoá độ chênh lệch giữa số liệu thực nghiệm và giá trị
tính toán từ mô hình:
Σ (y thực nghiệm - ymô hình)
2
→ min
Mô hình hoá cũng có thể là vấn đề nhiều biến vào - một biến đầu ra hoặc
nhiều biến đầu vào - nhiều biến đầu ra.
Trong bất kỳ loại mô hình nào thì cũng phải tuân theo một giả định là: các
thay đổi nhỏ của tín hiệu đầu vào sẽ chỉ gây ra những biến đổi nhỏ của tín hiệu ra.
Trong các vấn đề đa biến mạng nơron có nhiều lợi thế hơn so với các phương
pháp mô hình hoá cổ điển sử dụng các hàm giải tích, các phương pháp mô hình hoá
cổ điển đối với mỗi biến đầu ra chúng ta phải khẳng định trước một hàm giải tích
Trần Ngọc Tú - Lớp CNPM – K44 6
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
cùng một bộ các tham số trong khi đó đối với mạng nơron chúng ta không cần bất
kỳ sự hiểu biết trước về các tham số đó.
c. Biến đổi:
Việc biến đổi nhằm mục đích nộn cỏc đối tượng từ không gian m chiều vào
không gian có số chiều nhỏ hơn rất nhiều (2 hoặc 3). Qua việc nộn cỏc đối tượng
này sẽ bộc lộ các đặc điểm mà chúng ta không thể nhận thấy khi các đối tượng ở
trong không gian nhiều chiều.
Những câu hỏi mà việc biến đổi có thể trả lời là: Bản đồ của toàn bộ các đối
tượng như thế nào: Có bao nhiờu vựng trong bản đồ có thể phân biệt được? Hình
dáng của cỏc vựng đú như thế nào ? Các đặc điểm của các đối tượng thể hiện qua
cỏc vựng bản đồ như thế nào ?
I.3. Đào tạo mạng nơron
I.3.1. Phõn loại các phương pháp đào tạo mạng nơron
Có nhiều phương pháp để đào tạo một mạng nơron, chỳng được phõn loại theo
các chỉ tiêu khác nhau:
1) Phõn loại theo cách học có giám sát hay không:
a. Học có giám sát
b. Học không có giám sát
c. Học có giám sát và kiểm tra chéo.
2) Phõn loại theo số lượng mẫu học một lần:
a. Học cả tập mẫu một lần.
b. Học từng mẫu một, cần phải quan tõm thứ tự mẫu học.
c. Học từng phần của tập mẫu.
Tuỳ theo dạng bài toán mà ta quyết định chọn phương pháp học nào. Với bài
toán học có giám sát tức là có “thầy giáo” hướng dẫn và điều chỉnh lại trọng số của
mạng để đạt được lời giải. Như vậy cần phải chuẩn bị một tập mẫu học cho quá
trình học này. Các phần tiếp theo sẽ nêu một số điểm chính về việc chuẩn bị số liệu
học.
Vấn đề sắp xếp, bố trí thứ tự các số liệu học như thế nào cũng khá quan trọng,
vì nếu ta sử dụng học từng mẫu một, mạng thường sẽ rơi vào tình trạng “học mẫu
sau quên mẫu trước” và thường thì mẫu cuối cùng sẽ cho sai số nhỏ nhất. Vì vậy
phương pháp này ít được sử dụng so với phương pháp học từng phần của tập mẫu
hoặc học toàn bộ tập mẫu một lần.
I.3.2. Chuẩn bị dữ liệu đào tạo
Một khi ta quyết định giải quyết một vấn đề sử dụng mạng nơron nhân tạo 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 đầu vào và đầu
Trần Ngọc Tú - Lớp CNPM – K44 7
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụ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 mạng nơron nhân tạo, ta có thể chọn và loại bỏ nhiều biến và mạng nơron
nhân tạo cũng có thể xác định bằng thực nghiệm 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ế.
Mạng nơron nhân tạo 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ố. 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à mạng nơron nhân tạo có chức
năng hỗ trợ điều này. Tuy nhiên mạng nơron nhân tạo 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ố phần tử của 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.
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. Mạng nơron
nhân tạo 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). Mạng nơron
nhân tạo 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, mạng nơron nhân tạo 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.
Trần Ngọc Tú - Lớp CNPM – K44 8
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
• Dữ liệu số và danh định có thể xử lý trực tiếp bằng mạng nơron nhân
tạo. 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 nhân tạo có khả năng nhận ra những
biến hữu dụng để huấn luyện.
I.3.3. Tiền xử lý và hậu xử lý
Tất cả các mạng nơron nhân tạo 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 đó.
biểu diễn đồ thị một hàm truyền cơ bản nhất, hàm xích ma (sigmoid) có biểu
thức toán học như sau:
x
e
y −
+
=
1
1
Giá trị đầu ra của hàm biến đổi trong khoảng (0; 1), và giá trị vào chỉ nhạy
trong khoảng (-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. Cũng vì lý do đạo hàm mà hàm nấc không được
dùng nhiều trong thực tế.
Do tính chất của hàm truyền như vậy cần chúng ta có một bước tiền xử lý và
hậu xử lý dữ liệu đào tạo về khoảng thích hợp với hàm truyền của loại nơron sử
dụng trong mạng.
Hàm xích ma (sigmoid).
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ế, mạng nơron 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.
Trần Ngọc Tú - Lớp CNPM – K44 9
-4 -3 -2 -1 0 1 2 3 4
0
0.2
0.4
0.6
0.8
1.0
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
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ố.
Mạng nơron nhõn tạo 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ã nhị phõn n bít, 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.
I.4. Học quá mức và tổng quát hoá [4]
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 mạng nơron nhân tạo 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= 3x2 + 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ở.
Mạng nơron nhân tạo 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ả 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.
Trần Ngọc Tú - Lớp CNPM – K44 10
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
Cõu trả lời là sử dụng chức năng kiểm tra chéo, một số mẫu trong tập huấn
luyện được sử dụng để kiểm tra, sau khi những mẫu cũn lại đã được học. Để 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 mạng nơron nhân tạo 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ố nơron ẩ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 có 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.
I.5. Tổng kết chương
Trong chương này đã giới thiệu tóm tắt về cấu trúc của mạng nơron và ứng
dụng của nó. So với các phương pháp truyền thống thì mạng nơron có một khả năng
vượt trội, tuy nhiên để ứng dụng nó thành công cũng cần nghiên cứu nhiều khớa
cạnh về đào tạo mạng nơron, như lựa chọn cấu trúc mạng nơron, thiết kế tập mẫu
học (nếu sử dụng phương pháp học có giám sát), và sau quá trình học phải tạo ra
mạng nơron có tính tổng quát cao để có thể đem ứng dụng thực tế được tốt. Sau đõy
là một số quy tắc được rút ra khi thiết kế mạng nơron và đào tạo nó:
• Chọn một số cấu trúc mạng ban đầu (thường một lớp ẩn có số nơron ẩn
bằng nửa tổng số nơron ngõ vào và ngõ ra).
Trần Ngọc Tú - Lớp CNPM – K44 11
Đồ án tốt nghiệp Mạng nơron nhân tạo và ứng dụng
• Thực hiện lặp đi lặp lại số thí nghiệm của mỗi cấu trúc mạng, giữ lại
mạng tốt nhất (thường dựa trên sai số xác minh). Thí nghiệm nhiều lần
trên mỗi cấu trúc mạng để tránh rơi vào sai số cục bộ.
• Trong mỗi lần thí nghiệm, nếu xảy ra việc học chưa đủ (mạng không đạt
được mức hiệu suất chấp nhận) thì thử tăng số nơron trong lớp ẩn. Nếu
không hiệu quả, thỡ thờm một lớp ẩn. Nếu xảy ra học quá mức (sai số
xác minh bắt đầu tăng lên) thử bỏ bớt một vài nơron ẩn (và có thể bỏ lớp
ẩn).
Trần Ngọc Tú - Lớp CNPM – K44 12