Tải bản đầy đủ (.doc) (67 trang)

Nghiên cứu mạng nơron nhân tạo và ứng dụng nhận dạng tiếng nói

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.42 MB, 67 trang )

MỤC LỤC
MỤC LỤC......................................................................................................................................1
CHƯƠNG I : TÌM HIỂU VỀ MẠNG NƠRON NHÂN TẠO...................................................................2
1. Lịch sử phát triển..................................................................................................................2
2. Khái niệm mạng nơron.........................................................................................................4
2.1 Mạng nơron sinh học :....................................................................................................4
2.2 Mạng nơron nhân tạo :...................................................................................................4
3. Cấu trúc mạng Nơron...........................................................................................................6
4. Kiến Trúc Mạng.....................................................................................................................7
4.1 Mạng Một Tầng...............................................................................................................8
4.2 Mạng Đa Tầng.................................................................................................................9
5. Các luật học..........................................................................................................................9
6. Các tính chất của mạng nowrron nhân tạo.........................................................................13
7. Mô hình toán học mạng nơron truyền thẳng và mạng nơron hồi quy................................13
7.1.Mạng nơ ron truyền thẳng...........................................................................................13
7.2.Mạng nơron hồi quy.....................................................................................................17
8. Quá trình huấn luyện mạng nhiều lớp................................................................................18
8.1 Quá trình thực hiện.....................................................................................................19
8.2 Qui tắc chuỗi.................................................................................................................20
8.3 Độ chính xác của thuật toán lan truyền ngược.............................................................21
8.4 Biến thể của thuật toán lan truyền ngược....................................................................22
8.5 Tổng quát (Phép nội suy và ngoại suy)..........................................................................22
9. Ứng dụng............................................................................................................................25
CHƯƠNG 2: LÝ THUYẾT ÂM THANH VÀ TIẾNG NÓI.....................................................................26
2.1 Âm thanh..........................................................................................................................26

1


2.1.1 Nguồn gốc âm thanh:................................................................................................26
2.1.2 Các đại lượng đặc trưng cho âm thanh:.....................................................................26


2.1.3 Các tần số của âm thanh:...........................................................................................27
2.1.4 Cơ chế tạo lập tiếng nói của con người:.....................................................................27
2.1.5 Mô hình lọc nguồn tạo tiếng nói:...............................................................................28
2.1.6 Hệ thống nghe của người:.........................................................................................29
2.1.7 Quá trình sản xuất tiếng nói và thu nhận tiếng nói của con người:...........................29
2.1.8 Các âm thanh tiếng nói và các đặc trưng:..................................................................30
2.2 Tổng quan về nhận dạng tiếng nói....................................................................................32
2.2.1 Các nguyên tắc cơ bản trong nhận dạng tiếng nói.....................................................33
2.2.2 Các hệ thống nhận dạng tiếng nói:............................................................................33
2.2.4 Các tiếp cận nhận dạng tiếng nói...............................................................................38
2.3 Các phương pháp nhận dạng tiếng nói.............................................................................42
2.3.1 Mô hình Fujisaki:........................................................................................................42
2.3.2 Mô hình Markvo ẩn...................................................................................................44
2.4 Những thuận lợi và khó khăn trong nhận dạng tiếng Việt................................................54
CHƯƠNG 3: XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG NÓI BẰNG MẠNG NƠRON TRONG
MATLAB......................................................................................................................................55
3.1 Công cụ được sử dụng trong matlab................................................................................55
3.2 xây dựng chương trình mô phỏng nhận dạng tiếng nói bằng mạng Nơron MLP..............58
3.2.1 Các bước xây dựng....................................................................................................58
3.2.2 Chương trình nhận dạng phát âm mười chữ số tiếng Việt........................................62

CHƯƠNG I : TÌM HIỂU VỀ MẠNG NƠRON NHÂN TẠO
1. Lịch sử phát triển
Quá trình nghiên cứu và phát triển noron nhân tạo có thể được chia thành
4 giai đoạn như sau :
2


 Giai đoạn 1: Có thể tính từ nghiên cứu của William (1890) về tâm lý học
với sự liên kết các noron thần kinh. Năm 1940 Mc Culloch và Pitts đã cho

biết nơron có thể mô hình hoá như thiết bị ngưỡng (Giới hạn) để thực hiện
các phép tính logic và mô hình mạng nơron của Mc Culloch - Pitts cùng
với giải thuật huấn luyện mạng của Hebb ra đời năm 1943.
 Giai đoạn 2: Vào khoảng gần những năm 1960, một số mô hình noron
hoàn thiện hơn đã được đưa ra như: Mô hình Perceptron của Rosenblatt
(1958), Adalile của Widrow (1962). Trong đó mô hình Perceptron rất
được quan tâm vì nguyên lý đơn giản, nhưng nó cũng có hạn chế vì như
Marvin Minsky và Seymour papert của MIT ( Massachurehs Insritute of
Technology) đã chứng minh nó không dùng được cho các hàm logic phức
(1969). Còn Adaline là mô hình tuyến tính, tự chỉnh, được dùng rộng rãi
trong điều khiển thích nghi, tách nhiễu và phát triển cho đến nay.
 Giai đoạn 3: Có thể tính vào khoảng đầu thập niên 80. Những đóng góp lớn
cho mạng nơron trong giai đoạn này phải kể đến Grossberg,Kohonen,
Rumelhart và Hopfield. Trong đó đóng góp lớn của Hopfield gồm hai mạng
phản hồi: Mạng rời rạc năm 1982 và mạng liên tục năm 1984. Đặc biệt,
ông đã dự kiến nhiều khả năng tính toán lớn của mạng mà một nơron
không có khả năng đó. Cảm nhận của Hopfield đã được Rumelhart,
Hinton và Williams đề xuất thuật toán sai số truyền ngược nổi tiếng để
huấn luyện mạng noron nhiều lớp nhằm giải bài toán mà mạng khác
không thực hiện được.
 Giai đoạn 4: Tính từ năm 1987 đến nay, hàng năm thế giới đều mở hội
