Yolo Vision Thâm Quyến
Thâm Quyến
Tham gia ngay

Nâng cao sức mạnh cho các dự án CV với các công cụ mã nguồn mở của Hugging Face

Abirami Vina

5 phút đọc

11 tháng 2, 2025

Hãy cùng chúng tôi xem lại một bài phát biểu quan trọng từ YOLO Vision 2024 tập trung vào việc khám phá cách các công cụ mã nguồn mở của Hugging Face đang thúc đẩy sự phát triển của AI.

Lựa chọn đúng thuật toán chỉ là một phần trong việc xây dựng các giải pháp thị giác máy tính hiệu quả. Các kỹ sư AI thường làm việc với bộ dữ liệu lớn, tinh chỉnh các mô hình cho các tác vụ cụ thể và tối ưu hóa các hệ thống AI để có hiệu suất thực tế. Khi các ứng dụng AI được áp dụng nhanh hơn, nhu cầu về các công cụ đơn giản hóa các quy trình này cũng tăng lên.

Tại YOLO Vision 2024 (YV24), sự kiện kết hợp thường niên do Ultralytics tổ chức, các chuyên gia AI và những người đam mê công nghệ đã cùng nhau khám phá những đổi mới mới nhất trong thị giác máy tính. Sự kiện này đã khơi mào các cuộc thảo luận về nhiều chủ đề khác nhau, chẳng hạn như các cách để tăng tốc phát triển ứng dụng AI.

Một điểm nổi bật quan trọng từ sự kiện là bài phát biểu quan trọng về Hugging Face, một nền tảng AI mã nguồn mở giúp đơn giản hóa việc huấn luyện, tối ưu hóa và triển khai mô hình. Pavel Lakubovskii, một Kỹ sư Học máy tại Hugging Face, đã chia sẻ cách các công cụ của nó cải thiện quy trình làm việc cho các tác vụ thị giác máy tính như phát hiện các đối tượng trong hình ảnh, phân loại hình ảnh thành các nhóm khác nhau và đưa ra dự đoán mà không cần huấn luyện trước về các ví dụ cụ thể (học không cần ví dụ).

Hugging Face Hub lưu trữ và cung cấp quyền truy cập vào nhiều AI và mô hình thị giác máy tính khác nhau như Ultralytics YOLO11. Trong bài viết này, chúng ta sẽ tóm tắt những điểm chính từ bài nói chuyện của Pavel và xem cách các nhà phát triển có thể sử dụng các công cụ mã nguồn mở của Hugging Face để xây dựng và triển khai các mô hình AI một cách nhanh chóng.

Hình 1. Pavel trên sân khấu tại YV24.

Hugging Face Hub hỗ trợ phát triển AI nhanh hơn

Pavel bắt đầu bài nói chuyện của mình bằng cách giới thiệu Hugging Face như một nền tảng AI mã nguồn mở cung cấp các mô hình được huấn luyện trước cho nhiều ứng dụng khác nhau. Các mô hình này được thiết kế cho các nhánh khác nhau của AI, bao gồm xử lý ngôn ngữ tự nhiên (NLP), thị giác máy tính và AI đa phương thức, cho phép các hệ thống xử lý các loại dữ liệu khác nhau, chẳng hạn như văn bản, hình ảnh và âm thanh.

Pavel đề cập rằng Hugging Face Hub hiện đã lưu trữ hơn 1 triệu mô hình và các nhà phát triển có thể dễ dàng tìm thấy các mô hình phù hợp với các dự án cụ thể của họ. Hugging Face hướng đến việc đơn giản hóa quá trình phát triển AI bằng cách cung cấp các công cụ để huấn luyện, tinh chỉnh và triển khai mô hình. Khi các nhà phát triển có thể thử nghiệm với các mô hình khác nhau, nó sẽ đơn giản hóa quá trình tích hợp AI vào các ứng dụng thực tế.

Mặc dù Hugging Face ban đầu được biết đến với NLP, nhưng kể từ đó nó đã mở rộng sang thị giác máy tính và AI đa phương thức, cho phép các nhà phát triển giải quyết một loạt các tác vụ AI rộng hơn. Nó cũng có một cộng đồng mạnh mẽ, nơi các nhà phát triển có thể cộng tác, chia sẻ thông tin chi tiết và nhận hỗ trợ thông qua các diễn đàn, Discord và GitHub.

