Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)Nghiên Cứu Xây Dựng Hệ Thống Chuyển Đổi Ngôn Ngữ Cử Chỉ Sang Văn Bản (LV thạc sĩ)
Trang 1-
CHÂU QUANG VŨ
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG
CHUYỂN ĐỔI NGÔN NGỮ CỬ CHỈ SANG VĂN BẢN
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)
TP.HỒ CHÍ MINH – 2017
Trang 2HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Trang 3LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi
Tất cả các số liệu và kết quả luận văn đều trung thực và chưa từng có ai công
bố trong các nghiên cứu khác
Tp Hồ Chí Minh, ngày 31 tháng 5 năm 2017
Học viên thực hiện luận văn
Châu Quang Vũ
Trang 4LỜI CẢM ƠN
Đề hoàn thành luận văn này, ngoài những nỗ lực nghiên cứu của bản thân, tôi
xin chân thành cảm ơn TS Nguyễn Phương, người hướng dẫn khoa học, đã tận tình
chỉ bảo và hỗ trợ tôi trong suốt quá trình thực hiện luận văn
Tôi xin gửi lời cảm ơn đến cô Dương Phương Hạnh, giám đốc Trung tâm
Nghiên cứu Giáo dục Người khiếm thính (CED), đã truyền cảm hứng để tôi thực hiện
đề tài này
Tôi cũng xin gửi lời cảm ơn đến quý Thầy/Cô tại Học viện Công nghệ Bưu chính Viễn thông đã hết lòng truyền đạt kiến thức trong thời gian học tập tại Học viện
Cuối cùng, tôi xin cảm ơn đến gia đình, bạn bè và đồng nghiệp, những người luôn cổ vũ tinh thần và tạo điều kiện thuận lợi để tôi hoàn thành luận văn này
Tp Hồ Chí Minh, ngày 31 tháng 5 năm 2017
Học viên thực hiện luận văn
Châu Quang Vũ
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
DANH MỤC CÁC BẢNG vi
MỞ ĐẦU 1
Chương 1 - TỔNG QUAN 3
1.1 Tổng quan về cảm biến Kinect 3
1.1.1 Giới thiệu 3
1.1.2 Ứng dụng của camera Kinect 3
1.1.3 Các bộ phận theo dõi của Kinect 4
1.1.4 Các vấn đề khi thu nhận tín hiệu từ kinect 5
1.2 Giới thiệu về học máy 5
1.2.1 Phân loại học máy 6
1.3 Mạng Nơ ron 9
1.3.1 Mạng nơ ron sinh học 9
1.3.2 Mạng nơ ron nhân tạo 10
1.4 Ngôn ngữ cử chỉ (ngôn ngữ ký hiệu) 16
1.4.1 Đặc điểm của Ngôn ngữ ký hiệu 16
1.4.2 Ngôn ngữ ký hiệu và cuộc sống 17
1.4.3 Ngôn ngữ ký hiệu tại Việt Nam 17
1.5 Kết luận chương 18
Chương 2 - NỘI DUNG NGHIÊN CỨU 19
2.1 Trạng thái bàn tay 19
2.1.1 Nhận dạng các ngón tay 19
2.2 Hướng di chuyển của các bộ phận 22
2.3 Hướng của cánh tay về các bộ phận 22
2.4 Xử lý khuôn mặt 23
2.5 Hướng của bàn tay 23
Trang 62.6 Bắt đầu và kết thúc thao tác 24
2.7 Nhiễu tín hiệu 24
2.8 Kết luận chương 26
Chương 3 - XÂY DỰNG HỆ THỐNG 27
3.1 Xác định các vector 27
3.2 Tăng cường giá trị vector 31
3.2.1 Tăng cường số chiều 31
3.2.2 Lan truyền 32
3.2.3 Xây dựng Mạng Nơ ron nhân tạo 34
3.2.4 Underfitting 37
3.3 Kết luận chương 37
Chương 4 - THỰC NGHIỆM HỆ THỐNG 38
4.1 Học và dịch thao tác 38
4.2 Xác định các ngưỡng 39
4.3 Tỉ lệ chính xác 39
4.4 So sánh với các công trình khác 40
4.4.1 Công trình của Mustafa 40
4.4.2 Công trình của P.N Khang, H.N Minh, V.T Thức và P.T Phi 41
4.4.3 So sánh 41
4.5 Kết luận chương 42
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 43
TÀI LIỆU THAM KHẢO 45
Trang 7DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ CÁI VIẾT TẮT
xanh dương có chiều sâu
Trang 8DANH MỤC CÁC BẢNG
Bảng 1.1: Các bộ phận theo dõi được trên Kinect 4
Bảng 2.1: Các hình huống theo dõi bàn tay và ngón tay của kinect 19
Bảng 3.1: Vị trí của ngón tay đỉnh bàn tay trái đến các bộ phận trên mặt 29
Bảng 3.2: Các giá trị ghi nhận trạng thái bàn tay 29
Bảng 3.3: Hướng bàn tay về các bộ phận 30
Bảng 3.4: Các vị trí ngừng của bàn tay trái giai đoạn 1 31
Bảng 3.5: Các chiều được lan truyền 33
Bảng 4.1: Ngưỡng dao động của các bộ phận 39
Trang 9DANH MỤC CÁC HÌNH
Hình 1.1: Camera Kinect 3
Hình 1.2: Các bộ phận có thể theo dõi được bằng Kinect 4
Hình 1.3: Mô hình nơ ron sinh học 9
Hình 1.4: Ví dụ một ANN với 1 tầng ẩn 13
Hình 2.1: Viền bàn tay 20
Hình 2.2: Sơ đồ luồng xử lý các trạng thái của ngón tay 21
Hình 2.3: Nhiễu tín hiệu 25
Hình 3.1: 26 chữ cái 27
Hình 3.2: Hàm tổng đối với 1 và nhiều nơ ron trong cùng 1 layer 35
Hình 3.3: Hàm chuyển đổi 36
Hình 4.1: Giao diện chương trình 38
Hình 4.2: Giao diện đoán các thao tác 39
Hình 4.3: Kiểm tra trên bộ dữ liệu test 40
Hình 4.4: Kết quả thực hiện của Mustafa 41
Hình 4.5: Kết quả thực hiện của P.N Khang 41
Hình 5.1: Leap motion và khả năng theo dõi bàn tay 44
Trang 10MỞ ĐẦU
Người khuyết tật hiện đang gặp phải rất nhiều khó khăn Họ thuộc số những người nghèo nhất và bị phân biệt đối xử nhiều nhất trong xã hội “Kinh nghiệm cho thấy khi Người khuyết tật được quyền tham gia và giữ vai trò dẫn dắt trong tiến trình phát triển, cả cộng đồng sẽ cùng phát triển Những đóng góp của họ tạo ra cơ hội cho mọi người, cả những Người khuyết tật và Người không khuyết tật Thông điệp trong Mục tiêu phát triển thiên niên kỷ 2009 nêu rất rõ: Mục tiêu trọng tâm của chúng ta là giúp Người khuyết tật hòa nhập vào cộng đồng và mục tiêu này là một yếu tố quan trọng để chúng ta đạt được Mục tiêu phát triển thiên niên kỷ như định sẵn” (Thông điệp trong Ngày quốc tế Người khuyết tật, ngày 03 tháng 12 năm 2009)
Theo số liệu của Tổng cục Thống kê, tại thời điểm năm 2009, Việt Nam có hơn 2.5 triệu người khiếm thính (điếc hoặc nghe kém) [15] Việc hòa nhập của những người này vào xã hội còn gặp nhiều khó khăn do các vấn đề về giao tiếp Hiện tại, ngoại trừ các biện pháp hỗ trợ hòa nhập như ngôn ngữ cử chỉ, các người gõ văn bản (captionist), đọc khẩu hình miệng thì gần như không có biện pháp nào có thể hỗ trợ được cho người khiếm thính có thể giao tiếp với xã hội
Trẻ khiếm thính mất từ 7 - 10 năm cho chương trình tiểu học, một số ít theo được tới cấp hai rồi cũng ra trường Khi đó, độ tuổi trung bình của họ đã là 25 Bên cạnh đó, vẫn có một số em không được đi học, hoàn toàn mù chữ và không biết cả ngôn ngữ ký hiệu Trong khi, người nghe bình thường có rất nhiều cơ hội học tập từ giáo dục chính quy, bổ túc, giáo dục thường xuyên cho tới đào tạo từ xa… thì người khiếm thính chỉ có trường chuyên biệt cho họ và chỉ có số ít có cơ hội học hòa nhập Sau khi rời trường chuyên biệt, các em khiếm thính bước vào đời với hành trang bằng
ba con số 0: Không thể giao tiếp, không chuyên môn, không có thông dịch ngôn ngữ
ký hiệu (NNKH), các em khó tìm việc làm hoặc công việc không ổn định Nghề phù hợp với người khiếm thính là các công việc lao động chân tay nặng nhọc Trường hợp
Lê Trần Khả Ái, một bạn trẻ điếc bẩm sinh có thể bước vào giảng đường đại học là một trường hợp hiếm hoi của cộng đồng người khiếm thính, nó là một tín hiệu vui cho cộng đồng khi đã có người thành công vượt lên số phận nhưng cũng là một minh
Trang 11chứng rằng người khiếm thính vẫn chưa được hỗ trợ tốt để họ có thể vững bước vào
xã hội
“Người khiếm thính sao khó hiểu quá”, câu nói mà theo cô Dương Phương Hạnh, Giám đốc CED, thường nghe về những con người bất hạnh đó Chính vì thế, rất cần thiết có một hệ thống chuyển đổi để một người khiếm thính có thể giao tiếp với xã hội, tạo cơ hội lớn hơn để xã hội có thêm cơ hội để có thêm nhiều trường hợp người khuyết tật có thể hòa nhập vào cuộc sống Hệ thống chuyển đổi ngôn ngữ cử chỉ sang văn bản bước đầu sẽ có thể giải quyết một phần vấn đề khi có thể chuyển đổi từng bộ cử chỉ sang từ ngữ tương ứng
Nội dung của luận văn được trình bày theo bố cục sau:
Chương 1: Giới thiệu tổng quan về cảm biến Kinect, học máy, đặc biệt là Mạng
nơ ron nhân tạo và ngôn ngữ dấu hiệu (ngôn ngữ cử chỉ)
Chương 2: Trình bày các kỹ thuật xử lý tín hiệu thu nhận được từ Kinect, chuyến hóa vào Mạng nơ ron nhân tạo
Chương 3: Trình bày cách thức xây dựng hệ thống
Chương 4: Thực nghiệm hệ thống và so sánh với các công trình khác
Trang 12Hình 1.1: Camera Kinect
Kinect có cấu tạo gồm có hệ thống cảm biến chiều sâu hoạt động trên nền tảng chiếu các tia hồng ngoại đến các đối tượng và thu về dữ liệu phản chiếu, từ đó có thể
vẽ lên được bản đồ chiều sâu của môi trường xung quanh
Bên cạnh đó, Kinect còn có 1 camera RGB-D, có khả năng xây dựng lên hình ảnh thực tế của môi trường kết hợp với chiều sâu, đảm bảo rằng đây vừa là 1 cảm biến vừa là một camera hoàn chỉnh Hơn nữa, Kinect còn hỗ trợ thêm mirco và máy
đo gia tốc để có thể hỗ trợ việc theo dõi các chuyển động một cách tốt nhất
1.1.2 Ứng dụng của camera Kinect
Kinect được sử dụng nhiều trong ngành công nghiệp game, nó được phát triển chính cho nền tảng Xbox của Microsoft và các game trên Windows Tuy nhiên, với
sự sáng tạo của giới công nghệ, Kinect đã được phát triển để làm các thiết bị điều
Trang 13khiển máy tính bằng cử chỉ, xác định khoảng cách giữa các vật thể, chuyển đổi ngôn ngữ cử chỉ sang văn bản [1], [4] và nhiều ứng dụng khác
1.1.3 Các bộ phận theo dõi của Kinect
Kinect có thể theo dõi được cùng lúc 06 cơ thể với 25 bộ phận khác nhau cho mỗi cơ thể
Hình 1.2: Các bộ phận có thể theo dõi được bằng Kinect Bảng 1.1: Các bộ phận theo dõi được trên Kinect
TT Tên bộ phận
(Tiếng Anh)
Tên bộ phận (Tiếng Việt)
Trang 149 HandTipLeft Ngón đỉnh tay trái
1.1.4 Các vấn đề khi thu nhận tín hiệu từ kinect
Do mục đích ban đầu của Microsoft khi phát triển Kinect cho hệ thống chơi game Xbox mà các cử chỉ mặc định Kinect có thể theo dõi được vẫn còn hạn chế so với các yêu cầu để phát triển hệ thống Trên nền tảng SDK v2.0 của Microsoft, ta có thể thu nhận được vị trí của các đối tượng lớn như đầu, cánh tay, bàn tay, chân…, tuy nhiên, các ngón tay vẫn là một vấn đề mà bộ công cụ này chưa hỗ trợ Bên cạnh đó, còn có các nhiễu tín hiệu xảy ra do các vấn đề về phần cứng
1.2 Giới thiệu về học máy
Theo Athur Samuel (1959): Học máy là lĩnh vực nghiên cứu về khả năng học của máy tính mà không cần phải lập trình tường minh ngay từ đầu
Học máy, có tài liệu gọi là máy học, (tiếng Anh: machine learning - ML) là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc phát triển các kĩ thuật cho phép các máy tính có thể “học” Cụ thể hơn, học máy là một phương pháp để tạo ra các chương trình máy tính bằng việc phân tích các tập dữ liệu Học máy có liên quan lớn đến thống kê, vì cả hai lĩnh vực đều nghiên cứu việc phân tích dữ liệu, nhưng khác với thống kê, học máy tập trung vào sự phức tạp của các giải thuật trong việc thực thi
Trang 15tính toán, nó phải có khả năng tổng quát hóa những gì đã học Một mô hình ML không
có khả năng tổng quát hóa giống như một đứa trẻ học vẹt, chỉ có thể trả lời các câu hỏi mà nó đã biết trước đáp án
Học máy có tính ứng dụng rất cao bao gồm máy truy tìm dữ liệu, chẩn đoán y khoa, phát hiện thẻ tín dụng giả, phân tích thị trường chứng khoán, phân loại các chuỗi DNA, nhận dạng tiếng nói và chữ viết, dịch tự động, chơi trò chơi và cử động rô-bốt (robot locomotion)
1.2.1 Phân loại học máy
Học máy gồm có các dạng sau đây:
- Học có giám sát (supervised learning);
- Học không có giám sát (unsupervised learning);
- Học bán giám sát (semi-supervised learning);
- Học tăng cường (reinforcement learning)
1.2.1.1 Học có giám sát
Học có giám sát là học với tập dữ liệu huấn luyện ban đầu hoàn toàn được gán nhãn từ trước Học có giám sát là phương pháp học sử dụng cho lớp bài toán phân lớp, phân loại (Classification) [4] Để thực hiện phân lớp, trước tiên phải chuẩn bị một tập dữ liệu huấn luyện (trainning data set - TDs), để có tập dữ liệu huấn luyện phải thực hiện gán nhãn cho dữ liệu ban đầu, đây được gọi là quá trình thu thập tập huấn luyện
Lựa chọn một thuật toán phân lớp (ví dụ SVM) xây dựng bộ phân lớp để học tập dữ liệu huấn luyện Hay nói cách khác, dùng tập dữ liệu huấn luyện để huấn luyện
bộ phân lớp Thuật ngữ học có giám sát được hiểu là học tập dữ liệu đã được gán nhãn trước (các dữ liệu kèm theo nhãn tương ứng này coi như đã được giám sát bởi người thực hiện gán nhãn)
Sử dụng một tập dữ liệu kiểm tra (test data set - TDs) đã được gán nhãn trước,
để kiểm tra tính đúng đắn của bộ phân lớp Sau đó, có thể dùng bộ phân lớp để phân lớp cho các dữ liệu mới
Trang 16Một số thuật tốn thường được lựa chọn khi xây dựng bộ phân lớp gồm cĩ: máy vector hỗ trợ (Support Vector Machine – SVM) [2], [3]; k-láng giềng gần nhất (K-Nearest Neighbours – KNN); tiếp cận xác suất thống kê (Nạve Bayes – NB); Cây quyết định (Decision Tree – DT); sử dụng mạng nơron (Afiticial Nơ ron Network – Ann); dựa trên vector trọng tâm (Centroid–base vector); hay tuyến tính bình phương nhỏ nhất (Linear Least Square Fit – LLSF)
1.2.1.2 Học khơng giám sát
Học khơng giám sát là học với tập dữ liệu huấn luyện ban đầu hồn tồn chưa được gán nhãn Học khơng giám sát là phương pháp học sử dụng cho lớp bài tốn gom cụm, phân cụm (Clustering) Để thực hiện phân cụm, trước tiên cần một tập dữ liệu huấn luyện (training dataset) – là một tập các ví dụ học (training examples /instances) Trong đĩ, mỗi ví dụ học chỉ chứa thơng tin biểu diễn (ví dụ: một vector các giá trị thuộc tính), mà khơng cĩ bất kỳ thơng tin gì về nhãn lớp hoặc giá trị đầu
ra mong muốn (expected output)
Áp dụng một thuật tốn học khơng cĩ giám sát (ví dụ k-Means) để học hàm/mơ hình mục tiêu (trong trường hợp này là hàm phân cụm ứng với thuật tốn được chọn)
Sử dụng một phương pháp thử nghiệm (cĩ thể kết hợp với một tập dữ liệu cĩ gán nhãn) để đánh giá hiệu năng/chất lượng của hàm mục tiêu học được
Cĩ rất nhiều thuật tốn học khơng giám sát được ra đời và phát triển nhằm giải quyết bài tốn phân cụm phục vụ khai thác hiệu quả nguồn dữ liệu chưa gán nhãn nhiều và rất đa dạng Việc lựa chọn sử dụng thuật tốn nào tuỳ thuộc vào dữ liệu và mục đích của từng bài tốn Trong đĩ các thuật tốn thường được sử dụng như: k-means, HAC (Hierarchical Agglomerative Clustering), SOM (Self-Organizing Map), DBSCAN, FCM
1.2.1.3 Học bán giám sát
Trong thực tế, để cĩ được một tập dữ liệu cĩ chất lượng và đã được gán nhãn của một lĩnh vực, thường được thực hiện thủ cơng bằng tay bởi người cĩ nhiều kinh nghiệm về lĩnh vực đĩ Vì vậy, dữ liệu đã được gán nhãn thường ít và đắt Trong khi
Trang 17đó, dữ liệu chưa được gán nhãn lại rất nhiều và phong phú Phương pháp học bán giám sát (hay học nửa giám sát) được đặt ra để tận dụng cả hai nguồn dữ liệu này
Học bán giám sát là học với tập dữ liệu huấn luyện gồm cả dữ liệu đã được gán nhãn và dữ liệu chưa được gán nhãn Tuỳ vào từng mục đích cụ thể, học bán giám sát có thể được áp dụng cho bài toán phân lớp hoặc phân cụm Nội dung chính của học bán giám sát là hệ thống sử dụng một tập học (training set) gồm 2 phần: các ví
dụ học có nhãn, thường với số lượng (rất) ít, và các ví dụ học không có nhãn, thường với số lượng (rất) nhiều Thực tế cho thấy khi sử dụng kết hợp dữ liệu không có nhãn với một lượng nhất định dữ liệu có nhãn có thể tăng độ chính xác đáng kể
Một thuật toán học bán giám sát được sử dụng (ví dụ Self-training) sẽ học các
ví dụ có nhãn, sau đó tiến hành gán nhãn cho một số (có lựa chọn) các ví dụ không
có nhãn - một cách hợp lý, có đánh giá chất lượng công việc hay độ chính xác Tiếp theo, chọn các ví dụ vừa được gán nhãn có độ tin cậy cao (vượt trên một ngưỡng chọn trước) đưa vào kết hợp với tập dữ liệu có nhãn, tạo thành một tập dữ liệu huấn luyện mới Áp dụng một phương pháp kiểm thử (có thể kết hợp với một tập dữ liệu đã biết trước nhãn) để đánh giá hiệu năng/độ chính xác của mô hình
Một số thuật toán thường được sử dụng gồm có: thuật toán Cực đại kỳ vọng (EM - Expectation Maximization), SVM truyền dẫn (TSVM - Transductive Support Vector Machine), Self-training, Co-training và các phương pháp dựa trên đồ thị (graph-based)
Việc lựa chọn thuật toán nào dựa trên một số định hướng: nếu các lớp dữ liệu
có tính phân cụm cao thì nên dùng EM với mô hình hỗn hợp sinh; nếu đã sử dụng SVM thì mở rộng thành TSVM; khi khó nâng cấp mô hình học có giám sát đã có, thì nên dùng self-training; nếu các đặc trưng của dữ liệu phân chia tự nhiên thành hai phần riêng rẽ thì nên dùng Co-training; còn nếu hai mẫu dữ liệu có đặc trưng tương
tự nhau hướng tới một lớp thì sử dụng phương pháp dựa trên đồ thị
Trang 181.3 Mạng Nơ ron
1.3.1 Mạng nơ ron sinh học
Bộ não người chứa khoảng 1011 tế bào thần kinh (còn gọi là neural hay nơ ron)
và mỗi kết nối có 104 nơ ron nên con người có khả năng đưa ra những quyết định
phức tạp và nhanh chóng Mỗi tế bào thần kinh gồm 3 thành phần chính: soma,
dendrites và axon Trong đó:
Hình 1.3: Mô hình nơ ron sinh học
Các soma là thân của nơ ron
Các dendrites là các dây mảnh, dài, gắn liền với soma, chúng truyền dữ liệu (dưới dạng xung điện thế) đến cho soma xử lý Bên trong soma các dữ liệu đó được tổng hợp lại Có thể xem gần đúng sự tổng hợp ấy như là một phép lấy tổng tất cả các
dữ liệu mà nơ ron nhận được
Một loại dây dẫn tín hiệu khác cũng gắn với soma là các axon Khác với dendrites, axons có khả năng phát các xung điện thế, chúng là các dây dẫn tín hiệu từ
nơ ron đi các nơi khác Chỉ khi nào điện thế trong soma vượt quá một giá trị ngưỡng nào đó (threshold) thì axon mới phát một xung điện thế, còn nếu không thì nó ở trạng thái nghỉ
Axon nối với các dendrites của các nơ ron khác thông qua những khớp nối đặc biệt gọi là synapse Khi điện thế của synapse tăng lên do các xung phát ra từ axon thì synapse sẽ nhả ra một số chất hoá học (neurotransmitters); các chất này mở "cửa" trên dendrites để cho các ions truyền qua Chính dòng ions này làm thay đổi điện thế trên dendrites, tạo ra các xung dữ liệu lan truyền tới các nơ ron khác
Trang 191.3.2 Mạng nơ ron nhân tạo
Mạng nơ ron nhân tạo (ANN - Artificial Nơ ron Networks) [6] là sự mô phỏng lại một cách đơn giản nhất của nơ ron sinh học Mỗi một nơ ron nhân tạo được tạo ra
sẽ có nhiệm vụ tổng hợp các thông tin đầu vào và chuyển đổi thành thông tin một tín hiệu ở đầu ra
Mỗi nơ ron nhân tạo có thể có nhiều đầu vào nhưng chỉ có một đầu ra Mỗi đầu vào được gắn liền với một hệ số nhân bất kì nào đó gọi chung là trọng số (weight) Các trọng số có ý nghĩa hết sức quan trọng, được ví như mức liên kết tại các khớp nối trong nơ ron sinh học Trọng số có thể là các số dương hoặc âm, giống như các khớp nối kích thích và khớp nối ức chế trong các nơ ron sinh học
Mỗi nơ ron nhân tạo có một giá trị ngưỡng Chức năng đầu vào của mỗi nơ ron là tính tổng các tín hiệu đầu vào với các trọng số liên kết đồng thời kết hợp với giá trị ngưỡng để tạo ra một giá trị nhất định là tín hiệu đầu vào net input Sự kết hợp này được thực hiện bằng một tổng hay theo một số tài liệu gọi là hàm PSP (Post Synapic Potential function) - hàm thế sau khớp nối
Mỗi nơ ron nhân tạo cho ra một giá trị ở đầu ra, và giá trị đầu ra này phụ thuộc vào hàm truyền dẫn (transfer function) Hàm này sẽ nhận tín hiệu đầu vào net input sau đó tính toán và cho ra kết quả là đầu ra của nơ ron
Mạng nơ ron nhân tạo gồm hai thành phần Phần thứ nhất là các nút (đơn vị
xử lý, nơ ron) và phần thứ hai là các liên kết giữa chúng được gán một trọng số bất
kỳ đặc trưng thể hiên mật độ liên kết của mạng
Mạng nơ ron nhân tạo [6] là sự liên kết giữa các nơ ron nhân tạo với nhau Mỗi liên kết giữa các nơ ron đi kèm theo một trọng số nào đó mang một tính đặc trưng là tính kích thích hay ức chế giữa các nơ ron Các nơ ron còn được gọi là các nút (node) Các nút này được sắp xếp theo một thứ tự nhất định trong mạng và được chia thành
ba lớp Lớp đầu vào (input player), lớp đầu ra (output player) và lớp ẩn (hiden layer)
Chức năng của mạng được xác định bởi: cấu trúc mạng, quá trình xử lý bên trong của từng nơ ron, và mức độ liên kết giữa các nơ ron
Trang 20Mức độ liên kết giữa các nơ ron được xác định thông qua quá trình học của mạng (quá trình huấn luyện mạng) Có thể xem các trọng số là các phương tiện để lưu trữ thông tin dài hạn trong mạng nơ ron Nhiệm vụ của quá trình huấn luyện mạng
là cập nhật các trọng số khi có thông tin về các mẫu học
Một số định nghĩa về mạng nơ ron:
Mạng nơ ron là một hệ thống gồm nhiều phần tử xử lý hoạt động song song Chức năng của nó được xác định bởi cấu trúc liên kết giữa các phần tử xử lý, quá trình xử lý tại mỗi phần tử xử lý
Một mạng nơ ron là một bộ xử lý song song và đồ sộ, có xu hướng tự nhiên lưu trữ các thông tin, các tri thức và dựa trên kinh nghiệm đã tích lũy được để tạo ra được các tri thức mới Nó tương tự với bộ não ở hai khía cạnh:
- Tri thức có được thông qua quá trình học
- Các giá trị liên kết giữa các nơ ron được dùng như một phương tiện lưu trữ thông tin
Một mạng nơ ron, là một tập hợp các tế bào vật lý, được liên kết với nhau nhằm mục đích thu thập, lưu trữ và sử dụng tri thức, kinh nghiệm một cách tốt nhất
để có thể tạo ra được các tri thức mới tốt nhất
Một số chức năng của mạng nơ ron nhân tạo:
- Chức năng phân loại mẫu: Phân loại mẫu [7] là sự phân chia các mẫu ra thành các nhóm khác nhau, các nhóm này sẽ có chung một số đặc điểm nhất định nào
đó Mạng nơ ron có thể tự phân lại các mẫu đầu vào và tạo ra các mẫu đầu ra có phân loại Khi cho một mẫu đầu vào thì mạng nơ ron sẽ tạo ra được một mẫu đầu ra đúng với phân loại của chúng Ta có thể nói nơ ron là một bộ phân loại mẫu Điểm khác của mạng nơ ron với các bộ phân loại mẫu khác là khả năng tự học và tổng quát hóa
từ các mẫu đã có
- Học và tổng quát hóa:
o Học là việc mạng nơ ron thu thập được các thông tin, các mẫu, các tri thức ở đầu vào và các thông tin, các mẫu, các tri thức tương ứng ở đầu ra và mạng có thể học để phân loại được chúng cho thật là chính xác
Trang 21o Tổng quát hóa là mạng không chỉ nhận dạng chính xác được các mẫu của chung đã học, mà từ các mẫu đã học phải rút ra những đặc tính riêng của từng mẫu và tạo ra một tri thức mới từ đó mạng có thể tự nhận biết và phân loại được các mẫu mới mà chưa từng được học
Chức năng này của mạng cho thấy được tính “linh động” của mạng nơ ron nó
có thể giải quyết một số vấn đề tính toán hoặc suy luận khi thiếu thông tin, hoặc có rất ít thông tin hay thông tin không đầy đủ Quan trọng nhất là phải xây dựng được một mô hình mạng thật tốt và phải có một phương pháp học cho thật phù hợp với tình hình thực tế Không những vậy mạng nơ ron còn có khả năng được học để trở thành hàm liên tục bất kỳ có giá trị xấp xỉ
1.3.2.1 Kiến trúc mạng nơ ron
Kiến trúc mạng nơ ron nhân tạo được xác định bởi:
- Số lượng các tín hiệu đầu vào/ đầu ra;
- Số lượng tầng trong mạng;
- Số lượng các nơ ron trong mỗi tầng;
- Số lượng các trọng số (các liên kết) đối với mỗi nơ ron;
- Cách liên kết giữa các nơ ron (trong một tầng hoặc giữ các tầng) với nhau;
- Những nơ ron nhận các tín hiệu điều chỉnh lỗi
1.3.2.2 Các tầng của ANN
- Một tầng đầu vào (input layer): tiếp nhận các tín hiệu đầu vào
- Một tầng đầu ra (output layer): phát tín hiệu ra khi mạng cho ra kết quả
“đáp lại” tín hiệu nhận từ lớp đầu vào
- Tầng ẩn (hidden layer): đóng vai trò như bộ lọc “thông minh”
Trang 22Hình 1.4: Ví dụ một ANN với 1 tầng ẩn 1.3.2.3 Các dạng mạng nơ ron của một ANN
Mạng liên kết đầy đủ (fully connected): nếu mọi đầu ra từ một tầng liên kết với mọi nơ ron của tầng kế tiếp
Mạng lan truyền tiến (feedforward network): nếu không có bất kỳ đầu ra của một nút là đầu vào của một nút khác thuộc cùng tầng (hoặc thuộc một tầng phía trước)
Mạng phản hồi (feedback network): nếu có đầu ra của một nút liên kết ngược lại làm các đầu vào của một nút thuộc cùng tầng (hoặc thuộc một tầng phía trước)
Mạng hồi quy (recurrent network): nếu các mạng phản hồi có các vòng lặp kín (closed loops)
1.3.2.4 Các phương pháp học trong ANN
Mạng nơ ron nhân tạo được mô phỏng theo việc xử lý thông tin của bộ não người, do vậy đặc trưng cơ bản của mạng là có khả năng học, khả năng tái tạo các hình ảnh và dữ liệu khi đã học Trong trạng thái học thông tin được lan truyền theo hai chiều nhiều lần để làm thay đổi các trọng số nhiều lần để đạt được trọng số tốt nhất có thể cho ra các mẫu dữ liệu tương đương đã học Có 3 kiểu học chính, mỗi kiểu học tương ứng với một nhiệm vụ học mang tính chất trừu tượng Đó là học có giám sát (có mẫu), học không giám sát và học tăng cường Thông thường các loại kiến trúc mạng nào cũng có thể dùng được cho các nhiệm vụ
Input
Hidden output
Output
Trang 231.3.2.5 Lan truyền ngược
Backpropagation là một từ viết tắt cho "backward propagation of errors" tức
là "truyền ngược của sai số", là một phương pháp phổ biến để huấn luyện các mạng thần kinh nhân tạo được sử dụng kết hợp với một phương pháp tối ưu hóa như gradient descent [5] Phương pháp này tính toán gradient của hàm tổn thất với tất cả các trọng
số có liên quan trong mạng nơ ron đó Gradient này được đưa vào phương pháp tối
ưu hóa, sử dụng nó để cập nhật các trọng số, để cực tiểu hóa hàm tổn thất
Truyền ngược yêu cầu một đầu ra mong muốn, đã biết cho mỗi giá trị đầu vào
để tính toán gradient hàm tổn thất Do đó, nó thường được xem là một phương pháp học có giám sát, mặc dù nó cũng được sử dụng trong một số mạng không có giám sát như autoencoders Nó là một tổng quát hóa của quy tắc delta cho các mạng nuôi tiến
đa tầng, có thể thực hiện bằng cách sử dụng quy tắc dây chuyền để tính toán lặp đi lặp lại các gradient cho mỗi lớp Truyền ngược yêu cầu các hàm kích hoạt được sử dụng bởi các nơ-ron nhân tạo (hay "nút") khả vi Thuật toán học truyền ngược có thể được chia thành hai giai đoạn: lan truyền, cập nhật trọng số
- Giai đoạn 1: Lan truyền:
Mỗi lan truyền bao gồm các bước sau đây:
o Bước 1: Lan truyền thuận của một đầu vào của mô hình huấn luyện thông qua mạng nơ-ron để tạo ra các kích hoạt đầu ra của lan truyền này
o Bước 2: Truyền ngược của các kích hoạt đầu ra của lan truyền thông qua mạng lưới nơ-ron sử dụng mục tiêu huấn luyện mô hình để tạo ra các delta (sai lệch giữa giá trị mục tiêu và giá trị đầu ra thực tế) và tất cả đầu ra và các nơ-ron ẩn
- Giai đoạn 2: Cập nhật trọng số:
Đối với mỗi khớp thần kinh-trọng số thực hiện theo các bước sau:
o Nhân các delta đầu ra và kích hoạt đầu vào để có được gradient của trọng
số của nó
o Trừ một tỷ lệ (tỷ lệ phần trăm) từ gradient của trọng số
Tỷ lệ này (tỷ lệ phần trăm) ảnh hưởng đến tốc độ và chất lượng học; nó được
gọi là tốc độ học Tỷ lệ này càng lớn, thì tốc độ huấn luyện nơron càng nhanh; tỷ lệ
Trang 24này càng thấp, thì việc huấn luyện càng chính xác Dấu của gradient của một trọng số chỉ ra chỗ mà sai số đang gia tăng, đây là lý do tại sao trọng số phải được cập nhật theo hướng ngược lại
Lặp lại giai đoạn 1 và 2 cho đến khi đáp ứng của mạng nơ-ron chấp nhận được Thuật toán:
Khởi tạo các trọng số của mạng (thường là các giá trị ngẫu nhiên nhỏ)
Do
Foreach ví dụ huấn luyện được đặt tên là ex
Dự đoán = nơ ron net output (mạng, ex) // forward pass Actual = teacher output(ex)
Tính sai số (dự đoán – thực tế) tại các đơn vị đầu ra Tính ∆Wh cho tất cả các trọng số từ lớp ẩn cho tới lớp đầu ra //backward pass
Tính ∆Wi cho tất cả cá trọng số từ lớp đầu vào cho tới lớp ẩn //backward pass continued
Cập nhật tất cả các trọng số của mạng // từ lớp đầu vào không được chỉnh sửa bởi ước lượng sai số
Until tất cả các ví dụ được phân loại chính xác hoặc một tiêu chí dừng được
thỏa mãn Return network
Các dòng có gắn nhãn "backward pass" có thể được thực hiện bằng cách sử dụng thuật toán truyền ngược, thuật toán này sẽ tính toán gradient của sai số của mạng
đó liên quan đến các trọng số có thể chỉnh sửa của mạng đó Thuật ngữ "truyền ngược" thường được sử dụng theo nghĩa tổng quát hơn, đó là để nói đến toàn bộ thủ tục bao gồm cả việc tính toán gradient và sử dụng của nó trong gradient descent ngẫu nhiên, nhưng truyền ngược thích hợp có thể được sử dụng với bất kỳ bộ tối ưu hóa dựa trên gradient nào, chẳng hạn như L-BFGS hoặc Newton cắt ngắn
Các mạng truyền ngược cần các perceptron nhiều lớp (thường là với một đầu vào, nhiều lớp ẩn, và một lớp ra) Để cho lớp ẩn phục vụ cho bất kỳ hàm hữu ích nào,
Trang 25nhiều mạng đa lớp phải có có các hàm kích hoạt phi tuyến cho các lớp trùng nhau: một mạng đa lớp chỉ sử dụng các hàm kích hoạt tuyến tính tương đương với một số mạng tuyến tính, một lớp Các hàm kích hoạt phi tuyến được sử dụng phổ biến bao gồm hàm rectifier, hàm Lôgit, hàm softmax (hàm mũ chuẩn hóa) và hàm Gauss
Thuật toán truyền ngược cho việc tính toán một gradient đã được tái phát hiện một số lần, và là một trường hợp đặc biệt của một kỹ thuật tổng quát được gọi là phép lấy vi phân tự động ở chế độ tích lũy ngược
1.4 Ngôn ngữ cử chỉ (ngôn ngữ ký hiệu)
Ngôn ngữ ký hiệu [13], [14] là ngôn ngữ dành cho người điếc và người khiếm thính Năm 1755, Charles-Michel de l'Épée (một linh mục người Pháp) đã gặp và dạy cho 2 cô bé sinh đôi bị điếc Từ việc dạy này, Ông đã nảy sinh ý tưởng thành lập trường dạy cho những người điếc, đây là trường công đầu tiên dành cho người điếc Ông đã hệ thống lại những dấu hiệu mà người điếc ở Pháp đã dùng và sử dụng những dấu hiệu này theo ngữ pháp của Tiếng Pháp để dạy cho học sinh điếc
1.4.1 Đặc điểm của Ngôn ngữ ký hiệu
Theo Wikipedia, cũng như ngôn ngữ nói, ngôn ngữ ký hiệu của từng quốc gia, thậm chí là từng khu vực trong một quốc gia rất khác nhau Điều đó là do mỗi quốc gia, khu vực có lịch sử, văn hóa, tập quán khác nhau nên ký hiệu để biểu thị sự vật hiện tượng cũng khác nhau Chẳng hạn, cùng chỉ tính từ màu hồng thì ở Hà Nội người
ta xoa vào má (má hồng), còn tại Thành phố Hồ Chí Minh lại chỉ vào môi (môi hồng) Điều tương tự cũng diễn ra khi có sự khác biệt lớn hơn trên tầm quốc gia, dẫn tới sự khác biệt của hệ thống từ vựng và ngữ pháp ngôn ngữ ký hiệu giữa các nước
Tuy nhiên, ký hiệu tất cả mọi nơi trên thế giới đều có những điểm tương đồng nhất định Ví dụ: ký hiệu ‘uống nước’ thì nước nào cũng làm như nhau là giả bộ cầm cốc uống nước, ký hiệu ‘lái ô tô’ thì giả bộ cầm vô lăng ô tô quay quay, v.v Mỗi người (dù bình thường hay câm điếc) đều có sẵn 30% kiến thức ngôn ngữ ký hiệu
Do ngôn ngữ ký hiệu phát triển hơn trong cộng đồng người khiếm thính, nên những người thuộc cộng đồng này của hai nước khác nhau có thể giao tiếp với nhau tốt hơn hai người bình thường nhưng mà không biết ngoại ngữ
Trang 26Hai đặc điểm quan trọng nhất của NNKH là tính giản lược và có điểm nhấn
Ví dụ: Tiếng Việt: Anh có khỏe không ạ?
NNKH: "Khỏe không"?
Do tính giản lược và có điểm nhấn nên cấu trúc ngữ pháp ngôn ngữ ký hiệu nhiều khi không thống nhất, cùng một câu có thể sắp xếp nhiều cách khác nhau (thường thì điểm nhấn được đưa lên đầu câu để gây hiệu quả chú ý)
Ví dụ: Tiếng Việt: Hôm qua, tôi gặp lại người bạn thân ở công viên (Trong câu này, điểm nhấn là GẶP, và BẠN THÂN)
NNKH: Bạn thân Gặp ở công viên hôm qua
1.4.2 Ngôn ngữ ký hiệu và cuộc sống
Thực ra, NNKH chính là cuộc sống, vì nó bắt nguồn từ cuộc sống Dù có hay không nhận thức ra, nhưng chúng ta vẫn đã và đang sử dụng NNKH rất nhiều trong cuộc sống hàng ngày Khoa học đã chứng minh chúng ta truyền tải ngôn ngữ 70% thông qua các biện pháp không lời, tức là cử chỉ, điệu bộ, nét mặt… Một biện pháp đơn giản để nhận ra tầm quan trọng của ngôn ngữ không lời là bạn hãy thử nói chuyện
mà nhắm mắt và hoàn toàn không cử động thân thể Chỉ 30 phút thôi, bạn sẽ ngạc nhiên nhận thấy hiệu quả câu chuyện rất thấp Chúng ta hoàn toàn mất phương hướng
và khả năng phán đoán nếu không có các cử chỉ, điệu bộ, nét mắt của người đối thoại
"hướng dẫn", cũng như nếu không dùng tay chân thì hiệu quả truyền đạt củng giảm hẳn
NNKH tràn ngập trong cuộc sống của chúng ta, chúng ta có thể không nhận thức, nhưng nó vẫn tồn tại, phát triển và giúp cho cuộc sống tiện lợi, thoải mái hơn Nói cách khác, chính những người bình thường "phát minh" ra NNKH, người câm điếc làm một việc là mô phỏng và hệ thống hóa tất cả lại thành một thứ ngôn ngữ của riêng họ
1.4.3 Ngôn ngữ ký hiệu tại Việt Nam
Ngôn ngữ ký hiệu ở Việt Nam đã được hình thành từ rất lâu Nhưng do trước đây chưa có nhà khoa học nào tìm hiểu, nghiên cứu về nó nên người Việt Nam không nghĩ và đã không xem những dấu hiệu mà người điếc sử dụng là ngôn ngữ Họ cho
Trang 27rằng đó chỉ là những điệu bộ khua tay của người điếc để cố gắng giao tiếp do thiếu ngôn ngữ Mãi đến năm 1996, một tiến sĩ ngôn ngữ học người Mỹ James C Woodward, người đã từng làm việc với William Stokoe tại Trường Đại học Gallaudet của Mỹ, đã sang Việt Nam thực hiện nghiên cứu về ngôn ngữ ký hiệu của cộng đồng người điếc ở Việt Nam Theo nghiên cứu của ông, ở Việt Nam hiện có ít nhất 3 ngôn ngữ ký hiệu phổ biến (được cộng đồng người điếc sử dụng nhiều nhất) Ông đã dùng tên của những địa danh này để đặt tên cho 3 ngôn ngữ ký hiệu đó: Ngôn ngữ ký hiệu
Hà Nội, ngôn ngữ ký hiệu Hải Phòng, và ngôn ngữ ký hiệu Thành phố Hồ Chí Minh Sau đó, đã có thêm những dự án ở Việt Nam: dự án Giáo dục hòa nhập cho trẻ điếc 1998-2001 (Viện Khoa học Giáo dục- tổ chức Pearl S Buck, Int), dự án Giáo dục trung học và đại học cho người Điếc Việt Nam từ năm 2000 cho đến hiện tại (Sở GD-
ĐT Đồng Nai và GS.TS James C Woodward) để thực hiện việc thu thập lại những dấu hiệu của người điếc Việt Nam và tìm hiểu về ngữ pháp của ngôn ngữ này Công việc này đã kích thích thêm nhiều nhà khoa học ở Việt Nam cũng bắt đầu tìm hiểu về ngữ pháp của ngôn ngữ ký hiệu Việt Nam
Bên cạnh đó, chương này cũng trình bày khái quát về ngôn ngữ cử chỉ, sự ra đời của ngôn ngữ cử chỉ và sự liên quan mật thiết của ngôn ngữ cử chỉ với cuộc sống hàng ngày