1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số kỹ thuật mô hình hóa và áp dụng cho bài toán dự báo kết quả tuyển sinh đại học

67 49 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 67
Dung lượng 1,32 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Một số kỹ thuật mô hình hóa dữ liệu được áp dụng nhằm dự báo kết quả tuyển sinh Đại học sẽ giúp cho học sinh THPT biết được năng lực và khả năng thi tuyển đầu vào của các trường Đại học,

Trang 1

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CNTT&TT

Điêu Thiện Chiến

MỘT SỐ KỸ THUẬT MÔ HÌNH HÓA VÀ ÁP DỤNG CHO BÀI TOÁN DỰ BÁO KẾT QUẢ TUYỂN SINH ĐẠI HỌC

LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH

Người hướng dẫn: GS TS Nguyễn Thanh Thủy

Thái Nguyên, tháng 01 năm 2014

Trang 2

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

MỤC LỤC

MỤC LỤC 1

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT 3

DANH MỤC CÁC BẢNG 4

DANH MỤC CÁC HÌNH 5

MỞ ĐẦU 6

NỘI DUNG 7

Chương 1: Các phương pháp mô hình hóa dữ liệu 7

1.1 Phương pháp trực quan 7

1.1.1 Quan sát các hoạt động không theo chủ quan 7

1.1.2 Trực quan và đòi hỏi của nhận thức 7

1.1.3 Vẽ sơ đồ dữ liệu trên lược đồ trực quan 7

1.2 Phương pháp truyền thống 7

1.2.1 Phương pháp thống kê 7

1.2.2 Phương pháp cây quyết định và luật 8

1.2.3 Các luật kết hợp 8

1.2.4 Mạng Nơron 8

1.2.5 Giải thuật di truyền 8

1.3 Phương pháp khác 9

1.3.1 Phân nhóm và phân đoạn 9

1.3.2 Phương pháp suy diễn và quy nạp 9

1.3.3 Các phương pháp dựa trên mẫu 9

Chương 2: Mạng Nơron truyền thẳng và thuật toán lan truyền ngược 9

2.1 Tổng quan về mạng Nơron 9

2.1.1 Lịch sử phát triển 9

2.1.2 Khái niệm cơ bản 12

2.1.3 Mô hình mạng nơron nhân tạo 14

2.1.3.1 Đơn vị xử lý 14

2.1.3.2 Hàm xử lý 15

2.2 Học và lan truyền trong mạng 19

2.2.1 Học và tổng quát hóa 19

2.2.1.1 Học có giám sát 20

2.2.1.2 Học tăng cường 22

2.2.1.3 Học không giám sát 22

2.2.2 Lan truyền trong mạng: 24

Trang 3

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.3 Hàm mục tiêu 24

2.4 Mạng nơ ron truyền thẳng 25

2.5 Khả năng thể hiện của mạng 27

2.6 Thiết kế cấu trúc mạng 28

2.6.1 Số lớp ẩn 28

2.6.2 Số nơron trong lớp ẩn 29

2.7 Thuật toán lan truyền ngược (Back-Propagation) 30

2.7.1 Mô tả thuật toán 31

2.7.2 Sử dụng thuật toán lan truyền ngược 32

2.7.2.1 Lựa chọn cấu trúc mạng 32

2.7.2.2 Quá trình hội tụ 33

2.7.2.3 Tổng quát hóa 33

2.7.3 Biến thể của thuật toán lan truyền ngược 34

2.7.3.1 Sử dụng tham số bước đà 34

2.7.3.2 Sử dụng hệ số học biến đổi 35

2.7.3.3 Sử dụng phương pháp Gradient kết hợp 36

2.7.4 Nhận xét: 40

Chương 3: Ứng dụng mạng Nơ ron truyền thẳng và thuật toán lan truyền ngược vào bài toán “Dự báo kết quả tuyển sinh Đại học” 42

3.1 Tổng quan về bài toán dự báo 42

3.1.1 Phương pháp định tính 42

3.1.2 Phương pháp định lượng 43

3.2 Bài toán dự báo kết quả tuyển sinh Đại học 44

3.2.1 Các yếu tố ảnh hướng đến quá trình thiết kế và xây dựng 44

3.2.2 Các bước chính trong quá trình thiết kế và xây dựng 45

3.3 Mô hình “Dự báo kết tuyển sinh Đại học” 51

3.3.1 Thiết lập mô hình chương trình 51

3.3.2 Nhận xét kết quả 51

3.3.2.1 Đồ thị hàm lỗi 56

3.3.2.2 Kiểm tra sau khi mô hình hóa 57

KẾT LUẬN 60

TÀI LIỆU THM KHẢO 62

PHỤ LỤC 63

PHỤ LỤC A – GIỚI THIỆU VỀ PHẦN MỀM DỰ BÁO SpiceMLP 63

PHỤ LỤC B – DỮ LIỆU HỌC VÀ DỮ LIỆU KIỂM TRA 66

Trang 4

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Time_X: thời gian tự học

Time_Y: thời gian học thêm

Pressure: áp lực

Point_School: tổng điểm 3 môn thi Đại học ở bậc THPT

Mark: tổng điểm thi Đại học

Group: nhóm

MLP: mạng nơron truyền thẳng nhiều lớp

Trang 5

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

DANH MỤC CÁC BẢNG

3.1 Dữ liệu thu thập được 43 3.2 Dữ liệu đầu vò và đầu ra của mạng 48

Trang 6

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

DANH MỤC CÁC HÌNH

2.1 Cấu tạo của tế bào nơron sinh học 8

2.2 Mô hình nơron nhân tạo 8

2.3 Đơn vị xử lý 10

2.4 Hàm đồng nhất 12

2.5 Hàm bước nhị phân 12

2.6 Hàm sigmoid 13

2.7 Hàm sigmoid lưỡng cực 13

2.8 Sơ đồ học tham số có giám sát 17

2.9 Sơ đồ học tăng cường 17

