数学建模社区-数学中国

标题: 数据挖掘中的数据预处理方法总结 [打印本页]

作者: 浅夏110    时间: 2020-5-19 09:40
标题: 数据挖掘中的数据预处理方法总结
1.原始数据存在的几个问题:不一致;重复;含噪声;维度高。/ X, Q9 T* M0 o4 g
8 z3 }1 w  z& J; \2 s. t  G( p3 A
2.数据预处理包含数据清洗、数据集成、数据变换和数据归约几种方法。& h6 J# X5 J. `3 |' j

- S4 S' j8 x7 m; N6 J3.数据挖掘中使用的数据的原则# x" C, H0 T3 C# Y1 z
0 J5 M; ^( T# X, e1 a
应该是从原始数据中选取合适的属性作为数据挖掘属性,这个选取过程应参考的原则是:尽可能赋予属性名和属性值明确的含义;统一多数据源的属性值编码;去除惟一属性;去除重复性;去除可忽略字段;合理选择关联字段。3 `' t' f- {/ k1 Z& E! [

! O- X  ?6 z3 K7 e4.处理空缺值的方法:忽略该记录;去掉属性;手工填写空缺值;使用默认值;使用属性平均值;使用同类样本平均值;预测最可能的值。7 M3 h* m+ Z3 c& T$ a5 a$ y
7 b# K1 K4 ^, V4 ?8 C
5.噪声数据的处理方法:分箱;聚类;计算机和人工检查结合;回归, w1 F, d( c5 j& ]" j, l, j( `

( _3 Z. ^( e6 z6 Q* M: \6.分箱:分箱方法是一种简单常用的预处理方法,通过考察相邻数据来确定最终值。所谓“分箱”,实际上就是按照属性值划分的子区间,如果一个属性值处于某个子区间范围内,就称把该属性值放进这个子区间所代表的“箱子”内。把待处理的数据(某列属性值)按照一定的规则放进一些箱子中,考察每一个箱子中的数据,采用某种方法分别对各个箱子中的数据进行处理。在采用分箱技术时,需要确定的两个主要问题就是:如何分箱以及如何对每个箱子中的数据进行平滑处理。4 B( k" ^) H* Y  P# a3 {1 N) v

0 j* p+ c8 O$ Z$ t4 L分箱的方法:有4种:等深分箱法、等宽分箱法、最小熵法和用户自定义区间法。
1 R$ t8 |0 `. z% G. D: P7 u8 y, m. e2 [1 _$ {  E5 [
统一权重,也成等深分箱法,将数据集按记录行数分箱,每箱具有相同的记录数,每箱记录数称为箱子的深度。这是最简单的一种分箱方法。2 c* G: R- \3 ?+ B1 _+ @* w
* R' i, B, i8 I2 }  o$ c5 F
统一区间,也称等宽分箱法,使数据集在整个属性值的区间上平均分布,即每个箱的区间范围是一个常量,称为箱子宽度。6 ~* z4 q# X4 W1 `
8 a( ~( ]( O( d
用户自定义区间,用户可以根据需要自定义区间,当用户明确希望观察某些区间范围内的数据分布时,使用这种方法可以方便地帮助用户达到目的。
3 r3 K' G2 d$ ?5 t+ `. N
5 E* n6 T5 q2 H2 U例:客户收入属性income排序后的值(人民币元):800 1000 1200 1500  1500 1800 2000 2300 2500 2800 3000 3500 4000 4500 4800 5000,分箱的结果如下。
% z8 f% _. u+ W" q3 C  j
- W$ ]5 f7 D' V# \* B统一权重:设定权重(箱子深度)为4,分箱后8 u  N/ B, I$ `

8 ~2 v2 {2 M/ O) X% Y/ X箱1:800 1000 1200 15000 ^, j% m2 D7 n# z0 F+ Q" r

% K% f- t, ?" S9 g$ T7 p箱2:1500 1800 2000 2300
# K* e+ f4 G# Z. }' t
# l" h) ^3 b. b8 H箱3:2500 2800 3000 3500
: Z6 E$ f& ]0 l) H. @  o
' u7 z/ ]2 A/ u% b& c( J* x8 Q箱4:4000 4500 4800 5000   
% q; S# ^/ M+ j7 ]' S: V: o
, w, ^2 `' w7 L- c0 I1 ^统一区间:设定区间范围(箱子宽度)为1000元人民币,分箱后
3 G% L4 C) }3 O% |0 v5 D) e) @, K. Z' H' D2 c6 M+ h
箱1:800 1000 1200 1500 1500 1800/ b+ Z' i3 V9 E4 e

/ h- v% @( ?+ J2 `1 V- j箱2:2000 2300 2500 2800 3000
& x3 }7 n. g) ?7 F+ M$ ~/ W% \+ h' m6 s4 Q' b. j
箱3:3500 4000 4500, |* @" f# m- U! \/ Z

% R7 h+ n; D7 E; y; N( e7 F$ x箱4:4800 5000 + z; V! o0 ~) N% E' q+ c% g

8 P% F4 v5 b4 i& L6 X- D5 l用户自定义:如将客户收入划分为1000元以下、1000~2000、2000~3000、3000~4000和4000元以上几组,分箱后
: D7 @$ B# L; J2 }5 F6 ^6 m
- u, f0 m! Q& C箱1:800 ! O. p3 _1 S  I6 o! i4 {4 \$ F+ l% W; v
- q  r- U6 y2 \. i+ B8 A" O
箱2:1000 1200 1500 1500 1800 2000 2 K! {4 a! Q$ O5 B" y$ N# X& v: I
8 O0 I8 f1 Z& ]- W) l
箱3:2300 2500 2800 3000  ! z; Z1 t0 h7 I  z0 t

- S2 h% f) A% U箱4:3500 4000 : E1 ]- r" N: c: F* ]  e, Y
) G$ z$ w  x  u& V( |1 F; \
箱5:4500 4800 5000 4 f& n' f3 s$ {  _: N
* }; s' b& [  S/ G' Z, g$ F
7.数据平滑方法:按平均值平滑、按边界值平滑和按中值平滑。. q# A  ?  J2 G) G& ^. H- t

