Thuật ngữ

Truyền ngược

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

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

Tìm hiểu thêm

Backpropagation, viết tắt của "backward propagation of errors", là một thuật toán nền tảng được sử dụng để đào tạo mạng nơ-ron nhân tạo, đặc biệt là trong học sâu . Đây là công cụ cho phép các mô hình học hỏi từ những sai lầm của chúng bằng cách tính toán hiệu quả mức độ mỗi tham số (trọng số và độ lệch) trong mạng đóng góp vào lỗi chung trong các dự đoán. Thông tin này sau đó được các thuật toán tối ưu hóa sử dụng để điều chỉnh các tham số và cải thiện hiệu suất của mô hình theo thời gian trong quá trình đào tạo mô hình .

Cách thức hoạt động của Backpropagation

Quá trình này bao gồm hai giai đoạn chính sau dự đoán ban đầu:

  1. Truyền tiếp: Dữ liệu đầu vào được đưa qua mạng theo từng lớp, kích hoạt các nơ-ron và áp dụng trọng số mô hình cho đến khi tạo ra kết quả đầu ra (dự đoán).
  2. Tính toán lỗi: Sự khác biệt giữa dự đoán của mạng và giá trị mục tiêu thực tế (giá trị thực tế) được tính toán bằng cách sử dụng hàm mất mát . Sự mất mát này định lượng mức độ sai lầm của dự đoán. Một nguồn tài nguyên phổ biến để hiểu điều này là chương về MLP trong Sách học sâu .
  3. Truyền ngược: Đây là nơi mà sự truyền ngược thực sự xảy ra. Bắt đầu từ lớp đầu ra, thuật toán tính toán độ dốc của hàm mất mát đối với weights and biases của mỗi lớp. Nó sử dụng quy tắc chuỗi từ phép tính để truyền tín hiệu lỗi ngược lại hiệu quả qua mạng, từng lớp một. Điều này xác định mức độ cần thay đổi của từng tham số để giảm lỗi tổng thể. Các hình ảnh trực quan như trong "Phép tính trên đồ thị tính toán" có thể giúp minh họa luồng này.
  4. Cập nhật trọng số: Các gradient được tính toán sau đó được sử dụng bởi một thuật toán tối ưu hóa , chẳng hạn như Gradient Descent hoặc các biến thể nâng cao hơn như Adam , để cập nhật mạng. weights and biases , thúc đẩy mô hình đưa ra những dự đoán tốt hơn trong lần lặp tiếp theo.

Tầm quan trọng trong học sâu

Truyền ngược là nền tảng cho sự thành công của học sâu hiện đại. Nó cho phép đào tạo các kiến trúc rất sâu và phức tạp, chẳng hạn như Mạng nơ-ron tích chập (CNN) được sử dụng rộng rãi trong thị giác máy tính và Mạng nơ-ron hồi quy (RNN) được sử dụng cho dữ liệu tuần tự như văn bản. Nếu không có cách hiệu quả để tính toán độ dốc như truyền ngược cung cấp, việc đào tạo các mô hình lớn này sẽ không khả thi về mặt tính toán. Nó cho phép các mô hình tự động học các tính năng và mối quan hệ phức tạp từ lượng dữ liệu khổng lồ, tạo thành cơ sở cho nhiều tiến bộ AI kể từ khi phổ biến vào những năm 1980, được trình bày chi tiết trong các tài nguyên bao gồm lịch sử Học sâu .

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

Backpropagation được sử dụng ngầm định bất cứ khi nào một mô hình học sâu được đào tạo. Sau đây là hai ví dụ:

  1. Phát hiện đối tượng: Các mô hình như Ultralytics YOLO được đào tạo bằng cách sử dụng backpropagation. Khi mô hình xác định không chính xác một đối tượng hoặc đặt hộp giới hạn không chính xác trong hình ảnh từ các tập dữ liệu như COCO , backpropagation sẽ tính toán các gradient cần thiết để điều chỉnh trọng số của mô hình, cải thiện khả năng thực hiện phát hiện đối tượng chính xác.
  2. Xử lý ngôn ngữ tự nhiên (NLP): Việc đào tạo các mô hình ngôn ngữ lớn như BERT hoặc GPT cho các tác vụ như dịch máy hoặc phân tích tình cảm phụ thuộc rất nhiều vào sự lan truyền ngược. Nó điều chỉnh các tham số mô hình để giảm thiểu sự khác biệt giữa văn bản được tạo ra và đầu ra mong muốn, cho phép các mô hình này hiểu và tạo ra ngôn ngữ giống con người. Nhóm NLP của Stanford cung cấp nhiều tài nguyên về các chủ đề này.

Các khái niệm liên quan

Mặc dù có liên quan chặt chẽ, Backpropagation khác với Gradient Descent . Backpropagation là thuật toán chuyên tính toán gradient của hàm mất mát liên quan đến các tham số của mạng. Gradient Descent (và các biến thể của nó) là thuật toán tối ưu hóa sử dụng các gradient được tính toán này để cập nhật lặp lại các tham số và giảm thiểu mất mát. Backpropagation đôi khi có thể gặp phải các vấn đề như vấn đề gradient biến mất , đặc biệt là trong các mạng rất sâu, mặc dù các kỹ thuật như sử dụng hàm kích hoạt ReLU và kết nối dư giúp giảm thiểu vấn đề này.

Đọc tất cả