Document 7455821

Download Report

Transcript Document 7455821

Introduction to Data Mining
(What, Why, and How)
2016/5/23
Data Mining
1
喔!我想要訂購
王先生您好,先跟您核對一下個
您可以試試看我們新推出
我們要先安排司機送貨路
對不起,您今天提領
好的!我立刻請庫房幫您
您不是剛買了一輛
您所住的房子臥室有五坪
因為根據google的使用紀
對不起,要請您用現金付
喔?我手邊的現金
一台室內跑步機
人資料:您住在民生路二段34號
的全方位按摩椅,不必做
那……妳能不能推
根據您太太的醫療紀錄,
喔…..
妳怎麼知道
線,最快大約要三小時才
喔!那我先去領錢,
陳小姐妳好,
王先生,室內跑步機不適
王先生,因為我們已經連
沒錯!你怎麼知
備貨。不過,王先生,要
的現金已經超過提款
Discovery休旅車,車號是
大,而您只購買過一張雙
喔!可是我怕按摩椅
喔!那這台按摩椅要
喔!我的身分證
錄,您上星期用『按摩椅』
款,因為您的兩張信用卡
應該還夠,妳們快
什麼?!
送給我老婆當生
5樓,您家電話是21234567,您
激烈運動也能達到全身運
薦其他的禮物?
她有膝關節疼痛的毛病,
啊?好吧!那我自
我剛好想買按摩椅呢?
為什麼?
能送到,如果您等不及,
妳們趕快把按摩椅
線到『神機妙算客服系統』
合您太太喔。
………………
道得這麼詳細?
奇奇電視購物您好,
請您開慢一點,因為您今
我想要………
KG-3838,用這台車載按
人床和一座四尺寬的衣櫃,
機的每日提款限額囉
太大,我的臥室會放
賣多少錢呢?
號碼是
今天我們剛好有做特惠,
這個關鍵字搜尋了24次
都已經刷爆了,現在還欠
把按摩椅送過來吧
請問妳們有
日禮物
先生,請先告訴我您
的公司電話是29876543,您的行
動的效果,而且您自己也
不適合做跑步運動
己過去載好了
可以自己開車過來載
送過來吧!
年總共已經被開了13張超
敝姓陳,很高興為您
摩椅剛剛好
剩下來的空間放這台按摩
不下
原價一萬元,現在只賣五
A123456789
銀行六萬七千八百三十五
動電話是0915123456。是嗎?
可以使用喔!
收信用卡嗎?
的身分證號碼
速罰單了!
椅應該沒問題喔!
服務。
元千元
2016/5/23
Data Mining
2
資料探勘的應用
以類似PC-Home之線上購物商店為例
–可獲取之資料
•顧客居住地區、年齡、性別、個人資料、交
易紀錄
–可進行之資料探勘應用:
•建立個人化(客製化)行銷模式 (Association)
•找出潛在的客戶名單 (Classification)
•了解顧客族群的屬性 (Clustering)
•預測目前哪些顧客可能流失 (Prediction)
2016/5/23
Data Mining
3
資料探勘的目的
• 「從大量資料中挖掘有價值的資訊,供管
理人員做為決策參考,開創新商業契機」
• 成功經驗
–美國超級市場(Wal-Mart)
•銷售資料分析發現,尿布和啤酒常會一起購買,於
是將商品放在一起促銷,得到意想不到的業績成長
–美國銀行 (Bank of America)
• 從客戶資料中,找出既有客戶申請貸款的時機,
規劃全新行銷方案;該方案推出後,接受率立即
成長兩倍以上
2016/5/23
Data Mining
4
何謂資料探勘 (1/2)
• 學者曾對資料探勘做過的定義
– Frawley
• 資料庫中挖掘潛在、明確、而且非常有用資訊的過程
– Grupe & Owrang
• 從已存在的資料庫當中挖掘出專家仍未知的新事實
– Fayyad
• 定義知識發掘 (Knowledge Discovery) 為從大量資料中
選取合適的資料,進行資料處理、轉換等工作,再進行
資料探勘與結果評估的一系列過程
– Berry & Linoff
• 使用自動或半自動的方法,對大量資料分析,找出有意
義的關係或法則。
2016/5/23
Data Mining
5
何謂資料探勘 (2/2)
• 資料探勘=資料庫之知識發掘(Knowledge
Discovery in Databases,簡稱KDD)
– 從大型資料庫裡頭所儲存的資料當中去萃取出一
些有趣的知識
• 「知識」指的就是一些規則
• 大型資料庫包括線上作業的資料庫 (On-line Database)
及資料倉儲 (Data Warehouse)…等等
–知識範例
•「如果顧客的年齡是在三十歲到四十歲之間,而且年
收入是在四十萬到六十萬之間,那麼此顧客很有可能
會購買筆記型電腦。」
2016/5/23
Data Mining
6
為什麼需要進行資料探勘?
• 資料豐富但資訊貧乏 (Data rich, but information
poor)
• 資料探勘可將資料變成有用的知識
2016/5/23
Data Mining
7
何謂 “knowledge” ?
• “knowledge”型態:
– 模式(Patterns), 群集(Clusters), 規則(Rules), 決策樹(Decision
trees)…
• 一旦 “knowledge” 被粹取出來,就能…
– 觀察到
• 有用的指標及方向, 來剖析事件的來龍去脈
2016/5/23
Data Mining
8
Data Mining 為何興起?
•
•
•
•
商品條碼之廣泛使用
企業界之電腦化
數以百萬計之資料庫正在使用
多年來累積了大量企業交易資料
Data
2016/5/23
Knowledge
Data Mining
9
資訊系統的演進
演進步驟
目標企業問題
檔案系統
(1960年代)
“2002年12月筆記型電
的銷售明細為何?”
電腦、磁帶、磁碟
IBM, CDC
傳遞歷史性
的靜態資料
資料庫系統
(1970年代)
“IBM X31筆記型電腦
目前的售價是多少?”
階層式資料庫(hierarchical
database)、網路式資料庫
(network database)、關聯式
資料庫(relational database)、
結構化查詢語言(SQL) 、開
放性資料庫連結協定(ODBC)
Oracle, Sybase,
Informix, IBM,
Microsoft
傳遞即時性
的單層次動
態資料
資料倉儲系統
(1990年代)
“去年北部地區筆記型電
腦的總銷售量是多少?
其中台北市的銷售量
是多少?”
線上分析處理 (OLAP) 、多
維度資料模型
(multidimensional data
model) 、資料倉儲(data
warehouse)
Pilot,Comshare, 傳遞歷史性
Arbor, Cognos, 的多層次動
態資料
Microstrategy,
Microsoft
資料探勘系統
(現代)
“明年筆記型電腦的預估
銷售量為何? 為什
麼?”
進階演算法、多處理器電腦
系統、大量資料儲存技術、
人工智慧
Pilot, Lockheed, 傳遞預知的、
鑑往知來
IBM, SGI,
的資訊
Microsoft
2016/5/23
應用技術
Data Mining
系統供應商
系統特性
10
資訊管理的金字塔
專家系統
知識庫系統
決策支援系統
資料探勘
資料倉儲
資料庫
2016/5/23
知識
資訊
資料
Data Mining
管理決策者
資料分析師
資料操作員
11
Data Processing
• Data Management
– OLTP (Operational DBMS)
– Decision Support Databases (Data Warehouse)
• Data Exploration → Information
– Query, Summary Statistics, OLAP
• Data Mining → Knowledge
資料探勘的興起
•歸功三項技術的成熟
–大量資料的收集技術:
• 網路發達、關聯式資料庫(relational database)應用廣
泛、整合技術成熟
–高效能的多處理器電腦架構
• 平行處理架構,使大量資料處理能在可容忍的時間
內完成
–資料探勘演算法的成熟
• 包括統計學(statistics)、人工智慧(artificial
intelligence) 、機器學習(machine learning) 、
基因演算法( genetic algorithms ) …等等
2016/5/23
Data Mining
13
資料探勘的功能 (1/2)
•
•
•
•
從資料庫中挖掘知識
了解顧客行為
幫助企業作決策
增進商機
2016/5/23
Data Mining
14
資料探勘的功能 (2/2)
•預測未來的趨勢
–股市行情預測
–天氣預測
–地震預測
–消費行為預測
–商品出貨量預測…等等
•找出未知的樣式
–找出會購買筆記型電腦的顧客特徵
–依消費習性相近的顧客進行群組
–推薦鑑別消費者可能會同時購買的商品組合…等等
2016/5/23
Data Mining
15
哪些問題可以使用Data mining(1/2)
• 追蹤犯罪 (Track Down Criminals)
– 經犯罪資料分析,可以幫助犯案時找出可疑人口
• 資訊經紀人 (information broker)
– 超級市場擁有大量的銷售資料
• 保留忠誠客戶(Holding on to good customers)
• 淘汰不好客戶(Weeding out bad customers)
2016/5/23
Data Mining
16
哪些問題可以使用Data mining(2/2)
• 廣告分析(Target ads)
– 該給這個internet訪客哪一種廣告?”
• 混合銷售(Cross sell)
– 有哪些產品可以順便銷售給這位客戶?
• 偵測欺騙行為(Fraud detection)
– “此筆刷卡是否有問題?”
• 價格(Pricing)
– “該給此客戶有多少的折扣?”
• 風險管理(Risk Management)
– “該給此客戶有多少的貸款?”
2016/5/23
Data Mining
17
Data Mining的工作循環
Business Understanding
(goal, requirements)
Data Understanding
2.使用Data Mining
來解決問題
1. 定義企業
的問題
3. 採取
行動
4. 評估結果
2016/5/23
Data Mining
18
個案研討 (汽車公司促銷) (1/4)
• 1.確認企業問題
– 美國3大汽車公司之一 : 如何促銷吉普車?
– 過去: 大量郵寄促銷,效果很差
– 郵寄 100萬人, 回覆約 5萬人 (5%)
– 5 萬人當中,買車的又更少 (1%)
2016/5/23
Data Mining
19
個案研討 (2/4)
• 2. 運用Data Mining技巧,來解決問題(KDD)
– 準備資料 (Data Preparation)
– 運用兩種 Data Mining技巧 (Model Building)
– 類神經網路: 找出可能買車之顧客
– 決策樹: 找出可能買休旅車之顧客
– 找出約 2 萬人
※ 可能同時使用數種不同的Data Mining技術
※ 應用模型之前,須先進行評估 (Evaluation)
- 評估的標準並非數學上的正確度,而是在於
這個模型能夠帶給企業最多的利益!
2016/5/23
Data Mining
20
個案研討 (3/4)
• 3. 採取行動
– 只郵寄給這些人(22000人)
– 4764人買車 (22%)
– 約2400人買吉普車 (11%)
2016/5/23
Data Mining
21
個案研討 (4/4)
• 4. 評估結果
– 回應率相當高
– Successful !!
 Data Mining的工作循環
