Phân lớp ảnh sử dụng CLIP và phương pháp "zero-shot" trong nhận dạng khuôn mặt và giám sát an ninh

MỤC LỤC

Động lực nghiên cứu

Bài toán phân lớp hình ảnh sử dụng CLIP và phương pháp “zero-shot” là một bài toán đặc biệt quan trọng vì nó kết hợp khả năng hiểu hình ảnh và văn bản, và khả năng phân lớp ảnh một cách hiệu quả trong các lớp mà mô hình chưa từng thấy trong quá trình huấn luyện. Và bên cạnh đó, bài toán này không chỉ đóng góp vào sự phát triển liên tục của công nghệ hình ảnh mà còn giúp làm cho các hệ thống phân lớp hình ảnh trở nên hiệu quả hơn và phù hợp với nhiều ứng dụng đa dạng trong thế giới thực.

Phát biểu bài toán

Nó đóng vai trò quan trọng trong nhận dạng khuôn mặt, phát hiện đối tượng, và giám sát an ninh, giúp cải thiện khả năng tự động hóa và giảm thiểu sai sót trong các ứng dụng hàng ngày. Sự tiến bộ liên tục trong công nghệ hình ảnh, bao gồm sự phát triển của cảm biến hình ảnh cao cấp và ứng dụng thị giác máy tính, mở ra cơ hội cho việc phát triển các phương pháp phân lớp mạnh mẽ hơn.

Mục tiêu và phạm vi nghiên cứu Mục tiêu

● Phát triển và tinh chỉnh mô hình: Tùy thuộc vào ứng dụng cụ thể, việc phát triển và tinh chỉnh mô hình CLIP có thể đòi hỏi kiến thức sâu rộng về học máy và thị giác máy tính. ● Phân tích sâu về CLIP và Zero-shot learning: Điều tra các khía cạnh lý thuyết của mụ hỡnh CLIP và phương phỏp zero-shot learning để hiểu rừ cơ chế hoạt động và ưu điểm của chúng trong việc xử lý ảnh.

Đóng góp của nghiên cứu

● Xây dựng ứng dụng: Phát triển một ứng dụng thực tế sử dụng mô hình phân lớp để phân loại hình ảnh theo các lớp không được học trước. ● Đánh giá hiệu quả ứng dụng: Đánh giá hiệu quả và khả năng chấp nhận của ứng dụng trong các tình huống thực tế, đánh giá dựa trên phản hồi từ người dùng.

TRIỂN KHAI ỨNG DỤNG: trình bày các công cụ, thiết kế, giao diện và quá trình xây dựng và phát triển ứng dụng tích hợp mô hình phân lớp hình

