Tải bản đầy đủ (.pdf) (79 trang)

Ứng dụng mạng Neural trong phân loại thư rác

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.77 MB, 79 trang )

ĐẠI HỌC THÁI NGUYÊN

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ THANH HOA

ỨNG DỤNG MẠNG NEURAL TRONG PHÂN LOẠI THƢ RÁC

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

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>1


LỜI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được
ai công bố trong bất kỳ công trình nào khác.

Tác giả luận văn

Nguyễn Thị Thanh Hoa

i

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>2



LỜI CẢM ƠN

Lời đầu tiên em xin gửi lời cảm ơn chân thành đến Các quý thầy cô
giáo, Trường Đại học Công nghệ thông tin và Truyền thông đã tận tình giảng
dạy, truyền đạt những kiến thức, kinh nghiệm quý báu trong suốt thời gian
em theo học tại trường.
Đặc biệt, em xin chân thành cảm ơn thầy giáo TS. Phạm Thanh
Giang đã rất nhiệt tình và tâm huyết trong việc định hướng và giúp đỡ em
hoàn thành luận văn này
Em cũng xin được bày tỏ tình cảm với gia đình, đồng nghiệp, bạn bè đã
tạo điều kiện để cá nhân em có thể dành thời gian cho khóa học. Xin chân
thành cảm ơn những người bạn lớp cao học CK12B, trong 2 năm qua đã
luôn luôn động viên, khích lệ và hỗ trợ em trong quá trình học tập.
Trong quá trình thực hiện Luận văn mặc dù đã cố gắng hết mình, song
chắc chắn luận văn của em vẫn còn nhiều thiếu sót. Em rất mong nhận được
sự chỉ bảo vào đóng góp tận tình của các thầy cô để luận văn của em được
hoản thiện hơn.

Thái Nguyên, Ngày 15 tháng 4 năm 2015
Tác Giả

Nguyễn Thị Thanh Hoa

ii

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>3



MỤC LỤC
LỜI CAM ĐOAN ........................................................................................... i
LỜI CẢM ƠN ................................................................................................ ii
MỤC LỤC ...................................................................................................... iii
DANH MỤC CÁC BẢNG ............................................................................ iv
DANH MỤC CÁC HÌNH ............................................................................ v
LỜI MỞ ĐẦU ............................................................................................... 1
CHƢƠNG 1: TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO ............. 3
1.1. Khái niệm mạng nơron ......................................................................... 3
1.1.1 Giới thiệu ............................................................................................... 3
1.1.1.1. So sánh mạng nơron với máy tính truyền thống ................................ 5
1.1.1.2. Nơron sinh học ................................................................................... 6
1.1.1.3. Chức năng, tổ chức và hoạt động của bộ não con người ................... 7
1.1.1.4. Nơron.................................................................................................. 9
1.1.2. Mạng Nơron nhân tạo ........................................................................... 10
1.1.2.1. Nơron nhân tạo ................................................................................... 11
1.1.2.2. Mạng nơron nhân tạo ......................................................................... 15
1.2. Đặc trƣng của mạng nơron ................................................................... 17
1.2.1. Tính phi tuyến ....................................................................................... 17
1.2.2. Tính chất tương ứng đầu vào, đầu ra .................................................... 17
1.2.3. Tính chất thích nghi .............................................................................. 17
1.2.4. Tính chất đưa ra lời giải có bằng chứng ............................................... 18
iii
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>4


1.2.5. Tính chất chấp nhận sai sót ................................................................... 18

1.2.6. Khả năng cài đặt VLSI (Very-Large-Scale-Intergrated) ...................... 18
1.2.7. Tính chất đồng dạng trong phân tích và thiết kế................................... 19
1.3. Phân loại mạng nơron nhân tạo ........................................................... 19
1.3.1. Phân loại theo kiểu liên kết nơron......................................................... 19
1.3.2. Một số loại mạng nơron điển hình ........................................................ 20
1.3.2.1. Mạng dẫn tiến (feedforward) ............................................................ 20
1.3.2.2. Mạng quy hồi (recurrent network) .................................................... 23
1.4. Xây dựng mạng nơron ........................................................................... 24
1.5. Huấn luyện mạng nơron ........................................................................ 25
1.5.1. Phương pháp học ................................................................................... 25
1.5.1.1. Học có giám sát ................................................................................. 26
1.5.1.2. Học không giám sát ............................................................................ 26
1.5.1.3. Học tăng cường ................................................................................. 27
1.5.2. Thuật toán học ...................................................................................... 27
1.6. Thu thập dữ liệu cho mạng nơron ....................................................... 28
1.7. Biểu diễn tri thức cho mạng nơron....................................................... 30
1.8. Ứng dụng của mạng nơron. .................................................................. 33
Kết luận chƣơng 1: ....................................................................................... 34
CHƢƠNG 2: BÀI TOÁN PHÂN LOẠI THƢ RÁC ................................. 35
2.1. Giới thiệu về thƣ rác ............................................................................. 35
2.1.1. Khái niệm thư rác .................................................................................. 35
2.1.2. Các đặc điểm của thư rác ...................................................................... 35
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>5


