大資料與資料探勘學習規劃
本文結合了一些介紹大資料學習的熱文,為大家彙總整理了大資料職業方向和技能的一些內容,如有需要修改和補充的,歡迎指正~
一、大資料相關工作介紹
大資料方向的工作目前主要分為三個主要方向:
大資料工程師
資料分析師
大資料科學家
其他(資料探勘等)
附上大資料工程師技能圖:

二、大資料應用的目標
要學好大資料,首先要明確大資料應用的目標,大資料就好比萬金油,像百度幾年前提的框計算,這個框什麼都能往裡裝。為什麼會這樣,因為大資料這個框太大,其終極目標是利用一系列資訊科技實現海量資料條件下的人類深度洞察和決策智慧化,最終走向普適的人機智慧融合! 大資料應用的目標應該是普適智慧。
這不僅是傳統資訊化管理的擴充套件延伸,也是人類社會發展管理智慧化的核心技術驅動力。通過大資料應用,面向過去,發現數據規律,歸納已知;面向未來,挖掘資料趨勢,預測未知。從而提高人們對事物的理解和決策處置能力,最終實現社會的普適智慧。不管是商業智慧,機器智慧,人工智慧,還是智慧客服,智慧問答,智慧推薦,智慧醫療、智慧交通等相關技術和系統,其本質都是朝著這一目標在演進。隨著雲端計算平臺和大資料技術的高速發展,獲得大資料基礎設施建設相關技術和支援越來越容易。同時,移動網際網路和物聯網技術所具備的全面資料採集能力,客觀上促進了大資料的積累和爆發。
典型的資料科學過程:包括原始資料採集,資料預處理和清洗,資料探索式分析,資料計算建模,資料視覺化和報表,資料產品和決策支援等。

