Julia 1.0重磅發(fā)布,想必?cái)_亂了不少開發(fā)者的心——我該不該從Python或R轉(zhuǎn)用Julia呢?畢竟后者可是集Pyhton、R和C++優(yōu)勢(shì)在一起的語言啊。不管你怎么想,Julia的開發(fā)者的目標(biāo)是:將Julia打造為機(jī)器學(xué)習(xí)最主流語言。
人氣飆升的Julia,是否值得你擁有?
上周,開源編程語言—Julia的開發(fā)團(tuán)隊(duì)發(fā)布了該項(xiàng)目的1.0版本。這表明,用于優(yōu)化數(shù)據(jù)分析和深度學(xué)習(xí)的編程語言已經(jīng)誕生!
Why Julia?
對(duì)于用慣了像R和Python這樣主流語言的數(shù)據(jù)科學(xué)家來說,新語言的誕生可能會(huì)給他們帶來一些困擾。他們可能花了數(shù)年的時(shí)間去學(xué)習(xí)他們所喜歡的編程語言,并了解該語言很多細(xì)枝末節(jié)的知識(shí)點(diǎn),或自己總結(jié)了使用該語言的一些技巧。在這種情況下,他們很可能已經(jīng)非常適應(yīng)使用像R和Python這樣穩(wěn)定且好用的語言了。那么,現(xiàn)在他們憑什么需要考慮學(xué)習(xí)一門新的語言呢?
Julia的創(chuàng)始人之一,Viral Shah說:“如果你是數(shù)學(xué)家、科學(xué)家或者工程師,那么你過去選擇一門編程語言會(huì)從它的速度角度進(jìn)行考慮,例如C++或Java,亦或從語言的易學(xué)角度進(jìn)行考慮,例如Matlab、R或者是Python。而我們創(chuàng)造了一種兩者兼?zhèn)涞恼Z言,即Julia?!?/p>
Viral Shah表示,Julia開發(fā)靈感是想看有多少人需要對(duì)同樣的代碼進(jìn)行重復(fù)編程。數(shù)據(jù)科學(xué)家首先會(huì)使用Python或R這樣的工具來開發(fā)算法,因?yàn)橛眠@些語言來研究數(shù)據(jù)和制作圖表很容易。然后,當(dāng)他們覺得算法差不多成型了,就會(huì)用C++或Java重寫程序,用來獲取更快的計(jì)算機(jī)處理性能。而Julia比R和Python還要快,因?yàn)樗菍iT用來快速實(shí)現(xiàn)大多數(shù)據(jù)科學(xué)所需要數(shù)學(xué)基礎(chǔ)知識(shí)或概念的,例如矩陣表達(dá)式、線性代數(shù)。
Julia已經(jīng)被廣泛使用(下載次數(shù)超過了200萬次),但用戶社區(qū)顯然不滿足現(xiàn)在的這點(diǎn)成就。他們希望Julia能夠超越Python和R作為數(shù)據(jù)科學(xué)的中心語言(尤其是機(jī)器學(xué)習(xí))。
Julia大部分關(guān)鍵技術(shù)的開發(fā)來自MIT的Julia Lab,該實(shí)驗(yàn)室是由Julia同事兼MIT數(shù)學(xué)教授Alan Edelman來領(lǐng)導(dǎo)的。Julia的另外兩位創(chuàng)作者是Jeff Bezanson和Stefan Karpinski。這些開發(fā)者對(duì)于1.0的開發(fā)貢獻(xiàn)是小部分的,最主要的還是來自超過700名志愿者的努力。
Why not Julia?
那么,為什么說不是每個(gè)數(shù)據(jù)科學(xué)家都需要學(xué)習(xí)Julia呢?理由如下:
首先,如果處理速度對(duì)你來說并不重要,Julia可能不如你正在使用的任何產(chǎn)品(至少現(xiàn)在如此)。有些R用戶所做的統(tǒng)計(jì)工作都是在相對(duì)較小的數(shù)據(jù)集上進(jìn)行的,并且只是涉及到簡單的計(jì)算。在R開發(fā)人員社區(qū),特別是數(shù)據(jù)科學(xué)家Hadley Wickham,開發(fā)出了非常棒的工具,通過完整的文檔,就可以完成簡單的數(shù)據(jù)分析任務(wù)。但如果使用Julia來實(shí)現(xiàn)在R中完成的一些基本任務(wù),可以發(fā)現(xiàn),Julia的工具對(duì)這些任務(wù)并沒有優(yōu)勢(shì)可言。
其次,Julia在調(diào)試和識(shí)別性能問題方面的工具落后于Python和R。Shah說,Julia的基礎(chǔ)開發(fā)已然完成,他希望社區(qū)能夠?qū)⒅匦霓D(zhuǎn)移到這些工具的開發(fā),以便讓新用戶更好、更容易上手。
Julia并不是什么新產(chǎn)品,實(shí)際上從2012年開始就有了。但是隨著1.0版本的到來,其流行程度和關(guān)注度也大幅上升。上周,TIOBE編程語言指數(shù)的分析師指出,Julia首次進(jìn)入前50名。
來自QUARTZ的Dan Kopf表示:“雖然很多人并沒有準(zhǔn)備好去學(xué)習(xí)Julia,但是可以相信的是,Julia目前存在的幾個(gè)短板問題若是能夠得到解決,它的速度優(yōu)勢(shì)會(huì)使其成為數(shù)據(jù)科學(xué)家的主流編程語言?!倍鳵edMonk也表示,“Julia即將接管Python!”
那么問題來了,你是否會(huì)選擇學(xué)習(xí)Julia呢?
-
編程語言
+關(guān)注
關(guān)注
10文章
1947瀏覽量
34845 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5509瀏覽量
121325
原文標(biāo)題:人生苦短,你該用的是Julia
文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論