#!/usr/bin/env python # coding: utf-8 # In[1]: from IPython.display import Image Image('../../Python_probability_statistics_machine_learning_2E.png',width=200) # In[2]: import numpy as np np.random.seed(123456) # The absence of the probability density for the raw data means that we have to # argue about sequences of random variables in a structured way. From basic # calculus, recall the following convergence notation, # # $$ # x_n \rightarrow x_o # $$ # for the real number sequence $x_n$. This means that for any given # $\epsilon>0$, # no matter how small, we can exhibit a $m$ such that for # any $n>m$, we have # # $$ # \vert x_n-x_o \vert < \epsilon # $$ # # Intuitively, this means that once we get # past $m$ in the sequence, we # get as to # within $\epsilon$ of $x_o$. This means # that nothing surprising # happens in the # sequence on the long march to infinity, # which gives a sense of # uniformity to the # convergence process. When we argue # about convergence for # statistics, we want to # same look-and-feel as we have here, # but because we are # now talking about random # variables, we need other concepts. # There are two # moving parts for random # variables. Recall from our probability # chapter that # random variables are really # functions that map sets into the real # line: # $X:\Omega \mapsto \mathbb{R}$. # Thus, one part is the behavior of the # subsets # of $\Omega$ in terms of # convergence. The other part is how the # sequences of # real values of the random # variable behave in convergence. # # ## # Almost Sure Convergence # # The most # straightforward extension into statistics of # this convergence concept # is *almost # sure convergence*, which is also known as # *convergence with probability one*, # # #
# # $$ # \begin{equation} # \mathbb{P}\lbrace # \textnormal{for each } \epsilon>0 # \textnormal{ there is } n_\epsilon>0 # \textnormal{ such that for all } # n>n_\epsilon, \: \vert X_n-X \vert < \epsilon # \rbrace = 1 # \label{eq:asconv} # \tag{1} # \end{equation} # $$ # # Note the similarity to # the prior notion of convergence for real # numbers. When # this happens, we write # this as $X_n \overset{as}{\to} X$. In # this context, # almost sure convergence # means that if we take any particular # $\omega\in\Omega$ # and then look at the # sequence of real numbers that are # produced by each of the # random variables, # # $$ # (X_1(\omega),X_2(\omega),X_3(\omega),\ldots,X_n(\omega)) # $$ # # then this sequence # is just a real-valued sequence in the # sense of our # convergence on the real line # and converges in the same way. If we # collect all of # the $\omega$ for which this # is true and the measure of that # collection equals # one, then we have almost sure # convergence of the random # variable. Notice how the # convergence idea applies to # both sides of the random # variable: the (domain) # $\Omega$ side and the (co- # domain) real-valued side. # # An equivalent and more # compact way of writing this # is the following, # # $$ # \mathbb{P}\left(\omega\in\Omega # \colon\lim_{n\rightarrow\infty} # X_n(\omega)=X(\omega) \right)=1 # $$ # # **Example.** # To get some feel for the mechanics of this kind of convergence # consider the # following sequence of uniformly distributed random variables on # the # unit # interval, $X_n \sim \mathcal{U}[0,1]$. Now, consider taking # the maximum of # the # set of $n$ such variables as the following, # # $$ # X_{(n)} = \max \lbrace # X_1,\ldots,X_n \rbrace # $$ # # In other words, we scan through a list of $n$ # uniformly distributed # random # variables and pick out the maximum over the set. # Intuitively, we should # expect # that $X_{(n)}$ should somehow converge to one. # Let's see if we can make # this # happen almost surely. We want to exhibit $m$ so # that the following is # true, # # $$ # \mathbb{P}(\vert 1 - X_{(n)} \vert) < \epsilon # \textnormal{ when } n>m # $$ # # Because $X_{(n)}<1$, we can simplify this as the # following, # # $$ # 1-\mathbb{P}(X_{(n)}<\epsilon)=1-(1-\epsilon)^m # \underset{m\rightarrow\infty}{\longrightarrow} 1 # $$ # # Thus, this sequence # converges almost surely. We can work this # example out in # Python using Scipy to # make it concrete with the following # code, # In[3]: from scipy import stats u=stats.uniform() xn = lambda i: u.rvs(i).max() xn(5) # Thus, the `xn` variable is the same as the $X_{(n)}$ random variable # in our # example. [Figure](#fig:Convergence_001) shows a plot of these random # variables # for different values of $n$ and multiple realizations of each random # variable # (multiple gray lines). The dark horizontal line is at the `0.95` # level. For this # example, suppose we are interested in the convergence of the # random variable to # within `0.05` of one so we are interested in the region # between one and `0.95`. # Thus, in our Equation [1](#eq:asconv), $\epsilon=0.05$. # Now, we have to find # $n_\epsilon$ to get the almost sure convergence. From # [Figure](#fig:Convergence_001), as soon as we get past $n>60$, we can see that # all the realizations start to fit in the region above the `0.95` horizontal # line. However, there are still some cases where a particular realization will # skip below this line. To get the probability guarantee of the definition # satisfied, we have to make sure that for whatever $n_\epsilon$ we settle on, # the # probability of this kind of noncompliant behavior should be extremely # small, # say, less than 1%. Now, we can compute the following to estimate this # probability for $n=60$ over 1000 realizations, # In[4]: import numpy as np np.mean([xn(60) > 0.95 for i in range(1000)]) # So, the probability of having a noncompliant case beyond $n>60$ is # pretty good, # but not still what we are after (`0.99`). We can solve for the $m$ # in our # analytic proof of convergence by plugging in our factors for $\epsilon$ # and our # desired probability constraint, # In[5]: print (np.log(1-.99)/np.log(.95)) # Now, rounding this up and re-visiting the same estimate as above, # In[6]: import numpy as np np.mean([xn(90) > 0.95 for i in range(1000)]) # which is the result we were looking for. The important thing to # understand from # this example is that we had to choose convergence criteria for # *both* the values # of the random variable (`0.95`) and for the probability of # achieving that level # (`0.99`) in order to compute the $m$. Informally # speaking, almost sure # convergence means that not only will any particular $X_n$ # be close to $X$ for # large $n$, but whole sequence of values will remain close # to $X$ with high # probability. # # # #
# #