2016/5/23
Data Mining
22
資
料
探
勘
的
流
程
2016/5/23
Data Mining
23
資料探勘流程的步驟一
• 定義問題 (Problem Definition)
• 定義資料探勘的標的
– 資料來源、格式、數量
• 定義目標
– 顧客分類、顧客消費分析
• 問題的分析
– 是否可以用資料探勘來解決
– 可以使用何種資料探勘技術
– 如何運用所得知識來解決問題
2016/5/23
Data Mining
24
資料探勘流程的步驟二
• 資料的蒐集與選擇 (Data Collection and Selection)
– 有任何需要連結到本身或外部的資料庫嗎?如果有的話,
該如何進行
– 這些將被探勘的資料在經過探勘之後,是否會被改變?可
否再次的被利用
– 有什麼內部或外部的資訊有助於此次的分析
– 這些資料與商業目標間有什麼關係
– 資料庫中的資料表間需要什麼聯合(Join)
– 在這些資料中是否具有可用的統計資訊
– 原始資料來源 (過與不及)
•資料庫系統、Excel表格、文字檔、網際網路、問卷調查…等等
2016/5/23
Data Mining
25
資料探勘流程的步驟三 (1/2)
 資料的預備 (Data Preparation)
• 建立「可探勘」的資料,最耗時間的步驟 (50%~80%)
• 範例問題
– 遺漏值(missing value)
– 哪些資料的轉換在分析中是必要的 (derived variables)
– 這些資料的處理以及改變,是否可以被使用者接受
– 這些資料是否有偏差?是否需要利用對數或平方轉換的方法來
使資料能夠一致化
» Clustering analysis
100萬(普通人)、13億(連爺爺)、1兆7千億(比爾蓋茲)
Log10: 5 (普通人), 9.1(連爺爺), 12.2 (比爾蓋茲)
2016/5/23
Data Mining
26
資料探勘流程的步驟三 (2/2)
– 需要對資料進行正規化嗎
– 是否需要將資料轉換為其他格式,例如:將「是 / 否」
轉換為「 1 / 0 」
• 資料集合 (建立預測模式)
– 訓練資料集
– 測試資料集
– 評估資料集
• Cleansing, integration, reduction, transformation,
visualization, selection (Data Exploration)
• Data Mining 之前必須將資料整理過
– Data Warehousing ?
2016/5/23
Data Mining
27
資料倉儲
•決策支援系統的基礎
•含整合資料、詳細資料、總合性(summarized)
資料、歷史性資料、描述資料綱要資料
–統計、分析功能
–提供多維度結構(multidimensional structures)
•線上分析處理(On-Line Analytical Processing, OLAP)
•使用者依據不同維度,例如產品、地區、其它
更透徹的觀察角度來檢視資料
2016/5/23
Data Mining
28
資料探勘流程的步驟四
•
選擇資料探勘的方法 (Mining Method
Selection)
1. 選擇一個模式或演算法
– 資料探勘想要的功能, e.g. Clustering analysis
– 要用哪些技術, e.g. K-means algorithm
2. 選擇模式或演算法的參數
2016/5/23
Data Mining
29
資料探勘的模式
資料探勘的模式主要有以下四種:資料分類
(data classification)、資料關連(data
association)、資料分群(data clustering)以及
循序樣式探勘(sequential pattern mining)。只
要能建立並充分運用這些模型,即可探勘出
潛藏的有用資訊。
30
資料分類
 分類(classification)是按照分析對象的屬性分門