2.1.3. Phân loại thư rác ................................................................................... 37
2.1.4. Ảnh hưởng của thư rác ......................................................................... 38
2.2. Các phƣơng pháp phân loại thƣ rác .................................................... 40

2.2.1. Phương pháp phân loại theo từ khóa .................................................... 40
2.2.2. Phương pháp phân loại Bayesian .......................................................... 41
2.2.3. Phương pháp phân loại SpamAssassin ................................................. 46
2.2.4. Phương pháp phân loại dùng danh sách trắng/đen ............................... 47
2.2.5. Phương pháp phân loại dựa vào vị trí của bộ lọc ................................. 48
2.2.6. Phương pháp phân loại dựa trên xác nhận danh tính của người gửi…50
2.2.7. Phương pháp phân loại thư rác mới dựa trên Mạng xã hội .................. 53
Kết luận chƣơng 2: ....................................................................................... 55
CHƢƠNG 3: ỨNG DỤNG MẠNG NEURAL NGĂN CHẶN SPAM MAIL
3.1. Xây dựng kiến trúc hệ thống ................................................................. 56
3.1.1 Phần mềm lọc thư rác POPFile ............................................................. 56
3.1.3 Cơ sở dữ liệu POPFile............................................................................ 57
3.2 Mô hình phân loại thƣ rác qua Popfile .............................................. 61
3.2.1 Cấu hình kết nối hệ thống mail qua Popfile ........................................... 61
3.2.2 Cấu hình Outlook kết nối với Popfile .................................................... 62
3.3 Huấn luyện cho Popfile .......................................................................... 68
3.4 Kết quả và Đánh giá ................................................................................ 68
KẾT LUẬN . ................................................................................................. 70
TÀI LIỆU THAM KHẢO ........................................................................... 72

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>6


Số hóa bởi Trung tâm Học liệu - ĐHTN

/>7



DANH MỤC CÁC BẢNG
Bảng 1.1 Một số hàm kích hoạt trong mạng nơron ....................................... 14

Bảng 3.1 Kết quả lọc Email trong POPFile sau khi trainning với 20 Email
..................................................................................................................... 66
Bảng 3.2 Kết quả lọc Email trong POPFile sau khi trainning với 40 Email
.............................................................................................................................. 66

Bảng 3.3 Kết quả lọc Email trong POPFile sau khi trainning với 80 Email
.............................................................................................................................. 66

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>8


BẢNG DANH MỤC CÁC HÌNH
S
TT

T

TÊN HÌNH

RANG

1

Hình 1.1 Mạng nơron sinh học


6

2

Hình 1.2 Sơ đồ nơron sinh học

9

3

Hình 1.3 Mô hình một nơron nhân tạo

10

4

5

6

Hình 1.4 Sự tƣơng đƣơng giữa nơron sinh học và
nơron nhân tạo [10]
Hình 1.5 Mô hình phi tuyến thứ hai của một
mạng nơron
Hình 1.6 Sơ đồ đơn giản về một mạng nơron nhân
tạo [4]

11

13


15

7

Hình 1.7 Mạng truyền thẳng

19

8

Hình 1.8 Mạng quy hồi

19

9

Hình 1.9 Mạng tiến với một mức nơron

20

10

11

Hình 1.10 Mạng tiến kết nối đầy đủ với một mức
ẩn và một mức đầu ra
Hình 1.11 Mạng hồi quy không có nơron ẩn và
không có vòng lặp tự phản hồi


21

22

12

Hình 1.12 Mạng hồi quy có các nơron ẩn

22

13

Hình 1.13 Sơ đồ đồ thị có hƣớng đơn giản

23

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>9


14

Hình 3.1 Cơ sở dữ liệu Popfile

51

