concentration inequality for magnitude of standard gaussian random vector

[[concept]]

[!themes] Topics

Evaluation Error: SyntaxError: Unexpected token '>'

at DataviewInlineApi.eval (plugin:dataview:19027:21)
at evalInContext (plugin:dataview:19028:7)
at asyncEvalInContext (plugin:dataview:19038:32)
at DataviewJSRenderer.render (plugin:dataview:19064:19)
at DataviewJSRenderer.onload (plugin:dataview:18606:14)
at DataviewJSRenderer.load (app://obsidian.md/app.js:1:1182416)
at DataviewApi.executeJs (plugin:dataview:19607:18)
at DataviewCompiler.eval (plugin:digitalgarden:10763:23)
at Generator.next (<anonymous>)
at eval (plugin:digitalgarden:90:61)

Statement

Theorem

Let x∼N(0,Id) be a standard gaussian random vector and t≥0. Then

P[|||x||2−d|≥t]=P[|∑i=1dxi2−d|≥t]≤2{exp⁡(−t28d)if t≤dexp⁡(−t8)if t≥d=2exp⁡(−18min{t2d,t})
Important

This tells us that, with high probability, we have

\begin{align} \lvert \lvert x \rvert \rvert { #2} &= d + {\cal O}(\sqrt{ d }) \\ \implies \lvert \lvert x \rvert \rvert &= \sqrt{ d + {\cal O}(\sqrt{ d }) } \\ &= \sqrt{ d } \cdot \sqrt{ 1+ {\cal O}\left( \frac{1}{\sqrt{ d }} \right)} \\ &= \sqrt{ d }\left( 1+{\cal O}\left( \frac{1}{\sqrt{ d }} \right) \right) \\ &= \sqrt{ d } + {\cal O}(1) \end{align}

ie, the standard gaussian random vector falls close to the spherical shell of width O(1) around the sphere of radius d.

Proof

Note

This proof uses the Chernoff Method, which is used to prove concentration inequalities like the Chebyshev, Hoeffding, Bernstein, Azuma-Hoeffding, and McDiarmid. It is a more general form of a "nonlinear Markov" inequality

Proof

We deal with only one side of the distribution; the desired inequality is achieved by simply multiplying by 2 to account for the other tail.

Note that E[xi2]=1, so define si=xi2−1. Then

P[∑i=1dxi2−d≥t]=P[∑i−1dsi≥t]=P[exp⁡(λ∑i=1dsi)≥exp⁡(λt)](∗)≤E[exp⁡(λ∑si)]exp⁡(λt)(∗∗)=E[exp⁡(λs1)]dexp⁡(λt)=exp⁡(−λt+dlog⁡(E[exp⁡(λs1)]))

Where

Now, define

ψ(λ):=log⁡(E[exp⁡(λs1)])=log⁡(E[exp⁡(λ(x12−1))])

As the cumulant generating function (wikipedia) of x12−1 (which has expectation 0). Note that E[exp⁡(λx12)] is finite if and only if λ<12 and in this case

E[exp⁡(λx12)]=11−2λ⟹ψ(λ)=−λ+12log⁡(11−2λ)(†)=λ2+O(λ)

Where we get (†) via Taylor expansion. This yields the bound ψ(λ)≤2λ2 for λ≤14

Assuming λ≤14, we have

P[∑i=1dxi2−d≥t]≤exp⁡(−λt+dlog⁡(E[exp⁡(λs1)]))=exp⁡(−λt+dψ(λ))≤exp⁡(−λt+2dλ2)

Now, 2dλ2−λt is a convex quadratic function of λ, and is thus minimized at λ∗=t4d. We want to set λ=λ∗, but we must ensure that λ≤14 to maintain our desired bound. Thus, we have 2 cases:

P[∑i=1dxi2−d≥t]≤exp⁡(−λt+2dλ2)=exp⁡(−t24d) P[∑i=1dxi2−d≥t]≤exp⁡(−λt+2dλ2)=exp⁡(−t4+d8)≤exp⁡(−t8)

Which is the desired result

◼

Remarks

Note

The important part of the proof is finding some ψ(λ)=O(λ2) for a bounded λ. This means that the random variance is subexponential (a weaker version of being subgaussian).

This result is characteristic of sums of d iid subexponential random variables. Sums of this type have "Gaussian tails" scaled by exp⁡(−ct2d) up to a cutoff of t∼d, after which they have "exponential tails" scaled by exp⁡(−ct)

Similar Results on the Way

By using Markov's inequality and Chebyshev's inequality, we can get something close to this.

By Markov, we have

\mathbb{P}[\lvert \lvert x\rvert \rvert { #2} \geq d + t] \leq \frac{d}{d+t} = \frac{1}{1+\frac{t}{d}}\implies \lvert \lvert x \rvert \rvert { #2} = {\cal O}(d)\quad \text{ with High Probability when } 0\leq t -d <\varepsilon

And by Chebyshev we get

\begin{align} \mathbb{P}[\lvert \lvert x \rvert \rvert { #2} \geq d + t] &= \mathbb{P}[\lvert \lvert x \rvert \rvert { #2} \geq \mathbb{E}[\,\lvert \lvert x \rvert \rvert { #2} ] + t] \\ & \leq \frac{\text{Var}(\lvert \lvert x \rvert \rvert { #2} )}{t^2} \\ &= \frac{2d}{t^2} \end{align}

Where Var[||x||2]=dVar[x12]=2d. So this gives ||x||2=O(d) with high probability when 0≤t−d<ε

Both of these results are a good start, but depend a lot on the value of t.

References

References

See Also

Mentions

Mentions

const modules = await cJS()

const COLUMNS = [  
	{ id: "Name", value: page => page.$link },  
	{ id: "Last Modified", value: page => modules.dateTime.getLastMod(page) },
];  
  
return function View() {  
	const current = dc.useCurrentFile();
// Selecting `#game` pages, for example. 
	let queryString = `@page and linksto(${current.$link})`;
	let pages = dc.useQuery(queryString);
	
	// check types
	pages = pages.filter( (p) => !modules.typeCheck.checkAll(p, current) ).sort()
	
	
	return <dc.Table columns={COLUMNS} rows={pages} paging={20}/>;  
}  

const { dateTime } = await cJS()

return function View() {
	const file = dc.useCurrentFile();
	return <p class="dv-modified">Created {dateTime.getCreated(file)}     ֍     Last Modified {dateTime.getLastMod(file)}</p>
}