Với một lô nhỏ, tôi tin rằng hướng đi xuống của SGD trở thành một ước tính rất ồn ào về hướng gốc "thực sự" (nghĩa là nếu chúng ta đánh giá nó trên toàn bộ tập huấn luyện). Với một lô nhỏ, tôi không chắc việc tăng động lượng sẽ giúp được bao nhiêu vì nó sẽ tích lũy động lượng theo các hướng rất ồn. Nhưng tôi có thể sai, có thể vấn đề tối ưu hóa của bạn đã được đặt ra đủ để điều này có thể hoạt động.
Nếu bạn không nhắm đến kết quả "hiện đại", một tùy chọn bạn có cho dữ liệu hình ảnh tự nhiên là thay đổi kích thước hình ảnh. Tôi thực sự nghĩ rằng modulo theo đuổi hiệu suất đo điểm chuẩn ưu tú, hình ảnh tự nhiên có nhiều đặc tính bất biến tỷ lệ và rất nhiều tính năng ngữ nghĩa của chúng khá mạnh mẽ dưới các phép biến đổi tỷ lệ hợp lý. Điều này sẽ làm giảm bớt một số bộ nhớ GPU và cho phép bạn tăng kích thước theo đợt và các hướng đi xuống SGD của bạn sẽ là ước tính tốt hơn về các hướng đi xuống.
Nếu bạn đang xử lý một hàm mất mát có thể tách rời như khả năng ghi nhật ký âm, chúng ta có thể khai thác thực tế rằng độ dốc của một lô lớn chỉ là tổng / trung bình của độ dốc của các lô con cấu thành của nó. Ví dụ: nếu lô số của chúng tôi là , chúng tôi có thể tính toán độ dốc của siêu khối bằng cách lặp qua các lô như bình thường, tính toán từng độ dốc của lô, nhưng thay vì cập nhật các trọng số, chúng tôi lưu trữ từng độ dốc thành tổng hoặc trung bình. Nếu chúng ta trung bình một cách thích hợp, chúng ta sẽ tính toán độ dốc chính xác cho siêu lô có kích thước . Sau đó chúng tôi thực hiện cập nhật trọng lượng sau mỗi đợt -th đã được xử lý.BB KB KK
Chúng tôi sẽ tính toán chính xác các gradient của lô bằng cách tuần tự hóa tính toán như mô tả ở trên. Có tối thiểu tính toán hoặc chi phí bộ nhớ tối thiểu, người ta chỉ cần sửa đổi trình lặp lặp nhỏ để bao gồm tuần tự hóa siêu lô và bộ đệm gradient.B K