CLIP 1. Vấn đề tồn tại

    Mặc dù học sâu đã có những cuộc cách mạng trong lĩnh vực thị giác máy tính nhưng các phương pháp hiện tại vẫn gặp một số vấn đề lớn: các tập dữ liệu điển hình tốn nhiều công sức và chi phí để tạo ra và chỉ huấn luyện trên một tập hình ảnh nhỏ;. ● Xác định hàm mất mát: Mục tiêu của contrastive learning là tối đa hóa sự tương phản giữa các cặp dữ liệu tương tự và tối thiểu hóa sự tương phản giữa các cặp dữ liệu khác nhau. ● Mô hình được điều chỉnh sao cho sự tương đồng giữa các cặp văn bản – hình ảnh giống nhau tăng lên và sự tương đồng giữa các cặp văn bản – hình ảnh không giống nhau giảm đi.

    Quá trình này giúp mô hình học được một không gian ảnh biểu diễn chung mà trong đó các cặp văn bản – hình ảnh tương đồng sẽ có khoảng cách gần nhau, trong khi các cặp không giống nhau sẽ có khoảng cách xa nhau.

    Hình 2.2. Kiến trúc Contrastive Learning [2]
    Hình 2.2. Kiến trúc Contrastive Learning [2]

    Zero-shot 1. Giới thiệu

      Điều này rất hữu ích khi chúng ta muốn mở rộng khả năng phân loại của mô hình cho các lớp chưa từng thấy trước đó hoặc trong trường hợp không có đủ dữ liệu huấn luyện cho các lớp mới. ● Huấn luyện với thông tin phụ trợ: Trong zero-shot learning, quá trình huấn luyện bao gồm việc sử dụng thông tin phụ trợ như các đặc trưng, thuộc tính hoặc mô tả của các lớp. ● Đo khoảng cách hoặc tính độ tương đồng: Khi muốn phân loại một mẫu mới, mô hình sẽ đo khoảng cách hoặc tính độ tương đồng giữa mẫu và các vector thuộc tính hoặc nhúng của các lớp đã biết.

      ▪ Đo khoảng cách hoặc tính độ tương đồng: Khi muốn phân loại một mẫu mới thuộc vào lớp chưa từng được huấn luyện, mô hình zero- shot sẽ sử dụng thông tin về văn bản và hình ảnh để đo khoảng cách hoặc tính độ tương đồng giữa mẫu và các lớp đã biết.

      Hình 2.3. Zero-shot classifier [2]
      Hình 2.3. Zero-shot classifier [2]

      Lưu mô hình

        Các tác giả đã thực hiện phân tích học biểu diễn bằng phương pháp "linear-probe" để chỉ ra rằng CLIP có hiệu quả tính toán cao hơn so với các mô hình ImageNet tốt nhất hiện đang có mặt trên thị trường. Ngoài ra, họ phát hiện ra rằng các mô hình CLIP zero-shot có độ ổn định cao hơn nhiều so với các mô hình giám sát ImageNet có độ chính xác tương đương; điều này cho thấy rằng việc đánh giá của các mô hình zero-shot không phụ thuộc vào công việc cụ thể mang lại sự đại diện cao hơn về khả năng của mô hình.[4]. Do học được một loạt rộng lớn các khái niệm hình ảnh trực tiếp từ ngôn ngữ tự nhiên, các mô hình CLIP đáng kể linh hoạt và tổng quát hơn so với các mô hình ImageNet hiện có.

        Trên một bộ gồm 27 bộ dữ liệu đo lường các nhiệm vụ như phân loại đối tượng chi tiết, OCR, nhận dạng hoạt động trong video và bản địa hóa, các tác giả nhận thấy rằng các mô hình CLIP tìm hiểu cách biểu diễn hình ảnh hữu ích rộng rãi hơn.

        Hình 2.4. CLIP có tính hiệu quả cao [4]
        Hình 2.4. CLIP có tính hiệu quả cao [4]

        Công cụ phát triển 1. Công cụ lập trình

        • Công cụ deploy

          ● Đa nền tảng và truy cập trực tuyến: Figma hoạt động dựa trên web, điều này có nghĩa bạn có thể truy cập và làm việc trên các nền tảng khác nhau như Windows, macOS, Linux, hoặc thiết bị di động mà không cần cài đặt phần mềm. GitHub là một trong những nền tảng phát triển phần mềm hàng đầu trên thế giới, nơi mà các nhà phát triển, doanh nghiệp và cộng đồng có thể làm việc cùng nhau để quản lý mó nguồn, theo dừi thay đổi, và hợp tỏc trong việc phỏt triển phần mềm. Ngoài việc lưu trữ mã nguồn, GitHub còn hỗ trợ tích hợp liên tục (Continuous Integration) và cung cấp nhiều dịch vụ hỗ trợ phát triển ứng dụng, giúp người dùng xõy dựng, triển khai, và theo dừi dự ỏn của họ một cỏch hiệu quả.

          Dưới đây là một số đặc điểm và ưu điểm của React Native: đa nền tảng, sử dụng JavaScript, hiệu suất cao, tái sử dụng mã nguồn, cộng đồng lớn và hỗ trợ mạnh mẽ, Hot Reload và Fast Development, cung cấp module thư viện phong phú, tiết kiệm thời gian và nguồn lực, tích hợp dễ dàng với mã nguồn tồn tại, cập nhật nhanh chóng, tương thích ngược.

          Hình 3.2. Figma
          Hình 3.2. Figma

          Thiết kế

          • Giao diện

            Kiến trúc client-server có thể được triển khai trong nhiều lĩnh vực và ứng dụng, bao gồm các hệ thống web, ứng dụng di động, trò chơi trực tuyến, hệ thống quản lý cơ sở dữ liệu, và nhiều hơn nữa. ● Khi người dùng tương tác với ứng dụng, ví dụ như gửi một yêu cầu để nhận dữ liệu từ Docker Hub của Hugging Face thì nó sẽ sử dụng các thư viện HTTP như Axios hoặc Fetch để gửi yêu cầu đến server. ● Khi sử dụng Docker Hub của Hugging Face làm phần server thì ta có thể tận dụng các container Docker có sẵn để xử lý logic và cung cấp các dịch vụ như xử lý ngôn ngữ tự nhiên, dịch thuật, sinh văn bản, và nhiều hơn nữa.

            Bằng cách gửi các yêu cầu HTTP đến API của Docker Hub, chúng ta có thể truy cập các container Docker đã được triển khai đúng để thực hiện các tác vụ như dự đoán, phân loại hoặc xử lý ngôn ngữ tự nhiên.

            Hình 3.8. Màn hình chính
            Hình 3.8. Màn hình chính

            Hướng dẫn

            2 “Nhãn dự đoán” Text Hiển thị tên lớp của hình ảnh đã tải lên để dự đoán. Bước 2: Nhấn vào nút “Upload file” để upload ảnh đã có sẵn trên thiết bị hoặc chụp ảnh để thực hiện bước tiếp theo. Bước 3: Sau khi đã có file ảnh thì nhấn nút “Submit” để thực hiện việc phân loại ảnh.

            Bước 4: Sau đó, kết quả sẽ hiển thị ở màn hình tiếp theo cùng bức ảnh vừa upload hoặc vừa chụp.

            Đánh giá

              Nghiên cứu này trình bày bài toán phân lớp hình ảnh sử dụng CLIP và phương pháp zero-shot đã cho thấy sự kết hợp giữa khả năng hiểu văn bản và hình ảnh của mô hình CLIP cùng với khả năng zero-shot learning đã tạo ra một phương pháp mạnh mẽ cho việc phân lớp hình ảnh theo cách chưa từng có trước đây. Tuy nhiên, còn nhiều thách thức bao gồm hiểu ngôn ngữ và ngữ cảnh phức tạp, quản lý dữ liệu chưa gán nhãn, và cải thiện hiệu suất tính toán cần phải vượt qua. Việc nghiên cứu và phát triển tiếp theo trong lĩnh vực này sẽ đóng vai trò quan trọng trong việc giải quyết những thách thức này và nâng cao khả năng của mô hình.

              Tóm lại, bài toán phân lớp hình ảnh sử dụng CLIP và phương pháp zero-shot hứa hẹn là một công cụ quan trọng trong trí tuệ nhân tạo và có thể thúc đẩy nhiều ứng dụng mới trong tương lai.