二阶组合概率:能否用原语料概率推导组合语料概率?
我们可以基于原语料corpus1的统计量(单符号概率、联合概率等)推导CORPUS2的各类概率,核心是明确CORPUS2的生成规则,并将其概率与原语料的序列级、符号级统计量关联。以下是具体推导:
前提定义
先明确核心概念:
- 设原语料corpus1由K个序列组成,第i个序列长度为$L_i$,所有序列的总符号数$N = \sum_{i=1}^K L_i$。
- CORPUS2是对corpus1中每个序列,提取其所有无序二元位置对对应的符号组合后得到的集合,总大小$M = \sum_{i=1}^K \binom{L_i}{2} = \frac{1}{2}\left(\sum_{i=1}^K L_i^2 - N\right)$。
- 原语料统计量:$p(x)$为符号$x$的边际概率($p(x) = \frac{\text{count}(x)}{N}$);若有全局共现统计,设$\text{Co}(x,y)$为所有序列中符号$x$与$y$的同序列共现次数(即$\text{Co}(x,y) = \sum_{i=1}^K c_{x,i}c_{y,i}$,$c_{x,i}$为第i个序列中$x$的出现次数)。
1. CORPUS2中单个组合的概率$P(\text{SYM})$
情况1:原序列为独立同分布生成(符号间无依赖)
若corpus1的每个序列由独立采样自$p(x)$的符号组成,可直接用边际概率计算:
- 当$\text{SYM} = {x,y}$且$x \neq y$:$P(\text{SYM}) = 2p(x)p(y)$(无序对包含$(x,y)$和$(y,x)$两种有序情况)
- 当$\text{SYM} = {x,x}$:$P(\text{SYM}) = p(x)^2$
情况2:原序列有符号依赖(如自然语言)
此时需用原语料的全局共现统计$\text{Co}(x,y)$:
- 当$\text{SYM} = {x,y}$且$x \neq y$:$P(\text{SYM}) = \frac{\text{Co}(x,y)}{M}$($\text{Co}(x,y)$等于同序列中$x$与$y$的无序对总次数)
- 当$\text{SYM} = {x,x}$:$P(\text{SYM}) = \frac{\text{Co}(x,x) - Np(x)}{2M}$($\text{Co}(x,x) - Np(x)$是同序列中$x$的无序重复对总次数)
若只有连续二元组的概率$p(x,y)$(即序列中$y$紧跟$x$的联合概率),需结合序列长度分布推导:
设$P(L=l)$为序列长度为$l$的概率,$E[c_x c_y | L=l]$为长度$l$的序列中$c_x c_y$的期望,则:
$$P({x,y}) = \sum_{l \geq 2} P(L=l) \cdot \frac{2E[c_x c_y | L=l]}{l(l-1)}$$
其中$E[c_x c_y | L=l]$可通过序列的生成模型(如马尔可夫链)结合$p(x), p(y|x)$计算。
2. CORPUS2中的联合概率$P(\text{SYM}_1, \text{SYM}_2)$
联合概率表示随机从CORPUS2中抽取两个元素(有放回)分别为$\text{SYM}_1$和$\text{SYM}_2$的概率,公式为:
$$P(\text{SYM}_1, \text{SYM}2) = \frac{1}{M^2} \sum{i=1}^K \text{count}_i(\text{SYM}_1) \cdot \text{count}_i(\text{SYM}_2)$$
其中$\text{count}_i(\text{SYM})$是第i个序列中$\text{SYM}$的出现次数。
若原序列为独立同分布,可通过符号边际概率的高阶矩简化计算;若有依赖,需结合原语料的多符号共现统计推导。
3. CORPUS2中的条件概率$P(\text{SYM}_1 | \text{SYM}_2)$
根据条件概率的定义,直接由联合概率和边际概率推导:
$$P(\text{SYM}_1 | \text{SYM}_2) = \frac{P(\text{SYM}_1, \text{SYM}_2)}{P(\text{SYM}_2)}$$
解决核心困境
计算$P(\text{SYM})$时,若无法避开序列长度,只需获取原语料的序列长度分布(即不同长度序列的占比)和给定长度下的符号频率期望,无需实例化CORPUS2。如果原序列是独立同分布生成的,甚至可以完全脱离序列长度直接用边际概率计算。
内容的提问来源于stack exchange,提问作者sten