Khám phá các mô hình Hugging Face cho các ứng dụng thị giác máy tính

Đi sâu hơn vào chi tiết, Pavel giải thích cách các công cụ của Hugging Face giúp xây dựng các ứng dụng thị giác máy tính dễ dàng hơn. Các nhà phát triển có thể sử dụng chúng cho các tác vụ như phân loại ảnh, phát hiện đối tượng và các ứng dụng ngôn ngữ thị giác.

Ông cũng chỉ ra rằng nhiều tác vụ thị giác máy tính này có thể được xử lý bằng các mô hình được huấn luyện trước có sẵn trên Hugging Face Hub, giúp tiết kiệm thời gian bằng cách giảm nhu cầu huấn luyện từ đầu. Trên thực tế, Hugging Face cung cấp hơn 13.000 mô hình được huấn luyện trước cho các tác vụ phân loại hình ảnh, bao gồm cả các mô hình cho phân loại thực phẩm, phân loại thú cưng và phát hiện cảm xúc.

Nhấn mạnh khả năng tiếp cận của các mô hình này, ông nói, "Bạn có thể thậm chí không cần phải huấn luyện một mô hình cho dự án của mình - bạn có thể tìm thấy một mô hình trên Hub đã được huấn luyện bởi ai đó từ cộng đồng." 

Các mô hình Hugging Face để phát hiện đối tượng 

Lấy một ví dụ khác, Pavel giải thích chi tiết về cách Hugging Face có thể hỗ trợ phát hiện đối tượng, một chức năng quan trọng trong thị giác máy tính, được sử dụng để xác định và định vị các đối tượng trong ảnh. Ngay cả với dữ liệu được gắn nhãn hạn chế, các mô hình được huấn luyện trước có sẵn trên Hugging Face Hub có thể làm cho việc phát hiện đối tượng hiệu quả hơn. 

Ông cũng đưa ra một cái nhìn tổng quan nhanh về một số mô hình được xây dựng cho tác vụ này mà bạn có thể tìm thấy trên Hugging Face:

  • Mô hình phát hiện đối tượng theo thời gian thực: Đối với các môi trường động, nơi tốc độ là yếu tố then chốt, các mô hình như Detection Transformer (DETR) cung cấp khả năng phát hiện đối tượng theo thời gian thực. DETR được huấn luyện trên bộ dữ liệu COCO và được thiết kế để xử lý các đặc trưng đa tỷ lệ một cách hiệu quả, phù hợp cho các ứng dụng nhạy cảm về thời gian.
  • Mô hình ngôn ngữ thị giác (Vision-language models): Các mô hình này kết hợp xử lý hình ảnh và văn bản, giúp các hệ thống AI có thể khớp hình ảnh với mô tả hoặc nhận dạng các đối tượng vượt ra ngoài dữ liệu huấn luyện của chúng. Ví dụ bao gồm CLIP và SigLIP, giúp cải thiện khả năng tìm kiếm hình ảnh bằng cách liên kết văn bản với hình ảnh và cho phép các giải pháp AI xác định các đối tượng mới bằng cách hiểu ngữ cảnh của chúng.
  • Các mô hình phát hiện đối tượng Zero-shot: Chúng có thể xác định các đối tượng mà chúng chưa từng thấy trước đây bằng cách hiểu mối quan hệ giữa hình ảnh và văn bản. Ví dụ: OwlVit, GroundingDINO và OmDet, sử dụng học zero-shot để phát hiện các đối tượng mới mà không cần dữ liệu huấn luyện được gắn nhãn.

Cách sử dụng các mô hình Hugging Face

Sau đó, Pavel chuyển trọng tâm sang việc thực hành với các mô hình Hugging Face, giải thích ba cách mà các nhà phát triển có thể tận dụng chúng: khám phá các mô hình, nhanh chóng kiểm tra chúng và tùy chỉnh chúng hơn nữa.

