一种多元数据微融合的方法与流程

文档序号:12272099阅读:来源:国知局

技术特征:

1.一种多元数据微融合的方法,其特征在于,包括如下步骤:

步骤一,多元变量数据集X={x1,x2,...,xN},其中每一个数据元素xi是一个n元变量xi={yi1,yi2,...,yin},为了匿名保护,将数据集X分组,每一组的数据数量不小于k;

步骤二,计算数据集的全局中心以及各个数据之间的欧式距离;

步骤三,判断数据集中剩余数据的数量,如果小于k,转到步骤六,否则计算距离全局中心最远的数据,并生成一个新的分组;

步骤四,依次选择距离分组数据中心最近的数据加入到分组,新的数据加入后重新计算分组中心,直至分组数据数量为k;

步骤五,对分组进行扩展,使用分组的中心判断新的数据是否加入,并保证每一个分组的数量不超过2k-1,转至步骤二;

步骤六,将剩余的数据分别添加到信息损失增加最小的分组,并输出分组结果。

2.根据权利要求1所述的多元数据微融合的方法,其特征在于,所述步骤一包括如下步骤:

步骤1.1,数据集大小N远大于k,分组的目的为了保护匿名隐私,信息损失衡量分组带来的数据信息丢失程度,信息损失越小数据的保真度越高;

步骤1.2,假设得到Nk个分组G={g1,g2,...,gNk},对于分组gi,其组内平方和为:

<mrow> <msub> <mi>sse</mi> <mi>i</mi> </msub> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> </mrow>

其中ni为数据数量,T是转置,xij分别为gi中第j个元素和中心,所有的组内平方和为:

<mrow> <mi>S</mi> <mi>S</mi> <mi>E</mi> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>N</mi> <mi>k</mi> </msub> </munderover> <msub> <mi>sse</mi> <mi>i</mi> </msub> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>N</mi> <mi>k</mi> </msub> </munderover> <munderover> <mo>&Sigma;</mo> <mi>j</mi> <msub> <mi>n</mi> <mi>i</mi> </msub> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> </mrow>

SSE描述了数据分组后的一致性;

步骤1.3,数据集X的所有平方和为:

<mrow> <mi>S</mi> <mi>S</mi> <mi>T</mi> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>N</mi> <mi>k</mi> </msub> </munderover> <munderover> <mo>&Sigma;</mo> <mi>j</mi> <msub> <mi>n</mi> <mi>i</mi> </msub> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> </mrow>

其中为数据集的全局中心,可以知道SST与数据的分组无关,当数据集给定后SST也就确定了;

步骤1.4,分组的信息损失定义为SSE与SST的比值:

<mrow> <mi>I</mi> <mi>L</mi> <mo>=</mo> <mfrac> <mrow> <mi>S</mi> <mi>S</mi> <mi>E</mi> </mrow> <mrow> <mi>S</mi> <mi>S</mi> <mi>T</mi> </mrow> </mfrac> </mrow>

可以知道IL仅与SSE相关,最小化IL只需要最小SSE。

3.根据权利要求1所述的多元数据微融合的方法,其特征在于,所述步骤二包括如下步骤:

步骤2.1,对于数据集X,其全局中心为:

<mrow> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mo>=</mo> <mfrac> <mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msub> <mi>x</mi> <mi>i</mi> </msub> </mrow> <mi>N</mi> </mfrac> </mrow>

即:

<mrow> <msub> <mover> <mi>y</mi> <mo>&OverBar;</mo> </mover> <mi>j</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </msubsup> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> </mrow> <mi>N</mi> </mfrac> <mo>,</mo> <mo>&ForAll;</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>n</mi> </mrow>

步骤2.2,对于数据集X中的任意两个元素xi,xj其欧式距离定义为:

<mrow> <mi>d</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>,</mo> <msub> <mi>x</mi> <mi>j</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <msqrt> <mrow> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mi>x</mi> <mi>j</mi> </msub> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mi>x</mi> <mi>j</mi> </msub> <mo>)</mo> </mrow> </mrow> </msqrt> <mo>=</mo> <msqrt> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </msubsup> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>l</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>y</mi> <mrow> <mi>j</mi> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> <mo>.</mo> </mrow>

