灰色系统 - 关联度分析法-数据变换
在现实中,我们常常遇到多变量问题,对变量因素进行分析,哪些变量是主要的,哪些变量是次要的。 例如,小明在各个学科所花费的时间和总成绩之间的关系,需要研究小明应该如何规划在各科学习时间,才有助于提高总成绩,实际上我们需要分析各科所花费时间(变量)哪些是主要的,哪些是次要的。我们可以采用回归分析,但是回归分析需要有大量的样本数据,计算量大,扩展性不高。而在灰色系统中,采用关联度分析法。
原始数据处理的必要性
关联度分析法首先要解决的原始数据处理的问题。怎么说呢?在做关联度分析法,首先要保证所有数据是无量纲的,并且数据是可以比较的(相差不大)。例如,对于身高序列和体重序列,两个序列的单位都不统一,而且如果身高采用km
,体重采用g
,二者序列的数据变化太大。因此在做关联度分析法,首先将原始数据进行处理,变为无量纲,可比较的。这个可比较实际可以看做归一化的过程。
数据变换
数据变换的技术很多,应该根据实际的问题进行选择。数据变换的基本定义(实际就是函数定义):
假设序列:
x
=
(
x
(
1
)
,
x
(
2
)
,
.
.
.
,
x
(
x
)
)
x=(x(1),x(2),...,x(x))
x=(x(1),x(2),...,x(x))
则映射:
f
:
x
−
>
y
f:x->y
f:x−>y
f ( x ( k ) ) = y ( k ) , k = 1 , 2 , 3 , . . . , n f(x(k))=y(k),k=1,2,3,...,n f(x(k))=y(k),k=1,2,3,...,n
称为序列 x
到序列 y
的数据变换
常用的数据变换
1. 初值化变换
f ( x ( k ) ) = x ( k ) x ( 1 ) = y ( k ) , k = 1 , 2 , 3 , . . . , n x ( 1 ) ≠ 0 f(x(k))=\frac{x(k)}{x(1)}=y(k),k=1,2,3,...,n \quad \quad x(1)\neq0 f(x(k))=x(1)x(k)=y(k),k=1,2,3,...,nx(1)=0
2. 均值化变换
f ( x ( k ) ) = x ( k ) x ˉ = y ( k ) , k = 1 , 2 , 3 , . . . , n x ˉ ≠ 0 x ˉ = 1 n ∑ k = 1 n x ( k ) f(x(k))=\frac{x(k)}{\bar x}=y(k),k=1,2,3,...,n \quad \bar x \neq0 \quad \bar x =\frac{1}{n}\sum_{k=1}^nx(k) f(x(k))=xˉx(k)=y(k),k=1,2,3,...,nxˉ=0xˉ=n1k=1∑nx(k)
3. 百分比变换
f ( x ( k ) ) = x ( k ) max k x ( k ) = y ( k ) , k = 1 , 2 , 3 , . . . , n max k x ( k ) ≠ 0 f(x(k))=\frac{x(k)}{\max \limits_{k} x(k)}=y(k),k=1,2,3,...,n \quad \quad \max \limits_{k} x(k) \neq0 f(x(k))=kmaxx(k)x(k)=y(k),k=1,2,3,...,nkmaxx(k)=0
4. 倍数变换
f ( x ( k ) ) = x ( k ) min k x ( k ) = y ( k ) , k = 1 , 2 , 3 , . . . , n min k x ( k ) ≠ 0 f(x(k))=\frac{x(k)}{\min \limits_{k} x(k)}=y(k),k=1,2,3,...,n \quad \quad \min \limits_{k} x(k) \neq0 f(x(k))=kminx(k)x(k)=y(k),k=1,2,3,...,nkminx(k)=0
5. 归一化变换
f ( x ( k ) ) = x ( k ) x 0 = y ( k ) , k = 1 , 2 , 3 , . . . , n x 0 > 0 f(x(k))=\frac{x(k)}{x_{0}}=y(k),k=1,2,3,...,n \quad \quad x_{0}>0 f(x(k))=x0x(k)=y(k),k=1,2,3,...,nx0>0
6. 极差最大值化变换
f ( x ( k ) ) = x ( k ) − min k x ( k ) max k x ( k ) = y ( k ) , k = 1 , 2 , 3 , . . . , n max k x ( k ) ≠ 0 f(x(k))=\frac{x(k)- \min \limits_{k} x(k) }{\max \limits_{k} x(k)}=y(k),k=1,2,3,...,n \quad \quad \max \limits_{k} x(k) \neq0 f(x(k))=kmaxx(k)x(k)−kminx(k)=y(k),k=1,2,3,...,nkmaxx(k)=0
7. 区间值化变换
f ( x ( k ) ) = x ( k ) − min k x ( k ) max k x ( k ) − min k x ( k ) = y ( k ) , k = 1 , 2 , 3 , . . . , n max k x ( k ) − min k x ( k ) ≠ 0 f(x(k))=\frac{x(k)- \min \limits_{k} x(k) }{\max \limits_{k} x(k)-\min \limits_{k} x(k)}=y(k),k=1,2,3,...,n \quad \quad \max \limits_{k} x(k)-\min \limits_{k} x(k) \neq0 f(x(k))=kmaxx(k)−kminx(k)x(k)−kminx(k)=y(k),k=1,2,3,...,nkmaxx(k)−kminx(k)=0