2018年6月13日 星期三

[python] 靈蟒Python


一邊閱讀文檔,再輔助以相關的理論基礎,持之數日,則大業可成也。


01 靈蛇出現,必有異像

蛇有靈性,蟒蛇更甚。民間關心打死蛇後出現的種種因果報應現象,相信各位也多有耳聞。身邊聽到的一個是,一個老太打死了一條蛇,第二年她女兒便離婚了。

青城山下的一條蟒蛇修行千年終得人生,由此可見,蛇有強大的靈性,而且還告訴我們一個道理:修得人的身體很難啊!

佛法有雲:生中國難,得人身難,聞佛法難,生信心難。(注:中國,原指印度,中心之國。)

Python既是一條大蟒蛇,自然算是程式設計語言中很有靈性的了。

今既得人身,又聞佛法,且學Python,當然得用來做點什麼吧!

當今,Python最熱的領域,估計非資料分析、資料採擷莫屬了!

02 靈蟒Python,事實標準

只要你沒有太久閉關修練絕世神功,只要你用眼睛餘光瞭解過資料分析相關領域,相信你會有個感覺,怎麼處處都有Python的蹤影啊!

每種電腦程式設計語言,似乎都有自己成名或適用的領域。

在這個大家都在談雲計算、大資料、深度學習的時代,讓我們來看看,這些領域裡面的代表吧。

Docker為代表的雲計算與虛擬化,這是Go的天下。國內使用Go最出名的,當屬七牛了;

Hadoop為代表的大資料框架,這是java的天下。國內這塊最強的,當然首推阿裡了;

Spark為代表的記憶體反覆運算框架,這是Scala的天下;

Scikit-Learn為代表的資料分析領域,從這裡開始,便是Python的天下;

說句不負責任的話,Python已經成為資料分析領域裡事實上的標準語言。

03 Python一出,誰與爭鋒

且來看看,Python在資料分析領域的生態圈吧!

a. 基礎庫

Numpy: 矩陣計算與其它大多數框架的資料處理基礎;

Scipy:科學計算庫,提供了很多科學計算工具包和演算法;

Matplotlab:專業畫圖工具,話說這個單詞還是真是在Matlab之間插入了plot這個詞形成的;

Pandas:提供類似於R語言的DataFrame操作,非常方便;

……

b. 機器學習與深度學習

OpenCV:提供圖像識別的很多方便的操作;

Orange:基於圖形介面的機器學習程式,也可以用Python腳本來操作調用;

Scikit-Learn:前面說了,這是Python在機器學習領域裡面的代表作。尤其是它的文檔,完全可以當成機器學習的參考資料來閱讀了,曾經我向朋友推薦的時候說,說過,把scikit-learn的文檔當成佛經來讀,假以時日,功力定會大增。

Theano:深度學習裡面非常有名的一個框架了,也非常具有代表性。是其它很多框架的基礎。

Keras:基於Theano進行了抽象,建議入門的話使用這個,搭積木一樣地就可以弄個神經網路出來了。

NLTK:自然語言處理,提供的功能也很強大。

國內出品的MxnetPython介面

……

c. 分散式機器學習與深度學習

SparkMLlibPython介面Pyspark

H2oPython介面

收費的Graph CreatePython介面

Google最近剛出的TensorFlowPython介面

三星最近剛出的Veles,目前只提供Python介面

……

也許,新的機器學習或深度學習框架,如果不提供Python介面的話,恐怕會被認為難以推廣吧。

上面列舉的只是其中一部分,還有很多很多。當然,他們很多並非是用Python來實現,但都共同的提供了Python介面,甚至好幾個都把Python當成了頭等公民(First-Class)。

在此並非想說Python這門語言很強大或者複雜,而恰恰相反,得益於Python的簡潔和包容。才讓它在資料採擷領域有如此的地位。

這便是生態圈的力量,不以個人的意志為轉移。

04 書山有路,學海無涯

對於想入門資料分析、資料採擷、機器學習的朋友來說,Python是你值得花時間的選擇。因為,除了上面的工具鏈生態圈,還有書籍和知識傳播的生態圈。

如文章開篇之圖,都是和資料分析相關的書籍,且都是用Python作為示例來講解。

如若有心,且仔細看圖識字!

05 念念不忘,必有迴響

真若有心於資料領域,甚或欲從事資料科學之職業。請對Python有信心,值得你付出時間。想走機器學習之路,Scikit-learn是你最好的選擇,一邊操作實例,一邊閱讀文檔,再輔助以相關的理論基礎,持之數日,則大業可成也。



ref: 

https://www.jianshu.com/p/6e57b4f485fb

 

 


沒有留言:

張貼留言