回覆列表
  • 1 # 西線學院

      1.資料探勘基本知識

      這一部分主要是看書,先了解一個情況。至於用什麼書。口碑比較好的有《資料探勘:概念與技術(第3版)》。我買了,看了一大半,感覺不太適合初學者。有些概念直接給出,對於底子不好的人有些突兀,要是硬著頭皮使勁看,還是很有收穫的,適合入門以後反覆看。推薦一本很老的書《資料倉庫與資料探勘》。這本書相對來說不那麼厚,很多基礎概念也有論述,對初學者來說很友好。

      這一部分的學習是貫穿始終的,有經驗的前輩們介紹,什麼時候拿出來看看都是有收穫的。

      2.數學基礎

      這一部分也是不可或缺的,學一下未必能有感受。學好了,絕對收益無窮。我的計劃是穿插在整個學習過程中。主要內容是:線性代數、離散數學。

      (1)線性代數

      已經學過的,沒學過的都要認真學一下。國內的教材個人以為對概念沒有深入說透。比如特徵值和特徵向量,到底幹嘛用的。矩陣的乘法本質意義,也沒說清楚。

      (2)離散數學

      這個大部分人(不是專業的)都沒學過,聽著就頭痛。別急,不用全學,重點是圖論、代數系統、命題(謂詞和邏輯)、集合與關係。隨便找一本薄一點的教材。這些內容其實之前高中本科都有接觸,主要是一些邏輯符號,思維方式需要看懂。否則在一些地方看到一些莫名其妙的符號,不瞭解,看到一些簡單的公式以為很複雜,得不償失。

      (3)運籌學

      這個絕對是基礎課,之所以放在後面是因為本人認真學了。推薦的教材《運籌學》教材編寫組編寫。一本大厚綠皮書。對策論等跟博弈論有關的不用看。有條件的可以把演算法在跑一遍。絕對收穫良多。

      3.工具

      這部分本人在網上查了很久,課題組問了幾百遍。最終確認的這幾個。很多人說有程式設計經驗的人,學一個就一兩週的事,無奈,我零基礎。所以,這一部分絕對是個重點。先說本人確定的語言:MATLAB、Python、R。

      (1)MATLAB

      先說MATLAB,別說這個老,別說這個是學校搞學術才用的。不想挑起爭論,主要理由——好上手。上手以後就可以跑一些演算法,提高一些信心和學習的樂趣。教材我隨便找一本厚厚的備查(從來沒翻過)。我主要看的是官方手冊的Primer。然後就開始寫指令碼和函式,如果有看不懂的直接百度、google或者help。寫的都很清楚。這一部分主要是迅速上手,我已經略有收穫了。

      (2)Python和R

      這兩個放在一起,是因為網上關於這兩個的爭論太多了。本人也無數次迷失過。不爭論優劣,確實是各有優勢。我的順序是首先學python,立志以這個作為自己的主要程式。其次再是R,從畫圖入手。R畫出來的圖真是好看。至於學習的思路:先找一本入門的書,越簡單越好,學完之後找一本手冊,然後練習。

      首先python,先看《Head First Python》。挺好的。簡單易懂,網上竟然還能下載到英文的PDF。然後是《利用Python進行資料分析》和《機器學習實戰》。第一本書主要是利用Python做資料探勘的,基本提到Python學習都會推薦這本。第二本是理解機器學習的佳作,書中用到的語言就是Python。一邊學語言,一邊理解機器學習。很好的順序。

      其次R,因為有了前面的一部分基礎,學起來會容易一些。主要推薦教材是《R語言初學者指南》和《R語言實戰》。這部分的學習我準備跳著看,早期主要利用R來畫圖。然後步步深入著學習。這樣才能充分的練習,而不僅僅是紙上談兵。

      (3)Mysql

      最後加一個,瞭解一點Mysql,由於零基礎對資料的各種都不瞭解,強烈推薦一週讀完《深入淺出Mysql》。難度不大,主要是入門。如果以後用得著,再深入研究。

      再次重申一遍:這一階段還是要找程式寫。如果有工作或者專案,直接上,學的最快。如果沒有,找篇不錯的,感興趣的博士論文,跑一遍裡邊的程式。這部分內容不是學出來的,絕對練出來的。

      4.演算法

      演算法太多了,常見的就那些。一方面要看明白,理解演算法。另一方面用上面的語言跑出來。既能理解演算法,也能很好的熟悉語言。

      總結

      整個入門階段,千萬不要抱著學完一個在學一個的思想。同時學!比如,語言入門了,就找演算法實踐。看到一個演算法,一定要程式跑出來。中間累了,把數學基礎補一補。

  • 2 # djdbupt

    本人非資料探勘專業,目前轉行做機器學習相關,說說自己的體會!首先最好辦法就是去coursra上去學習一下andrew ng的機器學習這門課,對基本演算法,應用有個大概瞭解!然後去刷一下kaggle,參加一下這種競賽,學會運用模型去解決實際問題!然後為了更好的調引數,有針對性看一些理論知識!推薦prml,嘗試實現一下相關演算法,能夠幫助你理解原理!總之實踐很重要,還有就是透過面試積累經驗,發現自己的不足

  • 3 # 遊戲小柯

    從現在開始一切都不晚,程式語言直接從python開始,然後再培養興趣,學會使用一些機器學習演算法做實戰,再考慮機器學習演算法的具體實現細節,再之後怎麼走,我也正在學習

  • 4 # 統計學的世界

    我自己本科和研究生一直學的統計學,工作後一直從事資料分析和挖掘的工作。我簡單來回答一下這個問題:

    說句比較俗也比較實在的的話,一切皆有可能

    首先目前資料探勘相關的職位基本上是供不應求,原因是“資料爆炸,知識匱乏”。資料探勘技術正好是解決這類問題目前來看最好的方法。大部分從事資料探勘相關工作的並不是來自本專業和相關專業

    其次你本身是研究生,本身土木工程對數學和統計的要求還是有點高的。估計程式設計的功底也不會差。能靠上研究生,至少學習能力不會差。所以學好併入行問題肯定不大。

    關鍵要考慮需要學習什麼,及怎麼學效率比較高的問題,個人有如下一些建議:

    1. 最好能簡單學習一些統計學的基礎:比如數理統計、線性模型和logistic迴歸模型、聚類分析等等;

    2.最好能學一門相關的資料探勘軟體,個人推薦Python(numpy、pandas、matplotlib和sklearn)

    3.認真讀一本資料探勘相關的書(個人推薦《資料探勘導論》),重點是理解各種演算法的來龍去脈和優點缺點。如果覺得有難度,可以參加一些培訓。目前這類培訓還是非常豐富的。不過不建議一上來就學深度學習、強化學習。這個會有點難度,對信心培養不利

    4.做一些實際的資料探勘問題,比如去kaggle上刷一下題。kaggle上面很多的問題都是企業裡面實際需要去解決的資料探勘問題,場景非常明確,評估標準也非常統一。這個對你學的資料探勘理論和軟體操作是一種很好的檢驗和提升。

  • 中秋節和大豐收的關聯?
  • 體檢為什麼查不出癌症?