Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng Neural (LV thạc sĩ)
Trang 1Số 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
NGUYỄN KHÁNH TÙNG
PHƯƠNG PHÁP NHẬN DIỆN MẪU SỬ DỤNG
MÔ HÌNH TÚI TỪ VÀ MẠNG NEURAL
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên, tháng 06 năm 2016
Trang 2Số 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
NGUYỄN KHÁNH TÙNG
PHƯƠNG PHÁP NHẬN DIỆN MẪU SỬ DỤNG
MÔ HÌNH TÚI TỪ VÀ MẠNG NEURAL
Chuyên ngành: Khoa học máy tính
Trang 3Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
LỜI CAM ĐOAN
Tên tôi là Nguyễn Khánh Tùng, học viên cao học lớp 13 C niên khóa 2014- 2016, chuyên nghành Khoa học máy tính Tôi xin cam đoan luận văn
thạc sĩ: Phương pháp nhận diện mẫu sử dụng mô hình túi từ và mạng
Neural của tự bản thân tôi tìm hiểu, nghiên cứu dưới sự hướng dẫn của TS
Nguyễn Toàn Thắng Các chương trình thực nghiệm do chính bản thân tôi lập trình, các kết quả là hoàn toàn trung thực Các tài liệu tham khảo được trích dẫn và chú thích đầy đủ
TÁC GIẢ LUẬN VĂN
Nguyễn Khánh Tùng
Trang 4Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Cảm ơn Trung tâm HN&GDTX Thị xã Đông Triều đã hết sức tạo điều kiện cho tôi trong suốt quá trình học tập
Cùng xin gửi lời cảm ơn chân thành tới Ban giám hiệu, Phòng Đào tạo, Khoa sau đại học, Đại học Công nghệ thông tin và Truyền thông Thái Nguyên
đã tạo điều kiện cho tôi trong quá trình học tập và nghiên cứu
Cuối cùng tôi xin gửi lời cảm ơn đến gia đình, bạn bè đồng nghiệp, tập thể lớp Khoa học máy tính K13 C Quảng Ninh, những người đã luôn bên tôi, động viên và khuyến khích tôi trong quá trình thực hiện đề tài nghiên cứu của mình
HỌC VIÊN
Nguyễn Khánh Tùng
Trang 5Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN iv
MỤC LỤC v
DANH MỤC CÁC BẢNG vii
DANH MỤC CÁC HÌNH viii
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN 5
1.1 Khảo sát một số công trình đã được công bố về nhận diện bàn tay 5
1.2.Trích chọn đặc trưng 10
1.2.1 Đặt vấn đề 10
1.2.2 Đặc trưng màu sắc 11
1.2.3 Đặc trưng kết cấu 12
1.2.4 Đặc trưng hình dạng 13
1.2.5 Đặc trưng cục bộ bất biến 14
1.3 Phân lớp dữ liệu và mạng neuron 18
1.3.1 Phân lớp dữ liệu 18
1.3.2 Các vấn đề liên quan đến phân lớp dữ liệu 21
1.3.3 Mạng neuron 22
CHƯƠNG 2 TRÌNH BÀY SỬ DỤNG MÔ HÌNH TÚI TỪ ĐỂ XÂY DỰNG BỘ 29 MÔ TẢ CHO VẬT THỂ VÀ THUẬT TOÁN NHẬN DIỆN VẬT THỂ VỚI MẠNG NEURON 29
2.1 Mô hình túi từ trong phân lớp văn bản 29
2.2 Ý tưởng và Thuật toán 31
2.3 Diễn giải chi tiết thuật toán 35
2.3.1 Trích chọn và mô tả đặc trưng với SURF 35
2.3.2 Phân cụm đặc trưng SURF và sinh từ điển 37
2.3.3.Tạo loại mô tả vật thể mới dựa trên SURF và từ điển để dùng cho mạng neuron 40
Trang 6Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
2.3.4 Huấn luyện và phân lớp với mạng neuron 42
CHƯƠNG 3 XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM 44
3.1 Các lớp xây dựng chương trình 44
3.2 Chương trình «Hand Recognitor» 49
CHƯƠNG 4 THỬ NGHIỆM THUẬT TOÁN VÀ PHÂN TÍCH KẾT QUẢ 60
4.1 Thử nghiệm với các bộ dữ liệu tự tạo 60
4.1.1 Giai đoạn sinh từ điển và huấn luyện 60
4.1.2 Test với bộ dữ liệu chứa các ảnh với nền đơn giản ở nhiều góc nghiêng và khoảng cách khác nhau 63
4.1.3 Test với bộ dữ liệu chứa các ảnh có nhiễu 67
4.1.4 Test với bộ dữ liệu chứa ảnh bị nhiễu nặng 69
4.1.5 Kết luận 70
4.2 Thử nghiệm với một số bộ dữ liệu mở 71
4.2.1 Thử nghiệm với bộ dữ liệu của Sebastien Marcel 71
4.2.2 Test với bộ dữ liệu của Đại học Cambridge 73
KẾT LUẬN 76
TÀI LIỆU THAM KHẢO 77
Trang 7Số 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 3.1 Mô tả các lớp để xây dựng mạng neuron 45
Bảng 3.2 Mô tả các lớp của module SURF 46
Bảng 3.3 Mô tả một số lớp thuộc module sinh từ điển 47
Bảng 4.1 Một số kết quả phân tích số lượng đặc trưng với các giá trị khác nhau của ngưỡng Hessian 62
Bảng4.2 Kết quả test với các bộ dữ liệu hình có kích thước khác nhau 65
Bảng 4.3 Kết quả test với bộ dữ liệu ảnh có nhiễu nhẹ 68
Bảng 4.4 Kết quả test với bộ dữ liệu có nhiễu 70
Bảng 4.5 Kết quả test với bộ dữ liệu Sebastien Marcel 72
Bảng 4.6 Kết quả thử nghiệm của mô hình CGM 73
Bảng 4.7 Kết quả thử nghiệm với bộ dữ liệu của Đại học Cambridge 75
Trang 8Số 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 Găng tay có gắn thiết bị trong HCI 6
Hình 1.2 Mô hình bàn tay với 27 DOF do Tomasi xây dựng và nguyên tắc hoạt động của các phương pháp dựa trên mô hình 3D 7
Hình 1.3 Nhận diện bàn tay dựa trên đường biên 8
Hình 1.4 Đặc trưng Haar và AdaBoost 9
Hình 1.5 Biểu đồ mô phỏng việc tính toán các DoG ảnh từ các ảnh kê mờ 16
Hình 1.6 Quá trình lựa chọn các điểm hấp dẫn 17
Hình 1.7 Biểu diễn vector đặc trưng 18
Hình 1.8.cấu trúc cơ bản của một neuron 23
Hình 1.9 Mô hình neuron của Mc Culloch và Pitts 24
Hình 1.10 Mạng truyền thẳng ba lớp 25
Hình 2.1 Mô tả ý tưởng của thuật toán nhận diện vật thể trình bày dựa trên mô hình túi từ 32
Hình 2.2 Sơ đồ tổng quát của thuật toán nhận diện vật thể trình bày 33
Hình 2.3 Đặc trưng được trích chọn bằng SURF 37
Hình 2.4.Mô tả trực quan quá trình phân cụm và sinh từ điển 39
Hình 2.5 Vật thể và mô tả BOW tương ứng 41
Hình 2.6.Mạng neuron nhiều lớp 42
Hình 3.1 Các lớp để xây dựng mạng neuron 45
Hình 3.2 Mô tả các lớp của module SURF 46
Hình 3.3 Các lớp thuộc module sinh từ điển 48
Hình 3.4 Giao diện chính của chương trình Hand Recognitor 49
Hình 3.5 Giao diện module tạo dữ liệu và test thuật toán 50
Hình 3.6 Tab «Real-time» để tạo bộ dữ liệu 51
Trang 9Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Hình 3.7 Ví dụ về các ảnh thu được thuộc 4 lớp «Fist», «OK», «Palm»,
«Point» 52
Hình 3.8 Giao diện module tạo dữ liệu và test thuật toán 53
Hình 3.9 Ứng dụng «BOW params» để lựa chọn tham số 54
Hình 3.10 Kết quả phân tích bộ ảnh thuộc 4 lớp 55
Hình 3.11 Giao diện để tạo và huấn luyện mạng neuron 56
Hình 3.12 Tự động test độ chính xác của thuật toán 58
Hình 3.13 Kiểm tra hoạt động của thuật toán 59
Hình 3.14 Thử nghiệm nhận diện trong thời gian thực 59
Hình 4.1 Các lớp vật thể trong các bộ dữ liệu 60
Hình 4.2 Một phần bộ dữ liệu dùng để sinh từ điển 61
Hình 4.3 Bộ dữ liệu huấn luyện 63
Hình 4.4 Một số hình trong bộ dữ liệu test 64
Hình 4.5 Một phần bộ dữ liệu test với nhiễu nhẹ 68
Hình 4.6 Một phần bộ dữ liệu thử nghiệm 69
Hình 4.7 Các lớp trong bộ dữ liê ̣u Sebastien Marcel 71
Hình 4.8 Một số hình thuộc lớp A chia làm hai nhóm: nhóm “đơn giản” (hàng trên), nhóm “phức tạp” (hàng dưới) 72
Hình 4.9 Một phần dữ liệu của Đại học Cambridge 74
Trang 10Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
MỞ ĐẦU
Ngày nay dưới sự phát triển rộng rãi của các ứng dụng công nghệ thông tin vào trong cuộc sống, việc tương tác giữa con người và thiết bị ngày càng trở nên quan trọng Trước đây, bàn phím và chuột là các giao diện chính để giao tiếp giữa người và máy tính Trong các lĩnh vực khác cần tới các thông tin 3D, chẳng hạn như trò chơi máy tính, robot và lĩnh vực thiết kế… các thiết
bị cơ khí khác như bóng lăn, cần điều khiển hay các găng tay dữ liệu đã được
sử dụng Tuy nhiên, con người giao tiếp chủ yếu bởi “nghe” và “nhìn”, do đó một giao diện người – máy sẽ trực quan hơn nếu con người có thể điều khiển máy tính bằng giọng nói hay cử chỉ giống như khi tương tác giữa người với người trong thế giới thực mà không cần thông qua các thiết bị điều khiển khác như chuột hay bàn phím Một ưu điểm khác là người dùng có thể giao tiếp từ
xa mà không cần phải có tiếp xúc vật lý với máy tính So với các hệ thống điều khiển bằng lệnh âm thanh, một hệ thống thị giác sẽ thích hợp hơn trong môi trường ồn ào hoặc trong trường hợp âm thanh bị nhiễu
Nhận dạng các cử động của tay người là cách tự nhiên khi tương tác người – máy và ngày nay nhiều nhà nghiên cứu trong các học viện và ngành công nghiệp đang quan tâm đến hướng này Nó cho phép con người tương tác với máy rất dễ dàng và thuận tiện mà không cần phải mang thêm bất kỳ thiết
bị ngoại vi nào Với mục đích nghiên cứu kỹ thuật nhận dạng cử chỉ bàn tay người, luận văn sẽ tập trung trình bày một số nội dung chính như sau:
1 GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI
Tương tác người - máy (Human - Computer Interaction, HCI) là một lĩnh vực thu hút nhiều nghiên cứu và đã đạt được nhiều kết quả ấn tượng trong thời gian gần đây Một trong những bài toán quan trọng của lĩnh vực này là cung cấp khả năng điều khiển máy tính (hoặc thiết bị) từ xa thông qua camera kết nối với máy Bài toán này thường bao gồm các bước: phát hiện đối
Trang 11Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
tượng trong thị trường của camera (ví dụ, tay, mặt, cơ thể người điều khiển hoặc một thiết bị đặc biệt nào đó dùng để điều khiển); theo dõi chuyển động của đối tượng; nhận diện hình dạng và cách thức chuyển động của đối tượng Kết quả nhận diện được sử dụng để tạo ra các lệnh tương ứng cho máy tính
Mục đích của đề tài là xây dựng một phương pháp nhận diện mẫu trong các frame thu trực tiếp từ camera theo thời gian thực để giải quyết bước thứ
ba trong bài toán điều khiển máy tính từ xa nêu trên Phương pháp nhận diện
này sử dụng mô hình túi từ (bag-of-features, bag-of-words) kết hợp với
phương pháp phân lớp bằng mạng neural Trong đó, mô hình túi từ được sử dụng để tạo ra các vector đặc trưng làm dữ liệu đầu vào cho mạng neural Phương pháp nhận diện này cần đảm bảo được tốc độ xử lý cao (để có thể thực hiện trong thời gian thực với dữ liệu thu trực tiếp từ một camera), và có tính bền vững với một số dạng biến đổi của đối tượng (xoay hình, thay đổi kích thước và vị trí trong frame) Đối tượng nhận diện chính của đề tài là cử chỉ tay người và một số đồ vật đơn giản
2 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
a Lý thuyết
- Nghiên cứu mô hình túi từ;
- Nghiên cứu một số phương pháp trích chọn đặc trưng trong ảnh số;
- Nghiên cứu một số phương pháp phân cụm dữ liệu đơn giản;
- Nghiên cứu mạng neural nhiều lớp
b Thực nghiệm
- Xây dựng chương trình thử nghiệm;
- Thực hiện huấn luyện và test trên một số loại lớp đối tượng (ví dụ, các dạng của tay người, một số loại đồ vật đơn giản);
- Thực hiện huấn luyện và test trên một số kho dữ liệu cử chỉ (ví dụ, kho dữ liệu của trường Đại học Cambridge);
Trang 12Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- Phân tích, đánh giá kết quả thu được; so sánh kết quả thu được với kết quả của một số phương pháp nhận diện đã được công bố
3 HƯỚNG NGHIÊN CỨU CỦA ĐỀ TÀI
- Nghiên cứu một số phương pháp nhận diện mẫu đã được công bố ở trong và ngoài nước (từ nguồn học liệu tại trung tâm học liệu Đại học Thái Nguyên, trường Đại học CNTT&TT, các tạp chí online)
- Nghiên cứu mô hình túi từ và cách áp dụng phương pháp này trong xử
lý ảnh để tạo ra vector đặc trưng làm dữ liệu đầu vào cho mạng neural
- Nghiên cứu và so sánh một số phương pháp trích chọn đặc trưng trong ảnh số (SURF, SIFT) để lựa chọn phương pháp phù hợp với mô hình túi
từ và đáp ứng được yêu câu đặt ra của đề tài (tốc độ xử lý, tính bền vững với một số dạng biến đổi của đối tượng trong ảnh)
- Nghiên cứu cách sử dụng mạng neural nhân tạo trong phân lớp dữ liệu, trong đó, dữ liệu đầu vào cho mạng neural được tạo ra bằng cách áp dụng mô hình túi từ
- Xây dựng dữ liệu để huấn luyện và test; phân tích và đánh giá kết quả thu được; so sánh kết quả test trên các kho dữ liệu cử chỉ khác nhau; so sánh kết quả thu được bằng phương pháp trình bày với các phương pháp khác đã được công bố
4 NỘI DUNG NGHIÊN CỨU
Trang 13Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Phần này trình bày chi tiết về mô hình túi từ, cách ứng dụng mô hình này trong bài toán nhận diện mẫu, lựa chọn thuật toán trích chọn đặc trưng và phân cụm dữ liệu phù hợp, cách xây dựng vector đăc trưng với mô hình túi từ
Chương 3 Xây dựng chương trình thử nghiệm
Chương 4 Thử nghiệm và đánh giá kết quả
Phần này trình bày chi tiết về chương trình thử nghiệm, áp dụng chương trình cho các kho dữ liệu ảnh, phân tích – đánh giá – so sánh kết quả
5 PHƯƠNG PHÁP NGHIÊN CỨU
- Phương pháp nghiên cứu lý thuyết: Tìm hiểu các tài liệu liên quan tới
các phương pháp nhận diện mẫu trong ảnh số, mô hình túi từ, các phương pháp trích chọn và biểu diễn đặc trưng, một số thuật toán phân cụm dữ liệu đơn giản, mạng neural nhân tạo
- Phương pháp nghiên cứu thực nghiệm: Xây dựng một số kho dữ liệu
ảnh; xây dựng chương trình thử nghiệm; huấn luyện và test thuật toán trên các kho dữ liệu để lấy dữ liệu đánh giá độ chính xác và tốc độ xử lý của thuật toán
- Phương pháp trao đổi khoa học: Trao đổi hướng nghiên cứu với
người hướng dẫn và trình bày Seminar với các đồng nghiệp để trình bày và giải quyết các nội dung luận văn đề ra
6 Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN CỦA ĐỀ TÀI
Ý nghĩa khoa học của đề tài là trình bày một thuật toán xây dựng vector đặc trưng cho đối tượng trên ảnh số Thuật toán đảm bảo tốc độ xử lý trong thời gian thực với dữ liệu thu trực tiếp từ camera Vector đặc trưng đảm bảo được tính bền vững khi đối tượng chịu một số biến đổi
Trang 14Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
CHƯƠNG 1 TỔNG QUAN
1.1 Khảo sát một số công trình đã được công bố về nhận diện bàn tay
Cử chỉ tay là phương thức giao tiếp tự nhiên và trực quan trong tương tác người – máy (Human – Computer Interaction) Để thực hiện loại tương tác
này người ta cần phát triển các phương pháp và công cụ gọi là giao diện
người máy (Human – Computer Interface – HCI), cho phép máy tính nhận
diện cử chỉ tay trong thời gian thực Tuy nhiên, việc theo dõi chuyển động của tay dựa vào thị giác máy và nhận diện cử chỉ là một vấn đề khó giải quyết do các cử chỉ tay người rất phức tạp Sự phức tạp này là do sự đa dạng của cử chỉ
tạo ra bởi một số lượng lớn các bậc tự do (Degree of Freedom – DoF, thu
được trong quá trình mô hình hóa bàn tay người)
Để thực hiện tốt vai trò của mình, các HCI dựa trên cử chỉ tay phải đáp ứng các yêu cầu về hiệu suất trong thời gian thực, độ chính xác cao trong nhận diện, mức độ ổn định trước các loại biến đổi khác nhau (ví dụ: thay đổi hướng và cường độ chiếu sáng, thay đổi về góc nghiêng của đối tượng, v.v…), và khả năng hoạt động với các phông nền (khung cảnh phía sau người thực hiện cử chỉ) đa dạng
Để đáp ứng các yêu cầu này, nhiều hệ thống nhận dạng cử chỉ đã sử dụng những thiết bị đánh dấu bằng màu sắc hoặc găng tay (găng tay gắn cảm biến) để đơn giản hóa việc thu nhận và xử lý thông tin từ cử chỉ tay [5] Tuy nhiên, việc sử dụng các thiết bị đánh dấu hoặc găng tay gây phiền phức cho người sử dụng, đồng thời làm giảm tính tự nhiên trong tương tác với máy tính
Trang 15Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Hình 1.1 Găng tay có gắn thiết bị trong HCI
Luận văn này chỉ tập trung vào việc nhận diện một phần cử chỉ tay, trước hết là hình dạng của bàn tay, thu từ camera trong thời gian thực và không có sự hỗ trợ của các thiết bị đánh dấu khác hoặc găng tay
Có hai nhóm phương pháp chính đối với bài toán nhận dạng cử chỉ tay dựa trên thị giác: các phương pháp dựa trên mô hình ba chiều của tay (3D hand model); các phương pháp dựa vào hình dạng bên ngoài của tay [15]
Các phương pháp dựa trên mô hình 3D sử dụng mô hình động học ba chiều của tay với một số lượng tương đối lướng các bậc tự do [9], [6]–[11] Các phương pháp này tính ra các tham số của tay bằng cách so sánh hình ảnh bàn tay trên các frame với hình chiếu của mô hình 3D trên mặt phẳng Các phương pháp này phù hợp với tương tác trong môi trường ảo, cho phép thu được nhiều tham số của cử chỉ tay, đồng thời cho phép nhận diện một số lượng lớn các lớp cử chỉ tay Tuy nhiên, do các mô hình 3-D của bàn tay là những vật thể biến dạng có khớp nối với nhiều bậc tự do (mô hình 3D tiêu chuẩn có 27 DOF), để mô tả hình dạng của tay dưới các góc nhìn khác nhau cần một cơ sở dữ liệu rất lớn Nhược điểm khác của các phương pháp này là
sự khó khăn trong trích trọn đặc trưng và không có khả năng xử lý những tình huống đặc biệt (phát sinh từ các góc nhìn không rõ ràng)
Trang 16Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Hình 1.2 Mô hình bàn tay với 27 DOF do Tomasi xây dựng và nguyên tắc
hoạt động của các phương pháp dựa trên mô hình 3D
Các phương pháp dựa trên hình dạng (appearance-based) thực hiện trích trọn đặc trưng để mô hình hóa hình dạng bên ngoài của bàn tay Khi nhận diện, các đặc trưng trích ra sẽ được so sánh với các đặc trưng của các lớp đã biết Các phương pháp dựa trên hình dạng thường có tốc độ xử lý cao (hoạt động trong thời gian thực) do việc xử lý hình 2D thường đơn giản hơn Các phương pháp thuộc nhóm này thường xử dụng các đặc trưng như màu sắc, đường biên, các điểm hoặc các vùng đặc biệt
Thu nhận hình qua camera
Xử lý ảnh
Chiếu hình
Điều chỉnh tham số
Phát hiện / Nhận diện Bàn tay
Mô hình bàn tay
Trang 17Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Trong [10] sử dụng một phương pháp nhận diện đơn giản bằng cách tìm kiếm những vùng màu da trong hình ảnh Tuy nhiên, phương pháp này có một số yếu điểm: rất nhạy cảm với điều kiện ánh sáng; không cho phép có các đối tượng giống màu da trong hình ảnh Trong [3] sử dụng các đặc trưng màu sắc theo thang đo (scale-space color features) để nhận diện cử chỉ tay Tuy nhiên, hệ thống này chỉ hoạt động được trong thời gian thực khi trong hình không có đối tượng khác trùng màu da
Các tác giả trong [1] sử dụng đường biên của tay để nhận diện bằng cách tính toán độ cong tại mỗi điểm trên đường biên Phương pháp tách biên này thường khó sử dụng nếu có yếu tố gây nhiễu, khi điều kiện chiếu sáng thay đổi, hoặc khi sử dụng trên phông nền phức tạp
Hình 1.3 Nhận diện bàn tay dựa trên đường biên
Gần đây có một số nghiên cứu về các đặc trưng bất biến cục bộ (local invariant features) [13]–[4] Trong [13], thuật toán Adaboost và đặc trưng SIFT được sử dụng để phát hiện bàn tay Phương pháp này cho phép pháp hiện bàn tay kể cả trong trường hợp bàn tay xoay trên một mặt phẳng Phương
pháp này cũng đưa ra khái niệm sharing feature để tăng tốc độ hoạt động và
độ chính xác (lên tới 97,8%) Để đạt được tốc độ nhận diện trong thời gian thực, phương pháp này sử dụng thêm một số loại đặc trưng khác (vd, contrast context histogram) Trong [2], [4], đặc trưng Haar được sử dụng dụng để phát hiện bàn tay Đặc trưng Haar tập trung vào các thông tin trong một vùng nhất định của hình ảnh thay vì từng pixel riêng rẽ Để nâng cao độ chính xác khi phân loại và có được hiệu suất thời gian thực, phương pháp này sử dụng
Trang 18Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Adaboost (ghép các classifier đơn giản theo mô hình thác nước để tạo thành một classifier mạnh)
Nghiên cứu mà Viola và Jones đề xuất [12] cho bài toán phát hiện vật thể trong thời gian thực cho phép phát hiện bàn tay trên bất kỳ phông nền nào với độ chính xác rất cao [14] Phương pháp này phát hiện vật thể nhanh và chính xác nhưng cần thời gian huấn luyện rất dài và một số lượng hình mẫu rất lớn Ngoài ra, phương pháp phát hiện vật thể của Viola-Jones chỉ có thể được thực hiện với bàn tay nghiêng từ 15 tới 30 độ [7]
Cửa sổ con bị loại bỏ
Xử lý bổ sung
Cấu trúc thác nước
Trang 19Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
1.2.Trích chọn đặc trưng
1.2.1 Đặt vấn đề
Trong tìm kiếm ảnh theo nội dung, việc lựa chọn các đặc trưng thích hợp với từng loại truy vấn và miền ứng dụng cùng với các độ đo tương đồng tưong ứng là thành phần quan trọng và then chốt nhất Việc lựa chọn các đặc trưng và độ đo thích hợp sẽ giúp tăng cả tốc độ và mức độ chính xác lựa chọn đặc trưng cho ảnh:
- Thành phần lựa chọn đặc trưng phải lựa chọn được một tập các đặc trưng cung cấp đầu vào tốt nhất cho hệ thống tìm kiếm ảnh Nếu số lượng các đặc trưng quá nhiều sẽ làm "che khuất" các "tín hiệu" (giảm các "tín hiệu" đối với tỉ lệ nhiễu), mặt khác, nếu số lượng các đặc trưng quá ít sẽ khó phân biệt được ảnh trong tìm kiếm
- Nó phải giảm bớt được độ phức tạp trong lúc tính toán tổng thể bằng giảm đa chiều của bài toán phân lớp
- Khi người dùng muốn sử dụng các đặc trưng đó cho mọi truy vấn, thì việc sử dụng các đặc trưng này phải hiệu quả Vì số lượng các đặc trưng
có thể là hàng ngàn, dó đó thời gian xử lý của module phải tuyến tính với số lượng đặc trưng
- Vì thời gian xử lý của thành phần lựa chọn đặc trưng tuyến tính với số lượng đặc trưng, do đó việc lựa chọn các đặc trưng cũng nên tuyến tính dựa trên phân lớp
Trong phần này, chúng tôi sẽ trình bày sơ bộ về các vấn đề về đặc trưng của ảnh (màu sắc, kết cấu, hình dạng, đặc trưng cục bộ SIFT), một số
độ đo tương đồng tương ứng với các đặc trưng và phương pháp lựa chọn đặc trưng ảnh để tăng chất lượng tập đặc trưng
Trang 20Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
1.2.2 Đặc trưng màu sắc
a Đặc trưng màu sắc
Tìm kiếm ảnh theo lược đồ màu là phương pháp phổ biến và được sử dụng nhiều nhất trong các hệ thống tìm kiếm ảnh theo nội dung Đây là phương pháp đơn giản, tốc độ tìm kiếm tương đối nhanh tuy nhiên kết quả tìm kiếm có
độ chính xác không cao Đây có thể xem là bước lọc đầu tiên cho những bước tìm kiếm sau Một số lược đồ màu được sử dụng như: lược đồ màu RGB, lược
đồ màu HSI, lược đồ HSI cải tiến
Trong đó, lược đồ màu RGB được sử dụng phổ biến nhất
* Lược đồ màu RGB:
Đối với ảnh 256 màu, lược đồ màu của ảnh tương đương với lược đồ màu của ảnh xám Đối với ảnh 24 bit màu, lược đồ miêu tả khả năng kết nối về cường độ của ba kênh màu R, G, B Luợc đồ màu này được định nghĩa như sau:
R G
h r g b rob R x G g b (1.1)
Trong đó N là số lượng điểm có trong ảnh
Lược đồ màu này được tính bằng cách rời rạc hóa từng màu trong ảnh, sau đó đếm số điểm ảnh của mỗi màu Khi mà số lượng màu là có hạng, để thuận tiện hơn, người ta thường chuyển đổi ba kênh màu thành một biến giá trị duy nhất Một cách khác để tính lược đồ màu của ảnh RGB là ta phân ra
làm 3 lượt đồ riêng biệt hR[] , hG[] , hB[] Khi đó, mỗi lược đồ được tính bằng
cách đếm kênh màu tương ứng trong mỗi điểm ảnh
b Độ đo tương đồng về màu sắc
Một số độ đo tương đồng được sử dụng như: Độ đo khoảng cách Euclide, độ đo Jensen-Shannon divergence (JSD)
Gọi h(I) và h(M) tương ứng là 2 lượt đồ màu của hai ảnh I và ảnh M Khi đó các loại độ đo màu được định nghĩa là một số nguyên (hoặc số thực) theo các loại độ đo tương ứng như sau:
Trang 21Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
* Độ đo Jensen-Shannon divergence (JSD) :
Độ đo Jensen-Shannon divergence sử dụng lược độ màu RGB để tính toán độ tương đồng về màu sắc giữa 2 ảnh :
Kết cấu cung cấp thông tin về sự sắp xếp về mặt không gian của màu sắc
và cường độ một ảnh Kết cấu được đặc trưng bởi sự phân bổ không gian của những mức cường độ trong một khu vực láng giềng với nhau Kết cấu gồm các kết cấu gốc hay nhiều kết cấu gộp lại đôi khi gọi là texel
Một số phương pháp dùng để trích xuất các đặc trưng kết cấu như[18]:
* Kim tự tháp "có thể lái được" (the steerable pyramid)
* Biến đổi đường viền (the cotourlet transform)
* Biến đổi Gabor (The Gabor Wavelet transform)
Trang 22Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
* Biểu diễn ma trận đồng hiện (co-occurrence matrix)
* Hệ thống bộ lọc định hướng phức tạp (The complex directional fillter bank)
b Độ đo tương đồng cho kết cấu ảnh
Để đo độ tương đồng theo kết cấu giữa các ảnh, người ta thường sử dụng độ đo Euclide Kết cấu được trích xuất từ các bức ảnh sẽ được biểu diễn thành các vector nhiều chiều và khoảng cách Euclide được dùng để đo độ tương đồng giữa các đặc trưng của ảnh truy vấn với đặc trưng của ảnh trong
Trong tìm kiếm ảnh theo nội dung, hình dạng là một cấp cao hơn so với màu sắc và kết cấu Nó đòi hỏi sự phân biệt giữa các vùng để tiến hành xử lý
về độ đo của hình dạng Các hệ thống tìm kiếm ảnh theo nội dung thường khai thác hai nhóm biểu diễn hình dạng sau :
* Biểu diễn hình dạng theo đường biên (cotour-based descriptor) : Biểu diễn các đường biên bao bên ngoài
* Biểu diễn theo vùng (region-based descriptor): Biểu diễn một vùng toàn vẹn
b Độ đo tương đồng cho hình dạng
Độ đo về hình dạng rất nhiều trong phạm vi lý thuyết của bộ môn xử lý ảnh Chúng trải rộng từ những độ đo toàn cục dạng thô với sự trợ giúp của
Trang 23Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
việc nhận dạng đối tượng, cho tới những độ đo chi tiết tự động tìm kiếm những hình dạng đặc biệt Lược đồ hình dạng là một ví dụ của độ đo đơn giản
Kỹ thuật dùng đường biên hiệu quả hơn phương pháp trước, chúng tìm kiếm những hình dạng đối tượng gần giống với đường biên nhất Phương pháp vẽ phác họa là phương pháp có nhiều đặc trưng rõ ràng hơn, không chỉ tìm kiếm những đường biên đối tượng đơn, mà còn đối với tập những đối tượng đã được phân đoạn trong một ảnh mà người dùng vẽ hay cung cấp
1.2.5 Đặc trưng cục bộ bất biến
Người ta thường chia đặc trưng cụ bộ thành 2 loại là những điểm trích xuất được từ điểm "nhô ra" (salient points) của ảnh và đặc trưng SIFT được trích chọn từ các điểm hấp dẫn Haris (interest points) Trong phần này, chúng tôi sẽ trình bày chi tiết về việc trích chọn các đặc trưng cục bộ bất biến (Scale Invariant Feature Transform SIFT) của ảnh
a Đặc trưng cục bộ bất biến
Phần này trình bày phương pháp trích rút các đặc trưng cục bộ bất biến SIFT của ảnh Các đặc trưng này bất biến với việc thay đổi tỉ lệ ảnh, quay ảnh, đôi khi là thay đổi điểm nhìn và thêm nhiễu ảnh hay thay đổi cường độ chiếu sáng của ảnh Phương pháp được lựa chọn có tên là Scale-Invariant Feature Transform (SIFT) và đặc trưng trích rút đựợc gọi là đặc trưng SIFT (SIFT Feature) Các đặc trưng SIFT này được trích rút ra từ các điểm hấp dẫn cục bộ (Local Interest Point)
Điểm hấp dẫn (Interest Point (Keypoint)): Là vị trí (điểm ảnh) "hấp
dẫn" trên ảnh "Hấp dẫn" ở đây có nghĩa là điểm đó có thể có các đặc trưng bất biến với việc quay ảnh, co giãn ảnh hay thay đổi cường độ chiếu sáng của ảnh
Phương pháp trích rút các đặc trưng bất biến SIFT được tiếp cận theo phương pháp thác lọc, theo đó phương pháp được thực hiện lần lượt theo các
Trang 24Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
cả các điểm hấp dẫn tiềm năng mà bất biến với quy mô và hướng của ảnh
* Định vị các điểm hấp dẫn (keypoint localization): Một hàm kiểm tra
sẽ được đưa ra để quyết định xem các điểm hấp dẫn tiềm năng có được lựa chọn hay không?
* Xác định hướng cho các điểm hấp dẫn (Orientation assignment):
Xác định hướng cho các điểm hấp dẫn được chọn
* Mô tả các điểm hấp dẫn (Keypoint descriptor): Các điểm hấp dẫn
sau khi được xác định hướng sẽ được mô tả dưới dạng các vector đặc trưng nhiều chiều
b Phát hiện điểm cực trị Scale-space
Các điểm hấp dẫn với đặc trưng SIFT tương thích với các cực trị địa phương của bộ lọc difference -of-Gaussian (DoG) ở các tỉ lệ khác nhau
Định nghĩa không gian tỉ lệ của một hình ảnh là hàm L(x,y,kσ ) được mô tả
2 2
1 , ,
Trang 25Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Để phát hiện được các điểm hấp dẫn, ta đi tìm các cực trị của hàm DoG được định nghĩa:
Giá trị hàm DoG được tính xấp xỉ dựa vào giá trị scale-normalized
Laplacian of Gaussian (σ 2 2G) thông qua các phương trình
Như vậy, bước đầu tiên của giải thuật SIFT phát hiện các điểm hấp dẫn với bộ lọc Gaussian ở các tỉ lệ khác nhau và các ảnh GoG từ sự khác nhau của các ảnh kề mờ
Hình 1.5 Biểu đồ mô phỏng việc tính toán các DoG ảnh từ các ảnh kê mờ
Các ảnh cuộn được nhóm thành các octave (mỗi octave tương ứng với
giá trị gấp đôi của σ) Giá trị của k được chọn sao cho số lượng ảnh mờ
(blured images) cho
Trang 26Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
c Định vị điểm hấp dẫn
Mỗi điểm hấp dẫn ứng viên sau khi được chọn sẽ được đánh giá xem
có được giữ lại hay không:
*Loại bỏ các điểm hấp dẫn có độ tương phản hấp
* Một số điểm hấp dẫn dọc theo các cạnh không giữ được tính ổn định khi ảnh bị nhiễu cũng bị loại bỏ
Các điểm hấp dẫn còn lại sẽ được xác định hướng
Hình 1.6 Quá trình lựa chọn các điểm hấp dẫn
a Ảnh gốc; b Các điểm hấp dẫn được phát hiện; c Ảnh sau khi loại bỏ các điểm hấp dẫn có độ tương phản thấp; d Ảnh sau loại bỏ các điểm hấp dẫn dọc theo cạnh
d Xác định hướng cho điểm hấp dẫn
Để xác định hướng cho các điểm hấp dẫn, người ta tính toán biểu đồ hướng Gradient trong vùng láng giềng của điểm hấp dẫn Độ lớn và hướng của các điểm hấp dẫn được xác định theo công thức:
Trang 27Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
e Biểu diễn vector cho điểm hấp dẫn
Điểm hấp dẫn sau khi được xác định hướng sẽ được biểu diễn dưới dạng các vector 4x4x8=128 chiều
Hình 1.7 Biểu diễn vector đặc trưng
1.3 Phân lớp dữ liệu và mạng neuron
1.3.1 Phân lớp dữ liệu
Ngày nay phân lớp dữ liệu (classification) là một trong những hướng
nghiên cứu chính của khai phá dữ liệu Thực tế đặt ra nhu cầu là từ một cơ sở
dữ liệu với nhiều thông tin ẩn con người có thể trích rút ra các quyết định nghiệp vụ thông minh Phân lớp và dự đoán là hai dạng của phân tích dữ liệu nhằm trích rút ra một mô hình mô tả các lớp dữ liệu quan trọng hay dự đoán xu hướng dữ liệu tương lai Phân lớp dự đoán giá trị của những nhãn xác định
(categorical label) hay những giá trị rời rạc (discrete value), có nghĩa là phân
lớp thao tác với những đối tượng dữ liệu mà có bộ giá trị là biết trước Trong khi đó, dự đoán lại xây dựng mô hình với các hàm nhận giá trị liên tục Ví dụ
mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là mưa, hay
Trang 28Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
nắng dựa vào những thông số về độ ẩm, sức gió, nhiệt độ, của ngày hôm nay
và các ngày trước đó
Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra những quyết sách đúng đắn về lượng mặt hàng cũng như chủng loại bày bán Một mô hình dự đoán có thể dự đoán được lượng tiền tiêu dùng của các khách hàng tiềm năng dựa trên những thông tin
về thu nhập và nghề nghiệp của khách hàng Trong những năm qua, phân lớp
dữ liệu đã thu hút sự quan tâm các nhà nghiên cứu trong nhiều lĩnh vực khác
nhau như học máy (machine learning), hệ chuyên gia (expert system), thống
kê (statistics) Công nghệ này cũng ứng dụng trong nhiều lĩnh vực khác
nhau như: thương mại, nhà băng, maketing, nghiên cứu thị trường, bảo hiểm,
y tế, giáo dục Phần lớn các thuật toán ra đời trước đều sử dụng cơ chế dữ
liệu cư trú trong bộ nhớ (memory resident), thường thao tác với lượng dữ liệu
nhỏ Một số thuật toán ra đời sau này đã sử dụng kỹ thuật cư trú trên đĩa cải thiện đáng kể khả năng mở rộng của thuật toán với những tập dữ liệu lớn lên tới hàng tỉ bản ghi
Quá trình phân lớp dữ liệu gồm hai bước:
• Bước thứ nhất (learning)
Quá trình học nhằm xây dựng một mô hình mô tả một tập các lớp dữ liệu hay các khái niệm định trước Đầu vào của quá trình này là một tập dữ liệu có cấu trúc được mô tả bằng các thuộc tính và được tạo ra từ tập các bộ giá trị của các thuộc tính đó Mỗi bộ giá trị được gọi chung là một phần tử dữ
liệu (data tuple), có thể là các mẫu (sample), ví dụ (example), đối tượng (object), bản ghi (record) hay trường hợp (case) Khoá luận sử dụng các thuật
ngữ này với nghĩa tương đương Trong tập dữ liệu này, mỗi phần tử dữ liệu được giả sử thuộc về một lớp định trước, lớp ở đây là giá trị của một thuộc
tính được chọn làm thuộc tính gán nhãn lớp hay thuộc tính phân lớp (class
Trang 29Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
label attribute) Đầu ra của bước này thường là các quy tắc phân lớp dưới
dạng luật dạng if-then, cây quyết định, công thức logic, hay mạng nơron Quá trình này được mô tả như trong hình 1
• Bước thứ hai (classification)
Bước thứ hai dùng mô hình đã xây dựng ở bước trước để phân lớp dữ liệu mới Trước tiên độ chính xác mang tính chất dự đoán của mô hình phân
lớp vừa tạo ra được ước lượng Holdout là một kỹ thuật đơn giản để ước lượng
độ chính xác đó Kỹ thuật này sử dụng một tập dữ liệu kiểm tra với các mẫu
đã được gán nhãn lớp Các mẫu này được chọn ngẫu nhiên và độc lập với các
mẫu trong tập dữ liệu đào tạo Độ chính xác của mô hình trên tập dữ liệu kiểm
tra đã đưa là tỉ lệ phần trăm các các mẫu trong tập dữ liệu kiểm tra được mô
hình phân lớp đúng (so với thực tế) Nếu độ chính xác của mô hình được ước lượng dựa trên tập dữ liệu đào tạo thì kết quả thu được là rất khả quan vì mô hình luôn có xu hướng "quá vừa" dữ liệu Quá vừa dữ liệu là hiện tượng kết quả phân lớp trùng khít với dữ liệu thực tế vì quá trình xây dựng mô hình phân lớp từ tập dữ liệu đào tạo có thể đã kết hợp những đặc điểm riêng biệt của tập dữ liệu đó Do vậy cần sử dụng một tập dữ liệu kiểm tra độc lập với tập dữ liệu đào tạo Nếu độ chính xác của mô hình là chấp nhận được, thì mô hình được sử dụng để phân lớp những dữ liệu tương lai, hoặc những dữ liệu mà giá trị của thuộc tính phân lớp là chưa biết
Trong mô hình phân lớp, thuật toán phân lớp giữ vai trò trung tâm, quyết định tới sự thành công của mô hình phân lớp Do vậy chìa khóa của vấn đề phân lớp dữ liệu là tìm ra được một thuật toán phân lớp nhanh, hiệu quả, có độ chính xác cao và có khả năng mở rộng được Trong đó khả năng mở rộng được của thuật toán được đặc biệt trú trọng và phát triển
Trang 30Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Có thể liệt kê ra đây các kỹ thuật phân lớp đã được sử dụng trong những năm qua:
• Phân lớp cây quyết định (Decision tree classification)
• Bộ phân lớp Bayesian (Bayesian classifier)
• Mô hình phân lớp K-hàng xóm gần nhất (K-nearest neighbor
classifier)
• Mạng nơron
• Phân tích thống kê
• Các thuật toán di truyền
• Phương pháp tập thô (Rough set Approach)
1.3.2 Các vấn đề liên quan đến phân lớp dữ liệu
Việc tiền xử lý dữ liệu cho quá trình phân lớp là một việc làm không thể thiếu và có vai trò quan trọng quyết định tới sự áp dụng được hay không của
mô hình phân lớp Quá trình tiền xử lý dữ liệu sẽ giúp cải thiện độ chính xác, tính hiệu quả và khả năng mở rộng được của mô hình phân lớp
Quá trình tiền xử lý dữ liệu gồm có các công việc sau:
- Làm sạch dữ liệu
Làm sạch dữ liệu liên quan đến việc xử lý với lỗi (noise) và giá trị thiếu (missing value) trong tập dữ liệu ban đầu Noise là các lỗi ngẫu nhiên
hay các giá trị không hợp lệ của các biến trong tập dữ liệu Để xử lý với loại
lỗi này có thể dùng kỹ thuật làm trơn Missing value là những ô không có giá
trị của các thuộc tính Giá trị thiếu có thể do lỗi chủ quan trong quá trình nhập liệu, hoặc trong trường hợp cụ thể giá trị của thuộc tính đó không có, hay không quan trọng Kỹ thuật xử lý ở đây có thể bằng cách thay giá trị thiếu bằng giá trị phổ biến nhất của thuộc tính đó hoặc bằng giá trị có thể xảy ra nhất dựa trên thống kê Mặc dù phần lớn thuật toán phân lớp đều có cơ chế xử
lý với những giá trị thiếu và lỗi trong tập dữ liệu, nhưng bước tiền xử lý này có
Trang 31Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
thể làm giảm sự hỗn độn trong quá trình học (xây dựng mô hình phân lớp)
- Phân tích sự cần thiết của dữ liệu
Có rất nhiều thuộc tính trong tập dữ liệu có thể hoàn toàn không cần thiết hay liên quan đến một bài toán phân lớp cụ thể Ví dụ dữ liệu về ngày trong tuần hoàn toàn không cần thiết đối với ứng dụng phân tích độ rủi ro của các khoản tiền cho vay của ngân hàng, nên thuộc tính này là dư thừa Phân tích sự cần thiết của dữ liệu nhằm mục đích loại bỏ những thuộc tính không cần thiết, dư thừa khỏi quá trình học vì những thuộc tính đó sẽ làm chậm, phức tạp và gây ra sự hiểu sai trong quá trình học dẫn tới một mô hình phân lớp không dùng được
- Chuyển đổi dữ liệu
Việc khái quát hóa dữ liệu lên mức khái niệm cao hơn đôi khi là cần
thiết trong quá trình tiền xử lý Việc này đặc biệt hữu ích với những thuộc tính
liên tục (continuous attribute hay numeric attribute) Ví dụ các giá trị số của
thuộc tính thu nhập của khách hàng có thể được khái quát hóa thành các dãy giá trị rời rạc: thấp, trung bình, cao Tương tự với những thuộc tính rời rạc (categorical attribute) như địa chỉ phố có thể được khái quát hóa lên thành
thành phố Việc khái quát hóa làm cô đọng dữ liệu học nguyên thủy, vì vậy
các thao tác vào/ ra liên quan đến quá trình học sẽ giảm
1.3.3 Mạng neuron
a Mạng Neuron nhân tạo
Mạng neuron nhân tạo (ANN: artificial neuron networks) là mạng được xây dựng bằng cách sao chép lại các nguyên lý tổ chức của hệ neuron của con người Bộ óc của con người là một hệ neuron gồm có 1010
đến 1012 neuron được tổ chức có cấu trúc vào khoảng 200 mô hình khác nhau dưới dạng nhiều lớp
Trang 32Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Hình 1.8 Cấu trúc cơ bản của một neuron
Cấu trúc cơ bản của một neuron của hệ neuron con người gồm: các đầu vào (dendrite), thân neuron (soma) và đầu ra (axon) Mỗi neuron có nhiều đầu vào và chỉ một đầu ra Thân neuron là phần tử xử lý có chức năng thu nhận tất
cả các thông tin đến từ các đầu vào, tính toán và đưa ra quyết định ở ngõ ra để gởi thông tin đến các neuron khác SYNAP là khớp nối giữa đầu vào của neuron này với đầu ra của neuron khác
Tín hiệu điện áp được truyền từ neuron này sang neuron khác Tín hiệu điện áp dương được coi như là tín hiệu kích động (excitory) để kích động neuron gởi tín hiệu đến các neuron khác và điện áp âm được xem như là tín hiệu ức chế (inhibitory) để ức chế neuron gởi tín hiệu đến nhiều neuron khác Điện áp không thì không có tín hiệu kết nối giữa hai neuron
Đối với hệ neuron con người có cấu trúc cơ bản gồm: lớp neuron đầu vào (lớp này được kết nối với các phần tử cảm biến như miệng, mắt, mũi, tai
và da), các lớp neuron ẩn và lớp neuron đầu ra (lớp này được kết nối với các phần tử cơ như tay, chân)
Cường độ kết nối SYNAP xác định lượng tín hiệu truyền đến đầu vào
và giá trị cường độ synap được gọi là trọng số
Trang 33Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Người ta dùng mạng neuron nhân tạo để giải quyết các bài toán trong
kỹ thuật (mục tiêu là mô phỏng hoạt động của não người)
Để xây dựng một mạng neuron nhân tạo giống như hệ neuron con người,vào năm 1943 Mc.culloch và Pitts đề ra cấu trúc cơ bản của một neuron thứ I trong mô hình của mạng neuron nhân tạo
Hình 1.9 Mô hình neuron của Mc Culloch và Pitts
Trong đó: xj(k): tín hiệu vào thứ j ở thời điểm k
Yi(k): tín hiệu ra thứ I ở thời điểm k
Wij: trọng số trên tín hiệu vào thứ j
Trang 34Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
b Mạng truyền thẳng nhiều lơ ́ p
Định nghĩa hàm Squashing: Hàm a(f):R→[0,1] (hoặc R→[-1,1]) được gọi là hàm squashing nếu a(f) không giảm khi f tăng, a(-∞)=0 (hoặc a(-∞)= -1) và a(+∞)=1
Người ta chứng minh được rằng mọi quan hệ phi tuyến đều có thể được xấp xỉ với độ chính sát tùy ý bởi một mạng truyền thẳng nhiều lớp với số nút
ẩn đủ lớn, hàm tích hợp tuyến tính hoặc đa thức và hàm tác động squashing
Hình 1.10 Mạng truyền thẳng ba lớp
c Giải thuật lan truyền ngược
Giải thuật lan truyền ngược là một trong các giải thuật quan trong nhất trong lịch sử phát triển của các mạng neuron nhân tạo Giải thuật được sử dụng để huấn luyện các mạng truyền thẳng nhiều lớp với các phần tử xử lý trong mạng có hàm tác động là hàm phi tuyến Cho tập các cặp mẫu huấn luyện vào – ra (x(k),d(k)) với k = 1,2,…p, giải thuật sẽ cung cấp một thủ tục cho việc cập nhật các trọng số trong mạng từ lớp neuron đầu ra tới lớp neuron đầu vào Giải thuật vận hành theo 2 luồng dữ liệu, đầu tiên là các mẫu huấn luyện x(k) được truyền từ lớp neuron đầu vào đến lớp neuron đầu ra và cho kết quả thực sự y(k) của lớp neuron đầu ra Sau đó các tín hiệu sai lệch giữa neuron đầu ra mong muốn d(k) và đầu ra thực sự y(k) của mạng được truyền
Trang 35Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
ngược từ lớp đầu ra đến các lớp đứng trước để cập nhật các trọng số trong mạng
Giả sử xét mạng truyền thẳng ba lớp như hình 2.12 gồm lớp neuron đầu vào (input layer), lớp neuron ẩn (hidden layer) và lớp neuron đầu ra (output layer)
Lớp neuron đầu vào của mạng có m đầu vào trong đó x1… ,xi ,xm Lớp neuron ẩn có r phần tử xử lý với các đầu ra, đó là z1….,zq… ,zr.và lớp neuron đầu ra của mạng có n phần tử xử lý với n đầu ra,đó là y1….,yi….,yn Trọng số kết nối giữa đầu vào thứ j của lớp neuron đầu vào với phần tử xử lý thứ q của lớp neuron ẩn là vqj và trọng số kết nối giữa phần tử xử lý thứ q của lớp neuron ẩn với phần tử xử lý thứ i của lớp neuron đầu ra là wiq
Dữ liệu huấn luyện : {x(k),d(k),k =1,2….p}
Trang 36Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Luật học delta tổng quát hóa được xây dựng dùng phương pháp gradient descent
oi iq i
i
z net v
Luật học lan truyền ngược :
Nhập: Tập các cặp mẫu huấn luyện {x(k),d(k),k =1,2,… p}, trong đó
các vector đầu vào với các phần tử cuối cùng được gán bằng -1
Trang 37Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- Hằng số học: η lớn sẽ hội tụ nhanh nhƣng có thể gây vọt lố, do đó có thể chọn η giảm dần
và ngƣợc lại η quá nhỏ sẽ làm cho thời gian huấn luyện lớn
Mạng phụ thuộc vào số neuron có trong lớp ẩn quá ít neuron sẽ dẫn đến tình trạng thiếu, quá nhiều neuron sẽ dẫn đến tình trạng thừa
Trang 38Số hĩa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
CHƯƠNG 2.
TRÌNH BÀY SỬ DỤNG MƠ HÌNH TÚI TỪ ĐỂ XÂY DỰNG BỘ
MƠ TẢ CHO VẬT THỂ VÀ THUẬT TỐN NHẬN DIỆN VẬT THỂ
VỚI MẠNG NEURON
2.1 Mơ hình túi từ trong phân lớp văn bản
Mơ hình túi từ (Bag-of-words model) là một phương pháp biểu diễn đơn giản thường được sử dụng trong xử lý ngơn ngữ tự nhiên (Natural Language Processing), tìm kiếm thơng tin (Information Retrieval) và trong các phương pháp phân lớp văn bản (Document Classification) Mơ hình này được nhắc tới lần đầu tiên (trong ngơn ngữ học) vào năm 1954 trong bài báo của Zellig Harris
Phân lớp văn bản thường được thực hiện dựa trên mơ hình ngữ nghĩa hoặc máy học Theo M Hearst (Giáo sư đầu ngành về phân tích dữ liệu của Đại học California, Berkeley), phân lớp văn bản theo hướng tiếp cận ngữ nghĩa là vấn đề rất khĩ và phức tạp Trong khi đĩ, hướng tiếp cận dựa trên các phương pháp máy học (machine learning) lại đơn giản và cho nhiều kết quả tốt trong thực tiễn Hầu hết các phương pháp phân loại văn bản dựa trên mơ hình thống kê từ và các giải thuật học tự động Mơ hình túi từ chính là mơ hình thống kế và cho phép sử dụng cùng với các phương pháp học tự động
Theo mơ hình túi từ, dữ liệu văn bản khơng cĩ cấu trúc (độ dài khác nhau) được biểu diễn tần số xuất hiện của từ trong văn bản dưới dạng một vector Tập các dữ liệu văn bản được chuyển về dạng một bảng cĩ số cột (chiều, từ vựng) rất lớn Từ bảng dữ liệu này cĩ thể huấn luyện các mơ hình học máy tự động Các mơ hình máy học thường được sử dụng bao gồm giải thuật k-means (kNN), Nạve Bayes (NB), cây quyết định (Decision Tree - DT), Support Vector Machine (SVM), Boosting, và Random Forest (RF)
Trang 39Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Theo tiếp cận phân lớp tự động bằng mô hình máy học, việc phân loại văn bản bao gồm hai bước chính: biểu diễn dữ liệu văn bản, huấn luyện mô hình phân lớp Vấn đề khó khăn trong phân lớp văn bản dựa trên học máy nằm ở chỗ, văn bản đầu vào ở dạng không cấu trúc, trong khi các giải thuật máy học ở giai đoạn tiếp theo thường chỉ có thể xử lý được dữ liệu dạng bảng (mỗi dòng là một phần tử dữ liệu, cột là chiều hay thuộc tính) Để giải quyết vấn đề này, người ta sử dụng mô hình túi từ
Mô hình túi từ cho phép biểu diễn tập dữ liệu văn bản về cấu trúc bảng Bước tiền xử lý này bao gồm việc phân tích từ vựng và tách các từ trong nội dung của tập văn bản, chọn tập hợp các từ có ý nghĩa quan trọng dùng để phân loại, biểu diễn dữ liệu văn bản về dạng bảng để từ đó các giải thuật máy học có thể học để phân loại Ở bước phân tích từ vựng, công việc có thể là quy về từ gốc của các biến thể từ, có thể xóa bỏ các từ không có ý nghĩa cho việc phân lớp như các mạo từ, từ nối Tiếp đến là tách các từ, đưa vào tự điển Một văn bản được biểu diễn thành một vector n chiều, trong đó giá trị thành phần thứ j là tần số xuất hiện từ thứ j trong văn bản Nếu xét tập T gồm m văn bản và tự điển có n từ vựng, thì T có thể được biểu diễn thành bảng D kích thước m x n, dòng thứ i của bảng là véc tơ biểu diễn văn bản thứ i tương ứng
Chúng ta có thể thấy rằng, khi tập dữ liệu chứa vài trăm văn bản,
bộ từ điển có thể lên đến khoảng vài chục ngàn từ Do đó bảng D có số cột
n rất lớn Khi đó, các mô hình máy học như kNN, NB hay DT có thể xử lý kém hiệu quả Để khắc phục, người ta thường thực hiện việc rút gọn chiều dữ liệu Phương pháp rút gọn có thể là lựa chọn những từ quan trọng nhất để có thể phân biệt văn bản này với văn bản khác, hay phương pháp giảm chiều Các phương pháp để lựa chọn các từ có thể dựa vào ngưỡng tần số xuất hiện,
độ lợi thông tin (information gain), thông tin tương quan (mutual information) Bước rút gọn này thường gây mất thông tin, làm giảm độ chính xác của bộ phân lớp sau này Tuy nhiên, nếu không thực hiện bước rút gọn
Trang 40Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
chiều, chúng ta cần xây dựng giải thuật máy có thể xử lý được bảng có số chiều lớn
2.2 Ý tưởng và Thuật toán
Để thực hiện phân lớp với mạng neuron, bộ mô tả (descriptor) vật thể thường được biểu diễn bằng một vector có số chiều cố định và bằng số lượng neuron ở lớp input Để tạo ra bộ mô tả này có thể sử dụng nhiều loại đặc trưng: đường viền (contour), góc nghiêng hoặc điểm đặc biệt trên vật thể, vùng đặc biệt trên vật thể, v.v…Việc lựa chọn đặc trưng này có ý nghĩa quan trọng liên quan đến đặc điểm của vật thể cần nhận diện và phương pháp phân lớp được sử dụng Đối với bài toán nhận diện vật thể có hình dáng thay đổi như hình bàn tay, bộ mô tả cần có những đặc điểm: bền vững với biến đổi xoay hình, di chuyển hình và thay đổi độ phóng đại hình vật thể Ngoài ra, bộ
mô tả này cần có kích thước cố định và mang tính đặc trưng cho lớp vật thể cần nhận diện
Trong luận văn trình bày một phương pháp mô tả vật thể dựa trên mô hình túi từ để tạo ra bộ mô tả cho vật thể đáp ứng được các yêu cầu đề ra: là một vector có số chiều cố định; không phụ thuộc vào các biến đổi affine (xoay hình, di chuyển hình, phóng đại hình) Phần này cũng sẽ trình bày một thuật toán nhận diện vật thể sử dụng phương pháp mô tả để trình bày kết hợp với mạng neuron
Ý tưởng của của phương pháp mô tả vật thể này nằm ở chỗ, một hình vật thể được coi như một tài liệu văn bản, trong đó các đặc trưng được xem như các từ tạo thành văn bản Tài liệu này được phân lớp dựa trên việc tính toán số luần xuất hiện của một số “từ khóa” Đây là ý tưởng chính lấy từ phương pháp “túi từ” (TA: bag-of-words hay BOW) được sử dụng rộng rãi trong xử lý văn bản
Để đưa ý tưởng này vào nhận diện vật thể, các đặc trưng của vật thể được trích ra từ một tập hợp hình ảnh (tập huấn luyện) và được chia thành các nhóm Trong mỗi nhóm chọn ra một đặc trưng làm “đại diện” cho toàn bộ