Trí tuệ nhân tạo
DeepFace cho Nhận diện Khuôn mặt Nâng cao

Nhận diện khuôn mặt đã là một lĩnh vực thịnh hành trong AI và ML trong vài năm nay, và những tác động văn hóa & xã hội rộng rãi của nhận diện khuôn mặt là rất sâu rộng. Tuy nhiên, tồn tại một khoảng cách hiệu suất giữa hệ thống thị giác của con người và máy móc hiện đang hạn chế các ứng dụng của nhận diện khuôn mặt. Để vượt qua rào cản được tạo ra bởi khoảng cách hiệu suất và đạt được độ chính xác ở cấp độ con người, Meta đã giới thiệu DeepFace, một khuôn khổ nhận diện khuôn mặt. Mô hình DeepFace được huấn luyện trên một tập dữ liệu khuôn mặt lớn khác biệt đáng kể so với các tập dữ liệu được sử dụng để xây dựng các điểm chuẩn đánh giá, và nó có tiềm năng vượt trội hơn các khuôn khổ hiện có với những điều chỉnh tối thiểu. Hơn nữa, khuôn khổ DeepFace tạo ra các biểu diễn khuôn mặt nhỏ gọn khi so sánh với các hệ thống khác tạo ra hàng nghìn đặc điểm diện mạo khuôn mặt. Khuôn khổ DeepFace được đề xuất sử dụng Học sâu để huấn luyện trên một tập dữ liệu lớn bao gồm các dạng dữ liệu khác nhau như hình ảnh, video và đồ họa. Kiến trúc mạng DeepFace giả định rằng một khi việc căn chỉnh hoàn tất, vị trí của mọi vùng khuôn mặt được cố định ở cấp độ pixel. Do đó, có thể sử dụng các giá trị RGB pixel thô mà không cần sử dụng nhiều lớp tích chập như trong các khuôn khổ khác. Quy trình thông thường của các khuôn khổ nhận diện khuôn mặt hiện đại bao gồm bốn giai đoạn: Phát hiện, Căn chỉnh, Biểu diễn và Phân loại. Khuôn khổ DeepFace sử dụng mô hình hóa khuôn mặt 3D rõ ràng để áp dụng một phép biến đổi từng phần và sử dụng một mạng nơ-ron sâu chín lớp để rút ra một biểu diễn khuôn mặt. Khuôn khổ DeepFace cố gắng đóng góp những điều sau
- Phát triển một kiến trúc DNN hoặc Mạng Nơ-ron Sâu hiệu quả có thể tận dụng một tập dữ liệu lớn để tạo ra một biểu diễn khuôn mặt có thể được tổng quát hóa cho các tập dữ liệu khác.
- Sử dụng mô hình hóa 3D rõ ràng để phát triển một hệ thống căn chỉnh khuôn mặt hiệu quả.
Hiểu về Cách thức Hoạt động của Mô hình DeepFace
Căn chỉnh Khuôn mặt
Căn chỉnh Khuôn mặt là một kỹ thuật xoay hình ảnh của một người theo góc của mắt. Căn chỉnh Khuôn mặt là một thực hành phổ biến được sử dụng để tiền xử lý dữ liệu cho nhận diện khuôn mặt, và các tập dữ liệu được căn chỉnh khuôn mặt giúp cải thiện độ chính xác của các thuật toán nhận diện bằng cách cung cấp một đầu vào được chuẩn hóa. Tuy nhiên, việc căn chỉnh khuôn mặt một cách không ràng buộc có thể là một nhiệm vụ đầy thách thức vì nhiều yếu tố liên quan như biểu cảm không cứng nhắc, tư thế cơ thể và hơn thế nữa. Một số kỹ thuật căn chỉnh tinh vi như sử dụng mô hình 3D phân tích của khuôn mặt hoặc tìm kiếm các điểm mốc từ tập dữ liệu bên ngoài có thể cho phép các nhà phát triển vượt qua những thách thức. Mặc dù căn chỉnh là phương pháp phổ biến nhất để xử lý xác minh & nhận diện khuôn mặt không ràng buộc, hiện không có giải pháp hoàn hảo. Các mô hình 3D cũng được sử dụng, nhưng độ phổ biến của chúng đã giảm đáng kể trong vài năm qua, đặc biệt khi làm việc trong môi trường không ràng buộc. Tuy nhiên, vì khuôn mặt con người là các đối tượng 3D, đó có thể là cách tiếp cận đúng đắn nếu được sử dụng chính xác. Mô hình DeepFace sử dụng một hệ thống sử dụng các điểm mốc để tạo ra một mô hình hóa 3D phân tích của khuôn mặt. Mô hình hóa 3D này sau đó được sử dụng để biến dạng một vùng cắt khuôn mặt thành một chế độ chính diện 3D. Hơn nữa, giống như hầu hết các thực hành căn chỉnh, việc căn chỉnh DeepFace cũng sử dụng các bộ phát hiện điểm mốc để định hướng quá trình căn chỉnh. Mặc dù mô hình DeepFace sử dụng một bộ phát hiện điểm đơn giản, nó áp dụng nó trong một số lần lặp để tinh chỉnh đầu ra. Một Bộ hồi quy Vector Hỗ trợ hoặc SVR được huấn luyện để định kiến cấu hình điểm trích xuất các điểm mốc từ một bộ mô tả hình ảnh ở mỗi lần lặp. Bộ mô tả hình ảnh của DeepFace dựa trên Biểu đồ LBP mặc dù nó cũng xem xét các đặc điểm khác.
Căn chỉnh 2D
Mô hình DeepFace khởi tạo quá trình căn chỉnh bằng cách phát hiện sáu điểm mốc trong vùng cắt phát hiện, tập trung ở giữa mắt, vị trí miệng và đầu mũi. Chúng được sử dụng để xoay, chia tỷ lệ và dịch chuyển hình ảnh thành sáu vị trí neo, và lặp lại trên hình ảnh bị biến dạng cho đến khi không có thay đổi nào có thể nhìn thấy. Phép biến đổi tổng hợp sau đó tạo ra một vùng cắt được căn chỉnh 2D. Phương pháp căn chỉnh khá giống với phương pháp được sử dụng trong LFW-a, và nó đã được sử dụng trong nhiều năm qua trong nỗ lực tăng độ chính xác của mô hình.
Căn chỉnh 3D
Để căn chỉnh các khuôn mặt có các phép xoay ngoài mặt phẳng, khuôn khổ DeepFace sử dụng một mô hình hình dạng 3D chung và đăng ký một máy ảnh 3D có thể được sử dụng để bao bọc vùng cắt được căn chỉnh 2D vào hình dạng 3D trong mặt phẳng hình ảnh của nó. Kết quả là, mô hình tạo ra phiên bản được căn chỉnh 3D của vùng cắt, và nó đạt được bằng cách định vị thêm 67 điểm mốc trong vùng cắt được căn chỉnh 2D bằng cách sử dụng một SVR hoặc Bộ hồi quy Vector Hỗ trợ thứ hai. Sau đó, mô hình đặt thủ công 67 điểm neo lên hình dạng 3D và do đó có thể đạt được sự tương ứng đầy đủ giữa các tham chiếu 3D và các điểm mốc tương ứng của chúng. Trong bước tiếp theo, một máy ảnh affine 3D sang 2D được thêm vào bằng cách sử dụng giải pháp bình phương nhỏ nhất tổng quát cho các hệ thống tuyến tính với một ma trận hiệp phương sai đã biết để tối thiểu hóa một số tổn thất nhất định.
Chính diện hóa
Vì các biến dạng không cứng nhắc và các phép chiếu phối cảnh đầy đủ không được mô hình hóa, máy ảnh 3D sang 2D được trang bị chỉ đóng vai trò như một phép xấp xỉ. Trong nỗ lực giảm sự sai lệch của các yếu tố quan trọng mang tính nhận dạng đến phép biến dạng cuối cùng, mô hình DeepFace thêm các phần dư tương ứng vào các thành phần x-y của mỗi điểm mốc tham chiếu. Sự nới lỏng như vậy nhằm mục đích biến dạng hình ảnh 2D với ít biến dạng hơn đối với nhận dạng là hợp lý, và nếu không có nó, các khuôn mặt sẽ bị biến dạng thành cùng một hình dạng trong 3D và mất đi các yếu tố phân biệt quan trọng trong quá trình này. Cuối cùng, mô hình đạt được chính diện hóa bằng cách sử dụng một phép biến đổi affine từng phần được định hướng bởi phép tam giác phân Delaunay có nguồn gốc từ 67 điểm mốc. 
- Khuôn mặt được phát hiện với 6 điểm mốc.
- Vùng cắt được căn chỉnh 2D được tạo ra.
- 67 điểm mốc trên vùng cắt được căn chỉnh 2D.
- Hình dạng 3D tham chiếu được chuyển đổi thành hình ảnh vùng cắt được căn chỉnh 2D.
- Khả năng hiển thị tam giác đối với máy ảnh 3D-2D.
- 67 điểm mốc được tạo ra bởi mô hình 3D.
- Phiên bản được căn chỉnh 3D của vùng cắt cuối cùng.
- Góc nhìn mới được tạo ra bởi mô hình 3D.
Biểu diễn
Với sự gia tăng về lượng dữ liệu huấn luyện, các phương pháp dựa trên học tập đã chứng minh là hiệu quả & chính xác hơn khi so sánh với các đặc trưng được thiết kế chủ yếu vì các phương pháp dựa trên học tập có thể khám phá và tối ưu hóa các đặc trưng cho một nhiệm vụ cụ thể.
Kiến trúc và Huấn luyện DNN
DNN DeepFace được huấn luyện trên một nhiệm vụ nhận diện khuôn mặt đa lớp phân loại danh tính của một hình ảnh khuôn mặt. Hình trên đại diện cho kiến trúc tổng thể của mô hình DeepFace. Mô hình có một lớp tích chập (C1) với 32 bộ lọc có kích thước 11x11x3 được cung cấp một hình ảnh RGB 3 kênh được căn chỉnh 3D có kích thước 152×152 pixel, và nó tạo ra 32 bản đồ đặc trưng. Các bản đồ đặc trưng này sau đó được đưa vào một lớp Gộp cực đại hoặc M2 lấy giá trị cực đại trên các vùng lân cận không gian 3×3 và có bước nhảy là 2, riêng biệt cho mỗi kênh. Tiếp theo là một lớp tích chập khác (C3) bao gồm 16 bộ lọc mỗi bộ có kích thước 9x9x16. Mục đích chính của các lớp này là trích xuất các đặc trưng cấp thấp như kết cấu và các cạnh đơn giản. Ưu điểm của việc sử dụng các lớp Gộp cực đại là nó làm cho đầu ra được tạo ra bởi các lớp tích chập mạnh mẽ hơn với các phép dịch chuyển cục bộ, và khi áp dụng cho các hình ảnh khuôn mặt được căn chỉnh, chúng làm cho mạng mạnh mẽ hơn nhiều với các lỗi đăng ký ở quy mô nhỏ. Nhiều cấp độ gộp cực đại thực sự làm cho mạng mạnh mẽ hơn với một số tình huống, nhưng nó cũng khiến mạng mất thông tin về vị trí chính xác của các vi kết cấu và cấu trúc khuôn mặt chi tiết. Để tránh mạng mất thông tin, mô hình DeepFace chỉ sử dụng một lớp gộp cực đại với lớp tích chập đầu tiên. Các lớp này sau đó được mô hình diễn giải như một bước tiền xử lý thích ứng front-end. Mặc dù chúng thực hiện hầu hết các tính toán, chúng có các tham số hạn chế và chúng chỉ mở rộng đầu đầu vào thành một tập hợp các đặc trưng cục bộ. Các lớp tiếp theo L4, L5 và L










