Một phương pháp nhận dạng khuôn mặt dựa trên mạng nơron tích chập
Tóm tắt: Các nghiên cứu về phương pháp xử lý ảnh và nhận dạng khuôn mặt được
quan tâm của nhiều tác giả, trong đó, các mô hình dựa trên công nghệ mạng nơron học sâu
(hay còn gọi là mạng nơron tích chập, CNN) được đề cập trong nhiều bài báo và cho kết quả
tốt. Hơn nữa, mô hình này đã đem lại những ứng dụng thành công trong thực tiễn như trong
ứng dụng phát hiện và nhận dạng khuôn mặt trên ảnh của người dùng Facebook với công
nghệ DeepFace. Bài báo này đề xuất một thiết kế mô hình mạng nơron CNN với độ phức tạp
vừa phải nhưng vẫn đảm bảo chất lượng và hiệu quả phân lớp. Các thử nghiệm đánh giá mô
hình trên hai tập dữ liệu khá thông dụng là AT&T và Yale đã cho những kết quả khả quan và
tiềm năng ứng dụng
Bạn đang xem tài liệu "Một phương pháp nhận dạng khuôn mặt dựa trên mạng nơron tích chập", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Một phương pháp nhận dạng khuôn mặt dựa trên mạng nơron tích chập
1Nghiên cứu trao đổi ● Research-Exchange of opinion MỘT PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT DỰA TRÊN MẠNG NƠRON TÍCH CHẬP A FACE RECOGNITION METHOD USING CONVOLUTIONAL NEURAL NETWORK Dương Thăng Long*, Bùi Thế Hùng† Ngày tòa soạn nhận được bài báo: 4/02/2019 Ngày nhận kết quả phản biện đánh giá: 5/8/2019 Ngày bài báo được duyệt đăng: 26/8/2019 Tóm tắt: Các nghiên cứu về phương pháp xử lý ảnh và nhận dạng khuôn mặt được quan tâm của nhiều tác giả, trong đó, các mô hình dựa trên công nghệ mạng nơron học sâu (hay còn gọi là mạng nơron tích chập, CNN) được đề cập trong nhiều bài báo và cho kết quả tốt. Hơn nữa, mô hình này đã đem lại những ứng dụng thành công trong thực tiễn như trong ứng dụng phát hiện và nhận dạng khuôn mặt trên ảnh của người dùng Facebook với công nghệ DeepFace. Bài báo này đề xuất một thiết kế mô hình mạng nơron CNN với độ phức tạp vừa phải nhưng vẫn đảm bảo chất lượng và hiệu quả phân lớp. Các thử nghiệm đánh giá mô hình trên hai tập dữ liệu khá thông dụng là AT&T và Yale đã cho những kết quả khả quan và tiềm năng ứng dụng. Từ khóa: Mạng nơron tích chập, nhận dạng khuôn mặt, kết quả, tiềm năng ứng dụng. Abstract: Studies on image processing and facial recognition methods are of interest to many authors, in which models based on deep neural network technology (also known as convolutional neural networks, CNN) are mentioned in many articles with good results. Moreover, this model has brought successful practical applications such as applications in detecting and identifying faces on Facebook users’ photos with DeepFace technology. This paper proposes a design of CNN neural network model with moderate complexity but still ensures the quality and efficiency of classification. Tests of model evaluation on two popular data sets, AT&T and Yale, have given positive results and potential applications. Keywords: Convolutional neural networks, face recognition, results, potential applications. * Trường Đại học Mở Hà Nội † Viện Khoa học công nghệ Quân sự Tạp chí Khoa học - Viện Đại học Mở Hà Nội 58 (08/2019) 1-20 2 Nghiên cứu trao đổi ● Research-Exchange of opinion 1. Đặt vấn đề Khoa học công nghệ phát triển đã thúc đẩy và ứng dụng vào các lĩnh vực thực tiễn rất sâu rộng, đặc biệt là các công nghệ nhận dạng dựa trên hình ảnh và các phương pháp sinh trắc học trong ứng dụng định danh cá nhân người dùng ở các hệ thống. Theo [Gui17], việc sử dụng sinh trắc học để định danh là một phương pháp tự động nhận biết định danh cá nhân với cơ sở của nó là các đặc điểm sinh học hoặc hành vi. Công nghệ sinh trắc học sẽ không cần đến khóa, thẻ, mật khẩu hoặc bất kỳ thiết bị nào khác của người dùng. Đây là một quá trình tương tự như quá trình mà con người thường nhận dạng người khác về các khía cạnh thể chất, giọng nói của họ hoặc cách họ đi bộ, v.v. Trong khi một số phương pháp sinh trắc học yêu cầu hành động từ người dùng, phương pháp nhận dạng khuôn mặt có thể được sử dụng một cách thụ động, tức là hệ thống sẽ tự động nhận dạng và xác định danh tính dựa trên khuôn mặt được chụp tự động từ thiết bị ghi hình. Thị giác máy tính (computer vision) là một lĩnh vực nghiên cứu rất sôi động hiện nay, với các phương pháp dựa trên năng lực tính toán ngày càng mạnh mẽ của hệ thống máy tính với các bài toán ứng dụng thực tiễn có giá trị to lớn. Phương pháp sinh trắc học để nhận dạng các yếu tố của con người được nghiên cứu mạnh mẽ và ứng dụng vào hệ thống nhận dạng trên cơ sở các đặc điểm thể chất hoặc hành vi của mỗi người. Trong đó, nhận dạng khuôn mặt đã là một lĩnh vực nghiên cứu sôi động trong lĩnh vực nhận dạng mẫu và thị giác máy tính. Khuôn mặt của mỗi người trong thế giới này có sự độc đáo và nét đặc trưng riêng biệt. Đó có thể coi là bản sắc riêng của mỗi người. Nhận dạng khuôn mặt do đó có tính duy nhất nên có thể được sử dụng để xác thực danh tính và kiểm soát con người trong ứng dụng khác nhau [Ary18]. Nhận dạng khuôn mặt là việc sử dụng phương pháp sinh trắc học để thiết lập một định danh cá nhân dựa trên các đặc điểm khuôn mặt của mỗi người. Quá trình nhận dạng khuôn mặt hoạt động bằng cách sử dụng một ứng dụng và thiết bị máy tính chụp ảnh một khuôn mặt cá nhân (cũng có thể được lấy từ khung hình từ một video) và so sánh nó với hình ảnh trong cơ sở dữ liệu được lưu trữ trước đó (Hình 1.1). Trường hợp ảnh đầu vào (image input) gồm cả không gian có chứa khuôn mặt người muốn định danh thì chúng ta cần phát hiện vùng ảnh chỉ chứa khuôn mặt của người đó (face detection). Đây cũng là một bài toán được nghiên cứu sôi động [Def18]. Ảnh khuôn mặt có thể được tiền xử lý (cân chỉnh chẳng hạn - face alignment) nhằm đảm bảo chất lượng cho nhận dạng. Khuôn mặt của mỗi người được trích chọn và biểu diễn thông qua một véc-tơ đặc trưng (feature extraction) nhằm mô tả những đặc điểm riêng biệt của khuôn mặt của người đó và để so sánh với các khuôn mặt khác. Việc so sánh khuôn mặt đầu vào với cơ sở dữ liệu các khuôn mặt đã được lưu trữ (existing database) trở thành việc tính toán mức độ gần nhau giữa các véc-tơ đặc trưng (feature matching), từ đó tìm ra khuôn mặt giống nhất trong cơ sở dữ liệu. Nếu mức độ gần nhất của khuôn mặt tìm được dưới một ngưỡng cho phép thì định danh người đó. Rất khó để có một hệ thống sinh trắc học hoàn hảo phù hợp với tất cả các nhu cầu ứng dụng. Tất cả các hệ thống được biết đều có những ưu điểm và nhược điểm 3Nghiên cứu trao đổi ● Research-Exchange of opinion riêng của chúng. Một vài nghiên cứu đã tập trung vào việc cải thiện bảo mật trong học tập trực tuyến bằng cách sử dụng các hệ thống sinh trắc học, nhưng một số hạn chế trong số đó đã giải quyết khi xác thực người học liên tục. Trong [Fay14] có đề cập, Flior và Kowalski đã thảo luận về một phương pháp cung cấp xác thực người dùng sinh trắc học liên tục trong các kỳ thi trực tuyến thông qua động lực gõ phím. Tuy nhiên, sinh trắc học gõ phím có nhược điểm của nó, chẳng hạn như sự khác biệt lớn có thể xảy ra theo thời gian do thay đổi kiểu gõ, mỏi tay sau một thời gian gõ và cải thiện kỹ năng gõ của người học. Các nhà nghiên cứu hiện đang tìm kiếm phương pháp xác định sinh trắc học tốt nhất sẽ giúp xác nhận danh tính của người học trong quá trình học tập trực tuyến và tham dự kỳ thi. Hệ thống nhận dạng khuôn mặt rất thân thiện với con người vì chúng không yêu cầu tiếp xúc và không cần có phần cứng bổ sung (với điều kiện là hầu hết các máy tính và thiết bị đầu cuối hiện đều có camera). Quan trọng hơn, hệ thống nhận dạng khuôn mặt có thể được sử dụng để xác thực liên tục của người học trong toàn bộ thời gian học tập hoặc kiểm tra. Hình 1.1- Quá trình chung của nhận dạng khuôn mặt Trong bài báo này, chúng tôi giới thiệu một phương pháp nhận dạng khuôn mặt và ứng dụng điểm danh sinh viên trong một lớp học. Cách tiếp cận của mô hình này là sử dụng những tiến bộ gần đây trong nhận dạng khuôn mặt dựa trên mạng nơron tích chập với cơ chế học sâu, kiểm tra mô hình trên bộ dữ liệu mẫu và thử nghiệm với bài toán định danh sinh viên của một lớp học. Các phần tiếp theo của bài báo gồm: Phần 2 tóm tắt các nghiên cứu liên quan; Phần 3 giới thiệu phương pháp đề xuất và nêu bật một số ưu điểm và hạn chế; Phần 4 trình bày phương án kịch bản thử nghiệm và phân tích kết quả; cuối cùng, Phần 5 là kết luận và một số định hướng nghiên cứu tiếp theo. 2. Những công trình liên quan Mạng nơron nhân tạo (ANN) là một hướng nghiên cứu có nhiều triển vọng và được nhiều tác giả quan tâm. Trong [Abu18] đã đề cập đến những cải tiến nhằm tăng độ chính xác nhận dạng của nhiều ứng dụng thời gian thực. Trong thực tế, sự phức tạp của khuôn mặt con người và những thay đổi do các hiệu ứng khác nhau khiến cho việc thiết kế cũng như thực hiện một hệ thống tính toán mạnh mẽ để nhận dạng khuôn mặt con người trở nên khó khăn hơn. Các tác giả đã sử dụng kết hợp mạng nơron với thuật toán học lan truyền ngược sai số (BPNN) với việc trích chọn các đặc trưng dựa trên mối tương quan giữa các hình ảnh đưa vào học mạng. Theo đó, mối tương quan giữa các ảnh tạo 4 Nghiên cứu trao đổi ● Research-Exchange of opinion nên dữ liệu học BPNN mới (T-Dataset) từ tập dữ liệu học ban đầu và cung cấp độ phân biệt cao giữa các hình ảnh đào tạo nhằm giúp BPNN hội tụ nhanh hơn và đạt được độ chính xác tốt hơn. Họ đã sử dụng một sơ đồ kết hợp gồm mô hình LBPH để trích chọn đặc trưng, mô hình KNN với các kiểu độ đo khoảng cách để xác định mối tương quan và mô hình BPNN. Tuy nhiên, trong những năm gần đây, sự phát triển mạnh mẽ của công nghệ học sâu (deep learning) với mạng nơron tích chập (convolutional neural network - CNN) và được ứng dụng thành công trong nhiều bài toán thực tế [Yam18]. CNN là một cấu trúc mạng nơron nhân tạo gồm ba loại lớp nơron (minh hoạ ở Hình 1.2): lớp nơron tích chập (convolution layer), lớp nơron gộp chung (pooling layer) và lớp nơron kết nối đầy đủ (fully connection layer). Hai lớp nơron đầu (tích chập và gộp chung) thực hiện vai trò trích chọn đặc trưng của ảnh khuôn mặt, trong khi lớp thứ ba (kết nối đầy đủ) thực hiện vai trò ánh xạ các đặc trưng được trích chọn thành đầu ra cuối cùng, tức là định danh của người được nhận dạng. Lớp nơron tích chập đóng vai trò quan trọng trong CNN, bao gồm một chồng các phép toán tích chập, là một loại phép tuyến tính chuyên biệt. Lớp nơron gộp chung đóng vai trò làm giảm số chiều của không gian đặc trưng được trích chọn (hay còn gọi là subsampling) nhằm tăng tốc độ xử lý của quá trình nhận dạng. Quá trình học mạng nơron là điều chỉnh các tham số học của mạng (trainable parameters) gồm các trọng số liên kết của lớp nơron tích chập và lớp nơron kết nối đầy đủ. Thuật toán học điển hình của mạng nơron dạng này là lan truyền ngược sai số với mục tiêu giảm thiểu sai số kết quả nhận dạng của mạng. Ngoài ra, mạng còn có các tham số cần phải thiết lập trước khi áp dụng như kích thước của nhân trong phép tích chập, độ trượt của phép tích chập, hàm kích hoạt, phương pháp tính của lớp nơron gộp chung và các tham số khác được đề cập chi tiết trong [Yam18]. Hình 1.2- Minh hoạ về kiến trúc của một mạng nơron tích chập‡ ‡ https://www.kaggle.com/cdeotte/how-to-choose-cnn-architecture-mnist 5Nghiên cứu trao đổi ● Research-Exchange of opinion Hiện nay có nhiều nghiên cứu ứng dụng CNN trong nhận dạng khuôn mặt với các cải tiến ngày một hiệu quả và chất lượng cao hơn, ứng dụng đa dạng vào các bài toán thực tế. Các tác giả trong [Kam17] phân tích tính hiệu quả của CNN so với ba phương pháp nhận dạng khuôn mặt kinh điển bao gồm phân tích thành phần chính (PCA), mô hình biểu đồ mẫu nhị phân cục bộ (LBPH) và láng giềng gần nhất (KNN). Thử nghiệm trên cơ sở dữ liệu ORL cho thấy LBPH đạt kết quả tốt hơn PCA và KNN, nhưng đối với CNN được đề xuất cho độ chính xác nhận dạng tốt nhất (98,3% so với 3 phương pháp kia chưa đến 90%). Qua đây phần nào khẳng định phương pháp dựa trên CNN vượt trội hơn các phương pháp khác. Trong [Phi15] đã phân tích đánh giá với các kiến trúc CNN cải tiến khác nhau cho nhận dạng khuôn mặt. Thứ nhất là kiến trúc chứa 22 lớp nơron với 140 triệu tham số học và cần 1.6 tỷ FLOPS (floating- point operations per second) cho mỗi ảnh. Dạng kiến trúc thứ hai dựa trên mô hình mạng Interception của GoogleNet gồm các phiên bản với kích thước đầu vào khác nhau nhằm làm giảm không gian tham số học của mạng. Các kiến trúc này được ứng dụng vào các phạm vi khác nhau, trong khi kiến trúc CNN có kích thước lớn cho kết quả cao và phù hợp với ứng dụng trên các máy tính lớn thì với CNN nhỏ hoặc rất nhỏ sẽ phù hợp với các ứng dụng trên thiết bị di động cầm tay nhưng vẫn đảm bảo kết quả chấp nhận được. Nhằm tăng hiệu quả cao hơn, các tác giả trong [Par15] đề xuất một kiến trúc CNN với quy mô “rất sâu” gồm 11 khối với 37 lớp nơron, 8 khối đầu đóng vai trò trích chọn đặc trưng và 3 khối sau thực hiện chức năng phân lớp để nhận dạng. Kiến trúc CNN này được chạy trên quy mô dữ liệu học mạng rất lớn (LFW và YTF với hàng nghìn định danh và hàng triệu bức ảnh) và cho kết quả (98.95% trên LFW và 97.3% trên YTF) tốt hơn so với các mô hình CNN khác. Các tác giả trong [Def18] đã đề xuất một hệ thống mạng thần kinh tích chập cho nhận diện khuôn mặt với sự cải tiến dựa trên kiến trúc CNN của VGG (Visual Geometry Group - University of Oxford). Đó là sử dụng mô- đun CReLu (hàm kích hoạt của nơron) thay cho mô-đun hàm kích hoạt (ReLu) thông thường, mô-đun CReLu thực hiện ghép nối một ReLu chỉ chọn phần dương với một ReLu chỉ chọn phần âm của sự kích hoạt. Ở đây chính là điểm gấp đôi mức độ phi tuyến của hàm kích hoạt trong CNN và đã được xác định cho chất lượng kết quả tốt hơn. Dựa trên mô hình đề xuất này, các tác giả đã xây dựng một hệ thống nhận dạng khuôn mặt theo thời gian thực với một mạng nơron tích chập nhiều lớp (“rất sâu”) và phân tích thử nghiệm cho kết quả tốt hơn so với kết quả thu được khi sử dụng mô hình ban đầu. Trong các phương pháp nhận dạng khuôn mặt hiện nay dựa trên mạng nơron tích chập (CNN), một cặp khuôn mặt so sánh được độc lập đưa vào CNN để trích chọn đặc trưng. Đối với cả hai khuôn mặt, các phép nhân (kernels) giống nhau của nơron tích chập được áp dụng và do đó biểu diễn của một khuôn mặt được cố định bất kể nó được so sánh với ai. Tuy nhiên, đối với con người chúng ta, thường tập trung vào các đặc điểm khác nhau của khuôn mặt khi so sánh nó với những người khác. Vì vậy, [Han18] đã đề xuất một cấu trúc CNN mới gọi là tích chập tương phản, đặc biệt tập trung vào các đặc điểm khác 6 Nghiên cứu trao đổi ● Research-Exchange of opinion biệt giữa hai khuôn mặt để so sánh, nghĩa là các đặc điểm tương phản giữa chúng. Kết quả thử nghiệm cho thấy rằng phép tích chập tương phản được đề xuất này cải thiện đáng kể so với CNN thông thường và hứa hẹn tính ưu việt trong ứng dụng. Phép tích chập tương phản có lợi thế nhờ vào việc sinh tự động kết quả tích chập dựa trên cặp khuôn mặt được đưa vào tính toán. Phép tích chập tương phản này có thể được kết hợp vào bất kỳ loại kiến trúc CNN nào. Nhằm nâng cao chất lượng nhận dạng cho mô hình dựa trên CNN, một số nghiên cứu đã áp dụng phương pháp học mạng nơron với kỹ thuật “triplet loss” [Amo16, Han18, Par15, Phi15, San18]. Theo đó, quá trình học được thực hiện với mỗi bộ ba mẫu học gồm, trong đó là hình ảnh của một người cụ thể (gọi là ảnh neo - anchor), là ảnh khác của cùng một người với ảnh (gọi là ảnh dương - positive) và là hình ảnh của bất kỳ một người khác (gọi là ảnh âm - negative). Mục tiêu ở đây là học mạng nơron (điều chỉnh trọng số mạng) sao cho phản hồi của mạng nơron với cặp mẫu là gần nhau hơn so với cặp mẫu. Có thể được mô tả bằng hình ảnh minh hoạ trực quan (Hình 1.3) và hình thức hoá ... nhiệt đối với các ảnh khuôn mặt trong Hình 4.2 ở lần thử nghiệm thứ 2 (tính từ 0) của 10-folds (ký hiệu “t02” trên tiêu đề ảnh là viết tắt bằng 3 ký tự cuối của đối tượng “subject02”). Tất cả các hình ảnh trong Hình 4.4 đều được phân lớp đúng (#C2) tương ứng là giá trị đầu ra của mạng tại lớp đó cao nhất (giá trị 1.0). Bản đồ nhiệt này cho thấy các vùng ảnh được quan tâm bởi mô hình CNN chủ yếu trên các vùng đặc trưng của khuôn mặt, gồm vùng hai mắt, vùng miệng và mũi, vùng trán và tóc. So sánh với bản đồ nhiệt ở Hình 4.3, chúng ta thấy bản đồ nhiệt ở đây tập trung hơn vào các vùng đặc điểm chính của khuôn mặt, trong khi ở Hình 4.3 còn có sự phân bố chưa tập trung vào các vùng đặc điểm chính của khuôn mặt. Điều này có thể được giải thích rằng ở trường hợp thử nghiệm 2-folds thì số mẫu dữ liệu học nhỏ (50%) nên khả năng tập trung vào những đặc điểm chính của khuôn mặt chưa cao, khi sử dụng số mẫu dữ liệu học nhiều hơn (90%) thì cho kết quả tốt hơn. Hình 4.4- Bản đồ nhiệt trên các ảnh của đối tượng “subject02” Kết quả quá trình huấn luyện mô hình CNN trên hai tập dữ liệu AT&T và Yale được thể hiện trong Hình 4.5 (AT&T là (a), Yale là (b)). Đây là kết quả 10 lần chạy thử nghiệm của trường hợp 10-folds. Kết quả trên cả hai tập dữ liệu đều cho kết quả độ chính xác phân lớp (accuracy) tốt từ lần học thứ 40, tiếp tục ổn định và nâng cao kết qủa học từ các lần học tiếp theo đến cuối cùng (đường màu đỏ). Tuy nhiên, đối với dữ liệu AT&T, có trường hợp thể hiện sự ổn định không cao của quá trình học tại lần học khoảng thứ 55 và sau đó 16 Nghiên cứu trao đổi ● Research-Exchange of opinion là xung quanh 70 (Hình 4.5a). Trong khi đó, tỷ lệ “loss” được áp dụng theo [Yam18] của mô hình trong quá trình học giảm mạnh ở lần học khoảng thứ 10, sau đó duy trì và giảm đến cuối (đường màu xanh). Hình 4.5- Biểu đồ tỷ lệ accuracy và loss của quá trình huấn luyện Hai hình vẽ sau thể hiện ma trận nhầm lẫn (“confusion matrix”) trong cả 3 trường hợp thử nghiệm (2-folds, 5-folds, 10-folds) của cả hai tập dữ liệu (ATT&T là Hình 4.6 và Yale là Hình 4.7). Mỗi lần chạy thử nghiệm xác định một ma trận nhầm lẫn, do đó kết quả này là cộng tổng của 2+5+10=17 lần chạy, dẫn đến có tối đa bằng 17 lần số mẫu dữ liệu trong mỗi lớp, cụ thể là 17×10=170 của AT&T và 17×11=187 của Yale trên mỗi ô (tương ứng với mỗi lớp đối tượng). Đối với dữ liệu AT&T, lớp đối tượng “s14” có giá trị nhầm lẫn cao nhất là 10, được phân lớp nhầm sang lớp “s22”. Điều này có thể được giải thích là dữ liệu hình ảnh trong lớp “s14” có sự tương đồng về đặc điểm với hình ảnh trong lớp “s22”, trong khi mô hình CNN được huấn luyện chưa đạt đến sự phân biệt giữa các hình ảnh của hai lớp đối tượng này. Lớp “s22” này cũng nhận sai số nhầm lẫn đến từ các lớp khác nhiều nhất. Có 2 lượt mẫu dữ liệu ở các lớp “s10”, “s11”, “s16”, “s17”, “s16”, “s29” được phân lớp nhầm sang các lớp khác, tương ứng là “s8”, “s14”, “s24”, “s3”, “s28”, “s39”. Riêng lớp “s1” có 5 lượt mẫu dữ liệu trong tổng số 170 lượt sử dụng được phân lớp nhầm, trong đó, 2 lượt phần lớp sang “s2”, 2 lượt phân lớp sang “s24” và một lượt phân lớp sang “s35”. Trong tập dữ liệu AT&T, có 16 lớp không bị nhầm lẫn trong tất cả các lượt áp dụng mẫu dữ liệu đánh giá gồm: s4, s6, s7, s9, s12, s13, s15, s18, s20, s21, s23, s25, s30, s32, s34, s38. Do bảng ma trận nhầm lẫn quá lớn nên chúng tôi đã loại bỏ các lớp này trong việc thể hiện và còn lại 24 lớp trên Hình 4.6. Đối với dữ liệu Yale, lớp đối tượng “subject08” có giá trị nhầm lẫn cao nhất là 7 với 6 lượt mẫu dữ liệu được phân lớp sang “subject10”, “subject13”, “subject15” (2 lượt mẫu dữ liệu phân lớp nhầm sang mỗi lớp), và 1 lượt mẫu dữ liệu phân lớp nhầm sang “subject03”. Lớp “subject01” có giá trị nhầm lẫn cao thứ hai là 5 với 2 lượt mẫu dữ liệu được phân lớp sang “subject02”, 2 phân lớp sang “subject15” và 1 phân lớp sang “subject08”. Có 3 lớp “subject03”, “subject05”, “subject15” với 3 lượt mẫu dữ liệu phân lớp nhầm sang các lớp khác. Còn lại các lớp “subject04”, “subject06”, “subject09” có từ 1 đến 2 trường hợp nhầm lẫn sang lớp khác. Trong tập dữ liệu này, có hai lớp “subject03” và “subject15” nhận sai sót nhầm lẫn nhiều nhất khi phân lớp từ các dữ liệu lớp khác với 5 trường hợp. Trong tập dữ liệu này, có duy nhất lớp “subject07” là không bị nhầm lẫn trong tất cả các lượt thử nghiệm và đánh giá. 17Nghiên cứu trao đổi ● Research-Exchange of opinion Hình 4.6- Ma trận nhầm lẫn trên tập dữ liệu AT&T Hình 4.7- Ma trận nhầm lẫn trên tập dữ liệu Yale 18 Nghiên cứu trao đổi ● Research-Exchange of opinion Bảng 4.1 và Bảng 4.2 thể hiện kết quả phân lớp của mô hình, kết quả này được tính trung bình (tỷ lệ % số mẫu phân lớp đúng trong tập kiểm tra) trên tất cả các lần chạy thử nghiệm trong từng trường hợp 2-folds, 5-folds, 10-folds và so sánh với các kết quả đã được công bố khác. Các trường hợp cho kết quả cao nhất được in đậm. Ký hiệu dấu “*” tại phương pháp là thể hiện không sử dụng kịch bản thử nghiệm k-fold cross-validation, tức là chỉ lấy một phần tỷ lệ dữ liệu trong tập mẫu để huấn luyện, phần còn lại để kiểm tra (tương ứng tỷ lệ số mẫu dữ liệu cho huấn luyện và kiểm tra là 50:50, 80:20, 90:10). Do đó, chúng tôi lấy ra trường hợp cao nhất (dấu “*” bên cạnh số in đậm) trong các lần chạy thử nghiệm của k-folds để so sánh với kịch bản thử nghiệm này. Các phương pháp đề xuất trong [Abu18, Moh18] đều không sử dụng mô hình CNN, họ tập trung vào các kỹ thuật xử lý ảnh để tinh chỉnh, cải thiện chất lượng ảnh trước khi áp dụng mô hình, sau đó sử dụng kết hợp các kỹ thuật truyền thống như LBPH, KNN, BPNN hay Fisher LDA. Phương pháp đề xuất trong [Kam17, Olo18] đều sử dụng mô hình CNN để nhận dạng hình ảnh khuôn mặt, được sử dụng để so sánh cho tính tương thích về phương pháp của mô hình. Đối với dữ liệu AT&T, kết quả 50:50 trong [Abu18] là cao nhất. Trường hợp 80:20, kết quả của chúng tôi đạt 98.75 là cao nhất, nếu tính theo 5-folds kết quả này là 97.75. Trong khi đó, với tỷ lệ 90:10 thì phương pháp đề xuất đạt 100, trong khi tính theo 10-folds là 98.75. Trong kết quả tập dữ liệu Yale, trường hợp 50:50 thì [Abu18] cho kết quả cao nhất là 97.7, trong khi kết quả của [Moh18] cho cao nhất ở thử nghiệm 5-folds, còn kết quả của chúng tôi là 95.27 (thấp hơn 2.43%) nhưng ở lần chạy cao nhất đạt 100. Đối với trường hợp 10-folds, kết quả của mô hình đề xuất là cao nhất (96.31) trong khi tại [Olo18] chỉ đạt 92.3 (thấp hơn 2.3%). Phương pháp Mô tả chi tiết 50:50 2-folds 80:20 5-folds 90:10 10-folds [Abu18] (không sử dụng CNN)* Proposed 1 97.5 - - Proposed 2 98.0 - - [Moh18] (không sử dụng CNN) Eye-aligned - 62.0 - Proposed - 94.0 - [Kam17]* Mô hình CNN 97.5 98.3 - Phương pháp đề xuất Mô hình CNN 97.50 97.75 98.75 - Mức cao nhất 97.50 98.75* 100* - Kết quả trên toàn bộ dữ liệu 98.75* 99.55* 99.63* Bảng 4.1- Kết quả thử nghiệm mô hình của tập dữ liệu AT&T (ORL) Phương pháp Mô tả chi tiết 50:50 2-folds 80:20 5-folds 90:10 10-folds [Abu18] (không sử dụng CNN)* Proposed 1 96.7 - - Proposed 2 97.7 - - [Moh18] (không sử dụng CNN) Eye-aligned - 74.0 - Proposed - 99.0 - [Olo18] IIA - - 88.2 MP[20] - - 90.8 MG[20] - - 92.3 Proposed CNN - - 94.6 Phương pháp đề xuất Mô hình CNN 93.46 95.27 96.31 - Mức cao nhất 97.50 100* 100* - Kết quả trên toàn bộ dữ liệu 96.67 99.03* 99.64* Bảng 4.2- Kết quả thử nghiệm mô hình của tập dữ liệu Yale 19Nghiên cứu trao đổi ● Research-Exchange of opinion Trường hợp đánh giá trên toàn bộ tập dữ liệu cho mô hình CNN được huấn luyện, kết quả thể hiện ở dòng cuối chữ in nghiêng. So sánh với [Kam17], vì họ cũng được thực hiện đánh giá trên toàn bộ dữ liệu, kết quả của chúng tôi đề xuất trên dữ liệu AT&T là cao hơn trong cả hai kịch bản thử nghiệm 2-folds (98.75 so với 97.5) và 5-folds (99.55 so với 98.3). 5. Kết luận Trong bài báo này, chúng tôi đã đề xuất một mô hình dựa trên mạng nơron tích chập (CNN) để nhận dạng khuôn mặt con người. Mô hình này có 4 lớp nơron tích chập (CONV) và 2 lớp nơron liên kết đầy đủ (FC), tổng số tham số là khoảng 12 triệu. Trong khi đó, các mô hình của [Def18, Cao18] dựa trên kiến trúc VGG gồm 13 lớp CONV và 3 lớp FC, số lượng khoảng 138 triệu tham số, gấp hơn 10 lần. Mô hình CNN trong [Han18] có 16 lớp CONV, mô hình của [Phi15] có 11 lớp CONV và 3 lớp FC, mô hình của [San18] có 8 lớp CONV và 1 lớp FC, tất cả đều có độ phức tạp của mô hình lớn hơn của chúng tôi. Tuy nhiên, mô hình của [Kam17] chỉ có 2 lớp CONV nhưng đã được tích hợp giai đoạn tiền xử lý hình ảnh khá chi tiết và phức tạp, trong [Olo18] sử dụng mô hình ResNet với độ phức tạp rất lớn, ở phiên bản thấp nhất cũng lên đến 17 lớp CONV. Như vậy, có thể khẳng định mô hình của chúng tôi có độ phức tạp ở mức vừa phải, phù hợp với các hệ thống tính toán ở mức trung bình và đem lại tiềm năng khả thi trong ứng dụng thực tiễn. Mặc dù độ phức tạp của mô hình ở mức thấp so với các mô hình khác, nhưng kết quả thử nghiệm cho thấy tính hiệu quả của phân lớp khá cao. Hiện nay do điều kiện tính toán nên chúng tôi chỉ áp dụng số lần huấn luyện còn thấp, nếu được huấn luyện ở mức độ sâu hơn thì kỳ vọng sẽ đem lại kết quả cao hơn nữa. Trong thời gian tới, chúng tôi sẽ nghiên cứu cải thiện hiệu quả phân lớp bằng cách áp dụng mô hình phân lớp SVM thay thế cho các lớp nơron dạng FC trong mô hình CNN, phân tích điều chỉnh một số lớp CONV bằng lớp nơron dạng Inception [San18, Amo16, Phi15]. Tiếp theo, chúng tôi sẽ thiết kế một hệ thống thu thập dữ liệu hình ảnh để tạo bộ dữ liệu huấn luyện cho mô hình, từ đó xây dựng một ứng dụng cho bài toán thực tiễn như hệ thống điểm danh sinh viên có mặt ở lớp học, hệ thống giám sát cá bộ vào/ra cổng cơ quan, hệ thống theo dõi và định danh liên tục quá trình học tập của người học trực tuyến. Tài liệu tham khảo: [1]. [Abu18] M. A. Abuzneid, A. Mahmood, “Enhanced Human Face Recognition Using LBPH Descriptor, Multi-KNN, and BPNN”, IEEE Access, Vol. 6, pp.20641-20651, 2018. [2]. [Ami16] Alexander Amigud et al., “A Behavioral Biometrics Based and Machine Learning Aided Framework for Academic Integrity in E-Assessment”, International Conference on Intelligent Networking and Collaborative Systems, pp.225-262, 2016. [3]. [Amo16] Brandon Amos, Bartosz Ludwiczuk and Mahadev Satyanarayanan, “OpenFace: A general-purpose face recognition library with mobile applications”, 2016. [4]. [Ary18] Shraddha Arya, Arpit Agrawal, “Face Recognition with Partial Face Recognition and Convolutional Neural Network”, International Journal of Advanced Research in Computer Engineering & Technology (IJARCET), Vol.7, Iss.1, pp.91-94, ISSN: 2278 – 1323, 2018. [5]. [Cao18] Qiong Cao, Li Shen, Weidi Xie, Omkar M. Parkhi and Andrew Zisserman, “VGGFace2 - A dataset for recognising faces across pose and age”, IEEE Conference on Automatic Face and Gesture Recognition, ~vgg/data/vgg face2/, 2018. [6]. [Def18] Lionel Landry S. Deffo, Elie T. Fute, Emmanuel Tonye, “CNNSFR: A Convolutional Neural Network System for Face Detection and Recognition”, International Journal of Advanced Computer Science and Applications, Vol. 9, No. 12, pp.240-244, 2018. 20 Nghiên cứu trao đổi ● Research-Exchange of opinion [7]. [Der18] Ekberjan Derman and Albert Ali Salah, “Continuous Real-Time Vehicle Driver Authentication Using Convolutional Neural Network Based Face Recognition”, 13th IEEE International Conference on Automatic Face & Gesture Recognition, 2018. [8]. [Fay14] Ayham Fayyoumi, Anis Zarrad, “Novel Solution Based on Face Recognition to Address Identity Theft and Cheating in Online Examination Systems”, Advances in Internet of Things, 4, pp.5-12, 2014. [9]. [Gui17] Francisco D. Guillen-Gamez, “Biometrics and education: a review about facial authentication software for the identification and verification of students who use virtual learning platform (LMS)”, Advances in Educational Technology and Psychology, pp.1-8, Clausius Scientific Press, Canada, 2017. [10]. [Han18] Chunrui Han, Shiguang Shan, Meina Kan, Shuzhe Wu, and Xilin Chen, “Face Recognition with Contrastive Convolution”, European Conference on Computer Vision: Computer Vision – ECCV, pp.120-135, 2018. [11]. [Kam17] Patrik Kamencay, Miroslav Benco, Tomas Mizdos and Roman Radil, “A New Method for Face Recognition Using Convolutional Neural Network”, Digital Image Processing and Computer Graphics, Vol. 15, No. 4, pp.663-672, 2017. [12]. [Lop15] Andre Teixeira Lopes, Edilson de Aguiar, Thiago Oliveira-Santos, “A Facial Expression Recognition System Using Convolutional Networks”, 28th SIBGRAPI Conference on Graphics, Patterns and Images, 2015. [13]. [Moh18] Hoda Mohammadzade, Amirhossein Sayyafan, Benyamin Ghojogh, “Pixel-Level Alignment of Facial Images for High Accuracy Recognition Using Ensemble of Patches”, Journal of the Optical Society of America A 35(7), 2018. [14]. [Par15] Omkar M. Parkhi, Andrea Vedaldi, Andrew Zisserman, “Deep Face Recognition”, University of Oxford, 2015. [15]. [Phi15] James Philbin, Florian Schroff, Dmitry Kalenichenko, “FaceNet: A Unified Embedding for Face Recognition and Clustering”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015. [16]. [San18] Kevin Santoso, Gede Putra Kusuma, Kevin Santoso, Gede Putra Kusuma, “Face Recognition Using Modified OpenFace”, 3rd International Conference on Computer Science and Computational Intelligence, Procedia Computer Science, No.135, pp.510–517, 2018. [17]. [Saw18] Sonali Sawardekar, Sowmiya Raksha Naik, “Facial Expression Recognition using Efficient LBP and CNN”, International Research Journal of Engineering and Technology (IRJET), e-ISSN: 2395-0056, Volume: 05, Issue: 06, p-ISSN: 2395-0072, pp.2273-2277, 2018. [18]. [Sya14] R. Syafeeza et al., “Convolutional Neural Network for Face Recognition with Pose and Illumination Variation”, International Journal of Engineering and Technology (IJET), pp.44-57, 2014. [19]. [Olo18] Muhtahir O. Oloyede et al., “Improving Face Recognition Systems Using a New Image Enhancement Technique, Hybrid Features and the Convolutional Neural Network”, IEEE Access, vol. 6, pp. 75181-75191, 2018. [20]. [Cui17] Li Cuimei, Qi Zhiliang, Jia Nan and Wu Jianhua, “Human face detection algorithm via Haar cascade classifier combined with three additional classifiers”, IEEE 13th International Conference on Electronic Measurement & Instruments, pp.483-487, 2017. [21]. [Sel17] Ramprasaath R. Selvaraju et al., “Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization”, IEEE International Conference on Computer Vision (ICCV), Electronic ISSN: 2380-7504, 2017. Địa chỉ tác giả: Trường Đại học Mở Hà Nội Email: duongthanglong@hou.edu.vn
File đính kèm:
- mot_phuong_phap_nhan_dang_khuon_mat_dua_tren_mang_noron_tich.pdf