15

Hình 3.2 Mô hình Popfile


52

16

Hình 3.3 Giao diện Popfile

53
v

17

Hình 3.4 Giao diện chính của phần mềm Microsoft
Outlook

54

18

Hình 3.5 Truy cập chức năng vào tài khoản Email

55

19

Hình 3.6 Thiết lập tài khoản Email

61

20


Hình 3.7 Thêm tài khoản Email mới

62

21

Hình 3.8 Sửa tài khoản Email mới

62

22

Hình 3.9 Thay đổi tài khoản Email

63

23

Hình 3.10 Thiết lập thƣ điện tử

64

24

Hình 3.11 Huấn luyện Email trong POPFile

65

Số hóa bởi Trung tâm Học liệu - ĐHTN


/>10


MỞ ĐẦU
Mạng nơron nhân tạo ANN (Artificial Nơron Networks) là một mô
phỏng xử lý thông tin, được nghiên cứu ra từ hệ thống thần kinh của sinh vật,
giống như bộ não để xử lý thông tin. Nó bao gồm số lượng lớn các mối gắn
kết cấp cao để xử lý các yếu tố làm việc trong mối liên hệ giải quyết vấn đề rõ
ràng. ANN giống như con người, được học bởi kinh nghiệm, lưu những kinh
nghiệm hiểu biết và sử dụng trong những tình huống phù hợp và quan trọng
hơn hết, con người có khả năng sáng tạo.
Những năm gần đây mô phỏng ANN xuất hiện và phát triển. Các nghiên
cứu ứng dụng đã được thực hiện trong các ngành: điện, điện tử, kỹ thuật chế
tạo, y học, quân sự, kinh tế... Một trong những ứng dụng kinh điển của mạng
nơron là bài toán nhận dạng mẫu, ở đó mỗi một mẫu là một tập hợp (hay một
vector) các tham số biểu thị các thuộc tính của quá trình vật lý nào đó. Ngoài
sức mạnh vốn có, mạng nơron còn thể hiện ưu điểm của mình trong việc nhận
dạng thông qua khả năng mềm dẻo, dễ thích nghi với môi trường. Chính vì
vậy, có thể coi mạng nơron trước tiên là một công cụ để nhận dạng.
Như chúng ta đã biết ngày nay Internet đã đóng một vai trò vô cùng
quan trọng trong đời sống xã hội cùng với vô vàn những dịch vụ tiện ích. Một
trong những dịch vụ mà Internet mang lại là dịch vụ thư điện tử, đó là một
phương tiện giao tiếp rất đơn giản, tiện lợi, rẻ và hiệu quả giữa mọi người
trong cộng đồng sử dụng dịch vụ Internet. Tuy nhiên chính vì những lợi ích
của dịch vụ thư điện tử mang lại mà số lượng thư trao đổi trên Internet ngày
càng tăng, và đa số trong số những thư đó là thư rác (spam). Thư rác thường
được gửi với số lượng lớn, không được người dùng mong đợi gây phiền toái
và khó chịu cho người dùng, làm giảm tốc độ truyền Internet và tốc độ xử lý
của email server, gây thiệt hại lớn về kinh tế. Thư rác đang là một trong

những vấn đề nhức nhối của xã hội. Nhiều phương pháp, công cụ lọc thư rác

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>11


đã được đề xuất. Tuy nhiên, các công cụ lọc thư rác đó hiện nay vẫn tỏ ra
chưa thực sự hiệu quả.
Chính vì các lý do nêu trên cùng với sự gợi ý của thầy giáo tôi nhận
thấy nghiên cứu về mạng nơron là một hướng nghiên cứu quan trọng, mới mẻ
và có nhiều triển vọng. Đồng thời áp dụng mạng nơron để giải quyết bài toán
phân loại thư rác là một hướng tiếp cận khoa học có hiệu quả. Do đó tôi chọn
đề tài: “Nghiên cứu, ứng dụng mạng nơron trong bài toán phân loại thư rác”.
Nội dung luận văn gồm:
Chƣơng 1: Mô hình mạng nơron nhân tạo
Trình bày những lý thuyết cơ bản về mô hình mạng nơron như: lịch sử
ra đời và phát triển của mạng nơron, khái niệm mạng nơron, các loại mô hình
mạng nơron, các đặc trưng của mạng, các phương pháp huấn luyện mạng
nơron, phương pháp học có giám sát. Các vấn đề và ứng dụng của mạng
nơron.
Chƣơng 2: Bài toán phân loại thƣ rác
Giới thiệu về thư rác: khái niệm, đặc điểm, phân loại, và ảnh hưởng của
thư rác; các phương pháp phân loại thư rác: phân loại theo từ khóa, Bayesian,
SpamAssassin, danh sách trắng/đen, dựa vào vị trí bộ lọc, xác nhận danh tính
người gửi và dựa trên mạng xã hội
Chƣơng 3: Thử nghiệm hệ thống ngăn chặn spam mail
Trình bày thử nghiệm hệ thống ngăn chặn spam mail bằng phương
pháp học máy thông qua phần mềm mã nguồn mở Popfile. Cách chuẩn hóa tín
hiệu đầu vào, đầu ra…Chương trình minh họa kết quả huấn luyện mạng, đánh

