Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Gradient Descent

Khám phá cách thuật toán gradient descent tối ưu hóa các mô hình học máy như... Ultralytics YOLO26. Tìm hiểu về hàm mất mát, lan truyền ngược và trọng số để cải thiện độ chính xác của AI.

Gradient Descent là một thuật toán tối ưu hóa lặp cơ bản được sử dụng để huấn luyện các mô hình học máy và mạng nơ-ron. Chức năng chính của nó là giảm thiểu hàm mất mát bằng cách điều chỉnh một cách có hệ thống các tham số nội bộ của mô hình, cụ thể là trọng số và độ lệch của mô hình . Bạn có thể hình dung quá trình này như một người leo núi đang cố gắng xuống núi trong sương mù dày đặc; không thể nhìn thấy đáy núi, người leo núi cảm nhận độ dốc của mặt đất và bước theo hướng dốc nhất xuống dưới. Trong bối cảnh học máy (ML) , "ngọn núi" đại diện cho cảnh quan lỗi, và "đáy núi" đại diện cho trạng thái mà các dự đoán của mô hình chính xác nhất. Kỹ thuật tối ưu hóa này là động lực đằng sau những đột phá của trí tuệ nhân tạo (AI) hiện đại, cung cấp sức mạnh cho mọi thứ từ hồi quy tuyến tính đơn giản đến các kiến ​​trúc học sâu phức tạp như Ultralytics YOLO26 .

Cách Gradient Descent hoạt động

Hiệu quả của thuật toán Gradient Descent dựa trên việc tính toán độ dốc—một vectơ chỉ hướng tăng mạnh nhất của hàm mất mát. Phép tính này thường được thực hiện bằng thuật toán lan truyền ngược (backpropagation) . Sau khi xác định được hướng, thuật toán sẽ cập nhật trọng số theo hướng ngược lại để giảm lỗi. Kích thước bước nhảy được xác định bởi một siêu tham số gọi là tốc độ học (learning rate ). Việc tìm ra tốc độ học tối ưu là rất quan trọng; bước nhảy quá lớn có thể khiến mô hình vượt quá điểm cực tiểu, trong khi bước nhảy quá nhỏ có thể làm cho quá trình huấn luyện diễn ra rất chậm, đòi hỏi số lượng epoch quá nhiều để hội tụ. Để hiểu sâu hơn về mặt toán học, Khan Academy cung cấp bài học về giải tích đa biến về chủ đề này.

Quá trình này lặp đi lặp lại cho đến khi mô hình đạt đến điểm mà lỗi được giảm thiểu, thường được gọi là hội tụ. Trong khi thuật toán chuẩn tính toán độ dốc trên toàn bộ tập dữ liệu huấn luyện , các biến thể như Thuật toán Giảm Độ dốc Ngẫu nhiên ( SGD ) sử dụng các tập con nhỏ hơn hoặc các ví dụ đơn lẻ để tăng tốc độ tính toán và thoát khỏi các cực tiểu cục bộ. Khả năng thích ứng này làm cho nó phù hợp để huấn luyện các mô hình quy mô lớn trên Nền tảng Ultralytics , nơi hiệu quả và tốc độ là tối quan trọng.

Các Ứng dụng Thực tế

Thuật toán Gradient Descent hoạt động âm thầm phía sau hậu trường của hầu hết các giải pháp AI thành công, chuyển đổi dữ liệu thô thành thông tin hữu ích trong nhiều ngành công nghiệp khác nhau.

  • Lái xe tự hành: Trong quá trình phát triển xe tự hành , các mô hình phải xử lý dữ liệu hình ảnh để nhận diện người đi bộ, biển báo giao thông và các phương tiện khác. Sử dụng các kiến ​​trúc phát hiện đối tượng như YOLO26 tiên tiến, thuật toán Gradient Descent giảm thiểu sự khác biệt giữa vị trí dự đoán của một đối tượng và vị trí thực tế của nó. Điều này đảm bảo rằng trí tuệ nhân tạo trong hệ thống ô tô có thể đưa ra các quyết định cứu sống người trong tích tắc bằng cách liên tục tinh chỉnh bản đồ đường nội bộ của chúng.
  • Chẩn đoán y tế: Trong lĩnh vực chăm sóc sức khỏe, phân tích hình ảnh y tế dựa trên học sâu để detect anomalies such as tumors in MRI scans. By using Gradient Descent to optimize convolutional neural networks (CNNs) , these systems learn to distinguish between malignant and benign tissues with high precision. This significantly aids AI in healthcare professionals by reducing false negatives in critical diagnoses, leading to earlier and more accurate treatment plans.

