2021-02-01 分類: 網站建設
大數據作為2019年比較熱門的技術,受到越來越多的關注,那么對于一個想進入大數據的朋友來說,最想知道的是:大數據學什么?今天科多大數據就和你們一起來分享一篇關于大數據學習內容體系介紹的文章。(資料在尾部)
大數據技術體系太龐雜了,基礎技術覆蓋數據采集、數據預處理、分布式存儲、NOSQL數據庫、多模式計算(批處理、在線處理、實時流處理、內存處理)、多模態計算(圖像、文本、視頻、音頻)、數據倉庫、數據挖掘、機器學習、人工智能、深度學習、并行計算、可視化等各種技術范疇和不同的層面。另外大數據應用領域廣泛,各領域采用技術的差異性還是比較大的。短時間很難掌握多個領域的大數據理論和技術,建議從應用切入、以點帶面,先從一個實際的應用領域需求,搞定一個一個技術點,有一定功底之后,再舉一反三橫向擴展,這樣學習效果就會好很多。大數據技術初探
從前幾年到現在所謂的大數據時代,移動互聯網、物聯網、云計算、人工智能、機器人、大數據等前沿信息技術領域,逐個火了一遍,什么是大數據,大數據的技術范疇包括那些,估計很多人都是根據自己所熟悉的領域在盲人摸象。
下文從DT(Data technology,數據技術)技術泛型角度來系統地介紹什么是大數據,包括那些核心技術,各領域之間的關系等等:
首先我們說機器學習,機器學習(machine learning),是計算機科學和統計學的交叉學科,核心目標是通過函數映射、數據訓練、最優化求解、模型評估等一系列算法實現,讓計算機擁有對數據進行自動分類和預測的功能;機器學習領域包括很多智能處理算法,分類、聚類、回歸、相關分析等每類下面都有很多算法進行支撐,如SVM,神經網絡,Logistic回歸,決策樹、EM、HMM、貝葉斯網絡、隨機森林、LDA等,無論是網絡排名的十大算法還是二十大算法,都只能說是冰山一角;總之計算機要智能化,機器學習是核心的核心,深度學習、數據挖掘、商業智能、人工智能,大數據等概念的核心技術就是機器學習,機器學習用于圖像處理和識別就是機器視覺,機器學習用于模擬人類語言就是自然語言處理,機器視覺和自然語言處理也是支撐人工智能的核心技術,機器學習用于通用的數據分析就是數據挖掘,數據挖掘也是商業智能的核心技術。
深度學習(deep learning),機器學習里面現在比較火的一個子領域,深度學習是已經被研究過幾十年的神經網絡算法的變種,由于在大數據條件下圖像,語音識別等領域的分類和識別上取得了非常好的效果,有望成為人工智能取得突破的核心技術,所以各大研究機構和IT巨頭們都投入了大量的人力物力做相關的研究和開發工作。
數據挖掘(data mining),是一個很寬泛的概念,類似于采礦,要從大量石頭里面挖出很少的寶石,從海量數據里面挖掘有價值有規律的信息同理。數據挖掘核心技術來自于機器學習領域,如深度學習是機器學習一種比較火的算法,當然也可以用于數據挖掘。還有傳統的商業智能(BI)領域也包括數據挖掘,OLAP多維數據分析可以做挖掘分析,甚至Excel基本的統計分析也可以做挖掘。關鍵是你的技術能否真正挖掘出有用的信息,然后這些信息可以提升指導你的決策,如果是那就算入了數據挖掘的門。
人工智能(artifical intelligence),也是一個很大的概念,終極目標是機器智能化擬人化,機器能完成和人一樣的工作,人腦僅憑幾十瓦的功率,能夠處理種種復雜的問題,怎樣看都是很神奇的事情。雖然機器的計算能力比人類強很多,但人類的理解能力,感性的推斷,記憶和幻想,心理學等方面的功能,機器是難以比肩的,所以機器要擬人化很難單從技術角度把人工智能講清楚。人工智能與機器學習的關系,兩者的相當一部分技術、算法都是重合的,深度學習在計算機視覺和qipai走步等領域取得了巨大的成功,比如谷歌自動識別一只貓,最近谷歌的AlpaGo還擊敗了人類頂級的專業圍棋手等。但深度學習在現階段還不能實現類腦計算,最多達到仿生層面,情感,記憶,認知,經驗等人類獨有能力機器在短期難以達到。
最后我們才說大數據(big data),大數據本質是一種方法論,一句話概括,就是通過分析和挖掘全量海量的非抽樣數據進行輔助決策。上述技術原來是在小規模數據上進行計算處理,大數據時代呢,只是數據變大了,核心技術還是離不開機器學習、數據挖掘等,另外還需考慮海量數據的分布式存儲管理和機器學習算法并行處理等核心技術。總之大數據這個概念就是個大框,什么都能往里裝,大數據源的采集如果用傳感器的話離不開物聯網、大數據源的采集用智能手機的話離不開移動互聯網,大數據海量數據存儲要高擴展就離不開云計算,大數據計算分析采用傳統的機器學習、數據挖掘技術會比較慢,需要做并行計算和分布式計算擴展,大數據要互動展示離不開可視化,大數據的基礎分析要不要跟傳統商業智能結合,金融大數據分析、交通大數據分析、醫療大數據分析、電信大數據分析、電商大數據分析、社交大數據分析,文本大數據、圖像大數據、視頻大數據…諸如此類等等范圍太廣…,總之大數據這個框太大,其終極目標是利用上述一系列核心技術實現海量數據條件下的人類深度洞察和決策智能化!這不僅是信息技術的終極目標,也是人類社會發展管理智能化的核心技術驅動力。
數據分析師的能力體系
如下圖:
數學知識
數學知識是數據分析師的基礎知識。
對于初級數據分析師,了解一些描述統計相關的基礎內容,有一定的公式計算能力即可,了解常用統計模型算法則是加分。
對于高級數據分析師,統計模型相關知識是必備能力,線性代數(主要是矩陣計算相關知識)最好也有一定的了解。
而對于數據挖掘工程師,除了統計學以外,各類算法也需要熟練使用,對數學的要求是高的。
分析工具
對于初級數據分析師,玩轉Excel是必須的,數據透視表和公式使用必須熟練,VBA是加分。另外,還要學會一個統計分析工具,SPSS作為入門是比較好的。
對于高級數據分析師,使用分析工具是核心能力,VBA基本必備,SPSS/SAS/R至少要熟練使用其中之一,其他分析工具(如Matlab)視情況而定。
對于數據挖掘工程師……嗯,會用用Excel就行了,主要工作要靠寫代碼來解決呢。
編程語言
對于初級數據分析師,會寫SQL查詢,有需要的話寫寫Hadoop和Hive查詢,基本就OK了。
對于高級數據分析師,除了SQL以外,學習Python是很有必要的,用來獲取和處理數據都是事半功倍。當然其他編程語言也是可以的。
對于數據挖掘工程師,Hadoop得熟悉,Python/Java/C++至少得熟悉一門,Shell得會用……總之編程語言絕對是數據挖掘工程師的最核心能力了。
業務理解
業務理解說是數據分析師所有工作的基礎也不為過,數據的獲取方案、指標的選取、乃至最終結論的洞察,都依賴于數據分析師對業務本身的理解。
對于初級數據分析師,主要工作是提取數據和做一些簡單圖表,以及少量的洞察結論,擁有對業務的基本了解就可以。
對于高級數據分析師,需要對業務有較為深入的了解,能夠基于數據,提煉出有效觀點,對實際業務能有所幫助。
對于數據挖掘工程師,對業務有基本了解就可以,重點還是需要放在發揮自己的技術能力上。
邏輯思維
這項能力在我之前的文章中提的比較少,這次單獨拿出來說一下。
對于初級數據分析師,邏輯思維主要體現在數據分析過程中每一步都有目的性,知道自己需要用什么樣的手段,達到什么樣的目標。
對于高級數據分析師,邏輯思維主要體現在搭建完整有效的分析框架,了解分析對象之間的關聯關系,清楚每一個指標變化的前因后果,會給業務帶來的影響。
對于數據挖掘工程師,邏輯思維除了體現在和業務相關的分析工作上,還包括算法邏輯,程序邏輯等,所以對邏輯思維的要求也是高的。
數據可視化
數據可視化說起來很高大上,其實包括的范圍很廣,做個PPT里邊放上數據圖表也可以算是數據可視化,所以我認為這是一項普遍需要的能力。
對于初級數據分析師,能用Excel和PPT做出基本的圖表和報告,能清楚的展示數據,就達到目標了。
對于高級數據分析師,需要探尋更好的數據可視化方法,使用更有效的數據可視化工具,根據實際需求做出或簡單或復雜,但適合受眾觀看的數據可視化內容。
對于數據挖掘工程師,了解一些數據可視化工具是有必要的,也要根據需求做一些復雜的可視化圖表,但通常不需要考慮太多美化的問題。
協調溝通
對于初級數據分析師,了解業務、尋找數據、講解報告,都需要和不同部門的人打交道,因此溝通能力很重要。
對于高級數據分析師,需要開始獨立帶項目,或者和產品做一些合作,因此除了溝通能力以外,還需要一些項目協調能力。
對于數據挖掘工程師,和人溝通技術方面內容偏多,業務方面相對少一些,對溝通協調的要求也相對低一些。
快速學習
無論做數據分析的哪個方向,初級還是高級,都需要有快速學習的能力,學業務邏輯、學行業知識、學技術工具、學分析框架……數據分析領域中有學不完的內容,需要大家有一顆時刻不忘學習的心。
數據分析師的工具體系
一圖說明問題
可以從圖上看到,Python在數據分析中的泛用性相當之高,流程中的各個階段都可以使用Python。所以作為數據分析師的你如果需要學習一門編程語言,那么強力推薦Python~
Hadoop家族產品技術介紹:
Apache Hadoop: 是Apache開源組織的一個分布式計算開源框架,提供了一個分布式文件系統子項目(HDFS)和支持MapReduce分布式計算的軟件架構。
Apache Hive: 是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,通過類SQL語句快速實現簡單的MapReduce統計,不必開發專門的MapReduce應用,十分適合數據倉庫的統計分析。
Apache Pig: 是一個基于Hadoop的大規模數據分析工具,它提供的SQL-LIKE語言叫Pig Latin,該語言的編譯器會把類SQL的數據分析請求轉換為一系列經過優化處理的MapReduce運算。
Apache HBase: 是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統,利用HBase技術可在廉價PC Server上搭建起大規模結構化存儲集群。
Apache Sqoop: 是一個用來將Hadoop和關系型數據庫中的數據相互轉移的工具,可以將一個關系型數據庫(MySQL ,Oracle ,Postgres等)中的數據導進到Hadoop的HDFS中,也可以將HDFS的數據導進到關系型數據庫中。
Apache Zookeeper: 是一個為分布式應用所設計的分布的、開源的協調服務,它主要是用來解決分布式應用中經常遇到的一些數據管理問題,簡化分布式應用協調及其管理的難度,提供高性能的分布式服務
Apache Mahout:是基于Hadoop的機器學習和數據挖掘的一個分布式框架。Mahout用MapReduce實現了部分數據挖掘算法,解決了并行挖掘的問題。
Apache Cassandra:是一套開源分布式NoSQL數據庫系統。它最初由Facebook開發,用于儲存簡單格式數據,集Google BigTable的數據模型與Amazon Dynamo的完全分布式的架構于一身
Apache Avro: 是一個數據序列化系統,設計用于支持數據密集型,大批量數據交換的應用。Avro是新的數據序列化格式與傳輸工具,將逐步取代Hadoop原有的IPC機制
Apache Ambari: 是一種基于Web的工具,支持Hadoop集群的供應、管理和監控。
Apache Chukwa: 是一個開源的用于監控大型分布式系統的數據收集系統,它可以將各種各樣類型的數據收集成適合 Hadoop 處理的文件保存在 HDFS 中供 Hadoop 進行各種 MapReduce 操作。
Apache Hama: 是一個基于HDFS的BSP(Bulk Synchronous Parallel)并行計算框架, Hama可用于包括圖、矩陣和網絡算法在內的大規模、大數據計算。
Apache Flume: 是一個分布的、可靠的、高可用的海量日志聚合的系統,可用于日志數據收集,日志數據處理,日志數據傳輸。
Apache Giraph: 是一個可伸縮的分布式迭代圖處理系統, 基于Hadoop平臺,靈感來自 BSP (bulk synchronous parallel) 和 Google 的 Pregel。
Apache Oozie: 是一個工作流引擎服務器, 用于管理和協調運行在Hadoop平臺上(HDFS、Pig和MapReduce)的任務。
Apache Crunch: 是基于Google的FlumeJava庫編寫的Java庫,用于創建MapReduce程序。與Hive,Pig類似,Crunch提供了用于實現如連接數據、執行聚合和排序記錄等常見任務的模式庫
Apache Whirr: 是一套運行于云服務的類庫(包括Hadoop),可提供高度的互補性。Whirr學支持Amazon EC2和Rackspace的服務。
Apache Bigtop: 是一個對Hadoop及其周邊生態進行打包,分發和測試的工具。
Apache HCatalog: 是基于Hadoop的數據表和存儲管理,實現中央的元數據和模式管理,跨越Hadoop和RDBMS,利用Pig和Hive提供關系視圖。
Cloudera Hue: 是一個基于WEB的監控和管理系統,實現對HDFS,MapReduce/YARN, HBase, Hive, Pig的web化操作和管理。
當前名稱:大數據要學習什么知識?大數據學習的內容有哪些?
瀏覽路徑:http://m.newbst.com/news21/98571.html
成都網站建設公司_創新互聯,為您提供營銷型網站建設、建站公司、定制網站、企業建站、移動網站建設、動態網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
猜你還喜歡下面的內容