giá, nhận xét

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>12


CHƢƠNG 1: MÔ HÌNH MẠNG NƠRON NHÂN TẠO
1.1. Khái niệm mạng nơron
1.1.1 Giới thiệu
Các nghiên cứu về bộ não con người đã được tiến hành từ hàng nghìn
năm nay. Cùng với sự phát triển của khoa học kĩ thuật đặc biệt là những tiến
bộ trong ngành điện tử hiện đại, việc con người bắt đầu nghiên cứu các nơron
nhân tạo là hoàn toàn tự nhiên. 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. Sự kiện đầu tiên đánh dấu
sự ra đời của mạng nơron nhân tạo diễn ra vào năm 1943 khi nhà thần kinh
học Warren McCulloch và nhà toán học Walter Pitts viết bài báo mô tả cách
thức các nơron hoạt động. Họ cũng đã tiến hành xây dựng một mạng nơron
đơn giản bằng các mạch điện. Các nơron của họ được xem như là các thiết bị
nhị phân với ngưỡng cố định. Kết quả của các mô hình này là các hàm logic
đơn giản chẳng hạn như “ a OR b” hay “a AND b” [7]
Những tiến bộ của máy tính đầu những năm 1950 giúp cho việc mô
hình hóa các nguyên lý của những lý thuyết liên quan tới cách thức con người
suy nghĩ đã trở thành hiện thực. Nathanial Rochester sau nhiều năm làm việc
tại các phòng thí nghiệm nghiên cứu của IBM đã có những nỗ lực đầu tiên để
mô phỏng một mạng nơron.
Năm 1956 dự án Dartmouth nghiên cứu về trí tuệ nhân tạo (Artificial
Intelligence) đã mở ra thời kỳ phát triển mới cả trong lĩnh vực trí tuệ nhân tạo
lẫn mạng nơron. Tác động tích cực của nó là thúc đẩy hơn nữa sự quan tâm
của các nhà khoa học về trí tuệ nhân tạo và quá trình xử lý ở mức đơn giản

của mạng nơron trong bộ não con người.
Những năm tiếp theo của dự án Dartmouth, John von Neumann đã đề
xuất việc mô phỏng các nơron đơn giản bằng cách sử dụng rơle điện áp hoặc
đèn chân không. Nhà sinh học chuyên nghiên cứu về nơron Frank Rosenblatt
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>13


cũng bắt đầu nghiên cứu về Perceptron năm 1958. Sau thời gian nghiên cứu
này Perceptron đã được cài đặt trong phần cứng máy tính và được xem như là
mạng nơron lâu đời nhất còn được sử dụng đến ngày nay. Perceptron một
tầng rất hữu ích trong việc phân loại một tập các đầu vào có giá trị liên tục
vào một trong hai lớp. Perceptron tính tổng có trọng số các đầu vào, rồi trừ
tổng này cho một ngưỡng và cho ra một trong hai giá trị mong muốn có thể.
Tuy nhiên Perceptron còn rất nhiều hạn chế, những hạn chế này đã được chỉ
ra trong cuốn sách về Perceptron của Marvin Minsky và Seymour Papert của
MIT (Massachurehs Insritute of Technology) viết năm 1969 đã chứng minh
nó không dùng được cho các hàm logic phức.
Năm 1959, Bernard Widrow và Marcian Hoff thuộc trường đại học
Stanford đã xây dựng mô hình ADALINE ( ADAptive LINear Elements) và
MADALINE. (Multiple ADAptive LINear Elements). Các mô hình này sử
dụng quy tắc học Least-Mean-Squares ( LMS : Tối thiểu bình phương trung
bình). MADALINE là mạng nơron đầu tiên được áp dụng để giải quyết một
bài toán thực tế. Nó là một bộ lọc thích ứng có khả năng loại bỏ tín hiệu dội
lại trên đường dây điện thoại. Ngày nay mạng nơron này vẫn được sử dụng
trong các ứng dụng thương mại.
Năm 1973 Von der Marlsburg: đưa ra quá trình học cạnh tranh và self –
organization. Năm 1974 Paul Werbos đã phát triển và ứng dụng phương pháp
học lan truyền ngược (back-propagation). Tuy nhiên phải mất một vài năm thì

