|
|
51CTO旗下网站
|
|
移动端

Julia vs Python:哪种编程语言会是2019年机器学习界的No 1?

Julia于2018年崭露头角,现成为增长速度最快的编程语言之一,因结合几种主要语言的优势而备受推崇。

作者:布加迪编译来源:51CTO|2018-12-12 09:33

【51CTO.com快译】Julia于2018年崭露头角,现成为增长速度最快的编程语言之一,因结合几种主要语言的优势而备受推崇。

Julia最近迎来了1.0版本,其背后的开发者现在致力于让它成为机器学习领域的首选语言。

帮助实现这个目标的是Flux,这是一种面向Julia的机器学习软件库,旨在使机器学习代码更易于编写、简化训练过程,并且在GPU和谷歌的张量处理单元(TPU)之类的硬件加速器上提供与竞争性框架相比明显的性能优势。

如今,Python和R两大语言通常在机器学习领域占主导地位,就开发人员当中的人气指数而言,Python仍然是增长速度最快的编程语言,这在很大程度上取决于它拥有强大的机器学习框架和库。相比之下,只有比较少的开发人员使用刚刚兴起的Julia。

话虽如此,Julia背后的团队表示,他们开发的这种语言非常适合构建可微分算法,可微分算法是指数据驱动的过程代码,可用于构建机器学习中所使用的神经网络。

Julia团队在一篇博文中写道:“我们需要一种语言来编写可微分算法,而Flux助力Julia成为这种语言。”

“Julia是针对数学和数值计算从头开始设计的,异常适合表达机器学习算法。与此同时,它融合了编译器方面的现代设计和新颖想法,因而更容易满足先进机器学习的高性能要求。”

据博文声称,Flux库使用各种面向机器学习的工具扩展了Julia的编译器,支持在性能与开发人员的控制之间取得更好平衡的一级梯度、面向GPU的即时CUDA内核编译、训练期间减少开销的自动批量处理以及便于在谷歌TPU上运行的优化。

该团队表示,Julia连同Flux以及即将推出的可微分编程语言Myia和最近的Swift for Tensorflow,可能很快就会挑战传统的机器学习框架和方法。

该团队写道:“我们认为,机器学习的未来在于语言和编译器技术,尤其在于扩展新旧语言以满足机器学习研究的高要求。”他们补充道,“支持微分、矢量化和异种硬件的”语言将“推动科学领域的诸多进步。”

Julia团队称:“这些下一代工具(Myia、Swift/TF和Flux)想成为与现有的对应框架(TensorFlow、PyTorch和Knet)一样适用于生产环境还有一段路要走。”

“但如果你在机器学习取得新的突破,它们可能是你最好的选择。试用一下它们,看看机器学习的未来是什么样子。”

今年早些时候Julia迎来版本1.0后,这种语言的用户们大体看好它的进展情况,不过一些人仍对其错误处理和说明文档毫无帮助的现状感到担忧。

据LinkedIn声称,机器学习工程师是近几年发展速度最快的工作类别,现在有越来越多的免费课程可供想要主攻这个领域的开发人员使用。

原文标题:Julia vs Python: Which programming language will rule machine learning in 2019?,作者:Nick Heath

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. 为让Linux代码注释更加和谐 有人提议用“拥抱”替换F**k
  2. 12 月编程语言排行榜:Python 夺回前三,Go 跌出前十
  3. 微软开源用于机器学习模型的高性能推理引擎ONNX
  4. 卖了43.2万美元的AI画作,其实是借鉴程序员代码的“山寨货”?
  5. 你的代码水平停留在几年前?
【责任编辑:张燕妮 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Microsoft SQL Server 2005技术内幕:T-SQL程序设

SQL Server 2005微软官方权威参考手册。 是Inside Microsoft SQL Server 2005系列书中的第一本,SQL Server类的顶尖之作。 全球公认SQL S...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