祁鵬年
(長沙理工大學經濟與管理學院,長沙 410114)
多層次數據分析
祁鵬年
(長沙理工大學經濟與管理學院,長沙 410114)
對于專業的數據分析而言,一定要有很強的針對性,什么樣的需求就要提供與之層次相匹配的分析結果。否則就會造成不必要的信息價值浪費,也會大大增加需求者獲取信息的成本。就如何有效實現多層次的數據分析,以理論實例相結合的方式,做相應的探討。
大數據;數據挖掘;數據分析;分布式數據庫
“In God We Trust;All Others Use Data”。在美國企業流傳這樣一句話:除了毫無保留地信奉上帝,其他的一切均以數據說話。這句話足以揭示數據的價值,數據將是未來世界的主宰。首先,多層次的數據分析正改變著企業做決策的模式。在海量的數據中通過不同維度的鉆取,可以得到不同價值的信息,這些信息以不同比例的價值使得企業高層做出更精準的決策。其次,多層次的數據分析也改變著企業創造價值的方式,可以通過分析技術,把分析應用于每一個領域,甚至每一件事情,由分析結果可以把更多相關的領域疊加起來再分析,又將產生新的價值。所以,多層次數據分析正在為企業創造著前所未有的價值。最后,多層次的數據分析將直接改變企業對每一個客戶提供價值的方式。數據分析可以幫助企業發現每一個潛在的用戶群,針對不同的用戶提供不同的個性化服務,無疑這將極大地提高營銷效率。
1.1 數據采集
數據的采集是指利用傳感器、社交網絡以及移動互聯網等方式獲得的各種類型的結構化、半結構化以及非結構化的海量數據,這是一切數據分析的基礎。數據的采集需要解決分布式高速高可靠數據的采集、高速數據全映像等數據收集技術。還要設計質量評估模型,開發數據質量技術。而數據采集一般分為大數據智能感知層:主要包括數據傳感體系、網絡通信體系、傳感適配體系、智能識別體系及軟硬件資源接入系統,實現對海量數據的智能化識別、定位、跟蹤、接入、傳輸、信號轉換、監控、初步處理和管理等。
1.2 數據預處理
數據采集的過程本身就有會有很多數據庫,但如果想達到有效分析海量數據的目的,就必將這些來自前端的數據導入到一個集中的大型分布式數據庫,或者分布式存儲集群,而且在導入基礎上做一些簡單的辨析、抽取、清洗等操作。①抽?。阂驗槲覀兺ㄟ^各種途徑獲取的數據可能存在多種結構和類型,而數據抽取過程可以有效地將這些復雜的數據轉換為單一的結構或者便于處理的類型。以達到快速分析處理的目的。②清洗:對于海量數據而言,數據所處的價值層次不一樣,就必然存在由于價值低而導致開發成本偏大的數據,還有與數據分析毫無關系的數據,而另一些數據則是完全錯誤的干擾項,所以對數據通過過濾“去噪”從而提取出有效數據是十分重要的步驟。
1.3 數據的存儲與管理
當我們采集數據完成后,就需要將其存儲起來統一管理,主要途徑就是建立相應的數據庫,進行統一管理和調用。在此基礎上,需要解決大數據的可存儲、可表示、可處理、可靠性及有效傳輸等幾個關鍵問題。還需開發可靠的分布式文件系統(DFS)、能效優化的存儲、計算融入存儲、數據的去冗余及高效低成本的大數據存儲技術;以及分布式非關系型大數據管理與處理技術、異構數據的數據融合技術、數據組織技術、研究大數據建模技術、索引、移動、備份、復制、可視化技術。
1.4 數據的統計分析
一般情況下,統計與分析主要就是利用分布式數據庫,或者分布式計算集群來對存儲于其內的海量數據進行普通的分析和分類匯總等,以滿足大多數常見的分析需求,在這方面,一些實時性需求會用到EMC的GreenPlum、Oracle的Exadata,以及基于MySQL的列式存儲Infobright等,而一些批處理,或者基于半結構化數據的需求可以使用Hadoop。統計與分析這部分的主要特點和挑戰是分析涉及的數據量大,其對系統資源,特別是I/O會有極大的占用。
1.5 數據分析與挖掘
所謂數據挖掘是指從數據庫中的大量不完全的、有噪聲的、模糊的、隨機的實際應用數據中,揭示出隱含的、先前未知的并有潛在價值的信息的過程。與前面統計和分析過程不同的是,數據挖掘一般不會有預先設計好的主題,主要是在現有數據上面進行基于各種算法的計算,從而起到預測(Predict)的效果,從而實現一些高級別數據分析的需求。比較典型的算法有用于聚類的K-means、用于統計學習的SVM和用于分類的NaiveBayes,主要使用的工具有Hadoop的Mahout等。該過程的特點和挑戰主要是用于挖掘的算法很復雜,并且計算涉及的數據量和計算量都很大,常用數據挖掘算法都以單線程為主。
2.1 標準化報告(Standard Reports)
標準化報告作為數據分析的第一個層次,要求相對較低,主要是借助相應的統計工具對數據進行歸納總結,得出包含主要參數指標的標準化報告。類似于一個銷售企業每月或者每季度的財務報表。
2.2 即席查詢(Ad Hoc Reports)
用戶可以通過自己的需求,靈活地選擇查詢條件,系統就能夠根據用戶的需求選擇生成相應的統計報表。即席查詢與普通應用查詢最大的不同是普通的應用查詢是定制開發的,而即席查詢所有的查詢條件都是用戶自己定義的。在面向高層的數據分析軟件中,用戶隨意添加想要查詢的指標按鈕再加上相應的限制條件,就可以立即生成可視化的統計結果,不僅一目了然,而且沒有任何操作難度。
2.3 多維分析(Query Drilldown)
多維分析是指對具有多個維度和指標所組成的數據模型進行的可視化分析手段的統稱,常用的分析方式包括:下鉆、上卷、切片(切塊)、旋轉等各種分析操作。以便剖析數據,使分析者、決策者能從多個角度多個側面觀察數據,從而深入了解包含在數據中的信息和內涵。上卷是在數據立方體中執行聚集操作,通過在維級別中上升或通過消除某個或某些維來觀察更概括的數據。上卷的另外一種情況是通過消除一個或者多個維來觀察更加概括的數據。下鉆是在維級別中下降或者通過引入某個或者某些維來更細致地觀察數據。切片是在給定的數據立方體一個維上進行的選擇操作,切片的結果是得到了一個二維的平面數據(切塊是在給定的數據立方體的兩個或者多個維上進行選擇操作,而切塊的結果是得到了一個子立方塊)。轉軸相對比較簡單,就是改變維的方向。
2.4 儀表盤與模擬分析(Alerts)
儀表盤用于監控一些關鍵指標。模擬分析是由操作者動態地加以調節的控件(如滑動塊、可調旋鈕、選擇框等),來控制管理決策模型行為某些參數。當操作者通過控制面板對模型中的參數值或變量值進行調節時,圖形中的曲線、柱形組或分析指標等要素就會發生相應的運動,而這種運動正好反映了該參數的變化對模型行為的影響,如果這種變動引起了模型中最優解或其他關鍵數字的變化,能夠隨時將關于這種變化的結論正確地顯示出來。
2.5 統計分析(Statistically Analysis)
我們知道概率論是數理統計的基礎,數理統計是在其基礎上研究隨機變量,并應用概率論的知識做出合理的估計、推斷與預測。概率論中討論的各種分布在數理統計中作為統計模型來分析處理帶有隨機誤差的數據。典型的數理統計方法有參數估計、假設檢驗和回歸分析。而統計分析主要是對用戶所關注的問題進行推斷、預測和控制的分析方法。具體可以分為以下三方面:
①描述統計:主要是集中趨勢、離散程度、分布形狀等,統計圖(方圖、箱線圖、散點圖等);
②數據的分類匯總;
③基礎統計分析:方差分析、時間序列分析、相關和回歸分析、(主成分)因子分析等統計分析方法。
2.6 預測(Forecasting)
在統計分析和數據挖掘領域,對未來的預測已經有了很多數學模型以及解決具體問題的相關算法。其核心思想便是從歷史數據中找出數據的發展模式,然后以這些模式為支點,就可以對未來進行預測。
2.7 預測模型(Predictive Modeling)
隨著數據分析學家對數據挖掘技術的不斷探索,出現了很多預測模型以及與之相對應的算法,但是很難確定某個模型是最精確的,因為不同的領域,不同的條件,對應的預測模型是不一樣的,所以沒有統一化的最優模型,只存在有選擇性的最優模型。下面介紹幾種典型的預測模型。
①回歸模型:回歸模型可以分為一元線性回歸模型和多元線性回歸模型。一元線性回歸模型可表示為yt=b0+b1xt+ut,該式表示變量yt和xt之間的真實關系。其中yt稱作被解釋變量(或相依變量、因變量),xt稱作解釋變量(或獨立變量、自變量),ut稱作隨機誤差項,b0稱作常數項(截距項),b1稱作回歸系數。b0+b1xt是非隨機部分,ut是隨機部分。而在很多情況下,回歸模型必包含兩個或更多自變量才能夠適應地描述經濟現象各相關量之間的聯系,這就是多元線性回歸模型需要解決的問題,其一般形式為:Y=a+b1X1+b2X2+…+bmXm,式中X1、X2、…、Xm是這個多元回歸問題的m個自變量,b1、b2、…、bm是回歸方程對應于各自變量的系數,又稱偏回歸系數。
②貝葉斯網絡:貝葉斯網絡是基于概率推理的數學模型,而概率推理是通過一些產量的信息來獲取其他概率信息的過程。貝葉斯網絡會建立一個有向無環圖和一個概率表集合,有向無環圖中的每一個節點便是一個隨機變量,而有向邊表示隨機變量間的條件依賴,條件概率表中的每一個元素對應有向無環圖中唯一的節點,存儲此節點對其所有直接前驅節點的條件概率。貝葉斯網絡是為了解決不定性與不完整性問題而提出的,在多個領域中獲得廣泛應用。
③基于時間序列分析的指數平滑模型
在時間序列分析中指數平滑模型是最靈活和準確的方法,在經濟領域也被證明是最有效的預測模型。在不同的時間序列下,指數平滑模型可以分為簡單指數平滑法、帶有趨勢調整的指數平滑法、帶有阻尼趨勢的指數平滑法、簡單季節指數平滑法、帶有趨勢和季節調整的指數平滑法五種不復雜度的模型。
2.8 最優化(Optimization)
因為優化問題往往可以帶來巨額的收益,通過一系列可行的優化,可以使收益得到顯著提高。所謂最優化就是從有限或者無限種可行的方案中選取最優的方案。如果可以通過簡單的評判,就可以確定最優方案那是最好的。但是事實不會那么簡單,所以優化技術已經發展出了一系列的理論來解決實際問題。其常用的優化技術為:
①線性規劃:當目標函數與約束函數都是線性函數時,就是一個線性規劃問題。而當同時滿足約束函數和目標函數時,則可以認為是最優解。
②整數規劃:要求決策變量取整數值的數學規劃。
③多目標規劃:指衡量一個決策優劣的標準不止一個,也就是有多目標函數。
④動態規劃:將一個復雜的問題劃分為多個階段,逐段求解,最終求出全局最優解。
表1是某產品某季度的銷售數據,根據表中所給出的數據可以做出不同層次的分析。
①對于企業而言最重要的是利潤,所以管理者必須要從這張表中得到最關鍵也最容易得到的銷量和銷售額以及與其相關的一些數據,通常是用最基本的數理統計結果來直觀地反映該企業在某個期間的盈利情況。
②其次,我們必須要做進一步的分析。已經對整體的情況有了一定的把握,所以就可以朝著不同的方向去挖掘一些有價值的信息,為企業高層做決策提供有力的依據。對產品銷售而言,客戶結構能夠有效地反映客戶的地域分布,企業可以根據客戶的來源,在未開辟客戶的地域去尋找新的目標客戶群。而銷量結構可以直觀地反映企業最大銷量來自哪個地區,對銷量較小的地區可以加大宣傳力度或者增加銷售網點來保持各地區銷售均衡。還可以及時地調整銷售方式來擴大市場份額,而對于銷量最小的地區考慮開辟新的市場。