phương pháp này mới trở lên phổ biến. Các mạng lan truyền ngược được biết
đến nhiều nhất và được áp dụng rộng dãi nhất nhất cho đến ngày nay.
Năm 1985, viện vật lý Hoa Kỳ bắt đầu tổ chức các cuộc họp hàng năm
về mạng nơron ứng dụng trong tin học (Nơron Networks for Computing).
Năm 1987, hội thảo quốc tế đầu tiên về mạng neuron của Viện các kỹ
sư điện và điện tử IEEE (Institute of Electrical and Electronic Engineer) đã
thu hút hơn 1800 người tham gia. Tính từ năm 1987 đến nay, hàng năm thế
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>14


giới đều mở hội nghị toàn cầu chuyên ngành nơron IJCNN (International Joit
Conference on Nơron Networks).
Ngày nay, không chỉ dừng lại ở mức nghiên cứu lý thuyết, các nghiên
cứu ứng dụng mạng nơron để giải quyết các bài toán thực tế được diễn ra ở
khắp mọi nơi. Các ứng dụng mạng nơron ra đời ngày càng nhiều và ngày
càng hoàn thiện hơn. Điển hình là các ứng dụng: xử lý ngôn ngữ (Language
Processing), nhận dạng ký tự (Character Recognition), nhận dạng tiếng nói
(Voice Recognition), nhận dạng mẫu (Pattern Recognition), xử lý tín hiệu
(Signal Processing), Lọc dữ liệu (Data Filtering),…
1.1.1.1. So sánh mạng nơron với máy tính truyền thống
Các mạng nơron có cách tiếp cận khác trong giải quyết vấn đề so với
máy tính truyền thống. Các máy tính truyền thống sử dụng cách tiếp cận theo
hướng giải thuật, tức là máy tính thực hiện một tập các chỉ lệnh để giải quyết
một vấn đề. Vấn đề được giải quyết phải được biết và phát biểu dưới dạng
một tập chỉ lệnh không nhập nhằng. Những chỉ lệnh này sau đó phải được
chuyển sang một chương trình ngôn ngữ bậc cao và chuyển sang mã máy để
máy tính có thể hiểu được.
Trừ khi các bước cụ thể mà máy tính cần tuân theo được chỉ ra rõ ràng,

máy tính sẽ không làm được gì cả. Điều đó giới hạn khả năng của các máy
tính truyền thống ở phạm vi giải quyết các vấn đề mà chúng ta đã hiểu và biết
chính xác cách thực hiện. Các máy tính sẽ trở lên hữu ích hơn nếu chúng có
thể thực hiện được những việc mà bản thân con người không biết chính xác là
phải làm như thế nào.
Các mạng nơron xử lý thông tin theo cách thức giống như bộ não con
người. Mạng được tạo nên từ một số lượng lớn các phần tử xử lý được kết nối
với nhau làm việc song song để giải quyết một vấn đề cụ thể. Các mạng nơron
học theo mô hình, chúng không được lập trình để thực hiện một nhiệm vụ cụ
thể. Các mẫu phải được chọn lựa cẩn thận nếu không sẽ rất mất thời gian,
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>15


thậm chí mạng sẽ hoạt động không đúng. Hạn chế này là bởi vì mạng tự tìm
ra cách giải quyết vấn đề, thao tác của nó không thể dự đoán được [7]
Các mạng nơron và các máy tính truyền thống không cạnh tranh nhau
mà bổ sung cho nhau. Có những nhiệm vụ thích hợp hơn với máy tính truyền
thống, ngược lại có những nhiệm vụ lại thích hợp hơn với các mạng nơron.
Thậm chí rất nhiều nhiệm vụ đòi hỏi các hệ thống sử dụng tổ hợp cả hai cách
tiếp cận để thực hiện được hiệu quả cao nhất. Thông thường một máy tính
truyền thống được sử dụng để giám sát mạng nơron.
1.1.1.2. Nơron sinh học

