Đón xem YOLO Vision 2025!
25 tháng 9, 2025
10:00 — 18:00 BST
Sự kiện kết hợp
Yolo Vision 2024
Bảng chú giải thuật ngữ

Backpropagation (Lan truyền ngược)

Tìm hiểu cách lan truyền ngược (backpropagation) huấn luyện mạng nơ-ron, giảm tỷ lệ lỗi và cung cấp năng lượng cho các ứng dụng AI như nhận dạng hình ảnh và NLP một cách hiệu quả.

Lan truyền ngược, viết tắt của "lan truyền ngược lỗi", là thuật toán cơ bản được sử dụng để huấn luyện mạng nơ-ron nhân tạo. Nó hoạt động bằng cách tính toán gradient của hàm mất mát đối với từng trọng số trong mạng, cho phép mô hình học hỏi từ những sai lầm của nó. Quá trình này là nền tảng của học sâu hiện đại, cho phép các mô hình giải quyết các tác vụ phức tạp bằng cách điều chỉnh lặp đi lặp lại các tham số bên trong của chúng để cải thiện hiệu suất. Sự phát triển của lan truyền ngược là một thời điểm then chốt trong lịch sử AI, biến mạng nơ-ron từ một khái niệm lý thuyết thành các công cụ mạnh mẽ, thiết thực.

Cách Lan Truyền Ngược Hoạt Động

Quá trình lan truyền ngược là trung tâm của vòng lặp huấn luyện mô hình và có thể được hiểu là một chu kỳ hai pha lặp lại cho mỗi lô (batch) dữ liệu:

  1. Forward Pass (Quá trình lan truyền tiến): Dữ liệu huấn luyện được đưa vào mạng. Mỗi nơ-ron nhận đầu vào, xử lý chúng bằng trọng số mô hình và một hàm kích hoạt, và chuyển đầu ra đến lớp tiếp theo. Quá trình này tiếp tục cho đến khi lớp cuối cùng tạo ra một dự đoán. Dự đoán của mô hình sau đó được so sánh với ground truth (nhãn chính xác) bằng cách sử dụng hàm mất mát, hàm này tính toán điểm lỗi định lượng mức độ sai của dự đoán.

  2. Vượt ngược (Backward Pass): Đây là nơi lan truyền ngược bắt đầu. Nó bắt đầu ở lớp cuối cùng và lan truyền lỗi ngược trở lại thông qua mạng, từng lớp một. Tại mỗi nơ-ron, nó sử dụng phép tính (cụ thể là quy tắc chuỗi) để tính toán mức độ mà trọng số và độ lệch của nơ-ron đó đóng góp vào tổng lỗi. Sự đóng góp này được gọi là gradient (độ dốc). Các gradient này cho mô hình biết cách điều chỉnh từng trọng số để giảm lỗi. Một thuật toán tối ưu hóa sau đó sử dụng các gradient này để cập nhật các trọng số.

Chu trình truyền xuôi và truyền ngược này được lặp lại nhiều epochs, cho phép mô hình dần giảm thiểu sai số và cải thiện độ chính xác. Các framework như PyTorchTensorFlow có các engine tự động tính đạo hàm được tối ưu hóa cao, xử lý các phép tính phức tạp của backpropagation một cách ẩn danh.

Lan truyền ngược so với các khái niệm liên quan

Điều quan trọng là phải phân biệt lan truyền ngược (backpropagation) với các khái niệm liên quan khác trong máy học:

  • Thuật toán tối ưu hóa: Lan truyền ngược (Backpropagation) là phương pháp để tính toán độ dốc của hàm mất mát đối với các tham số của mô hình. Một thuật toán tối ưu hóa, chẳng hạn như Stochastic Gradient Descent (SGD) hoặc bộ tối ưu hóa Adam, là cơ chế sử dụng các độ dốc này để cập nhật trọng số của mô hình. Hãy nghĩ về lan truyền ngược như việc cung cấp bản đồ và bộ tối ưu hóa như việc lái xe.
  • Hàm Loss: Một hàm loss đo lường sai số giữa các dự đoán của mô hình và các giá trị thực. Lan truyền ngược (Backpropagation) sử dụng điểm số lỗi này làm điểm bắt đầu để tính toán các gradient. Việc lựa chọn hàm loss là rất quan trọng, nhưng nó là một thành phần riêng biệt với chính thuật toán lan truyền ngược.
  • Gradient biến mất và bùng nổ: Đây là những vấn đề có thể xảy ra trong quá trình lan truyền ngược trong các mạng sâu. Gradient biến mất xảy ra khi gradient trở nên cực kỳ nhỏ, ngăn cản các lớp ban đầu học. Ngược lại, gradient bùng nổ xảy ra khi gradient trở nên quá lớn, dẫn đến huấn luyện không ổn định. Các kỹ thuật như khởi tạo trọng số cẩn thận, chuẩn hóa và sử dụng các hàm kích hoạt như ReLU được sử dụng để giảm thiểu những vấn đề này.

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

Lan truyền ngược được sử dụng ngầm bất cứ khi nào một mô hình học sâu trải qua quá trình huấn luyện. Dưới đây là hai ví dụ cụ thể:

  1. Phát hiện đối tượng với Ultralytics YOLO: Khi huấn luyện một mô hình Ultralytics YOLO (như YOLO11) để phát hiện đối tượng trên một tập dữ liệu như COCO, lan truyền ngược được sử dụng trong mỗi lần lặp huấn luyện. Sau khi mô hình dự đoán các hộp giới hạn và các lớp, tổn thất được tính toán. Lan truyền ngược tính toán độ dốc cho tất cả các trọng số trong toàn bộ backbonedetection head của mô hình. Sau đó, một trình tối ưu hóa sử dụng các độ dốc này để điều chỉnh các trọng số, cải thiện khả năng định vị và phân loại đối tượng chính xác của mô hình. Người dùng có thể tận dụng các nền tảng như Ultralytics HUB để quản lý quy trình huấn luyện này, hưởng lợi từ các triển khai lan truyền ngược hiệu quả. Điều này rất quan trọng đối với các ứng dụng từ xe tự hành đến hệ thống an ninh.
  2. Các Mô Hình Xử Lý Ngôn Ngữ Tự Nhiên (Natural Language Processing Models): Các mô hình ngôn ngữ lớn (LLMs) như BERTcác mô hình GPT được huấn luyện bằng cách sử dụng lan truyền ngược (backpropagation). Ví dụ: trong một tác vụ phân tích tình cảm, mô hình dự đoán tình cảm của một văn bản nhất định. Sự khác biệt giữa tình cảm dự đoán và nhãn thực tế dẫn đến một giá trị lỗi. Lan truyền ngược tính toán mức độ mà mỗi tham số trong mạng lưới rộng lớn đóng góp vào lỗi này. Các thuật toán tối ưu hóa sau đó cập nhật các tham số này, cho phép mô hình hiểu rõ hơn về các sắc thái ngôn ngữ, ngữ cảnh và tình cảm trong quá trình huấn luyện. Các nhóm nghiên cứu học thuật như nhóm Stanford NLP liên tục khám phá và tinh chỉnh các kỹ thuật này.

Tham gia cộng đồng Ultralytics

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
Đã sao chép liên kết vào clipboard