Introduction
What is Data Mining ?
Data Mining:
Concepts and Techniques
— Slides for Course “Data Mining” —
— Chapter 1 —
Jiawei Han
Necessity Is
the Mother of Invention
Data explosion problem
Automated data collection tools, widely used database systems,
computerized society, and the Internet lead to tremendous
amounts of data accumulated and/or to be analyzed in
databases, data warehouses, WWW, and other information
repositories
We are drowning in data, but starving for knowledge!
Solution: Data warehousing and data mining
Data warehousing and on-line analytical processing (OLAP)
Mining interesting knowledge (rules, regularities, patterns,
constraints) from data in large databases
Evolution of Database
Technology
1960s:
Data collection, database creation, IMS and network DBMS
1970s:
Relational data model, relational DBMS implementation
Tedd Codd (1923-2003)
Structured English Query Language (SEQUEL), SQL
1980s:
Advanced data models (extended-relational, OO, deductive, etc.)
Application-oriented DBMS (spatial, scientific, engineering, etc.)
Evolution of Database Technology
1990s:
Data mining, data warehousing, multimedia databases
Web databases (..,Amazon)
2000s
Stream data management and mining
Data mining and its applications
Web technology (XML-based DB, data integration) and global
information systems
What Is Data Mining?
Data mining (knowledge discovery from data)
Extraction of interesting (non-trivial, implicit, previously unknown
and potentially useful) patterns or knowledge from huge amount
of data (interesting patterns?)
Alternative names
Data mining: a misnomer? (erro de nome)
Knowledge discovery (mining) in databases (KDD), knowledge
extraction, data/pattern analysis, data archeology, data
dredging, information harvesting, business intelligence, etc.
Watch out: Is everything “data mining”?
(Deductive) query processing.
Expert systems or small Machine Learning/statistical programs
Data Mining: Confluence of Multiple
Disciplines
Database
Technology
Machine
Learning
Algorithm
Statistics
Data Mining
Visualization
Other
Disciplines
Why Data Mining?
—Potential Applications
Data analysis and decision support
1.
Market analysis and management
•
2.
Risk analysis and management
•
3.
1.
Target marketing, customer relationship management (CRM),
market basket analysis, cross selling, market segmentation
Forecasting, customer retention, improved underwriting, quality
control, competitive analysis
Fraud detection and detection of unusual patterns (outliers)
Other Applications
Text mining (news group, email, documents) and Web mining
Medical data mining
Bioinformatics and bio-data analysis
Example 1: Market Analysis and
Management
Where does the data come from?
Credit card transactions, loyalty cards, discount
coupons, customer complaint calls, plus (public)
lifestyle studies
Target marketing
Find clusters of “model” customers who share the
same characteristics: interest, income level, spending
habits, etc.,
Determine customer purchasing patterns over time
Market Analysis and Management
Cross-market analysis—Find associations/corelations between product sales, & predict
based on such association
Customer profiling—What types of customers
buy what products (clustering or classification)
Customer requirement analysis
Identify the best products for different customers
Predict what factors will attract new customers
Example 3:
Fraud Detection & Mining Unusual Patterns
Approaches:
Unsupervised Learning: Clustering
Supervised Learning: Neuronal Networks
model construction for frauds
outlier analysis
Other applications: Health care, retail,
credit card service, telecomm.
Auto insurance: ring of collisions
Money laundering: suspicious monetary transactions
Medical insurance
Professional patients, ring of doctors, and ring of references
Unnecessary or correlated screening tests
Telecommunications: phone-call fraud
Retail industry (venda a retalho)
Phone call model: destination of the call, duration, time of day or week.
Analyze patterns that deviate from an expected norm
Analysts estimate that 38% of retail shrink is due to dishonest
employees
Anti-terrorism
Data Mining and Knowledge Discovery (KDD)
Process
Pattern Evaluation
Data mining—core of
knowledge discovery
process
Data Mining
Task-relevant Data
Data Warehouse
Data Cleaning
Data Integration
Databases
Data
Selection Mart
& Transformation
Steps of a KDD Process (1)
Learning the application domain
Data cleaning and preprocessing: (may take 60% of effort!)
To remove noise and inconsistencies
Includes data integration
Data selection
relevant prior knowledge and goals of application
Where data relevant to the analysis task are retrieved from the
database
Data transformation
Where data are transformed or consolidated into forms appropriate for
mining, by performing summary or aggregation operations, for
instance
Steps of a KDD Process (2)
Data mining: search for patterns of interest
Choosing functions of data mining: summarization,
classification, regression, association, clustering
Choosing the mining algorithm(s)
Pattern evaluation
To identify the truly interesting patterns representing knowledge
based on interestingness measures
Knowledge presentation
Where visualization and knowledge representation techniques
are used to present the mined knowledge to the user
Architecture: Typical Data Mining
System
Graphical User Interface
Pattern Evaluation
Data Mining Engine
Database or Data
Warehouse Server
data cleaning, integration, and selection
Database
Data World-Wide Other Info
Repositories
Warehouse
Web
Know
ledge
-Base
Data Mining and Business Intelligence
Increasing potential
to support
business decisions
Making
Decisions
Data Presentation
Visualization Techniques
Data Mining
Information Discovery
End User
Business
Analyst
Data
Analyst
Data Exploration
Statistical Analysis, Querying and Reporting
Data Warehouses / Data Marts
OLAP, MDA
Data Sources
Paper, Files, Information Providers, Database Systems, OLTP
DBA
Data Mining Functionalities (1)
Multidimensional concept description: Characterization
and discrimination
Frequent patterns, association, correlation and causality
Generalize, summarize, and contrast data characteristics, e.g.,
dry vs. wet regions
Smoking Cancer (Correlation or causality?)
Classification and prediction
Construct models (functions) that describe and distinguish classes
or concepts for future prediction
• E.g., classify countries based on climate, or classify cars based on
gas mileage
Predict some unknown or missing numerical values
Data Mining Functionalities (2)
Cluster analysis
Outlier analysis
Class label is unknown: Group data to form new classes, e.g.,
cluster houses to find distribution patterns
Maximizing intra-class similarity & minimizing interclass similarity
Outlier: Data object that does not comply with the general behavior
of the data
Noise or exception?
Trend and evolution analysis
Trend and deviation: e.g., regression analysis
Sequential pattern mining, periodicity analysis
Similarity-based analysis
Are All the “Discovered” Patterns
Interesting?
Data mining may generate thousands of patterns: Not all of them are
interesting
Suggested approach: Human-centered, query-based, focused mining
Interestingness measures
A pattern is interesting if it is easily understood by humans, valid on new
or test data with some degree of certainty, potentially useful, novel, or
validates some hypothesis that a user seeks to confirm
Objective vs. subjective interestingness measures
Objective: based on statistics and structures of patterns, e.g., support,
confidence, etc.
Subjective: based on userʼs belief in the data, e.g., unexpectedness,
novelty, actionability, etc.
Can We Find All and Only Interesting
Patterns?
Find all the interesting patterns: Completeness
Can a data mining system find all the interesting patterns?
Heuristic vs. exhaustive search
Association vs. classification vs. clustering
Search for only interesting patterns: An optimization problem
Can a data mining system find only the interesting patterns?
Approaches
• First general all the patterns and then filter out the uninteresting ones.
• Generate only the interesting patterns—mining query optimization
Data Mining Task
General functionality
Descriptive data mining
Predictive data mining
Different views lead to different classifications
Kinds of data to be mined
Kinds of knowledge to be discovered
Kinds of techniques utilized
Kinds of applications adapted
Data Mining from different
perspectives
Data to be mined
Knowledge to be mined
Characterization, discrimination, association, classification, clustering,
trend/deviation, outlier analysis, etc.
Multiple/integrated functions and mining at multiple levels
Techniques utilized
Object-oriented/relational, spatial, time-series, text, multi-media,
heterogeneous, legacy, WWW
Database-oriented, data warehouse, machine learning, statistics,
visualization, etc.
Applications adapted
Retail, telecommunication, banking, fraud analysis, bio-data mining, stock
market analysis, text mining, Web mining, etc.
Primitives that Define
a Data Mining Task (1)
Task-relevant data
Database or data warehouse name, Database tables or data
warehouse cubes, Condition for data selection, Relevant
attributes or dimensions, Data grouping criteria
Type of knowledge to be mined
Characterization (Categories), Discrimination, Association,
Classification/prediction, Clustering, Outlier analysis, etc
Primitives that Define
a Data Mining Task (2)
Background knowledge
Schema hierarchy (taxonomy)
• E.g., street < city < province_or_state < country
Set-grouping hierarchy
• E.g., {20-39} = young, {40-59} = middle_aged
Operation-derived hierarchy
• email address: hagonzal@cs.uiuc.edu
login-name < department < university < country
Rule-based hierarchy
• low_profit_margin (X) <= price(X, P1) and cost (X, P2) and
(P1 - P2) < $50
Primitives that Define
a Data Mining Task (3)
Pattern interestingness measurements
Simplicity, e.g., (association) rule length, (decision) tree size
Certainty, e.g., confidence, classification reliability or accuracy, certainty factor, rule
strength, rule quality, discriminating weight, etc.
Utility: potential usefulness, e.g., support (association), noise threshold (description)
Novelty: not previously known, surprising (used to remove redundant rules)
Visualization/presentation of discovered patterns
Different backgrounds/usages may require different forms of
representation
• E.g., rules, tables, crosstabs, pie/bar chart, etc.
• Interactive drill up/down, pivoting, slicing and dicing provide
different perspectives to data
Why Data Mining Query Language?
Automated vs. query-driven?
Finding all the patterns autonomously in a database?—
unrealistic because the patterns could be too many but
uninteresting
Data mining should be an interactive process
User directs what to be mined
Users must be provided with a set of primitives to be used
to communicate with the data mining system
Incorporating these primitives in a data mining query
language
More flexible user interaction
Foundation for design of graphical user interface
Standardization of data mining industry and practice
DMQL—A Data Mining Query
Language
Motivation
A DMQL can provide the ability to support ad-hoc and
interactive data mining
By providing a standardized language like SQL
• Hope to achieve a similar effect like that SQL has on
relational database
• Foundation for system development and evolution
• Facilitate information exchange, technology transfer,
commercialization and wide acceptance
Design
DMQL is designed with the primitives described earlier
An Example Query in DMQL
Other Data Mining Languages &
Standardization Efforts
Association rule language specifications
MSQL (Imielinski & Virmaniʼ99)
MineRule (Meo Psaila and Ceriʼ96)
Query flocks based on Datalog syntax (Tsur et alʼ98)
OLEDB for DM (Microsoftʼ2000) and recently DMX (Microsoft
SQLServer 2005)
Based on OLE, OLE DB, OLE DB, C#
Integrating DBMS, data warehouse and data mining
DMML (Data Mining Mark-up Language) by DMG (www.dmg.org)
Providing a platform and process structure for effective data mining
Emphasizing on deploying data mining technology to solve business
problems
Coupling Data Mining with
DB/DW Systems
No coupling—flat file processing, not recommended
Loose coupling
Semi-tight coupling—enhanced DM performance
Fetching data from DB/DW
Provide efficient implement a few data mining primitives in a DB/
DW system, e.g., sorting, indexing, aggregation, histogram
analysis, multiway join, precomputation of some stat functions
Tight coupling—A uniform information processing
environment
DM is smoothly integrated into a DB/DW system, mining query is
optimized based on mining query, indexing, etc.
Summary
Data mining: discovering interesting patterns from large amounts of
data (DB)
A natural evolution of database technology, in great demand, with
wide applications
A KDD process includes data cleaning, data integration (Data
Warehouse), data selection (Data Mart), transformation, data mining,
pattern evaluation, and knowledge presentation
Mining can be performed in a variety of information repositories
Data mining functionalities: characterization, discrimination,
association, classification, clustering, outlier and trend analysis, etc.
Subjective, requires expert knowledge
Data mining systems and architectures
A Brief History of Data Mining
Society
1989 IJCAI Workshop on Knowledge Discovery in Databases
• Knowledge Discovery in Databases (G. Piatetsky-Shapiro and W. Frawley,
1991)
1991-1994 Workshops on Knowledge Discovery in Databases
• Advances in Knowledge Discovery and Data Mining (U. Fayyad, G. PiatetskyShapiro, P. Smyth, and R. Uthurusamy, 1996)
1995-1998 International Conferences on Knowledge Discovery in Databases
and Data Mining (KDDʼ95-98)
• Journal of Data Mining and Knowledge Discovery (1997)
ACM SIGKDD conferences since 1998 and SIGKDD Explorations
More conferences on data mining
• PAKDD (1997), PKDD (1997), SIAM-Data Mining (2001), (IEEE) ICDM (2001),
etc.
ACM Transactions on KDD starting in 2007
Conferences and Journals on Data
Mining
ACM SIGKDD Int. Conf. on
Knowledge Discovery in
Databases and Data Mining
(KDD)
SIAM Data Mining Conf.
(SDM)
(IEEE) Int. Conf. on Data
Mining (ICDM)
Conf. on Principles and
practices of Knowledge
Discovery and Data Mining
(PKDD)
Pacific-Asia Conf. on
Knowledge Discovery and
Data Mining (PAKDD)
Journals:
Data Mining and
Knowledge Discovery
(DAMI or DMKD)
IEEE Trans. On
Knowledge and Data
Eng. (TKDE)
KDD Explorations
ACM Trans. on KDD
Where to Find References?—DBLP, CiteSeer,
Google
Data mining and KDD (SIGKDD: CDROM)
Database systems (SIGMOD: ACM SIGMOD Anthology—CD ROM)
Conferences: ACM-SIGKDD, IEEE-ICDM, SIAM-DM, PKDD, PAKDD, etc.
Journal: Data Mining and Knowledge Discovery, KDD Explorations, ACM TKDD
Conferences: ACM-SIGMOD, ACM-PODS, VLDB, IEEE-ICDE, EDBT, ICDT,
DASFAA
Journals: IEEE-TKDE, ACM-TODS/TOIS, JIIS, J. ACM, VLDB J., Info. Sys., etc.
AI & Machine Learning
Conferences: Machine learning (ML), AAAI, IJCAI, COLT (Learning Theory),
CVPR, NIPS, etc.
Journals: Machine Learning, Artificial Intelligence, Knowledge and Information
Systems, IEEE-PAMI, etc.
Recommended Reference
Books
S. Chakrabarti. Mining the Web: Statistical Analysis of Hypertex and Semi-Structured Data. Morgan Kaufmann, 2002
R. O. Duda, P. E. Hart, and D. G. Stork, Pattern Classification, 2ed., Wiley-Interscience, 2000
T. Dasu and T. Johnson. Exploratory Data Mining and Data Cleaning. John Wiley & Sons, 2003
U. M. Fayyad, G. Piatetsky-Shapiro, P. Smyth, and R. Uthurusamy. Advances in Knowledge Discovery and Data
Mining. AAAI/MIT Press, 1996
U. Fayyad, G. Grinstein, and A. Wierse, Information Visualization in Data Mining and Knowledge Discovery, Morgan
Kaufmann, 2001
J. Han and M. Kamber. Data Mining: Concepts and Techniques. Morgan Kaufmann, 2nd ed., 2006
D. J. Hand, H. Mannila, and P. Smyth, Principles of Data Mining, MIT Press, 2001
T. Hastie, R. Tibshirani, and J. Friedman, The Elements of Statistical Learning: Data Mining, Inference, and
Prediction, Springer-Verlag, 2001
T. M. Mitchell, Machine Learning, McGraw Hill, 1997
G. Piatetsky-Shapiro and W. J. Frawley. Knowledge Discovery in Databases. AAAI/MIT Press, 1991
P.-N. Tan, M. Steinbach and V. Kumar, Introduction to Data Mining, Wiley, 2005
S. M. Weiss and N. Indurkhya, Predictive Data Mining, Morgan Kaufmann, 1998
I. H. Witten and E. Frank, Data Mining: Practical Machine Learning Tools and Techniques with Java
Implementations, Morgan Kaufmann, 2nd ed. 2005
Data Warehousing and OLAP
Technology
http://www-sal.cs.uiuc.edu/~hanj/
Chapter 3, Slides:
http://www-sal.cs.uiuc.edu/~hanj/bk2/