节点度分布二阶矩证明<k^2>=<k>+(<k>)^2
时间: 2023-12-14 17:03:24 浏览: 93
在一个无向图中,节点度数k是指与某个节点相连的边数。节点度分布就是指在整个图中,不同节点的度数出现的频率分布情况。具体来说,如果我们统计了每个节点度数为k的节点数n(k),那么n(k)就是节点度分布。
我们先来看一下节点度分布的一阶矩,即所有节点度数的平均值:
<k> = (k1*n1 + k2*n2 + ... + kn*nn) / N
其中,k1、k2、...、kn表示不同的节点度数,n1、n2、...、nn表示对应节点数,N表示整个图中的节点数。
接下来,我们来计算节点度分布的二阶矩:
<k^2> = (k1^2*n1 + k2^2*n2 + ... + kn^2*nn) / N
我们可以将<k^2>展开:
<k^2> = [(k1*n1 + k2*n2 + ... + kn*nn) + (k1^2*n1 + k2^2*n2 + ... + kn^2*nn - k1*n1 - k2*n2 - ... - kn*nn)] / N
然后,我们可以将第一个括号中的内容用节点度分布的一阶矩来替换,得到:
<k^2> = [<k>*N + (k1^2*n1 + k2^2*n2 + ... + kn^2*nn - k1*n1 - k2*n2 - ... - kn*nn)] / N
我们再来看第二个括号中的内容。我们可以将它写成下面这个形式:
(k1^2*n1 + k2^2*n2 + ... + kn^2*nn - k1*n1 - k2*n2 - ... - kn*nn) = (k1*n1*(k1-1) + k2*n2*(k2-1) + ... + kn*nn*(kn-1))
也就是说,这个表达式实际上是每个节点的度数乘以它自己减1之和。这个式子的意义在于,对于每个节点,它的度数可以分解为两个部分:一个是它自己的度数,另一个是它与其他节点相连的边所组成的度数。因此,这个式子就是计算所有节点与其他节点相连的边所组成的度数之和。
回到上面的式子,我们将第二个括号用上面的式子来替换,得到:
<k^2> = [<k>*N + (k1*n1*(k1-1) + k2*n2*(k2-1) + ... + kn*nn*(kn-1))] / N
我们注意到,k1、k2、...、kn是不同的节点度数,而n1、n2、...、nn则是对应的节点数。因此,我们可以将(k1-1)、(k2-1)、...、(kn-1)分别写成n1/(n1+1)、n2/(n2+1)、...、nn/(nn+1)的形式,得到:
<k^2> = [<k>*N + (k1*n1*n1/(n1+1) + k2*n2*n2/(n2+1) + ... + kn*nn*nn/(nn+1))] / N
我们将<k>用N除以N,得到:
<k^2> = <k> + [(k1*n1*n1/(n1+1) + k2*n2*n2/(n2+1) + ... + kn*nn*nn/(nn+1))] / N
现在,我们需要证明的是:
(k1*n1*n1/(n1+1) + k2*n2*n2/(n2+1) + ... + kn*nn*nn/(nn+1)) = <k>*(<k>+1)
我们可以将左边的式子写成下面这个形式:
(k1*n1*n1/(n1+1) + k2*n2*n2/(n2+1) + ... + kn*nn*nn/(nn+1)) = (k1*n1/(n1+1) + k2*n2/(n2+1) + ... + kn*nn/(nn+1)) * (k1*n1 + k2*n2 + ... + kn*nn) / N
我们注意到,k1*n1/(n1+1)、k2*n2/(n2+1)、...、kn*nn/(nn+1)是节点度分布的修正系数,它们表示的是,每个节点的度数应该按照它自己所在的度数区间进行修正。例如,对于度数为k1的节点,它应该按照n1/(n1+1)的系数进行修正。这个系数的意义在于,由于我们在统计节点度分布时,每个节点的度数被算作一个整数,因此会存在误差。修正系数就是用来纠正这个误差的。
接下来,我们将右边的式子用<k>来替换,得到:
(k1*n1*n1/(n1+1) + k2*n2*n2/(n2+1) + ... + kn*nn*nn/(nn+1)) = <k> * (<k>*N) / N
我们将<N>用<k>*N来代替,得到:
(k1*n1*n1/(n1+1) + k2*n2*n2/(n2+1) + ... + kn*nn*nn/(nn+1)) = <k> * (<k>+1)
因此,我们就证明了节点度分布的二阶矩<k^2>=<k>+(<k>)^2。