一种基于KNN的改进缺失数据填补算法的制作方法

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

技术特征:

1.一种基于KNN的改进缺失数据填补算法,其特征在于包括步骤:

(1)对数据属性进行精简预处理,包括步骤:

设数据集X={X1,X2,…,Xn},n为事例的个数;定义数据集中第i条事例Xi的属性j值为xij,将xij表示为:

xij=k1jxi1+k2jxi2+…ktjxit+…+kmjxim,t≠j

式(1)中,m为Xi的属性总数目,ktj表示属性t对于属性j的权重系数;

定义属性t和属性j之间的相关系数为ptj,ptj的表达式为:

<mrow> <msub> <mi>p</mi> <mrow> <mi>t</mi> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </msubsup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>t</mi> </mrow> </msub> <mo>-</mo> <mover> <msub> <mi>x</mi> <mi>t</mi> </msub> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </msubsup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mover> <msub> <mi>x</mi> <mi>j</mi> </msub> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> </mrow> <mrow> <msqrt> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </msubsup> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>t</mi> </mrow> </msub> <mo>-</mo> <mover> <msub> <mi>x</mi> <mi>t</mi> </msub> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> <mo>-</mo> <msqrt> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </msubsup> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mover> <msub> <mi>x</mi> <mi>j</mi> </msub> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> </mrow> </mfrac> </mrow>

计算权重系数ktj为:

<mrow> <msub> <mi>k</mi> <mrow> <mi>t</mi> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <msup> <mrow> <mo>|</mo> <msub> <mi>p</mi> <mrow> <mi>t</mi> <mi>j</mi> </mrow> </msub> <mo>|</mo> </mrow> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </msubsup> <msup> <mrow> <mo>|</mo> <msub> <mi>p</mi> <mrow> <mi>t</mi> <mi>j</mi> </mrow> </msub> <mo>|</mo> </mrow> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> </mrow> </mfrac> </mrow>

设置阈值A,当满足ktj<A时,删除属性t;

(2)选择缺失事例的邻近样本,包括步骤:

基于步骤(1)精简后的剩余属性数据,分别计算缺失事例各属性之间的马氏距离以及缺失事例与其他事例间的灰色相关系数;根据计算出的马氏距离和灰色相关系数计算邻近样本选择距离:

<mrow> <msub> <mi>D</mi> <mrow> <mi>i</mi> <mi>s</mi> <mi>t</mi> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>a</mi> </msub> <mo>,</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mi>C</mi> <mi>R</mi> <mi>G</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>a</mi> </msub> <mo>,</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>M</mi> <mi>a</mi> <mi>h</mi> <mi>a</mi> <mi>l</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow> <mn>2</mn> </mfrac> </mrow>

a∈[1,2,…,n]且a≠i

式中,CRG(xa,xi)表示事例Xa与Xi之间的灰色关联度,Mahal(xaj,xij)表示属性xa与xi之间的马氏距离;

从数据集X中挑选出与缺失事例之间的距离dk满足dk≤Dist(xt,xi)的K个完整事例,k∈[1,2,…,K];

(3)计算缺失事例的填补估计值,包括步骤:

将步骤(2)中选出的K个完整事例形成的数据集记为Y=[y1,y2,…,yk,…,yK]

<mrow> <msub> <mi>y</mi> <mi>k</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>x</mi> <mi>k</mi> </msub> <mo>-</mo> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>k</mi> </msub> <mo>)</mo> </mrow> </mrow> <mrow> <mi>max</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>k</mi> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>k</mi> </msub> <mo>)</mo> </mrow> </mrow> </mfrac> </mrow>

计算事例yk对应属性的熵权值Ek为:

Ek=-Mpklnpk

<mrow> <mi>M</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mi>ln</mi> <mi> </mi> <mi>K</mi> </mrow> </mfrac> </mrow>