2.10 Sơ đồ học không giám sát 18

2.11 Sơ đồ mạng nơron truyền thẳng nhiều lớp 20

2.12 Xác định tần số 33

2.13 Giảm kích thước của tần số không chắc chắn 34

3.1 Màn hình làm việc ban đầu của chương trình 50

3.2 Thiết lập các thông số cho mạng 51

3.3 Kết quả của mạng học 52

3.4 Đồ thị hàm lỗi 53

3.5 Đồ thị đầu ra của dữ liệu học 53

3.6 Đồ thị dữ liệu kiểm tra 54

Trang 7

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

MỞ ĐẦU

Bài toán dự báo tuyển sinh Đại học ngày càng được các trường Cao đẳng và Đại học quan tâm trong bối cảnh, nhiều trường được thành lập và gặp khó khăn về tuyển sinh đầu vào Học sinh sau khi tốt nghiệp THPT lựa chọn ngành dự thi còn chưa phù hợp với năng lực của mình cũng như nhu cầu việc làm của xã hội Sinh viên ra trường chưa có việc làm đúng ngành nghề của mình còn nhiều

Một số kỹ thuật mô hình hóa dữ liệu được áp dụng nhằm dự báo kết quả tuyển sinh Đại học sẽ giúp cho học sinh THPT biết được năng lực và khả năng thi tuyển đầu vào của các trường Đại học, Cao đẳng

Mạng nơron truyền thẳng và thuật toán lan truyền ngược được áp dụng để dự báo kết quả tuyển sinh Đại học Số liệu thu thập từ các sinh viên trường Đại học Hùng Vương Phú Thọ Bài toán dự báo dựa vào các yếu tố có ảnh hưởng đến kết quả tuyển sinh Đại học của thí sinh

Trang 8

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

NỘI DUNG Chương 1: Các phương pháp mô hình hóa dữ liệu

1.1 Phương pháp trực quan.[1]

1.1.1 Quan sát các hoạt động không theo chủ quan

Kỹ thuật khai phá dữ liệu trực quan cung cấp cho người khai phá khả năng đầy đủ để quan sát các hoạt động mà không theo định kiến cá nhân nào

cả Điều đó có nghĩa là ta không cần phải biết là cần phải tìm kiếm cái gì trong thời gian sáp tới Hơn thế, bạn có thể bắt dữ liệu chỉ ra cho bạn thấy cái

gì là quan trọng

1.1.2 Trực quan và đòi hỏi của nhận thức

Có thể sự mở rộng lớn nhất trong việc sử dụng trực quan trong các phương pháp khai phá dữ liệu là phương pháp trực quan cốt để làm nổi bật khả năng nhận thức, kinh nghiệm của con người có thể làm tốt và một số công việc khác lại làm rất tốt Việc lựa chọn phương pháp nghiên cứu thường phải

có sự cân nhắc về kiểu xử lý thông tin mà người đó đòi hỏi trong suất quá trình nghiên cứu

1.1.3 Vẽ sơ đồ dữ liệu trên lược đồ trực quan

Khi đưa dữ liệu vào trong một môi trường trực quan, bạn phải quyết định làm sao để trình bày dữ liệu theo một kiểu cách có ý nghĩa Hoạt động này tập trung vào sử dụng những thuộc tính của các phần tử dữ liệu đã được định nghĩa trong mô hình để xác định làm sao thông tin sẽ được nhìn thấy và cảm nhận bạn có thể chọn những giải thuật xác định vị trí như gộp nhóm, phân cụm, …

1.2 Phương pháp truyền thống

1.2.1 Phương pháp thống kê

Trong phương pháp này, ta sử dụng những thông tin được thống kê để suy luận và miêu tả xa hơn trong phân tích dữ liệu

Trang 9

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Trong hệ thống hỗ trợ quyết định thì việc dùng phương pháp thống kê

là rất phổ biến

1.2.2 Phương pháp cây quyết định và luật

Cây quyết định là công cụ phân tích để khám phá ra các luật và mối quan hệ bằng phương pháp phân tích thống kê phân chi thành các phần nhỏ các thông tin chứa trong tập dữ liệu

Cây quyết định là một mô tả tri thức dạng đơn giản nhằm phân các đối tượng

dữ liệu thành một số lóp nhất định Các nút của cây được gán nhãn là tên các thuộc tính, các cạnh được gán các giá trị cụ thể các thuộc tính, các lá miêu tả các lớp khác nhau Các đối tượng được phân lớp theo các đường đi trên cây, các cạnh tương ứng với giá trị các thuộc tính của đối tượng tới lá

1.2.3 Các luật kết hợp

Những luật kết hợp được dẫn xuất ra từ sự phân tích các thông tin trùng hợp Phương pháp luật kết hợp này cho phép khám phá những tương quan, hoặc những biến cố trong giao dịch là các sự kiện

Các luật kết hợp là một dạng biểu diễn tri thức, hay chính xác hơn là dạng mẫu của hình thành tri thức Phương pháp này nhằm phát hiện ra các luật kết hợp giữa các hình thành phân dữ liệu trong cơ sở dữ liệu Mẫu đầu ra của giải thuật khai phá dữ liệu là các tập luật kết hợp tìm được

1.2.4 Mạng Nơron

Mạng nơron là một hệ thống bao gồm rất nhiều phần tử xử lý đơn giản cùng hoạt động song song Tính năng hoạt động của hệ thống này phụ thuộc vào cấu trúc của hệ thống, vào cường độ liên kết giữa các phần tử trong hệ thống và dựa vào quá trình xử lý bên trong các phần tử đó Hệ thống này có thể học từ các dữ liệu có khả năng tổng quát hóa các dữ liệu đó

1.2.5 Giải thuật di truyền

Giải thuật di truyền được phát triển mô phỏng lại hệ thống tiến hóa trong tự nhiên, chính xác hơn đó là giải thuật chỉ ra tập các cá thể được hình