表1
③圖3統計了各地區的銷售總額和平均銷售額以及兩者的對比關系。由此可以得出地區平均購買力大小,以及各地區總銷售額大小。借助圖表描述,管理者可以對企業在某段期間內的銷售狀況有一個大概的把握,只有掌握了這些的信息,才能更細化地去研究具體的影響因素。

圖1

圖2

圖3
④一般以銷售為主的企業都需要對客戶的購買力劃分等級,對于經常性大量購買的客戶必須要以最優惠的價格和最好的服務讓其滿意,以形成一個穩定的大客戶群。而對于那些少量購買的客戶,也要制定出相應合適的方案來留住客戶。所以,分析銷售額的分布情況,可以掌握客戶的購買力度而且還能及時做一些留住大客戶的舉措。
R語言是一種自由軟件編程語言與操作環境,是一套完整的數據處理、計算和制圖軟件系統,它是一種用來進行數據探索、統計分析和作圖的解釋型語言。它可以提供一些集成的統計工具,但更大量的是它提供各種數學計算、統計計算的函數,從而使使用者能靈活機動地進行數據分析,甚至創造出符合需要的新的統計計算方法。而在使用R語言進行數據分析處理時,當我們遇到很大的原始數據,但用來建模的數據較小,則可以先在數據庫中進行整理,然后通過R與數據庫的接口提取數據,數據庫適合存放和整理比較規整的數據,和R中的數據框有良好的對應關系,這也是R中絕大多數統計模型的標準數據結構。數據庫中大部分的運算都不需要消耗很大的內存。

