(3.28) — the mini-batch gradient Ḡ_k is conditionally unbiased with E‖Ḡ_k − ∇Ψ(x^md_k)‖² ≤ σ²/m_k
ProvedNonconvexAG.StochComposite.eq_3_28Consider the stochastic composite problem: with having -Lipschitz gradient, convex with -Lipschitz gradient, convex with domain and prox map . Run Algorithm 4 with mini-batch gradients , the oracle being jointly measurable. Number the oracle calls consecutively and let be a filtration to which the call samples are adapted. Suppose Assumption 1 holds for every call in conditional form: the output at the call's query point is integrable with and . Then for every , with ,
and and are integrable.
Averaging oracle outputs divides the variance of the gradient estimate by ; this is what lets the batch sizes control the noise terms in Theorem 4.
Formalization Note The paper writes the first identity as ; since is random, it is stated conditionally on the samples drawn before iteration . The paper states Assumption 1 unconditionally ("for any and ") and cites [13, p. 11] for the variance bound; that bound needs the cross terms between calls of one batch to vanish, which is what the conditional form GhadimiLan.RSG.AssumptionA1 along the query points (querySeq) provides. It holds in the paper's i.i.d. setting. The bound is a conclusion, not a hypothesis.
import Mathlib import Definitions.Def_ConvexOptAlg_SmoothGD_Defs import Definitions.Def_GhadimiLan_RSG_Model import Definitions.Def_NonconvexAG_StochComposite_ProxMap import Definitions.Def_NonconvexAG_StochComposite_RSAG open MeasureTheory ProbabilityTheory open scoped InnerProductSpace
namespace NonconvexAG.StochComposite
open GhadimiLan.RSG (E)
open ConvexOptAlg.SmoothGD
/-- (3.28), p. 21 (outer ends of both lines), for Algorithm 4: under Assumption 1 imposed on the
oracle calls in their order (conditional form, along the query points), for every `k ≥ 1` the
mini-batch gradient `Ḡₖ` (3.25) is integrable and conditionally unbiased given the first
`S_{k−1} = m₁ + ⋯ + m_{k−1}` oracle calls, `E[Ḡₖ | ℱ_{S_{k−1}}] = ∇Ψ(x^md_k)` a.s., and
`E‖Ḡₖ − ∇Ψ(x^md_k)‖² ≤ σ²/mₖ` (with `‖Ḡₖ − ∇Ψ(x^md_k)‖²` integrable). -/
theorem eq_3_28 {n : ℕ} (f h : E n → ℝ) (gf gh : E n → E n) (Lf Lh : ℝ)
(hf : IsBetaSmooth f gf Lf) (hh : IsBetaSmooth h gh Lh) (hhc : ConvexOn ℝ Set.univ h)
(Ψ : E n → ℝ) (gΨ : E n → E n) (LΨ : ℝ) (hΨ : Ψ = fun x => f x + h x)
(hgΨ : gΨ = fun x => gf x + gh x) (hLΨ : LΨ = Lf + Lh)
(K : Set (E n)) (X : E n → ℝ) (hX : ConvexOn ℝ K X)
(P : E n → E n → ℝ → E n) (hP : IsProxMap K X P)
{Ξ : Type*} [MeasurableSpace Ξ] (G : E n → Ξ → E n) (hG : Measurable (Function.uncurry G))
{Ω : Type*} [MeasurableSpace Ω] (μ : Measure Ω) [IsProbabilityMeasure μ]
(ℱ : Filtration ℕ ‹MeasurableSpace Ω›) (ξ : ℕ → Ω → Ξ) (σ : ℝ)
(α β lam : ℕ → ℝ) (m : ℕ → ℕ) (hstep : RSAGStepsizes α β lam m) (x0 : E n)
(hA1 : GhadimiLan.RSG.AssumptionA1 μ ℱ gΨ G ξ (querySeq G P α β lam m x0 ξ) σ) :
let xk : ℕ → Ω → E n := xSeq G P α β lam m x0 ξ
let xag : ℕ → Ω → E n := xagSeq G P α β lam m x0 ξ
let xmd : ℕ → Ω → E n := xmdSeq G P α β lam m x0 ξ
let Gb : ℕ → Ω → E n := Gbar G P α β lam m x0 ξ
let δ : ℕ → Ω → E n := deltaBar G gΨ P α β lam m x0 ξ
∀ k, 1 ≤ k →
Integrable (Gb k) μ ∧
μ[Gb k | ℱ (batchEnd m (k - 1))] =ᵐ[μ] (fun ω => gΨ (xmd k ω)) ∧
Integrable (fun ω => ‖δ k ω‖ ^ 2) μ ∧
∫ ω, ‖δ k ω‖ ^ 2 ∂μ ≤ σ ^ 2 / (m k : ℝ) := by sorry
end NonconvexAG.StochComposite
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.