Trang 10

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

thành, được ước lượng và biến đổi như thế nào Giải thuật cũng mô phỏng lại yếu tố gen trong nhiễm sắc thể sinh học trên máy tính để có thể giải quyết nhiều bài toán thực tế khác nhau

Giải thuật di truyền dựa trên ba cơ chế cơ bản: Chọn lọc, tương giao chéo và

đột biến.[1]

1.3 Phương pháp khác

1.3.1 Phân nhóm và phân đoạn

Phương pháp phân nhóm và phân đoạn là những kỹ thuật phân chia dữ liệu sao cho mỗi phần hoặc một nhóm giống nhau theo một tiêu chuẩn nào đó

1.3.2 Phương pháp suy diễn và quy nạp

Một cơ sở dữ liệu là một kho thông tin những các thông tin quan trọng hơn cũng có thể được suy diễn từ kho thông tin đó Có hai kỹ thuật chính để thực hiện việc này là suy diễn và quy nạp

Phương pháp suy diễn: Nhằm rút ra những thông tin là kết quả logic của các

thông tin trong cơ sở dữ liệu, dựa trên các quan hệ trong dữ liệu

Phương pháp quy nạp: Nhằm suy ra các thông tin được sinh ra từ cơ sở dữ

liệu

1.3.3 Các phương pháp dựa trên mẫu

Sử dụng các mẫu miêu tả ừ cơ sơ dữ liệu để tạo nên mọt mô hình dự đoán các mẫu mới dằng cách rút ra các thuộc tính tương tự như các mẫu đã biết trong mo hình Ở đây, nhiệm vụ chính là phải xác định được độ đo giống

nhau giữa các mẫu, sau đó mới rạo ra mẫu dự đoán.[1]

Chương 2: Mạng Nơron truyền thẳng và thuật toán lan truyền ngược 2.1 Tổng quan về mạng Nơron

2.1.1 Lịch sử phát triển

