電子商務:數位時代商機‧梁定澎總編輯‧前程文化 出版 第14章 網路探勘與 巨量資料管理 授課教師: 電子商務:數位時代商機‧梁定澎總編輯‧前程文化 出版
摘要 14.1 導論 14.2 網路資料 14.3 網路文章的探勘 14.4 社群資料的探勘 14.5 行動資料的探勘 14.6 巨量資料處理技術 14.7 摘要與結論
學習目標 了解巨量資料的一些相關名詞之具體意義。 會思考巨量資料的一些應用。 了解文字探勘的內涵。 了解社群和行動資料探勘的內涵。 對於巨量資料的查詢與處理有正確的認知。
Netflix利用巨量資料分析來創新 美國著名的DVD租賃公司Netflix的執行長 黑思廷斯(Reed Hastings)1991年他創設 Pure Software公司,開發和販賣偵錯和修正 軟體。 創立Netflix:黑思廷斯向當時最大的DVD 租借店百視達(Blockbuster)借一片名為「 阿波羅13號」的DVD,觀賞完畢後卻不知 置於何處,六個星期後找到並歸還時被罰 了40美元。
Netflix利用巨量資料分析來創新 此事促使他思考百事達的商業模式,若是 採用月租費,且無觀賞期不限制(也因此 就不會有罰金),是否會更吸引顧客?因 此黑思廷斯投資了250萬美元在1998年創立 Netflix,並於1999年推出繳月租費便可無限 借閱的商業模式,消費者可以選擇月租費 不同的各種方案,當然月租費越高可同時 擁有的DVD就越多。
Netflix利用巨量資料分析來創新 會員利用Netflix的網站維護一個DVD的清 單,Netflix就按照這個清單使用專用信封寄 送DVD給會員,會員看完後再利用相同信 封免費寄還給Netflix,Netflix再寄下一批 DVD給會員。 黑思廷斯從之前擔任工程師和軟體公司執 行長的經驗獲得一些心得,並將此內化成 Netflix的企業文化:「自由和責任」( Freedom and Responsibility),Netflix付給 員工遠高於業界標準的薪水,以期吸收最 優秀的人才。
Netflix利用巨量資料分析來創新 黑思廷斯從過去的經驗裡學習到這個產業 的市場一直在變化,再好的流程或規則也 會因市場的變化而過時,唯有留住最好的 人才並給他們自由度才是因應瞬息萬變市 場的王道。因應這樣的企業文化,Netflix非 常重視資料的分析,希望據以掌握顧客的 需求。
Netflix利用巨量資料分析來創新 以核心事業DVD租賃來說,他們開發出一 套個人化電影推薦系統Cinamatch,該系統 考量個人基本資料、對一些電影的評價, 以及電影的屬性(例如電影種類、級別、 導演和演員、專家評價等),利用協力過 濾(Collaborative filtering)的技術推薦給會 員(協力過濾的技術將在第14.4.2節介紹) 。
Netflix利用巨量資料分析來創新 黑思廷斯認為Netflix的成功與這個系統能精 確推薦出符合使用者喜好的電影有密切關 係,因此想辦一個比賽,由Netflix提供上億 筆的電影評價真實資料,只要全世界任何 隊伍可以設計出一個比Cinamatch更好的推 薦系統(例如精確度高10%以上),就可獲 得獎金100萬美元。
Netflix利用巨量資料分析來創新 這個想法獲得行銷部門的支持,認為此舉 會有新聞性,並透過比賽的過程讓社會大 眾了解到Netflix先進的IT技術能力,對 Netflix的形象有加分的效果。然而法務部門 卻擔心此舉會有會員資料外洩之虞,將來 有可能產生對公司的集體訴訟,因此持反 對立場。軟體部門則持中立立場,不過認 為若要辦這樣的比賽,則應提供完整的資 料,否則獲獎的系統將無法為公司所用。
導論 一些數據 手機和隨身碟:數十GB or 數百本書 個人電腦:數百GB或1TB or 數千或數萬本書 伺服器:數TB或數十萬本書 14.1 導論 14.2 14.3 14.4 14.5 14.6 14.7 導論 一些數據 手機和隨身碟:數十GB or 數百本書 個人電腦:數百GB或1TB or 數千或數萬本書 伺服器:數TB或數十萬本書 叢集式的系統:數PB(1015) 網路上的資料:數ZB(1021)
14.1 導論 14.2 14.3 14.4 14.5 14.6 14.7 導論
14.1 導論 14.2 14.3 14.4 14.5 14.6 14.7 導論 迫切的分析需求
導論 Data Analytics Programs Programs by Regions 14.1 導論 14.2 14.3 14.4 14.5 14.6 14.7 導論 Data Analytics Programs Programs by Regions Country Count USA 52 UK 9 Ireland 4 Asia 3 Spain 2 Belgium 1 Canada France Hungary Latin America Middle East and Africa Sweden
網路資料種類 公部門資料 私部門資料 使用者自行產生的資料(UGC) 電子化政府的服務和政令宣導 Open Data Movement 14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 網路資料種類 公部門資料 電子化政府的服務和政令宣導 Open Data Movement 私部門資料 公司產品和服務資訊 財務報表和內部文件 使用者自行產生的資料(UGC) 電子郵件資料 討論版資料 社會網路資料
14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 網路資料種類 知名UGC網站 台灣 PTT、Facebook、Google Handout、tripadvisor、 Mobile01 LINE 大陸 新浪微博、人人網、QQ空間 WeChat 其他 Twitter、LinkedIn、Plurk、Orkut、MySpace WhatsApp
14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 網路資料種類 tripadvisor資料範例
14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 網路資料種類
UGC特性 結構性資料 非結構性資料 網路型資料 PO文的Meta data PO文本身 使用者與使用者間的關係(好友、跟進、信任) 14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 UGC特性 結構性資料 PO文的Meta data 評論對象、評論者、旅遊型態、各個構面的評價 非結構性資料 PO文本身 可以歸納出其討論議題和看法 網路型資料 使用者與使用者間的關係(好友、跟進、信任) PO文與PO文間的關係(回覆、引述、推文) PO文與使用者間的關係(作者、讚、噓)
14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 巨量資料處理的發展狀況 巨量資料分析範例(一)
Target百貨預知顧客懷孕 美國的知名連鎖賣場Target寄發孕婦用品廣 告給中學女生。 Target特別重視懷孕的預測 有了小孩是家庭的一件大事,未來十餘年的物 品購買習慣都會跟著改變。 Target根據使用者的購買紀錄,包括使用的 化妝品和所吃的維他命,來決定一位婦女的 「懷孕預測指數」。 購買的商品和個人資料來預測懷孕指數值, 正確率高達87%。
14.1 14.2 網路資料 14.3 14.4 14.5 14.6 14.7 巨量資料處理的發展狀況
14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 結構性資料的探勘 以旅遊文章的PO文為例:
結構性資料的探勘 資料分類(或稱Predictive Analytics) 根據使用者的基本資料和喜歡的文章 預測他對於某一飯店的喜歡程度 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 結構性資料的探勘 資料分類(或稱Predictive Analytics) 根據使用者的基本資料和喜歡的文章 預測他對於某一飯店的喜歡程度 WHY 該飯店為人稱道的特色剛好是該使用者所重視的 分類技術 決策樹、SVM、貝式網路
結構性資料的探勘 資料分群 常用來將資料分成數群 找出每一群的特性, E.g., 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 結構性資料的探勘 資料分群 常用來將資料分成數群 找出每一群的特性, E.g., 30歲以下的單獨旅遊者。 25-55歲具大學學歷的商務旅遊者。 55歲以上的家庭旅遊者。 歸納出每一群的消費特徵,以方便檢視和做目 標行銷, E.g., 25-55歲具大學學歷的商務旅遊者較不計較價錢但在 乎飯店位置。
結構性資料的探勘 關聯分析 用來找出資料值間的相關性或甚至因果關係。 E.g., 北部商務旅客較常住五星級飯店。 商務旅客給的飯店評價較高。 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 結構性資料的探勘 關聯分析 用來找出資料值間的相關性或甚至因果關係。 E.g., 北部商務旅客較常住五星級飯店。 商務旅客給的飯店評價較高。
網路文章議題的探勘 文字處理 斷字系統 去除無效字(如”的”、”在”、”了”) 取出需要的詞性 網路文章的非正式用語也要處理 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 網路文章議題的探勘 文字處理 斷字系統 中研院中文斷字系統 史丹福大學POS Tagger 去除無效字(如”的”、”在”、”了”) 取出需要的詞性 E.g., 名詞 網路文章的非正式用語也要處理 GR8great 689 國民黨 609 民進黨
網路文章議題的探勘 將一篇PO文轉成一個向量值 用人工方式找出議題相關字。 PO文裡這些相關字的值高可能就是在討論 該議題。 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 網路文章議題的探勘 將一篇PO文轉成一個向量值 TF-IDF(Term Frequency-Inverse Document Frequency) tf(t, d):字詞t 在文章d裡出現的頻率 tf-idf(t, D) = tf(t, d) * idf(t, d) 用人工方式找出議題相關字。 PO文裡這些相關字的值高可能就是在討論 該議題。
網路文章議題的探勘 自動找出議題和其相關字 LDA 輸入每一篇PO文的字詞 自動找出 每一篇PO文的議題分布。 每一個議題的字詞分布。 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 網路文章議題的探勘 自動找出議題和其相關字 LDA 輸入每一篇PO文的字詞 自動找出 每一篇PO文的議題分布。 每一個議題的字詞分布。
14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 網路文章議題的探勘
網路文章評價的探勘 著重表達情緒的字詞 準備一套正面情緒字庫和一套負面情緒字庫 ,依此來決定一個句子的情緒。 但須解決以下問題 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 網路文章評價的探勘 著重表達情緒的字詞 形容詞和副詞(好、壞、舒適、難過)。 名詞和動詞(非常、喜歡、正妹)。 準備一套正面情緒字庫和一套負面情緒字庫 ,依此來決定一個句子的情緒。 但須解決以下問題 不同領域的用詞習慣有差別 一詞多義 他很喜歡談論別人的「是非」。 他是一個「是非」分得很清楚的人。
網路文章評價的探勘 但須解決以下問題 同樣是正(負)面詞,強度可能大不同 否定句的問題 先褒後貶的問題 反諷句的問題 14.1 14.2 14.3 網路文章的探勘 14.4 14.5 14.6 14.7 網路文章評價的探勘 但須解決以下問題 同樣是正(負)面詞,強度可能大不同 「做得好」和「做得棒」。 否定句的問題 「iPhone 5對你來說不是一個好選擇」。 先褒後貶的問題 雖然XXX有 炫麗的外型、高解析度的照相功能,且 輕薄短小,但它完全不符合商務人士的使用習慣。 反諷句的問題 XXX公司竟然推出這樣的好…產品。
從新聞和評論文章預測股票走勢 觀察產品、服務或公司的評價,可能會對於 這些產品或服務的銷售和公司的股票有所影 響。有一間名為「股票聲納」(Stock Sonar )的公司,專門收集和分析與某一家公司有 關的評論文章,來源包括新聞、公開文件、 部落格和推特,並自動分析這些文章中對於 該公司的評價,然後列出這些評價值和股票 走勢。圖14-4列出台積電(TSM)的評價值 和股票走勢圖,可以看出在8月26日有五篇 正面的評論文章,果然接下來股票就開始上 漲。
台積電股票和評論文章評價的走向圖 (www.thestocksonar.com) 從新聞和評論文章預測股票走勢 客戶如果想看詳細的文章自行判斷也可以在 網頁下方看到。 台積電股票和評論文章評價的走向圖 (www.thestocksonar.com)
社群的衡量指標 社會網路的分析,常見的分析指標: 關係密切之群體(Dense group) 橋接節點(Bridge) 14.1 14.2 14.3 14.4 社群資料的探勘 14.5 14.6 14.7 社群的衡量指標 社會網路的分析,常見的分析指標: 關係密切之群體(Dense group) 死黨,他們可能會有共同的價值觀和行為模式,可 以據以擬定行銷策略或教化模式。 橋接節點(Bridge) 橋接節點有機會接觸多個群體,資訊較為流通,也 比旁人有更多的機會。 集中度(Centrality) 在社會網路裡有較多連線的節點,可能是比較重要 的節點。
社群推薦技術 一般的推薦方式 利用社會網路的推薦 14.1 14.2 14.3 14.4 社群資料的探勘 14.5 14.6 14.7 社群推薦技術 一般的推薦方式 根據目標客戶的個人基本資料(性別、學歷、專 長、社經地位)和所購買或瀏覽過的產品,找出 相似產品來進行推薦。 利用社會網路的推薦 採用協力過濾法(Collaborative Filtering),推薦 一些你的夥伴所喜歡,但你卻還沒購買的商品。 何謂夥伴 信任的朋友 購買習慣類似的陌生人
行動資料的特性與服務 行動資料的特性 以位置為基礎(location-based)服務 大量的位置資訊 有不同程度的誤差和資料遺失 路線規劃 14.1 14.2 14.3 14.4 14.5 行動資料的探勘 14.6 14.7 行動資料的特性與服務 行動資料的特性 大量的位置資訊 有不同程度的誤差和資料遺失 以位置為基礎(location-based)服務 路線規劃 找鄰近的停車場、加油站、餐廳、旅館和商店 旅遊景點推薦 找鄰近的計程車或同伴 城市塞車路段的偵測
行動資料探勘的應用 探勘歷史性的移動資料應用 移動群體的探勘 推測使用者的生活圈 找出活動的可能參與者 共同結伴逛賣場的朋友 動物的群聚 14.1 14.2 14.3 14.4 14.5 行動資料的探勘 14.6 14.7 行動資料探勘的應用 探勘歷史性的移動資料應用 移動群體的探勘 共同結伴逛賣場的朋友 動物的群聚 推測使用者的生活圈 辦公室與家庭 形成個人的生活輪廓 找出活動的可能參與者 考慮個人偏好和活動區域
巨量資料的特性 4 V Volume:量極大 Variety:資料格式十分多樣化 Velocity:產生速度極快 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的特性 4 V Volume:量極大 以TB, PB來計。 Variety:資料格式十分多樣化 包括結構化資料、文字資料、數字型資料和影音資 料。 Velocity:產生速度極快 感測器產生的是串流型的資料(streaming data)。 Veracity:資料品質不一 有人或是裝置產生,必然有誤差。
巨量資料的特性 NoSQL資料庫 Not Only SQL:下一代非關聯式的資料庫技術。 支援分散式儲存 具備開放原始碼精神 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的特性 NoSQL資料庫 Not Only SQL:下一代非關聯式的資料庫技術。 支援分散式儲存 具備開放原始碼精神 容易進行水平式擴充(Horizontally scalable)
巨量資料的特性 NoSQL資料庫的特徵 無綱目(Schema-Free) 高延展性(High Scalability) 簡單的存取介面 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的特性 NoSQL資料庫的特徵 無綱目(Schema-Free) 無須事先明確定義資料實體間的關係與結構。 高延展性(High Scalability) 透過增加伺服器的方式,提升容量與處理能量。 簡單的存取介面 提供支援開發語言的應用程式介面(API),或是支 援REST風格的網路服務介面,不使用SQL。 最終的一致性(Eventually Consistent) 分散複製多份複本,在一段足夠長的時間後,逐步 同步所有的複本。
巨量資料的模式 NoSQL資料庫類型 Key-Value類型 文件類型 圖形(Graph)類型 適合存取資料實體與其屬性的結構化資料。 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 NoSQL資料庫類型 Key-Value類型 適合存取資料實體與其屬性的結構化資料。 文件類型 適用於儲存非結構性的文件。 圖形(Graph)類型 適合用來記錄社會網路(Social Network)資料。
巨量資料的模式 Key-Value類型NoSQL資料庫 資料結構 常見資料庫 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 Key-Value類型NoSQL資料庫 資料結構 資料是以Key-Value成對的結構儲存,而Key可能包 含多個屬性。 常見資料庫 Google Bigtable Hadoop HBase Amazon Dynamo
巨量資料的模式 文件類型NoSQL資料庫 資料結構 常見資料庫 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 文件類型NoSQL資料庫 資料結構 以XML、YAML、JSON、或BSON等標準,或以二 元型式如PDF或Word格式,表達文件資料,並以文 件為單位儲存與維護資料。 常見資料庫 Apache CouchDB 10gen MongoDB
巨量資料的模式 圖形類型NoSQL資料庫 資料結構 常見資料庫 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 圖形類型NoSQL資料庫 資料結構 使用圖形的節點(Node)、邊(Edge)和屬性 (Property)等表達並儲存資料。 常見資料庫 Neo Neo4j Franz AllegroGraph
巨量資料的模式 Google BigTable Google 在 2004 開始研發 應用於 Google 多項專案 資料庫需求 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 Google BigTable Google 在 2004 開始研發 應用於 Google 多項專案 如:網頁索引、Google Earth、Google Finance。 資料庫需求 儲存Petabytes等級之大量資料的資料庫 提供一個分散式高可用性的系統 滿足高效能的批次處理 兼顧低延遲的即時處理 容易擴充伺服器高延展性
巨量資料的模式 BigTable的結構 基本組成是鍵值(key)與內容值(value)的對 應 鍵值由三類鍵所組成 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 BigTable的結構 基本組成是鍵值(key)與內容值(value)的對 應 鍵值由三類鍵所組成 列鍵(row key):字串型態 行鍵(column key):字串型態 時間戳記(timestamp):64位元的整數 內容值則是一個任意長度的位元陣列(byte array) 格式: (row:string, column:string, timestamp:int64) value: byte[]
巨量資料的模式 BigTable的Key-Value對應範例 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 BigTable的Key-Value對應範例 (“tw.edu.nsysu.mis.www”, “contents:”,t1) (“tw.edu.nsysu.mis.www”, “anchor:www.nsysu.edtu.tw”,t2) (“tw.edu.nsysu.mis.www”, “anchor:www.cm.nsysu.edtu.tw”,t3) (“tw.edu.nsysu.finance.www”,”anchor:www.cm.nsysu.edtu.tw”,t6) “資訊管理學系” “<html>Ver 1.1…” “<html>Ver 1.0…” (“tw.edu.nsysu.finance.www”,”contents:”,t4) (“tw.edu.nsysu.finance.www”,”anchor:www.nsysu.edtu.tw”,t5) (“tw.edu.nsysu.finance.www”, “contents:”,t7) “<html>…” “財務管理學系”
巨量資料的模式 以列鍵為群組BigTable範例 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 “..Ver1.0 ...” “contents:” “anchor: www.nsysu.edu.tw” www.cm.nsysu.edu.tw” “資訊管理學系” “tw.edu.nsysu.mis.www” “<html> ...” “財務管理學系” t1 t4 t2 t3 t5 t6 t7 “tw.edu.nsysu.finance.www” “..Ver1.1...”
巨量資料的模式 Google NoSQL資料庫的技術堆疊 DataStore MegaStore BigTable GFS v2.0 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 Google NoSQL資料庫的技術堆疊 GFS v2.0 BigTable MegaStore DataStore Google 分散式檔案系統 key-value 資料儲存 多列的交易處理,以及簡易的索引與查詢 無綱目儲存,以及高階查詢引擎
巨量資料的模式 MapReduce引擎 適合Key-Value資料型態的處理。 處理的任務分成二種類型 14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 MapReduce引擎 適合Key-Value資料型態的處理。 處理的任務分成二種類型 Map任務:處理一筆筆Key-Value資料後,依照Key 值排序,同一個Key的資料被合併成一個群體 (Group)。 Reduce任務:接續Map輸出的資料,以一個群體為 單位,進行資料的彙總。 可以配置在電腦叢集的多個節點上並行運算, 達到提升處理效能的目的。
14.1 14.2 14.3 14.4 14.5 14.6 巨量資料處理技術 14.7 巨量資料的模式 MapReduce範例
摘要與結論 巨量資料的應用正方興未艾,包括商業、 醫療、社會、政治等領域無一不包。 決策靠的不只是經驗和直覺,而是有數據 佐證的證據。 14.1 14.2 14.3 14.4 14.5 14.6 14.7 摘要與結論 摘要與結論 巨量資料的應用正方興未艾,包括商業、 醫療、社會、政治等領域無一不包。 決策靠的不只是經驗和直覺,而是有數據 佐證的證據。 人類的社會勢必會因巨量資料分析而起了 根本的改變。 雖說擁護的聲音,也有不少質疑的聲浪。
摘要與結論 迷思 「只要資料足夠,數字自會說話」 數字不會說話,資料不論規模大小,仍受人類 設計限制。 「海量資料可提高城市智慧及效能」 14.1 14.2 14.3 14.4 14.5 14.6 14.7 摘要與結論 摘要與結論 迷思 「只要資料足夠,數字自會說話」 數字不會說話,資料不論規模大小,仍受人類 設計限制。 獲取的資料無法如實代表社會結構。 演算式也有偏見,尤其是運用演算式來評估個人。 「海量資料可提高城市智慧及效能」 某些部份是,但也會造成有些民眾及社區遭到漠視 或代表性不足。
摘要與結論 迷思 「海量資料對各個社會族群一視同仁」 「個人化」名義下,巨量資料卻可能用來針對特定 社會族群,給予不一樣的待遇。 14.1 14.2 14.3 14.4 14.5 14.6 14.7 摘要與結論 摘要與結論 迷思 「海量資料對各個社會族群一視同仁」 「個人化」名義下,巨量資料卻可能用來針對特定 社會族群,給予不一樣的待遇。 預測用戶相當敏感的個人資訊,例如性傾向、族裔、 宗教與政治立場、個性、智商、幸福程度、菸毒習 慣、父母婚姻狀況、年齡、性別等。