自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

擊敗Java、C/C++,Python憑什么成機器學習最佳語言!

新聞 機器學習
是什么讓Python成為當今最流行的機器學習語言!是大數(shù)據(jù)時代背景的契合,還是其特有的生態(tài)系統(tǒng),或是語言本身?

 Python,是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum于1989年發(fā)明,第一個公開發(fā)行版發(fā)行于1991年。

[[228634]]

自從20世紀90年代初Python語言誕生至今,它已被逐漸廣泛應用于系統(tǒng)管理任務的處理和Web編程。2011年1月,它被TIOBE編程語言排行榜評為2010年度語言。自從2004年以后,python的使用率呈線性增長。去年7月20日,IEEE發(fā)布2017年編程語言排行榜:Python高居首位。

擊敗Java、C/C++,Python憑什么成機器學習最佳語言!

是什么讓Python成為當今最流行的機器學習語言!是大數(shù)據(jù)時代背景的契合,還是其特有的生態(tài)系統(tǒng),或是語言本身?

首先當然是因為大家的life都很short,Python作為解釋型語言,雖然跑得比誰都慢,但減少了開發(fā)者的工作量。Python開發(fā)者的哲學是"用一種方法,最好是只有一種方法來做一件事"。在設計Python語言時,如果面臨多種選擇,Python開發(fā)者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。簡單易學的特點催生了龐大的用戶群體和活躍社區(qū),機器學習框架的制作者也是為了走群眾路線讓更多人用,Python比較接地氣。

擊敗Java、C/C++,Python憑什么成機器學習最佳語言!

Python成為機器學習主力的第二個主要原因,是因為Python提供大量機器學習的代碼庫和框架。利用python可以享受很多便捷的數(shù)學運算第三方庫,比如NumPy、SciPy,在可視化方面有MatplotLib和SeaBorn,結構化數(shù)據(jù)操作可以通過Pandas得到R一般的體驗,針對各種垂直領域比如圖像、語音、文本在預處理階段都有很成熟的庫可以調用,人們常說:"就你庫多"。Python標準庫確實很龐大。它可以幫助處理各種工作,包括正則表達式、文檔生成、單元測試、線程、數(shù)據(jù)庫、網(wǎng)頁瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統(tǒng)、GUI、Tk和其他與系統(tǒng)有關的操作。這被稱作Python的"功能齊全"理念。除了標準庫以外,還有許多其他高質量的庫,如wxPython、Twisted和Python圖像庫等等。

[[228636]]

當然,這個代碼系統(tǒng)還有一些不足的地方,因此產(chǎn)生了很多變通方案。例如Anaconda等發(fā)行版有自己的打包機制,可以很好地處理對不屬于Python生態(tài)系統(tǒng)的可執(zhí)行文件的依賴。但是,總的來說,Python打包生態(tài)系統(tǒng)為機器學習提供了一定程度的便利性,這與Python一貫堅持的簡易性和便利性很相符。

擊敗Java、C/C++,Python憑什么成機器學習最佳語言!

最后也就是性能方面。Python性能方面當然是無法滿足大規(guī)模數(shù)據(jù)訓練的,所以一般企業(yè)都是先用Python搭建原型,然后用C++或者JAVA來實現(xiàn)工程化,再用Python封裝留出接口。另外,得益于Python對C的接口,很多像gnumpy, theano這樣高效、Python接口友好的庫可以加速程序的運行,在強大團隊的支撐下,這些庫的效率可能比一個不熟練的程序員用C寫一個月調優(yōu)的效率還要高。

[[228637]]

所以說,讓Python在機器學習領域異軍突起的不僅是某個單一功能,而是Python整個語言包:簡單易學讓它更接地氣,它的生態(tài)系統(tǒng)擁有的第三方代碼庫可以涵蓋廣泛的機器學習用例和性能,可以幫助你很好地完成手頭的工作。

責任編輯:張燕妮 來源: p柯西的博客
相關推薦

2010-01-22 15:14:37

學習C++

2010-01-14 17:02:10

學習C++

2010-01-21 18:00:59

C++語言

2010-01-11 09:40:02

C++語言

2010-01-15 10:32:21

C++語言

2010-01-26 10:01:17

學習C++

2010-01-28 15:38:57

學習C++意義

2010-01-27 16:52:31

C++語言學習

2010-01-28 15:31:34

學習C++語言

2015-03-20 10:00:34

LinuxCC++

2010-01-15 17:38:37

C++語言

2023-12-30 11:01:19

C語言C++編程

2010-01-14 18:19:40

C++語言

2010-01-20 14:03:12

C++程序

2010-01-12 10:11:36

學習C++語言

2010-01-20 15:12:45

C++語言

2010-01-22 10:36:25

C++語言

2011-07-05 16:57:53

C語言

2018-05-30 15:01:45

語言框架Java

2018-08-10 09:00:50

PythonJavaPHP
點贊
收藏

51CTO技術棧公眾號