Khái niệm mạng nơ-ron được đề xuất nhằm mô tả hoạt động của nơron trong bộ não con người Ý tưởng này bắt đầu được nêu ra trong mô hình tính toán mạng Perceptron (Perceptron là một bộ phân loại tuyến tính dành cho

Trang 11

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

việc phân loại dữ liệu xác định bằng các tham số và

Dưới đây là các mốc trong các nghiên cứu về mạng nơron;[5]

Cuối TK 19, đầu TK 20, sự phát triển chủ yếu chỉ là những công việc

có sự tham gia của cả ba ngành Vật lý học, Tâm lý học và Thần kinh học, bởi các nhà khoa học như Hermann von Hemholtz, Ernst Mach, Ivan Pavlov Các công trình nghiên cứu của họ chủ yếu đi sâu vào các lý thuyết tổng quát về HỌC (Learning), NHÌN (vision) và LẬP LUẬN (conditioning), và không

hề đưa ra những mô hình toán học cụ thể mô tả hoạt động của các nơron

• Mọi chuyện thực sự bắt đầu vào những năm 1940 với công trình của Warren McCulloch và Walter Pitts Họ chỉ ra rằng về nguyên tắc, mạng của các nơron nhân tạo có thể tính toán bất kỳ một hàm số học hay logic nào!

• Tiếp theo hai người là Donald Hebb phát biểu rằng: việc thuyết lập luận cổ điển (classical conditioning) (như Pavlov đưa ra) là hiện thực bởi do các thuộc tính của từng nơron riêng biệt Ông cũng nêu ra một phương pháp học của các nơron nhân tạo

• Ứng dụng thực nghiệm đầu tiên của các nơron nhân tạo có được vào cuối những năm 50 cùng với phát minh của mạng nhận thức (perceptron network) và luật học tương ứng bởi Frank Rosenblatt Mạng này có khả năng nhận dạng các mẫu Điều này đã mở ra rất nhiều hy vọng cho việc nghiên cứu mạng nơron Tuy nhiên nó có hạn chế là chỉ có thể giải quyết một số lớp hữu hạn các bài toán

• Cùng thời gian đó, Bernard Widrow và Ted Hoff đã đưa ra một thuật toán học mới và sử dụng nó để huấn luyện cho các mạng nơron tuyến tính thích nghi, mạng có cấu trúc và chức năng tương tự như mạng của Rosenblatt Luật học Widrow-Hoff vẫn còn được sử dụng cho đến nay

Trang 12

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

• Tuy nhiên cả Rosenblatt và Widrow-Hoff đều cùng vấp phải một vấn

đề do Marvin Minsky và Seymour Papert phát hiện ra, đó là các mạng nhận thức chỉ có khả năng giải quyết các bài toán khả phân tuyến tính Họ cố gắng cải tiến luật học và mạng để có thể vượt qua được hạn chế này nhưng họ đã không thành công trong việc cải tiến luật học để có thể huấn luyện được các mạng có cấu trúc phức tạp hơn

• Do những kết quả của Minsky-Papert nên việc nghiên cứu vềmạng nơron gần như bị đình lại trong suốt một thập kỷ do nguyên nhân là không có được các máy tính đủ mạnh để có thể thực nghiệm

• Mặc dù vậy, cũng có một vài phát kiến quan trọng vào những năm

70 Năm 1972, Teuvo Kohonen và James Anderson độc lập nhau phát triển một loại mạng mới có thể hoạt động như một bộ nhớ Stephen Grossberg cũng rất tích cực trong việc khảo sát các mạng tự tổ chức (Self organizing networks)

• Vào những năm 80, việc nghiên cứu mạng nơron phát triển rất mạnh

mẽ cùng với sự ra đời của PC Có hai khái niệm mới liên quan đến sự hồi sinh này, đó là:

1 Việc sử dụng các phương pháp thống kê để giải thích hoạt động của một lớp các mạng hồi quy (recurrent networks) có thể được dùng như bộ nhớ liên hợp (associative memory) trong công trình của nhà vật lý học Johh Hopfield

2 Sự ra đời của thuật toán lan truyền ngược (back-propagation) để luyện các mạng nhiều lớp được một vài nhà nghiên cứu độc lập tìm ra như: David Rumelhart, James McCelland, Đó cũng là câu trả lời cho Minsky-

Papert [5]

Trang 13

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.1.2 Khái niệm cơ bản

Theo các nhà nghiên cứu sinh học về bộ não, hệ thống thần kinh của con người bao gồm khoảng 100 tỷ tế bào thần kinh, thường gọi là các nơron Mỗi tế bào nơron gồm ba phần:

- Thân nơron với nhân bên trong (gọi là soma), là nơi tiếp nhận hay phát ra các xung động thần kinh

- Một hệ thống dạng cây các dây thần kinh vào (gọi là dendrite) để đưa tín hiệu tới nhân nơron Các dây thần kinh vào tạo thành một lưới dày đặc xung quanh thân nơron, chiếm diện tích khoảng 0,25mm2

- Đầu dây thần kinh ra (gọi là sợi trục axon) phân nhánh dạng hình cây,

có thể dài từ một cm đến hàng mét Chúng nối với các dây thần kinh vào hoặc trực tiếp với nhân tế bào của nơron khác thông qua các khớp nối (gọi là synapse) Thông thường mỗi nơron có thể có từ vài chục cho tới hàng trăm ngàn khớp nối để nới với các nơron khác Có hai loại khớp nối, khớp nối kích thích (excitatory) sẽ cho tín hiệu qua nó để tới nơron còn khớp nối ức chế (inhibitory) có tác dụng làm cản tín hiệu tới nơron Người ta ước tính mỗi nơ ron trong bộ não của con người có khoảng 104

khớp nối (Hình 2.1)

Chức năng cơ bản của tế bào nơron là liên kết với nhau để tạo nên hệ thống thần kinh điều khiển hoạt động của cơ thể sống Các tế bào nơron truyền tín hiệu cho nhau thông qua các dây thần kinh vào và ra, các tín hiệu

đó có dạng xung điện và được tạo ra từ các quá trình phản ứng hóa học phức tạp Tại nhân tế bào, khi điện thế của tín hiệu vào đạt ngưỡng nào đó thì nó sẽ

ta ra xung điện dấn tới trục dây thần kinh ra Xung này truyền theo trục ra tới các nhánh rẽ và tiếp tục truyền tới nơron khác [8]

Trang 14

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Hình 2.1 Cấu tạo của tế bào nơron sinh học

Với mục tiêu tạo ra một mô hình tính toán phỏng theo các làm việc của nơron trong bộ não con người, vào năm 1943, các tác giả McCulloch và Pitts

đã đề xuất một mô hình toán cho một nơron như sau:

Hình 2.2 Mô hình nơron nhân tạo

Trong mô hình này, một nơron thứ i sẽ nhận các tín hiệu vào xj với các trọng số tương ứng wij, tổng các thông tin vào có trọng số là

m j

j

ijx w

1

Thông tin đầu ra ở thời điểm t+1 được tính từ các thông tin đầu vào như sau:

Trang 15

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

i t

x w g

t

Trong đó g là hàm kích hoạt (còn gọi là hàm chuyển) có dạng là bước

nhảy, nó đóng vai trò biến đổi từ thông tin đàu vào thành tín hiệu đàu ra Trong mô hình nơron của McCullch và Pitts, các trọng số Wij thể hiện ảnh hưởng của khớp nối trong liên kết giữa nơron j (nơron gửi tín hiệu) và nơron i (nơron nhận tín hiệu) Trọng số wij dương ứng với khớp nối kích thích, trọng

số âm ứng với khớp nối ức chế còn wij = 0 khi không có liên kết giữa nơron

Hàm chuyển g có nhiều dạng thể hiện khác nhau

Thông qua cách mô hình hóa đơn giản một nơron sinh học trên, McCullch và Pitts đã đưa ra một mô hình nơron nhân tạo có tiềm năg tính toán quan trọng Nó có thể thực hiện các phép toán logic cơ bản như AND,

OR và NOT khi các trọng số và ngưỡng được chọn phù hợp Sự liên kết giữa các nơron nhân tạo với các cách thức khác nhau sẽ tạo nên các loại mạng nơron nhân tạo (Artificial Neural Network – ANN) với các tính chất và khả năng làm việc khác nhau

2.1.3 Mô hình mạng nơron nhân tạo

Như đã giới thiệu ở trên, mạng nơron nhân tạo là một hệ thống xử lý thông tin được xây dựng dựa trên cơ sở tổng quát hóa mô hình toán học của nơron sinh học và phỏng theo cơ chế làm việc của bộ não con người Mạng

nơron nhân tạo được thể hiện thông qua ba thành phần cơ bản: mô hình của nơron, cấu trúc và sự liên kết giữa các nơron, phương pháp học được áp

Trang 16

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

j

n

i

j i j

a

1

) ( j

j g a z

Hình 2.3: Đơn vị xử lý (Processing unit)

x i : 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(a): 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ơron đầu vào (Input units), nhận tín hiệu từbên ngoài;

2) Các nơron đầu ra (Output units), gửi dữ liệu ra bên ngoài;

3) Các nơron ẩn (Hidden units), tín hiệu vào (input) và ra (output) của

Trang 17

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

nghĩa bởi một luật lan truyền cụ thể Trong phần lớn các mạng nơron, chúng

ta giả sử rằng 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 :

1

n

j ji i j i

Trường hợp wji > 0, nơron được coi là đang ở trong trạng thái kích thích Tương tự, nếu như wji < 0, nơron ở trạng thái kiềm chế Chúng ta gọi các đơn vị với luật lan truyền như trên là các sigma units

Trong một vài trường hợp người ta cũng có thể sử dụng các luật lan truyền phức tạp hơn

Một trong số đó là luật sigma-pi, có dạng như sau:

m n