Hình 1.1 Mạng nơron sinh học
Do nhu cầu ngày càng cao trong việc giải quyết các vấn đề phức tạp và
do bản chất của con người là không muốn bằng lòng với hiện tại mà luôn
muốn vươn tới những gì cao hơn, hoàn thiện hơn, những thuật ngữ “mạng
nơron” hoặc “mạng nơron nhân tạo” hoặc “xử lý song song và phân tán” đã ra

đời. Các thuật ngữ đó nói đến một ngành kỹ thuật mới đòi hỏi kiến thức từ
nhiều ngành khoa học khác nhau như toán học, vật lý học, hóa học, sinh vật
học, tâm lý học, thần kinh học,… Tất cả chỉ nhằm làm sao tạo ra những chiếc
máy tính hoạt động giống như “bộ não” của chính chúng ta.
1.1.1.3. Chức năng, tổ chức và hoạt động của bộ não con người
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>16


a) Chức năng
Bộ não của con người có chức năng hết sức quan trọng trong đời sống
của con người. Bộ não gần như kiểm soát hầu hết mọi hành vi của con người,
từ các hoạt động cơ bắp đơn giản đến những hành động phức tạp như học tập,
nhớ, suy luận, tư duy, sáng tạo,…
b) Tổ chức
Bộ não của con người được hình thành từ sự liên kết của khoảng 10 11
phân tử (tế bào), trong đó có khoảng 1010 phần tử là nơron, số còn lại khoảng
9*1010 phần tử là các tế bào thần kinh đệm. Các tế bào thần kinh đệm có
nhiệm vụ phục vụ cũng như hỗ trợ cho các nơron. Cấu tạo chi tiết của bộ não
thì đến nay người ta vẫn chưa thực sự biết rõ. Tuy vậy, não bộ có thể được
phân chia thành nhiều vùng khác nhau. Mỗi vùng có thể kiểm soát một hay
nhiều hoạt động của con người.
Bộ não có cấu trúc nhiều lớp. Lớp bên ngoài thường thấy là các nếp
nhăn, là lớp có cấu tạo phúc tạp nhất. Đây có thể là nơi kiểm soát và phát sinh
các hành động phức tạp như nghe, nhìn, tư duy,…
c) Hoạt động
Mặc dù mỗi nơron (có thể xem như phần tử xử lý hay phần tử tính) có
tốc độ rất chậm so với tốc độ các cổng logic silicon trong các vi chip 10-3
giây so với 10-10 giây, nhưng do mỗi nơron liên kết với khoảng 104 nơron

khác, cho nên, khi hoạt động thì bộ não hoạt động một cách tổng lực và đạt
hiệu quả cao. Nói một cách khác là phần tử của não hoạt động một cách song
song và tương tác hết sức tinh vi phức tạp. Hiệu quả hoạt động thường rất cao,
nhất là trong các vấn đề phức tạp.
Tóm lại, bộ não có chức năng hết sức quan trọng đối với đời sống của
con người. Cấu tạo của bộ não rất phức tạp, tinh vi bởi được tạo thành từ
mạng nơron có hàng chục tỉ tế bào với mức độ liên kết giữa các nơron là rất
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>17


cao. Hơn nữa, bộ não còn được chia thành các vùng và các lớp khác nhau. Bộ
não hoạt động dựa trên cơ chế hoạt động song song của các nơron tạo nên bộ
não đó.
Lý thuyết về mạng nơron nhân tạo, hay gọi tắt là “mạng nơron”, được
xây dựng xuất phát từ một thực tế là bộ não con người luôn luôn thực hiện các
tính toán một cách hoàn toàn khác so với các máy tính số. Có thể coi bộ não
là một máy tính hay một hệ thống xử lý thông tin song song, phi tuyến và cực
kỳ phức tạp. Nó có khả năng tự tổ chức các bộ phận cấu thành của nó, như là
các tế bào thần kinh (neuron) hay các khớp nối thần kinh (synapse), nhằm
thực hiện một số tính toán như nhận dạng mẫu và điều khiển vận động nhanh
hơn nhiều lần các máy tính nhanh nhất hiện nay. Sự mô phỏng bộ não con
người của mạng nơron là dựa trên cơ sở một số tính chất đặc thù rút ra từ các
nghiên cứu về thần kinh sinh học.

