1、Python是解釋語言,程序?qū)懫饋矸浅7奖?/div>
寫程序方便對做機(jī)器學(xué)習(xí)的人很重要。因?yàn)榻?jīng)常需要對模型進(jìn)行各種各樣的修改,這在編譯語言里很可能是牽一發(fā)而動全身的事情,Python里通常可以用很少的時間實(shí)現(xiàn)。舉例來說,在C等編譯語言里寫一個
矩陣乘法,需要自己分配操作數(shù)(矩陣)的內(nèi)存、分配結(jié)果的內(nèi)存、手動對BLAS接口調(diào)用gemm、最后如果沒用smart pointer還得手動回收內(nèi)存空間。Python幾乎就是import numpy; numpy.dot兩句話的事。
當(dāng)然現(xiàn)在很多面向C/C++庫已經(jīng)支持托管的內(nèi)存管理了,這也讓開發(fā)過程容易了很多,但解釋語言仍然有天生的優(yōu)勢——不需要編譯時間。這對機(jī)器學(xué)習(xí)這種需要大量prototyping和迭代的研究方向是非常有益工作效率的。
2、Python的開發(fā)生態(tài)成熟,有很多庫可以用
Python靈活的語法還使得包括文本操作、list/dict comprehension等非常實(shí)用的功能非常容易高效實(shí)現(xiàn)(編寫和運(yùn)行效率都高),配合lambda等使用更是方便。這也是Python良性生態(tài)背后的一大原因。
相比而言,Lua雖然也是解釋語言,甚至有LuaJIT這種神器加持,但其本身很難做到Python這樣,一是因?yàn)橛蠵ython這個前輩占領(lǐng)著市場份額,另一個也因?yàn)樗旧矸N種反常識的設(shè)計(jì)(比如全局變量)。不過借著Lua-Python bridge和Torch的東風(fēng),Lua似乎也在寄生興起。
3、Python效率超高
解釋語言的發(fā)展已經(jīng)大大超過許多人的想象。很多比如list comprehension的語法糖都是貼近內(nèi)核實(shí)現(xiàn)的。除了JIT之外,還有Cython可以大幅增加運(yùn)行效率。最后,得益于Python對C的接口,很多像gnumpy, theano這樣高效、Python接口友好的庫可以加速程序的運(yùn)行,在強(qiáng)大團(tuán)隊(duì)的支撐下,這些庫的效率可能比一個不熟練的程序員用C寫一個月調(diào)優(yōu)的效率還要高。
未來十年P(guān)ython語言的發(fā)展前景形勢一片大好,毫無疑問使用Python語言的企業(yè)將會越來越多,Python程序猿的人才缺口也將越來越大,認(rèn)準(zhǔn)時機(jī),把握機(jī)遇,Python全棧開發(fā)工程師、Python開發(fā)工程師、自動化開發(fā)工程師、Linux運(yùn)維工程師、Python爬蟲開發(fā)工程師、前端開發(fā)工程師、大數(shù)據(jù)分析和數(shù)據(jù)挖掘等熱門職位等你來選。
如果你也想入門高薪Python人工智能行業(yè),歡迎你來到
qiku學(xué)習(xí)。
Python人工智能免費(fèi)試聽課,試聽時間自選,過完年正式開課!全國45個城市200個校區(qū)就近試聽,也可在線試聽哦!