別類加以定義,建立類組(class)。例如,將信
用卡申請者的風險屬性,區分為高度風險申請
者,中度風險申請者及低度風險申請者。
 分類使用的技巧有決策樹,記憶基礎推理
(memory - based reasoning)等。這類模型可用來
對一些已經分類的資料研究它們的特徵,再根
據這些特徵對其他未分類或是新的資料作預測
。
31
資料關連
 這類模型是探討資料項目間的關係,找出在某
一事件或是資料中會同時出現的項目,也叫做
關連法則探勘。例如:如果顧客買了筆記型電
腦,則這個顧客同時會購買隨身碟的機率是
80%。
 關連法則探勘特別適合用在購物籃分析
(market basket analysis)。購物籃分析主要
是用來幫助零售業者瞭解客戶的消費行為,譬
如哪些產品客戶會一起購買,或是客戶在買了
某一樣產品之後,在多久之內會買另一樣產品
等等。
32
資料分群
 這類模型可以自動將資料庫區隔為幾個特性接近
的資料群集,其主要的功能是將群集與群集之間
的差異找出來,同時也可以將同一個群集中成員
們的相似性找出來。群集分析與分類不同之處在
於你不曉得它會分成多少群或是根據什麼特徵來
分群,所以必須分析解讀分群之後各群集所代表
的意義。
 群集分析是一種『非監督式學習(unsupervised
learning)』的資料探勘技術。我們不需要定義輸
入變數以及輸出變數為何,而是希望能夠從資料
當中找出一些隱藏的相似關係,像是那些顧客的
行為比較相似、或是那些事物總是相伴發生 。
33
循序樣式探勘
 藉由分析序列狀態的轉變,我們可以從相關的
序列當中預測未來的狀態。這個模型與關連法
則探勘很相似,所不同的是循序樣式探勘中相
關的項目( item)是以時間區分開來。
 例一:買了筆記型電腦之後,三個月內會再加買隨
身碟的機率是 75%。
 例二:如果客戶已經瀏覽過A網頁以及B網頁,則客
戶在10分鐘內會瀏覽C網頁的機率是78%。
 找出事件發生先後順序間的關連性,這便是循
序樣式探勘的目的。
34
資料探勘流程的步驟五、六
• 步驟五:訓練 / 測試資料(Data Training /
Testing)或應用演算法(Algorithm Applying)
• 步驟六:模式最後的評估和整合 (Final Model
Evaluation and Integration)
• 此模式的錯誤率,是否可以接受?是否可以改進?
• 是否有其他資料可以有助於改進模式的效率?
• 輸出的結果是否需採用SQL的語法?
• 是否可以整合獲得的知識到決策支援系統中,可以的話,
該如何進行?
2016/5/23
Data Mining
35
資料探勘流程的步驟六 - 樣式評估
• 樣式評估(pattern evaluation)
– 評估所挖掘的知識是不是真的有用 ?
– 過濾沒用的資訊,最後剩下有價值的知識供給
使用者
• 範例
–「天氣好,旅遊人數就多;天氣差,旅遊人數
就少」,這樣的探勘結果我們可能認為它“有
趣”的程度並不高,因為它是屬於一般常識
2016/5/23
Data Mining
36
資料探勘流程的步驟六 - 結果展示
• 複雜的探勘結果要讓使用者看懂並不容易
– 需要圖形化介面,把有趣的知識做好的呈現
– 例如:Microsoft SQL Server 2008的圖形化介面非
常豐富
• 用類似油表的燈號,讓使用者看到現在的預算消耗量
是加滿油的狀態、還是沒有油的狀態
2016/5/23
Data Mining
37
Issue: Consistency of Data
Mining Rules
Data Mining
database state (t)
Rules
transactions:
insert/ delete/
update
Consistent?
 再準確的模型都會隨著時間而逐漸失效