Almost sure convergence example for # multiple realizations of the limiting sequence.

# # # # # # ## Convergence # in Probability # # A weaker kind of convergence is *convergence in probability* # which means the # following: # # $$ # \mathbb{P}(\mid X_n -X\mid > \epsilon) # \rightarrow 0 # $$ # # as $n \rightarrow \infty$ for each $\epsilon > 0$. # # This is # notationally # shown # as $X_n \overset{P}{\to} X$. For example, let's consider the # following # sequence # of random variables where $X_n = 1/2^n$ with probability # $p_n$ and # where $X_n=c$ # with probability $1-p_n$. Then, we have $X_n # \overset{P}{\to} 0$ # as $p_n # \rightarrow 1$. This is allowable under this notion # of convergence # because a # diminishing amount of *non-converging* behavior # (namely, when # $X_n=c$) is # possible. Note that we have said nothing about *how* # $p_n # \rightarrow 1$. # **Example.** To get some sense of the mechanics of this # kind of convergence, # let # $\lbrace X_1,X_2,X_3,\ldots \rbrace$ be the indicators # of the corresponding # intervals, # # $$ # (0,1],(0,\tfrac{1}{2}],(\tfrac{1}{2},1],(0,\tfrac{1}{3}],(\tfrac{1}{3},\tfrac{2}{3}],(\tfrac{2}{3},1] # $$ # # In other words, just keep splitting the unit interval into equal # chunks and # enumerate those chunks with $X_i$. Because each $X_i$ is an # indicator function, # it takes only two values: zero and one. For example, # for $X_2=1$ if $0\epsilon)$ for # each $n$ for some $\epsilon\in (0,1)$. # For $X_1$, we have $P(X_1>\epsilon)=1$ # because we already chose $\epsilon$ # in the interval covered by $X_1$. For $X_2$, # we have $P(X_2>\epsilon)=1/2$, # for $X_3$, we have $P(X_3>\epsilon)=1/3$, and so # on. This produces the # following sequence: # $(1,\frac{1}{2},\frac{1}{2},\frac{1}{3},\frac{1}{3},\ldots)$. The limit # of the # sequence is zero so that $X_n \overset{P}{\to} 0$. However, for # every $x\in # (0,1)$, the sequence of function values of $X_n(x)$ consists # of infinitely many # zeros and ones (remember that indicator functions can # evaluate to either zero or # one). Thus, the set of $x$ for which the # sequence $X_n(x)$ converges is empty # because the sequence bounces # between zero and one. This means that almost sure # convergence fails here even though we have convergence in probability. # The key # distinction is that convergence in probability considers the convergence # of a # sequence of probabilities whereas almost sure convergence is # concerned about the # sequence of values of the random variables over # sets of events that *fill out* # the underlying probability space entirely (i.e., # with probability one). # # This is # a good example so let's see if we can make it concrete with some # Python. The # following is a function to compute the different subintervals, # In[7]: make_interval= lambda n: np.array(list(zip(range(n+1), range(1,n+1))))/n # Now, we can use this function to create a Numpy # array of intervals, as in the # example, # In[8]: intervals= np.vstack([make_interval(i) for i in range(1,5)]) print (intervals) # The following function computes the bit string in our example, # $\lbrace # X_1,X_2,\ldots,X_n \rbrace$, # In[9]: bits= lambda u:((intervals[:,0] < u) & (u<=intervals[:,1])).astype(int) bits(u.rvs()) # Now that we have the individual bit strings, to show convergence we # want to # show # that the probability of each entry goes to a limit. For example, # using ten # realizations, # In[10]: print (np.vstack([bits(u.rvs()) for i in range(10)])) # We want the limiting probability of a one in each column to convert # to a limit. # We can estimate this over 1000 realizations using the following # code, # In[11]: np.vstack([bits(u.rvs()) for i in range(1000)]).mean(axis=0) # Note that these entries should approach the # $(1,\frac{1}{2},\frac{1}{2},\frac{1}{3},\frac{1}{3},\ldots)$ sequence we found # earlier. [Figure](#fig:Convergence_002) shows the convergence of these # probabilities for a large number of intervals. Eventually, the probability # shown # on this graph will decrease to zero with large enough $n$. Again, note # that the # individual sequences of zeros and ones do not converge, but the # probabilities of # these sequences converge. This is the key difference between # almost sure # convergence and convergence in probability. Thus, convergence in # probability # does *not* imply almost sure convergence. Conversely, almost sure # convergence # *does* imply convergence in probability. # # # # #
# #

