Khám phá hiện tượng "grokking" trong học sâu. Tìm hiểu cách thức thực hiện. Ultralytics Mô hình YOLO26 chuyển từ giai đoạn ghi nhớ sang giai đoạn khái quát hóa trong quá trình huấn luyện kéo dài.
Grokking đề cập đến một hiện tượng hấp dẫn trong học sâu, trong đó một mạng nơ-ron, sau khi được huấn luyện trong một khoảng thời gian dài đáng kể—thường là rất lâu sau khi nó dường như đã quá khớp với dữ liệu huấn luyện—đột nhiên trải nghiệm sự cải thiện mạnh mẽ về độ chính xác khi kiểm định. Không giống như các đường cong học tập tiêu chuẩn, nơi hiệu suất cải thiện dần dần, grokking liên quan đến một "chuyển pha" trong đó mô hình chuyển từ việc ghi nhớ các ví dụ cụ thể sang hiểu các mẫu tổng quát. Khái niệm này thách thức quan điểm "dừng sớm" truyền thống, cho thấy rằng đối với một số nhiệm vụ phức tạp, đặc biệt là trong các mô hình ngôn ngữ lớn (LLM) và suy luận thuật toán, sự kiên trì trong huấn luyện là chìa khóa để mở khóa trí thông minh thực sự.
Quá trình hiểu cấu trúc mạng thường diễn ra qua hai giai đoạn riêng biệt, có thể gây nhầm lẫn cho những người thực hành dựa vào các chỉ số theo dõi thử nghiệm tiêu chuẩn. Ban đầu, mô hình nhanh chóng giảm thiểu tổn thất trên dữ liệu huấn luyện trong khi hiệu suất trên dữ liệu kiểm chứng vẫn kém hoặc không thay đổi. Điều này tạo ra một khoảng cách khái quát hóa lớn, thường được hiểu là hiện tượng quá khớp (overfitting ). Tuy nhiên, nếu quá trình huấn luyện tiếp tục vượt quá điểm này, mạng cuối cùng sẽ "hiểu" được cấu trúc cơ bản, khiến tổn thất trên dữ liệu kiểm chứng giảm mạnh và độ chính xác tăng vọt.
Nghiên cứu gần đây cho thấy sự khái quát hóa chậm trễ này xảy ra vì mạng nơ-ron trước tiên học các mối tương quan "nhanh" nhưng dễ bị lỗi (ghi nhớ) và chỉ sau đó mới phát hiện ra các đặc điểm "chậm" nhưng mạnh mẽ hơn (khái quát hóa). Hành vi này liên quan chặt chẽ đến hình học của cảnh quan hàm mất mát và động lực tối ưu hóa, như đã được các nhà nghiên cứu tại OpenAI và Google DeepMind khám phá trong các bài báo.
Điều quan trọng là phải phân biệt giữa việc hiểu sai vấn đề (grokking) và hiện tượng quá khớp dữ liệu (overfitting) thông thường, vì chúng có vẻ tương tự nhau ở giai đoạn đầu nhưng lại khác nhau về kết quả.
Hiểu rõ sự khác biệt này là rất quan trọng khi huấn luyện các kiến trúc hiện đại như Ultralytics YOLO26 , nơi việc vô hiệu hóa các cơ chế dừng sớm có thể cần thiết để đạt được hiệu suất tối đa trên các tập dữ liệu khó, chứa nhiều mẫu.
Mặc dù ban đầu chỉ được quan sát thấy trong các tập dữ liệu thuật toán nhỏ, khả năng hiểu biết sâu sắc này có ý nghĩa quan trọng đối với sự phát triển trí tuệ nhân tạo thực tiễn.
Để thúc đẩy quá trình hiểu sâu sắc (grokking), các nhà nghiên cứu thường sử dụng các chiến lược tối ưu hóa cụ thể. Tốc độ học cao và sự suy giảm trọng số đáng kể (một dạng chuẩn hóa L2) được biết là khuyến khích sự chuyển pha. Hơn nữa, số lượng dữ liệu cũng đóng vai trò quan trọng; quá trình hiểu sâu sắc dễ thấy nhất khi kích thước tập dữ liệu nằm ngay ngưỡng mà mô hình có thể xử lý, một khái niệm liên quan đến hiện tượng giảm kép (double descent ).
Khi sử dụng các thư viện hiệu năng cao như PyTorch , việc đảm bảo tính ổn định về mặt số học trong suốt quá trình huấn luyện kéo dài là vô cùng quan trọng. Quá trình này đòi hỏi nguồn tài nguyên tính toán đáng kể, do đó, các quy trình huấn luyện hiệu quả trên nền tảng Ultralytics rất có giá trị trong việc quản lý các thí nghiệm kéo dài.
Để tạo điều kiện cho quá trình hiểu sâu hơn, người ta thường phải bỏ qua các cơ chế dừng sớm tiêu chuẩn. Ví dụ sau đây minh họa cách cấu hình quá trình huấn luyện Ultralytics YOLO với số epoch kéo dài và tắt tính năng kiên nhẫn, cho phép mô hình có thời gian chuyển từ giai đoạn ghi nhớ sang giai đoạn khái quát hóa.
from ultralytics import YOLO
# Load the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")
# Train for extended epochs to facilitate grokking
# Setting patience=0 disables early stopping, allowing training to continue
# even if validation performance plateaus temporarily.
model.train(data="coco8.yaml", epochs=1000, patience=0, weight_decay=0.01)