nghị toàn cầu chuyên ngành nơron IJCNN (International Joit Conference
on Neural Networks). Rất nhiều công trình được nghiên cứu để ứng dụng
mạng nơron vào các lĩnh vực như: Kỹ thuật tính, điều khiển, bài toán tối
ưu, y học, sinh học, thống kê, giao thông, hoá học,...Cho đến nay mạng
nơron đã tìm và khẳng định được vị trí của mình trong rất nhiều ứng dụng
khác nhau.

3



2. Khái niệm mạng nơron
Theo nghĩa sinh học, mạng nơron là tập hợp các dây thần kinh kết nối với
nhau.Do đó thuật ngữ mạng nơ ron xác định hai khái niệm phân biệt:
• Mạng nơron sinh học
• Mạng nơron nhân tạo
2.1 Mạng nơron sinh học :
Mỗi nơron sinh học gồm có 3 thành phần: Thân nơron với nhân ở bên
trong (soma), một đầu dây thần kinh ra (axon) và một hệ thống phân nhánh hình
cây (Dendrite) để nhận các thông tin vào. Trong thực tế có rất nhiều dây thần
kinh vào và chúng bao phủ một diện tích rất lớn (0,25mm2). Mỗi nơron nhận tín
hiệu vào từ các tế bào thần kinh khác. Chúng tích hợp các tín hiệu vào, khi tổng
tín hiệu vượt quá một ngưỡng nào đó chúng tạo tín hiệu ra và gửi tín hiệu này tới
các nơron khác thông qua dây thần kinh. Các nơron liên kết với nhau thành
mạng. Mức độ bền vững của các liên kết này xác định một hệ số gọi là trọng số
liên kết.

2.2 Mạng nơron nhân tạo :
là mạng nơron là một mô hình toán học hay mô hình tính toán được xây
dựng dựa trên các mạng nơron sinh học. Nó gồm có một nhóm các nơron nhân
tạo (nút) nối với nhau, và xử lý thông tin bằng cách truyền theo các kết nối và
tính giá trị mới tại các nút (cách tiếp cận connectionism đối với tính toán). Trong
nhiều trường hợp, mạng nơron nhân tạo là một hệ thống thích ứng tự thay đổi cấu

4


trúc của mình dựa trên các thông tin bên ngoài hay bên trong chảy qua mạng
trong quá trình học.


Sau đây là mô hình của một nơron nhân tạo

Nơron này sẽ hoạt động như sau: giả sử có N inputs, nơron sẽ có N trọng
số tương ứng với N đường truyền inputs. Nơron sẽ lấy tổng có trọng số của tất cả
các inputs. Nói như thế có nghĩa là nơron sẽ lấy input thứ nhất, nhân với weight
trên đường input thứ nhất, lấy input thứ hai nhân với weight của đường input thứ
hai v.v..., rồi lấy tổng của tất cả các kết quả thu được. Đường truyền nào có trọng
số càng lớn thì tín hiệu truyền qua đó càng lớn, như vậy có thể xem weight là đại
lượng tương đương với synapse trong nơron sinh học. Có thể viết kết quả lấy
tổng của nơron như sau:

Kết quả này sẽ được so sánh với threshold t của nơron, nếu nó lớn hơn t thì
nơron cho output là 1, còn nếu nhỏ hơn thì output là 0. Ngoài ra ta cũng có thể
trừ tổng nói trên cho t, rồi so sánh kết quả thu được với 0, nếu kết quả là dương
thì nơron cho ouput bằng 1, nếu kết quả âm thì output là 0. Dưới dạng toán học ta
có thể viết output của nơron như sau:

5


Trong đó f là hàm Heaviside:

f được gọi là ngưỡng chức năng hay chuyền chức năng của nơron, còn giá trị (-t)
còn được gọi là bias hay offset của nơron.Nếu chúng ta đưa thêm một input nữa
vào, input thứ 0, có giá trị luôn luôn bằng 1 và weight luôn luôn bằng bias (-t) thì
output của nơron còn có thể viết dưới dạng:

Lưu ý là chỉ số của tổng bây giờ bắt đầu từ 0 chứ không phải bằng 1 như trước
nữa.
3. Cấu trúc mạng Nơron

Mỗi Nơron (nút) là một đơn vị xử lý thông tin của mạng nơron, là yếu tố
cơ bản để cấu tạo nên mạng nơron

Hình 3.1: Cấu trúc 1 nơron
xi: các tín hiệu input
wkp: trọng số của từng input
f(.): hàm hoạt động
yk: kết xuất của nơron
b: thông số ảnh hưởng đến ngưỡng ra của output
Phân loại cấu trúc mạng Nơron :
a. Mạng dẫn tiến một lớp
Đây là cấu trúc mạng nơron đơn giản nhất. Mạng nơron này chỉ gồm 1 lớp
xuất, không có lớp ẩn

6


Hình 3.2 cấu trúc nơron đơn giản
b. Mạng dẫn tiến nhiều lớp

Hình 3.3: Cấu trúc mạng nơron nhiều lớp
Mạng nơron nhiều lớp có thể giải quyết các bài toán phi tuyến nhờ vào
các lớp ẩn. Các lớp ẩn này xen giữa các input bên ngoài và output của mạng.
Càng nhiều lớp ẩn thì khả năng mở rộng thông tin càng cao và xử lý tốt mạng có
nhiều input và output. Ngoài ra còn có mạng hồi quy và mạng nơron dạng lưới.
4. Kiến Trúc Mạng
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 neural 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.

7