1.1.1.4. Nơron
Nơron là phần tử cơ bản tạo nên bộ não. Cấu tạo và hoạt động của
nơron như sau:
a) Cấu tạo

Một nơron điển hình có 3 phần chính:
- Phần thứ nhất: Thân phần tử hay soma (hoặc cell body). Nhân của
nơron được đặt ở đây.
- Phần thứ hai: Các dendrite. Đây chính là các mạng dạng cây của các
dây thần kinh để nối các soma với nhau.
- Phần thứ ba: axon. Đây là một nối kết, hình trụ dài và mang các tín
hiệu từ đó ra ngoài. Phần cuối của axon được chia thành nhiều nhánh nhỏ.
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>18


Mỗi nhánh nhỏ (cả của dendrite và axon) kết thúc trong một cơ quan nhỏ hình
củ hành được gọi là synapte mà tại đây các nơron đưa các tín hiệu của nó vào
các nơron khác. Những điểm tiếp nhận với các synapte trên các nơron khác có
thể ở các dendrite hay chính soma.

Hình 1.2 Sơ đồ nơron sinh học
b) Hoạt động
Các tín hiệu được đưa ra bởi một synapte và được nhận bởi các
dendrite là các kích thích điện tử. Việc truyền tín hiệu như trên liên quan đến
một quá trình hóa học phức tạp mà trong đó các chất truyền đặc trưng được
giải phóng từ phía gửi của nơi tiếp nối. Điều này làm tăng hoặc giảm điện
thế bên trong thân của nơron nhận. Nơron nhận tín hiệu sẽ được kích hoạt
(fire) nếu điện thế vượt khỏi một ngưỡng nào đó. Một xung (hoặc điện thế
hoạt động) với cường độ mạnh và thời gian tồn tại cố định sẽ được gửi ra
ngoài thông qua axon tới phần nhánh của nơron đó, rồi tới các chỗ nối
synapte của các nơron khác. Sau khi kích hoạt, nơron sẽ chờ một khoảng
thời gian được gọi là chu kỳ refractory, trước khi nó có thể kích hoạt lại.
Synapses là excitatory nếu chúng cho phép các kích thích truyền qua gây ra

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>19


tình trạng kích hoạt đối với nơron nhận. Ngược lại, chúng là inhibitory nếu
chúng cho phép các kích thích truyền qua làm ngăn chở trạng thái kích hoạt
của nơron nhận.
Các synapses đóng vai trò rất quan trọng trong sự học tập. Khi chúng ta
học tập thì hoạt động của các synapses được tăng cường, tạo nên nhiều liên
kết mạnh giữa các nơron. Có thể nói rằng người nào học càng giỏi thì càng có
nhiều synapses và các synapses ấy càng mạnh mẽ, hay nói cách khác, thì liên
kết giữa các nơron càng nhiều, càng nhạy bén.
1.1.2. Mạng Nơron nhân tạo
1.1.2.1. Nơron nhân tạo
Nơron nhân tạo là một đơn vị tính toán có nhiều đầu vào và một đầu ra.
Mỗi đầu vào đến từ một liên kết. Đặc trưng của nơron là một hàm kích hoạt
phi tuyến chuyển đổi tổ hợp tuyến tính của tất cả các tín hiệu đầu vào thành
tín hiệu đầu ra. Hàm kích hoạt này đảm bảo tính chất phi tuyến cho tính toán
của mạng nơron.

Hình 1.3 Mô hình một nơron nhân tạo

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>20


Hình 1.4 Sự tương đương giữa nơron sinh học và nơron nhân tạo [12]
Các thành phần cơ bản của một nơron nhân tạo bao gồm:

♦ Tập các đầu vào: Là các tín hiệu vào (input signals) của nơron, các tín
hiệu này thường được đưa vào dưới dạng một vector N chiều.
♦ Tập các liên kết: Mỗi liên kết được thể hiện bởi một trọng số (gọi là
trọng số liên kết – Synaptic weight). Trọng số liên kết giữa tín hiệu vào thứ j
với nơron k thường được kí hiệu là wkj. Thông thường, các trọng số này được
khởi tạo một cách ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật
liên tục trong quá trình học mạng. Các trọng số liên kết chính là các tham số
tự do cơ bản của mạng nơron. Các trọng số này có thể được thay đổi nhằm
thích nghi với môi trường xung quanh.
♦ Bộ tổng (Summing function): Thường dùng để tính tổng của tích các
đầu vào với trọng số liên kết của nó.
♦ Ngƣỡng (còn gọi là một độ lệch -bias): Ngưỡng này thường được đưa
vào như một thành phần của hàm truyền. Hệ số điều chỉnh b có tác dụng tăng
lên hoặc giảm đi đầu vào thực của hàm truyền tùy theo hàm truyền dương hay
âm.

