零基礎數(shù)據(jù)挖掘學習清單

Table of Contents

  1. 數(shù)據(jù)挖掘基本知識
  2. 數(shù)學基礎
  3. 工具
  4. 文本編輯器
  5. 總結

先甩片湯話:不知怎么的,就從純工科的學業(yè)到管理工作崗位,又進入了數(shù)據(jù)挖掘的學習。一切都是從頭學起,不會寫代碼,(本科學的C++,也只記得課程的名字),數(shù)學也多年未動,離散數(shù)學從未接觸,這條路步履維艱。
啥也不說了,有時間抱怨,不如迅速開干,用了一個月不到,首先明確自己哪里不足(其實就是哪里都不足),把自己要補足的東西先碼在這,東西有點多,變身!拼了!
P.S:平時上班,工作也很忙。按照這個計劃,已經(jīng)進行了2-3個月了,已經(jīng)有點感覺了。其實,這兩三個月也沒有塌下心來學,估計自己半年就可以入門了。
廢話不多,先把自己的學習清單給自己列出來。本人零基礎,所以有些東西很基礎,高手莫要鄙視。
1 數(shù)據(jù)挖掘基本知識
這一部分主要是看書,先了解一個情況。至于用什么書。口碑比較好的有《數(shù)據(jù)挖掘:概念與技術(第3版)》。我買了,看了一大半,感覺不太適合初學者。有些概念直接給出,對于底子不好的人有些突兀,要是硬著頭皮使勁看,還是很有收獲的,適合入門以后反復看。推薦一本很老的書《數(shù)據(jù)倉庫與數(shù)據(jù)挖掘》,作者:武森等。這本書相對來說不那么厚,很多基礎概念也有論述,對初學者來說很友好。
這一部分的學習是貫穿始終的,有經(jīng)驗的前輩們介紹,什么時候拿出來看看都是有收獲的。

2 數(shù)學基礎
這一部分也是不可或缺的,學一下未必能有感受。學好了,絕對收益無窮。我的計劃是穿插在整個學習過程中。主要內(nèi)容是:線性代數(shù)、離散數(shù)學。
(1)線性代數(shù)
已經(jīng)學過的,沒學過的都要認真學一下。國內(nèi)的教材個人以為對概念沒有深入說透。比如特征值和特征向量,到底干嘛用的。矩陣的乘法本質(zhì)意義,也沒說清楚。
推薦麻省理工的公開課:線性代數(shù)。網(wǎng)易公開課就有翻譯好的。附上鏈接:
http://open.163.com/special/opencourse/daishu.html
(2)離散數(shù)學
這個大部分人(不是專業(yè)的)都沒學過,聽著就頭痛。別急,不用全學,重點是圖論、代數(shù)系統(tǒng)、命題(謂詞和邏輯)、集合與關系。隨便找一本薄一點的教材。這些內(nèi)容其實之前高中本科都有接觸,主要是一些邏輯符號,思維方式需要看懂。否則在一些地方看到一些莫名其妙的符號,不了解,看到一些簡單的公式以為很復雜,得不償失。
(3)運籌學
這個絕對是基礎課,之所以放在后面是因為本人認真學了。推薦的教材《運籌學》教材編寫組編寫。一本大厚綠皮書。對策論等跟博弈論有關的不用看。有條件的可以把算法在跑一遍。絕對收獲良多。

3 工具
這部分本人在網(wǎng)上查了很久,課題組問了幾百遍。最終確認的這幾個。很多人說有編程經(jīng)驗的人,學一個就一兩周的事,無奈,我零基礎。所以,這一部分絕對是個重點。先說本人確定的語言:MATLAB、Python、R。
(1)MATLAB
先說MATLAB,別說這個老,別說這個是學校搞學術才用的。不想挑起爭論,主要理由——好上手。上手以后就可以跑一些算法,提高一些信心和學習的樂趣。教材我隨便找一本厚厚的備查(從來沒翻過)。我主要看的是官方手冊的Primer。然后就開始寫腳本和函數(shù),如果有看不懂的直接百度、google或者help。寫的都很清楚。這一部分主要是迅速上手,我已經(jīng)略有收獲了。
(2)Python和R
這兩個放在一起,是因為網(wǎng)上關于這兩個的爭論太多了。本人也無數(shù)次迷失過。不爭論優(yōu)劣,確實是各有優(yōu)勢。我的順序是首先學python,立志以這個作為自己的主要程序。其次再是R,從畫圖入手。R畫出來的圖真是好看。至于學習的思路:先找一本入門的書,越簡單越好,學完之后找一本手冊,然后練習。
首先python,先看《Head First Python》。挺好的。簡單易懂,網(wǎng)上竟然還能下載到英文的PDF。然后是《利用Python進行數(shù)據(jù)分析》和《機器學習實戰(zhàn)》。第一本書主要是利用Python做數(shù)據(jù)挖掘的,基本提到Python學習都會推薦這本。第二本是理解機器學習的佳作,書中用到的語言就是Python。一邊學語言,一邊理解機器學習。很好的順序。
其次R,因為有了前面的一部分基礎,學起來會容易一些。主要推薦教材是《R語言初學者指南》和《R語言實戰(zhàn)》。這部分的學習我準備跳著看,早期主要利用R來畫圖。然后步步深入著學習。這樣才能充分的練習,而不僅僅是紙上談兵。
(3)Mysql
最后加一個,了解一點Mysql,由于零基礎對數(shù)據(jù)的各種都不了解,強烈推薦一周讀完《深入淺出Mysql》。難度不大,主要是入門。如果以后用得著,再深入研究。
再次重申一遍:這一階段還是要找程序寫。如果有工作或者項目,直接上,學的最快。如果沒有,找篇不錯的,感興趣的博士論文,跑一遍里邊的程序。這部分內(nèi)容不是學出來的,絕對練出來的。
4.算法
算法太多了,常見的就那些。一方面要看明白,理解算法。另一方面用上面的語言跑出來。既能理解算法,也能很好的熟悉語言。

4 文本編輯器
直接上干貨。Emacs org-mode。這部分是等進入高階階段要學的東西。不是因為難,不是因為不好。主要是因為這個不是本人現(xiàn)在的當務之急??磩e人用的,心理癢癢,確實很好。所以,姑且放在這里。

5 總結
整個入門階段,千萬不要抱著學完一個在學一個的思想。同時學!比如,語言入門了,就找算法實踐??吹揭粋€算法,一定要程序跑出來。中間累了,把數(shù)學基礎補一補。看算法的時候,數(shù)學哪里不懂,百度哪里。
總結一句話:反復實踐。半年入門。
(有需要,歡迎交流,需要什么資料,本人有的話可以分享。)

Created: 2016-01-27 Wed 19:34
Emacs 24.5.1 (Org mode 8.2.10)
Validate

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容