Model Weights
Tìm hiểu cách model weights đóng vai trò như tri thức của AI. Khám phá cách Ultralytics YOLO26 sử dụng weight được tối ưu để training và inference nhanh, chính xác hơn.
Trọng số model là các tham số có thể học bên trong một model machine learning, dùng để biến đổi dữ liệu đầu vào thành các đầu ra dự đoán. Trong một mạng neural, các trọng số này biểu thị độ mạnh của các kết nối giữa các neuron qua những layer khác nhau. Khi một model được khởi tạo, các trọng số này thường được đặt thành những giá trị nhỏ, ngẫu nhiên, nghĩa là model “không biết” gì cả. Thông qua một quy trình gọi là training, model liên tục điều chỉnh các trọng số này dựa trên những lỗi mà nó mắc phải, dần học cách nhận diện các pattern, feature và mối quan hệ trong dữ liệu. Bạn có thể xem trọng số model như “bộ nhớ” hoặc “kiến thức” của AI; chúng lưu trữ những gì hệ thống đã học từ training data.
Vai trò của trọng số trong quá trình học#
Mục tiêu chính của việc training một mạng neural là tìm ra tập trọng số model tối ưu, giúp giảm thiểu sai số giữa các dự đoán của model và ground truth thực tế. Quy trình này bao gồm việc truyền dữ liệu qua network—một bước được gọi là forward pass—sau đó tính toán giá trị loss bằng một hàm loss cụ thể. Nếu dự đoán không chính xác, một thuật toán tối ưu hóa như Gradient Descent ngẫu nhiên (SGD) hoặc optimizer Muon mới hơn được sử dụng trong YOLO26 sẽ tính toán mức độ đóng góp của từng trọng số vào lỗi.
Thông qua một kỹ thuật gọi là lan truyền ngược, thuật toán cập nhật các trọng số một lượng nhỏ để giảm lỗi trong lần tiếp theo. Chu kỳ này lặp lại hàng nghìn hoặc hàng triệu lần cho đến khi trọng số model ổn định và hệ thống đạt độ chính xác cao. Khi training hoàn tất, các trọng số sẽ được “đóng băng” và lưu lại, cho phép model được triển khai để suy luận trên dữ liệu mới mà model chưa từng thấy.
Trọng số model và bias#
Điều quan trọng là phải phân biệt giữa trọng số và bias, vì chúng phối hợp với nhau nhưng phục vụ các mục đích khác nhau. Trong khi trọng số model quyết định độ mạnh và hướng của kết nối giữa các neuron (kiểm soát độ dốc của activation), bias cho phép dịch chuyển hàm activation sang trái hoặc phải. Độ lệch này đảm bảo model có thể khớp với dữ liệu tốt hơn, ngay cả khi tất cả feature đầu vào đều bằng 0. Kết hợp với nhau, trọng số và bias tạo thành các tham số có thể học, định hình hành vi của những architecture như Mạng neural tích chập (CNN).
Các ứng dụng trong thực tế#
Trọng số model là thành phần cốt lõi giúp các hệ thống AI hoạt động trong nhiều ngành khác nhau. Dưới đây là hai ví dụ cụ thể về cách chúng được áp dụng:
- Computer Vision trong bán lẻ: Trong một hệ thống siêu thị thông minh, một model như YOLO26 sử dụng các trọng số đã được training để nhận diện sản phẩm trên kệ. Các trọng số đã “học” được những feature hình ảnh—chẳng hạn như hình dạng của hộp ngũ cốc hoặc màu sắc của lon nước ngọt—cho phép hệ thống phát hiện mặt hàng, quản lý inventory và thậm chí hỗ trợ hiệu quả các quy trình thanh toán tự động.
- Phân tích hình ảnh y tế: Trong lĩnh vực chăm sóc sức khỏe, các model deep learning sử dụng những trọng số chuyên biệt để phân tích ảnh X-quang hoặc MRI. Chẳng hạn, một model được training cho phát hiện khối u sử dụng các trọng số của mình để phân biệt mô khỏe mạnh với những bất thường tiềm ẩn. Các trọng số này nắm bắt những pattern phi tuyến phức tạp trong dữ liệu pixel mà mắt người có thể khó nhận thấy, hỗ trợ bác sĩ chẩn đoán nhanh hơn.
Lưu và tải trọng số#
Trong thực tế, làm việc với trọng số model bao gồm việc lưu các tham số đã training vào một file và tải chúng sau đó để prediction hoặc fine-tuning. Trong hệ sinh thái Ultralytics, các trọng số này thường được lưu dưới dạng file .pt (PyTorch).
Dưới đây là một ví dụ đơn giản về cách tải các trọng số đã được pre-train vào một model YOLO và chạy prediction:
from ultralytics import YOLO
# Load a model with pre-trained weights (e.g., YOLO26n)
model = YOLO("yolo26n.pt")
# Run inference on an image using the loaded weights
results = model("https://ultralytics.com/images/bus.jpg")
# Print the number of detected objects
print(f"Detected {len(results[0].boxes)} objects.")Transfer Learning và Fine-Tuning#
Một trong những khía cạnh mạnh mẽ nhất của trọng số model là khả năng tái sử dụng. Thay vì training một model từ đầu—đòi hỏi dataset khổng lồ và năng lực tính toán đáng kể—các developer thường sử dụng transfer learning. Quy trình này bao gồm việc lấy một model có trọng số đã được pre-train trên một dataset lớn như COCO hoặc ImageNet, rồi điều chỉnh model cho một task cụ thể.
Ví dụ, bạn có thể lấy trọng số từ một object detector tổng quát và fine-tune chúng trên một dataset nhỏ hơn về tấm pin năng lượng mặt trời. Vì các trọng số pre-train đã có khả năng nhận biết edge, shape và texture, model hội tụ nhanh hơn nhiều và cần ít dữ liệu được gán nhãn hơn. Các công cụ như Ultralytics Platform đơn giản hóa quy trình này, cho phép các team quản lý dataset, training model trên cloud và triển khai liền mạch các trọng số đã tối ưu lên các thiết bị edge.
Nén và tối ưu hóa#
Nghiên cứu AI hiện đại thường tập trung vào việc giảm kích thước file của trọng số model mà không làm giảm hiệu năng, một quy trình được gọi là lượng tử hóa model. Bằng cách giảm độ chính xác của trọng số (ví dụ: từ số thực dấu phẩy động 32-bit xuống số nguyên 8-bit), các developer có thể giảm đáng kể mức sử dụng memory và cải thiện tốc độ inference. Đây là yếu tố quan trọng khi triển khai model trên phần cứng có tài nguyên hạn chế như điện thoại di động hoặc thiết bị Raspberry Pi. Ngoài ra, các kỹ thuật như pruning loại bỏ những trọng số đóng góp ít vào đầu ra, tiếp tục tinh gọn model cho các ứng dụng real-time.









