LeanMachineLearning exposition

Bandits.integral_regret_eq_sum_gap_mul_integral_pullCount๐Ÿ”—

This page has the declaration's own card below, then its dependency graph, then a card for each dependency (type dependencies first, then the rest of the transitive closure). For a theorem, the graph and the dependency cards only follow its statement's dependencies (its proof is replaced by sorry, so what it proves doesn't depend on how); for everything else, both the type and the body/value are followed, since their content is part of what later declarations build on.

Minimal Lean file

integral_regret_eq_sum_gap_mul_integral_pullCount๐Ÿ”—

LemmaBandits.integral_regret_eq_sum_gap_mul_integral_pullCount

No docstring.

๐Ÿ”—theorem
Bandits.integral_regret_eq_sum_gap_mul_integral_pullCount.{u_1, u_2} {๐“ : Type u_1} {ฮฉ : Type u_2} [DecidableEq ๐“] {m๐“ : MeasurableSpace ๐“} {mฮฉ : MeasurableSpace ฮฉ} {ฮฝ : ProbabilityTheory.Kernel ๐“ โ„} {A : โ„• โ†’ ฮฉ โ†’ ๐“} {n : โ„•} [StandardBorelSpace ๐“] [Fintype ๐“] {P : MeasureTheory.Measure ฮฉ} [MeasureTheory.IsProbabilityMeasure P] (hA : โˆ€ (n : โ„•), Measurable (A n)) : โˆซ (x : ฮฉ), regret ฮฝ A n x โˆ‚P = โˆ‘ a, gap ฮฝ a * โˆซ (x : ฮฉ), (fun ฯ‰ => โ†‘(Learning.pullCount A a n ฯ‰)) x โˆ‚P
Bandits.integral_regret_eq_sum_gap_mul_integral_pullCount.{u_1, u_2} {๐“ : Type u_1} {ฮฉ : Type u_2} [DecidableEq ๐“] {m๐“ : MeasurableSpace ๐“} {mฮฉ : MeasurableSpace ฮฉ} {ฮฝ : ProbabilityTheory.Kernel ๐“ โ„} {A : โ„• โ†’ ฮฉ โ†’ ๐“} {n : โ„•} [StandardBorelSpace ๐“] [Fintype ๐“] {P : MeasureTheory.Measure ฮฉ} [MeasureTheory.IsProbabilityMeasure P] (hA : โˆ€ (n : โ„•), Measurable (A n)) : โˆซ (x : ฮฉ), regret ฮฝ A n x โˆ‚P = โˆ‘ a, gap ฮฝ a * โˆซ (x : ฮฉ), (fun ฯ‰ => โ†‘(Learning.pullCount A a n ฯ‰)) x โˆ‚P

Code

lemma integral_regret_eq_sum_gap_mul_integral_pullCount
    [StandardBorelSpace ๐“] [Fintype ๐“] {P : Measure ฮฉ} [IsProbabilityMeasure P]
    (hA : โˆ€ n, Measurable (A n)) :
    P[regret ฮฝ A n] = โˆ‘ a, gap ฮฝ a * P[fun ฯ‰ โ†ฆ (pullCount A a n ฯ‰ : โ„)]
Type uses (3)
Body uses (2)
Used by (1)

Actions: Source ยท Open Issue

Proof
by
  simp_rw [regret_eq_sum_pullCount_mul_gap]
  rw [integral_finsetSum]
  swap; ยท exact fun i _ โ†ฆ (integrable_pullCount hA i n).mul_const _
  congr with a
  rw [integral_mul_const, mul_comm]

Dependency graph

Type dependencies (3)

regret๐Ÿ”—

DefinitionBandits.regret

Regret of a sequence of pulls k : โ„• โ†’ ๐“ at time t for the reward kernel ฮฝ ; Kernel ๐“ โ„.

๐Ÿ”—def
Bandits.regret.{u_1, u_2} {๐“ : Type u_1} {ฮฉ : Type u_2} {m๐“ : MeasurableSpace ๐“} (ฮฝ : ProbabilityTheory.Kernel ๐“ โ„) (A : โ„• โ†’ ฮฉ โ†’ ๐“) (t : โ„•) (ฯ‰ : ฮฉ) : โ„
Bandits.regret.{u_1, u_2} {๐“ : Type u_1} {ฮฉ : Type u_2} {m๐“ : MeasurableSpace ๐“} (ฮฝ : ProbabilityTheory.Kernel ๐“ โ„) (A : โ„• โ†’ ฮฉ โ†’ ๐“) (t : โ„•) (ฯ‰ : ฮฉ) : โ„

Code

noncomputable
def regret (ฮฝ : Kernel ๐“ โ„) (A : โ„• โ†’ ฮฉ โ†’ ๐“) (t : โ„•) (ฯ‰ : ฮฉ) : โ„ :=
  t * (โจ† a, (ฮฝ a)[id]) - โˆ‘ s โˆˆ range t, (ฮฝ (A s ฯ‰))[id]
Used by (11)

Actions: Source ยท Open Issue

gap๐Ÿ”—

DefinitionBandits.gap

Gap of an action a: difference between the highest mean of the actions and the mean of a.

๐Ÿ”—def
Bandits.gap.{u_1} {๐“ : Type u_1} {m๐“ : MeasurableSpace ๐“} (ฮฝ : ProbabilityTheory.Kernel ๐“ โ„) (a : ๐“) : โ„
Bandits.gap.{u_1} {๐“ : Type u_1} {m๐“ : MeasurableSpace ๐“} (ฮฝ : ProbabilityTheory.Kernel ๐“ โ„) (a : ๐“) : โ„

Code

noncomputable
def gap (ฮฝ : Kernel ๐“ โ„) (a : ๐“) : โ„ := (โจ† i, (ฮฝ i)[id]) - (ฮฝ a)[id]
Used by (27)

Actions: Source ยท Open Issue

pullCount๐Ÿ”—

DefinitionLearning.pullCount

Number of times action a was chosen up to time t (excluding t).

๐Ÿ”—def
Learning.pullCount.{u_1, u_3} {๐“ : Type u_1} {ฮฉ : Type u_3} [DecidableEq ๐“] (A : โ„• โ†’ ฮฉ โ†’ ๐“) (a : ๐“) (t : โ„•) (ฯ‰ : ฮฉ) : โ„•
Learning.pullCount.{u_1, u_3} {๐“ : Type u_1} {ฮฉ : Type u_3} [DecidableEq ๐“] (A : โ„• โ†’ ฮฉ โ†’ ๐“) (a : ๐“) (t : โ„•) (ฯ‰ : ฮฉ) : โ„•

Code

noncomputable
def pullCount (A : โ„• โ†’ ฮฉ โ†’ ๐“) (a : ๐“) (t : โ„•) (ฯ‰ : ฮฉ) : โ„• :=
  #(filter (fun s โ†ฆ A s ฯ‰ = a) (range t))
Used by (146)

Actions: Source ยท Open Issue