Ông đã chứng minh cách các nhà phát triển có thể duyệt các mô hình trực tiếp trên Hugging Face Hub mà không cần viết bất kỳ mã nào, giúp dễ dàng kiểm tra các mô hình ngay lập tức thông qua giao diện tương tác. Pavel nói thêm: "Bạn có thể thử nó mà không cần viết một dòng mã nào hoặc tải mô hình xuống máy tính của bạn." Vì một số mô hình có kích thước lớn, việc chạy chúng trên Hub giúp tránh các giới hạn về lưu trữ và xử lý.

Hình 2. Cách sử dụng các mô hình Hugging Face.

Ngoài ra, Hugging Face Inference API cho phép các nhà phát triển chạy các mô hình AI bằng các lệnh gọi API đơn giản. Nó rất phù hợp để kiểm tra nhanh, các dự án chứng minh khái niệm và tạo mẫu nhanh mà không cần thiết lập phức tạp.

Đối với các trường hợp sử dụng nâng cao hơn, các nhà phát triển có thể sử dụng framework Hugging Face Transformers, một công cụ mã nguồn mở cung cấp các mô hình được đào tạo trước cho các tác vụ văn bản, thị giác và âm thanh đồng thời hỗ trợ cả PyTorch và TensorFlow. Pavel giải thích rằng chỉ với hai dòng mã, các nhà phát triển có thể truy xuất một mô hình từ Hugging Face Hub và liên kết nó với một công cụ tiền xử lý, chẳng hạn như bộ xử lý hình ảnh, để phân tích dữ liệu hình ảnh cho các ứng dụng Vision AI.

Tối ưu hóa quy trình làm việc AI với Hugging Face

Tiếp theo, Pavel giải thích cách Hugging Face có thể hợp lý hóa quy trình làm việc AI. Một chủ đề chính mà anh ấy đề cập là tối ưu hóa cơ chế chú ý trong Transformers, một tính năng cốt lõi của các mô hình học sâu giúp nó tập trung vào các phần liên quan nhất của dữ liệu đầu vào. Điều này cải thiện độ chính xác của các tác vụ liên quan đến xử lý ngôn ngữ và thị giác máy tính. Tuy nhiên, nó có thể tốn nhiều tài nguyên.

Tối ưu hóa cơ chế attention có thể giảm đáng kể việc sử dụng bộ nhớ đồng thời cải thiện tốc độ. Pavel chỉ ra, "Ví dụ: bằng cách chuyển sang một cách triển khai attention hiệu quả hơn, bạn có thể thấy hiệu suất nhanh hơn tới 1,8 lần."

Hugging Face cung cấp hỗ trợ tích hợp cho việc triển khai attention hiệu quả hơn trong khuôn khổ Transformers. Các nhà phát triển có thể kích hoạt các tối ưu hóa này bằng cách chỉ định một cách triển khai attention thay thế khi tải mô hình.

Optimum và Torch Compile

Ông cũng nói về lượng tử hóa, một kỹ thuật làm cho các mô hình AI nhỏ hơn bằng cách giảm độ chính xác của các con số mà chúng sử dụng mà không ảnh hưởng quá nhiều đến hiệu suất. Điều này giúp các mô hình sử dụng ít bộ nhớ hơn và chạy nhanh hơn, làm cho chúng phù hợp hơn cho các thiết bị có sức mạnh xử lý hạn chế, như điện thoại thông minh và hệ thống nhúng.

Để cải thiện hơn nữa hiệu quả, Pavel đã giới thiệu thư viện Hugging Face Optimum, một tập hợp các công cụ được thiết kế để tối ưu hóa và triển khai các mô hình. Chỉ với một vài dòng mã, các nhà phát triển có thể áp dụng các kỹ thuật lượng tử hóa và chuyển đổi các mô hình thành các định dạng hiệu quả như ONNX (Open Neural Network Exchange), cho phép chúng chạy trơn tru trên các loại phần cứng khác nhau, bao gồm máy chủ đám mây và thiết bị biên.

Hình 3. Pavel đã nói về thư viện Optimum và các tính năng của nó.