Số hóa bởi Trung tâm Học liệu - ĐHTN

/>21


♦ Hàm truyền (Transfer function) : Hay còn được gọi là hàm kích
hoạt, hàm này được dùng để giới hạn phạm vi đầu ra của mỗi nơron. Nó nhận
đầu vào là kết quả của hàm tổng và ngưỡng đã cho. Thông thường, phạm vi
đầu ra của mỗi nơron được giới hạn trong đoạn [0,1] hoặc [-1, 1]. Các hàm
truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến. Việc lựa chọn
hàm truyền nào là tuỳ thuộc vào từng bài toán và kinh nghiệm của người thiết
kế mạng. Một số hàm truyền thường sử dụng trong các mô hình mạng nơron
được đưa ra trong bảng 1.2.
♦ Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa

là một đầu ra.
Dưới dạng công thức toán học, chúng ta có thể mô tả một nơron k bằng
cặp công thức sau:
m

uk

wkj x j

(1.1)

j 1


yk= (uk+b)

(1.2)

Ở đó x1,x2,...,xm là các tín hiệu đầu vào; wk1,wk2,...,wkm là các trọng số
synapse của neuron k; uk là đầu ra bộ tổ hợp tuyến tính tương ứng; bk là hệ số
hiệu chỉnh.
Hệ số hiệu chỉnh bk là một tham số ngoài của neuron nhân tạo k.
Chúng ta có thể thấy được sự có mặt của nó trong công thức (1.2). Một cách
tương đương, chúng ta có thể tổ hợp các công thức (1.1) và (1.2) như sau:
m

vk

wkj x j


(1.3)

j 0


yk

(vk )

Số hóa bởi Trung tâm Học liệu - ĐHTN

(1.4)
/>22


Trong công thức (1.3), chúng ta đã thêm một synapse mới. Đầu vào của nó là:
x0=+1

(1.5)

và trọng số của nó là:
wk0=bk

(1.6)

Như vậy chúng ta vẽ lại mô hình của neuron k như trong hình 1.5.
Trong hình này, nhiệm vụ của hệ số hiệu chỉnh là thực hiện hai việc: (1) thêm
một tín hiệu đầu vào cố định là 1, và (2) thêm một trọng số synapse mới bằng
giá trị của hệ số bk. Mặc dầu các mô hình trong hình 1.3 và 1.5 là khác nhau
về hình thức nhưng tương tự về bản chất toán học.


Hình 1.5 Mô hình phi tuyến thứ hai của một mạng nơron
Bảng 1.1 Một số hàm kích hoạt cơ bản trong mạng nơron
Tên hàm

Công thức

Hardlim

a

0

a=1

Số hóa bởi Trung tâm Học liệu - ĐHTN

với n < 0
với n

0

/>23


Hardlims

a

-1 với n < 0


a=1

với n

0

Purelin

a=n

Satlin

a=0

với n < 0

a=n

với 0

a=1

với n > 1

Satlins

Tansig

Poslin


1

a = -1 với n < 0
a=n

với 0

a=1

với n > 1

a

a

en e

0

n

1

n
n

1 e

a=n

Compet

n

với n < 0
với n

0

a = 1 với nơron có n lớn nhất
a = 0 với các nơron còn lại

Logsig

a

1
1 e

n

1.1.2.2. Mạng nơron nhân tạo
Các mạng nơron nhân tạo (Artificial nơron networks – ANN), cũng còn
được gọi là “Các hệ thống xử lý song song phân bố” (Parallel distribute
processing systems), 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. Các phần tử
này hoạt động song song và được nối với nhau bởi các liên kết nơron. Mỗi
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>24



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ác trọng số là phương tiện để lưu trữ thông tin dài hạn trong mạng
nơron. Nhiệm vụ của quá trình huấn luyện 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 quan hệ 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.

Hình 1.6 Sơ đồ đơn giản về một mạng nơron nhân tạo [5]
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. Lớp đó được gọi là “lớp
ẩ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. 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.
Số hóa bởi Trung tâm Học liệu - ĐHTN

/>25


×