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

Epoch (Số Lượt Huấn Luyện)

Tìm hiểu về các kỷ nguyên trong học máy—cách chúng tác động đến việc đào tạo mô hình, ngăn ngừa quá khớp và tối ưu hóa hiệu suất với Ultralytics YOLO .

Trong bối cảnh đào tạo các mô hình trí tuệ nhân tạo (AI) , một kỷ nguyên (epoch) đề cập đến một lần chạy hoàn chỉnh toàn bộ tập dữ liệu đào tạo thông qua thuật toán học. Đây là đơn vị thời gian cơ bản trong đào tạo mạng nơ-ron (NN) , đánh dấu điểm mà mô hình có cơ hội học từ mọi mẫu trong dữ liệu được cung cấp đúng một lần. Vì các mô hình học sâu hiếm khi đạt hiệu suất tối ưu sau khi chỉ xem dữ liệu một lần, việc đào tạo thường bao gồm việc lặp lại quá trình này qua nhiều kỷ nguyên để giảm thiểu lỗi và tinh chỉnh các tham số nội bộ.

Cơ chế học tập theo thời gian

Mục tiêu chính trong mỗi kỷ nguyên là điều chỉnh trọng số mô hình để ánh xạ chính xác các đầu vào thành các đầu ra chính xác. Trong quá trình này, một thuật toán tối ưu hóa , chẳng hạn như Stochastic Gradient Descent ( SGD ), tính toán lỗi bằng cách sử dụng hàm mất mát cụ thể và cập nhật trạng thái bên trong của mô hình.

Học một lần thường không đủ vì tập dữ liệu chứa nhiều biến thể phức tạp và nhiễu. Bằng cách chạy nhiều chu kỳ, mô hình sẽ cải thiện khả năng thực hiện các tác vụ như phân loại hoặc phân đoạn hình ảnh theo từng giai đoạn. Sự tinh chỉnh lặp lại này cho phép mạng tổng quát hóa các mẫu từ dữ liệu huấn luyện thay vì chỉ ghi nhớ các ví dụ cụ thể. Các nền tảng học sâu như PyTorchTensorFlow cung cấp các cơ chế tích hợp để kiểm soát vòng lặp huấn luyện qua các chu kỳ này.

Kỷ nguyên so với Lô so với Lặp lại

Để hiểu cách vòng lặp đào tạo hoạt động hiệu quả, điều quan trọng là phải phân biệt ba thuật ngữ có liên quan chặt chẽ thường bị người mới bắt đầu nhầm lẫn:

  • Kỷ nguyên : Quá trình truyền toàn bộ tập dữ liệu qua mạng một lần.
  • Kích thước lô : Số lượng mẫu được xử lý trước khi mô hình cập nhật trọng số. Việc tải toàn bộ một tập dữ liệu lớn vào bộ nhớ cùng một lúc thường là bất khả thi, do đó dữ liệu được chia thành các nhóm nhỏ hơn gọi là lô.
  • Lặp lại : Một bước cập nhật duy nhất trong đó mô hình xử lý một lô và thực hiện truyền ngược để điều chỉnh trọng số.

Ví dụ, nếu bạn có tập dữ liệu gồm 10.000 hình ảnh và đặt kích thước lô là 100, sẽ mất 100 lần lặp để hoàn thành một kỷ nguyên.

Xác định số lượng kỷ nguyên tối ưu

Việc lựa chọn đúng số chu kỳ là một khía cạnh quan trọng của việc điều chỉnh siêu tham số . Việc huấn luyện quá ít hoặc quá nhiều chu kỳ có thể dẫn đến hiệu suất không tối ưu.

  1. Thiếu phù hợp : Nếu mô hình đào tạo trong quá ít kỷ nguyên, nó có thể không nắm bắt được logic cơ bản của dữ liệu, dẫn đến hiệu suất kém trên cả tập đào tạo và tập kiểm tra.
  2. Quá khớp : Nếu quá trình huấn luyện kéo dài quá lâu, mô hình có thể bắt đầu ghi nhớ nhiễu và các chi tiết cụ thể của tập huấn luyện. Mặc dù độ chính xác của quá trình huấn luyện tăng lên, hiệu suất trên dữ liệu xác thực chưa được biết đến lại giảm xuống.

Để giảm thiểu những vấn đề này, các kỹ sư thường sử dụng kỹ thuật dừng sớm (early stopping ), một kỹ thuật dừng đào tạo khi độ lệch xác thực không còn cải thiện, bất kể tổng số epoch được chỉ định. Các công cụ trực quan hóa như TensorBoard thường được sử dụng để theo dõi các số liệu này theo thời gian thực.

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

Khái niệm về kỷ nguyên được áp dụng phổ biến trong nhiều lĩnh vực học máy (ML) .

  • Lái xe tự động : Việc phát triển một chiếc xe tự hành đòi hỏi các mô hình phát hiện vật thể mạnh mẽ được đào tạo trên các tập dữ liệu khổng lồ chứa hàng triệu cảnh đường phố. Một mô hình như YOLO11 có thể được đào tạo qua hàng trăm kỷ nguyên để đảm bảo có thể nhận dạng người đi bộ và biển báo giao thông một cách đáng tin cậy trong các điều kiện thời tiết khác nhau. Quá trình đào tạo chuyên sâu đảm bảo hệ thống đạt được Độ chính xác trung bình ( mAP ) cao trước khi triển khai.
  • Giám sát Nông nghiệp : Trong nông nghiệp chính xác , máy bay không người lái sử dụng thị giác máy tính để theo dõi sức khỏe cây trồng. Do tập dữ liệu nông nghiệp có thể nhỏ hơn hoặc có tính đặc thù cao, các nhà nghiên cứu có thể sử dụng học chuyển giao và huấn luyện trong ít kỷ nguyên hơn để tinh chỉnh mô hình đã được huấn luyện trước, sử dụng tăng cường dữ liệu để mở rộng tập dữ liệu một cách giả tạo và ngăn ngừa hiện tượng quá khớp.

Ví dụ về mã: Đào tạo với Epochs

Khi sử dụng ultralytics thư viện, việc chỉ định số kỷ nguyên là đơn giản. train() phương pháp chấp nhận một epochs đối số kiểm soát số lần mô hình lặp lại dữ liệu được cung cấp.

from ultralytics import YOLO

# Load the YOLO11 model (recommended for latest performance)
model = YOLO("yolo11n.pt")

# Train the model for 50 epochs on the COCO8 dataset
# The 'epochs' argument defines the total passes through the data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

Đoạn mã này minh họa cách bắt đầu một lần chạy huấn luyện, trong đó mô hình sẽ tinh chỉnh hiểu biết của mình về tập dữ liệu "coco8" 50 lần riêng biệt. Để có những cải tiến trong tương lai, Ultralytics hiện đang phát triển YOLO26 , nền tảng sẽ hỗ trợ đào tạo toàn diện với hiệu quả cao hơn, dự kiến ra mắt vào cuối năm 2025.

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