Assume someone generate random number "s"(signal) which is $+1$ or $-1$ (uniformly distributed), and generate random number $n$ (noise) $N(0,\sigma)$ (i.e. normal distributed with mean zero, variance $\sigma^2$). Assume "$s$" and "$n$" are independent.

Then "he" sums: $r = s+n$ and gives number "$r$" to you.

Assume you have a sample of length "$n$" of numbers $r_1,\ldots, r_n$.

**Question** you want to estimate sigma - how to do it?

More precisely I need **simple** estimation, i.e. such that complexity of the algorithm will be more or less the same as for simple solutions (1 , 2 ) described below, but I want more higher accuracy than the naive solutions below.

If there some nice reference on this it would be helpful... "Simple" solutions are given below.

(Clarifications: you do not know "s_i" not "n_i", but you know that distribution of "s" and knows what "n" is N(0,sigma) , but you do not know sigma) ?

Motivation. Actually yours mobile phones solves this (or more complicated) problem every millisecond (or so). That is why complexity is an issue. "s" is sent bit, during propagation from base station to yours mobile phone it is spoiled. The simplest mathematical model of such propagation is to add random normal noise: so "r" - is received signal. Mobile phone wants to determine what have been sent +1 or -1. Now some profound algorithms first need estimation of noise level "n". After that they start determining "s".

Solution 1.

Denote by D(ksi) - variance of randome variable ksi.

So we know that D(r) = D(s) + D(n). D(s) is know to us D(s) =1. So we can estimate:

D(n) = D(r) -1 .

So use standard estimate of D(r) and just subtract "1" - and that is all.

Very simple ! But this estimate is rather bad - it can be negative for example and its variance is very far from ideal.

Solution 2.

Take numbers r_i and form numbers se_i = sign(r_i) (these are estimate of "s"). Calculate ne_i = r_i - se_i (these are estimates of noise).

Calculate D(ne_i) - take this as an answer...

This solution is actually perfect is "sigma" is small, but if "sigma" is large it is biased. I.e. mean of this estimate is not true sigma.

Solution 3.

I tried MLD solution. But to my surprise it is also biased for big noise. It leads to solution of transcendental equation. So the problems of complexity arises...