4.根据权利要求1所述的多元数据微融合的方法,其特征在于,所述步骤四包括如下步骤:

步骤4.1,对于分组gi,假设已经有ni个数据,则该分组的中心为:

<mrow> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> </msubsup> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> </mrow> <msub> <mi>n</mi> <mn>1</mn> </msub> </mfrac> </mrow>

选择距离最近的数据加入到分组gi中,并更新直至gi的数据数量为k;

步骤4.2,对于分组gi,其中心的更新按照如下方式:

<mrow> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>+</mo> <msup> <mi>x</mi> <mo>&prime;</mo> </msup> </mrow> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </mfrac> </mrow>

其中x′是新加入的数据;

步骤4.3,选择距离分组中心最近的数据元素加入是为了减少信息损失的增加量,假设x′需要加入到分组gi中,原组内平方和ssei为:

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <msub> <mi>ssee</mi> <mi>i</mi> </msub> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> </munderover> <munderover> <mo>&Sigma;</mo> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>l</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>y</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>i</mi> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> </munderover> <msubsup> <mi>y</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>l</mi> </mrow> <mn>2</mn> </msubsup> <mo>-</mo> <mfrac> <msup> <mrow> <mo>(</mo> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>m</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> </msubsup> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>m</mi> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <msub> <mi>n</mi> <mi>i</mi> </msub> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced>

当x′加入时,组内平方和变为:

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>sse</mi> <mi>i</mi> <mo>&prime;</mo> </msubsup> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mo>&Sigma;</mo> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>l</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>y</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>i</mi> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </munderover> <msubsup> <mi>y</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>l</mi> </mrow> <mn>2</mn> </msubsup> <mo>-</mo> <mfrac> <msup> <mrow> <mo>(</mo> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>m</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>m</mi> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced>

这里将x′看做是第(ni+1)个元素,那么组内平方和的增加为:

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <msub> <mi>&Delta;</mi> <mi>i</mi> </msub> <mo>=</mo> <msubsup> <mi>sse</mi> <mi>i</mi> <mo>&prime;</mo> </msubsup> <mo>-</mo> <msub> <mi>sse</mi> <mi>i</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mfrac> <msub> <mi>n</mi> <mi>i</mi> </msub> <mrow> <msub> <mi>n</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>1</mn> </mrow> </mfrac> <munderover> <mo>&Sigma;</mo> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msup> <mrow> <mo>(</mo> <msubsup> <mi>y</mi> <mi>l</mi> <mo>&prime;</mo> </msubsup> <mo>-</mo> <msub> <mover> <mi>y</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>i</mi> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced>

即,选择距离分组中心最近的数据加入能够减少组内平方和的增加,也就减少信息损失的增加。

5.根据权利要求1所述的多元数据微融合的方法,其特征在于,所述步骤五包括如下步骤:

步骤5.1,在每个分组数据数量不小k时,最优分组大小应该在k与2k-1之间,因此,在扩展分组的大小时不能超过2k-1;

步骤5.2,假设距离gi中心最近的数据为xout,其距离为在没有被加入分组的数据集中,距离xout最近距离为dout,如果满足:

<mrow> <mi>d</mi> <mrow> <mo>(</mo> <msub> <mover> <mi>x</mi> <mo>&OverBar;</mo> </mover> <mi>i</mi> </msub> <mo>,</mo> <msub> <mi>x</mi> <mrow> <mi>o</mi> <mi>u</mi> <mi>t</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>&lt;</mo> <msub> <mi>&beta;d</mi> <mrow> <mi>o</mi> <mi>u</mi> <mi>t</mi> </mrow> </msub> </mrow>

则将xout加入到gi

步骤5.3,当上式不满足或者分组大小到达2k-1则终止。

6.根据权利要求1所述的多元数据微融合的方法,其特征在于,所述步骤六包括如下步骤:

步骤6.1,对于剩余的数据,比较其距离已有的分组的中心,选择最小的分组加入;

步骤6.2,其中是数据加入分组时组内平方和增加的系数,加入后更新该分组的中心。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1