Thuật ngữ

Công cụ suy luận

Khám phá cách công cụ suy luận hỗ trợ AI bằng cách đưa ra dự đoán theo thời gian thực, tối ưu hóa mô hình và cho phép triển khai đa nền tảng.

Xe lửa YOLO mô hình đơn giản
với Ultralytics TRUNG TÂM

Tìm hiểu thêm

Trong lĩnh vực trí tuệ nhân tạo (AI)học máy (ML) , công cụ suy luận là một thành phần phần mềm hoặc phần cứng quan trọng chịu trách nhiệm thực thi các mô hình đã được đào tạo để đưa ra dự đoán về dữ liệu mới, chưa từng thấy. Sau khi một mô hình đã học được các mẫu trong giai đoạn đào tạo, công cụ suy luận sẽ lấy mô hình đã được đào tạo này và áp dụng nó vào các đầu vào trong thế giới thực. Quá trình này, được gọi là suy luận, cho phép các hệ thống AI thực hiện các tác vụ như phát hiện đối tượng , phân loại hình ảnh hoặc xử lý ngôn ngữ tự nhiên (NLP) trong các ứng dụng thực tế. Về cơ bản, đây là trái tim hoạt động của một mô hình AI được triển khai, chuyển đổi kiến thức đã học thành đầu ra có thể hành động một cách hiệu quả.

Cách thức hoạt động của công cụ suy luận

Công cụ suy luận sử dụng mô hình được đào tạo trước, thường được phát triển bằng các khuôn khổ học sâu (DL) như PyTorch hoặc TensorFlow , đóng gói kiến thức cần thiết cho một tác vụ cụ thể. Khi dữ liệu mới (ví dụ: hình ảnh, clip âm thanh hoặc câu văn bản) được cung cấp làm đầu vào, công cụ suy luận sẽ xử lý dữ liệu đó thông qua cấu trúc tính toán của mô hình (thường là mạng nơ-ron ). Điều này tạo ra đầu ra, chẳng hạn như xác định các đối tượng có hộp giới hạn trong hình ảnh, phiên âm giọng nói hoặc phân loại cảm xúc. Ví dụ, các mô hình YOLO Ultralytics phụ thuộc vào các công cụ suy luận hiệu quả để đạt được khả năng phát hiện và phân đoạn đối tượng theo thời gian thực trên nhiều nền tảng khác nhau, từ các máy chủ đám mây mạnh mẽ đến các thiết bị biên bị hạn chế về tài nguyên. Hiệu suất của công cụ suy luận ảnh hưởng trực tiếp đến tốc độ và khả năng phản hồi của ứng dụng, thường được đo bằng độ trễ suy luận và thông lượng.

Tối ưu hóa và các tính năng chính

Một vai trò quan trọng của các công cụ suy luận hiện đại là tối ưu hóa. Chạy trực tiếp một mô hình học sâu lớn đã được đào tạo có thể tốn kém về mặt tính toán và chậm. Các công cụ suy luận sử dụng nhiều kỹ thuật khác nhau để làm cho các mô hình nhanh hơn và hiệu quả hơn, cho phép triển khai trên nhiều phần cứng khác nhau. Các chiến lược tối ưu hóa mô hình phổ biến bao gồm:

  • Lượng tử hóa mô hình : Giảm độ chính xác của trọng số mô hình (ví dụ: từ số dấu phẩy động 32 bit xuống số nguyên 8 bit) để giảm kích thước mô hình và tăng tốc độ tính toán, thường có tác động tối thiểu đến độ chính xác .
  • Cắt tỉa mô hình : Loại bỏ các kết nối dư thừa hoặc không quan trọng (trọng số) trong mạng nơ-ron để tạo ra một mô hình nhỏ hơn, nhanh hơn.
  • Tối ưu hóa đồ thị: Kết hợp các lớp hoặc sắp xếp lại các hoạt động trong đồ thị tính toán của mô hình để cải thiện hiệu quả thực hiện trên phần cứng cụ thể.
  • Tăng tốc phần cứng: Tận dụng các bộ xử lý chuyên dụng như GPU , TPU hoặc bộ tăng tốc AI chuyên dụng có trên các thiết bị như Google Edge TPU hoặc NVIDIA Jetson .