( z( U: E" L  O7 T! ^/ ?' y( {⑴按平均值平滑
- M$ U0 r2 n( J" X/ a' y% `8 G" ~) m! N7 t: x
对同一箱值中的数据求平均值,用平均值替代该箱子中的所有数据。 3 O( @8 c9 `) y

$ Q5 `: [& b% E/ j⑵按边界值平滑 3 y5 i) M# j' }( i3 d$ N

9 v9 q5 U: j" ^- D用距离较小的边界值替代箱中每一数据。
1 a0 C* g2 {; G) {* B8 h% @$ g# Z% g$ t4 T7 c! s% H8 z# f
⑶按中值平滑
* g$ B4 @, h( e! `) |9 f+ M+ S
& Q7 _% J8 A7 f6 O, M" r/ u取箱子的中值,用来替代箱子中的所有数据。
3 e0 T1 O1 T" ~1 D! ]) \3 x
8 v8 f) G6 x# m# n: \8.聚类:将物理的或抽象对象的集合分组为由类似的对象组成的多个类。5 a; o/ X! o% [) [2 M( Y
7 b! i4 {6 e3 M, A% c
找出并清除那些落在簇之外的值(孤立点),这些孤立点被视为噪声。- `4 m0 u+ F. d4 g/ q/ x2 \9 ^

/ \2 P- q* n+ s1 `5 |9.回归;试图发现两个相关的变量之间的变化模式,通过使数据适合一个函数来平滑数据,即通过建立数学模型来预测下一个数值,包括线性回归和非线性回归。   
/ A& p+ k7 Y: l) W( o' }- V8 N2 U0 V
10.数据集成:将多文件或者多数据库中的异构数据进行合并,然后存放在一个一致的数据存储中。考虑以下几个问题: 1.模式匹配2.数据冗余3.数据值冲突 * g+ a4 N( d5 N, ?* h9 G' |+ k  v

; g8 D, u" U* |$ U11. 数据变换:1.平滑2.聚集3.数据概化4.规范化(1)最小-最大规范化(2)零-均值规范化(3)小数定标规范化5.属性构造
1 K! b1 f8 M3 d& e! D& K4 P& L& M* G  _2 S" [
12.数据集成:将多文件或者多数据库中的异构数据进行合并,然后存放在一个一致的数据存储中。考虑以下几个问题: 1.模式匹配2.数据冗余3.数据值冲突 7 E. M! J1 X7 E, u) ?! U
  i. I( E8 l% |) M
13.数据归约:目的是为了获得比原始数据小的多的,但不破坏数据完整性的挖掘数据集,该数据集可以得到与原始数据相同的挖掘结果。
6 S' R- x* u5 F; x2 R
6 X, a$ w+ _& Z% z8 [4 I+ U  w* R$ K数据归约的方法: 1.数据立方体聚集:把聚集的方法用于数据立方体。2.维归约:检测并删除不相关、弱相关或冗余属性。3.数据压缩:选择正确的编码压缩数据集。4.数值压缩:用较小的数据表示数据,或采用较短的数据单位,或者用数据模型代表数据。5.离散化和概念分层生成:使连续的数据离散化,用确定的有限个区段值代替原始值;概念分层是指用较高层次的概念替换低层次的概念,以此来减少取值个数。. P6 S0 s5 A( `" `

( Z) C/ A" D+ e4 ~) U* y% I14.数据立方体聚集 :是数据的多维建模和表示,由维和事实组成。
( y- E6 J& f+ {6 f* @3 f% o1 q' g2 f% M0 `" e
维归约:去掉不相关的属性,减少数据挖掘处理的数据量。 3 b! l$ z9 e; o  G! r
( \( T  c, s6 p& r; y6 I8 b* D
属性子集选择的基本方法包括以下几种: 1.逐步向前选择2.逐步向后删除3.向前选择和向后删除结合4.判定树归纳5.基于统计分析的归约   
8 u$ J. {: \; s! `7 f! [9 o4 e' K6 _5 x, h7 v3 _* l# E1 r+ C
数据压缩:方法分为两类:无损压缩和有损压缩
! B$ A5 p  I) b& n5 ~' ~# t) v* A  X* H+ [! a1 S* @
数值归约常用的方法: 1.直方图2.聚类3.抽样:不放回简单随机抽样、放回简单随机抽样、聚类抽样和分层抽样4.线性回归5.非线性回归     
5 K* M4 v2 b" _7 J( g
& m% {, _( U* s" U  R" L* o15.数据变换涉及以下几个方面:1.平滑2.聚集3.数据概化4.规范化(1)最小-最大规范化(2)零-均值规范化(3)小数定标规范化5.属性构造
$ Q$ {, }9 ]- V2 G( L0 o  n1 i6 M3 J* O0 a$ v
*规范化:(1)最小—最大规范化。原取值区间 [old_min,old_max],规范化后的新的取值区间[new_min,new_max]。
% h- V1 {. S; ~
2 [: w9 X: z  O" a. t$ ]3 Jx’=  其中:x是属性的真实值,x’是规范化后的值。
9 |% e/ F! o9 E; b! N3 |
: h0 L- U  k6 J! s% ?% b例如:“客户背景数据”表中的客户月收入income属性的实际值范围为[12000,98000],要把这个属性值规范到[0,1],对属性值73600应用上述公式:1 P$ c* s0 S4 }  l% j
% q6 U$ L$ [7 a4 A" O8 l
x’=(1.0-0)+0=0.716& b) a+ v0 I% T& C: n
! P( x$ o4 u2 r1 ]
根据精度要求保留小数(假设精度要求0.01),最终取值0.72就是属性值73600规范化后的值。/ c1 J) @0 B2 @2 j
3 m/ c+ n( j2 R- B" M1 a
(2)零—均值规范化(z—score规范化),是根据属性值的平均值和标准差进行规范化,即:
! K- s. n- V3 \+ @+ C, E
' {( w2 m- b# ~1 tx’=   =  =    为所有样本属性值的平均值,为样本的标准差。当属性值范围未知的时候,可以使用此方法进行规范化。
% ^  L, Y0 j9 @' g% C" G% t
2 `, }3 O+ i. o' x( O2 t! h: l    例:假设某属性的平均值和标准差分别为80、25,采用零-均值规范化66为:x’==-0.56( E! T' ]# H5 h/ t) d! S: I" N1 w

( f; K* r9 d- e6 I. o$ Y7 ?(3)小数定标规范化:通过移动属性A的小数点位置进行规范化 。: x1 {1 L  k" P# i: Y( a
' H5 f$ n9 y3 R5 U% j* |0 `) ]5 F0 V0 v
x’= 为满足式<1的最小整数。* Y# C6 v1 P# X0 h3 t
8 y) x. E/ ~9 X8 e2 Y# m! x
例:假设某属性规范化前的取值范围为[-120,110],采用小数定标规范化66。由于该属性的最大绝对值为120,则由<1可得出=3,因此,66规范化后为:x’==0.0668 g/ y0 j( ~7 |* x" `# c% U; n/ I! c
————————————————) t! p' G$ Q5 K  l7 ]( Q
版权声明:本文为CSDN博主「搬砖老头」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。5 u* r2 x; B2 ^: ~/ a5 d' ~
原文链接:https://blog.csdn.net/wang1127248268/article/details/53571956
" |5 Q) W5 @' I! E2 `( \. V0 b1 ~: D
9 A3 `8 @! S, U1 w; `

作者: huangyanzuo    时间: 2020-5-19 12:06
棒!棒!棒!棒!棒!棒!棒!棒!, V& M% J1 P7 a, |$ M# S6 E

作者: 德古拉    时间: 2020-5-20 08:04
good content but bad edition~
4 M; L4 p6 `" H: j! J
作者: 浅夏110    时间: 2020-5-21 11:36
huangyanzuo 发表于 2020-5-19 12:06
! S1 G( t- q: l3 n  H棒!棒!棒!棒!棒!棒!棒!棒!

& A9 A% s  G: B  s! S7 u+ J. J
( J. u7 V9 d4 Y2 E/ y- c" w
作者: 浅夏110    时间: 2020-5-21 11:36
浅夏110 发表于 2020-5-21 11:36
+ L: x% w2 Y/ S1 W, v

6 {5 \% D0 z* |/ T




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5