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
Trang 1ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN KHOA HỌC MÁY TÍNH
BÁO CÁO THỰC TẬP TỐT NGHIỆP
Đề tài:
TÌM HIỂU VÀ MÔ PHỎNG MẠNG
NƠRON
Giáo viên hướng dẫn : Ths Nguyễn Thị Tuyển
Sinh viên thực hiện : Lê Ngọc Thắng
Lớp : KHMT-K5
Thái Nguyên, tháng 03 năm 2011
Trang 2Mục Lục
MỞ ĐẦU 4
CHƯƠNG I : TỔNG QUAN MẠNG NƠRON NHÂN TẠO 6
1.1 Giới thiệu mạng Nơron 6
1.1.1 Lịch sử phát triển của mạng nơron 6
1.1.2 Nơron sinh học 7
1.1.3 Nơron nhân tạo 8
1.1.4 Các thành phần của một nơron nhân tạo 9
1.2 Đơn vị xử lý 11
1.3 Hàm xử lý 12
1.3.1 Hàm kết hợp 12
1.3.2 Hàm kích hoạt (hàm chuyển) 13
1.4 Các kiến trúc mạng 16
1.4.1 Mạng Một Tầng 16
1.4.2 Mạng Đa Tầng 18
1.5 Các hình trạng của mạng 20
1.5.1 Mạng truyền thẳng 20
1.5.2 Mạng hồi quy 21
1.6 Tiếp cận Nơron cho tính toán 22
1.6.1 Luật học 22
1.6.2 Tốc độ học 25
1.6.3 Các luật học 26
1.7 Phạm vi ứng dụng của mạng nơron 27
1.7.1 Những bài toán thích hợp 27
1.7.2 Phân loại 28
1.7.3 Mô hình hoá 29
1.7.4 Liên kết 30
1.8 Các lĩnh vực ứng dụng của mạng nơron 30
1.9 Ưu nhược điểm của mạng nơron 31
1.10 Nhận xét 32
CHƯƠNG II MẠNG TRUYỀN THẲNG NHIỀU LỚP 33
2.1 Khái niệm 33
2.2 Khả năng thể hiện 34
2.3 Vấn đề thiết kế cấu trúc mạng 35
2.3.1 Số lớp ẩn 35
Trang 32.3.2 Số đơn vị trong lớp ẩn 36
2.4 Thuật toán lan truyền ngược (Back-Propagation) 37
2.4.1 Mô tả thuật toán 37
2.4.2 Sự hội tụ 42
2.4.3 Sự tổng quát hóa 42
CHƯƠNG III : MÔ PHỎNG MẠNG NƠRON 46
Giới Thiệu 46
3.1 Chuẩn bị dữ liệu 46
3.2 Load dữ liệu 49
3.3 Đào tạo mạng 50
3.3.1 Chia dữ liệu 50
3.3.2 Chọn dữ liệu học và các tham số 51
3.3.3 Đào tạo mạng (training) 52
3.3.4 Kiểm tra đồ thị lỗi 54
3.3.5 Kiểm tra đồ thị trọng số và đầu vào trung bình của một nơ ron 56
3.3.6 Xem đồ thị dữ liệu và đồ thị đầu ra của mạng 58
3.4 Kết luận 61
3.5 Một số nhận xét 61
KẾT LUẬN 63
TÀI LIỆU THAM KHẢO 64
Trang 4MỞ ĐẦU
Nhờ các khả năng: Học, nhớ lại và khái quát hoá từ các mẫu huấn luyện hoặc
dữ liệu, mạng nơron nhân tạo trở thành một phát minh mới đầy hứa hẹn của hệ thống
xử lý thông tin Các tính toán nơron cho phép giải quyết tốt những bài toán đặctrưng bởi một số hoặc tất cả các tính chất sau: Sử dụng không gian nhiều chiều,các tương tác phức tạp, chưa biết hoặc không thể theo dõi về mặt toán học giữacác biến Ngoài ra phương pháp này còn cho phép tìm ra nghiệm của những bài toánđòi hỏi đầu vào là các cảm nhận của con người như: tiếng nói, nhìn và nhận dạng
Cùng với sự phát triển của mô hình kho dữ liệu (Dataware house), ở Việt namngày càng có nhiều kho dữ liệu với lượng dữ liệu rất lớn Để khai thác có hiệu quảnhững dữ liệu khổng lồ này, đã có nhiều công cụ được xây dựng để thỏa mãn nhu cầukhai thác dữ liệu mức cao Việc xây dựng các hệ chuyên gia, các hệ thống dựa trên một
cơ sở tri thức của các chuyên gia, để có thể dự báo được khuynh hướng phát triển của
dữ liệu, thực hiện các phân tích trên các dữ liệu của tổ chức Mặc dù các công cụ, các hệthống trên hoàn toàn có thể thực hiện được phần lớn các công việc nêu trên, chúng vẫnyêu cầu một độ chính xác, đầy đủ nhất định về mặt dữ liệu để có thể đưa ra được cáccâu trả lời chính xác
Mạng Nơron có thể được huấn luyện và ánh xạ từ các dữ liệu vào tới các dữ liệu ra
mà không yêu cầu các dữ liệu đó phải đầy đủ Các mạng nơron có khả năng biểu diễncác ánh xạ phi tuyến giữa đầu vào và đầu ra, chúng được coi như là các “bộ xấp xỉ đanăng” Đặc biệt đối với việc dự báo khuynh hướng thay đổi của các dữ liệu tác nghiệptrong các cơ quan, tổ chức kinh tế, xã hội,
Mặc dù đã hết sức nỗ lực, song do thời gian và kinh nghiệm nghiên cứu khoahọc còn hạn chế nên không thể tránh khỏi những thiếu sót Em rất mong nhận được sựgóp ý của các thầy cô và bạn bè đồng nghiệp để hiểu biết của mình ngày một hoànthiện hơn
Trang 5Qua đề tài này em xin chân thành cảm ơn: Ths Nguyễn Thị Tuyển bộ môn KHMT
đã tận tình giúp đỡ, động viên, định hướng, hướng dẫn em nghiên cứu và hoànthành đề tài này Em xin cảm ơn các thầy cô giáo trong bộ môn KHMT, các thầy côgiáo khoa Công nghệ thông tin ĐH Thái Nguyên, đã giảng dạy và giúp đỡ em, cảm ơn
sự giúp đỡ nhiệt tình của các bạn sinh viên trong lớp KHMT
Thái Nguyên, tháng 3 năm 2011
Sinh viên thực hiện
Lê Ngọc Thắng
Trang 6CHƯƠNG I : TỔNG QUAN MẠNG NƠRON NHÂN TẠO
1.1 Giới thiệu mạng Nơron.
1.1.1 Lịch sử phát triển của mạng nơron.
Mạng noron nhân tạo được xây dựng từ những năm 1940 nhằm môphỏng một số chức năng của bộ não người Dựa trên quan điểm cho rằng bộ não người
là bộ điều khiển Mạng noron nhân tạo được thiết kế tương tự như nơron sinh học sẽ cókhả năng giải quyết hàng loạt các bài toán như tính toán tối ưu, điều khiển, công nghệrobot…
Quá trình nghiên cứu và phát triển noron nhân tạo có thể chia thành 4 giai đoạnnhư sau:
- Giai đoạn 1: Có thể tính từ nghiên cứu của William (1890) về tâm lý họcvớ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 noron 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ànthiện hơn đã được đưa ra như: Mô hình Perceptron của Rosenblatt (1958), Adalilecủ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ủaMIT ( Massachurehs Insritute of Technology) đã chứng minh nó không dùng đượccho các hàm logic phức (1969) Còn Adaline là mô hình tuyến tính, tự chỉnh, đượcdù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: Vào khoảng đầu thập niên 80 Những đóng góp lớn cho mạngnoron 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ớncủa mạng mà một nơron không có khả năng đó Cảm nhận của Hopfield đã được
Trang 7Rumelhart, Hinton và Williams đề xuất thuật toán sai số truyền ngược nổi tiếng để huấnluyện mạng nơron nhiều lớp nhằm giải bài toán mà mạng khác không thực hiệnđược Nhiều ứng dụng mạnh mẽ của mạng nơron ra đời cùng với các mạng theokiểu máy Boltzmann và mạng Neocognition của Fukushima.
- Giai đoạn 4: Tính từ năm 1987 đến nay, hàng năm thế giới đều mở hộinghị toàn cầu chuyên ngành nơron IJCNN (International Joit Conference on NeuralNetworks) Rất nhiều công trình được nghiên cứu để ứng dụng mạng nơron vàocá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ủamình trong rất nhiều ứng dụng khác nhau
1.1.2 Nơron sinh học.
Hệ thần kinh gồm hai lớp tế bào: Nơron (tế bào thần kinh) và glia (tế bào glia).Nơron là thành phần cơ bản của hệ thần kinh, chúng có chức năng xử lý thông tin Gliathực hiện chức năng hỗ trợ Vì vậy trước khi nghiên cứu về nơron nhân tạo chúng ta sẽtrình bày khái quát về cấu tạo và hoạt động của nơron sinh học
Nơron sinh học có nhiều loại, chúng khác nhau về kích thước và khả năngthu phát tín hiệu Tuy nhiên chúng có cấu trúc và nguyên lý hoạt động chung như sau: 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) Đầu dây thần kinh ra được rẽnhánh nhằm chuyển giao tín hiệu từ thân nơron tới nơron khác Các nhánh của đầudây thần kinh được nối với các khớp thần kinh (synapse) Các khớp thần kinh nàyđược nối với thần kinh vào của các nơron khác Các nơron có thể sửa đổi tín hiệu tạicác khớp Hình ảnh đơn giản của một nơron thể hiện trong hình 1.1
Trang 8Hình 1.1 Mô hình nơron sinh học
Hoạt động của nơron sinh học có thể được mô tả như sau:
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áctí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ửití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àyxác định một hệ số gọi là trọng số liên kết
1.1.3 Nơron nhân tạo.
Mô phỏng nơron sinh học, ta có nơron nhân tạo Mỗi nơron có rất nhiều dây thầnkinh vào, nghĩa là mỗi nơron có thể tiếp nhận đồng thời nhiều dữ liệu
Mạng nơron nhân tạo (Artificial Neural Network) là một cấu trúc mạng đượchình thành nên bởi một số lượng lớn các nơron nhân tạo liên kết với nhau Mỗinơron có các đặc tính đầu vào, đầu ra và thực hiện một chức năng tính toán cục bộ
Với việc giả lập các hệ thống sinh học, các cấu trúc tính toán mạngnơron có thể giải quyết được lớp các bài toán nhất định như: bài toán lập lịch, bài toántìm kiếm, bài toán nhận dạng mẫu, bài toán xếp loại, Mạng nơron còn giải quyếtđược lớp các bài toán sử dụng dữ liệu không đầy đủ, xung đột mờ hoặc xác suất.Những bài toán này được đặc trưng bởi một số hoặc tất cả các tính chất sau: Sử dụngkhông gian nhiều chiều, các tương tác phức tạp, chưa biết hoặc không thể theo dõi về
Trang 9mặt toán học giữa các biến; không gian nghiệm có thể rỗng, có nghiệm duy nhất hoặc
có một số nghiệm bình đẳng như nhau Ngoài ra, mạng nơron nhân tạo còn thích hợp
để tìm nghiệm của những bài toán đòi hỏi đầu vào là những cảm nhận bởi con ngườinhư: Tiếng nói, nhìn và nhận dạng, Tuy nhiên việc ánh xạ từ một bài toán bất kỳsang một giải pháp mạng nơron lại là một việc không đơn giản
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ữngthà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ếthợ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ứcmạ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ộtkiế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 = (ii,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ànhphầ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… Cuối cùng được cộng lại: input1 + input2 + … + inputn Kếtquả là một số duy nhất, không phải là một véc tơ
Trang 10Hà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àmchuyể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ủanơron được xác định bởi vệ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ậttoá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ộtngưỡ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 quantrọ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ớikế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ủahà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épcạ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ả haimức Đầu tiên sự cạnh tranh quyết định xem nơron nhân tạo nào sẽ là tích 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
Trang 11cho 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ọccủ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ộtcách nào đó (thường sử dụng đạo hàm của hàm chuyển đổi), hay là một đầu ra mongmuố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ếtnố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ả mongmuố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ọcchí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áoviê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 quansát,” “người quan sát” này đánh giá kết quả hoạt động của mạng Trong khi không 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 trọngđược thiết kế sẵn trong mạng
1.2 Đơn vị xử lý.
Một đơn vị xử lý (Hình 1.2), 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 haymộ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
Trang 12Hình 1.2: Đơn vị xử lý (Processing unit)
Trong đó:
X j : các đầu vào
w ji: 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)
z j : đầ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;
2) Các đơn vị đầu ra (Output units), gửi dữ liệu ra bên ngoài;
3) Các đơn vị ẩn (Hidden units), tín hiệu vào (input) và ra (output) của nó nằm trongmạng
Mỗi đơn vị j có thể có một hoặc nhiều đầu vào: x0, x1 , x2 , … xn, nhưng chỉ có mộtđầu ra zj
Một đầu vào tới một đơn vị có thể là dữ liệu từ bên ngoài mạng, hoặc đầu ra củamột đơn vị khác, hoặc là đầu ra của chính nó
1.3 Hàm xử lý
1.3.1 Hàm kết hợp
Mỗi một đơn vị 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 các đơn vị khác, sinh ra một giá trị gọi là net input Hàm thực hiện nhiệm vụ này
Trang 13gọi là hàm kết hợp, được định nghĩa bởi một luật lan truyền cụ thể Trong phần lớn cácmạng nơron, giả sử mỗi một đơn vị cung cấp một bộ cộng như là đầu vào cho đơn vị
mà nó có liên kết Tổng đầu vào đơn vị j đơn giản chỉ là tổng trọng số của các đầu ra
riêng lẻ từ các đơn vị kết nối cộng thêm ngưỡng hay độ lệch (bias) θj :
đó thuộc lớp ra, giá trị kích hoạt được đưa vào một hay nhiều đơn vị khác Các hàm kíchhoạt thường bị ép vào một khoảng giá trị xác định, do đó thường được gọi là các hàm bẹp(squashing) Các hàm kích hoạt hay được sử dụng là:
1) Hàm đồng nhất (Linear function, Identity function )
g(x) = x
Trang 14Nếu coi các đầu vào là một đơn vị thì chúng sẽ sử dụng hàm này Đôi khi một hằng số được nhân với net-input để tạo ra một hàm đồng nhất.
Hình 1.3.1 Hàm đồng nhất (Identity function)
2) Hàm bước nhị phân (Binary step function, Hard limit function)
Hàm này cũng được biết đến với tên "Hàm ngưỡng" (Threshold function hayHeaviside function) Đầu ra của hàm này được giới hạn vào một trong hai giá trị:
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,
θ được chọn bằng 1
Hình 1.3.2 Hàm bước nhị phân (Binary step function)
3) Hàm sigmoid (Sigmoid function (logsig))
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ácchương trình ứng dụng mà các đầu ra mong muốn rơi vào khoảng [0,1]
Trang 15Hình 1.3.3 Hàm Sigmoid
4) Hàm sigmoid lưỡng cực (Bipolar sigmoid function (tansig))
Hàm này có các thuộc tính tương tự 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]
Hình 1.3.4 Hàm sigmoid lưỡng cực
Các hàm chuyển của các đơn vị ẩn (hidden units) là cần thiết để biểu diễn sự phituyến vào trong mạng Lý do là hợp thành của các hàm đồng nhất là một hàm đồngnhất Mặc dù vậy nhưng nó mang tính chất phi tuyến (nghĩa là, khả năng biểu diễn cáchàm phi tuyến) làm cho các mạng nhiều tầng có khả năng rất tốt trong biểu diễn các ánh
xạ phi tuyến Tuy nhiên, đối với luật học lan truyền ngược, hàm phải khả vi(differentiable) và sẽ có ích nếu như hàm được gắn trong một khoảng nào đó Do vậy,hàm sigmoid là lựa chọn thông dụng nhất
Đối với các đơn vị đầu ra (output units), các hàm chuyển cần được chọn sao chophù hợp với sự phân phối của các giá trị đích mong muốn Chúng ta đã thấy rằng đối vớicác giá trị ra trong khoảng [0,1], hàm sigmoid là có ích; đối với các giá trị đích mongmuốn là liên tục trong khoảng đó thì hàm này cũng vẫn có ích, nó có thể cho ta các giátrị ra hay giá trị đích được căn trong một khoảng của hàm kích hoạt đầu ra Nhưng nếu các giá trị đích không được biết trước khoảng xác định thì hàm hay được sử
Trang 16dụng nhất là hàm đồng nhất Nếu giá trị mong muốn là dương nhưng không biết cậntrên thì nên sử dụng một hàm kích hoạt dạng mũ.
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)
Tất cả các nơron trong cùng một tầng không có hàm chuyển giống nhau Có thểđịnh nghĩa các nơron trong một tầng có hàm chuyển khác nhau bằng cách kết hợp songsong hai mạng nơron giống ở trên Cả hai sẽ có đầu vào giống nhau, và mỗi mạng sảnxuất ra vài đầu ra
Trang 17Ma trận trọng số cho các phần tử trong vector đầu vào W:
S
R R
w w
w
w w
w
w w w
, 2 , 1 ,
, 2 2 , 2 1 , 2
, 1 2 , 1 1 , 1
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 w32 nói rằng đây là trọng số của đầu vào thứ 2 nối với nơ-ron thứ 3
Trong hình trên, những kí hiệu ở dưới các biến cho biết các thông số về tầng này,
p là một vector có độ dài R, W là ma trận S×R, a và b là những vector có độ dài S Như
đã định nghĩa trước rồi, một tầng bao gồm ma trận trọng số, bộ cộng và các phép toán
nhân, vector ngưỡng b, hàm chuyển và vector đầu ra.
W
b
f +
Trang 181.4.2 Mạng Đa Tầng
Mỗi tầng có ma trận trọng số W của riêng nó, vector b, vector đầu vào n, và một
vector đầu ra Khi đó cần phải khai báo thêm vài kí hiệu để phân biệt giữa các tầng này
Ta sẽ sử dụng cách viết lên trên đầu để nhận biết kí hiệu đó thuộc tầng nào Chính xác làchúng ta gắn thêm chỉ số của tầng trên đầu mỗi biến Như vậy, ma trận trọng số của tầng
thứ 2 được viết như này W2 Cách kí hiệu này được dùng trong mạng nơ-ron 3 tầng như
hình 1.6
Hình 1.6 Cấu trúc mạng nơron 3 lớp
Như đã thấy, có R đầu vào, S1 nơron ở tầng thứ nhất, S2 nơron ở tầng thứ hai,
S3 nơron ở tầng thứ ba, v.v Như đã chú ý, những tầng khác nhau có thể có số lượng nơron khác nhau
Đầu ra của các tầng 1 và 2 là đầu vào của tầng 2 và tầng 3 Vì vậy tầng 2 có thể được xem như mạng nơron một tầng với đầu vào R= S1, nơron S= S2, và ma trận trọng
số W = S1 × S2 Đầu vào của tầng 2 là a1, và đầu ra là a2
Đầu ra của một tầng chính là đầu ra của mạng thì ta gọi đó là tầng ra Các tầng còn lại gọi là tầng ẩn Mạng nơron như ở trên có một tầng ra (tầng 3) và hai tầng ẩn (tầng
1 và tầng 2)
Trang 19Một mạng có ba tầng giống hệt nhau như trên cũng có thể được vẽ gọn lại nhưhình 1.7 :
Hình 1.7 Mạng nơ ron 3 tầng, vẽ rút gọn.
Mạng đa tầng có ứng dụng mạnh hơn mạng một tầng Ví dụ, một mạng hai tầng cótầng thứ nhất là tầng xichma và tầng thứ hai là tầng tuyến tính có thể được huấn luyện đểxấp xỉ mọi hàm toán học tùy ý khá chuẩn Mạng một tầng không làm được điều này
Nếu có bốn yếu tố bên ngoài được dùng như các kích thích đầu vào, thì mạng của
ta sẽ có bốn đầu vào Tương tự như vậy nếu mạng có bảy đầu ra thì phải có bảy nơron ởtầng ra Cuối cùng, các đặc điểm mong muốn có được ở tín hiệu đầu ra cũng giúp ta chọnlựa hàm chuyển hợp lý hơn cho tầng ra Giả sử một đầu ra là một trong hai giá trị -1 hoặc
1, thì khi đó hàm chuyển giới hạn ngặt đối xứng sẽ được lựa chọn Như vậy, kiến trúcmạng một tầng hầu như được xác định hoàn toàn bởi các yếu tố kỹ thuật, bao gồm số đầuvào, đầu ra, và các thuộc tính của tín hiệu ra
Khi mạng có nhiều hơn hai tầng Các yếu tố bên ngoài không cho biết số lượng cácnơron yêu cầu bao nhiêu ở các tầng ẩn Thực tế, có một vài vấn đề cho việc dự đoán sốlượng nơron tối ưu ở tầng ẩn Vấn đề này là một lĩnh vực nghiên cứu
Về số lượng tầng trong mạng thì hầu hết những mạng nơron thực tế chỉ có hai hay
ba tầng Bốn tầng hoặc nhiều hơn rất ít khi được sử dụng
Một mạng có thể chọn lựa việc các nơ-ron có hay không có các giá trị ngưỡng.Giá trị ngưỡng là một biến phụ cho mạng Lưu ý, có một nơron không có giá trị ngưỡng
khi đó đầu vào của hàm chuyển(net input) sẽ luôn luôn là 0 khi đầu vào của mạng p là 0
Trang 20Đây là điều không mong muốn và chúng ta có thể loại bỏ vấn đề này bằng việc sửdụng giá trị ngưỡng Ảnh hưởng của giá trị ngưỡng đến kết quả như thế nào chúng ta sẽphải nghiên cứu sâu hơn Giá trị ngưỡng có thể bỏ đi, trong một số trường hợp điều nàyđược làm đơn giản là để giảm số lượng tham số của mạng Chỉ với hai biến, chúng ta cóthể vẽ được đồ thị cho hệ mặt phẳng hai chiều Ba hay nhiều biến hơn sẽ khó hiển thị.+ Các đặc trưng của mạng nơron.
Mạng nơron là một cấu trúc xử lý song song, thông tin phân tán và có các đặctrưng nổi bật sau:
Là mô hình toán học dựa trên bản chất của nơron sinh học
Bao gồm một số lượng lớn các nơron liên kết với nhau
Mạng nơron có khả năng học, khái quát hoá tập dữ liệu học thôngqua việc gán và hiệu chỉnh các trọng số liên kết
Tổ chức theo kiểu tập hợp mang lại cho mạng nơron khả năng tínhtoán rất lớn, trong đó không có nơron nào mang thông tin riêng biệt
1.5 Các hình trạng của mạng.
Hình trạng của mạng được định nghĩa bởi: số lớp, số đơn vị trên mỗi lớp, và sựliên kết giữa các lớp như thế nào Các mạng về tổng thể được chia thành hai loại dựa trêncách thức liên kết các đơn vị:
Mạng nơron nhân tạo có một số mô hình thông dụng sau:
1.5.1 Mạng truyền thẳng.
- Mạng truyền thẳng một lớp: Là mô hình liên kết cơ bản và đơn giản nhất.Cácnơron tổ chức lại với nhau tạo thành một lớp, tín hiệu được truyền theo một hướngnhất định nào đó Các đầu vào được nối với các nơron theo trọng số khác nhau, sau quátrình xử lý cho ra một chuỗi các tín hiệu ra Nếu mạng là mô hình LTU thì nó được gọi
là mạng perception, còn mạng nơron theo mô hình LGU thì được gọi là Adaline
Trang 21x2 y
2
n
Hình 1.8 Mô hình mạng truyền thẳng một lớp
Với mỗi giá trị đầu vào x =[x1, x2, , xm]T qua quá trình xử lí của mạng sẽ thuđược một bộ đầu ra tương ứng y =[y1, y2, , yn]T
- Mạng truyền thẳng nhiều lớp: Với cấu trúc đơn giản như trên, khi giải quyết cácbài toán phức tạp mạng truyền thẳng một lớp sẽ gặp rất nhiều khó khăn Để khắcphục nhược điểm này, người ta đưa ra mạng truyền thẳng nhiều lớp Đây làmạng truyền thẳng gồm nhiều lớp kết hợp với nhau Lớp nhận tín hiệu gọi là lớp đầuvào (input layer), lớp đưa các tín hiệu ra gọi là lớp đầu ra (output layer), các lớp ởgiữa lớp vào và lớp ra gọi là lớp ẩn (hidden layers) Cấu trúc của mạng nơron truyềnthẳng nhiều lớp được mô tả trong hình 1.9
Hình 1.9 Mạng nơron truyền thẳng nhiều lớp.
1.5.2 Mạng hồi quy
Bên cạnh mạng truyền thẳng còn có những dạng mạng khác như các mạng hồiquy Các mạng hồi quy thường có các liên kết ngược từ các lớp phía sau đến các lớp phíatrước hay giữa các nơron trong bản thân một lớp
Trang 22 Mạng hồi quy một lớp có nối ngược.
Hình 1.10 Mạng hồi quy một lớp có nối ngược.
Mạng hồi quy nhiều lớp có nối ngược
Hình 1.11 Mạng hồi quy nhiều lớp có nối ngược.
1.6 Tiếp cận Nơron cho tính toán.
Trang 23Chức năng của một mạng nơron được quyết định bởi các nhân tố như: hình trạngmạng (số lớp, số đơn vị trên mỗi tầng, và cách mà các lớp được liên kết với nhau) và cáctrọng số của các liên kết bên trong mạng Hình trạng của mạng thường là cố định, và cáctrọng số được quyết định bởi một thuật toán huấn luyện (training algorithm) Tiến trìnhđiều chỉnh các trọng số để mạng “nhận biết” được quan hệ giữa đầu vào và đích mongmuố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 các bài toán Các thuậttoán đó có thể chia làm hai nhóm chính: Học có giám sát (Supervised learning) và Họckhông có giám sát (Unsupervised Learning).
a Học có giám sát.
Đây là phương pháp phổ biến nhất để đào tạo một mạng nơ ron nhân tạo nhằm tìm
ra lời giải phù hợp cho bài toán Theo cơ chế này, đầu ra thực sự của mạng được so sánhvới đầu ra mong muốn Các trọng số thường được gán ngẫu nhiên trước khi bắt đầu đàotạo sau đó được hiệu chỉnh bởi mạng đó để trong lần lặp tiếp theo, hay chu kỳ tiếp theo,
sẽ tạo ra một kết quả gần với kết quả mong muốn hơn Các phương pháp học nhìn chungđều cố gắng giảm thiểu các lỗi hiện thời của các thành phần xử lý Để từ đó giảm lỗi toàn
cụ cho mạng, việc giảm lỗi toàn cục này diễn ra liên tục nhằm thay đổi các trọng số vàocho tới khi đạt được độ chính xác chấp nhận được
Với học có giám sát, mạng nơ ron nhân tạo phải được đào tạo trước khi có thể sửdụng Việc đào tạo bao gồm đưa dữ liệu đầu vào và đầu ra vào mạng Dữ liệu này thườngđược gọi là tập đào tạo Có nghĩa là với mỗi tập đào vào được cung cấp cho hệ thống cómột tập đầu ra mong muốn tương ứng Trong hầu hết các ứng dụng, dữ liệu thực sự thuthập từ thế giới thực được sử dụng Giai đoạn đào tạo này thường tốn khá nhiều thời gian.Trong các hệ thống bản mẫu, với sức mạnh xử lý không đáp ứng yêu cầu, việc học
có thể diễn ra trong nhiều tuần Việc đào tạo được coi là hoàn thành khi mà mạng nơ ronđạt đến mức độ chính xác do người sử dụng đề ra Mức độ này có ý nghĩa là mạng đã đạtđược độ chính xác thống kê mong muốn, nó sinh ra kết quả đầu ra do người sử dụng đặt
ra với một tập đầu vào cho trước Khi không cần học thêm nữa, các trọng số thường đượcduy trì cố định cho ứng dụng đó Một số kiểu mạng cho phép tiếp tục học, sau khi đãđược đưa vào hoạt động, nhưng ở tốc độ thấp hơn nhiều Điều này giúp cho mạng thích
Trang 24nghi dần dần với những điều kiện thay đổi trong thế giới thực sau khi đã được đưa vào sửdụng
Tập đào tạo thường phải khá lớn để đạt được tất cả các thông tin cần thiết, để mạng
có thể học được các đặc tính và những mối quan hệ quan trọng từ tập đó Không chỉ tậpđào tạo phải lớn mà các phiên đào tạo phải thực hiện với những dữ liệu đa dạng khácnhau Nếu như mạng được đào tạo chỉ một ví dụ một lần thì có thể tất cả các trọng sốđược điều chỉnh cố định một cách tỉ mỉ tương ứng với một nhân tố điển hình trong ví dụ
đó, nhưng nhân tố này có thể bị thay đổi rất nhiều trong lần học tiếp theo (khi mạng học
về một nhân tố khác, sử dụng một ví dụ khác) Các nhân tố trước có thể bị quên đi khi màhọc về một nhân tố mới Do vậy mà hệ thống phải học mọi thứ cùng lúc, tìm ra sự sắpđặt trọng số tốt nhất với tất cả các nhân tố của dữ liệu Ví dụ để dạy hệ thống nhận dạngcác mẫu pixel của 10 số, nếu như có 20 ví dụ cho mỗi số, toàn bộ các ví dụ về số 7 nênđược đưa vào mạng ở cùng thời điểm
Dữ liệu vào ra được đưa vào mạng như thế nào (hay được mã hóa như thế nào) làmột yếu tố rất quan trọng để giúp cho mạng làm việc thành công Mạng nơ ron nhân tạochỉ giải quyết được dữ liệu vào dạng số Vậy nên, dữ liệu thô từ môi trường bên ngoàiphải được chuyển đổi Cần phải phân phạm vi cho dữ liệu, hay là chuẩn hóa nó cho phùhợp với kiểu mạng Quá trình tiền xử lý này đã khá phổ biến với máy tính truyền thốngnhư thông qua camera, cảm biến (sensors), hay là máy có thể đọc (readable machines)… Sau khi đã đào tạo có giám sát xong cần phải kiểm tra xem mạng có thể làm gì với
dữ liệu mà nó chưa hề gặp trước đó Nếu như hệ thống cho một đầu ra không đủ tốt vớitập dữ liệu kiểm tra, thì quá trình đào tạo chưa thể kết thúc được Thực sự việc kiểm tranày là rất quan trọng nhằm đảm bảo là mạng không chỉ đơn giản nhớ một tập dữ liệu chotrước mà đã học được những mẫu chung, phát hiện các đặc tính xuất hiện bên trong ứngdụng
b Học không có giám sát.
Với cách học không có giám sát, không có phản hồi từ môi trường để chỉ ra rằngđầu ra của mạng là đúng Mạng sẽ phải khám phá các đặc trưng, các điều chỉnh, các mốitương quan, hay các lớp trong dữ liệu vào một cách tự động Trong thực tế, đối với phầnlớn các biến thể của học không có giám sát, các đích trùng với đầu vào Nói một cách
Trang 25khác, học không có giám sát luôn thực hiện một công việc tương tự như một mạng tự liênhợp, cô đọng thông tin từ dữ liệu vào.
Học không có giám sát là một hứa hẹn lớn trong tương lai Máy tính nên tự họcnhư một robot thực sự Hiện nay phương pháp này vẫn còn nhiều hạn chế với cấu trúcmạng nơ ron đã biết đến gọi là các ánh xạ tự sắp xếp Loại mạng nơ ron này vẫn chưađược sử dụng rộng rãi Tuy nhiên người ta đã chứng minh được rằng chúng cung cấp mộtgiải pháp cho một số dạng bài toán nhất định.
1.6.2 Tốc độ học.
Tốc độ học của một mạng nơ ron nhân tạo phụ thuộc vào một số nhân tố có thể điềukhiển Việc lựa chọn cách tiếp cận vấn đề có rất nhiều yếu tố cần phải xem xét Rõ ràngrằng tốc độ học thấp hơn đồng nghĩa với việc phải tiêu tốn nhiều thời gian hơn để đào tạomạng để thu được một mạng được đào tạo đủ tốt Tuy nhiên với tốc độ học nhanh hơn thìmạng có thể không đủ khả năng tạo ra kết quả tốt như là một mạng học chậm hơn thế.Các nhà nghiên cứu đang nghiên cứu để dung hòa hai vấn đề này
Cần phải xem xét một số nhân tố bên cạnh nhân tố thời gian trong khi đề cập đếnnhiệm vụ đào tạo, điều này rất phức tạp Tất cả các yếu tố như: độ phức tạp, kích cỡ, việcchọn mô hình, kiến trúc, kiểu luật học, các luật được sử dụng, và độ chính xác mongmuốn của mạng cần phải được xem xét Những nhân tố này đóng vai trò hết sức quantrọng trong việc mất bao lâu để đào tạo mạng Việc thay đổi một trong những nhân tố này
có thể kéo dài thời gian đào tạo tới một độ đài quá lớn hay thậm chí thu được kết quả có
độ chính xác không thể chấp nhận được
Hầu hết các hàm học đều có tốc độ học hay gọi là hằng học Thường thì số hạng này
là dương và nằm trong khoảng (0, 1) Nếu như tốc độ lớn hơn 1 thì thuật toán học điềuchỉnh các trọng số của mạng quá dễ dàng và khi đó mạng làm việc không ổn định Cácgiá trị tốc độ học nhỏ sẽ không điều chỉnh lỗi hiện thời nhanh, nhưng nếu chỉ cần thựchiện một số bước nhỏ để điều chỉnh lỗi thì không khó khăn lắm để đạt được độ hội tụ tốtnhất
Trang 261.6.3 Các luật học.
Có rất nhiều luật học khác nhau được sử dụng Hầu hết những luật này là dạngbiến đổi của luật học cổ điển nổi tiếng Hebb
Luật học của Hebb: Luật học đầu tiên và cũng là luật học được biết đến nhiều nhất
là luật học được giới thiệu bởi Donald Hebb Ý tưởng chính của nó là: nếu như mộtnơron nhận một đầu vào từ một nơron khác và nếu như cả hai đều hoạt động ở mức độtích cực cao (về toán học có nghĩa là có cùng dấu) thì trọng số giữa hai nơ ron nên đượclàm mạnh lên
Luật học của Hopfield : Nó giống như luật của Hebb với điều khác biệt là nó chỉ
rõ độ lớn của việc làm mạnh hay làm yếu Nó được phát biểu: “Nếu như đầu ra mongmuốn và đầu vào đều tích cực (active) hay là đều không tích cực (inactive), thì tăng trọng
số kết nối một lượng bằng tốc độ học, ngược lại giảm trọng số đó một lượng bằng tốc độhọc.”
Luật học Delta: Luật này biến đổi luật học Hebb nhiều hơn nữa Nó là một trong
những luật được sử dụng nhiều nhất Luật này được dựa trên ý tưởng đơn giản là tiếp tụchiệu chỉnh các sức mạnh của các kết nối vào để giảm sự khác biệt (giá trị delta) giữa giátrị đầu ra mong muốn và đầu ra thực sự của thành phần xử lý Luật này thay đổi trọng sốsao cho nó giảm thiểu lỗi bình phương trung bình của mạng Luật này cũng còn được gọi
là luật học Widrow-Hoff hay là luật học bình phương trung bình tối thiểu
Cách mà luật Delta hoạt động là lỗi delta trong tầng ra được biến đổi bởi đạo hàmcủa hàm chuyển đổi và sau đó được sử dụng trong tầng nơ ron trước đó để điều chỉnh cáctrọng số kết nối Nói cách khác lỗi này được truyền ngược về tầng trước nó một tầng.Quá trình truyền ngược lỗi của mạng tiếp tục cho tới khi tới truyền tới tầng đầu tiên Khi
sử dụng luật delta cần phải đảm bảo rằng tập dữ liệu vào được chọn với tính ngẫu nhiêncao Nếu như tập đào tạo được biểu diễn (đưa vào mạng) có thứ tự hay cấu trúc rõ ràngthì có thể dẫn tới một mạng nơ ron không thể hội tụ tới độ chính xác mong muốn Nếunhư điều này xẩy ra thì mạng không còn khả năng học nữa
Trang 27Luật học giảm gradient: Luật này giống với luật delta là đạo hàm của hàm chuyển
đổi vẫn được dùng để hiệu chỉnh giá trị lỗi delta trước khi nó được dùng để tính toán cáctrọng số kết nối Tuy nhiên luật này sử dụng thêm một hằng tỷ lệ, hằng này được kết hợpvới (gắn vào) tốc độ học, sau đó được thêm vào nhân tố hiệu chỉnh cuối cùng ảnh hưởngtới trọng số Luật này cũng được dùng phổ biến, mặc dù tốc độ hội tụ của nó về một điểm
ổn định là khá chậm
Khi sử dụng những tốc độ học khác nhau cho những tầng khác nhau của mạng giúpcho quá trình học của mạng hội tụ nhanh hơn Trong thực tế các tốc độ học cho nhữngtầng gần đầu vào là chậm hơn so với tốc độ học của những tầng gần đầu ra Điều này làrất quan trọng với những ứng dụng mà dữ liệu vào không thu được từ những mô hìnhkhông được mô hình hóa tốt
Luật học của Kohonen: Thủ tục này, được phát triển bởi Teuvo Kohonen, xuất
phát từ việc học của các hệ thống sinh học Trong thủ tục này, các thành phần xử lý cạnhtranh để có cơ hội được học, hay là cập nhật các trọng số của chúng Thành phần xử lývới đầu ra lớn nhất được gọi là “người chiến thắng” và khi đó có khả năng cản trở các đốithủ của nó và kích hoạt các nơ ron lân cận nó Chỉ có “người chiến thắng” được phép đưa
ra đầu ra, và chỉ có nó và những nơ ron lân cận được phép điều chỉnh các trọng số kết nốicủa chúng
Kích thước của khu vực lân cận chỉ có thể được thay đổi trong thời gian đào tạo Môhình thường gặp là bắt đầu với một khu vực lân cận khá lớn, và thu hẹp dần trong quátrình đạo tạo mạng Bởi vì thành phần chiến thắng được xác định là nơ ron có kết quảgần với mẫu vào nhất Phương pháp này phù hợp với mô hình hóa dữ liệu thống kê vàthường được gọi là các ánh xạ tự sắp xếp hay là kiến trúc tự sắp xếp
1.7 Phạm vi ứng dụng của mạng nơron.
1.7.1 Những bài toán thích hợp.
Mạng nơron được coi như một hộp đen để biến đổi véc tơ đầu vào m biếnthành vectơ đầu ra n biến Tín hiệu ra có thể là các tham số thực (tốt nhất nằm trongkhoảng [0,1], hoặc [-1,1], số nhị phân 0,1, hay số lưỡng cực -1, +1) Số biến của
Trang 28vectơ ra không hạn chế song sẽ ảnh hưởng tới thời gian tính và tải nguyên liệu củamáy tính Nói chung, các lớp bài toán áp dụng cho nơron có thể phân chia làm 4loại:
Khi phải phân loại một quyết định phức tạp, chúng ta phải bắt đầu với việcnghiên cứu, thống kê các mối liên quan giữa nhiều đối tượng Việc xây dựng một câyphân lớp và các quyết định phải được thực hiện trước khi thủ tục học được tiến hành.Nếu kết quả cuối cùng không thoả mãn, chúng ta cần phải xem xét lại cách biểu diễncác đối tượng hoặc cây phân lớp hoặc thay đổi cả hai
Trang 291.7.3 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ặcmột số nguyên định danh các đối tượng đầu vào thuộc lớp nào 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 quá trình mô hình hoácần một số lượng nhỏ các số liệu để 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 Việc tìm ra đường cong phù hợp với các sốliệu thực nghiệm là một trong những ứng dụng thuộc dạng này Trong bất kỳ loại môhình nào cũng phải tuân theo một giả định là: Các thay đổi nhỏ của tín hiệu vào 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 ưu thế hơn so với các mô hìnhhoá cổ điển sử dụng các hàm giải tích Bởi vì trong phương pháp mô hình hoá cổ điển,đối với mỗi đầu ra ta phải xác định một hàm cụ thể cùng một bộ các tham số Trongkhi đó đối với mạng nơron thì không phải quan tâm tới những hàm đó Tuy nhiên,trong các phương pháp mô hình hoá cổ điển, các hệ số có thể có một số ý nghĩa nào
đó đối với vấn đề cần giải quyết, trái lại các trọng số của mạng không mang một ý nghĩanào cả
Trong nhiều ứng dụng khá đặc biệt, khi sai số thực hiện khá lớn chúng ta có thể
mô hình hoá bằng cách cân xứng hoá giữa tín hiệu vào và tín hiệu ra Trong các trườnghợp này, sử dụng mạng như một bảng tra là đủ, mặc dù các bảng này sẽ cho lời giảigống nhau trong một khoảng nào đó của tín hiệu vào
Đối với việc chọn chiến lược học, chúng ta cần quan tâm tới sự phân bố của cácđối tượng dùng để học Nếu số lượng đối tượng dùng cho việc học làít và được phân bốđều trong toàn không gian, khi đó số liệu có thể được dùng ngay cho việc mô hình hoá.Nhứng nếu các đối tượng là nhiều, sẵn có nhưng phân bố ngẫu nhiên trong không gianbiến, đầu tiên ta phải giảm thiểu chúng sao cho vẫn bao trùm toàn không gian, sau đómới dùng làm số liệu cho việcmô hình hoá
Trang 301.7.4 Liên kết.
Liên kết là tìm ra đối tuợng đích có mối quan hệ với một đối tượng vào, thậm chí
cả khi đối tượng vào bị hỏng hoặc hoàn toàn không biết Theo một nghĩa nào đó, liênkết có thể được coi là phân loại Thủ tục học cho vấn đề này là học có tín hiệu chỉđạo
Lĩnh vực nghiên cứu các quá trình phụ thuộc thời gian là một trong nhữnglĩnh vực chính trong nghiên cứu quá trình điều khiển Người sử dụng dự báo đượchành vi của hệ thống đa biến dựa trên một chỗi số liệu được ghi nhận theo thờigian Trong mô hình hoá phụ thuộc thời gian, các biến của các tín hiệu vào bao gồmcác giá trị hiện tại và quá khứ của các biến quá trình, trong đó tín hiệu ra dự đoán giátrị trong tương lai của những biến quá trình đó Các hiểu biết này có thể có độ dài tuỳ
ý, nhưng trong quá trình kiểm soát, hiểu biết tương lai chỉ bao gồm một bước thời gian.Việc học dịch chuyển tới bước tiếp theo tạo ra các cửa sổ bao gồm số bước thời giancủa vectơ ra Để tạo ra mô hình hoàn chỉnh của một quá trình, tất cả các biến quá trìnhphải được huấn luyện tại đầu ra của mạng, nhưng không phải tất cả các biến trongquá trình đều ảnh hưởng như nhau đối với kết quả cuối cùng, chỉ có một số biến làđáng quan tâm Do đó chúng ta chỉ phải chọn các biến đó cho quá trình học
Kỹ thuật dịch chuyển cửa sổ có thể được sử dụng để giải quyết các vấn đề chuỗicác sự kiện và đối tượng như trong các lĩnh vực về môi trường theo thời gian, kiểm soáthỏng hóc
1.8 Các lĩnh vực ứng dụng của mạng nơron.
Kể từ khi ra đời và phát triển mạng nơron đã được ứng dụng trong rất nhiềulĩnh vực Do vậy, liệt kê được tất cả các ứng dụng của mạng nơron là không thực tế.Tuy nhiên, ta có thể đưa ra một số ứng dụng điển hình của mạng nơron như sau:
Xử lý ảnh, nhìn máy: Gồm trùng khớp ảnh, tiền xử lý ảnh, phân
đoạn và phân tích ảnh, nén ảnh,
Trang 31 Xử lý tín hiệu: Phân tích tín hiệu địa chấn và hình thái học.
Nhận dạng mẫu: Gồm việc tách các nét đặc biệt của mẫu, phân loại và phântích tín hiệu của rada, nhận dạng và hiểu tiếng nói, nhận dạng vân tay, ký tự,chữ viết,
Y học: Phân tích và hiểu tín hiệu điện tâm đồ, chuẩn đoán bệnh, xử lý ảnh yhọc
Quân sự: Các hệ phát hiện thuỷ lôi, phân loại luồng rada, nhận dạng nguờinói
Các hệ tài chính: Gồm phân tích thị trường chứng khoán, định giá bất độngsản, cấp phát thẻ tín dụng và thương mại an toàn
Trí tuệ nhân tạo: Gồm các hệ chuyên gia,
Dự đoán: Dự đoán các trạng thái của hệ thống,
Quy hoạch, kiểm tra và tìm kiếm: Gồm cài đặt song song các bài toán thoả mãnràng buộc, tìm nghiệm bài toán người du lịch, điều khiển và robot
1.9 Ưu nhược điểm của mạng nơron.
+ Ưu điểm:
Xử lý song song
Thiết kế hệ thống thích nghi
Không đòi hỏi các đặc trưng mở rộng của bài toán (chủ yếu dựa trên tập học)
Có thể chấp nhận lỗi do tính song song
+ Nhược điểm:
Không có các quy tắc hoặc hướng dẫn thiết kế rõ ràng đối với một ứng dụngnhất định
Không có cách tổng quát để đánh giá hoạt động bên trong mạng
Việc học đối với mạng có thể khó (hoặc không thể) thực hiện
Khó có thể đoán trước được hiệu quả của mạng trong tương lai (khả năng tổngquát hoá)
Trang 321.10 Nhận xét
Mạng truyền thẳng và mạng hồi quy là hai mô hình tiêu biểu của mạng nơronnhân tạo, Mỗi loại mạng sẽ có những ưu nhược điểm riêng Nắm vững những ưu nhượcđiểm của chúng sẽ gúp ta lựa chọn mô hình mạng thích hợp cho từng ứng dụng sẽ thiết
kế Những ưu nhược điểm của từng mô hình mạng sẽ được thể hiện qua những nhận xétsau:
Mạng truyền thẳng một lớp dễ phân tích nhưng không mô tả được mọihàm Mạng nhiều lớp khắc phục được nhược điểm trên nhưng lại rất khó phântích và gặp khó khăn trong quá trình xây dựng mạng Mặt khác mạng truyềnthẳng nhiều lớp có thể gây sai số tích luỹ qua các lớp
Mạng phản hồi một lớp (tiêu biểu là mạng Hopfield) có cấu trúc đơn giản vì thế
dễ phân tích, không chứa sai số tích luỹ
Mạng nơron truyền thẳng chỉ đơn thuần tính toán các tín hiệu ra dựa trên cáctín hiệu vào và trọng số liên kết giữa các nơron đã xác định sẵn ở trong mạng
Do đó chúng không có trạng thái bên trong nào khác ngoài trọng số W Đốivới mạng hồi quy, trạng thái bên trong của mạng được lưu trữ tại các ngưỡngcủa nơron Nói chung các mạng hồi quy không ổn định, mạng cần phải tính toánrất lâu, thậm chí có thể lặp vô hạn trước khi đưa ra kết quả mong muốn Quátrình học của mạng hồi quy cũng phức tạp hơn mạng truyền thẳng rất nhiều.Tuy vậy các mạng hồi quy có thể cho phép mô phỏng các hệ thống tương đốiphức tạp trong thực tế