Nhiều công cụ suy luận cũng hỗ trợ các định dạng mô hình chuẩn hóa như ONNX (Open Neural Network Exchange) , cho phép các mô hình được đào tạo trong một khuôn khổ (như PyTorch ) được chạy bằng một công cụ hoặc nền tảng khác. Các công cụ suy luận phổ biến bao gồm NVIDIA TensorRT , OpenVINO của IntelTensorFlow Lite . Ultralytics các mô hình hỗ trợ xuất sang nhiều định dạng tương thích với các công cụ này, được nêu chi tiết trong hướng dẫn Tùy chọn triển khai mô hình .

Công cụ suy luận so với Khung đào tạo

Điều quan trọng là phải phân biệt công cụ suy luận với khuôn khổ đào tạo.

  • Khung đào tạo (ví dụ: PyTorch , TensorFlow , Keras ): Đây là các thư viện toàn diện được sử dụng để xây dựng, đào tạo và xác thực các mô hình học máy. Chúng cung cấp các công cụ để xác định kiến trúc mạng, triển khai truyền ngược , quản lý tập dữ liệu và tính toán các hàm mất mát . Trọng tâm là tính linh hoạt và quá trình học.
  • Công cụ suy luận (ví dụ: TensorRT , OpenVINO , ONNX Runtime): Đây là các công cụ chuyên dụng được thiết kế để chạy các mô hình được đào tạo trước một cách hiệu quả cho các tác vụ dự đoán ( triển khai mô hình ). Trọng tâm chính của chúng là tối ưu hóa tốc độ ( độ trễ thấp ), sử dụng bộ nhớ thấp và khả năng tương thích với phần cứng mục tiêu. Chúng thường lấy các mô hình được đào tạo bằng cách sử dụng các khuôn khổ và chuyển đổi chúng thành định dạng được tối ưu hóa.

Ứng dụng trong thế giới thực

Công cụ suy luận rất quan trọng để triển khai AI trong các tình huống thực tế:

  1. Xe tự hành : Xe tự lái ( như xe do Waymo phát triển ) phụ thuộc rất nhiều vào các công cụ suy luận hiệu quả chạy trên phần cứng nhúng ( như nền tảng NVIDIA Jetson ) để xử lý dữ liệu cảm biến (camera, LiDAR) theo thời gian thực. Các công cụ tối ưu hóa các mô hình thị giác máy tính phức tạp như YOLO cho các tác vụ như phát hiện đối tượng (phát hiện ô tô, người đi bộ, biển báo) và phân đoạn ngữ nghĩa (hiểu bố cục đường bộ) với độ trễ tối thiểu, điều này rất quan trọng đối với sự an toàn. Khám phá thêm về AI trong các giải pháp ô tô .
  2. Phân tích hình ảnh y tế : Công cụ suy luận đẩy nhanh quá trình phân tích các bản quét y tế (X-quang, CT, MRI) cho các nhiệm vụ như phát hiện khối u ( xem Bộ dữ liệu khối u não ) hoặc các bất thường. Các mô hình được tối ưu hóa triển khai thông qua công cụ suy luận có thể chạy nhanh trên máy chủ bệnh viện hoặc các thiết bị y tế chuyên dụng, hỗ trợ các bác sĩ X quang ( đọc về AI trong X quang ) bằng cách cung cấp chẩn đoán nhanh hơn hoặc ý kiến thứ hai. Kiểm tra AI trong các giải pháp chăm sóc sức khỏe .

Về bản chất, các công cụ suy luận thu hẹp khoảng cách giữa các mô hình AI được đào tạo và ứng dụng thực tế của chúng, đảm bảo rằng các khả năng AI phức tạp có thể được cung cấp hiệu quả trên nhiều thiết bị và nền tảng khác nhau, bao gồm quản lý các mô hình thông qua các nền tảng như Ultralytics HUB .

Đọc tất cả