Link to this sectionTì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 (computer vision) trên các thiết bị có khả năng tính toán hạn chế, chẳng hạn như thiết bị di động hoặc hệ thống nhúng, có thể gặp nhiều khó khăn. Sử dụng định dạng model được tối ưu hóa để có hiệu suất nhanh hơn sẽ giúp đơn giản hóa quy trình này. Định dạng model TensorFlow Lite Edge TPU hay TFLite Edge TPU được thiết kế để tiêu thụ ít năng lượng trong khi vẫn mang lại hiệu suất nhanh chóng cho các mạng thần kinh (neural networks).
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 để đạt tốc độ cao và tiêu thụ điện năng thấp trong quá trình suy luận (inference). Trong hướng dẫn này, chúng tôi sẽ giúp bạn chuyển đổi các model của mình sang định dạng TFLite Edge TPU, giúp việc triển khai trên nhiều thiết bị di động và thiết bị nhúng trở nên dễ dàng hơn.
Link to this sectionTại sao bạn nên xuất sang TFLite Edge TPU?#
Xuất 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ó giới hạn về năng lượng, tài nguyên tính toán và khả năng kết nối. Edge TPU là 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 (edge devices). Hình ảnh dưới đây minh họa một ví dụ về quy trình này.
Edge TPU hoạt động với các model đã được định lượng (quantized). Định lượng giúp model trở nên nhỏ hơn và nhanh hơn mà không làm giảm đáng kể accuracy. Đây là giải pháp lý tưởng cho các tài nguyên hạn chế trong điện toán biên (edge computing), cho phép các ứng dụng phản hồi nhanh chóng bằng cách giảm độ trễ và hỗ trợ xử lý dữ liệu tại chỗ mà không phụ thuộc vào đám mây. Việc xử lý tại chỗ cũng giúp bảo mật và riêng tư dữ liệu người dùng vì dữ liệu không bị gửi đến máy chủ từ xa.
Link to this sectionCá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 suất tối ưu trên thiết bị biên: TFLite Edge TPU đạt hiệu suất mạng thần kinh tốc độ cao thông qua việc định lượng, 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 giúp model có kích thước nhỏ hơn và tiết kiệm 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 thông lượng tính toán cao. Nó rất phù hợp để triển khai các model machine learning có yêu cầu hiệu suất khắt khe 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 phép tính neural network. Hiệu suất 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 ma trận và biến đổi phức tạp.
Link to this sectionCác tùy chọn triển khai với TFLite Edge TPU#
Trước khi bắt đầu cách xuất model YOLO26 sang định dạng TFLite Edge TPU, hãy cùng 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 cho các model machine learning, bao gồm:
-
Triển khai trên thiết bị (On-Device Deployment): Các model TensorFlow Edge TPU có thể được triển khai trực tiếp trên thiết bị di động và thiết bị nhúng. Việc triển khai tại thiết bị cho phép model thực thi trực tiếp trên phần cứng, loại bỏ nhu cầu kết nối đám mây, thông qua việc 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 TPUs: Trong các tình huống thiết bị biên có khả năng xử lý hạn chế, TensorFlow Edge TPUs có thể giảm tải các tác vụ suy luận sang các máy chủ đám mây được trang bị TPU.
-
Triển khai lai (Hybrid Deployment): Phương pháp tiếp cận lai kết hợp giữa triển khai trên thiết bị và trên đám mây, 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à cloud computing để thực hiện các phép tính phức tạp hơn.
Link to this sectionXuất 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 trong triển khai model bằng cách chuyển đổi các model YOLO26 sang TensorFlow Edge TPU.
Link to this sectionCài đặt#
Để cài đặt gói cần thiết, 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 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 khi cài đặt các gói cần thiết cho YOLO26, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo Hướng dẫn các vấn đề thường gặp để tìm giải pháp và mẹo.
Link to this sectionCá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.
Định dạng TFLite Edge TPU hỗ trợ các chế độ Export, Predict và Validate. Quá trình suy luận và xác thực chạy trên phần cứng Coral Edge TPU. Hãy xuất model của bạn, sau đó tải model đã xuất để chạy suy luận hoặc xác thực độ chính xác của nó.
from ultralytics import YOLO
# Load a 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'from ultralytics import YOLO
# Load the exported TFLite Edge TPU model
model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TFLite Edge TPU model
model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Link to this sectionĐối số xuất#
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
format | str | 'edgetpu' | Định dạng đích cho model được 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ể. |
quantize | int hoặc str | 8/auto | Độ chính xác lượng tử hóa. 8 (INT8) là bắt buộc và được tự động kích hoạt cho Edge TPU, giúp nén model và tăng tốc độ suy luận với mức sụt giảm accuracy tối thiểu trên các thiết bị edge. Thay thế cho các cờ half/int8 đã lỗi thời. |
data | str | 'coco8.yaml' | Đường dẫn đến tệp cấu hình dataset (mặc định: coco8.yaml), cần thiết cho việc lượng tử hóa (quantization). |
fraction | float | 1.0 | Chỉ định phân đoạn của dataset để 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 hợp con của toàn bộ dataset, hữu ích cho các thử nghiệm hoặc khi tài nguyên 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 Linux x86 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 của Ultralytics về việc xuất.
Link to this sectionTriển khai các model YOLO26 TFLite Edge TPU đã xuất#
Sau khi xuất thành công các model Ultralytics YOLO26 sang định dạng TFLite Edge TPU, giờ đây bạn có thể triển khai chúng. Bước đầu tiên quan trọng và được khuyến nghị để chạy 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, để biết 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 TPUs với Raspberry Pi để nâng cao khả năng machine learning.
-
Ví dụ về mã nguồn: Truy cập các ví dụ triển khai TensorFlow Edge TPU thực tế để khởi động các dự án của bạn.
-
Chạy suy luận trên Edge TPU với Python: Tìm hiểu cách sử dụng API Python 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.
Link to this sectionTóm tắt#
Trong hướng dẫn này, chúng ta đã tìm hiểu cách xuất các model Ultralytics YOLO26 sang định dạng TFLite Edge TPU. Bằng cách thực hiện theo các bước nêu trên, bạn có thể tăng tốc độ và sức mạnh cho các ứng dụng computer vision 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. Tại đó, bạn sẽ khám phá được nhiều tài nguyên và thông tin giá trị.
Link to this sectionCâu hỏi thường gặp#
Link to this sectionLàm cách nào để xuất model YOLO26 sang định dạng TFLite Edge TPU?#
Để xuấ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 a 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.
Link to this sectionLợi ích của việc xuất model YOLO26 sang TFLite Edge TPU là gì?#
Việc xuất model YOLO26 sang TFLite Edge TPU mang lại một số lợi ích:
- Hiệu suất tối ưu: Đạt được hiệu suất mạng thần kinh tốc độ cao với mức tiêu thụ điện nă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 đám mây.
- Tăng cường quyền riêng tư: Xử lý cục bộ giữ cho dữ liệu người dùng được 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 edge computing, nơi các thiết bị có hạn chế về năng lượng và tài nguyên tính toán. Tìm hiểu thêm về lý do tại sao bạn nên xuất.
Link to this sectionTô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 thiết bị di động và thiết bị 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.
Link to this sectionMộ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 model TFLite Edge TPU bao gồm:
- Camera thông minh: Nâng cao 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 ngôi 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à 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 suất 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.
Link to this sectionLàm cách nào để khắc phục sự cố 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 Các lỗi thường gặp 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 đề và giải pháp phổ biến giúp bạn đảm bảo quá trình vận hành diễn ra suôn sẻ. Để được hỗ trợ thêm, hãy truy cập Trung tâm Trợ giúp của chúng tôi.