2.1.3.2.2 Hàm kích hoạt (hàm chuyển)

Phần lớn các nơron trong mạng nơron chuyển mạng đầu vào (net input) bằng cách sử dụng một hàm vô hướng (scalar-to-scalar function) gọi là hàm kích hoạt, kết quả của hàm này là một giá trị gọi là mức độ kích hoạt của đơn vị (unit's activation) Loại trừ khả năng đơn vị đó 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ích hoạ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

Nế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

Trang 18

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Hình 2.4: Hàm đồng nhất (Indentity 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 hay Heaviside function) Đầu ra của hàm này được giới hạn vào một trong hai giá trị:

1 nÕu x ( )

0 nÕu x <

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 2.5: Hàm bước nhị phân (Binary step function)

3) Hàm sigmoid (Sigmoid function (logsig))

1 ( )

Trang 19

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

g

1

1 ) (

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 2.7: Hàm sigmoid lưỡng cực

Các hàm truyền của các đơn vị ẩn (hidden units) là cần thiết để biểu diễn sự phi tuyế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 đồng nhấ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ác hà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 cho phù 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ới các giá trịra trong khoảng [0,1], hàm sigmoid là có ích; đối với các giá trị đích mong muố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ửdụng nhất là

-6 -4 -2 0

x

1 g(x)

-6 -4 -2 0

x

1 g(x)

Trang 20

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

hàm đồng nhất (identity function) Nếu giá trị mong muốn là dương nhưng không biết cận trên thì nên sử dụng một hàm kích hoạt dạng mũ(exponential

output activation function) [4], [8]

2.2 Học và lan truyền trong mạng

2.2.1 Học và tổng quát hóa

Mạng nơron thực hiện hai chức năng quan trọng là học và tổng quát hóa Học là quá trình hiệu chỉnh các tham số và các trọng số liên kết trong mạng để tối thiểu hóa sai số với vectơ đầu vào cho trước Quá trình học dừng khi mạng thỏa mãn một tiêu chuẩn dừng nào đó, chẳng hạn khi các trọng số của mạng tạo ra lỗi đủ nhỏ giữa đầu ra mong đợi và kết quả đầu ra tính được

từ mạng

Tổng quát hóa là quá trình đưa vào một vector đầu vào mới và sản sinh

ra quyết định dựa trên vector đầu ra tính được từ mạng

Bài toán học có thể được mô tả như sau: Cho tập mẫu (Xi, Yi) với Xi và Yi là hai vector không gian của một hoặc nhiều chiều, cần xác định bộ trọng số W0trên không gian tham số để computer(Xi, W0) = Yi-

Quá trình học được thực hiện qua hai bước: Xác định hàm giá trị trên các tham số và tối thiểu hóa tham số trong không gian của các tham số

Học chia thành hai loại: học tham số và học có cấu trúc

Học tham số:

Là quá trình xác định một tập hợp tham số W0 là các trọng số tốt nhất với một cấu trúc mạng cố định Để làm được điều này cần xây dựng một hàm giá dựa trên tập dữ liệu Ttrain và tập trọng số W Hàm giá có thể là một hàm khả vi bất kỳ có tính chất đạt đến cực tiểu khi các đầu ra Oi đúng bằng đầu ra

lý tưởng Yi của tập mẫu Có thể xây dựng hàm giá dưới dạng Ln như sau:

Trang 21

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Với bộ tham số này, có thể áp dụng một giải thuật tìm kiếm nào đó trên không gian Rm của tập trọng số Nếu thu được kết quả tốt với một cực tiểu toàn cục, ta sẽ có một bộ tham số tốt nhất cho mạng

)

Các kỹ thuật học của mạng nơron chỉ ra cách chỉnh sửa các trọng số liên kết mạng khi một mẫu học được đưa vào mạng Sau đây sẽ trình bầy cụ thể về các kỹ thuật học [4]

Chứ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ạng mạng (số lớp, số đơn vị trên mỗi lớp, và cách mà các lớp được liên kết với nhau) và các trọ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ác trọ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 mong muốn được gọi là học (learning) hay huấn luyện (training)

2.2.1.1 Học có giám sát

Học có giám sát có thể được xem như việc xấp xỉ một ánh xạ: X→ Y, trong

đó X là tập các vấn đề và Y là tập các lời giải tương ứng cho vấn đề đó Các mẫu (x, y) với x = (x1, x2, , xn) ∈ X, y = (yl, y2, , ym) ∈ Y được cho trước Học có giám sát trong các mạng nơron thường được thực hiện theo các bước sau:

Trang 22

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

♦ B1: Xây dựng cấu trúc thích hợp cho mạng nơron, chẳng hạn có (n +

1) nơron vào (n nơron cho biến vào và 1 nơron cho ngưỡng x0), m nơron đầu

ra, và khởi tạo các trọng số liên kết của mạng

♦ B2: Đưa một vector x trong tập mẫu huấn luyện X vào mạng

♦ B3: Tính vector đầu ra o của mạng

♦ B4: So sánh vector đầu ra mong muốn y (là kết quả được cho trong

tập huấn luyện) với vector đầu ra o do mạng tạo ra; nếu có thể thì đánh giá lỗi

♦ B5: Hiệu chỉnh các trọng số liên kết theo một cách nào đó sao cho ở

lần tiếp theo khi đưa vector x vào mạng, vector đầu ra o sẽ giống với y hơn

♦ B6: Nếu cần, lặp lại các bước từ 2 đến 5 cho tới khi mạng đạt tới

trạng thái hội tụ Việc đánh giá lỗi có thể thực hiện theo nhiều cách, cách

dùng nhiều nhất là sử dụng lỗi tức thời: Err = (o - y), hoặc Err = |o - y|; lỗi trung bình bình phương (MSE: mean-square error): Err = (o- y)2

/2;

Có hai loại lỗi trong đánh giá một mạng nơron Thứ nhất, gọi là lỗi rõ