Phân biệt các khái niệm liên quan

Điều quan trọng là phải phân biệt Gradient Descent với các thuật ngữ có liên quan chặt chẽ trong từ điển thuật ngữ học sâu (DL) để tránh nhầm lẫn trong quá trình phát triển mô hình.

  • So với lan truyền ngược: Mặc dù thường được nhắc đến cùng nhau, chúng thực hiện các vai trò khác nhau trong vòng lặp huấn luyện. Lan truyền ngược là phương pháp được sử dụng để tính toán độ dốc (xác định hướng của độ dốc), trong khi giảm độ dốc là thuật toán tối ưu hóa sử dụng các độ dốc đó để cập nhật trọng số (thực hiện bước). Lan truyền ngược giống như bản đồ; giảm độ dốc giống như người leo núi.
  • So với thuật toán tối ưu Adam : Thuật toán tối ưu Adam là một sự phát triển tiên tiến của thuật toán Gradient Descent, sử dụng tốc độ học thích ứng cho từng tham số. Điều này thường dẫn đến sự hội tụ nhanh hơn so với các thuật toán tiêu chuẩn. SGD Nó được sử dụng rộng rãi trong các framework hiện đại và là lựa chọn mặc định để huấn luyện các mô hình như YOLO11 và YOLO26 nhờ tính ổn định của nó.
  • So sánh với Hàm Mất Mát: Hàm mất mát (như Sai số Bình phương Trung bình hoặc Entropy chéo) đo lường hiệu suất của mô hình. Thuật toán Gradient Descent là quá trình cải thiện hiệu suất đó. Hàm mất mát cung cấp điểm số, trong khi Gradient Descent cung cấp chiến lược để cải thiện điểm số đó.

Python Ví dụ mã

Trong khi các thư viện cấp cao như ultralytics Trừu tượng hóa quá trình này trong quá trình huấn luyện, bạn có thể thấy trực tiếp cơ chế bằng cách sử dụng PyTorch Ví dụ sau đây minh họa một bước tối ưu hóa đơn giản, trong đó chúng ta cập nhật thủ công một tensor để giảm thiểu một giá trị.

import torch

# Create a tensor representing a weight, tracking gradients
w = torch.tensor([5.0], requires_grad=True)

# Define a simple loss function: (w - 2)^2. Minimum is at w=2.
loss = (w - 2) ** 2

# Backward pass: Calculate the gradient (slope) of the loss with respect to w
loss.backward()

# Perform a single Gradient Descent step
learning_rate = 0.1
with torch.no_grad():
    w -= learning_rate * w.grad  # Update weight: w_new = w_old - (lr * gradient)

print(f"Gradient: {w.grad.item()}")
print(f"Updated Weight: {w.item()}")  # Weight moves closer to 2.0

Hiểu rõ những nguyên tắc cơ bản này cho phép các nhà phát triển khắc phục sự cố hội tụ, tinh chỉnh siêu tham số hiệu quả và tận dụng các công cụ mạnh mẽ như Ultralytics Explorer để hình dung cách các tập dữ liệu của họ tương tác với động lực huấn luyện mô hình. Đối với những người muốn triển khai các mô hình được tối ưu hóa này một cách hiệu quả, việc khám phá huấn luyện nhận biết lượng tử hóa (QAT) có thể giúp cải thiện hiệu suất hơn nữa cho các thiết bị biên.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay