數據挖掘和數據分析之間的聯繫,搞數據分析基礎是啥?就業情況怎樣?
本人今年剛考了研究生,想報大數據相關方向。昨天見了下導師,他是搞大數據相關的,主要方面是數據分析。自己以為還是搞軟體開發那一套。和他交流後,他說這東西很少有編程,主要是搞演算法類的東西。我自己也從網上搜了下相關信息。感覺這個東西有點偏理論,而且感覺數學相關專業的更適合。雖然交流的不錯,他也說要我這個學生了(複試前和導師見得面)。自己覺得有點猶豫了,本人畢業兩年後又考的研,考的北京工業大學。考研目的自然是有份更好的工作。如果搞這個東西,以後就業情況不太清楚啊,有熟悉這塊領域的可否給幫忙解惑答疑下
首先我來確認一個問題:是你自己認為你老師是搞大數據的?還是你老師親口和你說他是搞大數據的?
「大數據」這個次被過分濫用,不是和數據沾點邊就可以稱為「大數據」~~如果是要搞大數據,編程是最起碼的基礎功(請自行搜索知乎相關答案)。所以請你確認下到底你導師是否真正的研究大數據,還是你自己的「口誤」。 我自以為一個導師不會不知道編程對大數據的重要性,如果他真的是研究大數據的話。
我從你的描述來看,你的導師應該只是和「BIG DATA」 沾點邊而已(因為他說不要編程,而且竟然就這麼招了一個連大數據是什麼都不知道的學生),應該不是嚴格意義上的數據挖掘或者機器學習從業者或者教學者,可能是我們常說的「數據分析師」! 一個是偏向於技術,一個是偏向於業務。毫無疑問,偏技術的賺錢多,我們通常說的「大數據」也是偏技術的!
——————————————我是分割線————————————————————
你說的沒錯,數學專業的孩子很適合做數據挖掘和機器學習的東西,因為這個專業涉及到的大多數演算法和公式都是空間向量、概率論、微積分等知識。 有點偏理論這一方面你也沒說錯,光一個SVM模型的核函數就可以寫好幾本書了。 但是數學不是大數據的全部,它只是大數據的一小部分。大數據還應該涵蓋編程,數據結構,資料庫,系統架構等各種計算機專業知識。
先給題主打一劑興奮劑:這個行業非常非常非常之有前途,也有錢途! 今天剛剛參加了100offer@牛佳敏 舉辦的大數據會議。會上最後一位演講者是來自阿里的某個數據工程師,詳細的講解了大數據演算法在淘寶是如何運籌帷幄的。這位牛的不能再牛的老師,甚至把建模的流程以及演算法的精簡版都放出來給我們看了。 不得不驚嘆,bat真的在引領著或者推動著中國互聯網行業的大數據發展方向! 你真的能夠切實感受到,馬雲是如何從中國千千萬萬的敗家娘們手裡把錢賺過去的,數據挖掘和機器學習起到了舉足輕重的作用!
題主如果跟對導師,兩三年的功夫至少能夠學點東西的,自己再勤奮點,肯定會有個不錯的發展。至於你說的不學編程,那簡直是在開玩笑。 PYTHON 和 R 是你逃不過去的命,有幾個搞數據的敢說自己不會這兩個語言的? 如果還要搞分散式,那麼java也是你逃不過的命。所以題主現在要有一個正確的觀念:大數據是一定要編程的!
大數據需要哪些知識?
1. 數理統計、線性代數、概率論等2. R、PYTHON、JAVA等3.數據挖掘、機器學習、自然語言處理等
4.SQL,MYsql等5.Hadoop、SPARK等6.英語能力以上這5點我個人認是大數據的一些核心知識與技能,也只是大數據的冰山一角。在這方面的書籍也已經是汗牛充棟。我很久以前寫過一篇關於學習數據分析的書單,似乎可以給你一點參考。
做數據分析不得不看的書有哪些? - 卡牌大師的回答
數據分析師其實薪資待遇並不高,數據挖掘工程師才是真正的香饃饃。後者比前者不僅有著更高深的數學能力,更重要的是他們對編程技能的掌握遠遠高於數據分析師~
總之:不以數學和編程為核心的大數據都是耍流氓難可以很實話的告訴你,這絕對是一個很有錢途的職業,現在很缺少這方面的人。一個隨便搞大數據的月薪沒有超過一萬都不好意思說出口。二三線的互聯網公司或者cd輪的公司,只有你有實力,基本都是年薪二三十萬起的,不要說bat這個等級了。如果要加入這個行業的話,理論肯定是不能少的,這是你進公司忽悠用的,實際過程中演算法沒有想像中那麼重要,基本大部分工作都是在做特徵工程。有機會的話,做好是能夠接觸實際項目,理論實踐兩手抓
數據挖掘偏技術,數據分析重業務,數據挖掘注重的演算法類的東西,對編程要求較高,一般是計算機專業較多,需要熟悉數據挖掘的分類,聚類,預測和推薦系統的一些演算法,如果想要做大數據如GB,PB量級你需要學習hadoop,其中的hdfs,map-reduce的原理需要理解,比如看看《hadoop權威指南和》陸嘉恆的《hadoop實戰》,而hadoop是JAVA寫的,so,你需要有JAVA基礎。但是hadoop是在Linux系統下才能跑,所以你又要會Linux一些基本操作。 還有一些pig,hive,hbase,zookeeper,yarn知識,也需要spark實時數據處理等等,就看你的發展方向了。 對於GB下輕量數據一般Python就可以搞定,你可以看看《機器學習實戰》和《機器學習實踐指南》。 如果你以後去的不是bat這類公司,可能你經常打交道的是spss,sas,R,weka因為它們都有很多的演算法寫好。。 數據分析就是偏重於業務這個需要有較強的業務分析能力和對數字的敏感性,對統計學要求較高,對數學的人來說可能這不是問題,一般業務流程是,給出一個業務問題,首先你需要和業務方交流他們的需求(溝通能力),然後你需要和公司類的同事一起溝通討論,如何量化這個問題,從哪找數據,怎麼找數據,拿到數據後怎樣進行數據預處理,然後進行數學建模,用那種演算法,市場的反饋和對模型的優化及產品的開發 , 然後你結果做好後你需要進行展示,告訴業務方你得出的結論,需要會PPT等等。這有一系列的數據可視化工作,初級的數據分析師一般是乾乾數據的收集和清洗,中級的數據分析師是會利用一系列數據挖掘手段進行數據建模和與業務方溝通,更高級的數據分析師是能夠從一堆雜亂的數據中通過經驗或者對業務的敏感度找出一些能夠給企業提供決策和優化方案的人,這樣就是數據驅動決策。 而數據科學家相當於兩者結合,不同的公司有不同的定義,即需要數據的敏感性也需要具有機器學習和數據挖掘知識,數據科學家一般是一個team,各司其職,有數據倉庫的,有數據清洗的,有數據分析,有數據建模的還有專門做演算法的,有做可視化的,有專門溝通業務的。具體可以看《數據科學實戰》 總得來說,數據挖掘更偏重技術,數據分析則是業務,就看樓主的愛好所在了,至於工資。。。數據挖掘可能前期工資高,因為是搞技術的,數據分析差點。。。。。。。。但都是不差錢的。 因為data science is the sexiest job in 21th century.
人們說到大數據,很多時候說的都不是一個東西。A也說大數據,B也說大數據,但很可能他們兩完全沒在說一個話題。大數據本身是一個很浮誇的詞,牽強附會的人很多,真正能跟其扯上關係的有分析和系統架構兩方面,而我認為真正驅動大數據的是系統架構,對於編程當然有很高的要求。當然並不是分析就不重要,分析同樣很重要,但是大規模數據的分析,必然要和系統產生密切關係。一個不懂編程的數據分析師,給他一個大規模的數據,他連中位數都算不出
作為統計學專業研究生談談自己一點小小的見解。大數據分析相關工作涉及很多方面,比如你導師說的演算法研究,還有可視化,資料庫,以及分散式平台等等。但即使是演算法研究也離不開編程作為基礎,畢竟演算法研究一個很重要的目標也是優化計算。如果本科不是機器學習相關專業,兩年研究生時間想成為大數據分析全能人才很困難,題主最好能找到興趣點從那裡切入,工作後再根據需要拓展。
不管數據分析還是數據挖掘都要會碼代碼,所以你搞軟體開發的有得天獨厚的優勢。數據挖掘偏演算法,想掙得多還是要搞數據挖掘。大數據無處不在,BAT就不用說了,現在互聯網金融、房地產、移動廣告哪哪都需要數據分析,前景一片光明。建議讀研期間夯實理論知識,畢竟是要忽悠人的,code方面都是相通的,最好能參與導師的項目,在實踐中得到鍛煉。
我要是跟你說現在全矽谷基本上每一個超過50人的IT公司都有專門的data science團隊你信嗎?然後你相信這陣風很快就會吹遍全球嗎(其實中國也已經很多了)人類在2014年generate的data比所有歷史紀錄加起來都多,當然2015會超過2014。Go for it and good luck!
上學的時候演算法很重要,工作的時候業務很重要,兩者結合了,你就要發了。實際的工作者告訴你,快去老師那裡吧。
目前來說大數據、數據挖掘是被吹上風口的豬。行業入門門檻比較高,學習曲線陡峭。比如大數據,學習大數據需要有數學知識、行業知識、以及編程技能和一些基本的網路知識。
另外一般做大數據都要懂點架構,為什麼說需要懂點架構呢?因為現在的大數據生態體系軟體眾多各有優劣因此需要在合適的場景選擇合適的軟體搭建符合自己需求的架構,比如在實時數據處理方面需要選擇能夠處理流數據的Spark Streaming等這類高實時性的處理軟體,如果在處理實時數據時選擇了擅長處理離線數據的Hadoop體系那處理起來相對吃力。這就是為什麼需要懂點架構。
因此大數據是一個很有錢途的行業但是入門門檻高。
數據挖掘更多的偏向演算法,數據分析數據挖掘從業者在一定時間後更多的選擇轉向做底層演算法研究或者深耕行業底層做行業高級顧問。
能問一下您是哪個大學的嗎?想考這方面的專業,但是找不到開設相關專業的大學
推薦閱讀:
※數學系學生向數據分析師發展所需培養的硬技能?
※請各位大牛推薦幾本關於「Python 數據挖掘」方面的書??
※職業規劃:Data Scientist(數據科學家) 和 Software Developer,如何選擇?
※如何快速入行數據分析師?
※App的數據分析怎麼做?