Convergence in # probability for the random variable sequence.

# # # # # # The following # notation should help emphasize the difference # between almost sure convergence # and convergence in probability, # respectively, # # $$ # \begin{align*} # P\left(\lim_{n\rightarrow \infty} \vert X_n-X\vert < # \epsilon\right)&=1 # \textnormal{(almost sure convergence)} \\\ # \lim_{n\rightarrow \infty} P(\vert # X_n-X\vert < \epsilon)&=1 # \textnormal{(convergence in probability)} # \end{align*} # $$ # # ## Convergence in Distribution # # # # # # # # # So far, we have been discussing # convergence in # terms of # sequences of probabilities or sequences of values taken # by # the random # variable. By contrast, the next major kind of # convergence is # *convergence in # distribution* where # # $$ # \lim_{n \to \infty} F_n(t) = F(t) # $$ # for all $t$ for which $F$ is continuous and $F$ is the # cumulative density # function. For this case, convergence is only # concerned with the cumulative # density function, written as $X_n # \overset{d}{\to} X$. # # **Example.** To # develop some intuition about this kind of convergence, # consider a sequence of # $X_n$ Bernoulli random variables. Furthermore, # suppose these are all really just # the same random variable $X$. # Trivially, $X_n \overset{d}{\to} X$. Now, suppose # we define $Y=1-X$, # which means that $Y$ has the same distribution as $X$. Thus, # $X_n # \overset{d}{\to} Y$. By contrast, because $\vert X_n - Y\vert=1$ for all # $n$, we can never have almost sure convergence or convergence in # probability. # Thus, convergence in distribution is the weakest # of the three forms of # convergence in the sense that it is implied by # the other two, but implies # neither of the two. # # As another striking example, we could have $Y_n # \overset{d}{\to} Z$ where $Z # \sim \mathcal{N}(0,1)$, but we could also have $Y_n # \overset{d}{\to} -Z$. # That is, $Y_n$ could converge in distribution to either # $Z$ or $-Z$. This # may seem ambiguous, but this kind of convergence is # practically very useful # because it allows for complicated distributions to be # approximated by # simpler distributions. # # ## Limit Theorems #
# # Now that we have all of these notions of # convergence, we can apply them to # different situations and see what kinds of # claims we can construct from them. # # **Weak Law of Large Numbers.** Let $\lbrace # X_1,X_2,\ldots,X_n \rbrace$ be an # iid (independent, identically distributed) set # of random variables with finite # mean $\mathbb{E}(X_k)=\mu$ and finite variance. # Let $\overline{X}_n = # \frac{1}{n}\sum_k X_k$. Then, we have $\overline{X}_n # \overset{P}{\to} \mu$. # This result is important because we frequently estimate # parameters using an # averaging process of some kind. This basically justifies # this in terms of # convergence in probability. Informally, this means that the # distribution of # $\overline{X}_n$ becomes concentrated around $\mu$ as # $n\rightarrow\infty$. # # **Strong Law of Large Numbers.** Let $\lbrace # X_1,X_2,\ldots,\rbrace$ be an # iid set of random variables. Suppose that # $\mu=\mathbb{E}\vert # X_i\vert<\infty$, then $\overline{X}_n \overset{as}{\to} # \mu$. The reason this # is called the strong law is that it implies the weak law # because almost sure # convergence implies convergence in probability. The so- # called Komogorov # criterion gives the convergence of the following, # # $$ # \sum_k # \frac{\sigma_k^2}{k^2} # $$ # # as a sufficient condition for concluding that the # Strong Law applies # to the # sequence $ \lbrace X_k \rbrace$ with corresponding # $\lbrace \sigma_k^2 # \rbrace$. # As an example, consider an infinite sequence of # Bernoulli trials with $X_i=1$ # if # the $i^{th}$ trial is successful. Then # $\overline{X}_n$ is the relative # frequency of successes in $n$ trials and # $\mathbb{E}(X_i)$ is the # probability # $p$ of success on the $i^{th}$ trial. With # all that established, # the Weak Law # says only that if we consider a sufficiently # large and fixed # $n$, the # probability that the relative frequency will converge # to $p$ is # guaranteed. The # Strong Law states that if we regard the observation of # all # the infinite $\lbrace # X_i \rbrace$ as one performance of the experiment, the # relative frequency of # successes will almost surely converge to $p$. The # difference between the Strong # Law and the Weak Law of large numbers is # subtle # and rarely arises in practical # applications of probability theory. # # **Central # Limit Theorem.** Although the # Weak Law of Large Numbers tells us # that the # distribution of $\overline{X}_n$ # becomes concentrated around $\mu$, it # does not # tell us what that distribution # is. The Central Limit Theorem (CLT) # says that # $\overline{X}_n$ has a # distribution that is approximately Normal # with mean $\mu$ # and variance # $\sigma^2/n$. Amazingly, nothing is assumed # about the distribution # of $X_i$, # except the existence # of the mean and variance. The following is the # Central # Limit Theorem: # Let $\lbrace X_1,X_2,\ldots,X_n \rbrace$ be iid with mean # $\mu$ # and # variance $\sigma^2$. Then, # # $$ # Z_n = # \frac{\sqrt{n}(\overline{X}_n-\mu)}{\sigma} # \overset{P}{\longrightarrow} # Z\sim\mathcal{N}(0,1) # $$ # # The loose interpretation of the Central Limit Theorem # is that # $\overline{X}_n$ # can be legitimately approximated by a Normal # distribution. # Because we are # talking about convergence in probability here, # claims # about probability are # legitimized, not claims about the random variable # itself. Intuitively, this # shows that normality arises from sums of small, # independent disturbances of # finite variance. Technically, the finite # variance # assumption is essential for # normality. Although the Central Limit # Theorem # provides a powerful, general # approximation, the quality of the # approximation for # a particular situation still # depends on the original # (usually unknown) # distribution.