<mrow> <msub> <mi>p</mi> <mi>k</mi> </msub> <mo>=</mo> <mfrac> <msub> <mi>y</mi> <mi>k</mi> </msub> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>K</mi> </msubsup> <msub> <mi>y</mi> <mi>k</mi> </msub> </mrow> </mfrac> </mrow>

根据熵权值Ek计算事例yk的属性权值:

<mrow> <msub> <mi>w</mi> <mi>k</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mn>1</mn> <mo>-</mo> <msub> <mi>E</mi> <mi>k</mi> </msub> </mrow> <mrow> <mi>K</mi> <mo>-</mo> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>K</mi> </msubsup> <msub> <mi>E</mi> <mi>k</mi> </msub> </mrow> </mfrac> </mrow>

其中,0≤wk≤1,

计算缺失事例的填补估计值为:

<mrow> <msub> <mi>X</mi> <mi>i</mi> </msub> <mo>=</mo> <mfrac> <mn>1</mn> <mi>K</mi> </mfrac> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>K</mi> </munderover> <msub> <mi>w</mi> <mi>K</mi> </msub> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>K</mi> </mrow> </msub> <mo>.</mo> </mrow>

2.根据权利要求1所述的一种基于KNN的改进缺失数据填补算法,其特征在于,所述步骤(2)中的马氏距离Mahal(xtj,xij)的计算方法为:

<mrow> <mi>M</mi> <mi>a</mi> <mi>h</mi> <mi>a</mi> <mi>l</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <msqrt> <mrow> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mi>T</mi> </msup> <msup> <mo>&Sigma;</mo> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow> </msqrt> </mrow>

式中,T代表转置矩阵,Σ代表样本协方差。

3.根据权利要求2所述的一种基于KNN的改进缺失数据填补算法,其特征在于,所述步骤(2)中的灰色相关系数的计算方法为:

将所有属性值均量化到区间[0,1],计算事例Xa与事例Xi在属性p上灰色相关系数为:

<mrow> <mi>G</mi> <mi>R</mi> <mi>C</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>p</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>p</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msub> <mi>min</mi> <mrow> <mo>&ForAll;</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>min</mi> <mrow> <mo>&ForAll;</mo> <mi>q</mi> </mrow> </msub> <mrow> <mo>|</mo> <mrow> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>q</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>q</mi> </mrow> </msub> </mrow> <mo>|</mo> </mrow> <mo>+</mo> <msub> <mi>&rho;max</mi> <mrow> <mo>&ForAll;</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>max</mi> <mrow> <mo>&ForAll;</mo> <mi>q</mi> </mrow> </msub> <mrow> <mo>|</mo> <mrow> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>q</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>q</mi> </mrow> </msub> </mrow> <mo>|</mo> </mrow> </mrow> <mrow> <mrow> <mo>|</mo> <mrow> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>p</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>p</mi> </mrow> </msub> </mrow> <mo>|</mo> </mrow> <mo>+</mo> <msub> <mi>&rho;max</mi> <mrow> <mo>&ForAll;</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>max</mi> <mrow> <mo>&ForAll;</mo> <mi>q</mi> </mrow> </msub> <mrow> <mo>|</mo> <mrow> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>q</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>q</mi> </mrow> </msub> </mrow> <mo>|</mo> </mrow> </mrow> </mfrac> </mrow>

式中,ρ为调整参数,ρ∈(0,1);q∈[1,2,…,m];

根据GRC(xap,xip)计算事例Xa与事例Xi之间的灰色相关系数为:

<mrow> <mi>G</mi> <mi>R</mi> <mi>C</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>a</mi> </msub> <mo>,</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mn>1</mn> <mi>m</mi> </mfrac> <munderover> <mo>&Sigma;</mo> <mrow> <mi>q</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <msub> <mi>w</mi> <mi>q</mi> </msub> <mi>G</mi> <mi>R</mi> <mi>C</mi> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mrow> <mi>a</mi> <mi>q</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>q</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>.</mo> </mrow>

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