學習理論——VC維的定義以及一些例子
本文主要介紹一些學習理論上的東西。首先,我們得明確,從訓練集上學習出來的分類器的最終目標是用於預測未知的樣本,那么我們在訓練的時候該用多少的樣本才能使產生的分類器的效果盡可能的好呢?這些就是VC-理論要解決的問題。在介紹這個理論之前,我們得先介紹一個比較抽象的概念——VC維。這個指標是用與衡量假設空間的復雜程度。為了能更好的理解VC維,本文還會舉一些例子來加深理解。
(一)由一個例子引出的動機
為了更好的說明為什么我們要定義這個VC維,我們先來看一個例子。假設有一個數據庫,這個數據庫包含每個職員的年紀和工資,那么我們現在要查詢35歲到45歲工資為60000~70000的職員數量?為了解決這個查詢問題,我們將每個職員用一個二維的點來表示,坐標分別代表年齡和工資,那么這個查詢問題就等價於:有多少個點落入一個與坐標軸平行的矩形里面。現在假設這個數據庫的數據量非常大,我們不可能統計所有的點,所以我們一般在查詢前先固定一個樣本,然后統計這個樣本里有多少個點落入矩形內,然后用這個樣本估計出來的比例代替總體的比例。
為了達到上述目的,我們總是希望所估計出來的值跟真實的值盡可能的接近。而根據大數定理可知,樣本點越多,那么估計的效果就越好。但我們更希望能找樣本點大小跟估計的精度之間的關系,也就是說找到最少的樣本可以保證:以$1-\delta$的概率使估計的值跟真實值之間的差在$\epsilon$之內,通常這里的的$\delta$和$\epsilon$都很小。現在回過頭來看上述的查詢問題,我們規定如果一個矩形所包含的樣本點一樣,那么我們認為這樣的矩形是等價的,因為用這些等價的矩形計算出來的估計值都是一樣的。那么就有一個問題,那就是對於平面上$n$個點,這樣的等價矩形的的個數有多少個?
首先,$n$個點的子集個數為$2^n$個,所以矩形個數不會超過$2^n$,但事實上這樣的矩形只有$\mathcal{O}(n^4)$。因為對於每一等價的矩形類都存在一個最小的矩形(將矩形四個邊往里縮小直到遇到樣本點時停止),而每一個最小矩形都最多只需要四個樣本點即可確定,所以$n$個點最多只能確定$\mathcal{O}(n^4)$個最小矩形,也就是說等價矩形類的個數不超過$\mathcal{O}(n^4)$。其實也可以直觀的理解上述矩形等價類的個數為什么不是所有的子集數,我們假設這個等價矩形類的個數就是$2^n$個,也就是說矩形內的樣本點所行成的子集可以是任何子集。但事實上這是不可能的。舉個例子,我們有五個樣本點,其中前四個樣本點分別處在一個矩形的四個邊,而第五個樣本點在矩形的內部,那么我們根本沒辦法形成這樣的矩形使其僅包含前四個樣本點(任何包含前四個樣本點的矩形必定包含第五個樣本點),也就是說這個矩形根本就無法形成僅包含前四個樣本點的子集。注意這里的4其實就是這個矩形類對應的VC維,而在你了解了后面要介紹的打散概念后,在回過來看這個例子應該會理解的更加深入。
令$U$所有的職工集合,其大小為$N$。$\epsilon$是給定的容忍系數參數,隨機抽取一個樣本大小為$n$的樣本$S$。對於每一個查詢矩形$R$,我們用$\frac{|R\cap S|}{n}N$來估計$|R\cap U|$,也就是說用樣本計算出來的值來估計真實的值。我們當然希望對於每一個$R$估計的誤差都比較小,即對於所有的$R$有:
$$\left| | R\cap U| - \frac{N}{n}|R\cap S|\right|\leq\epsilon N$$
當然這是不可能的,但我們可以通過選擇較大的樣本使出現大誤差的概率比較小,也就是說我們選擇的樣本必須使以下不等式成立:
\begin{equation}\mathop{Pr}(\left| | R\cap U| - \frac{N}{n}|R\cap S|\right|>\epsilon N\ \text{for some R})\leq\delta\label{equ:1}\end{equation}
接下去我們來計算需要多大的樣本才能使式子\ref{equ:1}成立?
首先,樣本$S$是從$U$中均勻隨機選取,那么對於一個固定$R$,我們選到的樣本點落入$R$的概率$q=\frac{|R\cap U|}{N}$,所以樣本落入$R$的個數(即$|R\cap S|$)服從二項式分布$B(S,q)$。因此根據Chernoff Bounds可知,當$0\leq\epsilon\leq 1$時:
\begin{equation}\mathop{Pr}(\left| |R\cap U|-\frac{N}{n}|R\cap S|\right|>\epsilon N)\leq e^{-\frac{\epsilon^2n}{2q}}+e^{-\frac{\epsilon^2n}{3q}}\leq2e^{-\frac{\epsilon^2n}{3}}\end{equation}
對於某個固定的$R$有上述的不等式,而對於所有的$\mathcal{O}(n^4)$個$R$,使用聯合界得到:
\begin{equation}\mathop{Pr}(\left| |R\cap U| - \frac{N}{n}|R\cap S|\right|>\epsilon N\ \text{for some}\ R)\leq Cn^4e^{-\frac{\epsilon^2n}{3}}\end{equation}
令$\delta\geq Cn^4e^{-\frac{\epsilon^2n}{3}}\Longrightarrow n\geq\frac{2}{\epsilon^2}(\mathop{ln}Cn^4+\mathop{ln}\frac{1}{\delta})$。所以只要令$n\geq\frac{2}{\epsilon^2}(\mathop{ln}Cn^4+\mathop{ln}\frac{1}{\delta})$即可使上述不等式成立。
在另外一種更一般的情況,假設我們在平面上有概率分布$P$,也就是說每個點不是以均勻的概率出現,而是以概率分布$P$出現,那么我們該如何估計$\mathop{Pr}(R)$?同樣,我們可以根據$P$獨立的選取大小為$n$的樣本$S$,然后用$\frac{|S\cap R|}{n}$去估計$\mathop{Pr}(R)$,同樣我們希望對於每一個$R$,這樣的估計都會很好。事實上,這是比前一個例子更一般的情況,在前一個例子中在每一個點出現的概率為$\frac{1}{N}$,而在這個例子中矩形的數量不再是$\mathcal{O}(n^4)$,因為$P$是連續的,也就是說矩形的數量是無限的,所以用聯合界來求上界的方法不可取。而VC維對這樣的情況或者更一般的情況都會有一個較好的結果,更一般的情況指的是區域不一定是矩形,也可能是半空間、球體等。對於每一類區域,比如矩形、半空間,它都有一個參數叫VC維。對於以下的概率都可以用VC維來界定它的上界:
$$\mathop{Pr}(|\text{實際值}-\text{估計值}|>\epsilon)<\delta$$
這里$\delta$與$\epsilon$和VC維有關。
(二)VC維的定義
定義:一個集合系統記為$(U,\mathcal{S})$,其中$U$為這個集合的全集,可以是有限的也可以是無限的,$\mathcal{S}$為$U$的子集所組成的集合。
比如上一節介紹的例子中,$U=\mathbb{R}^2$,$\mathcal{S}$就是所有平行矩形的集合。
定義:打散概念。一個子集$A\subseteqq U$,如果$A$的每一個子集都可以用$A$與$\mathcal{S}$中的某個元素的相交來表示,那么我們就說集合$A$能夠被$\mathcal{S}$打散。
也就是說,對於$A$中的任一子集,都可以用$A\cap S,S\in\mathcal{S}$來表示。
定義:VC維。一個集合系統$(U,\mathcal{S})$的VC維定義為能夠被$\mathcal{S}$打散的最大的$U$的子集。
也就是說假設$(U,\mathcal{S})$的VC維為$d$的話,那么肯定存在一個子集$A\in U,|A|=d$能夠被$\mathcal{S}$打散,並且對於任意$B\subseteqq U, |B|>d$肯定不可以被$\mathcal{S}$打散。
(三)VC維的例子
1. 與坐標軸平行的矩形的VC維。
首先,至少存在四個點的子集可以被平行的矩形打散,比如以下的四個點
並且對任意五個點肯定不會被打散,任畫五個點,用一個最小的矩形將這五個點包圍起來,則最多只需要4個點即可確定這個矩形,現在如果我們把這四個點形成一個子集,那么不存在矩形僅僅只包含住這四個點。所以與坐標軸平行的矩形的VC維$d=4$。
2. 實數線上的區間。
很顯然,實數線上的區間的VC維$d=2$。
3. 實數線上的一對區間。
很顯然,從上圖可知存在四個點可以被打散,對任意的五個點,我們只需要取1,3,5就無法用兩個區間去包含住。
4. 凸多邊形。
凸多邊形的VC維是無限的。首先,我們在單位圓上選$n$個點,那么這$n$個點的任意子集總可以用凸多邊形來包圍,而$n$可以趨向無窮大。
5. d維半空間。
定義:半空間:$\{x|\alpha^T x\geq \alpha_0\}$,超平面的一邊。
首先證明存在$d+1$個點可以被半平面打散。選擇原點加上$d$個坐標軸上的單位向量,設$A$是這$d+1$個點的任一個子集。第一種情況,$A$包含原點,取$\alpha$,其中$\alpha$的第$i$個分量定義如下:$\alpha_i=1$當且僅當第$i$個坐標軸的點不在$A$,否則$\alpha_i=0$。所以對於$A$中任一個元素$x^T\alpha=0\leq 0$,對於不在$A$中的任一個元素$x^T\alpha=1>0$,所以在這種情況下,這$d+1$個頂點也就可被打散。
第二種情況,$A$不包含原點,取$\alpha$,其中$\alpha$的第$i$個分量定義如下:$\alpha_i=1$當且進當第$i$個坐標軸的點不在$A$,否則$\alpha_i=-1$。所以對於$A$中任一個元素$x^T\alpha=-1\leq 0$,對於不在$A$中的任一元素$x^T\alpha=0\ \text{or}\ 1\geq 0$,所以這種情況下,這$d+1$個頂點也可被打散。
現在證明任何一個$d+2$個點形成的子集都不能被打散。
定義凸殼(Convex Hull):對於一個集合$A=\{x_1,x_2,\cdots,x_n\}$,由$A$所形成的凸殼記為$\mathop{convex}(A)=\{x|x=\sum_i\alpha_ix_i,0\leq\alpha_i\leq1,\sum_i\alpha_i=1\}$。
直觀上看,這個凸殼就是用一個最小的凸區域來包圍集合$A$。
假如一個$d+2$點的集合中存在二個子集$A$和$B$,$A\cap B=\varnothing$,$\mathop{convex}(A)\cap\mathop{convex}(B)\neq\varnothing$的話,那么我們無法用一個超平面將$A$與$B$分隔開來,也就是說不存在超平面它的一邊只包含$A$或$B$,即不存在只包含$A$或$B$的半空間,所以這$d+2$集合無法用半空間打散。
定理(Radon):對任意集合$S\in\mathbb{R}^d$且滿足$|S|\geq d+2$,那么存在$S$的一個划分$A$和$B$使得$\mathop{convex}(A)\cap\mathop{convex}(B)\neq\varnothing$。
證明:不失一般性我們只證明$|S|=d+2$。
構造矩陣$\mathbf{A}_{d\times(d+2)}$,$\mathbf{A}$的每一列都是$S$的一個點,在$\mathbf{A}$的最后一行加上一個全1的行向量得到$\mathbf{B}=\left(\begin{array}&\mathbf{A}\\\mathbf{1}^T\end{array}\right)$,由於$\mathop{rank}(B)\leq d+1$,所以$\mathbf{B}$的列是線性相關的。所以方程$\mathbf{B}x=0$存在非零解$x=(x_1,x_2,\cdots,x_n)^T$,把$x$重新排序,使$x_1,\cdots,x_s\geq 0, x_{s+1},\cdots,x_{d+2}<0$。由於$\mathbf{B}$的最后一行全1,故$\sum_{i=1}^{d+2}x_i=0$。所以肯定同時存在正負分量。
將$x$進行正則化,即將$x$的每個分量都除以$\sum_{i=1}^sx_i$,得一個新的$x^\prime$($x^\prime$同樣是$\mathbf{B}x=0$的解,並且為了方便我仍然記為$x$),故有$\sum_{i=1}^sx_i=1$。記$b_i$為$\mathbf{B}$的第$i$列(相應$\alpha_i$為$\mathbf{A}$的第$i$列)。
由$\mathbf{B}x=(b_1,b_2,\cdots,b_s,b_{s+1},\cdots,b_{d+2})x=0$ $\Longrightarrow$ $\sum_{i=1}^{d+2}b_ix_i=0$ $\Longrightarrow$ $\sum_{i=1}^sb_ix_i+\sum_{i=s+1}^{d+2}b_ix_i=0$ $\Longrightarrow$ $\sum_{i=1}^sb_i|x_i|=\sum_{i=s+1}^{d+2}b_i|x_i|$ $\Longrightarrow$ $\sum_{i=1}^s\left(\begin{array}&\alpha_i\\1\end{array}\right)|x_i|=\sum_{i=s+1}^{d+2}\left(\begin{array}&\alpha_i\\1\end{array}\right)|x_i|$ $\Longrightarrow$ $\left\{\begin{array}&\sum_{i=1}^s\alpha_i|x_i|=\sum_{i=s+1}^{d+2}\alpha_i|x_i|\\\sum_{i=1}^s|x_i|=\sum_{i=s+1}^{d+2}|x_i|\end{array}\right.$。由$\sum_ix_i=0\Longrightarrow\sum_{i=1}^s|x_i|=\sum_{i=s+1}^{d+2}|x_i|=1$。記集合$A=(\alpha_1,\cdots,\alpha_s)$,集合$B=(\alpha_{s+1},\cdots,\alpha_{d+2})$,則$\mathop{convex}(A)=\sum_{i=1}^s\alpha_i|x_i|, \mathop{convex}(B)=\sum_{i=s+1}^{d+2}\alpha_i|x_i|$。所以,$\mathop{convex}(A)\cap\mathop{convex}(B)\neq\varnothing$。注意,這里的$\mathop{convex}(A)\neq\mathop{convex}(B)$,$\sum_{i=1}^s\alpha_i|x_i|=\sum_{i=s+1}^{d+2}\alpha_i|x_i|$只表示存在一個系數使二者相等,並不是說對所有系數都相等。
6. $d$維空間的球體。
一個$d$維空間的球體:$\{x||x-x_0|\leq r\}$,它的VC維是$d+1$。首先,存在$d+1$個點可以被半空間打散,那么也肯定存在$d+1$個點可以被$d$維球體打散。現在我們證明任意$d+2$個點都不能被球體打散。
反證法:假設有一個$d+2$個點的集合$S$可以被球體打散,那么意味着對任何$A_1\subseteqq S, A_2\subseteqq S, A_1\cap A_2=\varnothing, A_1\cup A_2=S$,存在着球體$B_1,B_2$分別只包含$A_1,A_2$,即$B_1\cap S=A_1,B_2\cap S=A_2$(盡管$B_1\cap B_2$有可能不為空集,但相交的部分決不含有$S$中的點)。那么可以肯定存在一個超平面,其一邊只包含$A_1$,一邊只包含$A_2$,即這$d+2$個點可以被半空間打散,這與前面的結論矛盾。
(四)打散函數。
考慮一個集合系統$(U,\mathcal{S})$,它的VC維為$d$,那么對於$A\subseteqq U, |A|=n\leq d$,$A$可以被打散成$2^n$份,也就是說存在$2^n$個$A$的子集,可以用$S\in\mathcal{S}$表示成$A\cap S$。那么對於$|A| = n >d$,$A$可以被打散成多少份呢?這就是我們接下去要介紹的打散函數(shatter-function)
定義打散函數:一個集合系統$(U,\mathcal{S})$的打散函數$\Pi_{\mathcal{S}}(n)$指的是大小為$n$的集合$A\in U$中能夠用$A\cap S,S\in\mathcal{S}$表示的子集個數。即$\Pi_{\mathcal{S}}(n)=\max_{A\subseteqq U,|A|=n}|\{A\cap S|S\in \mathcal{S}\}|$。
很顯然,當$n\leq d$時,$\Pi_{\mathcal{S}}(n)=2^n$,也就是說當$n\leq d$時,打散函數以$2^n$增長;當$n>d$時,他的增長將變慢,事實上可以證明$\Pi_{\mathcal{S}}(n)$以$n$的多項式增長。如果VC維是無限的話,那么$\Pi_{\mathcal{S}}(n)$將一直以指數級增長。
有了$\Pi_{\mathcal{S}}(n)$的定義后,那么VC維也可以定義成$dim(\mathcal{S})=\max\{n|\Pi_{\mathcal{S}}(n)=2^n\}$。在之前我們已經看到對於平行於坐標軸的矩形,最多只有$\mathcal{O}(n^4)$個子集可以用矩形包圍住,這里的指數4剛好是平行矩形系統的VC維。
(五)打散函數與VC維的關系。
首先來證明一個不等式$\sum_{i=0}^d\binom{n}{i}=\binom{n}{0}+\cdots+\binom{n}{d}\leq2n^d$。
采用歸納法證明$d<n$時成立。顯然,當$d=0,1$時等式成立;假設$d=k$時$\sum_{i=0}^k\binom{n}{i}\leq2n^k$成立,則
$$\sum_{i=0}^{k+1}\binom{n}{i}=\sum_{i=0}^k\binom{n}{i}+\binom{n}{k+1}\leq2n^k+\frac{n(n-1)\cdots (n-k)}{(k+1)!}\leq2n^k+n^{k+1}\leq 2n^{k+1}$$
所以$\sum_{i=0}^d\binom{n}{i}\leq2n^d$成立。
當$d\geq n$時,$\sum_{i=0}^d\binom{n}{i}=2^n\leq2n^d$,由$\frac{2n^d}{2^n}=\frac{2n^nn^{d-n}}{2^n}\geq2(\frac{n}{2})^n\geq 1$而得到。
故,綜上:$\sum_{i=0}^d\binom{n}{i}\leq2n^d$。
利用上述不等式,我們可以證明如下的定理。
定理:對於一個VC維至多為$d$的任意集合系統$(U,\mathcal{S})$,$\Pi_{\mathcal{S}}(n)\leq \sum_{i=0}^d\binom{n}{i}$對所有$n$都成立。
證明:以下我們分三種情況對上述定理進行證明:
1. 當$n\leq d$時,$\sum_{i=0}^d\binom{n}{i}=2^n$且$\Pi_{\mathcal{S}}(n)=2^n$,所以定理上的不等式成立。
2. 當$d=0$時,我們可以證得$|\mathcal{S}|\leq 1$。因為若$|\mathcal{S}|>1$,則$|\mathcal{S}|$中至少有兩個集合$S_1,S_2$,並且存在$x\in S_1$且$x\notin S_2$,於是我們可以令$A=\{x\}$,則$A$可以被$\mathcal{S}$打散,即$(U,\mathcal{S})$的VC維大於等於1,這於$d=0$產生矛盾,所以$|\mathcal{S}|\leq 1$。
若$|\mathcal{S}|= 1$,則$\Pi_{\mathcal{S}}(n)=1$對所有$n$都成立,$\Pi_{\mathcal{S}}(n)=1\leq\binom{n}{0}=1$。
若$|\mathcal{S}|= 0$,則$\Pi_{\mathcal{S}}(n)=0$對所有$n$都成立,$\Pi_{\mathcal{S}}(n)=0\leq\binom{n}{0}=1$。
3. 當$n>d$時,令$A\in U, \Pi_{\mathcal{S}}(n)$表示可以表示成$A\cap S, S\in\mathcal{S}$的$A$的子集個數(注意這里的$A$指所有滿足$|A|=n$)。不失一般性,令$U=A$,將$S\in\mathcal{S}$用$S\cap A$代替,並且移掉相同的集合(比如$S_1\cap A=S_2\cap A$,則我們只保留其中的一個),這樣處理后$\Pi_{\mathcal{S}}(n)=|\mathcal{S}|$,所以要證$\Pi_{\mathcal{S}}(n)\leq\sum_{i=0}^d\binom{n}{i}$,即證$|\mathcal{S}|\leq\sum_{i=0}^d\binom{n}{i}$。
構造一個新的集合系統$(A-\{u\},\{S-\{u\}|S\in\mathcal{S}\})$,記為$(A-\{u\},\mathcal{S}_1)$。我們來討論集合$S\subseteqq A-\{u\}$的情況。
(1) $S$與$S\cup\{u\}$只有一個在$\mathcal{S}$中,則對$\mathcal{S}$與$\mathcal{S}_1$的貢獻各一個;(2) $S$與$S\cup\{u\}$兩個都在$\mathcal{S}$中,則對$\mathcal{S}$的貢獻為兩個,對$\mathcal{S}_1$的貢獻為一個。所以$|\mathcal{S}|$比$|\mathcal{S}_1|$大,並且多出的數量為出現(2)的情況。
構造一個新的集合系統$(A-\{u\}, \{S|\text{both}\ S\ \text{and}\ S\cup\{u\}\ \text{are in}\ \mathcal{S}\})$,記為$(A-\{u\},\mathcal{S}_2)$。所以$|\mathcal{S}|=|\mathcal{S}_1|+|\mathcal{S}_2|=\Pi_{\mathcal{S}_1}(n-1)+\Pi_{\mathcal{S}_2}(n-1)=\Pi_{\mathcal{S}}(n)$。現在來證明以下兩個結論:
(1) $\mathcal{S}_1$的VC維至多為$d$;
(2) $\mathcal{S}_2$的VC維至多為$d-1$。
對於(1),假如$\mathcal{S}_1$的VC維超過$d$,那么$\mathcal{S}$的VC維也肯定要超過$d$;對於(2),假如有集合$B\subseteqq A-\{u\}, |B|\geq d$被$\mathcal{S}_2$打散,那么$B\cup\{u\}$肯定也會被$\mathcal{S}$打散。(這是因為$B\cup\{u\}$的子集包括兩種,一種是包含$u$的,一種不包含$u$,不包含$u$的肯定可以表示成$(B\cup\{u\})\cap S$,包含$u$的子集記為$B^\prime\cup\{u\}$,由於$B^\prime=B\cap S, S\in\mathcal{S}$,故$(B^\prime\cup \{u\})=(B\cup\{u\})\cap(S\cup\{u\})$,其中$S\cup\{u\}\in\mathcal{S}$)所以$\mathcal{S}$的VC維至多為$d+1$,與題意矛盾。
最后,由於$n\leq d,d=0$時不等式成立,所以根據歸納法可知:若$\Pi_{\mathcal{S}_1}(n-1)\leq\sum_{i=0}^d\binom{n-1}{i}, \Pi_{\mathcal{S}_2}(n-1)\leq\sum_{i=0}^{d-1}(n-1)$成立,則:
\begin{align*}\Pi_{\mathcal{S}}(n) &=\Pi_{\mathcal{S}_1}(n-1)+\Pi_{\mathcal{S}_2}(n-1)\\&\leq\binom{n-1}{0}+\binom{n-1}{1}+\cdots+\binom{n-1}{d}+\binom{n-1}{0}+\binom{n-1}{1}+\cdots+\binom{n-1}{d-1}\\&\leq\binom{n-1}{0}+[\binom{n-1}{1}+\binom{n-1}{0}]+\cdots+[\binom{n-1}{d}+\binom{n-1}{d-1}]\\&\leq\binom{n}{0}+\binom{n}{1}+\cdots+\binom{n}{d}\end{align*}
其中$\binom{n-1}{d-1}+\binom{n-1}{d}=\binom{n}{d}$。
(六)相交的集合系統。
令$(U,\mathcal{S}_1)$和$(U,\mathcal{S}_2)$為集合$U$下的兩個集合系統,定義相交系統$(U,\mathcal{S}_1\cap\mathcal{S}_2)$,其中$\mathcal{S}_1\cap\mathcal{S}_2=\{A\cap B|A\in\mathcal{S}_1,B\mathcal{S}_2\}$,注意這里的交不是將$\mathcal{S}_1$和$\mathcal{S}_2$取交運算,而是對$\mathcal{S}_1$和$\mathcal{S}_2$中的元素取交運算。所以根據定義有$|\mathcal{S}_1\cap\mathcal{S}_2|\leq|\mathcal{S}_1| |\mathcal{S}_2|$。
定理:$\Pi_{\mathcal{S}_1\cap\mathcal{S}_2}(n)\leq\Pi_{\mathcal{S}_1}(n)\Pi_{\mathcal{S}_2}(n)$。
證明:對於任何的$A\subseteqq U$,以下不等式成立:
\begin{align*}&\left| \{A\cap (S_1\cap S_2)| S_1\in\mathcal{S}_1, S_2\in\mathcal{S}_2\}\right|\\\leq&\left| \{A\cap S_1| S_1\in\mathcal{S}_1\}\right|\cdot\left|\{A\cap S_2|S_2\in\mathcal{S}_2\}\right|\end{align*}
即$\Pi_{\mathcal{S}_1\cap\mathcal{S}_2}(n)\leq\Pi_{\mathcal{S}_1}(n)\Pi_{\mathcal{S}_2}(n)$。
PS: 本人只粗略的檢查了一遍,若有任何錯誤,還望指出,謝謝!