ràng (apparent error), đánh giá khả năng xấp xỉ các mẫu huấn luyện của một mạng đã được huấn luyện Thứ hai, gọi là lỗi kiểm tra (test error), đánh giá

khả năng tổng quá hóa của một mạng đã được huấn luyện, tức khả năng phản ứng với các vector đầu vào mới Để đánh giá lỗi kiểm tra chúng ta phải biết đầu ra mong muốn cho các mẫu kiểm tra

Thuật toán tổng quát ở trên cho học có giám sát trong các mạng nơron có nhiều cài đặt khác nhau, sự khác nhau chủ yếu là cách các trọng số liên kết được thay đổi trong suốt thời gian học Trong đó tiêu biểu nhất là thuật toán lan truyền ngược

Trang 23

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Hình 2.8: Sơ đồ học tham số có giám sát

Hình 2.9: Sơ đồ học tăng cường

Trang 24

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Như vậy với học không giám sát, số lớp phân loại chưa được biết trước,

và tùy theo tiêu chuẩn đánh giá độ tương tự giữa các mẫu mà ta có thể có các

lớp phân loại khác nhau

Hình 2.10 Sơ đồ học không giám sát

Như vậy, giải thuật học là giải thuật xuất phát từ một tập mẫu, qua quá trình huấn luyện để tìm ra bộ trọng số liên kết giữa các nơron, có thể mô tả tổng quát như sau:

Đầu vào: Một tập mẫu gồm n phần tử mẫu

Đầu ra: Cấu trúc mạng và bộ trọng số các liên kết nơron

Giải thuật:

1 Khởi tạo trọng số của mạng, đặt i = 1;

2 Đưa mẫu i vào lớp vào của mạng;

3 Sử dụng thuật toán lan truyền, nhận được giá trị nút ra

Nếu giá trị đầu ra của mạng đạt yêu cầu hoặc thỏa mãn tiêu chuẩn dừng thì kết thúc

4 Sửa đổi trọng số bằng luật học của mạng;

5 Nếu i = n thì i =1, nếu không thì tăng i lên 1: i:=i+1

Quay lại bước 2

Có nhiều tiêu chuẩn dừng quá trình học, chảng hạn:

- Chuẩn lỗi E nhỏ hơn một ngưỡng cho trước: E <

- Các trọng số của mạng không thay đổi nhiều sau khi hiệu chỉnh:

Trang 25

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

ij ij

wnew wold

- Việc lặp bị bão hòa, tức là số lần lặp vượt một ngưỡng N cho trước

2.2.2 Lan truyền trong mạng:

Mạng nơron lan truyền thông tin từ lớp vào đến lớp ra Khi việc lan truyền kết thúc, thông tin tại lớp ra chính là kết quả của quá trình lan truyền

Giải thuật lan truyền được thể hiện như sau: [4],[6]

Đầu vào: Một tập tín hiệu vào

Đầu ra: Kết quả ra tương ứng với tập tín hiệu vào

ta muốn không phải là dễ dàng Một vài hàm cơ bản được sử dụng rộng rãi Một trong số chúng là hàm tổng bình phương lỗi (sum of spuares error function),

Trang 26

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

p: số tứ tự mẫu trong tập huấn luyện

i: số thứ tự của đơn vị đầu vào

tpi và ypi: tương ứng là đầu ra mong muốn và đầu ra thực tế của mạng cho đơn vị đầu ra thứ i trên mẫu thứ p

Trong các ứng dụng thực tế, nếu cần thiết có thể làm phức tạp hàm số với một vài yếu tố khác để có thể kiểm soát được sự phức tạp của mô hình

2.4 Mạng nơ ron truyền thẳng

Một mạng truyền thẳng nhiều lớp bao gồm một lớp vào, một lớp ra và một hoặc nhiều lớp ẩn Các nơron đầu vào thực chất không phải các nơron theo đúng nghĩa, bởi lẽ chúng không thực hiện bất kỳ một tính toán nào trên

dữ liệu vào, đơn giản nó chỉ tiếp nhận các dữ liệu vào và chuyển cho các lớp