Cuối cùng, Pavel đã đề cập đến những lợi ích của Torch Compile, một tính năng trong PyTorch giúp tối ưu hóa cách các mô hình AI xử lý dữ liệu, giúp chúng chạy nhanh hơn và hiệu quả hơn. Hugging Face tích hợp Torch Compile trong các thư viện Transformers và Optimum của mình, cho phép các nhà phát triển tận dụng những cải tiến về hiệu suất này với những thay đổi mã tối thiểu. 

Bằng cách tối ưu hóa cấu trúc tính toán của mô hình, Torch Compile có thể tăng tốc thời gian suy luận và tăng tốc độ khung hình từ 29 lên 150 khung hình mỗi giây mà không ảnh hưởng đến độ chính xác hoặc chất lượng.

Triển khai các mô hình bằng các công cụ Hugging Face

Tiếp theo, Pavel đề cập ngắn gọn về cách các nhà phát triển có thể mở rộng và triển khai các mô hình Vision AI bằng các công cụ Hugging Face sau khi chọn đúng mô hình và chọn phương pháp tốt nhất để phát triển.

Ví dụ: các nhà phát triển có thể triển khai các ứng dụng AI tương tác bằng Gradio và Streamlit. Gradio cho phép các nhà phát triển tạo giao diện dựa trên web cho các mô hình học máy, trong khi Streamlit giúp xây dựng các ứng dụng dữ liệu tương tác bằng các tập lệnh Python đơn giản. 

Pavel cũng chỉ ra, "Bạn không cần phải bắt đầu viết mọi thứ từ đầu", đề cập đến các hướng dẫn, sổ tay huấn luyện và các tập lệnh ví dụ mà Hugging Face cung cấp. Những tài nguyên này giúp các nhà phát triển nhanh chóng bắt đầu mà không cần phải xây dựng mọi thứ từ đầu.

Hình 4. Pavel thảo luận về khả năng của Hugging Face tại YV24.

Lợi ích của Hugging Face Hub 

Kết thúc bài phát biểu quan trọng của mình, Pavel tóm tắt những ưu điểm của việc sử dụng Hugging Face Hub. Ông nhấn mạnh cách nó đơn giản hóa việc quản lý mô hình và cộng tác. Ông cũng lưu ý đến sự sẵn có của các hướng dẫn, notebook và tutorial, có thể giúp cả người mới bắt đầu và chuyên gia hiểu và triển khai các mô hình AI.

"Đã có rất nhiều không gian thú vị trên Hub. Bạn có thể tìm thấy những không gian tương tự, sao chép mã được chia sẻ, sửa đổi một vài dòng, thay thế mô hình bằng mô hình của riêng bạn và đẩy nó trở lại," ông giải thích, khuyến khích các nhà phát triển tận dụng tính linh hoạt của nền tảng.

Những điều cần nhớ 

Trong bài nói chuyện của mình tại YV24, Pavel đã chia sẻ cách Hugging Face cung cấp các công cụ hỗ trợ đào tạo, tối ưu hóa và triển khai mô hình AI. Ví dụ: các cải tiến như Transformers, Optimum và Torch Compile có thể giúp các nhà phát triển nâng cao hiệu suất mô hình.

Khi các mô hình AI trở nên hiệu quả hơn, những tiến bộ trong lượng tử hóa và triển khai biên đang giúp việc chạy chúng trên các thiết bị hạn chế về tài nguyên trở nên dễ dàng hơn. Những cải tiến này, kết hợp với các công cụ như Hugging Face và các mô hình thị giác máy tính tiên tiến như Ultralytics YOLO11, là chìa khóa để xây dựng các ứng dụng Vision AI có thể mở rộng, hiệu suất cao.

Tham gia cộng đồng đang phát triển của chúng tôi! Khám phá kho lưu trữ GitHub của chúng tôi để tìm hiểu về AI, đồng thời xem giấy phép yolo của chúng tôi để bắt đầu các dự án Vision AI của bạn. Bạn quan tâm đến những đổi mới như computer vision trong lĩnh vực chăm sóc sức khỏe hoặc computer vision trong nông nghiệp? Hãy truy cập các trang giải pháp của chúng tôi để khám phá thêm!

Hãy cùng nhau xây dựng tương lai
của AI!

Bắt đầu hành trình của bạn với tương lai của học máy

Bắt đầu miễn phí
Đã sao chép liên kết vào clipboard