database state (t+1)
2016/5/23
Data Mining
38
Knowledge Discovery (KDD) Process
– Data mining—core of
knowledge discovery
process
Pattern Evaluation
Data Mining
Task-relevant Data
Data Warehouse
Selection
Data Cleaning
Data Integration
2016/5/23Databases
Data Mining
39
Data
2016/5/23
Data Mining
40
 Data Preprocessing
– Data Cleaning
– Data Integration and Transformation
– Data Reduction
 Data Exploration
− Data Warehouse and OLAP Technology
2016/5/23
Data Mining
41
資料探勘的資料來源(領域)
•
•
•
•
•
•
•
•
•
•
數位圖書館 (Digital Library)
影像檔案庫 (Image Archives)
醫學資料庫 (Medical Database)
財務與投資 (Finance and Investment)
生產與產品 (Manufacturing and Production)
商業與行銷 (Business and Marketing)
電信網路 (Telecommunication Network)
科學領域 (Scientific Domain)
全球資訊網 (World Wide Web)
生物鑑定 (Biometric)
2016/5/23
Data Mining
42
Discrete and Continuous Attributes
• Discrete Attribute
– Has only a finite or countably infinite set of values
– Examples: zip codes, counts, or the set of words in a collection
of documents
– Often represented as integer variables.
– Note: binary attributes are a special case of discrete attributes
• Continuous Attribute
– Has real numbers as attribute values
– Examples: temperature, height, or weight.
– Practically, real values can only be measured and represented
using a finite number of digits.
– Continuous attributes are typically represented as floating-point
variables.
2016/5/23
Data Mining
43
資料探勘的資料類型 (1/5)
• 關聯式資料庫
2016/5/23
Data Mining
44
資料探勘的資料類型 (2/5)
• 資料倉儲
2016/5/23
Data Mining
45
資料探勘的資料類型 (3/5)
 多維度資
