03 Preprocessing
03 Preprocessing
— Chapter 3 —
Jiawei Han, Micheline Kamber, and Jian Pei
University of Illinois at Urbana-Champaign &
Simon Fraser University
©2011 Han, Kamber & Pei. All rights reserved.
1
Chapter 3: Data Preprocessing
■ Data Quality
■ Data Cleaning
■ Data Integration
■ Data Reduction
■ Summary
2
Data Quality: Why Preprocess the Data?
3
Major Tasks in Data Preprocessing
■ Data cleaning
■ Fill in missing values, smooth noisy data, identify or remove
outliers, and resolve inconsistencies
■ Data integration
■ Integration of multiple databases, data cubes, or files
■ Data reduction
■ Dimensionality reduction
■ Numerosity reduction
■ Data compression
■ Data transformation and data discretization
■ Normalization
■ Concept hierarchy generation
4
Chapter 3: Data Preprocessing
■ Data Quality
■ Data Cleaning
■ Data Integration
■ Data Reduction
■ Summary
5
Data Cleaning
■ Data in the Real World Is Dirty: Lots of potentially incorrect data,
e.g., instrument faulty, human or computer error, transmission error
■ incomplete: lacking attribute values, lacking certain attributes of
interest, or containing only aggregate data
■ e.g., Occupation=“ ” (missing data)
■ noisy: containing noise, errors, or outliers
■ e.g., Salary=“−10” (an error)
■ inconsistent: containing discrepancies in codes or names, e.g.,
■ Age=“42”, Birthday=“03/07/2010”
■ Was rating “1, 2, 3”, now rating “A, B, C”
■ discrepancy between duplicate records
■ Intentional (e.g., disguised missing data)
■ Jan. 1 as everyone’s birthday?
6
Incomplete (Missing) Data
■ technology limitation
■ incomplete data
■ inconsistent data
9
How to Handle Noisy Data?
■ Binning
■ first sort data and partition into (equal-frequency) bins
■ Clustering
■ detect and remove outliers
10
Data Cleaning as a Process
■ Data discrepancy detection
■ Use metadata (e.g., domain, range, dependency, distribution)
11
Chapter 3: Data Preprocessing
■ Data Quality
■ Data Cleaning
■ Data Integration
■ Data Reduction
■ Summary
12
Data Integration
■ Data integration:
■ Combines data from multiple sources into a coherent store
■ Schema integration: e.g., A.cust-id ≡ B.cust-#
■ Integrate metadata from different sources
■ Entity identification problem:
■ Identify real world entities from multiple data sources, e.g., Bill
Clinton = William Clinton
■ Detecting and resolving data value conflicts
■ For the same real world entity, attribute values from different
sources are different
■ Possible reasons: different representations, different scales, e.g.,
metric vs. British units
13
Handling Redundancy in Data Integration
■ The larger the Χ2 value, the more likely the variables are
related
■ The cells that contribute the most to the Χ2 value are
those whose actual count is very different from the
expected count
■ Correlation does not imply causality
■ # of hospitals and # of car-theft in a city are correlated
■ Both are causally linked to the third variable: population
15
Chi-Square Calculation: An Example
17
Visually Evaluating Correlation
Scatter plots
showing the
similarity from
–1 to 1.
18
Covariance (Numeric Data)
■ Covariance is similar to correlation
Correlation coefficient:
■ Suppose two stocks A and B have the following values in one week:
(2, 5), (3, 8), (5, 10), (4, 11), (6, 14).
■ Question: If the stocks are affected by the same industry trends, will
their prices rise or fall together?
■ Data Quality
■ Data Cleaning
■ Data Integration
■ Data Reduction
■ Summary
21
Data Reduction Strategies
■ Data reduction: Obtain a reduced representation of the data set that
is much smaller in volume but yet produces the same (or almost the
same) analytical results
■ Why data reduction? — A database/data warehouse may store
terabytes of data. Complex data analysis may take a very long time to
run on the complete data set.
■ Data reduction strategies
■ Dimensionality reduction, e.g., remove unimportant attributes
■ Wavelet transforms
■ Data compression
22
Data Reduction 1: Dimensionality Reduction
■ Curse of dimensionality
■ When dimensionality increases, data becomes increasingly sparse
■ Density and distance between points, which is critical to clustering, outlier
analysis, becomes less meaningful
■ The possible combinations of subspaces will grow exponentially
■ Dimensionality reduction
■ Avoid the curse of dimensionality
■ Help eliminate irrelevant features and reduce noise
■ Reduce time and space required in data mining
■ Allow easier visualization
■ Dimensionality reduction techniques
■ Wavelet transforms
■ Principal Component Analysis
■ Supervised and nonlinear techniques (e.g., feature selection)
23
Principal Component Analysis (PCA)
■ Find a projection that captures the largest amount of variation in data
■ The original data are projected onto a much smaller space, resulting
in dimensionality reduction. We find the eigenvectors of the
covariance matrix, and these eigenvectors define the new space
x2
x1
24
Principal Component Analysis (Steps)
■ Given N data vectors from n-dimensions, find k ≤ n orthogonal vectors
(principal components) that can be best used to represent data
■ Normalize input data: Each attribute falls within the same range
■ Compute k orthonormal (unit) vectors, i.e., principal components
■ Each input data (vector) is a linear combination of the k principal
component vectors
■ The principal components are sorted in order of decreasing
“significance” or strength
■ Since the components are sorted, the size of the data can be
reduced by eliminating the weak components, i.e., those with low
variance (i.e., using the strongest principal components, it is
possible to reconstruct a good approximation of the original data)
■ Works for numeric data only
25
Attribute Subset Selection
■ Another way to reduce dimensionality of data
■ Redundant attributes
■ Duplicate much or all of the information contained in
one or more other attributes
■ E.g., purchase price of a product and the amount of
sales tax paid
■ Irrelevant attributes
■ Contain no information that is useful for the data
mining task at hand
■ E.g., students' ID is often irrelevant to the task of
predicting students' GPA
26
Heuristic Search in Attribute Selection
27
Data Reduction 2: Numerosity Reduction
■ Reduce data volume by choosing alternative, smaller
forms of data representation
■ Parametric methods (e.g., regression)
■ Assume the data fits some model, estimate model
28
Parametric Data Reduction: Regression and
Log-Linear Models
■ Linear regression
■ Data modeled to fit a straight line
■ Multiple regression
■ Allows a response variable Y to be modeled as a
distributions
29
y
Regression Analysis
Y1
30
Regress Analysis and Log-Linear Models
■ Linear regression: Y = w X + b
■ Two regression coefficients, w and b, specify the line and are to be
estimated by using the data at hand
■ Using the least squares criterion to the known values of Y1, Y2, …,
X1, X2, ….
■ Multiple regression: Y = b0 + b1 X1 + b2 X2
■ Many nonlinear functions can be transformed into the above
■ Log-linear models:
■ Approximate discrete multidimensional probability distributions
■ Estimate the probability of each point (tuple) in a multi-dimensional
space for a set of discretized attributes, based on a smaller subset
of dimensional combinations
■ Useful for dimensionality reduction and data smoothing
31
Histogram Analysis
32
Clustering
33
Sampling
item
■ Sampling without replacement
■ Once an object is selected, it is removed from the
population
■ Sampling with replacement
■ A selected object is not removed from the population
■ Stratified sampling:
■ Partition the data set, and draw samples from each
partition (proportionally, i.e., approximately the same
percentage of the data)
■ Used in conjunction with skewed data
35
Sampling: With or without Replacement
Raw Data
36
Sampling: Cluster or Stratified Sampling
37
Data Reduction 3: Data Compression
■ String compression
■ There are extensive theories and well-tuned algorithms
Original Data
Approximated
39
Chapter 3: Data Preprocessing
■ Data Quality
■ Data Cleaning
■ Data Integration
■ Data Reduction
■ Summary
40
Data Transformation
■ A function that maps the entire set of values of a given attribute to a
new set of replacement values s.t. each old value can be identified
with one of the new values
■ Methods
■ Smoothing: Remove noise from data
■ Attribute/feature construction
■ New attributes constructed from the given ones
■ Aggregation: Summarization, data cube construction
■ Normalization: Scaled to fall within a smaller, specified range
■ min-max normalization
■ z-score normalization
■ normalization by decimal scaling
■ Discretization: Concept hierarchy climbing 41
Normalization
■ Min-max normalization: to [new_minA, new_maxA]
42
Discretization
■ Three types of attributes
■ Nominal—values from an unordered set, e.g., color, profession
■ Ordinal—values from an ordered set, e.g., military or academic
rank
■ Numeric—real numbers, e.g., integer or real numbers
■ Discretization: Divide the range of a continuous attribute into intervals
■ Interval labels can then be used to replace actual data values
■ Reduce data size by discretization
■ Supervised vs. unsupervised
■ Split (top-down) vs. merge (bottom-up)
■ Discretization can be performed recursively on an attribute
■ Prepare for further analysis, e.g., classification
43
Data Discretization Methods
■ Typical methods: All the methods can be applied recursively
■ Binning
■ Top-down split, unsupervised
■ Histogram analysis
■ Top-down split, unsupervised
■ Clustering analysis (unsupervised, top-down split or
bottom-up merge)
■ Decision-tree analysis (supervised, top-down split)
■ Correlation (e.g., χ2) analysis (unsupervised, bottom-up
merge)
44
Simple Discretization: Binning
❑ Sorted data for price (in dollars): 4, 8, 9, 15, 21, 21, 24, 25, 26,
28, 29, 34
* Partition into equal-frequency (equi-depth) bins:
- Bin 1: 4, 8, 9, 15
- Bin 2: 21, 21, 24, 25
- Bin 3: 26, 28, 29, 34
* Smoothing by bin means:
- Bin 1: 9, 9, 9, 9
- Bin 2: 23, 23, 23, 23
- Bin 3: 29, 29, 29, 29
* Smoothing by bin boundaries:
- Bin 1: 4, 4, 4, 15
- Bin 2: 21, 21, 25, 25
- Bin 3: 26, 26, 26, 34
46
Discretization Without Using Class Labels
(Binning vs. Clustering)
47
Discretization by Classification &
Correlation Analysis
■ Classification (e.g., decision tree analysis)
■ Supervised: Given class labels, e.g., cancerous vs. benign
■ Using entropy to determine split point (discretization point)
■ Top-down, recursive split
■ Details to be covered in Chapter 7
■ Correlation analysis (e.g., Chi-merge: χ2-based discretization)
■ Supervised: use class information
■ Bottom-up merge: find the best neighboring intervals (those
having similar distributions of classes, i.e., low χ2 values) to merge
■ Merge performed recursively, until a predefined stopping condition
48
Concept Hierarchy Generation
49
Concept Hierarchy Generation
for Nominal Data
■ Specification of a partial/total ordering of attributes
explicitly at the schema level by users or experts
■ street < city < state < country
■ Specification of a hierarchy for a set of values by explicit
data grouping
■ {Urbana, Champaign, Chicago} < Illinois
■ Specification of only a partial set of attributes
■ E.g., only street < city, not others
■ Automatic generation of hierarchies (or attribute levels) by
the analysis of the number of distinct values
■ E.g., for a set of attributes: {street, city, state, country}
50
Automatic Concept Hierarchy Generation
■ Some hierarchies can be automatically generated based on
the analysis of the number of distinct values per attribute in
the data set
■ The attribute with the most distinct values is placed at
■ Data Quality
■ Data Cleaning
■ Data Integration
■ Data Reduction
■ Summary
52
Summary
■ Data quality: accuracy, completeness, consistency, timeliness,
believability, interpretability
■ Data cleaning: e.g. missing/noisy values, outliers
■ Data integration from multiple sources:
■ Entity identification problem
■ Remove redundancies
■ Detect inconsistencies
■ Data reduction
■ Dimensionality reduction
■ Numerosity reduction
■ Data compression
53
References
■ D. P. Ballou and G. K. Tayi. Enhancing data quality in data warehouse environments. Comm. of
ACM, 42:73-78, 1999
■ A. Bruce, D. Donoho, and H.-Y. Gao. Wavelet analysis. IEEE Spectrum, Oct 1996
■ T. Dasu and T. Johnson. Exploratory Data Mining and Data Cleaning. John Wiley, 2003
■ J. Devore and R. Peck. Statistics: The Exploration and Analysis of Data. Duxbury Press, 1997.
■ H. Galhardas, D. Florescu, D. Shasha, E. Simon, and C.-A. Saita. Declarative data cleaning:
Language, model, and algorithms. VLDB'01
■ M. Hua and J. Pei. Cleaning disguised missing data: A heuristic approach. KDD'07
■ H. V. Jagadish, et al., Special Issue on Data Reduction Techniques. Bulletin of the Technical
Committee on Data Engineering, 20(4), Dec. 1997
■ H. Liu and H. Motoda (eds.). Feature Extraction, Construction, and Selection: A Data Mining
Perspective. Kluwer Academic, 1998
■ J. E. Olson. Data Quality: The Accuracy Dimension. Morgan Kaufmann, 2003
■ D. Pyle. Data Preparation for Data Mining. Morgan Kaufmann, 1999
■ V. Raman and J. Hellerstein. Potters Wheel: An Interactive Framework for Data Cleaning and
Transformation, VLDB’2001
■ T. Redman. Data Quality: The Field Guide. Digital Press (Elsevier), 2001
■ R. Wang, V. Storey, and C. Firth. A framework for analysis of data quality research. IEEE Trans.
Knowledge and Data Engineering, 7:623-640, 1995
54