圖4
如今的社交平臺已經做得相當完善,我們可以隨時掌握朋友圈的一些動態,以及最近很熱的一些話題。下面我們以微博話題為例,用R語言實現相關的分析,并呈現出可視化的分析結果。
具體分析思路:
可以從新浪微博開放平臺:http://open.weibo.com中使用R函數抓取數據。獲取與“最新話題”相關的微博約10000條,對微博內容進行分詞,構造詞頻矩陣,即每條微博是一個觀測,語料庫中每個詞語出現的頻率是自變量,微博的主題為因變量,對因變量做回歸并進行變量選擇,找到那些最能將因變量區分開來的詞語。也可以通過訪問http://s.weibo.com/weibo/<search_ content>&rd=MjAxN&page=<page_number>抓取微博的HTML文本,注意抓取網頁的頻率限制,利用XML軟件包解析HTML,獲取微博的文本內容,利用rmmseg4j軟件包進行中文分詞將數據導入數據庫,進行簡單的處理(大寫轉小寫,刪去某些詞語),利用ff軟件包讀取數據,并結合Matrix軟件包構造稀疏詞頻矩陣,12147條微博,4711個詞語,完整的詞頻矩陣大小為0.97G,稀疏化后僅占據3.6M,使用Lasso對回歸進行變量選擇,核心算法用Rcpp軟件包和C++實現,結果使用wordcloud軟件包進行可視化展示如下:

