當前位置:
首頁 > 新聞 > Julia 對決Python:誰能在2019年稱霸機器學習編程?

Julia 對決Python:誰能在2019年稱霸機器學習編程?

新智元報道

來源:techrepublic

作者:Nick Heath 編輯:木青

【新智元導讀】在發布1.0版本後,Julia團隊現在希望讓它成為機器學習領域的首選語言。同時,Python和R語言通常在機器學習中佔主導地位,在開發人員普及方面,Python仍然是增長最快的編程語言。

Julia成為2018年發展最快的編程語言之一,因為它結合了幾種主要語言的優勢而備受推崇。

同時,Python依然在使用範圍方面佔據著巨大優勢,並且熱度一直保持著上升趨勢。

那麼,哪種編程語言將在2019年統治機器學習?來看下分析吧。

Julia風頭正勁,適合製作可微分演算法

首先來看看風頭正勁的Julia。

Julia於2012年發布,由麻省理工學院(MIT)的計算機科學和人工智慧實驗室(CSAIL)開發和孵化,是一種免費的開源語言。

目前,Julia已經推出1.0版本,Julia現在有希望成為機器學習(ML)領域的首選語言。麻省理工學院教授Alan Edelman說:「Julia 1.0的發布標誌著Julia現在已經準備好通過將Python和R語言的高效率和易用性與C ++的閃電般速度相結合來改變技術世界。」

能幫助Julia實現這一目標的是Flux,這是一款面向Julia的機器學習軟體庫,旨在使ML代碼更易於編寫,同時簡化訓練流程,並且與競爭框架相比,能提供在GPU和Google TPU等硬體加速器上的某些性能優勢。

Julia背後的團隊表示,他們的語言非常適合製作可微分演算法——這是一種程序性的、數據驅動的代碼,可用於構建機器學習中使用的神經網路。

Julia團隊在博客文章中寫道:

我們需要一種語言來編寫可區分的演算法,而Flux將幫助Julia成為滿足這類需求的語言。

Julia非常適合用於數學和數值計算,並且非常適合表達ML演算法。同時,它融合了現代設計和編譯器中的新思想,可以更容易滿足前沿的高性能需求。

根據Julia團隊的博客文章,Flux庫使用各種專註ML工具擴展了Julia的編譯器,從而支持一流梯度,在性能和開發人員控制之間取得更好的平衡;為GPU及時進行CUDA內核編譯,在訓練期間進行自動批量處理,以減少開銷;在Google TPU上進行優化運行。

該團隊表示,Flux支撐下的Julia,以及即將推出的可分辨編程語言Myia和最近的Swift for Tensorflow,可能很快就會挑戰既定的機器學習框架和方法。

在Julia今年早些時候發布1.0版後,該語言的用戶對於它的進展情況總體上是持樂觀態度的,儘管有些人仍然擔心它會發生錯誤的處理狀態,或者產生無用文檔。

好上手的Python仍是王者,使用範圍上佔據絕對優勢

但Julia任重而道遠。

如今,Python和R語言通常在機器學習中佔主導地位,在開發人員普及方面,Python仍然是增長最快的編程語言,這在很大程度上取決於其機器學習框架和庫的優勢。相比之下,只有相對較小比例的開發人員使用剛剛起步的Julia。

Python在使用範圍方面的確佔據著絕對優勢。

當前的機器學習熱潮推動了學習Python的開發人員數量急劇增加。除了在大數據分析中使用該語言外,Python的多功能性在其使用範圍內的優勢也很明顯,從Web和桌面應用程序到編排系統操作。

軟體質量評估公司TIOBE的數據顯示,2018年12月,Python超越C++成為TIOBE索引排行的第三名,這對於Guido van Rossum的腳本語言來說是歷史最高水平。

TIOBE網站12月編輯語言索引數據

TIOBE還強調了Python在教學中日益增長的用途:2014年,Python成為70%美國大學的入門編程課程。

Python的確有很多優勢:Python代碼相對易於閱讀和理解,支持多種編程範例,具有可以放入代碼的各類軟體庫,並且能擴展到大型應用程序。網上還有很多高質量的免費教程、課程和視頻,這很有利於傳播。

Python一直被認為是最容易學習的編程語言之一,並且以其高可靠性和簡單的語法而聞名,特別是新編碼器。

「我認為,Python是最接近"即時滿足語言"的語言,意思是代碼非常少,即使你是一名新手程序員也能學會,」IEEE研究員兼研究生工程院院長Karen Panetta說「這是因為Python讀起來像英語,這使得它更有利於廣大用戶受眾學習。」

新語言層出不窮,支撐機器學習發展

Julia團隊表示編程語言的發展絕對不會止步於此,並且語言的發展會對機器學習起著重要的作用。

我們相信機器學習的未來取決於語言和編譯器技術,特別是在擴展新的或現有的語言以滿足機器學習研究的高要求時。

支持差異化、矢量化、不同硬體和文化差異的語言將推動科學的大幅進步。

Julia團隊說:「比起那些新一代的工具 Myia、Swift/TF和Flux,TensorFlow、PyTorch和KNET是為現有框架所準備的。」

不過,將來那些新一代的工具很有可能派上用場。「如果你在ML中取得新的突破,他們可能是你最好的選擇。給他們一個機會,看看機器學習的未來是什麼樣的。」

據LinkedIn稱,機器學習工程師是從2017年起的五年內發展最快的工作類別,並且有越來越多的免費課程可供想要專攻該領域的開發人員使用。

身為開發者的你,更看好哪種語言呢?

參考鏈接:

https://www.techrepublic.com/article/julia-vs-python-which-programming-language-will-rule-machine-learning-in-2019/

https://www.tiobe.com/tiobe-index/

【加入社群】

新智元 AI 技術 + 產業社群招募中,歡迎對 AI 技術 + 產業落地感興趣的同學,加小助手微信號:aiera2015_2入群;通過審核後我們將邀請進群,加入社群後務必修改群備註(姓名 - 公司 - 職位;專業群審核較嚴,敬請諒解)。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 新智元 的精彩文章:

扎克伯格又曝醜聞:打壓對手、不當競爭,Facebook帝國再度崩塌
清華聯手港大,最早2020年推出計算機科學雙學士學位

TAG:新智元 |