Tìm hiểu cách xuất sang định dạng TFLite Edge TPU từ model YOLO26
Việc triển khai các model thị giác máy tính trên các thiết bị có sức mạnh tính toán hạn chế, như thiết bị di động hoặc hệ thống nhúng, có thể khá phức tạp. Sử dụng một định dạng model được tối ưu hóa cho hiệu năng nhanh hơn sẽ giúp đơn giản hóa quy trình này. Định dạng model TensorFlow Lite Edge TPU hoặc TFLite Edge TPU được thiết kế để sử dụng năng lượng tối thiểu trong khi vẫn mang lại hiệu năng nhanh chóng cho các mạng thần kinh.
Tính năng xuất sang định dạng TFLite Edge TPU cho phép bạn tối ưu hóa các model Ultralytics YOLO26 của mình để suy luận tốc độ cao và tiêu thụ điện năng thấp. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cách chuyển đổi các model của mình sang định dạng TFLite Edge TPU, giúp các model của bạn hoạt động hiệu quả hơn trên nhiều thiết bị di động và nhúng khác nhau.
Tại sao bạn nên xuất sang TFLite Edge TPU?
Việc xuất các model sang TensorFlow Edge TPU giúp các tác vụ machine learning trở nên nhanh chóng và hiệu quả. Công nghệ này phù hợp với các ứng dụng có năng lượng, tài nguyên tính toán và kết nối hạn chế. Edge TPU là một bộ tăng tốc phần cứng của Google. Nó giúp tăng tốc các model TensorFlow Lite trên các thiết bị biên. Hình ảnh bên dưới minh họa một ví dụ về quy trình này.
Edge TPU hoạt động với các model được lượng tử hóa. Lượng tử hóa giúp các model trở nên nhỏ gọn và nhanh hơn mà không làm mất quá nhiều độ chính xác. Đây là giải pháp lý tưởng cho các nguồn tài nguyên hạn chế của điện toán biên, cho phép các ứng dụng phản hồi nhanh chóng bằng cách giảm độ trễ và cho phép xử lý dữ liệu nhanh chóng tại chỗ, không cần phụ thuộc vào cloud. Việc xử lý cục bộ cũng giúp dữ liệu người dùng được riêng tư và bảo mật vì nó không được gửi đến máy chủ từ xa.
Các tính năng chính của TFLite Edge TPU
Dưới đây là các tính năng chính khiến TFLite Edge TPU trở thành lựa chọn định dạng model tuyệt vời cho các nhà phát triển:
-
Hiệu năng được tối ưu hóa trên các thiết bị biên: TFLite Edge TPU đạt được hiệu năng mạng thần kinh tốc độ cao thông qua lượng tử hóa, tối ưu hóa model, tăng tốc phần cứng và tối ưu hóa trình biên dịch. Kiến trúc tối giản của nó góp phần tạo nên kích thước nhỏ gọn và hiệu quả về chi phí.
-
Thông lượng tính toán cao: TFLite Edge TPU kết hợp khả năng tăng tốc phần cứng chuyên dụng và thực thi runtime hiệu quả để đạt được thông lượng tính toán cao. Nó rất phù hợp để triển khai các model machine learning với các yêu cầu hiệu năng nghiêm ngặt trên các thiết bị biên.
-
Tính toán ma trận hiệu quả: TensorFlow Edge TPU được tối ưu hóa cho các phép toán ma trận, vốn rất quan trọng đối với các tính toán mạng thần kinh. Hiệu quả này là yếu tố then chốt trong các model machine learning, đặc biệt là những model yêu cầu nhiều phép nhân và biến đổi ma trận phức tạp.
Các tùy chọn triển khai với TFLite Edge TPU
Trước khi đi sâu vào cách xuất các model YOLO26 sang định dạng TFLite Edge TPU, hãy tìm hiểu xem các model TFLite Edge TPU thường được sử dụng ở đâu.
TFLite Edge TPU cung cấp nhiều tùy chọn triển khai khác nhau cho các model machine learning, bao gồm:
-
Triển khai trên thiết bị (On-Device): Các model TensorFlow Edge TPU có thể được triển khai trực tiếp trên các thiết bị di động và nhúng. Việc triển khai trên thiết bị cho phép các model thực thi trực tiếp trên phần cứng, loại bỏ nhu cầu kết nối với cloud, bằng cách nhúng model vào gói ứng dụng hoặc tải xuống theo yêu cầu.
-
Điện toán biên với Cloud TensorFlow TPU: Trong các tình huống mà thiết bị biên có khả năng xử lý hạn chế, TensorFlow Edge TPU có thể giảm tải các tác vụ suy luận cho các máy chủ cloud được trang bị TPU.
-
Triển khai lai (Hybrid Deployment): Phương pháp lai kết hợp giữa triển khai trên thiết bị và cloud, mang lại giải pháp linh hoạt và có khả năng mở rộng để triển khai các model machine learning. Các ưu điểm bao gồm xử lý trên thiết bị để phản hồi nhanh và điện toán đám mây cho các phép tính phức tạp hơn.
Xuất các model YOLO26 sang TFLite Edge TPU
Bạn có thể mở rộng khả năng tương thích và tính linh hoạt khi triển khai model bằng cách chuyển đổi các model YOLO26 sang TensorFlow Edge TPU.
Cài đặt
Để cài đặt gói yêu cầu, hãy chạy:
# Install the required package for YOLO26
pip install ultralyticsĐể biết hướng dẫn chi tiết và các phương pháp thực hành tốt nhất liên quan đến quy trình cài đặt, hãy xem hướng dẫn Cài đặt Ultralytics của chúng tôi. Trong quá trình cài đặt các gói cần thiết cho YOLO26, nếu gặp bất kỳ khó khăn nào, hãy tham khảo hướng dẫn về các vấn đề phổ biến để tìm giải pháp và mẹo xử lý.
Cách sử dụng
Tất cả các mô hình Ultralytics YOLO26 đều được thiết kế để hỗ trợ xuất ngay lập tức, giúp dễ dàng tích hợp chúng vào quy trình triển khai ưa thích của bạn. Bạn có thể xem danh sách đầy đủ các định dạng xuất và tùy chọn cấu hình được hỗ trợ để chọn thiết lập tốt nhất cho ứng dụng của mình.
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")Các đối số Xuất
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
format | str | 'edgetpu' | Định dạng mục tiêu cho model đã xuất, xác định khả năng tương thích với các môi trường triển khai khác nhau. |
imgsz | int hoặc tuple | 640 | Kích thước hình ảnh mong muốn cho đầu vào của model. Có thể là một số nguyên cho hình ảnh vuông hoặc một tuple (height, width) cho các kích thước cụ thể. |
int8 | bool | True | Kích hoạt lượng tử hóa INT8, nén model thêm nữa và tăng tốc suy luận với mức giảm độ chính xác tối thiểu, chủ yếu cho các thiết bị biên. |
data | str | 'coco8.yaml' | Đường dẫn đến tệp cấu hình dataset (mặc định: coco8.yaml), rất cần thiết cho việc lượng tử hóa (quantization). |
fraction | float | 1.0 | Chỉ định phần trăm dataset cần sử dụng cho hiệu chuẩn lượng tử hóa INT8. Cho phép hiệu chuẩn trên một tập con của toàn bộ dataset, hữu ích cho các thử nghiệm hoặc khi tài nguyên bị hạn chế. Nếu không được chỉ định trong khi INT8 đã được bật, toàn bộ dataset sẽ được sử dụng. |
device | str | None | Chỉ định thiết bị để xuất: CPU (device=cpu). |
Vui lòng đảm bảo sử dụng máy x86 Linux khi xuất sang EdgeTPU.
Để biết thêm chi tiết về quy trình xuất, hãy truy cập trang tài liệu Ultralytics về xuất model.
Triển khai các model TFLite Edge TPU YOLO26 đã xuất
Sau khi xuất thành công các model Ultralytics YOLO26 của bạn sang định dạng TFLite Edge TPU, giờ đây bạn có thể triển khai chúng. Bước đầu tiên chính và được khuyến nghị để chạy một model TFLite Edge TPU là sử dụng phương thức YOLO("model_edgetpu.tflite"), như đã nêu trong đoạn mã sử dụng trước đó.
Tuy nhiên, để có hướng dẫn chuyên sâu về việc triển khai các model TFLite Edge TPU của bạn, hãy xem qua các tài nguyên sau:
-
Coral Edge TPU trên Raspberry Pi với Ultralytics YOLO26: Khám phá cách tích hợp Coral Edge TPU với Raspberry Pi để tăng cường khả năng học máy.
-
Ví dụ mã: Truy cập các ví dụ triển khai TensorFlow Edge TPU thực tế để bắt đầu các dự án của bạn.
-
Chạy suy luận trên Edge TPU với Python: Khám phá cách sử dụng API Python của TensorFlow Lite cho các ứng dụng Edge TPU, bao gồm các hướng dẫn thiết lập và sử dụng.
Tóm tắt
Trong hướng dẫn này, chúng tôi đã tìm hiểu cách xuất các model Ultralytics YOLO26 sang định dạng TFLite Edge TPU. Bằng cách làm theo các bước đã đề cập ở trên, bạn có thể tăng tốc độ và sức mạnh cho các ứng dụng thị giác máy tính của mình.
Để biết thêm chi tiết về cách sử dụng, hãy truy cập trang web chính thức của Edge TPU.
Ngoài ra, để biết thêm thông tin về các tích hợp Ultralytics YOLO26 khác, vui lòng truy cập trang hướng dẫn tích hợp của chúng tôi. Ở đó, bạn sẽ khám phá được những tài nguyên và thông tin chuyên sâu có giá trị.
Câu hỏi thường gặp (FAQ)
Làm cách nào để tôi xuất một model YOLO26 sang định dạng TFLite Edge TPU?
Để xuất một model YOLO26 sang định dạng TFLite Edge TPU, bạn có thể làm theo các bước sau:
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")Để biết chi tiết đầy đủ về việc xuất model sang các định dạng khác, hãy tham khảo hướng dẫn xuất của chúng tôi.
Lợi ích của việc xuất các model YOLO26 sang TFLite Edge TPU là gì?
Việc xuất các model YOLO26 sang TFLite Edge TPU mang lại một số lợi ích:
- Hiệu năng được tối ưu hóa: Đạt được hiệu năng mạng thần kinh tốc độ cao với mức tiêu thụ năng lượng tối thiểu.
- Giảm độ trễ: Xử lý dữ liệu cục bộ nhanh chóng mà không cần phụ thuộc vào cloud.
- Tăng cường quyền riêng tư: Xử lý cục bộ giúp giữ dữ liệu người dùng riêng tư và bảo mật.
Điều này làm cho nó trở nên lý tưởng cho các ứng dụng trong điện toán biên, nơi các thiết bị có nguồn năng lượng và tài nguyên tính toán hạn chế. Tìm hiểu thêm về lý do tại sao bạn nên xuất.
Tôi có thể triển khai các model TFLite Edge TPU trên thiết bị di động và thiết bị nhúng không?
Có, các model TensorFlow Lite Edge TPU có thể được triển khai trực tiếp trên các thiết bị di động và nhúng. Phương pháp triển khai này cho phép các model thực thi trực tiếp trên phần cứng, mang lại khả năng suy luận nhanh hơn và hiệu quả hơn. Để biết ví dụ về tích hợp, hãy xem hướng dẫn triển khai Coral Edge TPU trên Raspberry Pi của chúng tôi.
Một số trường hợp sử dụng phổ biến cho các model TFLite Edge TPU là gì?
Các trường hợp sử dụng phổ biến cho các model TFLite Edge TPU bao gồm:
- Camera thông minh: Tăng cường khả năng phân tích hình ảnh và video thời gian thực.
- Thiết bị IoT: Cho phép tự động hóa nhà thông minh và công nghiệp.
- Chăm sóc sức khỏe: Tăng tốc chẩn đoán và xử lý hình ảnh y tế.
- Bán lẻ: Cải thiện quản lý hàng tồn kho và phân tích hành vi khách hàng.
Những ứng dụng này được hưởng lợi từ hiệu năng cao và mức tiêu thụ năng lượng thấp của các model TFLite Edge TPU. Khám phá thêm về các kịch bản sử dụng.
Làm cách nào tôi có thể khắc phục các vấn đề trong khi xuất hoặc triển khai các model TFLite Edge TPU?
Nếu bạn gặp sự cố khi xuất hoặc triển khai các model TFLite Edge TPU, hãy tham khảo hướng dẫn về các vấn đề phổ biến của chúng tôi để biết các mẹo khắc phục sự cố. Hướng dẫn này bao gồm các vấn đề thường gặp và giải pháp giúp bạn đảm bảo quá trình vận hành suôn sẻ. Để được hỗ trợ thêm, hãy truy cập Trung tâm hỗ trợ của chúng tôi.