1.統(tǒng)計知識
在做數據分析,統(tǒng)計的知識肯定是需要的,Excel、SPSS、R等是需要掌握的基本技能。如果我們做數據挖掘的話,就要重視數學知識,數據挖掘要從海量數據中發(fā)現規(guī)律,這就需要一定的數學知識,最基本的比如線性代數、高等代數、凸優(yōu)化、概率論等。
2.概率知識
而樸素貝葉斯算法需要概率方面的知識,SKM算法需要高等代數或者區(qū)間論方面的知識。當然,我們可以直接套模型,R、Python這些工具有現成的算法包,可以直接套用。但如果我們想深入學習這些算法,最好去學習一些數學知識,也會讓我們以后的路走得更順暢。我們經常會用到的語言包括Python、Java、C或者C++,我自己用Python或者Java比較多。有時用MapReduce寫程序,再用Hadoop或者Hyp來處理數據,如果用Python的話會和Spark相結合。
3.數據挖掘的數據類型
那么可以挖掘的數據類型都有什么呢?關系數據庫、數據倉庫、事務數據庫、空間數據庫、時間序列數據庫、文本數據庫和多媒體數據庫。關系數據庫就是表的集合,每個表都賦予一個唯一的名字。每個表包含一組屬性列或字段,并通常存放大量元組,比如記錄或行。關系中的每個元組代表一個被唯一關鍵字標識的對象,并被一組屬性值描述。
4.數據倉庫
什么是數據倉庫呢?數據倉庫就是通過數據清理、數據變換、數據集成、數據裝入和定期數據刷新構造 。數據挖掘的工作內容是什么呢?數據分析更偏向統(tǒng)計分析,出圖,作報告比較多,做一些展示。數據挖掘更偏向于建模型。比如,我們做一個電商的數據分析。萬達電商的數據非常大,具體要做什么需要項目組自己來定。電商數據能給我們的業(yè)務什么樣的推進,我們從這一點入手去思考。我們從中挑出一部分進行用戶分群。
關于數據挖掘需要學習哪些知識,青藤小編就和您分享到這里了。如果您對大數據工程有濃厚的興趣,希望這篇文章可以為您提供幫助。如果您還想了解更多關于數據分析師、大數據工程師的技巧及素材等內容,可以點擊本站的其他文章進行學習。
1. 工程能力
( 1 )編程基礎:需要掌握一大一小兩門語言,大的指 C++ 或者 Java ,小的指Python 或者 shell 腳本;需要掌握基本的數據庫語言;
建議:MySQL + python + C++ ;語言只是一種工具,看看語法就好;
推薦書籍:《C++ primer plus 》
( 2 )開發(fā)平臺: Linux ;
建議:掌握常見的命令,掌握 Linux 下的源碼編譯原理;
推薦書籍:《Linux 私房菜》
( 3 )數據結構與算法分析基礎:掌握常見的數據結構以及操作(線性表,隊,列,字符串,樹,圖等),掌握常見的計算機算法(排序算法,查找算法,動態(tài)規(guī)劃,遞歸等);
建議:多敲代碼,多刷題;
推薦書籍:《大話數據結構》《劍指 offer 》
( 4 )海量數據處理平臺: Hadoop ( mr 計算模型,java 開發(fā))或者 Spark ( rdd 計算模型, scala開發(fā)),重點推薦后者;
建議:主要是會使用,有精力的話可以看看源碼了解集群調度機制之類的;
推薦書籍:《大數據 spark 企業(yè)級實戰(zhàn)》
2. 算法能力
( 1 )數學基礎:概率論,數理統(tǒng)計,線性代數,隨機過程,最優(yōu)化理論
建議:這些是必須要了解的,即使沒法做到基礎扎實,起碼也要掌握每門學科的理論體系,涉及到相應知識點時通過查閱資料可以做到無障礙理解;
( 2 )機器學習 / 深度學習:掌握 常見的機器學習模型(線性回歸,邏輯回歸, SVM ,感知機;決策樹,隨機森林, GBDT , XGBoost ;貝葉斯, KNN , K-means , EM 等);掌握常見的機器學習理論(過擬合問題,交叉驗證問題,模型選擇問題,模型融合問題等);掌握常見的深度學習模型( CNN ,RNN 等);
建議:這里的掌握指的是能夠熟悉推導公式并能知道模型的適用場景;
推薦書籍:《統(tǒng)計學習方法》《機器學習》《機器學習實戰(zhàn)》《 UFLDL 》
( 3 )自然語言處理:掌握常見的方法( tf-idf , word2vec ,LDA );
3. 業(yè)務經驗
( 1 )了解推薦以及計算廣告相關知識;
推薦書籍:《推薦系統(tǒng)實踐》《計算廣告》
( 2 )通過參加數據挖掘競賽熟悉相關業(yè)務場景,常見的比賽有 Kaggle ,阿里天池, datacastle 等。
個人感覺數據挖掘是一個比較大的概念,可以理解為:
數據挖掘=業(yè)務知識+自然語言處理技術(NLP)+計算機視覺技術(CV)+機器學習/深度學習(ML/DL)
(1)其中業(yè)務知識具體指的是個性化推薦,計算廣告,搜索,互聯網金融等;NLP,CV分別是處理文本,圖像視頻數據的領域技術,可以理解為是將非結構化數據提取轉換成結構化數據;最后的ml/dl技術則是屬于模型學習理論;
(2)在選擇崗位時,各個公司都沒有一套標準的稱呼,但是所做的事情無非2個大方向,一種是主要鉆研某個領域的技術,比如自然語言處理工程師,計算機視覺工程師,機器學習工程師等;一種是將各種領域技術應用到業(yè)務場景中去解決業(yè)務需求,比如數據挖掘工程師,推薦系統(tǒng)工程師等;具體的稱呼不重要,重要的是平時的工作內容;
PS:在互聯網行業(yè),數據挖掘相關技術應用比較成功的主要是推薦以及計算廣告領域,而其中涉及到的數據主要也是文本,所以NLP技術相對來講比較重要,至于CV技術主要還是在人工智能領域(無人車,人臉識別等)應用較多,本人了解有限,相關的描述會較少;
3.根據之前的分析,也可以看到該崗位所需要的3種基本能力分別是業(yè)務經驗,算法能力與工程能力;
入門
1.工程能力
(1)編程基礎:需要掌握一大一小兩門語言,大的指C++或者JAVA,小的指python或者shell腳本;需要掌握基本的數據庫語言;
建議:MySQL + python + C++;語言只是一種工具,看看語法就好;
(2)開發(fā)平臺:Linux;
建議:掌握常見的命令,掌握Linux下的源碼編譯原理;
(3)數據結構與算法分析基礎:掌握常見的數據結構以及操作(線性表,隊,列,字符串,樹,圖等),掌握常見的計算機算法(排序算法,查找算法,動態(tài)規(guī)劃,遞歸等);
建議:多敲代碼,多上OJ平臺刷題;
(4)海量數據處理平臺:hadoop(mr計算模型,java開發(fā))或者spark(rdd計算模型,scala開發(fā)),重點推薦后者;
建議:主要是會使用,有精力的話可以看看源碼了解集群調度機制之類的;
2.算法能力
(1)數學基礎:概率論,數理統(tǒng)計,線性代數,隨機過程,最優(yōu)化理論
建議:這些是必須要了解的,即使沒法做到基礎扎實,起碼也要掌握每門學科的理論體系,涉及到相應知識點時通過查閱資料可以做到無障礙理解;
(2)機器學習/深度學習:掌握常見的機器學習模型(線性回歸,邏輯回歸,SVM,感知機;決策樹,隨機森林,GBDT,XGBoost;貝葉斯,KNN,K-means,EM等);掌握常見的機器學習理論(過擬合問題,交叉驗證問題,模型選擇問題,模型融合問題等);掌握常見的深度學習模型(CNN,RNN等);
建議:這里的掌握指的是能夠熟悉推導公式并能知道模型的適用場景;
(3)自然語言處理:掌握常見的方法(tf-idf,word2vec,LDA);
3.業(yè)務經驗
(1)了解推薦以及計算廣告相關知識;
(2)通過參加數據挖掘競賽熟悉相關業(yè)務場景,常見的比賽有Kaggle,阿里天池,datacastle等;
PS:以上都是一些入門級別的介紹,在長期的學習中,應該多看頂會paper,多讀開源代碼,多學習優(yōu)秀解決方案;
數據挖掘,在人工智能領域,習慣上又稱為數據庫中知識發(fā)現(Knowledge Discovery in Database, KDD), 也有人把數據挖掘視為數據庫中知識發(fā)現過程的一個基本步驟。
知識發(fā)現過程以下三個階段組成:(1)數據準備,(2)數據挖掘,(3)結果表達和解釋。數據挖掘可以與用戶或知識庫交互。
并非所有的信息發(fā)現任務都被視為數據挖掘。例如,使用數據庫管理系統(tǒng)查找個別的記錄,或通過因特網的搜索引擎查找特定的Web頁面,則是信息檢索(information retrieval)領域的任務。
雖然這些任務是重要的,可能涉及使用復雜的算法和數據結構,但是它們主要依賴傳統(tǒng)的計算機科學技術和數據的明顯特征來創(chuàng)建索引結構,從而有效地組織和檢索信息。盡管如此,數據挖掘技術也已用來增強信息檢索系統(tǒng)的能力。
數據挖掘,在人工智能領域,習慣上又稱為數據庫中知識發(fā)現(Knowledge Discovery in Database, KDD), 也有人把數據挖掘視為數據庫中知識發(fā)現過程的一個基本步驟。
知識發(fā)現過程以下三個階段組成:(1)數據準備,(2)數據挖掘,(3)結果表達和解釋。數據挖掘可以與用戶或知識庫交互。
并非所有的信息發(fā)現任務都被視為數據挖掘。例如,使用數據庫管理系統(tǒng)查找個別的記錄,或通過因特網的搜索引擎查找特定的Web頁面,則是信息檢索(information retrieval)領域的任務。
雖然這些任務是重要的,可能涉及使用復雜的算法和數據結構,但是它們主要依賴傳統(tǒng)的計算機科學技術和數據的明顯特征來創(chuàng)建索引結構,從而有效地組織和檢索信息。盡管如此,數據挖掘技術也已用來增強信息檢索系統(tǒng)的能力。
把數學看懂才是王道,你是做軟件開發(fā)的,干嘛用R語言,R語言是統(tǒng)計語言,還不如用python。
真正的數據挖掘不是畫幾張圖那么簡單??础稊祿诰驅д摗?,然后用C/C++/Java/Python等這些語言編程實現。
理解了算法然后去實現。經過一段時間你理解了算法之后再去想有什么地方可以運用的,就是你有什么需求,數據是用來發(fā)現知識的,而知識可以幫助企業(yè)獲得經濟效益。
因此,如果你數學不好,在看《數據挖掘導論》的時候可以看看統(tǒng)計學的東西,結合起來。經過一年半載的學習之后,你可以看更高階的比如統(tǒng)計學習理論之類的,學著學著你就上路了。
1. 統(tǒng)計學統(tǒng)計學雖然是一門“古老的”學科,但它依然是最基本的數據挖掘技術,特別是多元統(tǒng)計分析,如判別分析、主成分分析、因子分析、相關分析、多元回歸分析等。
2. 聚類分析和模式識別聚類分析主要是根據事物的特征對其進行聚類或分類,即所謂物以類聚,以期從中發(fā)現規(guī)律和典型模式。這類技術是數據挖掘的最重要的技術之一。
除傳統(tǒng)的基于多元統(tǒng)計分析的聚類方法外,近些年來模糊聚類和神經網絡聚類方法也有了長足的發(fā)展。3. 決策樹分類技術決策樹分類是根據不同的重要特征,以樹型結構表示分類或決策集合,從而產生規(guī)則和發(fā)現規(guī)律。
4. 人工神經網絡和遺傳基因算法人工神經網絡是一個迅速發(fā)展的前沿研究領域,對計算機科學 人工智能、認知科學以及信息技術等產生了重要而深遠的影響,而它在數據挖掘中也扮演著非常重要的角色。人工神經網絡可通過示例學習,形成描述復雜非線性系統(tǒng)的非線性函數,這實際上是得到了客觀規(guī)律的定量描述,有了這個基礎,預測的難題就會迎刃而解。
目前在數據挖掘中,最常使用的兩種神經網絡是BP網絡和RBF網絡 不過,由于人工神經網絡還是一個新興學科,一些重要的理論問題尚未解決。5. 規(guī)則歸納規(guī)則歸納相對來講是數據挖掘特有的技術。
它指的是在大型數據庫或數據倉庫中搜索和挖掘以往不知道的規(guī)則和規(guī)律,這大致包括以下幾種形式:IF … THEN …6. 可視化技術可視化技術是數據挖掘不可忽視的輔助技術。數據挖掘通常會涉及較復雜的數學方法和信息技術,為了方便用戶理解和使用這類技術,必須借助圖形、圖象、動畫等手段形象地指導操作、引導挖掘和表達結果等,否則很難推廣普及數據挖掘技術。
聲明:本網站尊重并保護知識產權,根據《信息網絡傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個月內通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:3.009秒