Monday, September 04, 2017

Python Spark ML(一):參加辦法

Python Spark ML(一):參加辦法

2017/09/04

報名請在 Python Taiwan,下方連結+1即可!
https://www.facebook.com/groups/pythontw/permalink/10156834097973438/

註冊請「仔細」看完本篇文章,再到此連結回應您 GitHub 帳號的首頁「網址」即可。
https://www.facebook.com/groups/pythontw/permalink/10156845173303438/

-----

1. 活動緣起:

本活動經歷一個週末,在 Python Taiwan 報名人數接近 1000,有點出乎我的預期。事實上,決策樹 [1], [2] 這個活動,是因為有位碩士班的同學因為交作業有點問題,找我討論,我想說可以到社團裡幫他找人一起討論,如此而已。

後來我想到之前有本書 [3] 不錯,我一直想找人一起把整本書跑完,順便討論理論。這本書的 13, 17, 18 是 Spark MLlib 決策樹二元分類、多元分類、迴歸分析,20, 21, 22 主題相同,只是工具改成 Spark ML Pipeline。

如果活動順利,最後還可以練習 Logistic Regression、SVM、Naive Bayes、以及 Recommender。

整個完成的話,您可以很自豪地說:「我是個 Spark 的 Machine Learning 工程師,精通理論與實務」了!

-----

2. 進行方式:

進行的方式可以參考之前的 LeNet 實作團 [4]。只是這次,裡論的部分要請同學自行準備。同學可以參考我寫的 LeNet [5] 以及其他文章 [6]。作業如果是理論部分,請統一發表在 GitHub,參考 [7]。

至於為什麼要有此修正,除了個人並無時間完成理論的教學之外,其中還有個重要的原因:「教學」是最好的「學習」方式。參考下方的摘要。 

「聽講,這個留存率大概只有5%。聽完後,再接着看書、看其他的視頻資料、看別人演示,那麼這個留存率充其量只到30%。學完之後跟別人討論,就是50%。再動手去寫代碼的話,那就75%。最後,講給別人聽,是90%,這一步,老實說,挺難的(從讀書,查資料,消化理解,到做ppt(寫教學文章),平均每個章節花費我4-8小時,甚至更多時間)[8]。」

如果您認為:理論也要自己研究、程式也要自己寫,那我做什麼?

我做的是:

1. 成立這個活動,讓有興趣的人找的到人討論。
2. 如果理論的作業有困難,我會拆成更小的作業請同學繳交。
3. 當大家都熟知理論之後,我會把實作的部分拆解成小塊,以方便組合。
4. 如果有很「認真」的同學,我也會花「很多」時間與認真的同學討論、交流。

順便提一下,我並不認識作者,不過這本書很棒,配合理論講解的話更佳。理論部分,我個人主要興趣是 Deep Learning [6],Machine Learning 的部分,就請同學自行完成囉!

如果您認同「Python Spark ML」這個活動,請自行取得本活動的教材 [3]。

-----


Fig. 1. Python+Spark 2.0+Hadoop 機器學習與大數據分析實戰 [3]。

-----

3. 課程大綱:

(一)
Decision Tree Theory
Python Decision Tree Lab

(二)
1 ~ 9

一到九章,主要是 Hadoop、Spark、Python 環境的架設。

(三)
10, 11

第十章,RDD,是 Spark MLlib 的資料格式。

(四)
13, 17, 18

Spark MLlib 決策樹二元分類、決策樹多元分類、決策樹迴歸分析。

(五)
19

第十九章,DataFrame,是 Spark ML Pipeline 的資料格式。 

(六)
20, 21, 22

Spark ML Pipeline 決策樹二元分類、決策樹多元分類、決策樹迴歸分析。

(七)
14, 15, 16

Logistic Regression、SVM、Naive Bayes。

(八)
12

Recommender。

-----

結論:

一分耕耘、一分收穫。

獨學而無友,則孤陋而寡聞。

祝您百尺竿頭、更進一步!

-----

References

[1] 決策樹 - 維基百科,自由的百科全書
https://zh.wikipedia.org/wiki/%E5%86%B3%E7%AD%96%E6%A0%91 

[2] Decision tree - Wikipedia
https://en.wikipedia.org/wiki/Decision_tree 

[3] 書名:Python+Spark 2.0+Hadoop 機器學習與大數據分析實戰,ISBN:9864341537,作者:林大貴,出版社:博碩,出版日期:2016-10-03.
http://pythonsparkhadoop.blogspot.tw/2016/10/pythonspark-20hadoop.html 

[4] LeNet實作團(目錄)
http://hemingwang.blogspot.tw/2017/04/lenet.html

[5] AI從頭學(一二):LeNet
http://hemingwang.blogspot.tw/2017/03/ailenet.html

[6] AI從頭學(目錄)
http://hemingwang.blogspot.tw/2016/12/ai_20.html

[7] Mark Chang's Blog
https://ckmarkoh.github.io/

[8] BAT資深算法工程師「Deep Learning」讀書系列分享(一) _ 分享總結 - 幫趣
http://bangqu.com/BTE7xE.html

No comments: