Tiểu luận môn học Xử Lý Ngôn Ngữ Tự Nhiên mạng nơ ron Sự phát triển mạnh mẽ của Công nghệ nói chung và Công nghệ thông tin nói riêng đã tạo nên nhiều hệ thống thông tin phục vụ việc tự động hoá mọi hoạt động kinh doanh cũng như quản lý trong xã hội. Điều này đã tạo ra những dòng dữ liệu khổng lồ trở thành hiện tượng “bùng nổ thông tin”.
Trang 1MỞ ĐẦU
Sự phát triển mạnh mẽ của Công nghệ nói chung và Công nghệ thông tin nóiriêng đã tạo nên nhiều hệ thống thông tin phục vụ việc tự động hoá mọi hoạt động kinh doanh cũng như quản lý trong xã hội Điều này đã tạo ra những dòng dữ liệu khổng lồ trở thành hiện tượng “bùng nổ thông tin” Nhiều hệ quản trị cơ sở dữ liệu mạnh với các công cụ phong phú và thuận tiện đã giúp con người khai thác có hiệuquả các nguồn tài nguyên dữ liệu lớn nói trên Bên cạnh chức năng khai thác cơ sở
dữ liệu có tính tác nghiệp, sự thành công trong kinh doanh không chỉ thể hiện ở năng lại tri thức từ dữ liệu hơn là chính bản thân dữ liệu Phát hiện tri thức trong cơ
sở dữ lại tri thức từ dữ liệu hơn là chính bản thân dữ liệu Phát hiện tri thức trong
cơ sở dữ liệu (Knowledge Discovery in Databases - KDD) là một quá trình hợp nhất các dữ liệu từ nhiều hệ thống dữ liệu khác nhau tạo thành các kho dữ liệu, phân tích thông tin để có được nhiều tri thức tiềm ẩn có giá trị Trong đó, khai phá
dữ liệu (Data Mining) là quá trình chính trong phát hiện tri thức Sử dụng các kỹ thuật và các khái niệm của các lĩnh vực đã được nghiên cứu từ trước như học máy, nhận dạng, thống kê, hồi quy, xếp loại, phân nhóm, đồ thị, mạng nơron, mạng Bayes, được sử dụng để khai phá dữ liệu nhằm phát hiện ra các mẫu mới, tương quan mới, các xu hướng có ý nghĩa
Trong bài tiểu luận này, chúng tôi chỉ đề cập đến một phần rất nhỏ của phân
mảng “máy học” mà đại diện chúng tôi chọn để nghiên cứu là “mạng nơ ron” Tiểu luận này được thực hiện dưới sự hướng dẫn TS Nguyễn Thị Minh Huyền
Trường Đại Học Khoa học Tự nhiên, Đại Học Quốc Gia Hà Nội Chúng tôi xin chân thành cảm ơn cô đã hướng dẫn cho chúng tôi để bài tiểu luận này được hoàn thành
Trang 21 GIỚI THIỆU
Khi được hỏi về những kỹ năng thông minh nào là cơ bản nhất đồng thời khó tự động hóa nhất của con người ngoài các hoạt động sáng tạo nghệ thuật, hành động ra quyết định mang tính đạo đức, trách nhiệm xã hội thì người ta thường đề cập đến vấn đề ngôn ngữ và học Trãi qua nhiều năm, hai lĩnh vực này vẫn là mục tiêu, thách thức của khoa học TTNT
Tầm quan trọng của việc học thì không cần phải tranh cãi, vì khả nănghọc chính là một trong những thành tố quan trọng của hành vi thông minh Mặc
dù tiếp cận hệ chuyên gia đã phát triển được nhiều năm, song số lượng các hệchuyên vẫn còn hạn chế Một trong những nguyên nhân chủ yếu là do quá trìnhtích lũy tri thức phức tạp, chi phí phát triển các hệ chuyên gia rất cao, nhưngchúng không có khả năng học, khả năng tự thích nghi khi môi trường thay đổi.Các chiến lược giải quyết vấn đề của chúng cứng nhắc và khi có nhu cầu thayđổi, thì việc sửa đổi một lượng lớn mã chương trình là rất khó khăn Một giảipháp hiển nhiên là các chương trình tự học lấy cách giải quyết vấn đề từkinh nghiệm, từ sự giống nhau, từ các ví dụ hay từ những ‘chỉ dẫn’, ‘lờikhuyên’…
1.1 Định nghĩa học máy
Học máy (hay máy học – Machine learning) là một thành phần quan trọngcủa trí tuệ nhân tạo nhằm nghiên cứu và phát triển các phương pháp, kỹ thuật giúpcho các hệ thống hay máy tính có khả năng học (Tiến Phong)
1.2 Vấn đề quá vừa dữ liệu (Over-fitting)
Thuật ngữ over-fitting ra đời dùng để chỉ một hiện tượng xuất hiện trong quátrình khai phá dữ liệu sử dụng phương pháp học máy Hiện tượng này gây khókhăn đáng kể cho việc thiết kế, xây dựng hệ thống ngay từ bước chuẩn bị dữ liệu
Trang 3cho đến bước kiểm thử hệ thống Khi hiện tượng over-fitting xảy ra sẽ làm chohiệu quả của hệ thống giảm xuống và kết quả thu được từ hệ thống không còn độtin cậy cao Có thể định nghĩa hiện tượng over-fitting như sau:
1.2.1 Định nghĩa quá vừa dữ liệu
Một hàm mục tiêu hay một giả thiết học được h, sẽ được gọi là over-fitting
(quá vừa dữ liệu) với một tập dữ liệu huấn luyện nếu tồn tại một hàm mục tiêu
khác là h’ sao cho:
h’ kém phù hợp hơn, đạt độ chính xác kém hơn so với h trên tập dữ liệu huấn luyện, nhưng h’ lại đạt độ chính xác cao hơn h đối với toàn bộ tập dữ liệu (bao
gồm cả tập dữ liệu liệu huấn luyện và tập dữ liệu kiểm tra)
Ví dụ quá vừa dữ liệu
Giả sử gọi D là tập toàn bộ các dữ liệu có thể có, Training_D là tập các dữ liệuhuấn luyện
Giả sử Err_D(h) là mức lỗi mà giả thiết h sinh ra đối với tập D, vàErr_Training_D(h) là mức lỗi mà giả thiết h sinh ra đối với tập Training_D
Nếu tồn tại một giả thiết khác là h’ sao cho:
Err_Training_D(h) < Err_Training_D(h’) và
Err_D(h) > Err_D(h’)
Thì khi đó h được coi là quá vừa dữ liệu trên tập huấn luyện Training_D
Nguyên nhân quá vừa dữ liệu
Vấn đề over-fitting thường do các nguyên nhân:
Lỗi (nhiễu) trong tập huấn luyện phát sinh trong quá trình thu thập, xây dựngtập dữ liệu
Trang 4 Số lượng dữ liệu của tập huấn luyện quá nhỏ, không đại diện cho toàn bộ tập
dữ liệu có thể có hay toàn bộ phân bố dữ liệu của bài toán
1.3 Bản chất của học máy dưới góc nhìn của xác suất thống kê.
Có thể mô hình hoá một vấn đề máy học như sau:
Cho một dãy l quan sát: (x 1 , y 1 ), (x 2 , y 2 ), … , (x l , y l ) Trong đó:
x1, x2, …, xl là các mẫu, xi Rn Các mẫu xi được phát sinh ngẫu nhiêntheo một hàm phân bố xác suất F(x) nào đó mà ta không biết
yi là các kết quả học tương ứng với mẫu xi, yi R Thường thì y là kết quảcủa một hàm f(x) nào đó – đơn trị Tuy nhiên trong trường hợp tổng quát thì
y không đơn trị Do đó y được xác định theo một hàm phân bố điều kiện F(y|x) mà ta cũng không biết
Bây giờ cho một mẫu x*, vấn đề của máy học là xác định một hàm f0(x) mà cóthể ước lượng tốt nhất giá trị y* tương ứng Như vậy theo lý thuyết tương quantrong thống kê thì f0(x) tốt nhất theo lý thuyết phải là kỳ vọng của y theo x theophân bố F(y|x).f0(x) còn được gọi là phương trình hồi quy
Với x tuân theo phân bố F(x), y tuân theo phân bố có điều kiện F(y|x) thì hàm
phân bố của cặp (x, y) là F(x, y) = F(x)F(y|x) Có thể thấy xác suất để có dãy (x 1 ,
y 1 ), (x 2 , y 2 ), … , (x l , y l ) là tích F(x 1 , y 1 )F(x 2 , y 2 )…F(x l , y l ).
Tuy nhiên, ở đây ta không biết F(x) lẫn F(y|x) nên không thể xác định chính xác
kỳ vọng này Tất cả dữ liệu mà ta biết chỉ là dãy hữu hạn các mẫu quan sát (x 1 , y 1 ), (x 2 , y 2 ), … , (x l , y l ) Nhiệm vụ của máy học là xác định chính xác nhất có thể được
hàm f0(x) dựa trên các dữ liệu hữu hạn này
Trong trường hợp khi y R, tức đây là vấn đề hồi quy (regression)
Trang 5Trong trường hợp bài toán phân lớp (classification) thì y {-1, 1} là trườnghợp nhận dạng hai lớp, nếu yi = -1 thì xi thuộc lớp thứ nhất (không được quan tâm),còn yi = 1 thì xithuộc lớp thứ 2 (lớp được quan tâm)
1.4 Một số phương pháp học máy
Trong lĩnh vực học máy có nhiều phương pháp học khác nhau, trong phầnnày đề cập đến 3 phương pháp học được sử dụng phổ biến nhất, gồm có: họckhông giám sát, học bán/ nửa giám sát và học có giám sát
1.4.1 Phương pháp học không giám sát (Unsupervised Learning)
Khái niệm học không giám sát
Học không giám sát là học với tập dữ liệu huấn luyện ban đầu hoàn toàn chưađược gán nhãn
Học không giám sát là phương pháp học sử dụng cho lớp bài toán gom cụm,phân cụm (Clustering)
Nội dung phương pháp học không giám sát
Để thực hiện phân cụm, trước tiên cần một tập dữ liệu huấn luyện (trainingdataset) – là một tập các ví dụ học (training examples/instances) Trong đó, mỗi ví
dụ học chỉ chứa thông tin biểu diễn (ví dụ: một vector các giá trị thuộc tính), màkhông có bất kỳ thông tin gì về nhãn lớp hoặc giá trị đầu ra mong muốn (expectedoutput)
Áp dụng một thuật toán học không có giám sát (ví dụ k-Means) để học hàm/môhình mục tiêu (trong trường hợp này là hàm phân cụm ứng với thuật toán đượcchọn)
Sử dụng một phương pháp thử nghiệm (có thể kết hợp với một tập dữ liệu cógán nhãn) để đánh giá hiệu năng/chất lượng của hàm mục tiêu học được
Trang 6 Một số thuật toán học không giám sát
Có rất nhiều thuật toán học không giám sát được ra đời và phát triển nhằm giảiquyết bài toán phân cụm phục vụ khai thác hiệu quả nguồn dữ liệu chưa gán nhãnnhiều và rất đa dạng Việc lựa chọn sử dụng thuật toán nào tuỳ thuộc vào dữ liệu
và mục đích của từng bài toán Trong đó các thuật toán thường được sử dụng như:
k-means, HAC (Hierarchical Agglomerative Clustering), SOM (Self-Organizing Map), DBSCAN, FCM, (chi tiết các thuật toán này có thể tìm kiếm trên Internet)
1.4.2 Phương pháp học bán giám sát (Semi-Supervised Learning)
Trong thực tế, để có được một tập dữ liệu có chất lượng và đã được gán nhãncủa một lĩnh vực, thường được thực hiện thủ công bằng tay bởi người có nhiềukinh nghiệm về lĩnh vực đó Vì vậy, dữ liệu đã được gán nhãn thường ít và đắt.Trong khi đó, dữ liệu chưa được gán nhãn lại rất nhiều và phong phú Phươngpháp học bán giám sát (hay học nửa giám sát) được đặt ra để tận dụng cả hai nguồn
dữ liệu này
Khái niệm học bán giám sát
Học bán giám sát là học với tập dữ liệu huấn luyện gồm cả dữ liệu đã được gánnhãn và dữ liệu chưa được gán nhãn
Tuỳ vào từng mục đích cụ thể, học bán giám sát có thể được áp dụng cho bàitoán phân lớp hoặc phân cụm
Nội dung phương pháp học bán giám sát
Nội dung chính của học bán giám sát là hệ thống sử dụng một tập học (trainingset) gồm 2 phần: các ví dụ học có nhãn, thường với số lượng (rất) ít, và các ví dụhọc không có nhãn, thường với số lượng (rất) nhiều Thực tế cho thấy khi sử dụng
Trang 7kết hợp dữ liệu không có nhãn với một lượng nhất định dữ liệu có nhãn có thể tăng
độ chính xác đáng kể
Một thuật toán học bán giám sát được sử dụng (ví dụ Self-training) sẽ học các
ví dụ có nhãn, sau đó tiến hành gán nhãn cho một số (có lựa chọn) các ví dụ không
có nhãn - một cách hợp lý, có đánh giá chất lượng công việc hay độ chính xác.Tiếp theo, chọn các ví dụ vừa được gán nhãn có độ tin cậy cao (vượt trên mộtngưỡng chọn trước) đưa vào kết hợp với tập dữ liệu có nhãn, tạo thành một tập dữliệu huấn luyện mới
Áp dụng một phương pháp kiểm thử (có thể kết hợp với một tập dữ liệu đã biếttrước nhãn) để đánh giá hiệu năng/độ chính xác của mô hình
Một số thuật toán học bán giám sát
Một số thuật toán thường được sử dụng gồm có: thuật toán Cực đại kỳ vọng(EM - Expectation Maximization), SVM truyền dẫn (TSVM - TransductiveSupport Vector Machine), Self-training, Co-training và các phương pháp dựa trên
đồ thị (graph-based)
Việc lựa chọn thuật toán nào dựa trên một số định hướng: nếu các lớp dữ liệu
có tính phân cụm cao thì nên dùng EM với mô hình hỗn hợp sinh; nếu đã sử dụngSVM thì mở rộng thành TSVM; khi khó nâng cấp mô hình học có giám sát đã có,thì nên dùng self-training; nếu các đặc trưng của dữ liệu phân chia tự nhiên thànhhai phần riêng rẽ thì nên dùng Co-training; còn nếu hai mẫu dữ liệu có đặc trưngtương tự nhau hướng tới một lớp thì sử dụng phương pháp dựa trên đồ thị
Trong số các thuật toán học bán giám sát thông dụng, có 2 thuật toán tiêu biểu
là Self-training và Co-training
Thuật toán Self-training:
Trang 8Self-training là kỹ thuật học bán giám sát được sử dụng khá phổ biến do tậndụng được nguồn dữ liệu chưa gán nhãn lớn và ban đầu chỉ cần lượng nhỏ dữ liệu
đã gán nhãn Nội dung chính của Self-training là lặp nhiều lần phương pháp học cógiám sát
Gọi D: là tập các dữ liệu đã được gán nhãn
C : là tập các dữ liệu chưa gán nhãn
Thuật toán Self-training thực hiện như sau:
Lặp (cho đến khi C = Æ):
i Huấn luyện bộ phân lớp có giám sát h trên tập D
ii Sử dụng h để phân lớp dữ liệu trong tập C
iii Tìm tập con C’ Í C có độ tin cậy cao nhất:
D + C’ Þ D ; C – C’ Þ C
Ban đầu huấn luyện bộ phân lớp bằng cách cho bộ phân lớp học một tập dữliệu huấn luyện đã được gán nhãn (tập này thường nhỏ so với tập dữ liệu chưa gánnhãn) Dùng bộ phân lớp đã được huấn luyện, phân lớp cho các dữ liệu chưa đượcgán nhãn Trong số dữ liệu mới được gán nhãn, chọn các dữ liệu có độ tin cậy cao(lớn hơn một ngưỡng nào đó) kèm với nhãn vừa gán, đem bổ sung vào tập dữ liệuhuấn luyện ban đầu Sau đó, bộ phân lớp được học lại trên tập huấn luyện mới(gồm dữ liệu đã gán nhãn ban đầu và dữ liệu do bộ phân lớp mới gán nhãn) vàthuật toán được lặp lại Sau mỗi vòng lặp, bộ phân lớp sẽ bổ sung một số mẫu dữliệu có độ tin cậy cao nhất cùng với dự đoán phân lớp của chúng vào tập dữ liệuhuấn luyện Tên gọi Self-training xuất phát từ việc sử dụng dự đoán của nó để huấnluyện chính nó
Thuật toán Co-training:
Trang 9Thuật toán Co-training dựa trên giả thuyết rằng các đặc trưng của tập dữ liệuhuấn luyện có thể được phân chia thành 2 tập con (trường hợp lý tưởng là hai tậpcon này thoả mãn điều kiện độc lập nhau - conditional independent) Nội dungchính của thuật toán như sau:
Dùng 2 bộ phân lớp phù hợp để học 2 tập con tương ứng (mỗi tập con huấnluyện một bộ phân lớp)
Mỗi bộ phân lớp thực hiện phân lớp cho các dữ liệu chưa gán nhãn, thu đượckết quả là tập dữ liệu chưa gán nhãn kèm theo nhãn dự đoán của chúng.Trong tập kết quả của bộ phân lớp 1, chọn ra những mẫu dữ liệu (kèm nhãn
đã dự đoán) có độ tin cậy cao nhất bổ sung vào tập huấn luyện của bộ phânlớp 2 và ngược lại
Mỗi bộ phân lớp được học lại tập dữ liệu huấn luyện (gồm dữ liệu gán nhãnban đầu và dữ liệu gán nhãn mới bổ sung từ kết quả của bộ phân lớp kia).Quá trình được lặp lại cho đến khi tập dữ liệu chưa gán nhãn rỗng hoặc sốvòng lặp đạt tới một ngưỡng được xác định trước
Thuật toán Co-training:
(1) Huấn luyện hai bộ phân lớp: f (1) từ (Xl (1), Yl), f (2) từ (Xl (2), Yl)
(2) Phân lớp các mẫu dữ liệu chưa gán nhãn Xu với f (1) và f (2) tách biệt nhau (U làtập các mẫu dữ liệu chưa gán nhãn)
(3) Chèn thêm vào f (1) k-most-confident (x, f (1)(x)) tới các dữ liệu đã gán nhãncủa f(2)
(4) Chèn thêm vào f (2) k-most-confident (x, f (2) (x)) tới các dữ liệu đã gán nhãncủa f(1)
(5) Lặp lại các quá trình trên
Thuật toán Co-training trên có thể viết như sau:
Trang 10L: là tập các mẫu dữ liệu đã gán nhãn
U: là tập các mẫu dữ liệu chưa gán nhãn
(1) L có thể phân chia thành hai tập con L1 và L2 (trường hợp lý tưởng thì L1 vàL2 độc lập nhau)
(2) Cho bộ phân lớp h1 học L1 (hay L1 huấn luyện bộ phân lớp h1)
Cho bộ phân lớp h2 học L2 (hay dùng L2 huấn luyện bộ phân lớp h2)
(3) Dùng h1 phân lớp cho U thu được tập U1’ kèm nhãn dự đoán của chúng Dùngh2phân lớp cho U thu được tập U2’ kèm nhãn dự đoán của chúng
(4) Từ U1’ chọn ra u1 mẫu dữ liệu kèm theo nhãn của nó, có độ tin cậy cao nhất
Bổ sung u1 vào L2 Khi đó, L2 + u1 => L2
Từ U2’ chọn ra u2 mẫu dữ liệu kèm theo nhãn của nó, có độ tin cậy cao nhất Bổsung u2vào L1 Khi đó, L1 + u2 => L1
(5) Dùng L1 mới huấn luyện bộ phân lớp h1 (hay h1 học L1)
Dùng L2 mới huấn luyện bộ phân lớp h2 (hay h2 học L2)
(6) Lặp lại từ bước (3) cho đến khi tập U rỗng hoặc số vòng lặp đạt đến ngưỡngxác định trước
Có thể viết rút gọn bằng cách bỏ bước (5) ở trên Bước (6) đổi thành bước(5): Lặp lại từ bước (2) cho đến khi tập U rỗng hoặc số vòng lặp đạt đến ngưỡngxác định trước
1.4.3 Phương pháp học có giám sát (Supervised Learning)
Khái niệm học có giám sát:
Học có giám sát là học với tập dữ liệu huấn luyện ban đầu hoàn toàn được gánnhãn từ trước
Trang 11Học cĩ giám sát là phương pháp học sử dụng cho lớp bài tốn phân lớp, phânloại (Classification).
Nội dung phương pháp học cĩ giám sát:
Để thực hiện phân lớp, trước tiên phải chuẩn bị một tập dữ liệu huấn luyện
(trainning data set), để cĩ tập dữ liệu huấn luyện phải thực hiện gán nhãn cho dữ
liệu ban đầu, đây được gọi là quá trình thu thập tập huấn luyện
Lựa chọn một thuật tốn phân lớp (ví dụ SVM) xây dựng bộ phân lớp
để học tập dữ liệu huấn luyện Hay nĩi cách khác, dùng tập dữ liệu huấn luyện để huấn luyện bộ phân lớp Thuật ngữ học cĩ giám sát được hiểu là học tập dữ liệu đã
được gán nhãn trước (các dữ liệu kèm theo nhãn tương ứng này coi như đã đượcgiám sát bởi người thực hiện gán nhãn)
Sử dụng một tập dữ liệu kiểm tra (test data set) đã được gán nhãn trước, đểkiểm tra tính đúng đắn của bộ phân lớp Sau đĩ, cĩ thể dùng bộ phân lớp để phân
lớp cho các dữ liệu mới
Một số thuật tốn học cĩ giám sát:
Một số thuật tốn thường được lựa chọn khi xây dựng bộ phân lớp gồm cĩ:máy vector hỗ trợ (Support Vector Machine – SVM); k láng giềng gần nhất (KNearest Neighbours – KNN); tiếp cận xác suất thống kê (Nạve Bayes – NB);Cây quyết định (Decision Tree – DT); sử dụng mạng nơron (Neural Network –Nnet); dựa trên vector trọng tâm (Centroid–base vector); hay tuyến tính bìnhphương nhỏ nhất (Linear Least Square Fit – LLSF)
Trang 122 MẠNG NƠRON VÀ ỨNG DỤNG TRONG HỌC MÁY
2.1 Giới thiệu mạng Nơ ron
Các mô hình học theo tiếp cận này bắt chước theo cách học của các hệthần kinh sinh vật Các hệ thống theo mô hình này có khi còn được gọi là
các hệ kết nối (connectionist systems), tính toán neural (Neural computing), mạng neural (Neural Networks), các hệ xử lý phân tán song song (parallel
distributed processing – PDP)
Không giống như các giải thuật của tiếp cận ký hiệu, các mô hình nàykhông sử dụng ký hiệu một cách tường minh để giải quyết vấn đề Thay vào đó,chúng giữ cho trí tuệ phát triển trong các hệ thống gồm các thành phần (neuronsinh học hay neuron nhân tạo) đơn giản, tương tác thông qua một quá trình họchay thích nghi mà nhờ đó kết nối giữa các thành phần này được điều chỉnh Việc
xử lý của các hệ thống này được phân tán trên một tập hợp các lớp neuron Các
hệ thống này giải quyết vấn đề song song theo nghĩa rằng tất cả các neuron trongtập hợp hay trong các lớp sẽ xử lý tín hiệu vào một cách đồng thời và độc lập
Trong khi các giải thuật của tiếp cận ký hiệu sử dụng ký hiệu để mô tả cácmẫu của bài toán như ta đã thấy trong giải thuật ID3 thì những nhà thiết kế mạngneuron phải tạo ra một sơ đồmã hóa các mẫu (pattern) của bài toán thành các đạilượng số để đưa vào mạng Việc chọn lựa một sơ đồ mã hóa thích hợp đóng vaitrò quyết định cho sự thành công hay thất bại trong việc học của mạng
Các mẫu (pattern) của bài toán được mã hóa thành các vector số Các kếtnối giữa các thành phần, hay neuron, cũng được biểu diễn bằng các giá trị số.Cuối cùng, sự biến đổi của các mẫu cũng là kết quả của các phép toán số học,thông thường là phép nhân ma trận Sự chọn lựa kiến trúc kết nối của nhà thiết kế
mạng neuron góp phần vào tính thiên lệch quy nạp (inductive bias) của hệ thống.
Trang 13Các giải thuật và kiến trúc dùng để cài đặt mạng neuron thường đượchuấn luyện (trained) hay tạo điều kiện (conditioned) chứ không được lập trìnhmột cách tường tận Và đây chính là sức mạnh chủ yếu của tiếp cận này.
Các phương pháp của tiếp cận này phát huy sức mạnh của chúng trong cácbài toán mà khó có thể giải quyết bằng các mô hình ký hiệu Tiêu biểu là các bàitoán đòi hỏi các kỹ năng dựa vào nhận thức, hay các bài toán thiếu một cú phápđịnh nghĩa rõ ràng
Các bài toán thích hợp với tiếp cận kết nối thường là:
Bài toán phân loại (classification): quyết định một giá trị đưa vàothuộc loại hay nhóm nào
Bài toán nhận dạng mẫu (pattern recognition): nhận dạng cấu trúc trongcác dữ liệu có thể là bị nhiễu
Bài toán dự đoán (prediction): chẳng hạn như nhận dạng bệnh từ cáctriệu chứng, nhận dạng tác nhân từ các hiệu ứng,…
Bài toán tối ưu (optimization): tìm một tổ chức ràng buộc tốt nhất
Bài toán lọc nhiễu (Noise filtering): hay phân biệt các tín hiệu với nền,tìm ra các thành phần không quan trọng trong một tín hiệu
2.2 Cơ bản về mạng kết nối
2.2.1 Mạng nơ ron nhân tạo
Thành phần cơ bản của một mạng neuron là một neuron nhân tạo, như mô tảtrong hình sau đây
Các tín hiệu đầu vào xi Các dữ liệu này có thể đến từ môi trường, hay
Trang 14đượckích hoạt từ các neuron khác Các mô hình khác nhau có thể cómiền giá trị của đầu vào khác nhau; thông thường các giá trị đầu vào này
là các số rời rạc (discrete) lấy từ tập {0,1} hay {-1,1} hay số thực
Một tập các trọng số (weight) có giá trị thực, wi Các trọng số này dùng để
mô tả sức mạnh kết nối, hay sức mạnh của các kết nối thiên lệch (bias link)
Một mức kích hoạt (activation level) hay hàm kích hoạt Σwixi Mức kích
hoạt của một neuron được xác định bởi sức mạnh tích lũy từ các tín hiệuđầu vào của nó nơi mà mỗi tín hiệu đầu vào được tỷ lệ lại bằng trọng sốkết nối wi ở đầu vào đó Vì vậy, mức kích họat được tính toán bằng cáchlấy tổng các giá trị đầu vào sau khi được tỉ lệ hóa, Σwixi
Một hàm ngưỡng (threshold function), f Hàm này tính kết quả đầu ra của
neuron bằng cách xác định xem mức kích hoạt nằm dưới hay trên một giátrị ngưỡng là ít hay nhiều Hàm ngưỡng này có khuynh hướng tạo ra trạngthái tắt/mở của các neuron
2.2.2 Các đặc trưng cơ bản của mạng nơ ron
Ngoài các tính chất của một neuron đơn lẻ, một mạng neuron còn đượcđặc trưng bởi các tính chất toàn cục như sau:
Hình thái mạng (network topology): là mô hình hay mẫu kết nối giữa các neuron đơn lẻ
Trang 15 Giải thuật học (learning algorithm): là giải thuật dùng để điều chỉnh các
trọng số ở các đầu vào của các neuron Trong các phần tiếp theo củachương này sẽ trình bày một số giải thuật học tiêu biểu
Sơ đồ mã hóa (encoding schema): Bao gồm việc thông dịch dữ liệu thực
tế thành các giá trị đầu vào của mạng, và việc thông dịch giá trị đầu ra củamạng thành một kết quả có ý nghĩa
2.2.3 Mạng neuron McCulloch-Pitts
Ví dụ đầu tiên về tính toán neural được MacCulloch và Pitts đưa ra vào
1943 Đầu vào của một neuron McCulloch-Pitts là +1 (kích thích) hoặc –1 (ứcchế) Hàm kích hoạt nhân mỗi đầu vào với giá trị trọng số tương ứng và cộngchúng lại; nếu tổng lớn hơn hay bằng không, thì neuron trả về 1, ngược lại, là –1
McCulloch-Pitts cho thấy các neuron này có thể được xây dựng để tínhtoán bất cứ hàm logic nào, chứng minh rằng các hệ thống gồm các neuronnày cung cấp một mô hình tính toán đầy đủ
Hình minh họa các neuron McCulloch-Pitts dùng để tính
hàm logic and và or.
Các neuron này có 3 đầu vào: x và y là các giá trị cần đưa vào,
còn đầu vào thứ ba, đôi khi còn được gọi là một thiên lệch (bias), có giá
trị hằng là +1
Ba đầu vào của neuron and có 3 trọng số tương ứng là +1, +1 và
Trang 16–2 Vì vậy, với các giá trị bất kỳ của x, y, neuron tính giá trị x+y-2;
nếu giá trị này nhỏ hơn 0, nó trả về –1 Ngược lại trả về 1
Bảng bên dưới minh họa cho tính toán neuron x and y.
Mặc dù McCulloch-Pitts chứng minh cho sức mạnh của tính toán eural,nhưng sức hấp dẫn của tiếp cận này chỉ thực sự bắt đầu khi các giải thuật họcthực tế bắt đầu phát triển Phiên bản đầu tiên của mạng neuron có kèm giải thuậthọc được Frank Rosenblatt đưa ra vào cuối thập niên 1950, có tên gọi làperceptron
2.2.4 Học perceptron
Perceptron là mạng neuron đơn tầng Cách lan truyền tín hiệu củaperceptron tương tự với neuron McCulloch-Pitts Các giá trị đầu vào và các mứckích hoạt của perceptron là -1 hoặc 1; trọng số là các số thực Mức kích hoạtđược xác định qua tổng ∑wixi Perceptron sử dụng một hàm ngưỡng giới hạncứng, khi một kích hoạt nằm bên trên ngưỡng, hàm sẽ cho kết quả là 1, và -1 nếungược lại Cho trước các giá trị đầu vào xi, các trọng số wi, và một ngưỡng, t,hàm ngưỡng f của perceptron sẽ trả về:
1 nếu ∑wixi >= t