圖5
多層次數據分析在管理上有十分重要的意義,因為它所產生的價值是完全建立在真實的數據層面,而對一個企業而言搜集數據模式的改進是管理過程的完善,對企業符合時代潮流和規范管理過程是至關重要的。多層次數據分析能夠及時糾正企業錯誤的決策,能夠對進度展開實時跟蹤,還能了解成本管制情況和人員思想動態等。
對于個人而言,數據分析可以幫助我們更好地去生活,消費者可以通過分析結果去選擇物美價廉的商品。還可以用數學模型來分析電影的票房,來減少不必要的損失等。
總之,大數據時代多層次數據分析的價值是無可估量的,它可以囊括我們能想到方方面面以及我們現在還想不到的一些領域。也許,在不久的將來數據分析技術會變成一個獨立的學科,而掌握數據分析技術是以后社會中人才必備的技能。
[1] 彭鴻濤,聶磊.發現數據之美-數據分析原理與實踐[M].北京:電子工業出版社,2014:1~200
[2] 劉蘭娟等.《經濟管理中的計算機應用(第二版)》[M].北京:清華大學出版社,2013:1~300
Multilevel Data Analysis
QI Peng-nian
(School of Economics and Management,Changsha University of Science&Technology,Changsha 410114)
As for the analysis of professional data,it must be very strong pertinence,the results of the analysis provides with what kind of demand. Otherwise it causes unnecessary waste of information value,which will greatly increase the cost for information acquisition.Makes a corresponding discussion about how to realize the multi-level analysis data by combining with examples of the way of theory.
Big Data;Data Mining;Data Analysis;Policy Desicion and Distributed Database
1007-1423(2015)02-0045-06
10.3969/j.issn.1007-1423.2015.02.012
祁鵬年(1992-),青海海東人,本科,研究方向Web開發、數據分析
2014-10-30
2014-12-24