4.1 Mạng Một Tầng
Mạng một tầng với S nơron được minh họa trong hình 4.1.1. Chú ý rằng
với mỗi một đầu vào trong số R đầu vào sẽ được nối với từng nơron và ma trận
trọng số bây giờ sẽ có S hàng.Một tầng bao gồm ma trận trọng số, các bộ cộng,
vector ngưỡng b, hàm chuyển và vector đầu ra a.
Mỗi phần tử của vector đầu vào p được nối với từng nơron thông qua ma
trận trọng số W. Mỗi nơron có một ngưỡng bi, một bộ cộng, một hàm chuyển f
và một đầu ra ai cùng với nhau, các đầu ra tạo thành một vector đầu ra a.Thông
thường thì số lượng đầu vào của tầng khác với số lượng nơ-ron.(R#S).
Ma trận trọng số cho các phần tử trong vector đầu vào W:

hình 4.1.1: Mô hình mạng 1 lớp.
Các chỉ số hàng của các phần tử trong ma trận W chỉ ra nơron đích đã kết
hợp với trọng số đó, trong khi chỉ số cột cho biết đầu vào cho trọng số đó. Vì
vậy, các chỉ số trong nói rằng đây là trọng số của đầu vào thứ 2 nối với nơron
thứ 3

8


4.2 Mạng Đa Tầng


Hình 4.2.1 :Ví dụ về một mô hình mạng đa tầng
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.
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.
5. Các luật học.
Thông thường mạng nơron được điều chỉnh hoặc được huấn luyện để
hướng các đầu vào riêng biệt đến đích ở đầu ra. Cấu trúc huấn luyện mạng được
chỉ ra trên hình 5.1 Ở đây, hàm trọng của mạng được điều chỉnh trên cơ sở so
sánh đầu ra với đích mong muốn (taget) cho tới khi đầu ra mạng phù hợp
với đích. Những cặp vào/đích (input/taget) được dùng để giám sát cho sự huấn
luyện mạng.

9


Hình 5.1 Cấu trúc huấn luyện mạng nơron
Để có được một số cặp vào/ra, ở đó mỗi giá trị vào được gửi đến mạng và
giá trị ra tương ứng được thực hiện bằng mạng là sự xem xét và so sánh
với giá trị mong muốn. Bình thường tồn tại một sai số bởi lẽ giá trị mong muốn
không hoàn toàn phù hợp với giá trị thực. Sau mỗi lần chạy, ta có tổng bình
phương của tất cả các sai số. Sai số này được sử dụng để xác định các hàm trọng
mới.
Sau mỗi lần chạy, hàm trọng của mạng được sửa đổi với đặc tính tốt hơn

tương ứng với đặc tính mong muốn. Từng cặp giá trị vào/ra phải được kiểm tra
và trọng lượng được điều chỉnh một vài lần. Sự thay đổi các hàm trọng của
mạng được dừng lại nếu tổng các bình phương sai số nhỏ hơn một giá trị đặt
trước hoặc đã chạy đủ một số lần chạy xác định (trong trường hợp này mạng có
thể không thoả mãn yêu cầu đặt ra do sai lệch còn cao).
Có hai kiểu học:
Học thông số :Tìm ra biểu thức cập nhật các thông số về trọng số, cập
nhật kết nối giữa các nơron.
Học cấu trúc :Trọng tâm là sự biến đổi cấu trúc của mạng nơron gồm số
lượng nút (node) và các mẫu liên kết
Nhiệm vụ của việc học thông số là bằng cách nào đó, tìm được ma trận
chính xác mong muốn từ ma trận giả thiết ban đầu với cấu trúc của mạng nơron
có sẵn.
Để làm được việc đó, mạng nơron sử dụng các trọng số điều chỉnh,
với nhiều phương pháp học khác nhau có thể tính toán gần đúng ma trận W cần
tìm đặc trưng cho mạng.
Có ba phương pháp học:
 Học có giám sát
Là quá trình học ở mỗi thời điểm thứ i khi đưa tín hiệu xi vào mạng nơ
ron,tương ứng sẽ có các đáp ứng mong muốn di của đầu ra cho trước ở thời điểm
10


đó. Hay nói cách khác, trong quá trình học có giám sát, mạng nơ ron được cung
cấp liên tục các cặp số liệu mong muốn vào - ra ở từng thời điểm (x1 ,d1 ),
(x2 ,d2 ),… (xk, dk ),…khi cho tín hiệu vào thực là xk sẽ tương ứng có tín hiệu đầu
ra cũng được lặp lại là dk giống như mong muốn. Kết quả của quá trình học có
giám sát là tạo được một hộp đen có đầu vào là véctơ tín hiệu vào X sẽ đưa ra
được câu trả lời đúng d.
Để đạt được kết quả mong muốn trên, khi đưa vào tín hiệu xk , thông

thường sẽ có sai lệch ek giữa tín hiệu đầu ra thực yk với tín hiệu đầu ra mong
muốn d . Sai lệch đó sẽ được truyền ngược tới đầu vào để điều chỉnh thông
số mạng neral là ma trận trọng số W…Quá trình cứ thế tiếp diễn sao cho sai
lệch giữa tín hiệu ra mong muốn và tín hiệu ra thực tế nằm trong phạm
vi cho phép, kết quả nhận được ma trận trọng số với các phần tử wij đã được
điều chỉnh phù hợp với đặc điểm của đối tượng hay hàm số mạng nơron cần
học. Mô hình học có giám sát được minh hoạ như hình 5.2

Hình 5.2.Mô hình học có giám sát và học củng cố
 Học củng cố
Là phương pháp học trong đó tín hiệu d được đưa từ bên ngoài nhưng
không được đầy đủ mà có thể chỉ đưa đại diện 1 bít để có tính chất kiểm tra quá
trình đúng hay sai. Tín hiệu đó được gọi là tín hiệu củng cố .Phương
pháp học củng cố chỉ là một phương pháp học riêng của phương pháp học có
giám sát, bởi vì nó cũng nhận tín hiệu chỉ đạo từ bên ngoài. Chỉ khác là tín hiệu
củng cố có tính ước lượng hơn là để dạy. Tín hiệu giám sát bên ngoài d thường
được tiến hành bởi các tín hiệu ước lượng để tạo thông tin ước lượng cho mạng
nơron điều chỉnh trọng số với hy vọng sự ước lượng đó mang lại sự chính xác
trong quá trình tính toán. Mô hình học củng cố được minh hoạ như hình 5.2
 Học không có giám sát

11


Trong trường hợp này, hoàn toàn không có tín hiệu ở bên ngoài. Giá trị
mục tiêu điều khiển không được cung cấp và không được tăng cường. Mạng
phải khám phá các mẫu, các nét đặc trưng, tính cân đối, tính tương quan…
Trong khi khám phá các đặc trưng khác, mạng nơ ron đã chải qua việc tự thay
đổi thông số, vấn đề đó được gọi tự tổ chức (Self- Organizing). Mô hình học
không có giám sát được minh hoạ như hình 5.3


Hình 5.3.Mô hình học không có giám sát
Cấu trúc chung của quá trình học được mô tả như hình 5.4

Hình 5.4. Sơ đồ cấu trúc chung của quá trình học
Trong đó tín hiệu vào xj , j=1,2,3…,m, có thể được lấy từ đầu ra của các
nơron khác hoặc có thể được lấy từ bên ngoài. Tín hiệu mong muốn d i có
sẵn chỉ có trong phương pháp học có giám sát hoặc củng cố. Từ hai phương
pháp học trên, trọng số của nơ ron thứ i được thay đổi tuỳ theo tín hiệu ở đầu
vào mà nó thu nhận và giá trị đầu ra của nó. Trong phương pháp học không có
giám sát sự thay đổi của trọng số chỉ dựa trên cơ sở các giá trị đầu vào và đầu ra.
Dạng tổng quát của luật học trọng số của mạng nơ ron là cho biết gia số của véc
tơ wi là Δwi tỷ lệ với tín hiệu học r và tín hiệu đầu vào x(t):
Δw (t) = η.r.x(t)
η: Là hằng số học, xác định tốc độ học và là một số dương
r: Là tín hiệu học r = f r(wi ,x,di )
12

(1.8)
(1.9)


Biểu thức (1.8) là biểu thức chung để tính số gia của trọng số, ta thấy trọng
số wi = (wi1, wi2, …, wim)T có gia số tỷ lệ với tín hiệu vào x và tín hiệu học r. Từ
các biểu thức trên ta có véc tơ trọng số ở thời điểm (t+1) được tính là:
Wi(t+1) = wi(t) + η.fr {wi(t), x(t), di(t)}.x(t)
(1.10)
Vấn đề quan trọng trong việc phân biệt luật học cập nhật trọng số có giám
sát hay không có giám sát là tín hiệu học r như thế nào để thay đổi hoặc cập nhật
trọng số có trong mạng nơron.

Có 2 phương pháp cơ bản để huấn luyện mạng nơron: Huấn luyện gia tăng
(tiến dần) và huấn luyện theo gói. Sự huấn luyện theo gói của mạng nhận được
bằng việc thay đổi hàm trọng và độ dốc trong một tập (batch) của véc tơ đầu
vào. Huấn luyện tiến dần là thay đổi hàm trọng và độ dốc của mạng sau mỗi lần
xuất hiện của một phần tử véc tơ đầu vào. Huấn luyện tiến dần đôi khi được xem
như huấn luyện trực tuyến hay huấn luyện thích nghi.
Mạng nơ ron đã được huấn luyện để thực hiện những hàm phức tạp trong
nhiều lĩnh vực ứng dụng khác nhau như trong nhận dạng, phân loại sản phẩm, xử
lý tiếng nói, chữ viết và điều khiển hệ thống.
Thông thường để huấn luyện mạng nơron, người ta sử dụng
phương pháp huấn luyện có giám sát, nhưng cũng có mạng thu được từ sự huấn
luyện không có giám sát. Mạng huấn luỵện không giám sát có thể được sử dụng
trong trường hợp riêng để xác định nhóm dữ liệu.
6. Các tính chất của mạng nowrron nhân tạo
• Là hệ phi tuyến: Mạng nơ ron có khả năng to lớn trong lĩnh vực nhận
dạng và điều khiển các đối tượng phi tuyến.
• Là hệ xử lý song song: Mạng nơ ron có cấu trúc song song, do đó có độ
tính toán rất cao rất phù hợp với lĩnh vực nhận dạng và điều khiển.
• Là hệ học và thích nghi: Mạng được luyện từ các số liệu quá khứ và có
khả năng tự chỉnh khi số liệu đầu vào bị mất, có thể điều khiển on- line.
• Là hệ nhiều biến, nhiều đầu vào, nhiều đầu ra (MIMO), rất tiện dùng khi
đối tượng điều khiển có nhiều biến số.
7. Mô hình toán học mạng nơron truyền thẳng và mạng nơron hồi quy.
7.1.Mạng nơ ron truyền thẳng.
a/ Mạng nơ ron một lớp.
13


Một cấu trúc toán học mạng 1 lớp với R đầu vào và S nơ ron được chỉ ra
trên hình Trong đó :

-Véc tơ vào P có R phần tử P = [p1p2 … pr]
-Véc tơ vào n có S phần tử nT = [n1 n2 … ns
-Véc tơ ra a có S phần tử a = [a1a2 … as ]

Hình 7.1.Cấu trúc mạng nơ ron 1 lớp
Trong mạng này mỗi phần tử của véc tơ vào P liên hệ với đầu vào mỗi
nơron thông qua ma trận trọng lượng liên kết W. Bộ cộng của nơ ron thứ i thu
thập các trọng liên kết đầu vào và độ dốc để tạo thành một đầu ra vô hướng n i .
Các ni tập hợp với nhau tạo thành s phần tử của véctơ vào n. Cuối cùng ở lớp ra
nơ ron ta thu được véctơ a gồm s phần tử. Ta có thể thiết lập lớp đơn của các
nơron có các hàm chuyển khác nhau một cách dễ dàng bởi lẽ hai mạng được đặt
song song. Tất cả các mạng có thể có chung đầu vào và mỗi mạng có thể thiết
lập một vài đầu ra. Các phần tử của véc tơ đầu vào được đưa vào mạng thông
qua ma trận trọng W, với:

(1.12)

Trong đó: Chỉ số hàng trong các phần tử của ma trận W cho biết nơron
nơi đến còn chỉ số cột cho biết nơi xuất phát của trọng liên kết. Ví dụ: w 12 nói
lên sự có mặt của tín hiệu vào từ phần tử thứ hai đến nơ ron thứ nhất với trong
14


liên kết là w12. Để đơn giản ta ký hiệu mạng một lớp gồm S nơron, R đầu vào
như hình vẽ 7.2

Hình 7.2. Ký hiệu mạng một lớp R đầu vào và S nơron
Trong đó: véctơ vào P có kích thước R, ma trận trọng liên kết W có
kích thước S x R còn a và b là các véc tơ có kích thước S. Như chúng ta đã
biết, một lớp mạng bao gồm ma trận trọng liên kết, toán tử nhân, véc tơ

độ dốc b, bộ tổng và hàm truyền.
b/. Mạng nơron nhiều lớp.
Để khảo sát mạng nhiều lớp trước hết chúng ta cần đưa ra các ký hiệu qui
ước cho một lớp mạng. Đặc biệt ta cần phải phân biệt sự khác nhau giữa ma trận
trọng lượng liên kết ở đầu vào và các ma trận trọng liên kết giữa các lớp.
Ta gọi ma trận trọng lượng liên kết nối với đầu vào là các trọng vào và các
ma trận đến từ lớp ra là trọng liên kết lớp Ta sẽ dùng các chỉ số viết bên trên để
phân biệt nguồn (chỉ số thứ hai) và đích (chỉ số thứ nhất) cho các trọng liên kết
và các phần tử khác của mạng.
Để minh hoạ, ta xét một lớp mạng có nhiều đầu vào như hình 7.3. Trong
đó R là số phần tử lớp vào và S1 là số nơron của lớp 1. Ta thấy ma trận trọng
liên kết với véc tơ vào P là ma trận trọng vào (IW 1,1) có nguồn là 1 (chỉ số thứ 2)
và đích là 1 (chỉ số thứ nhất). Đồng thời các phần tử của 1 lớp như độ dốc,
tín hiệu vào hàm chuyển, đầu ra có chỉ số viết trên là 1 để nói rằng chúng
được liên kết với lớp thứ nhất (b1 , n1 , a1 ).

Hình 7.3: Ký hiệu một lớp mạng

15


Một mạng nơron có thể có một vài lớp. Mỗi lớp có ma trận trọng
liên kết W, véc tơ độ dốc b và đầu ra a. Để phân biệt các ma trận trọng liên kết
véc tơ vào cho mỗi lớp mạng trong sơ đồ, ta thêm con số chỉ lớp viết ở phía trên
cho biến số quan tâm.
Hình 7.4 là ký hiệu sơ đồ mạng 3 lớp. Trong đó có R 1 đầu vào, S1 nơ ron ở lớp
1, S2 nơron ở lớp 2 …Thông thường, các lớp khác nhau có số nơ ron
khác nhau.
Chú ý rằng đầu ra của mỗi lớp trung gian là đầu vào của lớp tiếp theo. Như vậy
lớp 2 có thể được xem như mạng 1 lớp với S 1 đầu vào, S2 và S2 x S1 trọng liên

kết của ma trận W2 . Đầu vào của lớp 2 là véc tơ a 1 , đầu ra là véc tơ a2 . Các lớp
của mạng nhiều lớp đóng vai trò khác nhau. Lớp cuối cùng là kết quả ở đầu ra
của mạng, được gọi là lớp ra. Lớp đầu tiên thu thập tín hiệu vào được gọi là lớp
vào, các lớp khác được gọi là lớp ẩn. Mạng 3 lớp ở trên có 1 lớp ra (lớp 3) có
1lớp vào (lớp1) và 1 lớp ẩn (lớp 2). Đối với mạng 3 lớp ta cũng có thể sử dụng
ký hiệu tắt để biểu diễn (hình 7.5). Mạng nhiều lớp rất mạnh, ví dụ có mạng
2 lớp, trong đó lớp 1 có hàm chuyển sigmoid, lớp 2 có hàm chuyển linear
có thể được huấn luyện để làm xấp xỉ một hàm bất kỳ (với số điểm gián đoạn có
hạn chế).
Trong đó a3 là đầu ra của mạng, ta ký hiệu đầu ra này là y. Ta sẽ sử dụng
ký hiệu này để định rõ đầu ra của mạng nhiều lớp.

Hình 7.4. Cấu trúc mạng nơron 3 lớp

16


Hình 7.5. Ký hiệu tắt của mạng nơron 3 lớp
7.2.Mạng nơron hồi quy
Mạng hồi quy còn được gọi là mạng phản hồi là loại mạng tự liên kết
thành các vòng và liên kết hồi quy giữa các nơron. Mạng nơron hồi quy có trọng
số liên kết đối xứng như mạng Hopfield luôn hội tụ về trạng thái ổn định. Mạng
liên kết hai chiều (BAM) là mạng thuộc nhóm mạng nơron hồi quy hai lớp
nơron liên kết tay đôi, trong đó đảm bảo nơron của cùng một lớp không liên kết
với nhau, cũng hội tụ về trạng thái ổn định. Nghiên cứu mạng nơron hồi quy có
trọng số liên kết khôn đối xứng sẽ gặp nhiều phức tạp hơn so với mạng truyền
thẳng và mạng hồi quy đối xứng. Mạng nơron hồi quy có khả năng về
nhận mẫu, nhận dạng các hàm phi tuyến, dự báo … Một ưu điểm khác của
mạng nơron hồi quy là chỉ cần mạng nhỏ hơn về cấu trúc cũng có khả năng như
mạng truyền thẳng có cấu trúc lớp hơn.

a/ Mạng nơron hồi quy không hoàn toàn
Là mạng đó dựa trên cơ sở mạng lan truyền ngược vì cấu trúc hồi quy.
Cấu trúc của mạng hồi quy không hoàn toàn phần lớn là cấu trúc truyền thẳng
nhưng có cả sự lựa chọn cho một bộ phận có cấu trúc hồi quy.Trong nhiều
trường hợp, trọng số của cấu trúc hồi quy được duy trì không đổi, như vậy luật
học truyền ngược có thể dễ dàng được sử dụng. Trong các mạng loại này, sự
truyền thẳng được xảy ra rất nhanh hoặc không phụ thuộc vào thời gian, trong
khi đó tín hiệu hồi quy được thực hiện có tính thời gian. Mạng có thể nhận mẫu
dãy dựa vào tình trạng cuối cùng của dãy và có thể dự báo tiếp theo cho tín hiệu
của dãy theo thời gian. Như vậy, mạnghồi quy không hoàn toàn về cơ bản là
mạng tryền thẳng , liên kết hồi quy có thể đi từ các nút ở các lớp ra hoặc lớp ẩn.
17


b/ Mạng nơ ron hồi quy hoàn toàn

Hình 7.6. Ký hiệu một lớp mạng hồi quy
Là một trong những loại mạng nơron hồi quy đầu tiên được Gossberg
xây dựng để học và biểu diễn các mẫu bất kỳ loại mạng này được xây
dựng theo mẫu Instar- Outstar. Loại mạng hồi quy hoàn toàn có tác dụng
nhận số lượng mẫu nhiều nhơn. Với mạng hồi quy hoàn toàn đã hình thành quan
điểm thực hiện và luyện mạng hồi quy từ mạng truyền thẳng nhiều lớp được xây
dựng từ một lớp cho mỗi bước tính. Khái niệm này được gọi là lan truyền ngược
theo thời gian phù hợp khi quan tâm đến các dãy với độ lớn T là nhỏ. Nó đã
được sử dụng học .cho máy ghi cho nhiệm vụ thực hiện các dãy. Nó có khả
năng áp dụng cho điều khiển thích nghi. Hình 7.6 là mạng nơron một lớp hồi
quy. Hình 7.7 là mạng nơron nhiều lớp hồi quy

Hình 7.7. Ký hiệu tắt của mạng nơron 3 lớp hồi quy
8. Quá trình huấn luyện mạng nhiều lớp

Chúng ta đã biết, mạng nơron nhiều lớp có thể xấp xỉ gần đúng một hàm
bất kỳ, tiếp đó là thủ tục tính chọn các thông số của mạng (các hàm trọng lượng
và độ dốc) cho một đối tượng cụ thể được gọi là quá trình huấn luyện mạng.
Trong phần này chúng ta sẽ chỉ ra một phương pháp huấn luyện là phương
18


pháp lan truyền ngược. Kỹ thuật cơ bản của phương pháp lan truyền ngược là
cập nhật trọng số theo hướng giảm độ dốc.
Như đã nêu, mạng nhiều lớp có đầu ra của lớp trước là đầu vào của lớp
tiếp theo. Sơ đồ cấu trúc được cho như hình vẽ 7.5.
Biểu thức toán học mô tả sự hoạt động như (1.17):
am+1 = f m+1(wm+1 .am + bm+1 ). Với m = 0,1,2,…M-1.
(1.17)
Trong đó M là số lớp nơ ron trong mạng. Các nơ ron của lớp thứ nhất nhận
tín hiệu đầu vào từ bên ngoài:
a0 = p
(1.18)
Đầu ra của các nơ ron ở lớp cuối cùng của mạng được coi là đầu ra của
mạng:
y = am

(1.19)

8.1 Quá trình thực hiện.
Thuật toán lan truyền ngược của mạng nhiều lớp là một phương pháp làm
giảm độ dốc. Phương pháp này được dùng để cập nhật những thông số sao cho
giảm thiểu sai số của mô hình. Sai số được đo bằng phương pháp trung bình
bình phương sai lệch. Tập hợp mẫu vào ra được cho dưới dạng như (1.20):
(1.20)


Trong đó pq là một đầu vào của mạng, và tq tương ứng là một đầu ra. Mỗi
một đầu vào tác động vào mạng sẽ có một đầu ra thực được so sánh với đáp ứng
mẫu. Hàm thông số của mạng được xác định theo biểu thức tổng bình phương
sai lệch cực tiểu như (1.21):
(1.21)

Trong đó x là véc tơ bao gồm cả trọng số liên kết và độ dốc của mạng. Nếu
mạng có nhiều đầu ra thì biểu thức tổng quát được tính như (1.22):
(1.22 )

Sử dụng phương pháp xấp xỉ quen thuộc, chúng ta sẽ thay thế
tổng bình phương sai lệch bằng sai lệch của đáp ứng hiện tại:
19


(1.23)
Trong đó bình phương sai lệch mong muốn đã được thay thế bằng
bình phương sai lệch tại thời điểm k.
Thuật toán giảm độ dốc theo phương pháp xấp xỉ bình phương sai lệch là:
(1.24)

(1.25)

Trong đó α là tốc độ học.
8.2 Qui tắc chuỗi.
Với mạng một lớp tuyến tính thì các thành phần đạo hàm trong công thức
(1.24) và (1.25) được tính dễ dàng và tiện lợi, từ đó sai lệch có thể được viết như
một hàm tuyến tính của các trọng số.
Với mạng nhiều lớp, sai lệch là hàm ẩn của các hàm trọng lượng ở các lớp

ẩn, vì thế các phép đạo hàm sẽ tính khó khăn. Bởi vì sai lệch là hàm ẩn của các
trọng số ở các lớp ẩn nên chúng ta sẽ sử dụng qui tắc chuỗi toán học để tính đạo
hàm riêng trong các biểu thức (1.24) và (1.25)
(1.26)

(1.27)

Số hạng thứ hai trong mỗi công thức có thể được tính dễ dàng vì đầu vào
lớp mạng thứ m là hàm hiện của trọng số và độ dốc của lớp ấy:
(1.28)

20


(1.29)
Do đó
:
Nếu chúng ta định nghĩa:
(1.30)

thì công thức (1.26) và (1.27) có thể được đơn giản hoá như (1.31), (1.32):
(1.31)

(1.32)

Đến đây chúng ta có thể biểu diễn thuật toán xấp xỉ để giảm độ
dốc như (1.33), (1.34):
(1.33)
(1.34)
Khi đó ta có ma trận dạng (1.35), (1.36):

(1.35)
(1.36)
Trong đó các phần tử riêng của S được tính theo công thức (1.32)
8.3 Độ chính xác của thuật toán lan truyền ngược.
Việc còn lại bây giờ là chúng ta tính toán độ chính xác S m, nó cần đến các
ứng dụng khác của qui tắc chuỗi. Đó là quá trình chúng ta cho số hạng lan truyền
ngược, bởi vì nó diễn tả mối liên hệ phản hồi và độ chính xác ở lớp m được tính
từ độ chính xác của lớp m+1:
(1.37)

21


(1.38)
Trong đó Fm(nm ) có dạng như (1.39).

(1.39)

8.4 Biến thể của thuật toán lan truyền ngược.
Trong một số trường hợp sẽ là không thích hợp với thuật toán mà chúng ta
thường quy vào như lan truyền ngược cho bởi biểu thức (1.35) và (1.36). Trên
thực tế, thường là thuậttoán giảm độ dốc nhất. Ở đây có nhiều thuật toán khả
quan sử dụng các biến thể của giải thuật lan truyền ngược, trong đó các đạo hàm
được xử lý từ lớp cối cùng đến lớp đầu tiên của mạng được tính theo công thức
(1.37),(1.38)
Thuật toán Levenberg- Marqanrdt rất chính xác cho việc huấn luyện mạng
cỡ nhỏ và trung bình và nó được sử dụng một thuật toán tương tự với thuật toán
lan truyền ngược được cho bởi biểu thức (1.38). Để hiểu rõ các thuật toán trên,
chúng ta sẽ phân tích trong phần sử dụng thuật toán lan truyền ngược, đó là các
phép tính đạo hàm được xử lý từ lớp cuối cùng đến lớp đầu tiên. Đó chính là lý

do để người ta gọi là thuật toán lan truyền ngược. Một sự khác biệt của thuật
toán là kết quả của các phép đạo hàm được sử dụng để cập nhật các trọng số.
8.5 Tổng quát (Phép nội suy và ngoại suy).
Chúng ta đã biết mạng nhiều lớp có khả năng làm xấp xỉ gần đúng các
hàm bất kỳ, nhưng chúng ta chưa đề cập đến vấn đề tính chọn số nơ ron và số
lớp cần thiết để đạt được một độ chính xác nhất định nào đó, chúng ta chưa đề
cập đến vấn đề huấn luyện theo dữ liệu mẫu phải được chọn như thế nào. Môt bí
quyết xác định đủ số lượng nơron để đạt được mức độ phức tạp của hàm biên mà
22


không cần quan tâm đến quá trình huấn luyện dữ liệu đó là trong trường hợp
không cập nhật trạng thái mới. Nếu không, chúng ta cần phải có đủ quá trình
huấn luyện dữ liệu để mô tả tương xứng hàm biên. Để minh hoạ cho việc chúng
ta có thể huấn luyện mạng, ta xét ví dụ tổng quát dưới đây.Quá trình huấn luyện
mạng được khái quát hoá theo biểu thức (1.40):
tq = g(pq ) + eq
(1.40)
Trong đó pq là tập hợp các đầu vào; g( ) là hàm biên mà chúng ta muốn xấp
xỉ gần đúng; eq là sai số đo của nhiễu và t q là tập hợp các đầu ra(đáp
ứng của mạng).

Hình 1.16a. Đáp ứng của mạng

Hình 1.16b. Đáp ứng của mạng

khi sử dụng thuật toán bình

khi sử dụng thuật toán Bayesian


phương sai lệch cực tiểu
Trên hình vẽ cho biết : Hàm biên g( ) (có nét đậm), Giá trị đích của quá
trình học là tq (các vòng tròn ), đáp ứng đầu ra thực tương ứng vớp các đầu vào
là aq (vòng tròn
nhỏ có gạch chéo bên trong) và đáp ứng toàn bộ của quá trình huấn luyện là
đường nét mảnh.
Trong ví dụ trên hình vẽ 1.16a, đó là quá trình huấn luyện cho một mạng cỡ
lớn sử dụng phương pháp bình phương sai lệch cực tiểu. Quá trình học dựa trên
15 mẫu cho trước, chúng ta có thể thấy được độ chính xác với giá trị đích tại mỗi
điểm trong quá trình học. Tuy nhiên, đáp ứng toàn bộ của mạng lại không có
khả năng đạt được tới đường biên. Điều đó có 2 nguyên nhân chủ yếu là:
Thứ nhất do mạng có lượng quá điều chỉnh trong quá trình huấn luyện, đáp
ứng của mạng quá phức tạp vì mạng có nhiều thông số độc lập.
23


Vấn đề thứ hai ở đây là trong quá trình huấn luyện không nhận giá trị p<
0,nên các nơ ron( bao gồm cả dữ lệu cơ sở và các phương pháp xấp xỉ ) không
thể đáp ứng được yêu cầu ngoại suy chính xác.
Nếu một đầu vào mạng mà nằm ngoài phạm vi bao phủ của dữ liệu huấn
luyện thì đáp ứng của mạng sẽ luôn bị sai.
Rất ít khi chúng ta làm cho mạng biển diễn ra ngoài phạm vi của dữ liệu
học, chúng ta có thể làm cho mạng có khả năng nội suy giữa các điểm dữ liệu.
Quá trình khái quát hoá có thể đạt được sự đa dạng của các phương pháp
kỹ thuật. Một phương pháp được gọi là sự dừng sớm, nhiệm vụ của chúng ta là
phân chia dữ liệu huấn luyện theo biến dữ liệu đặt. Sự biểu diễn mạng dựa trên
biến đặt sẽ được chỉ đạo trong suốt quá trình học. Trong giai đoạn đầu của quá
trình huấn luyện thì biến sai lệch giảm, khi bắt đầu có lượng quá điều chỉnh thì
biến sai lệch cũng bắt đầu tăng và tại các điểm quá trình huấn luyện được dừng
lại.

Thêm một phương pháp kỹ thuật nữa làm cho mạng tổng quát hoá được gọi
là sự làm đúng theo quy tắc. Với phương pháp biểu diễn chỉ số so sánh làm thay
đổi đến số hạng đem đến sự phức tạp cho mạng, số hạng bất lợi đó là tổng bình
phương của các hàm trọng lượng :
(1.41)

Một bí quyết của phương pháp trên là sự lựa chọn đúng thông số ρ. Nếu giá
trị của nó lớn thì đáp ứng của mạng sẽ bằng phẳng và sẽ xấp xỉ không chính xác
được hàm biên. Nếu giá trị của ρ quá nhỏ thì mạng có sự quá điều chỉnh. Một
trong các phương pháp thành công nhất trong việc lựa chọn ρ tốt nhất là quy tắc
Bayesian ([Mack 92] và [FoHa 97]).
Trên hình 1.16b. cho thấy đáp ứng của mạng khi mạng được huấn luyện
theo quy tắc Bayesian.Chú ý rằng đáp ứng của mạng có độ chính xác phù hợp
không dài hơn các điểm dữ liệu huấn luyện. Nhưng nhìn chung đặc tính đầu ra
của mạng lại sát vào nhau hơn so với hàm biên trong phạm vi của dữ liệu huấn
luyện.
Tuy nhiên, với quy tắc Bayesian đáp ứng của mạng không tính toán
được ngoài phạm vi dữ liệu huấn luyện. Như chúng ta đã đề cập trước đây là
24


chúng ta không thể đòi hỏi mạng tính toán ngoại suy. Nếu chúng ta muốn đáp
ứng của mạng chính xác từ đầu đến cuối thì ta cần phải cung cấp dữ liệu huấn
luyện trong suốt phạm vi đó. Điều đó sẽ khó khăn hơn đối với trường hợp mạng
có nhiều đầu vào.
9. Ứng dụng
Trong quá trình phát triển, mạng nơron đã được ứng dụng thành công
trong rất nhiều lĩnh vực. Dưới đây liệt kê ra một số ứng dụng chính của mạng
nơron:
- Aerospace: Phi công tự động, giả lập đường bay, các hệ thống điều khiển

-

lái máy bay, bộ phát hiện lỗi.
Automotive: Các hệ thống dẫn đường tự động cho ô tô, các bộ phân tích

-

hoạt động của xe.
Banking: Bộ đọc séc và các tài liệu, tính tiền của thẻ tín dụng.
Defense: Định vị , phát hiện vũ khí, dò mục tiêu, phát hiện đối

-

tượng, nhận dạng nét mặt, các bộ cảm biến thế hệ mới, xử lý ảnh radar,...
Electronics: Dự đoán mã tuần tự, sơ đồ chip IC, điều khiển tiến trình, phân

-

tích nguyên nhân hỏng chip, nhận dạng tiếng nói, mô hình phi tuyến.
Entertainment: Hoạt hình, các hiệu ứng đặc biệt, dự báo thị trường.
Financial: Định giá bất động sản, cho vay, kiểm tra tài sản cầm cố, đánh
giá mức độ hợp tác, phân tích đường tín dụng, chương trình thương mại

qua giấy tờ, phân tích tài chính liên doanh, dự báo tỷ giá tiền tệ.
Insurance: Đánh giá việc áp dụng chính sách, tối ưu hóa sản phẩm. .....
 Ưu Nhược Điểm Của Mạng Nơron
• Nhược điểm:
- Tiếp cận hộp đen (black box): không thích hợp trong những trường hợp
-


cần sự giải thích cho tri thức tiếp nạp.
- Curse of Dimensionality: Thách thức về việc tích hợp các mạng Neuron
cỡ lớn như não bộ của con người.
- Việc thiết kế, xác định một số thông số của mạng nơron đòi hỏi có nhiều
kinh nghiệm
- Việc thay đổi cấu trúc tương đối hạn chế gặp khó khăn khi lời giải đòi
hỏi phải có cấu trúc phức tạp hay biến đổi.
• Ưu điểm:
- Tính phi tuyến
- Mô hình tổng quát cho ánh xạ từ tập vào đến tập ra
- Tính thích ứng (adaptivity):
25


×