kế tiếp Các nơron ở lớp ẩn và lớp ra mới thực sự thực hiện các tính toán, kết quả được định dạng bởi hàm đầu ra (hàm chuyển) Cụm từ “truyền thẳng” liên quan đến thực tế là tất cả các nơron chỉ có thể được kết nối với nhau theo một hướng tới một hay nhiều các nơron khác trong lớp kế tiếp (loại trừ các nơron

S2x1

a 1

S2x1

a 2

Trang 27

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Trong đó:

P: vector đầu vào

Wi: ma trận trọng số của nơron lớp i (Si x Ri: S hàng (nơron) – R cột (số đầu vào))

bi: vector độ lệch pha (bias) của lớp thứ I (si

x 1: cho S nơron)

ni: net input (Si x 1)

fi: hàm chuyển (hàm kích hoạt)

ai: net output (Si x 1) : Hàm tổng

Mỗi liên kết gắn với một trọng số, trọng số này được thêm vào trong quá trình tín hiệu đi qua liên kết đó Các trọng số có thể dương, thể hiện trạng thái kích hoạt của chúng bằng cách cộng tổng các đầu vào và đưa ra hàm chuyển Mỗi khi đầu ra của tất cả cá nơron trong một lớp mạng cụ thể đã thực hiện xong tính toán thì lớp kế tiếp có thể bắt đầu thực hiện tính toán của mình bởi vì đầu ra của lớp hiện tại là đầu vào của lớp kế tiếp Khi tất cả các nơron

đã thự hiện tính toán thì kết quả được trả lại bở các nơron đầu ra Tuy nhiên,

có thể là chưa đúng yêu cầu, khi đó một thuật toán huấn luyện được áp dụng

để điều chỉnh các tham số của mạng

Trong hình 2.11; số nơron ở lớp thứ nhất và lớp thứ hai tương tự là S1;

S2 Ma trận trọng số đối với các lớp tương ứng là W1

và W2 Có thể thấy sự liên kết giữa các lớp mạng thể hiện trong hình vẽ 2.11: ở lớp thứ 2, vector đầu vào chính là net output của lớp thứ nhất

Tương tự như vậy, nếu thêm vào các lớp trong cấu trúc này thì lớp mạng cuối cùng thường là lớp cho ra kết quả của toàn bộ mạng, lớp đó gọi là

lớp ra (output layer)

Mạng có nhiều lớp có khả năng tốt hơn là các mạng chỉ có một lớp, chẳng hạn như mạng hai lớp với lớp thứ nhất sử dụng hàm sigmoid và lớp thứ

Trang 28

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

hai dùng hàm đồng nhất có thể áp dụng để xấp xỉ các hàm toán học khá tốt, trong khi các mạng chỉ có một lớp thì không có khả năng này

Xét trường hợp mạng có hai lớp như hình vẽ 2.11, công thức tính toán cho đầu ra là: 2 2 2 1 1 1 2

a f f P b b ; ý nghĩa các ký hiệu như đã nêu ở

hình vẽ 2.11 [8]

2.5 Khả năng thể hiện của mạng

Các mạng truyền thẳng cho ta một kiến trúc tổng quát thể hiện khả năng ánh xạ hàm phi tuyến tính giữa một tập các biến đầu vào và tập các đầu

ra Khả năng thể hiện của một mạng có thể được định nghĩa là khoảng mà nó

có thể thực hiện ánh xạ khi các trọng số biến thiên

Các mạng một lớp chỉ có khả năng thể hiện các hàm khả phân tuyến tính hay các miền phân cha được (ví dụ như hàm logic AND có miền giá trị có thể phân chia bằng một đường thẳng trong khi miền giá trị của hàm XOR thì không)

Các mạng có hai lớp ẩn có khẳ năng thể hiện một đường biên phân chia tùy ý với một độ chính xác bất kỳ với các hàm chuyển phân ngưỡng và có thể xấp xỉ bất kỳ ánh xạ mịn nào với độ chính xác bất kỳ với các hàm chuyển có dạng sigmoid

Một mạng có một lớp ẩn có thể xấp xỉ tốt bất kỳ một ánh xạ liên tục nào từ một không gian hữu hạn sang một không gian hữu hạn khác, chỉ cần cung cấp số nơron đủ lớn cho lớp ẩn Chính xác hơn, các mạng truyền thẳng với một lớp ẩn được luyện bởi các phương pháp bình phương tối thiểu (least – spuares) là các bộ xấp xỉ chính xác cho các hàm hồi quy nếu như các giả thiết

về mẫu, độ nhiễu, số đơn vị trong lớp ẩn và các nhân tố khác thỏa mãn Các mạng nơron truyền thẳng với một lớp ẩn sử dụng các hàm chuyển hay hàm phân ngưỡng là các bộ xấp xỉ đa năng cho bài toán phân lớp nhị phân với giả thiết tương ứng

Trang 29

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.6 Thiết kế cấu trúc mạng

Mặc dù, về mặt lý thuyết, có tòn tại một mạng có thể mô phỏng một bài toán với độ chính xác bất kỳ Tuy nhiên, để có thể tìm ra mạng này không phải là điều đơn giản Để định nghĩa chính xác một kiến trúc mạng như cần:

sử dụng bao nhiêu lớp ẩn, mỗi lớp ẩn cần có bao nhiêu đơn vị xử lý cho bài toán cụ thể là một công việc hết sức khó khăn

Phần lớn các thuật toán huấn luyện mạng cho các mạng nơron truyền thẳng đều dựa trên phương pháp gradient Các lớp thêm vào sẽ thêm việc phải lan truyền các lỗi làm cho vector gradient không ổn định Bất kỳ một thuật toán tối ưu theo gradient phụ thuộc cào độ không thay đỏi của hướng khi mà các tham số thay đổi

Số các cực trị địa phương tăng lên rất lớn khi có nhiều lớp ẩn Phần lớn các thuật toán tối ưu dựa trên gradient chỉ có thể tìm ra các cực trị địa phương, do vậy cúng có thể không tìm ra cực trị toàn cục Mặc dù thuật toán huấn luyện mạng có thể tìm ra cực trị toàn cục, nưng xác suất là khá cao và chúng sẽ bị tắc trong một cực trị địa phương sau rất nhiều thời gian lặp và khi

đó, ta sẽ phải xây dựng thuật toán và sẽ phải thực hiện lại từ đầu

Trang 30

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Có thể đối với một bài toán cụ thể, sử dụng nhiều hơn một lớp ẩn với chỉ một vài đơn vị thì tốt hơn là sử dụng ít lớp ẩn với số đơn vị là lớn, đặc biệt đối với các mạng cần phải học các hàm không liên tực Về tổng thể, người ta cho rằng việc đầu tiên là nên xem xét khẳ năng sử dụng mạng chỉ có một lớp

ẩn Nếu dùng một lớp ẩn với một số lượng lớn các đơn vị mà không có hiệu quả thì nên sử dụng thêm một lớp ẩn nữa với số ít các đơn vị

2.6.2 Số nơron trong lớp ẩn

Một vấn đề quan trọng trong việc thiết kế một mạng là cần có bao nhiêu nơron trong một lớp Sử dụng quá ít nơron có thể dẫn đến việc không thể nhận dạng được các tín hiệu đầy đủ trong một tập dữ liệu phức tạp, hay không đồng nhất Số lượng lớn các nơron có thể dẫn đến tình trạng dư thừa, trong trường hợp này mạng có quá nhiều thông tin, hoặc lượng thông tin trong tập dữ liệu mẫu không đủ các dữ liệu đặc trưng để huấn luyện mạng

Số lượng tốt nhất các nơron ẩn phụ thuộc vào rất nhiều yếu tố; số đầu vào; đầu ra của mạng; số trường hợp tập mẫu; độ nhiễu của dữ liệu đích; độ phức tạp của hàm lỗi; kiến trúc mạng và thuật toán huấn luyện mạng

Có rất nhiều “luật” để lựa chọn số đơn vị trong các lớp ẩn [6]

m [l,n]: năm giữa khoảng kích thước lớp vào, lớp ra

3

m : 2/3 tổng kích thước lớp vào và lớp ra

m<2l: nhỏ hơn hai lần kích thước lớp vào

m l n : căn bậc hai của tích kích thước lớp vào và lớp ra

Các luật này chỉ có thể được cai như là các lựa chọn thô khi chọn lựa kích thước của các lớp Chúng không phản ánh được thực tế, bởi lẽ chúng chỉ xem xét đến nhân tố kích thước đầu vào, đầu ra mà bỏ qua các nhân tó quan trọng khác như: số trường hợp đưa vào huấn luyện, độ nhiễu ở các đầu ra

Trang 31

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

mong muốn, độ phức tạp của hàm lỗi, kiến trúc của mạng (truyền thẳng hay hồi quy) và thuật toán học

Trong phần lớn các trường hợp, không có một cách cụ thể nào để có thể

dễ dàng xác định được số tối ưu các đơn vị trong lớp ẩn mà không phải luyện mạng sử dụng số các đơn vị trong lớp ẩn khác nhau và dự báo lỗi tổng quát

hóa của tường lựa chọn Cách tốt nhất là sử dụng phương pháp thử - sai (trial – and – error) Trong thực tế, có thể sử dụng phương pháp Lựa chọn tiến (forward selection) hay Lựa chọn lùi (backward selection) để xác định số đơn

vị trong lớp ẩn

- Lựa chọn tiến, bắt đầu với việc chọn một luật hợp lí cho việc đánh

giá hiệu năng của mạng Sau đó, ta chọn một số nhỏ các đơn vị ẩn, luyện và thử mạng; ghi lại hiệu năng của mạng Sau đó, tăng dần số đơn vị lớp ẩn; luyện và thử lại cho đến khi lỗi là chấp nhận được, hoặc không có tiến triển đáng kể so với trước

- Lựa chọn lùi, ngược lại với lựa chọ tiên, bắt đầu với một số lớn các

đơn vị trong lớp ẩn, sau đó giảm dần đi Quá trình này rất tốn thờ gian nhưng

sẽ giúp ta tìm được số đơn vị phù hợp cho lớp ẩn

2.7 Thuật toán lan truyền ngược (Back-Propagation)

Như đã nêu ở trên, về cơ bản có hai dạng thuật toán để luyện mạng: Học có giám sát và học không giám sát Các mạng nơron truyền thẳng nhiều lớp được luyện bằng phương pháp học có giám sát Phương pháp này căn bản dựa trên việc yêu cầu mạng thực hiện chức năng của nó sau đó trả lại kết quả, kết hợp kết quả này với các đầu ra mong muốn để điều chỉnh các trọng só của mạng, nghĩa là mạng sẽ học thông qua những sai sót của nó

Về cơ bản, thuật toán lan truyền ngược là tổng quát của thuật toán trung bình bình phương tối thiểu (Least Means Square – LMS) Thuật tón này thuộc dạng thuật toán xấp xỉ để tìm các điểm mà tại đó hiệu năng của mạng là tối

ưu Chỉ số tối ưu (performance index) thường được xác định bởi một hàm số

Trang 32

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

của ma trận trọng số và các đầu vào nào đó mà trong quá trình tìm hiểu bài toán đặc ra

Sau đây là mô tả của thuật toán học sử dụng để điều chỉnh hiệu năng của mạng sao cho mạng có khả năng sinh ra được các kết quả mong muốn

2.7.1 Mô tả thuật toán

tj: đầu ra mong muốn của nút thứ j

Downstream(j): Tập tất cả các nút nhận đầu ra của nút thứ j làm một giá trị đầu vào

η: tốc độ học

f: hàm truyền với f(x) = 1 / (1 + e-x

) Thuật toán lan truyền ngược được mô tả như sau:

Bước 1: Khởi tạo trọng số bởi các giá trị ngẫu nhiên nhỏ

Bước 2: Lặp lại cho tới khi thỏa mãn điều kiện kết thúc

Trang 33

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Với mỗi mẫu, thực hiện các bước sau:

2.1 Tính đầu ra oj cho mỗi nút j:

2.7.2 Sử dụng thuật toán lan truyền ngược

Trên đây là thuật toán lan truyền ngược cơ bản, sau đây ta sẽ xét các khía cạnh ứng dụng của thuật toán lan truyền ngược lựa chọn cấu trúc mạng, sự hội tụ và khả năng tổng quát hóa

2.7.2.1 Lựa chọn cấu trúc mạng

Như ta đã biết, thuật toán lan truyền ngược có thể được sư dụng để xấp

xỉ bất kỳ một hàm số học nào nếu như ta có đủ số nơron trong các lớp ẩn Mặc dù vậy, phát biểu trên chưa cho ta được một số cụ thể các lớp và só nơron trong mõi lớp cần sử dụng Ta sẽ dùng một ví dụ để có được cái nhìn chi tiết hơn về vấn để này

trong đó i nhận các giá trị 1, 2, 4 và 8 Khi I tăng thì hàm só cần xét sẽ trở nên

phức tạp hơn, do ta sẽ nhận được nhiều chu kỳ của hàm sin trong phạm vi

[-2, 2] Khi đó, mạng nơron với mọt số nơron cố định sẽ khó có thể xấp xỉ được

hàm nếu i tăng Ở đây, mạng sử dụng có 1 lớp ẩn, 1 lớp ra; đương nhiên,

mạng có đầu vào và một đầu ra Lớp ẩn sử dụng hàm sigmoid, lớp ra dùng hàm đồng nhất:

Ngày đăng: 24/02/2021, 21:44

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN