ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
------------------
CHỬ ĐỨC THÀNH
TÌM HIỂU KỸ THUẬT NHẬN DẠNG VĂN BẢN
TRONG LỚP NGÔN NGỮ LA TINH
LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH
THÁI NGUYÊN, NĂM 2015
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
------------------
CHỬ ĐỨC THÀNH
TÌM HIỂU KỸ THUẬT NHẬN DẠNG VĂN BẢN
TRONG LỚP NGÔN NGỮ LA TINH
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01 01
LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH
NGƢỜI HƢỚNG DẪN KHOA HỌC: TS. ĐẶNG THỊ THU HIỀN
THÁI NGUYÊN, NĂM 2015
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
LỜI CẢM ƠN
Tôi xin chân thành cảm ơn các Thầy giáo, Cô giáo trong khoa Công nghệ
thông tin và các cán bộ, nhân viên phòng Đào tạo Sau đại học, Trƣờng Đại học
Công nghệ Thông tin và Truyền thông - Đại học Thái Nguyên đã luôn nhiệt tình
giúp đỡ và tạo điều kiện tốt nhất cho tôi trong suốt quá trình học tập tại trƣờng.
Xin chân thành cảm ơn các anh, các chị và các bạn học viên lớp Cao học
CK12H - Trƣờng Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái
Nguyên đã luôn động viên, giúp đỡ và nhiệt tình chia sẻ với tôi những kinh nghiệm
học tập, công tác trong suốt khoá học.
Đặc biệt tôi xin bày tỏ lòng biết ơn sâu sắc đến TS. Đặng Thị Thu Hiền đã tận
tình giúp đỡ tôi hình thành và hoàn chỉnh luận văn.
Mặc dù đã có nhiều cố gắng, song do sự hạn hẹp về thời gian, điều kiện nghiên
cứu và trình độ, luận văn không tránh khỏi những khiếm khuyết. Tôi chân thành
mong nhận đƣợc sự đóng góp ý kiến của các Thầy giáo, Cô giáo và đồng nghiệp.
Một lần nữa tôi xin cảm ơn!
Thái Nguyên, tháng 08 năm 2015
Ngƣời thực hiện luận văn
Chử Đức Thành
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
MỤC LỤC
MỞ ĐẦU ....................................................................................................................4
CHƢƠNG I TỔNG QUAN VỀ NHẬN DẠNG ......................................................3
1.1. Tổng quan về nhận dạng ..................................................................................3
1.1.1. Không gian biểu diễn đối tƣợng, không gian diễn dịch ...........................3
1.1.2. Mô hình và bản chất của quá trình nhận dạng ..........................................4
1.2. Nhận dạng dựa trên phân hoạch không gian....................................................7
1.2.1. Phân hoạch không gian .............................................................................7
1.2.2. Hàm phân lớp hay hàm ra quyết định ......................................................7
1.2.3. Nhận dạng thống kê ..................................................................................8
1.2.4. Một số thuật toán nhận dạng tiêu biểu trong tự học ...............................10
1.3. Nhận dạng theo cấu trúc ................................................................................12
1.3.1. Biểu diễn định tính .................................................................................12
1.3.2. Phƣơng pháp ra quyết định dựa vào cấu trúc .........................................13
1.4. Nhận dạng bằng mạng nơron .........................................................................14
1.4.1. Bộ não và Nơron sinh học ......................................................................15
1.4.2. Mô hình mạng nơron ..............................................................................17
CHƢƠNG II KỸ THUẬT NHẬN DẠNG BẰNG THỐNG KÊ .........................20
2.1. Bài toán ..........................................................................................................20
2.2. Nhận dạng có giám sát ...................................................................................21
2.3. Nhận dạng không có giám sát ........................................................................25
2.3.1. Đặt bài toán .............................................................................................25
2.3.2. Giải bài toán trƣờng hợp cho trƣớc số k .................................................25
2.3.3. Trƣờng hợp số k chƣa cho biết trƣớc .....................................................28
2.4. Mô hình xích Markov ....................................................................................30
2.5. Đặc trƣng của ngôn ngữ tự nhiên ..................................................................32
2.5.1. Tần số đơn tƣơng đối của ngôn ngữ Tiếng Anh, Tiếng Pháp, Tiếng
Đức. ..................................................................................................................33
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
2.5.2. Tần số bộ đôi móc xích của Tiếng Anh, Tiếng Pháp, Tiếng Đức ..........34
CHƢƠNG III THỰC NGHIỆM ............................................................................38
3.1. Bài toán nhận dạng văn bản La Tinh .............................................................38
3.2. Thuật toán sử dụng tần số đơn ......................................................................38
3.2.1.Xây dựng cơ sở dữ liệu để máy học ........................................................38
3.2.2.Phân biệt trực tiếp ....................................................................................42
3.2.3. Một số ví dụ ............................................................................................44
3.3. Thuật toán dựa trên xich Markov cấp 1 hữu hạn trạng thái ...........................46
3.3.1. Xây dựng cơ sở dữ liệu để máy học .......................................................46
3.3.2. Nhận biết trực tiếp ..................................................................................57
3.3.3. Một số ví dụ ............................................................................................59
3.4.Chƣơng trình Demo ........................................................................................72
3.4.1 Giao diện chính của chƣơng trình ...........................................................73
3.4.2 Xây dựng các mẫu thử .............................................................................74
3.4.3. Thực thi chƣơng trình với thuật toán sử dụng tần số đơn ......................75
3.4.4. Thực thi chƣơng trình với thuật toán dựa trên xích Markov cấp 1 hữu
hạn trạng thái ....................................................................................................76
3.4.5. So sánh giữa 2 thuật toán........................................................................78
KẾT LUẬN ..............................................................................................................80
TÀI LIỆU THAM KHẢO ......................................................................................81
PHỤ LỤC .................................................................................................................82
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
DANH MỤC CÁC HÌNH
Hình 1.1. Sơ đồ tổng quát một hệ nhận dạng. .............................................................7
Hình 1.2. Cấu tạo nơron sinh học..............................................................................15
Hình 1.3 Mô hình nơron nhân tạo .............................................................................17
Hình 3.1. Sơ đồ khối của thuật toán sử dụng tần số đơn ..........................................43
Hình 3.2. Sơ đồ khối của thuật toán dựa trên xich Markov cấp 1 hữu hạn trang thái....58
Hình 3.3.Giao diện của chƣơng trình ........................................................................73
Hình 3.4 Thực hiện lấy dữ liệu đầu vào. ...................................................................74
Hình 3.5 Màn hình thực thi thuật toán sử dụng tần số đơn .......................................75
Hình 3.6 Kết quả hiển thị dang file.txt của thuật toán sử dụng tần số đơn. ..............76
Hình 3.7 Màn hình thực thi thuật toán dựa trên xích Markov cấp 1 hữu hạn trạng
thái .............................................................................................................................77
Hình 3.8 Kết quả hiển thị dang file.txt của thuật toán dựa trên xích Markov cấp 1
hữu hạn trạng thái ......................................................................................................77
Hình 3.9 Sơ đồ biểu diễn độ chính xác của hai thuật toán ........................................78
Hình 3.10 Kết quả của thuật toán sử dụng tần số đơn ..............................................78
Hình 3.11 Kết quả của thuật toán dựa trên xích Markov cấp 1 hữu hạn trạng thái .79
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
DANH MỤC CÁC BẢNG
Bảng 2.1 Tần số đơn tƣơng đối của ngôn ngữ Anh, Pháp, Đức .............................33
Bảng 2.2 Bảng tần số bộ đôi móc xích của Tiếng Anh .............................................35
Bảng 2.3 Bảng tần số bộ đôi móc xích của Tiếng Pháp............................................36
Bảng 2.4 Bảng tần số bộ đôi móc xích của Tiếng Đức .............................................37
Bảng 3.1 Ƣớc lƣợng hợp lí cực đại đặc trƣng các ngôn ngữ Anh, Pháp , Đức, Dãy
ngẫu nhiên .................................................................................................................39
Bảng 3.2 Ƣớc lƣợng hợp lí cực đại đặc trƣng các ngôn ngữ Anh, Pháp , Đức, Dãy
ngẫu nhiên .................................................................................................................40
Bảng 3.3 Ƣớc lƣợng hợp lí cực đại đặc trƣng các ngôn ngữ Anh, Pháp , Đức, .......41
Bảng 3.4 Ƣớc lƣợng hợp lí cực đại đặc trƣng các ngôn ngữ Anh, Pháp , Đức, .......42
Bảng 3.5. Ƣớc lƣợng bộ đôi móc xích tiếng Đức ....................................................48
Bảng 3.6. Ƣớc lƣợng bộ đôi móc xích tiếng Pháp ...................................................49
Bảng 3.7. Ƣớc lƣợng bộ đôi móc sích tiếng Anh ....................................................50
Bảng 3.8. Ƣớc lƣợng ma trận các xác suất chuyển trạng thái P của mô hình Markov
ứng với các ngôn ngữ tự nhiên tiếng Đức .................................................................53
Bảng 3.9.Ƣớc lƣợng ma trận các xác suất chuyển trạng thái P của mô hình Markov
ứng với các ngôn ngữ tự nhiên tiếng Pháp ................................................................54
Bảng 3.10. Ƣớc lƣợng ma trận các xác suất chuyển trạng thái P của mô hình
Markov ứng với các ngôn ngữ tự nhiên tiếng Anh ...................................................55
Bảng 3.11.Ƣớc lƣợng ma trận các xác suất chuyển trạng thái P của mô hình Markov
ứng với các ngôn ngữ tự nhiên tiếng dãy ngẫu nhiên ...............................................56
Số hóa bởi Trung tâm Học liệu – ĐHTN
http://www.lrc.tnu.edu.vn
MỞ ĐẦU
Nhận dạng là một lý thuyết toán học có nhiều ứng dụng trong thực tiễn, nhƣ
nhận dạng tiếng nói, nhận dạng hình ảnh, nhận dạng chữ ký, phân loại ngôn ngữ ,
xây dựng tiêu chuẩn bản rõ ứng dụng trong phân tích các bản mã v.v..Trên thế giới
cũng nhƣ trong nƣớc đã có nhiều nhà nghiên cứu vấn đề này và đã có những phần
mềm áp dụng cho nhiều lĩnh vực khác nhau: phần mềm nhận dạng tiếng việt, phần
mềm nhận dạng vân tay, phần mềm kiểm soát E-mail trên hệ thống Internet…
Nhận dạng chữ là bài toán rất hữu ích, quen thuộc đƣợc ứng dụng nhiều trong
thực tế đặc biệt là trong lĩnh vực nhận dạng và phân loại văn bản vì thế đã thu hút
nhiều tác giả quan tâm nghiên cứu bằng các phƣơng pháp nhận dạng khác nhau:
logic mờ, giải thuật di truyền, mô hình xác suất thống kê, mô hình mạng nơ ron. Đã
có rất nhiều công trình nghiên cứu thực hiện việc nhận dạng, phân loại văn bản La
Tinh đã đạt tỷ lệ chính xác cao, tuy nhiên các ứng dụng đó cũng chƣa thể đáp ứng
hoàn toàn nhu cầu của ngƣời sử dụng vậy nên ngày nay ngƣời ta vẫn tiếp tục nghiên
cứu những phƣơng pháp nhận dạng tốt hơn hƣớng đến dùng cho các thiết bị di
động, và các bài toán thời gian thực. Sau khi tìm hiểu về sự tiến bộ của công nghệ
nhận dạng chữ La Tinh cũng nhƣ các tính năng cơ bản của các phần mềm nhận
dạng chữ, đƣợc sự tƣ vấn của giáo viên hƣớng dẫn, tôi đã lựa chọn đƣợc một hƣớng
nghiên cứu thiết thực với đề tài: "Tìm hiểu kỹ thuật nhận dạng văn bản trong lớp
ngôn ngữ La Tinh".
Trong khuôn khổ của luận văn, tôi tập trung nghiên cứu, giải quyết bài toán
nhận dạng ngôn ngữ tự nhiên dựa vào phân hoạch không gian (nhận dạng theo
thống kê toán học), trong đó một lớp ngôn ngữ tiêu biểu đƣợc nghiên cứu đó là
ngôn ngữ La Tinh.
Việc nghiên cứu này là quan trọng và cần thiết, kết quả của nghiên cứu có khả
năng mở rộng ứng dụng trong việc xây dựng chƣơng trình kiểm soát E-mail đặc biệt
là chƣơng trình phân tích bản mã tự động, đây là những vấn đề rất cần thiết trong an
ninh quốc phòng. Đó chính là ý nghĩa thực tiễn của đề tài.
Nội dung của luận văn và các vấn đề cần giải quyết
1. Nghiên cứu quá trình Markov hữu hạn trạng thái.
2. Nghiên cứu và xây dựng mô hình Markov ứng với các ngôn ngữ tự nhiên nhƣ :
Tiếng Anh, Tiếng Pháp, Tiếng Đức.
1
3. Giải bài toán phân lớp các đối tƣợng cho trƣờng hợp số lớp đã biết trƣớc và số
lớp chƣa biết.
4. Nghiên cứu xây dựng các ƣớc lƣợng tham số của xích Markov
5. Ứng dụng bài toán kiểm định giả thiết thống kê (testing of statistic hypothesis)
để giải quyết bài toán nhận dạng ngôn ngữ.
6. Lập trình thử nghiệm.
Phƣơng pháp nghiên cứu
Phƣơng pháp cơ bản là nghiên cứu ứng dụng các phƣơng pháp toán học, nhận dạng
và xử lý ngôn ngữ, nghiên cứu khảo sát lý thuyết và xây dựng các thuật toán, lập
trình kiểm thử thuật toán và đánh giá. Cụ thể:
- Tìm hiểu và cập nhật các kiến thức và phƣơng pháp cơ bản về nhận dạng ngôn
ngữ tự nhiên, trí tuệ nhân tạo, khảo sát lý thuyết các mô hình, công cụ toán học,
thiết kế và xây dựng thuật toán, kỹ thuật tổ chức dữ liệu và ngôn ngữ lập trình.
- Tìm đọc các bài báo, các công trình nghiên cứu khoa học liên quan đến chủ đề
nghiên cứu trong nƣớc và trên thế giới. Cụ thể là các tài liệu kỹ thuật thống kê toán
học các quá trình Markov; các quy luật ngôn ngữ nhƣ là một quá trình ngẫu nhiên
dừng, không hậu quả; các kỹ thuật nhận dạng ngôn ngữ tự nhiên. Hình thành đƣợc
tổng quan tƣơng đối đầy đủ về tình hình nghiên cứu liên quan đến chủ đề hiện nay
trên thế giới.
- Lập trình cài đặt một số kỹ thuật nhận dạng ngôn ngữ La Tinh và đánh giá kết
quả.
Cấu trúc luận văn đƣợc chia thành 3 chƣơng:
Chƣơng 1: " Tổng quan về nhận dạng ", trình bày tổng quan các hƣớng nghiên
cứu hiện nay về nhận dạng.
Chƣơng 2: " Kỹ thuật nhận dạng bằng thống kê ", trình bày các ứng dụng kỹ
thuật thống kê Toán học để nhận dạng các ngôn ngữ tự nhiên và tìm hiểu
đặc trƣng của một số ngôn ngữ tự nhiên tiêu biểu.
Chƣơng 3: " Thực Nghiệm ", trình bày thuật toán nhận dạng văn bản La Tinh và
đƣa ra kết quả với một số mẫu ngôn ngữ điển hình.
2
CHƢƠNG I
TỔNG QUAN VỀ NHẬN DẠNG
1.1. Tổng quan về nhận dạng
Nhận dạng là quá trình phân loại các đối tƣợng đƣợc biểu diễn theo một mô
hình nào đó và gán cho chúng vào một lớp (gán cho đối tƣợng một tên gọi) dựa theo
những quy luật và các mẫu chuẩn. Quá trình nhận dạng dựa vào những mẫu học biết
trƣớc gọi là nhận dạng có giám sát hay học có giám sát (supervised learning); trong
trƣờng hợp ngƣợc lại là nhận dạng không giám sát hay học không có giám sát
(unsupervised learning).
1.1.1. Không gian biểu diễn đối tượng, không gian diễn dịch
- Không gian biểu diễn đối tƣợng:
Các đối tƣợng khi quan sát hay thu thập đƣợc, thƣờng đƣợc biểu diễn bởi tập
các đặc trƣng hay đặc tính. Nhƣ trong trƣờng hợp xử lý ảnh, ảnh sau khi đƣợc tăng
cƣờng để nâng cao chất lƣợng, phân vùng và trích chọn đặc tính đƣợc biểu diễn bởi
các đặc trƣng nhƣ biên, miền đồng nhất,v.v. Ngƣời ta thƣờng phân các đặc trƣng
này theo các loại nhƣ: đặc trƣng tôpô, đặc trƣng hình học và đặc trƣng chức năng.
Việc biểu diễn ảnh theo đặc trƣng nào phụ thuộc vào ứng dụng tiếp theo. Ở đây ta
đƣa ra một cách hình thức việc biểu diễn các đối tƣợng. Giả sử đối tƣợng X (ảnh,
chữ viết, dấu vân tay,v.v.); đƣợc biểu diễn bởi n thành phần (n đặc trƣng):
X={x1,x2,...,xn}; mỗi xi biểu diễn một đặc tính. Không gian biểu diễn đối tƣợng
thƣờng gọi tắt là không gian đối tƣợng X và đƣợc ký hiệu là:
X ={X1,X2,...,Xn}
trong đó mỗi Xi biểu diễn một đối tƣợng. Không gian này có thể là vô hạn. Để tiện
xem xét chúng ta chỉ xét tập X là hữu hạn.
- Không gian diễn dịch:
Không gian diễn dịch là tập các tên gọi của đối tƣợng. Kết thúc quá trình
nhận dạng ta xác định đƣợc tên gọi cho các đối tƣợng trong tập không gian đối
3
tƣợng hay nói là đã nhận dạng đƣợc đối tƣợng. Một cách hình thức gọi
là tập tên
đối tƣợng:
={w1,w2,...,wk} với wi, i =1,2,...,k là tên các đối tƣợng:
Quá trình nhận dạng đối tƣợng là một ánh xạ f: X
luật để định một phần tử trong X ứng với một phần tử
với f là tập các quy
. Nếu tập các quy luật và
tập tên các đối tƣợng là biết trƣớc nhƣ trong nhận dạng chữ viết (có 26 lớp từ A đến
Z), ngƣời ta gọi là Nhận dạng có giám sát. Trƣờng hợp thứ hai là nhận dạng không
có thầy. Đƣơng nhiên trong trƣờng hợp này việc nhận dạng có khó khăn hơn.
1.1.2. Mô hình và bản chất của quá trình nhận dạng
1.1.2.1. Mô hình
Việc chọn lựa một quá trình nhận dạng có liên quan mật thiết đến kiểu mô tả
mà ngƣời ta sử dụng để đặc tả đối tƣợng. Trong nhận dạng, ngƣời ta phân chia làm
hai họ lớn: [1]
- Họ mô tả theo tham số;
- Họ mô tả theo cấu trúc.
Cách mô tả đƣợc lựa chọn sẽ xác định mô hình của đối tƣợng. Nhƣ vậy,
chúng ta sẽ có hai loại mô hình: mô hình theo tham số và mô hình cấu trúc.
Mô hình tham số: sử dụng một vectơ để đặc tả đối tƣợng, mỗi phần tử của
vectơ mô tả một đặc tính của đối tƣợng. Thí dụ nhƣ trong các đặc trƣng chức năng,
ngƣời ta sử dụng các hàm cơ sở trực giao để biểu diễn. Và nhƣ vậy ảnh sẽ đƣợc
biểu diễn bởi một chuỗi các hàm trực giao. Giả sử C là đƣờng bao của ảnh và C(i,j)
là điểm thứ i trên đƣờng bao, i = 1, 2, ..., N (đƣờng bao gồm N điểm)
Giả sử tiếp:
x0
y0
1
N
1
N
N
xi
i 1
N
yi
i 1
4
là tọa độ tâm điểm. Nhƣ vậy, momen trung tâm bậc p, q của đƣờng bao là
pq
1
N
N
(x i
x 0 ) p (yi
y0 )q
(1.1)
i 1
Vectơ tham số trong trƣờng hợp này chính là các momen
ij
với i=1,2,...,p
và j=1,2,...,q. Còn trong các đặc trƣng hình học ngƣời ta hay sử dụng chu tuyến,
đƣờng bao, diện tích và tỉ lệ T = 4
S/p2, với S là diện tích, p là chu tuyến.
Việc lựa chọn phƣơng pháp biểu diễn sẽ làm đơn giản cách xây dựng. Tuy
nhiên, việc lựa chọn đặc trƣng nào là hoàn toàn phụ thuộc vào ứng dụng. Thí dụ,
trong nhận dạng chữ, các tham số là các dấu hiệu:
- Số điểm chạc ba, chạc tƣ,
- Số điểm chu trình,
- Số điểm ngoặt,
- Số điểm kết thúc,
Chẳng hạn với chữ t có 4 điểm kết thúc, 1 điểm chạc tƣ, ....
Mô hình cấu trúc: Cách tiếp cận của mô hình này dựa vào việc mô tả đối
tƣợng nhờ một số khái niệm biểu thị các đối tƣợng cơ sở trong ngôn ngữ tự nhiên.
Để mô tả đối tƣợng, ngƣời ta dùng một số dạng nguyên thủy nhƣ đoạn thẳng,
cung,.v.v... Chẳng hạn, một hình chữ nhật đƣợc định nghĩa gồm 4 đoạn thẳng vuông
góc với nhau từng đôi một. Trong mô hình này ngƣời ta sử dụng một bộ kí hiệu kết
thúc Vt, một bộ kí hiệu không kết thúc gọi là Vn. Ngoài ra, có dùng một tập các luật
sản xuất để mô tả cách xây dựng các đối tƣợng phù hợp dựa trên các đối tƣợng đơn
giản hơn các đối tƣợng nguyên thủy (tập Vt). Trong cách tiếp cận này, ta chấp nhận
một khẳng định là: Cấu trúc một dạng là kết quả của việc áp dụng luật sản xuất theo
những nguyên tắc xác định từ một dạng gốc bắt đầu. Một cách hình thức, ta có thể
coi mô hình này tƣơng đƣơng một văn phạm G = (Vt, Vn, P, S) với:
- Vt là bộ kí hiệu kết thúc,
- Vn là bộ kí hiệu không kết thúc,
- P là luật sản xuất,
- S là dạng (kí hiệu bắt đầu)
5
1.1.2.2. Bản chất của quá trình nhận dạng
Quá trình nhận dạng gồm 3 giai đoạn chính [1]:
- Lựa chọn mô hình biểu diễn đối tƣợng,
- Lựa chọn luật ra quyết định (phƣơng pháp nhận dạng) và suy diễn quá trình
học.
- Học nhận dạng.
Khi mô hình biểu diễn đã đƣợc xác định, có thể là định lƣợng (mô hình tham
số) hay định tính (mô hình cấu trúc), quá trình nhận dạng chuyển sang giai đoạn
học. Học là giai đoạn rất quan trọng. Thao tác học nhằm cải thiện, điều chỉnh việc
phân hoạch tập đối tƣợng thành các lớp.
Việc nhận dạng là tìm ra quy luật và các thuật toán để có thể gán đối tƣợng
vào một lớp hay nói một cách khác gán cho đối tƣợng một tên.
Học có giám sát(supervised learning) :
Kỹ thuật phân loại nhờ kiến thức biết trƣớc gọi là học có giám sát. Đặc điểm
cơ bản của kỹ thuật này là ngƣời ta có một thƣ viện các mẫu chuẩn. Mẫu cần nhận
dạng sẽ đƣợc đem đối sánh với mẫu chuẩn để xem nó thuộc loại nào. Thí dụ nhƣ
trong một ảnh viễn thám, ngƣời ta muốn phân biệt một cánh đồng lúa, một cánh
rừng hay một vùng đất hoang mà đã có các miêu tả về các đối tƣợng đó. Vấn đề chủ
yếu là thiết kế một hệ thống để có thể đối sánh đối tƣợng trong ảnh với mẫu chuẩn
và quyết định gán cho chúng vào một lớp. Việc đối sánh nhờ vào các thủ tục ra
quyết định dựa trên một công cụ gọi là hàm phân lớp hay hàm ra quyết định. Hàm
này sẽ đƣợc đề cập trong phần sau.
Học không giám sát(unsupervised learning) :
Kỹ thuật học này tự định ra các lớp khác nhau và xác định các tham số đặc
trƣng cho từng lớp. Học không giám sát đƣơng nhiên là khó khăn hơn. Một mặt, do
số lớp không đƣợc biết trƣớc, mặt khác những đặc trƣng của các lớp cũng không
biết trƣớc. Kỹ thuật này nhằm tiến hành mọi cách gộp nhóm có thể và chọn lựa cách
tốt nhất. Bắt đầu từ tập dữ liệu, nhiều thủ tục xử lý khác nhau nhằm phân lớp và
nâng cấp dần để đƣợc một phƣơng án phân loại.
6
Nhìn chung, dù là mô hình nào và kỹ thuật nhận dạng ra sao, một hệ thống
nhận dạng có thể tóm tắt theo sơ đồ sau:
Hình 1.1. Sơ đồ tổng quát một hệ nhận dạng.
1.2. Nhận dạng dựa trên phân hoạch không gian
Trong kỹ thuật này, các đối tƣợng nhận dạng là các đối tƣợng định lƣợng, mỗi đối
tƣợng đƣợc biểu diễn bởi một vectơ nhiều chiều.
1.2.1. Phân hoạch không gian
Giả sử không gian đối tƣợng X đƣợc định nghĩa: X={Xi,i=1,2,...,m}, Xi là
một vectơ. Ngƣời ta nói P là một phân hoạch của không gian X thành các lớp Ci,
Ci
X nếu: Ci
Cj =
với i j và
Ci = X
Nói chung, đây là trƣờng hợp lý tƣởng: tập X tách đƣợc hoàn toàn. Trong
thực tế, thƣờng gặp không gian biểu diễn tách đƣợc từng phần. Nhƣ vậy phân loại là
dựa vào việc xây dựng một ánh xạ f: X
P. Công cụ xây dựng ánh xạ này là các
hàm phân biệt (Descriminant functions).
1.2.2. Hàm phân lớp hay hàm ra quyết định
Để phân đối tƣợng vào các lớp, ta phải xác định số lớp và ranh giới giữa các
lớp đó. Hàm phân lớp hay hàm phân biệt là một công cụ rất quan trọng. Gọi {g} là
lớp các hàm phân lớp. Lớp hàm này đƣợc định nghĩa nhƣ sau:
nếu
i ≠ k, gk(X)>gi(X) thì ta quyết định X lớp k.
Nhƣ vậy để phân biệt k lớp, ta cần k-1 hàm phân biệt. Hàm phân biệt g của một lớp
nào đó thƣờng dùng là hàm tuyến tính, có nghĩa là:
7
g(X)= W0+W1X1+W2X2+...+WkXk
trong đó:
- Wi là các trọng số gán cho các thành phần Xi.
- W0 là trọng số để viết cho gọn.
Trong trƣờng hợp g là tuyến tính, ngƣời ta nói việc phân lớp là tuyến tính
hay siêu phẳng (hyperplan).
Các hàm phân biệt thƣờng đƣợc xây dựng dựa trên khái niệm khoảng cách
hay dựa vào xác suất có điều kiện.
Lẽ tự nhiên, khoảng cách là một công cụ rất tốt để xác định xem đối tƣợng
có "gần nhau" hay không. Nếu khoảng cách nhỏ hơn một ngƣỡng
nào đấy ta coi
đối tƣợng là giống nhau và gộp chúng vào một lớp. Ngƣợc lại, nếu khoảng cách lớn
hơn ngƣỡng, có nghĩa là chúng khác nhau và ta tách thành hai lớp.
Trong một số trƣờng hợp, ngƣời ta dựa vào xác suất có điều kiện để phân lớp
cho đối tƣợng. Lý thuyết xác suất có điều kiện đƣợc Bayes nghiên cứu khá kỹ và
chúng ta có thể áp dụng lý thuyết này để phân biệt đối tƣợng.
Gọi: P(X/Ci) là xác suất để có X biết rằng có xuất hiện lớp Ci
P(Ci/X) là xác suất có điều kiện để X thuộc lớp Ci
với X là đối tƣợng nhận dạng, Ci là các lớp đối tƣợng (lớp thứ i)
Quá trình học cho phép ta xác định P(X/Ci) và nhờ công thức Bayes về xác
suất có điều kiện áp dụng trong điều kiện nhiều biến, chúng ta sẽ tính đƣợc
P(Ci/X)theo công thức: P(Ci/X) =
P ( X / C i ) P (C i )
n
P (C / X i ) P (C i )
=
P ( X / C i ) P (C i )
P( X)
(1.2)
i 1
Nếu P(Ci/X)>P(Ck/X) với i ≠ k thì X
Ci. Tùy theo các phƣơng pháp nhận
dạng khác nhau, hàm phân biệt sẽ có các dạng khác nhau.
1.2.3. Nhận dạng thống kê
Nếu các đối tƣợng nhận dạng tuân theo luật phân bố Gauss, mà hàm mật độ
xác suất cho bởi:
8
1
2
f ( x)
( x m)2
2 2
exp
x
ngƣời ta có dùng phƣơng pháp ra quyết định dựa vào lý thuyết Bayes. Lý thuyết
Bayes thuộc loại lý thuyết thống kê nên phƣơng pháp nhận dạng dựa trên lý thuyết
Bayes có tên là phƣơng pháp thống kê.
Quy tắc Bayes
- Cho không gian đối tƣợng X = X1,l =1,2,...,L , với X1= x1,x2,...,xp
- Cho không gian diễn dịch
= C1,C2,...,Cr ,r là số lớp
Quy tắc Bayes phát biểu nhƣ sau:
sao cho X Ck nếu P(Ck/X)
: X
P(C1/X) l ≠ k, l=1,2,...,r.
Trƣờng hợp lý tƣởng là nhận dạng luôn đúng, có nghĩa là không có sai số. Thực tế,
luôn tồn tại sai số
trong quá trình nhận dạng. Vấn đề ở đây là xây dựng quy tắc
nhận dạng với sai số là nhỏ nhất.
Phương pháp ra quyết định với tối thiểu
Ta xác định X
Ck nhờ xác suất P(Ck/X). Vậy nếu có sai số, sai số sẽ đƣợc
tính bởi 1-P(Ck/X). Để đánh giá sai số trung bình, ngƣời ta xây dựng một ma trận
L(r, r) giả thiết là có n lớp.
Ma trận L đƣợc định nghĩa nhƣ sau
Lk,j =
lk, j
0
lk, j
0
nếu
k
k
j
j
(1.3)
Nhƣ vậy, sai số trung bình của sự phân lớp sẽ là:
r
l k , j P (C j / X )
rk(X) =
(1.4)
j 1
Để sai số nhỏ nhất ta cần có rk là min. Từ công thức (1.2) và (1.4) ta có:
r
l k , j P ( X / C j ) P (C j )
rk(X)=
(1.5)
j 1
Vậy, quy tắc ra quyết định dựa trên lý thuyết Bayes có tính đến sai số đƣợc
phát biểu nhƣ sau:
X C k nếu p k p p với p ≠ k, p=1,2,...,r.
9
( 1.6)
với pk là rk(X).
Trƣờng hợp đặc biệt với 2 lớp C1 và C2, ta dễ dàng có:
X
C1 nếu P'(X/C1)
l12 l 22 P(C2 )
P(X/C2)
l11 l 21 P(C1 )
(1.7)
Giả sử thêm rằng xác suất phân bố là đều P(C1) = P(C2), sai số là nhƣ nhau ta có:
X
C1 nếu P(X/C1)
P(X/C2)
(1.8)
1.2.4. Một số thuật toán nhận dạng tiêu biểu trong tự học
Thực tế có nhiều thuật toán nhận dạng học không có giám sát. Ở đây, chúng ta
xem xét ba thuật toán hay đƣợc sử dụng: Thuật toán nhận dạng dựa vào khoảng
cách lớn nhất, thuật toán K-trung bình (K mean) và thuật toán ISODATA. Chúng ta
lần lƣợt xem xét các thuật toán này vì chúng có bƣớc tiếp nối, cải tiến từ thuật toán
này qua thuật toán khác.
1.2.4.1. Thuật toán dựa vào khoảng cách lớn nhất
a) Nguyên tắc
Cho một tập gồm m đối tƣợng, ta xác định khoảng cách giữa các đối tƣợng và
khoảng cách lớn nhất ứng với phần tử xa nhất tạo nên lớp mới. Sự phân lớp đƣợc
hình thành dần dần dựa vào việc xác định khoảng cách giữa các đối tƣợng và các
lớp.
b) Thuật toán [1]
Bƣớc 1
- Chọn hạt nhân ban đầu: giả sử X1
C1 gọi là lớp g1. Gọi Z1 là phần tử
trung tâm của g1.
- Tính tất cả các khoảng cách Dj1 = D(Xj,Z1) với j =1,2,...,m.
- Tìm Dk1 = maxj Dj1. Xk là phần tử xa nhất của nhóm g1. Nhƣ vậy Xk là phần
tử trung tâm của lớp mới g2, kí hiệu Z2.
- Tính d1 = D12 = D(Z1,Z2).
Bƣớc 2
- Tính các khoảng cách Dj1, Dj2.
10
- Dj1 = D(Xj,Z1), Dj2 = D(Xj,Z2).. Đặt D (k2 ) = max jDj
Nguyên tắc chọn
- Nếu D (k2 )
d1 kết thúc thuật toán. Phân lớp xong.
- Nếu không, sẽ tạo nên nhóm thứ ba. Gọi Xk là phần tử trung tâm của g3, kí
hiệu Z3.
- Tính d3 = (D12 +D13 +D23)/3
với
là ngƣỡng cho trƣớc và D13 = (Z1,Z3), D23 = D(Z2,Z3).
Quá trình cứ lặp lại nhƣ vậy cho đến khi phân xong. Kết quả là ta thu đƣợc
các lớp với các đại diện là Z1,Z2,...,Zm.
1.2.4.2. Thuật toán K trung bình (giả sử có K lớp)
a) Nguyên tắc
Khác với thuật toán trên, ta xét K phần tử đầu tiên trong không gian đối tƣợng,
hay nói một cách khác ta cố định K lớp. Hàm để đánh giá là hàm khoảng cách
Euclide:
k
Jk =
x
D 2 (Xj,Zk)
gk D(X,Zk) =
(1.9)
j 1
Jk là hàm chỉ tiêu với lớp Ck. Việc phân vùng cho k hạt nhân đầu tiên đƣợc tiến
hành theo nguyên tắc khoảng cách cực tiểu. Ở đây, ta dùng phƣơng pháp đạo hàm
để tính cực tiểu.
Xét
J jk
= 0 với Zk là biến. Ta dễ dàng có (1.9) min khi:
Zk
N
(X i
Zk ) = 0
i 1
1
Zk =
Nc
Nc
Zj
(1.10)
j 1
Công thức (1.10) là giá trị trung bình của lớp Ck và điều này lý giải tên của phƣơng
pháp.
b)Thuật toán [1]
Chọn Nc phần tử (giả thiết có Nc lớp) của tập T. Gọi các phần tử trung tâm
của các lớp đó là: X1,X2,...XNc.
11
Thực hiện phân lớp
X
Ck nếu D(X,Zk) = Min D(X,Zj)(1), j =1,...,Nc. là lần lặp thứ nhất.
Tính tất cả Zk theo công thức (1.10).
Tiếp tục nhƣ vậy cho đến bƣớc q.
X
Gk(q-1) nếu D(X,Zk(q-1)) = min1 D(X,Z1(q-1)).
Nếu Zk(q-1) = Zk(q) thuật toán kết thúc, nếu không ta tiếp tục thực hiện phân
lớp.
1.2.4.3. Thuật toán ISODATA
ISODATA là viết tắt của từ Iteractive Self Organizing Data Analysis. Nó là
thuật toán khá mềm dẻo, không cần cố định các lớp trƣớc. Các bƣớc của thuật toán
mô tả nhƣ sau: [1]
- Lựa chọn một phân hoạch ban đầu dựa trên các tâm bất kỳ. Thực nghiệm
đã chứng minh kết quả nhận dạng không phụ thuộc vào phân lớp ban đầu.
- Phân vùng bằng cách sắp các điểm vào tâm gần nhất dựa vào khoảng cách
Euclide.
- Tách đôi lớp ban đầu nếu khoảng cách lớn hơn ngƣỡng t1.
Xác định phân hoạch mới trên cơ sở các tâm vừa xác định lại và tiếp tục xác
định tâm mới.
- Tính tất cả các khoảng cách đến tâm mới.
- Nhóm các vùng với tâm theo ngƣỡng t2.
Lặp các thao tác trên cho đến khi thỏa tiêu chuẩn phân hoạch.
1.3. Nhận dạng theo cấu trúc
1.3.1. Biểu diễn định tính
Ngoài cách biểu diễn theo định lƣợng nhƣ đã mô tả ở trên, tồn tại nhiều kiểu
đối tƣợng mang tính định tính. Trong cách biểu diễn này, ngƣời ta quan tâm đến các
dạng và mối quan hệ giữa chúng. Giả thiết rằng mỗi đối tƣợng đƣợc biểu diễn bởi
một dãy ký tự. Các đặc tính biểu diễn bởi cùng một số ký tự. Phƣơng pháp nhận
dạng ở đây là nhận dạng lôgic, dựa vào hàm phân biệt là hàm Bool. Cách nhận dạng
là nhận dạng các từ có cùng độ dài.
12
Giả sử hàm phân biệt cho mọi ký hiệu là ga(x), gb(x),..., tƣơng ứng với các ký
hiệu a,b,... Để dễ dàng hình dung, ta giả sử có từ "abc" đƣợc biểu diễn bởi một dãy
ký tự X = x1,x2,x3,x4 . Tính các hàm tƣơng ứng với 4 ký tự và có:
ga(x1) + gb(x2) + gc(x3) + gc(x4)
Các phép cộng ở đây chỉ phép toán OR. Trên cơ sở tính giá trị cực đại của
hàm phân biệt, ta quyết định X có thuộc lớp các từ "abc" hay không.
1.3.2. Phương pháp ra quyết định dựa vào cấu trúc
1.3.2.1. Một số khái niệm
Thủ tục phân loại và nhận dạng ở đây gồm 2 giai đoạn: Giai đoạn đầu là giai
đoạn xác định các quy tắc xây dựng, tƣơng đƣơng với việc nghiên cứu một văn
phạm trong một ngôn ngữ chính thống. Giai đoạn tiếp theo khi đã có văn phạm là
xem xét tập các dạng có đƣợc sinh ra từ các dạng đó không? Nếu nó thuộc tập đó
coi nhƣ ta đã phân loại xong. Tuy nhiên, văn phạm là một vấn đề lớn. Trong nhận
dạng cấu trúc, ta mới chỉ sử dụng đƣợc một phần rất nhỏ mà thôi.
Nhƣ trên đã nói, mô hình cấu trúc tƣơng đƣơng một văn phạm G:
G = {Vn, Vt, P, S}. Có rất nhiều kiểu văn phạm từ chính tắc, phi ngữ cảnh. Ở đây,
xin giới thiệu một ngôn ngữ có thể đƣợc áp dụng trong nhận dạng cấu trúc: Đó là
ngôn ngữ PLD (Picture Language Description).
Ví dụ: Ngôn ngữ PLD
Trong ngôn ngữ này, các từ vựng là các vạch có hƣớng. Có 4 từ vựng cơ
bản: a:
b:
và d:
c:
Các từ vựng trên các quan hệ đƣợc định nghĩa nhƣ sau:
+ : a+b
- : a-b
x:axb
*:a*b
13
- Xem thêm -