料方塊
2016/5/23
Data Mining
46
資料探勘的資料類型 (4/5)
• 交易資料庫 (Transactional database)
2016/5/23
Data Mining
47
資料探勘的資料類型 (5/5)
• 其他進階的資料庫系統和應用
– 物件導向資料庫
– 物件-關聯資料庫
– 空間資料庫
– 時間序列資料庫 (Time-Series Database)
– 文字 (Text) 資料庫與多媒體 (Multimedia) 資料庫
– 全球資訊網
2016/5/23
Data Mining
48
Document Data
• Each document becomes a `term' vector,
– each term is a component (attribute) of the vector,
– the value of each component is the number of times
the corresponding term occurs in the document.
team
coach
pla
y
ball
score
game
wi
n
lost
timeout
season
2016/5/23
Document 1
3
0
5
0
2
6
0
2
0
2
Document 2
0
7
0
2
1
0
0
3
0
0
Document 3
0
1
0
0
1
2
2
0
3
0
Data Mining
49
Graph Data
• Examples: Generic graph and HTML Links
2
1
5
2
5
2016/5/23
<a href="papers/papers.html#bbbb">
Data Mining </a>
<li>
<a href="papers/papers.html#aaaa">
Graph Partitioning </a>
<li>
<a href="papers/papers.html#aaaa">
Parallel Solution of Sparse Linear System of Equations </a>
<li>
<a href="papers/papers.html#ffff">
N-Body Computation and Dense Linear System Solvers
Data Mining
50
Ordered Data
• Sequences of transactions
Items/Events
An element of
the sequence
2016/5/23
Data Mining
51
Ordered Data
• Genomic sequence data
GGTTCCGCCTTCAGCCCCGCGCC
CGCAGGGCCCGCCCCGCGCCGTC
GAGAAGGGCCCGCCTGGCGGGCG
GGGGGAGGCGGGGCCGCCCGAGC
CCAACCGAGTCCGACCAGGTGCC
CCCTCTGCTCGGCCTAGACCTGA
GCTCATTAGGCGGCAGCGGACAG
GCCAAGTAGAACACGCGAAGCGC
TGGGCTGCCTGCTGCGACCAGGG
2016/5/23
Data Mining
52
傳統資料庫(Operational DBMS)
 OLTP databases are designed to process large
numbers of transactions very fast
 A transaction is a complete action that must
either finish successfully or appear not to have
happened
 E.g. transferring money from your savings account
to your checking account at an ATM is a single
transaction
 Single record can be accessed very efficient
 運用E-R Model 與 正規化 以避免資料重覆放置
2016/5/23
Data Mining
53
Decision Support Databases
 Decision support databases are designed to support
complex queries
 Which customers spent more than $100 at a
restaurant more than 100 miles from home in two
of the last three months?
 The design requirements are so incompatible that the
same information must often be stored twice
 Once in an operational system that takes care of
transactions
 Once in a decision support system where historical
record can be studied
2016/5/23
Data Mining
54
What is Data Warehouse?
• Defined in many different ways, but not rigorously.
– A decision support database that is maintained separately
from the organization’s operational database
– Support information processing by providing a solid
platform of consolidated, historical data for analysis.
• “A data warehouse is a subject-oriented, integrated,
time-variant, and nonvolatile collection of data in
support of management’s decision-making
process.”—W. H. Inmon
• Data warehousing:
– The process of constructing and using data warehouses
2016/5/23
Data Mining
55
Data Warehouse—Subject-Oriented
• Organized around major subjects, such as customer,
product, sales.
• Focusing on the modeling and analysis of data for
decision makers, not on daily operations or
transaction processing.
• Provide a simple and concise view around particular
subject issues by excluding data that are not useful in
the decision support process.
2016/5/23
Data Mining
56
Data Warehouse—Integrated
• Constructed by integrating multiple, heterogeneous
data sources
– relational databases, flat files, on-line transaction records
• Data cleaning and data integration techniques are
applied.
– Ensure consistency in naming conventions, encoding
structures, attribute measures, etc. among different data
sources
• E.g., Hotel price: currency, tax, breakfast covered, etc.
– When data is moved to the warehouse, it is converted.
2016/5/23
Data Mining
57
Data Warehouse—Time Variant
• The time horizon for the data warehouse is
significantly longer than that of operational systems.
– Operational database: current value data.
– Data warehouse data: provide information from a historical
perspective (e.g., past 5-10 years)
• Every key structure in the data warehouse
– Contains an element of time, explicitly or implicitly
– But the key of operational data may or may not contain
“time element”.
2016/5/23
Data Mining
58
Data Warehouse—Non-Volatile
• A physically separate store of data transformed from
the operational environment.
• Operational update of data does not occur in the data
warehouse environment.
– Does not require transaction processing, recovery, and
concurrency control mechanisms
– Requires only two operations in data accessing:
• initial loading of data and access of data.
2016/5/23
Data Mining
59
Data Warehousing Architecture
2016/5/23
Data Mining
60
Data Marts

Different users have different needs



Also called departmental data warehouse
A specialized system that bring the data needed for a
department or related applications
There are several varieties of data marts
1)
2)
3)
2016/5/23
Implemented within the central repository by creating
special, application-specific views on the data in the base
tables

A built-in query
Instantiated view

Duplicate storage to improve performance
Use different representations of the data

OLAP engines
Data Mining
61
Data Warehouse Usage
• Three kinds of data warehouse applications
– Information processing
• supports querying, basic statistical analysis, and reporting using
crosstabs, tables, charts and graphs
– Analytical processing
• multidimensional analysis of data warehouse data
• supports basic OLAP operations, slice-dice, drilling, pivoting
– Data mining
• knowledge discovery from hidden patterns
• supports associations, constructing analytical models, performing
classification and prediction, and presenting the mining results
using visualization tools.
2016/5/23
Data Mining
62
Data Warehouse vs. Operational DBMS
• OLTP (on-line transaction processing)
– Major task of traditional relational DBMS
– Day-to-day operations: purchasing, inventory, banking, manufacturing,
payroll, registration, accounting, etc.
• OLAP (on-line analytical processing)
– Major task of data warehouse system
– Data analysis and decision making
• Distinct features (OLTP vs. OLAP):
– User and system orientation: customer vs. market
– Data contents: current, detailed vs. historical, consolidated
– Database design: ER + application vs. star + subject
– View: current, local vs. evolutionary, integrated
– Access patterns: update vs. read-only but complex queries
2016/5/23
Data Mining
63
OLTP vs. OLAP
OLTP
OLAP
users
clerk, IT professional
knowledge worker
function
day to day operations
decision support
DB design
application-oriented
subject-oriented
data
current, up-to-date
detailed, flat relational
isolated
repetitive
historical,
summarized, multidimensional
integrated, consolidated
ad-hoc
lots of scans
unit of work
read/write
index/hash on prim. key
short, simple transaction
# records accessed
tens
millions
#users
thousands
hundreds
DB size
100MB-GB
100GB-TB
metric
transaction throughput
query throughput, response
usage
access
2016/5/23
Data Mining
complex query
64
從
交易性資料
到
分析用資料
2016/5/23
Data Mining
65
A multi-dimensional data model of
a data warehouse
Data warehouse (mart) and OLAP tools are
based on a multidimensional data model
 This model views data in the form of a data cube
 Data cube consist of dimensions and measures
 Typical OLAP Operations

slicing and dicing
 drilling down and rolling up
 pivot (pivoted spreadsheet)

2016/5/23
Data Mining
66
Data Cube
• 資料方塊法的一般概念: 為具體化一些
經常被要求的高成本計算
• 尤其是計數(count)、總計(sum)、求平均
數(average)、取最大值(max)等函數
• 將具體化後的景觀儲存在一個Cube,可
供決策支援、知識發現做參考
2016/5/23
Data Mining
67
Data Cube方塊法 (Denormalized Data)
2016/5/23
Model
Year
Color
Units
Chevy
1994
Black
50
Chevy
1994
White
40
Chevy
1995
Black
85
Chevy
1995
White
115
Data Mining
68
Data Cube 資料方塊法
依廠牌、年度、顏色來累計
Model Year Color
Sales
By Model
by Year
by Color
Chevy 1994 black
50
White
40
Sales
by Model
by Year
Sales
by Model
90
1995 black
white
85
115
200
2016/5/23
Data Mining
290
69
3D Cube
 the information is the same
 the values of the attributes
Ford
Chevy
are indices
1994
1995
Red
White
Blue
Black
2016/5/23
Data Mining
70
2D Cube
1994
1995
Ford
Chevy
2016/5/23
Data Mining
71
1D Cube
Ford
Chevy
− Dimensionality Reduction
− Slicing and Dicing
− Roll-Up and Drill-Down
2016/5/23
Data Mining
72
A Sample Data Cube
2Qtr
3Qtr
4Qtr
sum
U.S.A
Canada
Mexico
Country
TV
PC
VCR
sum
1Qtr
Date
Total annual sales
of TV in U.S.A.
sum
2016/5/23
Data Mining
73
Multidimensional Data
• Sales volume as a function of product, month,
and region
Dimensions: Product, Location, Time
Hierarchical summarization paths
Industry Region
Year
Product
Category Country Quarter
2016/5/23
Product
City
Office
Month
Data Mining
Month Week
Day
74
Browsing a Data Cube
• Visualization
• OLAP capabilities
• Interactive manipulation
2016/5/23
Data Mining
75
Example: Iris flowers
Sepal length
Sepal width
Petal length
Petal width
Type
1
5.1
3.5
1.4
0.2
Iris setosa
2
4.9
3.0
1.4
0.2
Iris setosa
51
7.0
3.2
4.7
1.4
Iris versicolor
52
6.4
3.2
4.5
1.5
Iris versicolor
101
6.3
3.3
6.0
2.5
Iris virginica
102
5.8
2.7
5.1
1.9
Iris virginica
…
…
…
2016/5/23
Data Mining
76
Creating a Multidimensional Array
• Two key steps in converting tabular data into a
multidimensional array.
– First, identify which attributes are to be the dimensions and
which attribute is to be the target attribute whose values appear
as entries in the multidimensional array.
• The attributes used as dimensions must have discrete values
• The target value is typically a count or continuous value,
e.g., the cost of an item
• Can have no target variable at all except the count of
objects that have the same set of attribute values
– Second, find the value of each entry in the multidimensional
array by summing the values (of the target attribute) or count of
all objects that have the attribute values corresponding to that
entry.
2016/5/23
Data Mining
77
Example: Iris data
• We show how the attributes, petal(花瓣) length, petal
width, and species type can be converted to a
multidimensional array
– First, we discretized the petal width and length to have
categorical values: low, medium, and high
– We get the following (fact) table - note the count attribute
2016/5/23
Data Mining
78
Example: Iris data (continued)
• Each unique tuple of petal width, petal length, and
species type identifies one element of the array.
• This element is assigned the corresponding count value.
• The figure illustrates
the result.
• All non-specified
tuples are 0.
• The information is the same
2016/5/23
Data Mining
79
Example: Iris data (continued)
• Slices of the multidimensional array are shown by the
following cross-tabulations
• What do these tables tell us?
2016/5/23
Data Mining
80
OLAP Operations: Data Cube
• The key operation of a OLAP is the formation of a data
cube
• A data cube is a multidimensional representation of data,
together with all possible aggregates.
• By all possible aggregates, we mean the aggregates that
result by selecting a proper subset of the dimensions
and summing over all remaining dimensions.
• For example, if we choose the species type dimension of
the Iris data and sum over all other dimensions, the result
will be a one-dimensional entry with three entries, each
of which gives the number of flowers of each type.
2016/5/23
Data Mining
81
Data Warehouse: A Multi-Tiered Architecture
Other
sources
Operational
DBs
Metadata
Extract
Transform
Load
Refresh
Monitor
&
Integrator
Data
Warehouse
OLAP Server
Serve
Analysis
Query
Reports
Data mining
Data Marts
Data Sources
2016/5/23
Data Storage
Data Mining
OLAP Engine Front-End Tools
82
What kinds of OLAP servers exist ?
• Logically, OLAP servers present business users with
multidimensional data from data warehouses or data
marts, without concerns regarding how or where the
data are stored.
• However, the physical architecture and implementation
of OLAP servers must consider data storage issues
2016/5/23
Data Mining
83
OLAP Server Architectures
• Relational OLAP (ROLAP) servers
– Use relational or extended-relational DBMS to store and manage
warehouse data and OLAP middle ware to support missing pieces
– Include optimization of DBMS backend, implementation of aggregation
navigation logic, and additional tools and services
– greater scalability
• Multidimensional OLAP (MOLAP) servers
– Array-based multidimensional storage engine (sparse matrix techniques)
– fast indexing to pre-computed summarized data
• Hybrid OLAP (HOLAP) servers
– User flexibility, e.g., low level: relational, high-level: array
• Specialized SQL servers
– specialized support for SQL queries over star/snowflake schemas
2016/5/23
Data Mining
84
Example of Star Schema
time
item
time_key
day
day_of_the_week
month
quarter
year
Sales Fact Table
time_key
item_key
branch_key
branch
location_key
branch_key
branch_name
branch_type
units_sold
dollars_sold
avg_sales
item_key
item_name
brand
type
supplier_type
location
location_key
street
city
province_or_street
country
Measures
2016/5/23
Data Mining
85
OLAP and Data Mining (1/2)
•
Traditional query and report tools describe what is
in a database
OLAP goes further; it’s used to answer why certain
things are true (hypothesis driven)
The OLAP analyst generates a series of hypothetical
patterns and relationships and uses queries against
the database to verify them or disprove them
•
•
–
–
E.g., to determine the factors that lead to loan defaults
Hypothesis
1) People with low incomes are bad credit risks
2) High debt as the determinant of risk
3) Try debt and income together as the best predictor of bad credit risks
2016/5/23
Data Mining
86
OLAP and Data Mining (2/2)
• It becomes much more difficult and time-consuming to
find a good hypothesis when the number of variables
being analyzed is in the dozens or even hundreds?
• Data mining is uses the data itself to uncover such
patterns (data driven)
– Discover that people with high debt and low incomes were bad
credit risks
– Also discover a pattern the analyst did not think to try, such as
that age is also a determinant of risk
2016/5/23
Data Mining
87
Data Mining and Data Warehousing
 In the past, data warehouses have been designed for
reporting, not for mining
 Many data warehouses contain only summaries of historical
data (not to store atomic data)

The monthly balances on a credit card, not the individual transactions
 Data mining often requires access to data at a detailed level
 The aggregations performed by the data miner may not have
been anticipated by a warehouse designer
 A data warehouse is not a requirement for data mining
2016/5/23
Data Mining
88
Decision Support Fusion
In-Database Mining
1) OLAP

How have widget sales changed quarter over quarter by
sales rep and widget type? (3-D Cube)
2) Data visualization

How are sales varying by geography and widget type?
3) Data mining

Which customers should receive the 96-page holiday
catalog, and which should receive the 120-page catalog?
4) Data warehousing
2016/5/23
Data Mining
89
Data
Preprocessing
2016/5/23
Data Mining
90
Data
Reduction
2016/5/23
Data Mining
91
Data Mining Tasks (Functionalities)
Directed Data Mining:某個特定變數(target
field)的數值,是我們想要推測的
 use the available data to build a model that describes
one particular variable of interest in term of the rest
of the available data
 Prediction Methods (Supervised Learning)
Undirected Data Mining :沒有特定變數。
 establish some relationship among all the variables
 Description Methods (Unsupervised Learning)
These two approaches are not mutually exclusive
2016/5/23
Data Mining
92
What can data mining do?
資料採礦的主要工作 (the six tasks)
•分類(classification)
Directed
•推估(estimation)
•預測(prediction)
•關聯分組(affinity grouping) or association rules
•群集化(clustering analysis)
Undirected
•描述(description) and visualization
2016/5/23
Data Mining
93
Classification (資料分類)
 Examining the features of a newly presented object and assigning
it to one of a predefined set of classes
生物分類:界門綱目科屬種
 分類的工作
將每一個類別(class)的特徵清楚定義,把一些已知類別之範例
(pre-classified examples)當作訓練集(training set)來建立出模型
(build a model),以便將未知類別的資料分門別類。
 應用實例
將信用卡申請人(credit applicant)狀況區分為高風險、中度風
險以及低風險
找出詐騙的保險索賠(fraudulent insurance claims)
2016/5/23
Data Mining
94
保險公司例子
 顧客分類 (Classification)
– 例如: 保險公司利用Data Mining發現
• 30歲以下,未婚,為高風險客戶
• 30歲以上,已婚,為低風險客戶
• 保險公司便可利用這些資訊訂定策略與保費
2016/5/23
Data Mining
95
Classification—A Two-Step Process
• Model construction: describing a set of predetermined classes
– Each tuple/sample is assumed to belong to a predefined class, as
determined by the class label attribute
– The set of tuples used for model construction: training set
– The model is represented as classification rules, decision trees, or
mathematical formulae
• Model usage: for classifying future or unknown objects
– Estimate accuracy of the model
• The known label of test sample is compared with the classified result
from the model
• Accuracy rate is the percentage of test set samples that are correctly
classified by the model
• Test set is independent of training set, otherwise over-fitting will
occur
2016/5/23
Data Mining
96
Classification Process (1): Model
Construction
Classification
Algorithms
Training
Data
NAME
M ike
M ary
B ill
Jim
D ave
Anne
RANK
YEARS TENURED
A ssistan t P ro f
3
no
A ssistan t P ro f
7
yes
P ro fesso r
2
yes
A sso ciate P ro f
7
yes
A ssistan t P ro f
6
no
A sso ciate P ro f
3
no
2016/5/23
Data Mining
Classifier
(Model)
IF rank = ‘professor’
OR years > 6
THEN tenured = ‘yes’
97
Classification Process (2): Use the
Model in Prediction
Classifier
Testing
Data
Unseen Data
(Jeff, Professor, 4)
NAME
Tom
M erlisa
G eo rg e
Jo sep h
RANK
YEARS TENURED
A ssistan t P ro f
2
no
A sso ciate P ro f
7
no
P ro fesso r
5
yes
A ssistan t P ro f
7
yes
2016/5/23
Data Mining
Tenured?
98
A simple classification tree
2016/5/23
Data Mining
99
Estimation(推估)
 處理連續性數值的結果
 給定一些輸入資料以推估未知的連續性變數的值:
收入、身高、信用卡額度(credit card balance)等
 建立模型來為輸入變數做評分。根據輸出的評估分數
是否超過設定門檻值,就可用來完成分類的工作
 應用實例
 推估家庭中孩童的數量
 推估家庭的總收入
 推估客戶的終身價值(lifetime value)
 推估顧客接受轉帳繳款的機率
 應用技術:類神經網路
2016/5/23
Data Mining
100
Prediction (預測)
 推估未來的數值以及趨勢
以歷史資料(historical data)來建立模型以說明目前觀
察到的行為。當此模型應用到目前的輸入資料時,其
結果即為未來行為變化的預測值。
 應用實例
 如果持卡人申請轉帳付款,預測本月餘額會有多少
 預測哪些顧客會在未來六個月內流失
 應用技術
 購物籃分析 (basket analysis )
 決策樹 (decision trees)
 類神經網路 (neural networks)
2016/5/23
Data Mining
101
Predicting CPU performance
• Example: 209 different computer configurations
Cycle time
(ns)
Main memory
(Kb)
Cache
(Kb)
Channels
Performance
MYCT
MMI
N
MMA
X
CACH
CHMIN
CHMAX
PRP
1
125
256
6000
256
16
128
198
2
29
8000
32000
32
8
32
269
208
480
512
8000
32
0
0
67
209
480
1000
4000
0
0
0
45
…
• Linear regression function
PRP = -55.9 + 0.0489 MYCT + 0.0153 MMIN + 0.0056 MMAX
+ 0.6410 CACH - 0.2700 CHMIN + 1.480 CHMAX
2016/5/23
Data Mining
102
親近性分組或關聯法則
 發覺哪些事物總是同時發生
 關聯分組可以用來確立交叉銷售的基礎,藉以設計吸引消
費者的促銷配套方案。
 範例
− 如果顧客買NB,同時購買隨身碟的機率是80%
− 如果買全麥麵包及低脂優酪乳,那麼顧客同時也買低脂牛奶的機率
是85%
− 連鎖零售商Wal-mart: 星期四晚上,多數買尿布者也會一併買啤酒
− 隱藏的關聯性:Hero Item (犧牲打商品)
 應用實例
 零售商規劃貨架的擺置方式
 型錄的編排方式
2016/5/23
Data Mining
103
關聯規則 Association Rules
• 同一個交易中,一個item出現也會引起另一
個item的出現 (哪些事物總是會同時發生)
• Association rule例子
– 若顧客購買麵包,則他很可能也會購買牛奶
– Association rule: 麵包 => 牛奶
– P(牛奶|麵包) 的機率值高
2016/5/23
Data Mining
104
關聯規則之 可信度 (confidence)
• 關聯規則 A => B
• 可信度為: 在A出現之條件下出現B之機率
• 例子: 資料庫中的交易紀錄如下:
t1: (…,麵包,…,牛奶,…)
t2: (…,麵包,…………..)
t3: (…,麵包,…,牛奶,…)
t4: (……………………)
• 請問 麵包 => 牛奶 之可信度為多少?
2016/5/23
Data Mining
105
關聯規則之可信度 (Confidence)
• 資料庫中的交易紀錄
t1: (…,麵包,…,牛奶,…)
t2: (…,麵包,…………..)
t3: (…,麵包,…,牛奶,…)
t4: (……………………)
可信度=
P(B|A) = P(A,B)/P(A)
P(麵包 ,牛奶)
N(麵包 ,牛奶)
=
P(牛奶|麵包) =
P(麵包)
2016/5/23
N(麵包)
Data Mining
106
關聯規則之支持度 (Support)
• 關聯規則 A => B
• 支持度為: A與B同時出現之機率 P(A, B)
• 例子: 資料庫中的交易紀錄如下:
t1: (…,麵包,…,牛奶,…)
t2: (…,麵包,…………..)
t3: (…,麵包,…,牛奶,…)
t4: (……………………)
• 請問 麵包 => 牛奶 之支持度為多少?
2016/5/23
Data Mining
107
如何發現規則
• 資料庫中的交易紀錄
t1: (…,麵包,…,牛奶,…)
t2: (…,麵包,…………..)
t3: (…,麵包,…,牛奶,…)
t4: (……………………)
2016/5/23
Data Mining
66%
麵包
牛奶
108
Interestingness of Association Rules (1)
調查學生早餐: 打棒球: 60% 吃麥片: 75%
打棒球且吃麥片: 40%
• P(吃麥片|打棒球)=P(吃麥片∩打棒球) / P(打棒球)
= 40% / 60% = 0.66
打棒球 => 吃麥片 (66%)
• P(吃麥片) = 75%
2016/5/23
Data Mining
109
Interestingness of Association Rules (2)
 Problem
The rule does worse than just randomly guessing
 Another measure: improvement
關聯規則 A => B
Improvement =
P(A, B)
P(A) P(B)
 打棒球 => 吃麥片 (improvement = 66% / 75% < 1)
2016/5/23
Data Mining
110
關聯規則之的意義
根據關聯規則的隱含資訊價值,可將規則分成三大類
 有用的規則 (Useful)
− (白酒,起司) :商品組合,購物動線規劃
 常識 (Trivial)
− (購買冷氣機,到府服務) , (油漆,油漆刷)
− (筆記型電腦,某種線上遊戲)
− 找出關聯規則後,必須剔除過往受到行銷活動或是佣
金制度操控的部份,以反應真正的客戶行為模式
 無法解釋的結果 (Inexplicable)
− (精油蠟燭,烤雞)
2016/5/23
Data Mining
111
虛擬的商品項目
 氣象資訊:溫度、溼度、降雨
− 日本7-11著名的「七五三」規則
如果一天當中溫度相差7度,今天和昨天的溫度相差
到5度,且溼度差大於30%的話,代表感冒的人會增
加,分店就要考慮把感冒藥、溫度計和口罩之類的
用品上架
2016/5/23
Data Mining
112
Sequence Pattern Mining(循序樣式探勘) (1)
• 顧客通常在購買某類商品後,經過一段時間,
會再購買另一類商品
− 哪些事件總是會先後發生
• 例如: 租過黃飛鴻第一集,經過一段時間,
通常會再租黃飛鴻第二集,之後再租黃飛鴻
第三集
• 例如: 買過“綿被、枕頭、床單”之後,經
過一段時間 ,通常會再購買“紙尿褲、奶
粉”
2016/5/23
Data Mining
113
循序樣式探勘 (2)
•分析序列狀態轉變,從相關的序列當中預測
未來的狀態
− 與關聯法則所不同的是循序樣式探勘中相關的項
目(item)是以時間區分
•適用領域
–股市行情預測、行為預測…等等
•舉例
– 在通訊品質不佳的無線網路環境中時,此舉尚可
提供客戶在離開無線網路涵蓋區時,仍能離線瀏
覽網頁的功能
2016/5/23
Data Mining
114
請找出至少發生兩次的 Sequence Patten
顧客代號 交易時間
購買物品代號
1
1
90/7/25
90/7/30
2
2
2
90/7/10
90/7/15
90/7/20
10, 20
30
40, 60, 70
3
90/7/25
30, 50, 70
4
4
4
90/7/25
90/7/30
90/8/25
30
40, 70
90
5
90/7/12
90
2016/5/23
30
90
Data Mining
例如:
先買20
再買30
再買60, 70
20  30 60, 70
115
Mining Sequential Pattern (1)
顧客編號
購買序列
1
<(30) (90)>
2
<(10 20) (30) (40 60 70)>
3
<(30 50 70)>
4
<(30) (40 70) (90)>
5
<(90)>
2016/5/23
Data Mining
116
Mining Sequential Pattern (2)
Sequential Pattern ( >= 2筆 )
(30) (90)
(30) (40 70)
2016/5/23
Data Mining
117
思考: Association Rule 與 Sequential Pattern
有何不同 ?
• Association Rule 關心同一時間的交易
– 若顧客購買麵包,則他同一時間也會購買牛奶
– 大賣場
• Sequential Pattern 關心不同時間的交易
– 租過黃飛鴻第一集,經過一段時間,通常會再
租黃飛鴻第二集
– 金融、保險、燦坤: 每次可能只買1至2種商品
 比較關心:「客戶下次來店買些什麼?」
2016/5/23
Data Mining
118