MathLabs
Định lýĐã chứng minh

Tốc độ hội tụ của gradient descent

Phát biểu

Cho LL lồi và LL-trơn (gradient của nó Lipschitz với hằng số LL: ∥∇L(x)−∇L(y)∥≤L∥x−y∥\|\nabla L(x) - \nabla L(y)\| \le L\|x-y\|), và θ⋆\theta^\star cực tiểu hóa LL. Gradient descent với bước η=1/L\eta = 1/L thỏa mãn L(θK)−L(θ⋆)≤L∥θ0−θ⋆∥22KL(\theta_K) - L(\theta^\star) \le \dfrac{L\|\theta_0 - \theta^\star\|^2}{2K} sau KK bước.

Vì sao đúng?

Tính trơn đảm bảo mỗi bước gradient làm LL giảm một lượng tỉ lệ với bình phương độ lớn gradient, nên L(θk)L(\theta_k) không bao giờ tăng. Tính lồi cho phép ta so sánh mức giảm mỗi bước đó với khoảng cách còn lại L(θk)−L(θ⋆)L(\theta_k) - L(\theta^\star). Cộng dồn các mức giảm được đảm bảo qua KK bước — một tổng kính viễn vọng — cho thấy tổng mức giảm bị chặn, và vì điểm tốt nhất trong một dãy không tăng ít nhất cũng tốt bằng trung bình, khoảng cách cuối cùng phải thu hẹp theo tốc độ 1/K1/K.

Phác thảo chứng minh

Do tính LL-trơn, với mọi x,yx, y: L(y)≤L(x)+∇L(x)⊤(y−x)+L2∥y−x∥2L(y) \le L(x) + \nabla L(x)^\top (y-x) + \dfrac{L}{2}\|y-x\|^2. Đặt y=θk+1=θk−1L∇L(θk)y = \theta_{k+1} = \theta_k - \dfrac{1}{L}\nabla L(\theta_k) và x=θkx = \theta_k ta được bổ đề giảm dần: L(θk+1)≤L(θk)−12L∥∇L(θk)∥2L(\theta_{k+1}) \le L(\theta_k) - \dfrac{1}{2L}\|\nabla L(\theta_k)\|^2.

Do tính lồi của LL: L(θk)≤L(θ⋆)+∇L(θk)⊤(θk−θ⋆)L(\theta_k) \le L(\theta^\star) + \nabla L(\theta_k)^\top(\theta_k - \theta^\star). Cộng vào bổ đề giảm dần: L(θk+1)−L(θ⋆)≤∇L(θk)⊤(θk−θ⋆)−12L∥∇L(θk)∥2L(\theta_{k+1}) - L(\theta^\star) \le \nabla L(\theta_k)^\top(\theta_k - \theta^\star) - \dfrac{1}{2L}\|\nabla L(\theta_k)\|^2.

Hoàn thiện bình phương ở vế phải: ∇L(θk)⊤(θk−θ⋆)−12L∥∇L(θk)∥2=L2(∥θk−θ⋆∥2−∥θk−θ⋆−1L∇L(θk)∥2)=L2(∥θk−θ⋆∥2−∥θk+1−θ⋆∥2)\nabla L(\theta_k)^\top(\theta_k - \theta^\star) - \dfrac{1}{2L}\|\nabla L(\theta_k)\|^2 = \dfrac{L}{2}\left(\|\theta_k - \theta^\star\|^2 - \left\|\theta_k - \theta^\star - \dfrac{1}{L}\nabla L(\theta_k)\right\|^2\right) = \dfrac{L}{2}\left(\|\theta_k - \theta^\star\|^2 - \|\theta_{k+1} - \theta^\star\|^2\right), vì θk+1−θ⋆=θk−θ⋆−1L∇L(θk)\theta_{k+1} - \theta^\star = \theta_k - \theta^\star - \dfrac{1}{L}\nabla L(\theta_k).

Vậy L(θk+1)−L(θ⋆)≤L2(∥θk−θ⋆∥2−∥θk+1−θ⋆∥2)L(\theta_{k+1}) - L(\theta^\star) \le \dfrac{L}{2}\left(\|\theta_k - \theta^\star\|^2 - \|\theta_{k+1} - \theta^\star\|^2\right). Cộng dồn bất đẳng thức này với k=0,…,K−1k = 0, \dots, K-1, vế phải rút gọn kính viễn vọng thành L2(∥θ0−θ⋆∥2−∥θK−θ⋆∥2)≤L2∥θ0−θ⋆∥2\dfrac{L}{2}\left(\|\theta_0 - \theta^\star\|^2 - \|\theta_K - \theta^\star\|^2\right) \le \dfrac{L}{2}\|\theta_0 - \theta^\star\|^2.

Bổ đề giảm dần cũng cho thấy L(θk)L(\theta_k) không tăng, nên L(θK)L(\theta_K) nhỏ hơn hoặc bằng trung bình của L(θ1),…,L(θK)L(\theta_1), \dots, L(\theta_K): L(θK)−L(θ⋆)≤1K∑k=1K(L(θk)−L(θ⋆))≤L∥θ0−θ⋆∥22KL(\theta_K) - L(\theta^\star) \le \dfrac{1}{K}\sum_{k=1}^K \left(L(\theta_k) - L(\theta^\star)\right) \le \dfrac{L\|\theta_0 - \theta^\star\|^2}{2K}, đúng bằng chặn cần chứng minh.

Chủ đề chứa định lý này

Chứng minh từng bước

Chưa có chứng minh từng bước cho định lý này.

Tài liệu tham khảo

  1. Ian Goodfellow, Yoshua Bengio, Aaron Courville (2016). Deep Learning
  2. Christopher M. Bishop (2006). Pattern Recognition and Machine Learning
  3. Chiyuan Zhang, Samy Bengio, Moritz Hardt, Benjamin Recht, Oriol Vinyals (2017). Understanding deep learning requires rethinking generalization · arXiv:1611.03530
  4. Arthur Jacot, Franck Gabriel, Clément Hongler (2018). Neural Tangent Kernel: Convergence and Generalization in Neural Networks · arXiv:1806.07572
  5. Mikhail Belkin, Daniel Hsu, Siyuan Ma, Soumik Mandal (2019). Reconciling modern machine learning practice and the classical bias-variance trade-off · arXiv:1812.11118