三.大資料要怎麼學:資料科學特點與大資料學習誤區
(1)大資料學習要業務驅動,不要技術驅動:資料科學的核心能力是解決問題。
大資料的核心目標是資料驅動的智慧化,要解決具體的問題,不管是科學研究問題,還是商業決策問題,抑或是政府管理問題。
所以學習之前要明確問題,理解問題,所謂問題導向、目標導向,這個明確之後再研究和選擇合適的技術加以應用,這樣才有針對性,言必hadoop,spark的大資料分析是不嚴謹的。
不同的業務領域需要不同方向理論、技術和工具的支援。如文字、網頁要自然語言建模,隨時間變化資料流需要序列建模,影象音訊和視訊多是時空混合建模;大資料處理如採集需要爬蟲、倒入匯出和預處理等支援,儲存需要分散式雲端儲存、雲端計算資源管理等支援,計算需要分類、預測、描述等模型支援,應用需要視覺化、知識庫、決策評價等支援。所以是業務決定技術,而不是根據技術來考慮業務,這是大資料學習要避免的第一個誤區。
(2)大資料學習要善用開源,不要重複造輪子:資料科學的技術基因在於開源。IT前沿領域的開源化已成不可逆轉的趨勢,Android開源讓智慧手機平民化,讓我們跨入了移動網際網路時代,智慧硬體開源將帶領跨入物聯網時代,以Hadoop和Spark為代表的大資料開源生態加速了去IOE(IBM、ORACLE、EMC)程序,倒逼傳統IT巨頭擁抱開源,谷歌和OpenAI聯盟的深度學習開源(以Tensorflow,Torch,Caffe等為代表)正在加速人工智慧技術的發展。
資料科學的標配語言R和Python更是因開源而生,因開源而繁榮,諾基亞因沒把握開源大勢而衰落。為什麼要開源,這得益於IT發展的工業化和構件化,各大領域的基礎技術棧和工具庫已經很成熟,下一階段就是怎麼快速組合、快速搭積木、快速產出的問題,不管是linux,anroid還是tensorflow,其基礎構件庫基本就是利用已有開源庫,結合新的技術方法實現,組合構建而成,很少在重複造輪子。
(3)大資料學習要以點帶面,不貪大求全:資料科學要把握好碎片化與系統性。根據前文的大資料技術體系分析,我們可以看到大資料技術的深度和廣度都是傳統資訊科技難以比擬的。
何為碎片化,這個碎片化包括業務層面和技術層面,大資料不只是谷歌,亞馬遜,BAT等網際網路企業,每一個行業、企業裡面都有它去關注資料的痕跡:一條生產線上的實時感測器資料,車輛身上的感測資料,高鐵裝置的執行狀態資料,交通部門的監控資料,醫療機構的病例資料,政府部門的海量資料等等,大資料的業務場景和分析目標是碎片化的,而且相互之間分析目標的差異很大;另外,技術層面來講,大資料技術就是萬金油,一切服務於資料分析和決策的技術都屬於這個範疇,其技術體系也是碎片化的。
(4)大資料學習要勇於實踐,不要紙上談兵:資料科學還是資料工程?
大資料只有和特定領域的應用結合起來才能產生價值,資料科學還是資料工程是大資料學習要明確的關鍵問題,搞學術發paper資料科學OK,但要大資料應用落地,如果把資料科學成果轉化為資料工程進行落地應用,難度很大,這也是很多企業質疑資料科學價值的原因。且不說這種轉化需要一個過程,從業人員自身也是需要審視思考的。
目前資料工程要解決的關鍵問題主線是資料(Data)>知識(Knowledge)>服務(Service),資料採集和管理,挖掘分析獲取知識,知識規律進行決策支援和應用轉化為持續服務。解決好這三個問題,才算大資料應用落地,那麼從學習角度講,DWS就是大資料學習要解決問題的總目標,特別要注重資料科學的實踐應用能力,而且實踐要重於理論。從模型,特徵,誤差,實驗,測試到應用,每一步都要考慮是否能解決現實問題,模型是否具備可解釋性,要勇於嘗試和迭代,模型和軟體包本身不是萬能的,大資料應用要注重魯棒性和實效性,溫室模型是沒有用的,訓練集和測試集就OK了嗎?
四、大資料學習的三個階段
不同階段的技術路線各有側重,把握主要矛盾。在大資料應用實施過程中,由於技術和成本考慮,不可能短時間內解決所有問題,大資料應用本身有其規律和特點,比如分析目標一定是要跟資料規模匹配,分析技術的採用取決於資料結構和資料來源條件,資料整合一定要覆蓋比較全面的業務背景,關鍵環節資料不能有缺失等等。大資料學習可以根據應用目標分三個階段:
大資料基礎設施建設階段:這個階段的重點是把大資料存起來,管起來,能用起來,同時要考慮大資料平臺和原有業務系統的互通聯合問題。一句話,做好全域性資料整合解決資料孤島問題!要完成大資料基礎設施系統建設開發,需要明確資料採集、儲存和分析各層核心元件的選型和使用,搭建穩定的大資料叢集,或選擇私有云方案的服務叢集,與生產系統併線執行,使待分析的歷史資料和實時資料得以採集並源源不斷流入大資料系統。這個階段的關鍵技術學習包括採集爬蟲、資料介面、分散式儲存、資料預處理ETL、資料整合、資料庫和資料倉庫管理、雲端計算和資源排程管理等等內容。
大資料描述性分析階段:此階段主要定位於離線或線上對資料進行基本描述統計和探索式視覺化分析,對管理起來的大資料能進行海量儲存條件下的互動式查詢、彙總、統計和視覺化,如果建設了BI系統的,還需整合傳統BI技術進行OLAP、KPI、Report、Chart、Dashboard等分析和初步的描述型資料探勘分析。這個基礎分析階段是對資料整合質量的檢驗,也是對海量資料條件下的分散式儲存管理技術應用穩定性的測試,同時要能替代或整合傳統BI的各類報表。這個階段的關鍵技術學習包括視覺化、探索式互動式分析、多維分析、各類基本報表和圖表的查詢設計等等。
大資料高階預測分析和生產部署階段:在初步描述分析結果合理,符合預期目標,資料分散式管理和描述型分析穩定成熟的條件下,可結合進一步智慧化分析需求,採用如深度學習等適用海量資料處理的機器學習模型,進行高階預測性挖掘分析。並通過逐步迭代優化挖掘模型和資料質量,形成穩定可靠和效能可擴充套件的智慧預測模型,並在企業相關業務服務中進行分析結果的決策支援,進行驗證、部署、評估和反饋。這個階段的關鍵技術包括機器學習建模、決策支援、視覺化、模型部署和運維等。
在上述幾個階段的技術學習過程中,需要注意幾個關鍵問題:
一是重視視覺化和業務決策 ,大資料分析結果是為決策服務,而大資料決策的表現形式,視覺化技術的優劣起決定性作用;
二是問問自己,Hadoop、Spark等是必須的嗎? 要從整個大資料技術棧來考慮技術選型和技術路線的確定;
三是建模問題處於核心地位,模型的選擇和評估至關重要 ,在課堂和實驗室中,多數模型的評估是靜態的,少有考慮其執行速度、實時性及增量處理,因此多使用複雜的臃腫模型,其特徵變數往往及其複雜。而Kaggle競賽中的各種Boost方法,XGBDT、隨機森林等模型,在資料探勘和機器學習教材中卻少有提及,所以要充分參考業界實戰經驗不能盡信書;
四是開發語言的選擇 ,基礎框架系統Java是必須掌握的,應用級的機器學習和資料分析庫Python是必須掌握的,而要深入各種框架和學習庫的底層,C++是必須掌握的;五是模型的產品化,需要將實際資料通過管道設計轉換為輸入特徵傳遞給模型,如何最小化模型在線上和線下的表現差距,這些都是要解決關鍵的問題。
如果你想從事資料探勘,你必須具備:
資料探勘模型、演算法的數學知識以及一些資料分析軟體(SPSS、SAS、matlab、clementine),一些資料庫相關的知識(oracle、mySQL)
瞭解市場、其它部門需求。當然這些都是一點一滴積累起來的,沒必要一蹴而就,特別是對市場、行業的瞭解以及對公司其它部門的需求的理解非常重要,這決定了你能否從基礎的分析人員上升到產品層、決策層,都是要在實際的工作中積累起來的。
對大資料【資料分析,資料探勘】概念都是模糊不清的,該按照什麼線路去學習,學完往哪方面發展,想深入瞭解,想學習的同學歡迎加入大資料學習qq群:458345782,有大量乾貨(零基礎以及進階的經典實戰)分享給大家,並且有清華大學畢業的資深大資料講師給大家免費授課,給大家分享目前國內最完整的大資料高階實戰實用學習流程體系 。
五、推薦的幾個進修技術路徑:
為了幫助大家少走彎路,為不同技術背景的IT專業人士整理了十條大資料分析工具的進修技術路徑:
1、Excel起步
作為一個入門級工具,Excel是快速分析資料的理想工具,也能建立供內部使用的資料圖。如果在眾多資料分析工具中您只瞭解最基本的Excel,以下是最好的進階路線:

2、SQL起步
如果你瞭解SQL,說明你已經具備了更快提升的基礎,建議如下進階路線:

3、R語言起步
作為用來分析大資料集的統計元件包,R是一個非常複雜的工具,掌握R意味著你比其他IT專業人士可以更快上手一些專業分析工具和服務。

4、Python起步

5、MySQL起步

6、微軟SQL Server起步

7、Tableau起步

8、Java起步

9、PostgreSQL起步

10、Visual Basic起步
