Với những lý do trên và qua quá trình được học môn Khai phá dữ liệu và kho dữ liệu, em chọn đề tài Một số kỹ thuật phân lớp và ứng dụng trong việc phân loại thông điệp trên diễn đàn thảo
Trang 1Trường Đại Học Công Nghệ Thông Tin
BÁO CÁO CHUYÊN ĐỀ KHAI PHÁ DỮ LIỆU VÀ KHO DỮ LIỆU
ĐỀ TÀI:
MỘT SỐ KỸ THUẬT PHÂN LỚP VÀ ỨNG DỤNG TRONG VIỆC MỘT SỐ KỸ THUẬT PHÂN LỚP VÀ ỨNG DỤNG TRONG VIỆC PHÂN LOẠI THÔNG ĐIỆP TRÊN DIỄN ĐÀN THẢO LUẬN.
GVHD : PGS Tiến sỹ Đỗ Phúc Người thực hiện : Phạm Hùng Phương
HÀ NỘI – 2014
Trang 2LỜI CẢM ƠN
Em xin chân thành cảm ơn khoa sau đại học trường Đại học Công nghệthông tin – Đại học Quốc gia TP.HCM đã tạo điều kiện giúp em hoàn thành mônhọc
Em xin cám ơn sâu sắc đến PGS.TS Đỗ Phúc Thầy đã tận tình giảng dạychuyển tải thông tin đến cho lớp chúng em trong suốt thời gian học tập và
nghiên cứu môn Khai phá dữ liệu và kho dữ liệu.
Bằng lượng kiến thức đã học tập và nghiên cứu được em cố gắng hoànthành bài thu hoạch trong phạm vi cho phép, nhưng do thời gian và kiến thứccòn hạn chế nên bài thu hoạch vẫn còn nhiều thiếu sót Kính mong thầy quantâm giúp đỡ và chỉ bảo để em hoàn thiện bài thu hoạch tốt hơn nữa
Một lần nữa em xin được tỏ lòng biết ơn thày đã giảng dạy và chỉ bảo tậntình, cám ơn các thày cô khoa sau đại học và nhà trường đã tạo điều kiện đểchúng em hoàn thành môn học
Trang 3MỤC LỤC
LỜI CẢM ƠN 1
LỜI MỞ ĐẦU 3
CHƯƠNG 1 MỘT SỐ KỸ THUẬT PHÂN LỚP 5
1.1 Khái niệm phân lớp 5
1.1.1 Bước 1: Xây dựng mô hình (hay bộ phân lớp) từ tập huấn luyện 5
1.1.2 Bước 2: Vận hành (sử dụng) mô hình 6
1.2 Phân lớp dựa trên cây quyết định (Decision tree) 7
1.2.1 Giới thiệu 7
1.2.2 Tạo cây quyết định 8
1.2.3 Rút luật phân lớp từ cây quyết định 11
1.2.4 Đánh giá 12
1.3 Phân lớp dựa vào mạng nơron (Neural Network) 12
1.3.1 Giải thuật mạng nơron 12
1.3.2 Đánh giá 16
1.4 Phân lớp Naive Bayes 16
1.4.1 Sự phân hoạch và công thức Bayes 16
1.4.2 Mô hình phân lớp Naive Bayes 17
1.4.3 Đánh giá 20
CHƯƠNG 2 ỨNG DỤNG PHÂN LỚP NAIVE BAYES ĐỂ PHÂN LOẠI THÔNG ĐIỆP TRÊN DIỄN ĐÀN 22
2.1 Hệ thống chương trình 22
2.2 Qui trình thực hiện 22
2.2.1 Cơ sở dữ liệu lưu trữ thông điệp 24
2.2.2 Xây dựng Website diễn đàn thảo luận 26
2.2.3 Quá trình trích chọn đặc trưng thông điệp 26
2.2.4 Xây dựng bộ phân lớp văn bản Naive Bayes 29
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 3
Trang 4CHƯƠNG 3 KẾT LUẬN 32TÀI LIỆU THAM KHẢO 33
LỜI MỞ ĐẦU.
Với sự phát triển của Internet, lượng thông tin chứa đựng trong các trangweb ngày càng nhiều, một trong những hình thức của trang web đó là diễn đànthảo luận Có rất nhiều diễn đàn trên mạng Internet với nhiều lĩnh vực khác nhau.Việc tổ chức, quản lý nội dung thông tin trên diễn đàn không phải là một côngviệc đơn giản, thường có những vấn đề nảy sinh:
- Người đưa tin sai diễn đàn chuyên đề
- Người quản trị có ít công cụ để kiểm duyệt và xem các thông điệp trêntừng chủ đề
- Chức năng thống kê của điễn đàn chưa thật mạnh cho người quản trị cóthể thống kê theo từ khoá…
Sự phát triển nhanh chóng các ứng dụng công nghệ thông tin và Internetvào nhiều lĩnh vực đời sống đã tạo ra nhiều cơ sở dữ liệu khổng lồ
Để khai thác hiệu của nguồn thông tin từ các cơ sở dữ liệu lớn trong việc
hỗ trợ tiến trình ra quyết định, bên cạnh những phương pháp khai thác thông tintruyền thống, các nhà nghiên cứu đã phát triển nhiều phương pháp, kỹ thuật vàphần mềm mới hỗ trợ tiến trình khám phá, phân tích tổng hợp thông tin
Có thể chia khai thác dữ liệu thành hai dạng chính: khai thác dữ liệu theohướng kiểm tra và khai thác dữ liệu theo hướng khám phá Trong khai thác dữliệu theo hướng kiểm tra, người dùng đề xuất giả thiết, hệ thống kiểm tra tínhđúng đắn của giả thiết Khai thác dữ liệu theo hướng kiểm tra bao gồm: truy vấn,báo cáo, phân tích đa chiều, phân tích thống kê… Ngược lại, khai thác dữ liệutheo hướng khám phá sẽ tìm kiếm các tri thức tiềm ẩn trong CSDL bằng cáchtiến hành xem xét tất cả các giả thiết khả dĩ Do không gian tìm kiếm lớn, nênrất nhiều heuristic đã được đề xuất nhằm nâng cao hiệu suất của các thuật giảitìm kiếm
Ngày nay, khi công cụ thu thập dữ liệu tự động và công nghệ lưu trữ dữliệu ngày càng hoàn thiện giúp con người tạo lập và quản lý một lượng dữ liệukhổng lồ trong các CSDL, kho dữ liệu thì nhu cầu nắm bắt dữ liệu, trích rútthông tin trở thành cấp thiết và có ý nghĩa Mặt khác, với nhu cầu ngày càng caohơn, con người không bằng lòng với những dữ liệu đơn giản thu được từ những
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 4
Trang 5kỹ thuật trước đây Từ nhu cầu về những sự kiện rời rạc trong lĩnh vực ứng dụngnay phát sinh nhu cầu nắm bắt tri thức về các mối quan hệ giữa chúng, xa hơnnữa là phát hiện những quy luật trong lĩnh vực đó Khai thác dữ liệu ra đời nhằmđáp ứng các nhu cầu cấp thiết đó
Do đó việc phát triển công cụ hỗ trợ quản lý nội dung và tổ chức thông tintrên diễn đàn thảo luận là cần thiết Trong đó bài toán phân loại thông điệp trêndiễn đàn mang nhiều ý nghĩa và đem lại hiệu quả trong quản lý thông tin trêndiễn đàn
Với những lý do trên và qua quá trình được học môn Khai phá dữ liệu và
kho dữ liệu, em chọn đề tài Một số kỹ thuật phân lớp và ứng dụng trong việc
phân loại thông điệp trên diễn đàn thảo luận để viết bài thu hoạch Em rất
mong tiếp tục nhận được sự quan tâm chỉ bảo của Thầy
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 5
Trang 6CHƯƠNG 1 MỘT SỐ KỸ THUẬT PHÂN LỚP.
1.1 Khái niệm phân lớp
Phân lớp dữ liệu (data classification) là xếp đối tượng dữ liệu vào mộttrong các lớp đã được xác định trước Phân lớp dữ liệu gồm hai bước là xây dựng
mô hình và vận hành mô hình
Xây dựng mô hình nhằm mục tiêu mô tả một tập những lớp đã được
định nghĩa trước trong đó mỗi bộ hoặc mẫu sẽ được gán về một lớp đã xác địnhtrước bởi thuộc tính nhãn lớp
Vận hành mô hình nhằm mục đích xác định lớp của dữ liệu trong
tương lai hoặc phân lớp những đối tượng chưa biết
Lớp sẽ được định nghĩa bởi một phân hoạch không gian các mẫu dữ liệu(tức là không gian các thuộc tính hay không gian đặc trưng của mẫu) Có thể nóilớp là một hàm của các thuộc tính (đặc trưng) Như vậy việc phân lớp một mẫumới sẽ không tốt nếu mẫu đề đặt ra là làm thế nào để có thể chọn ra một không gianthuộc của các mẫu đạt kết quả tốt mà vẫn đảm bảo không gian các thuộc tính nàyđại diện cho các tập mẫu đã cho trước đó
Có nhiều cách tiếp cận bài toán phân lớp nhưng nhìn chung có ba xu hướngnghiên cứu chính: tiếp cận phân lớp theo thống kê, theo máy học và mạngnơron
Tiếp cận phân lớp theo hướng thống kê có đặc điểm chung là dựa trên mô hìnhxác suất cơ sở rõ ràng, đưa ra xác suất của một mẫu có thể thuộc lớp nào, cụ thể hơnphân lớp thuần tuý
Một số phương pháp được áp dụng trong lĩnh vực phân lớp như: Câyquyết định, Luật kết hợp, Mạng noron, Xác suất Naive Bayes…
Bài thu hoạch này trình bày các bước để xây dựng mô hình phân lớp vànêu lên một số vấn đề quan tâm trong các hệ thống phân lớp hiện nay, giới thiệumột số phương pháp phân lớp cơ bản
Như đã nói ở trên, phân lớp là một tiến trình gồm 2 bước:
1.1.1 Bước 1: Xây dựng mô hình (hay bộ phân lớp) từ tập huấn luyện
- Mỗi bộ/mẫu dữ liệu được phân vào một lớp xác định trước
- Lớp của một bộ/mẫu dữ liệu được xác định bởi thuộc tính gán nhãn lớp
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 6
Trang 7- Tập các bộ/mẫu dữ liệu huấn luyện (còn được gọi là tập huấn luyện) đượcdùng để xây dựng mô hình.
- Mô hình được biểu diễn bởi các luật phân lớp, các quyết định hoặc cáccông thức toán học
1.1.2 Bước 2: Vận hành (sử dụng) mô hình
Sử dụng mô hình là kiểm tra tính đúng đẵn của mô hình và dùng mô hình
để phân lớp dữ liệu mới:
- Phân lớp cho những mẫu mới hoặc chưa được phân lớp
- Đánh giá độ chính xác của mô hình bằng cách:
* Lớp biết trước của một mẫu/bộ dữ liệu đem kiểm tra được so sánh vớikết quả thu được từ mô hình
* Tỉ lệ chính xác bằng phần trăm các mẫu/bộ dữ liệu được phân lớp đúngbởi mô hình trong số các lần kiểm tra
Hiện nay có nhiều kỹ thuật phân lớp được nghiên cứu trên thế giới, tuy nhiên,trong thực tế khi áp dụng các kỹ thuật phân lớp cho thấy rằng không có một
kỹ thuật phân lớp nào là tốt nhất cho mọi ứng dụng mà mỗi kỹ thuật phân lớpchỉ tốt đối với từng trường hợp cụ thể mà thôi
Có nhiều vấn đề mà một bộ phận lớp cần phải quan tâm và giải quyết Mộttrong số các vấn đề đó là:
* Độ chính xác: Độ tin cậy của một luật dựa vào độ chính xác khi phân lớp,mặc dù có một số lỗi được xem là nghiêm trọng hơn các lỗi khác nhưng vấn đềquan trọng là được hiệu chỉnh và đánh giá chính xác đối với các lớp quan trọng
* Tốc độ: Trong một số tình huống, tốc độ phân lớp được xem như là mộtyếu tố quan trọng Khi đó, một bộ phân lớp với độ chính xác 92% có thể được
ưa chuộng hơn bộ phận lớp có độ chính xác 95% nhưng chậm hơn 100 lần trongcác phép kiểm tra
* Dễ hiểu: Một bộ phân lớp dễ hiểu sẽ tạo cho người sử dụng tin tưởng hơnvào hệ thống, đồng thời cũng giúp cho người sử dụng tránh được việc hiểu lầmkết quả của một luật được đưa ra bởi hệ thống
* Thời gian để học: Vấn đề này đặc biệt nghiêm trong khi hệ thống được sửdụng trong các môi trường thay đổi thường xuyên, điều đó yêu cầu hệ thống
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 7
Trang 8phải học rất nhanh một luật phân lớp hoặc nhanh chóng điều chỉnh một luật đãđược học cho phù hợp với thực tế.
Sau đây sẽ trình bày một số kỹ thuật phân lớp chính: Phân lớp dựa trên câyquyết định, phân lớp dựa vào mạng nơron và phân lớp xác suất Naive Bayes
1.2 Phân lớp dựa trên cây quyết định (Decision tree).
1.2.1 Giới thiệu.
Phương pháp học dựa trên cây quyết định là một phương pháp xấp xỉ hàm đích
có giá trị rời rạc, trong đó mỗi hàm đã học được thể hiện bởi một cây quyết định.Các cây đã học cũng có thể đựơc trình bày lại như là tập các luật dạng nếu thì đểcho dễ hiểu hơn
Cây quyết định là một cây trong đó:
- Mỗi nút trong xác định một phép kiểm tra trên một thuộc tính
- Mỗi nhánh của cây là đầu ra của một phép kiểm tra
- Mỗi nút lá là nhãn phân lớp hoặc sự phân chia vào lớp
Ví dụ: Bảng 1.1 minh họa tập dữ liệu mẫu dùng trong phân lớp cây quyết định,lớp = C (có chơi tennis), lớp = K (không chơi tennis)
Bảng 1.1 Tập dữ liệu học “chơi tennis”
Không
Có
Mưa Nắng
Trang 9
Cây quyết định xây dựng từ tập huấn luyện mẫu bảng 1.
Phân lớp một thể hiện được bắt đầu từ nút gốc của cây, kiểm tra giá trị củathụôc tính tại nút này, sau đó đi xuống nhánh mà thoả giá trị thuộc tính của thểhiện cần phân lớp Tiến trình được lặp đi lặp lại cho đến nút lá thì dừng Tiếp tụcphân lớp cho các thể hiện khác cũng phải bắt đầu từ nút gốc
1.2.2 Tạo cây quyết định
1.2.2.1 Thuật toán
Tiến trình tạo cây quyết định gồm hai giai đoạn: xây dựng cây và thu gọn cây.Giai đoạn 1: Xây dựng cây
- Bắt đầu, tất cả các mẫu huấn luyện đều ở gốc
- Phân chia các mẫu dựa trên các thuộc tính được chọn
- Kiểm tra các thuộc tính được chọn dựa trên một độ đo thống kê hoặcheuristic
Giai đoạn 2: Thu gọn cây
- Xác định và loại bỏ những nhánh nhiễu hoặc tách khỏi nhóm
- Thuật toán mô tả tiến trình học dựa trên cây quyết định được thực hiệntheo hướng xây dựng một cây đệ quy phân chia và xác định các thuộc tính từtrên xuống như sau:
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 9
Tạo_cây (Tập dữ liệu học toàn bộ S)
Phân hoạch (S)
Phân_hoạch (Tập dữ liệu phân mảnh S i )
Nếu tất cả các mẫu trong S 1 có cùng lớp thì dừng
Ngược lại, tính khả năng tách nhánh cho mỗi thuộc tính A
Chọn ra một khả năng tách nhánh tốt nhất được tìm thấy từ các khả năng tách nhánh trên để phân hoạch S i , thành S i1 và S i2
Phân hoạch (S i1 )
Phân hoạch (S i2 )
Trang 10 Các thuộc tính được xem là rõ ràng, rời rạc
Có nhiều thuật toán khác nhau: ID3, C4,5, CART, CHAID, tuỳ thuộc vàocác điểm khác biệt chính: tiêu chuẩn/ thuộc tính phân chia, độ đo để lựa chọnthuộc tính
Một độ đo để lựa chọn thuộc tính được sử dụng khá rộng rãi là độ lợi thông tin(hay còn là Information Gain) Nhiều thụât toán sử dụng tiêu chuẩn này để lựa chọnthuộc tính tốt nhất giữa các thuộc tính tại mỗi bước trong quá trình xây dựng cây
1.2.2.2 Độ lợi thông tin (Information Gain)
Các thuộc tính được xem là rõ ràng, rời rạc Gọi A là tập thuộc tính trêntoàn bộ tập dữ liệu mẫu, A = {A1, A1, An} (ví dụ trong bảng 1: A = {thời tiết,nhiệt độ, độ ẩm, gió}) Thuật toán phân lớp dựa trên cây quyết định quan trọng ởviệc chọn thụôc tính A nào (tiêu chuẩn nào) để kiểm tra tại mỗi nút của cây(theo thứ tự từ trên xuống) Do đó ta sẽ chọn thụôc tính A có chỉ số độ lợi thôngtin lớn nhất – gọi là Gain (A)
Cho P và N là 2 lớp và S là một tập dữ liệu có p mẫu học thuộc lớp P và nmẫu thuộc lớp N
Định nghĩa khối lượng thông tin cần thiết để quyết định một mẫu tuỳ ý cóthuộc về lớp P hay N hay không là I (p,n):
n p
n n
p
n n p
p n
p
p n
Cho các tập {S1, S2, Sv} là một phân hoạch trên S khi sử dụng thuộc tính
A S1 đến Sv là v tập con của tập dữ liệu mẫu được phân mảnh bởi v giá trịthuộc tính A Mỗi Si chứa pi, mẫu lớp P và ni mẫu lớp N
Định nghĩa “Entropy” là thông tin mong muốn cần thiết để phân lớp các
đối tượng trong tất cả các cây con Si:
i I p n n
p
n p A
E
1
) , ( )
(
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 10
Trang 11 Độ lợi thông tin có được bởi việc phân nhánh trên thuộc tính A được tínhbằng công thức:
Ví dụ:
Từ tập dữ liệu mẫu bảng 1.1 ta có:
Lớp P: chơi tennis = “C”
Lớp N: chơi tennis = “K”
Thông tin cần thiết để phân lớp một mẫu được cho: I(p,n) = T(9,5) = 0.940
Tính entropy cho thuộc tính A = “thời tiết” => phân hoạch dữ liệu (s1,s2,s3)
Thời tiết p i N i I(p i ,n i )
1.2.2.3 Tỉ lệ độ lợi (Gain Ration)
Đối với một số thuộc tính có quá nhiều giá trị, ví dụ thuộc tính “ngày” thìkhi tính độ đo Information Gain (độ lợi thông tin) luôn lớn hơn đối với các thụôc
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 11
Gain (A) = I (p,n) – E (A)
Trang 12tính khác, khi đó thuật toán sẽ thực hiện hoàn hảo việc phân lớp trên tập dữ liệuhọc nhưng sinh ra hàm đích xấu đối với các thể hiện chưa được phân lớp.Nguyên nhân do thụôc tính có quá nhiều giá trị sẽ dẫn đến tập mẫu được phântách thành các tập con quá nhỏ.
Một tiêu chuẩn khác được đưa ra để giải quyết vấn đề này là tiểu chuẩnGain Ratio (Quinlan 1986) Gain Ratio được tính toán qua giá trị SplitInformation (độ nhạy cảm với sự phân mảnh thông tin)
n p
n p n p
n p
S
S S
S A
mation SplitInfor
i i p
i
i i
i p
i i
2 1
log
log )
Mỗi Si chứa pi mẫu lớp P và ni mẫu lớp N
Với S = tổng số mẫu trên tập dữ liệu mẫu S, S i = tổng số mẫu trên tập Si.Công thức tính Gain Ratio được xác định như sau:
1.2.3 Rút luật phân lớp từ cây quyết định
Mỗi một đường dẫn từ gốc đến lá trong cay tạo thành một luật
Ví dụ một luật trong hình 1.1: IF thời tiết = nắng AND độ ẩm = vừa THENchơi tennis (lớp = C)
Nút lá giữ quyết định phân lớp dự đoán
Mỗi cặp giá trị thuộc tính trên một đường dẫn tạo nên một sự liên tục
Các luật được dễ hiểu hơn các cây
1.2.4 Đánh giá
Phương pháp phân lớp dựa trên cây quyết định có các tính chất
Có thể chuyển đổi thành các luật phân lớp đơn giản và dễ hiểu
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 12
) (
) ( )
(
A mation SplitInfor
A Gain A
Trang 13 Dễ tích hợp với các hệ thống cơ sở dữ liệu
Gặp khó khăn khi làm việc với lượng dữ liệu lớn và phân làm nhiều lớp
Cây được tạo có thể overfit do dữ liệu huấn luyện có quá nhiều nhánh hoặc
độ chính xác kém cho những mẫu chưa biết Một số nguyên nhân làm chocây quyết định có thể bị overfit như:
Dữ liệu nhiễu và tách rời khỏi nhóm
Dữ liệu huấn luyện quá ít
Các giá trị tối đa cục bộ trong tìm kiếm tham lam
Do đó để tránh trường hợp này, hai hướng thường được xử lý: rút gọn trước
sẽ là ngừng sớm, hoặc rút gọn sau sẽ là loại bỏ bớt các nhánh sau khi xây xongtoàn bộ cây
1.3 Phân lớp dựa vào mạng nơron (Neural Network)
1.3.1 Giải thuật mạng nơron
Mạng nơron (Neural Netwok) là một công cụ có khả năng giải quyết đượcnhiều bài toán khó Mạng nơron là giải thuật phan loại dựa trên sự mô phỏngkhả năng suy luận của con người
Mạng nơron được ứng dụng nhiều trong các bài toán về nhận dạng (Vân tay,tiếng nói, chữ hay các ứng dụng nhận dạng khác), trong lĩnh vực khai khoáng
dữ liệu (data mining), bài toán xây dựng các hệ hỗ trợ ra quyết định, đánh giáhiệu năng của mạng Mạng Noron còn có thể kết hợp với logic mờ để tạo ramạng Nơron mờ
Trong mạng nơron có rất nhiều mô hình mạng như mạng nơron lan truyềnthuận/ngược, mạng Kronell Đối với trường hợp học để giải thích dữ liệu nhạycảy của thế giới thực thì mạng nơron là một trong các phương pháp học hiệu quảnhất hiện nay Thuật toán lan truyền ngược đã chứng tỏ hiệu quả trong việc nhậndạng chữ viết (Lecun et al, 1989) hay nhận diện khuôn mặt (Cottell, 1990).Mạng nơron là một hệ thống được tạo thành bởi sự nối kết giữa nhiều đơn
vị nơron xử lý đơn giản và hoạt động song song gọi là perceptron Những đơn vịnơron có nhiệm vụ thu thập các tín hiệu, xác định các trọng số wi, nhận được từcác tín hiệu xử lý xi tại các đơn vị nơron khác truyền đến nó, sau đó tổng cộng
và chuyển tín các tín hiệu ấy sang các đơn vị nơron khác
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 13
Trang 14Trong mô hình nơron nhân tạo mỗi nơron được nối với các nơron khác vànhận tín hiệu xi, từ chúng với các trọng số wi Tổng thông tin vào có trọng số là:
Trong đó: được gọi là ngưỡng kích hoạt của nơron
Hàm f được gọi là hàm truyền
Hình 1.2 Cấu tạo một nơron
Một số hàm truyền thường được sử dụng:
* Hàm logistic (hay còn gọi là hàm Sigma): f(x) = ex
1 1
Việc huấn luyện cho một mạng nơron bao gồm cập nhật các trọng số chocác perceptron, giải thuật phức tạp hơn nhiều do ta chỉ biết dữ liệu nhập, dữ liệuxuất cho từng mẫu và phải cập nhật các trọng số cho tất cả perceptron ở các lớp.Việc cập nhật được thực hiện theo hai chiều là lan truyền thuận và lan truyềnngược Lan truyền thuận: dữ liệu xuất của lớp i sẽ được sử dụng như dữ liệunhập của lớp i + 1 Quá trình này được lan truyền từ lớp nhập để tính giá trị xuấtcho lớp xuất Lan truyền ngược: độ chênh lệch giữa giá trị thực và giá trị xuấtbởi mạng ở lớp i sẽ được dùng để điều chỉnh trong số cho lớp i - 1
Mô hình minh hoạ mạng nơron một lớp như hình 1.3
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 14
W0
Cung liên kết (trọng số wi)
Nút xuất Tín hiệu vào
(các nút nhập)
Trang 15Hình 1.3 Mô hình minh hoạ mạng nơron một lớp
Mô hình minh hoạ mạng nơron tổng quát (nhiều lớp) như hình 1.4
Hình 1.4 Mô hình minh hoạ mạng nơron tổng quát
Trang 16= f (W3,5 f(W1,3I1 + W2,3I2) + W4,5 f(W1,4I1 + W2,4I2)
Mạng nơron nhìn theo hướng khác gồm các lớp: lớp nhập (input), lớp ẩn(hidden), và lớp xuất (output)
Hình 1.6 Mô hình mạng nơron nhìn hướng khác
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àomạng Dữ liệu từ tất cả các nút trong lớp nhập được tổng trọng hoá và chuyểnkết quả cho các nút trong lớp ẩn Tương tự, các nút trong lớp xuất cũng nhậnđược các tín hiệu tích hợp từ các nút trong lớp ẩn Mỗi nút trong lớp xuất tươngứng một biến phụ thuộc Trong thực tế, hầu hết các bài toán gặp phải thường cónhiều biến độc lập và thường có nhiều biến phụ thuộc Vì thế ta cần một mạngtổng quát có nhiều nút nhập và nhiều nút xuất
Phần lớn các bài toán chỉ có một biến phụ thuộc, nhưng mạng nơron cho phép
có số biến phụ thuộc tuỳ ý Ví dụ trong bài toán phân lớp, chúng ta cần xác địnhlớp của các mẫu mới (vd: mỗi mẫu có 100 thuộc tính (đặc trưng)) trong tổng số
12 lớp có thể có thì chúng ta có thể xây dựng một mạng với 100 nút trong lớpnhập và 12 nút trong lớp xuất, giá trị nút trong lớp xuất nào cao nhất thì khả năngmẫu mới sẽ thuộc về lớp tương ứng với nút trong lớp xuất đó Mạng lan truyềntổng quát có thể có n lớp (n>2): lớp thứ nhất gọi là lớp nhập, lớp thứ n là lớp xuất,
và n - 2 lớp ẩn
1.3.2 Đánh giá
Phương pháp phân lớp dựa trên mạng nơron có các đặc điểm sau:
Phạm Hùng Phương: Lớp Cao học CNTT QM Khoá 06 Trang 16
Dữ liệu xuất
Dữ liệu nhập
Lớp ẩn
Lớp nhập Lớp ẩn