AI nhận dạng hình ảnh bằng cách coi mỗi bức ảnh là một bảng số khổng lồ, rồi đi qua nhiều tầng xử lý: tầng đầu bắt những nét đơn giản như cạnh, góc, mảng màu; tầng sau ghép chúng thành hình dạng, bộ phận; tầng cuối nhận ra vật thể như con mèo, chiếc xe, gương mặt. Những tầng này không được lập trình bằng tay mà tự hình thành khi mô hình được cho xem hàng triệu ảnh có gắn nhãn.
Nhận dạng ảnh có mặt quanh ta từ trước khi chatbot nổi tiếng: điện thoại tự gom ảnh theo người, mở khoá bằng khuôn mặt, camera giao thông đọc biển số. Bài này giải thích máy "nhìn" khác người ở đâu, nhận dạng khuôn mặt gồm những bước nào, vì sao máy có những lỗi mà trẻ con cũng không mắc, và vì sao vấn đề thiên lệch trong nhận dạng gương mặt được bàn nhiều.
Với máy, một bức ảnh chỉ là bảng số
Khi bạn nhìn ảnh một con mèo nằm trên ghế, bạn thấy ngay con mèo. Máy thì nhận được một lưới gồm hàng triệu ô nhỏ, mỗi ô ghi ba con số cho độ đỏ, xanh lá, xanh dương. Không có ô nào ghi "đây là tai mèo". Cùng một con mèo, chụp lúc trời tối, chụp nghiêng, chụp gần hay xa, cho ra những bảng số khác nhau hoàn toàn. Bài toán của máy là tìm ra điểm chung giữa những bảng số rất khác nhau đó.
Trong nhiều năm, các nhà nghiên cứu cố viết tay những quy tắc: tìm hai hình tam giác ở trên, thì đó là tai; tìm sọc vằn thì đó là hổ. Cách này vỡ ngay khi gặp ảnh thực tế, vì thế giới có quá nhiều biến thể. Mèo cuộn tròn không thấy tai, ánh sáng làm sọc biến mất, vật che khuất một nửa. Danh sách quy tắc dài mãi mà không bao giờ đủ.
Cách làm thành công là để máy tự học quy tắc từ ví dụ. Ta không nói cho máy biết mèo có đặc điểm gì; ta cho nó xem hàng triệu ảnh, mỗi ảnh có nhãn "mèo", "chó", "xe đạp", và điều chỉnh mô hình mỗi khi nó đoán sai. Sau đủ nhiều lần, mô hình tự hình thành những "bộ lọc" nhận ra đặc điểm hữu ích. Đây là ý tưởng chung của học máy, áp vào ảnh.
Học theo từng tầng: từ nét tới vật
Mô hình nhận dạng ảnh kinh điển là mạng nơ-ron tích chập. Tên nghe khó nhưng ý tưởng gần gũi: mô hình trượt một ô cửa sổ nhỏ khắp bức ảnh, ở mỗi chỗ kiểm xem có một mẫu nhất định hay không, như có cạnh dọc, có góc nhọn, có mảng chuyển từ sáng sang tối. Tầng đầu chỉ bắt được những mẫu đơn giản như vậy. Tầng thứ hai nhìn vào kết quả của tầng đầu và bắt những tổ hợp: hai cạnh gặp nhau thành góc, nhiều đường cong thành vòng tròn.
Càng lên cao, mẫu càng phức tạp: vòng tròn và đốm đen thành mắt, mắt và mũi thành gương mặt, gương mặt cùng tai nhọn và ria thành mặt mèo. Khi các nhà nghiên cứu hiển thị thứ mà từng tầng phản ứng mạnh, họ thấy đúng xu hướng này. Điều thú vị là không ai dạy mô hình chia tầng như vậy; nó tự hình thành vì đó là cách hiệu quả để làm đúng bài toán.
Ý tưởng này có từ lâu. Cuối thập niên 1980, nhóm của Yann LeCun đã dùng mạng tích chập để đọc chữ số viết tay, ứng dụng vào đọc mã bưu chính và séc. Bước ngoặt lớn đến năm 2012, khi một mạng tích chập sâu thắng cách biệt cuộc thi phân loại ảnh ImageNet, nhờ dữ liệu lớn và chip đồ hoạ đủ mạnh. Từ đó, học sâu trở thành cách làm chủ đạo của thị giác máy tính. Những năm gần đây có thêm kiến trúc transformer cho ảnh, chia ảnh thành mảnh nhỏ và cho các mảnh "nhìn" nhau, cùng họ với mô hình ngôn ngữ.
Nhận dạng khuôn mặt gồm những bước nào
Chữ "nhận dạng khuôn mặt" thường được dùng chung cho mấy việc khác nhau. Tách ra từng bước giúp bạn hiểu một hệ thống cụ thể đang làm gì với gương mặt của mình.
- Phát hiện khuôn mặt: tìm xem trong ảnh có gương mặt nào, nằm ở đâu. Máy ảnh điện thoại làm việc này để lấy nét, không cần biết bạn là ai.
- Căn chỉnh: xoay, thu phóng gương mặt về tư thế chuẩn, dựa vào vị trí mắt, mũi, miệng.
- Rút đặc trưng: mô hình chuyển gương mặt thành một dãy số ngắn, đại diện cho những nét riêng của gương mặt đó. Hai ảnh của cùng một người cho ra hai dãy số gần nhau.
- So khớp một với một: so dãy số của bạn với dãy số đã lưu của chính bạn để mở khoá điện thoại hay xác thực tài khoản. Câu hỏi là "có phải người này không".
- Tìm một trong nhiều: so với cả kho dãy số để tìm xem đây là ai. Đây là bước nhạy cảm nhất, vì liên quan tới giám sát và dữ liệu của nhiều người.
Mỗi bước có mức rủi ro khác nhau. Phát hiện khuôn mặt để lấy nét gần như vô hại; tìm danh tính người lạ trong đám đông là chuyện nhiều nước đặt quy định chặt. Quyền của bạn với dữ liệu khuôn mặt và sinh trắc học được trang AI Định Danh và AI Bảo Mật trình bày theo góc pháp lý và an toàn.
Máy nhìn khác người: những lỗi mà trẻ con không mắc
Bám vào kết cấu hơn hình dạng. Nhiều thí nghiệm cho thấy mô hình phân loại ảnh có xu hướng dựa vào kết cấu bề mặt nhiều hơn hình dáng tổng thể. Một hình con mèo phủ kết cấu da voi có thể bị nhận là voi, trong khi người nhìn vẫn thấy mèo.
Học nhầm bối cảnh. Nếu ảnh bò trong dữ liệu toàn chụp trên đồng cỏ, mô hình có thể học "cỏ xanh" là dấu hiệu của bò. Con bò đứng trên bãi biển bị nhận sai. Mô hình học mọi thứ giúp đoán đúng trên dữ liệu, kể cả những thứ ta không muốn.
Nhạy với thay đổi nhỏ khó thấy. Giới nghiên cứu đã chỉ ra rằng thay đổi rất nhỏ trên ảnh, mắt người không nhận ra, có thể khiến mô hình đổi hẳn kết luận. Đây là một hướng nghiên cứu bảo mật lớn, vì nó ảnh hưởng tới các hệ thống như xe tự lái và camera an ninh.
Tự tin kể cả khi sai. Mô hình phân loại thường đưa ra một nhãn với điểm tin cậy cao ngay cả với ảnh nằm ngoài những gì nó từng học. Đưa ảnh một món đồ lạ, nó vẫn khẳng định đó là một thứ quen thuộc nào đó.
Kém đều giữa các nhóm người. Năm 2018, nghiên cứu Gender Shades của Joy Buolamwini và Timnit Gebru cho thấy một số hệ thống phân tích khuôn mặt thương mại khi đó sai nhiều hơn hẳn với phụ nữ da sẫm màu so với đàn ông da sáng. Nguyên nhân chính là dữ liệu huấn luyện và đánh giá không cân bằng. Các hãng đã cải thiện từ đó, nhưng vấn đề thiên lệch vẫn là lý do cần kiểm tra kỹ trước khi dùng nhận dạng mặt vào việc hệ trọng.
Chatbot đọc được ảnh: nối thị giác với ngôn ngữ
Mô hình nhận dạng kiểu cũ chỉ chọn một nhãn trong danh sách có sẵn, như một nghìn loại vật. Bước tiến quan trọng là dạy máy liên hệ ảnh với câu chữ tự do. Năm 2021, OpenAI giới thiệu CLIP, một mô hình học từ rất nhiều cặp ảnh và chú thích trên mạng, với mục tiêu đơn giản: đưa ảnh và câu mô tả đúng của nó lại gần nhau trong cùng một không gian số, đẩy những cặp không khớp ra xa. Nhờ vậy máy có thể so một ảnh với bất kỳ câu nào, không bị giới hạn trong danh sách nhãn.
Các chatbot đọc được ảnh hiện nay đi thêm một bước: một bộ phận thị giác chuyển ảnh thành chuỗi "mẩu" số, rồi đưa chuỗi đó vào mô hình ngôn ngữ cùng với câu hỏi của bạn. Mô hình ngôn ngữ xử lý mẩu ảnh như xử lý mẩu chữ, nên có thể mô tả, trả lời câu hỏi về ảnh, đọc chữ trong ảnh. Cách nối này được gọi là đa phương thức.
Hiểu cơ chế đó giúp giải thích một tật quen: chatbot nhìn ảnh vẫn là mô hình ngôn ngữ đoán chữ tiếp theo, nên nó có thể mô tả trôi chảy những chi tiết không có trong ảnh, nhất là khi câu hỏi gợi ý sẵn. Hỏi "con chó trong ảnh màu gì" với một ảnh không có chó, có lúc nó vẫn trả lời một màu. Vì thế với ảnh quan trọng, hãy hỏi câu mở và tự đối chiếu.
Nhận dạng ảnh đang chạy quanh bạn ở đâu
Phần lớn ứng dụng nhận dạng ảnh chạy âm thầm, bạn ít khi để ý. Bảng dưới liệt kê một số chỗ quen thuộc và câu hỏi nên đặt ra với từng chỗ.
| Nơi bạn gặp | Máy đang làm gì | Câu hỏi nên đặt |
|---|---|---|
| Ứng dụng ảnh trên điện thoại gom ảnh theo người, tìm ảnh "biển" | Phân loại cảnh, nhóm khuôn mặt giống nhau | Việc xử lý chạy trên máy hay trên máy chủ, có tắt được không |
| Mở khoá điện thoại bằng gương mặt | So khớp một với một | Dữ liệu mặt lưu ở đâu, có dễ bị qua mặt bằng ảnh không |
| Camera giao thông, bãi gửi xe | Phát hiện xe, đọc biển số | Ai giữ dữ liệu, giữ bao lâu |
| Phần mềm hỗ trợ đọc phim chụp y khoa | Khoanh vùng nghi bất thường để bác sĩ xem | Kết quả có được bác sĩ xác nhận không |
| Ứng dụng nhận diện cây, con vật qua ảnh | Phân loại theo kho ảnh đã học | Loài hiếm, loài địa phương dễ bị nhận nhầm |
| Chatbot xem ảnh bạn gửi và mô tả | Mô hình đa phương thức nối ảnh với ngôn ngữ | Mô tả có thể bịa chi tiết không có trong ảnh |
Dòng ứng dụng nhận diện cây, con vật đáng nói thêm: với nấm dại, rắn, côn trùng, hay một vết thương trên da, kết quả nhận dạng chỉ nên là gợi ý để hỏi tiếp người có chuyên môn. Máy có thể khẳng định rất tự tin một loài quen thuộc trong khi thứ trước mặt bạn là loài hiếm nó chưa từng học, và trong những chuyện ăn được hay an toàn, cái giá của một lần nhận nhầm quá cao.
Câu hỏi thường gặp
Máy nhận dạng ảnh có "hiểu" bức ảnh không?
Máy học được những mối liên hệ thống kê giữa điểm ảnh và nhãn, đủ để làm đúng nhiều việc. Nhưng những lỗi như nhầm bối cảnh hay bị lừa bởi thay đổi nhỏ cho thấy cách nó "thấy" khác cách người thấy. Có hiểu hay không tuỳ cách định nghĩa chữ hiểu, và đây vẫn là câu hỏi được tranh luận.
Mở khoá bằng khuôn mặt có bị qua mặt bằng ảnh chụp không?
Hệ thống chỉ dùng camera thường dễ bị qua mặt hơn hệ thống có cảm biến chiều sâu hoặc kiểm tra người thật như yêu cầu chớp mắt, quay đầu. Mức an toàn khác nhau tuỳ thiết bị, bạn nên xem thông tin của nhà sản xuất. Với tài khoản quan trọng, kết hợp thêm mật khẩu hay mã PIN vẫn an toàn hơn.
Ảnh mình đăng lên mạng có bị dùng để huấn luyện nhận dạng khuôn mặt không?
Đã có những vụ việc công ty thu thập ảnh công khai trên mạng để xây kho nhận dạng khuôn mặt và bị cơ quan quản lý nhiều nước xử lý. Ảnh công khai về kỹ thuật thì ai cũng tải được, nên cách giảm rủi ro là hạn chế chế độ công khai với ảnh rõ mặt và đọc chính sách của nền tảng.
Vì sao ứng dụng ảnh nhận mặt con với mặt bố mẹ lẫn nhau?
Các thành viên trong gia đình thường có nét mặt giống nhau, và gương mặt trẻ con thay đổi nhanh theo tuổi. Dãy số đại diện cho gương mặt của những người này nằm gần nhau, nên máy dễ gom nhầm. Bạn thường có thể sửa bằng tay, và một số ứng dụng học lại từ lần sửa đó trong phạm vi máy bạn.
Nhận dạng ảnh và tạo ảnh có liên quan nhau không?
Có. Mô hình tạo ảnh cần một phần "hiểu" mối liên hệ giữa chữ và ảnh, thứ được phát triển từ các mô hình nhận dạng. Ngược lại, kỹ thuật của mô hình tạo ảnh cũng được dùng để làm dữ liệu huấn luyện cho nhận dạng. Hai hướng phát triển song song và dùng chung nhiều nền tảng.
AI nhận dạng ảnh y khoa có thay được bác sĩ không?
Ở một số việc hẹp như khoanh vùng nghi ngờ trên phim chụp, các công cụ có thể hỗ trợ đáng kể. Nhưng chẩn đoán cần cả bệnh sử, khám lâm sàng và trách nhiệm chuyên môn. Công cụ dùng trong bệnh viện phải qua thẩm định riêng, và kết quả vẫn do bác sĩ xem xét, xác nhận.