2022 年,你会选择哪种编程语言呢?
前几年就流传着这样一种说法:Julia会替代 Python,成为新的最受欢迎的编程语言之一。我们暂且对这种说法持观望态度,但作为科学计算方面的强大工具,Julia优势已然显现,这意味着程序员的选择又多了一种。
在数据科学、人工智能等领域,仔细对比Julia和 Python,我们会发现:相同的任务,只要 Python 能实现的的,Julia都可以做,而且效率高得多,语法也简洁优雅,只是在传播度上,名气还不如 Python。
近日,reddit 上的一则热帖引来广大网友的讨论,这个帖子提到,最近,一些Julia语言包的开发人员讨论了Julia中 ML 的当前状态,并将其状态与 Python ML 生态系统进行了比较。
原贴地址:
https://www.reddit.com/r/MachineLearning/comments/s1zj44/r_julia_developers_discuss_the_current_state_of/
来自乌得勒支大学的 JordiBolibar 认为,「Julia确实在机器学习方面拥有巨大的潜力,但它目前的状态有点喜忧参半。更具体地说,我在 SciML 中坚持使用Julia的主要原因是,DifferentialEquations.jl 库工作得非常好,但在 Python 中没有发现任何类似的东西。然而,对于我的研究来说,真正痛苦的是 AD 部分。自从我开始使用Julia,我在 Zygote 中遇到了两个错误,这使我的工作速度减慢了几个月。但我仍然认为Julia是 SciML 的最佳选择,但这些库(及其文档)应该优化的更加用户友好。」
网友 @jgreener64 表示:「Julia中的 ML 在某些领域应用非常强大,Julia一切皆有可能。Julia面临的问题是:Julia中的 ML 需要大量现有知识或大量时间搜索 / 反复试验。在个人层面上,我目前正在用Julia开发新颖的可微分算法。」
除了网友的热烈讨论外,Julia软件包开发人员 Christopher Rackauckas 围绕以下 7 个问题,解答了网友比较关心的内容。Rackauckas 是 MIT 和马里兰大学的数学家和药理学家,主要用Julia进行编程。Rackauckas 为Julia、数学和随机生物学开了专门博客,来介绍相关内容,并且 Rackauckas 在Julia中开发了一些库,包括(但不限于)DifferentialEquations.jl 和 Pumas。
Christopher Rackauckas
问题包括:
今天Julia中的 ML 在哪些地方真正大放异彩?在不久的将来该生态系统在哪些方面优于其他流行的 ML 框架(例如 PyTorch、Flax 等),为什么?
目前Julia的 ML 生态系统在功能或性能方面存在哪些缺点?Julia在这些领域变得具有竞争力的时间节点在哪?
Julia的标准 ML 包(例如深度学习) 在性能方面与流行的替代方案相比如何(更快、更慢、相同数量级)?
有没有重要的Julia实验,可以针对流行的 ML 替代方案进行基准测试?
如果一家公司或机构正在考虑创建职位来为Julia的 ML 生态系统做出贡献,有没有最佳案例?为什么他们应该这样做?哪些贡献最有影响力?
为什么与其他框架合作的独立开发人员应该考虑为Julia的 ML 生态系统做出贡献?
对于某些特定任务,Julia开发人员倾向于使用哪些软件包?Julia开发人员希望添加目前不存在的哪些内容?
下文中我们挑选了几个大家比较关心的问题进行报道:
问题 3:Julia在「标准 ML」中的表现如何?
Julia的内核速度很好:在 CPU 上,我们做得非常好,在 GPU 上,每个人都只是调用相同的 cudnn 等;Julia的 AD 速度也很好。不过 Zygote 可能会有一些开销,但与 Jax/PyTorch/TensorFlow相比,Zygote 在大多数情况下速度是很快的。具体来说,PyTorch 开销要高得多,在标准 ML 工作流程中甚至无法测量。一个足够大的矩阵乘法会解决分配问题或其他 O(n) 问题;Julia不融合内核,因此在大多数基准测试中,如果用户查看它,就会发现它没有融合 conv 或 RNN cudnn 调用。
问题 4:我们应该跟踪哪些重要的实验和基准?
XLA 的分布式调度器非常好。当我们考虑扩展时,我们应该忽略 PyTorch,去考虑 DaggerFlux 与TensorFlow/Jax。XLA 有更多的灵活性来改变操作,所以我认为 XLA 才是赢家,我们需要使用 e-graphs 技巧来匹配它。另一件需要注意的事情就是「自动微分中缺少中间部分」,这种情况还需要解决。
问题 7:有什么推荐的软件包?
我倾向于在需要时使用 Flux,但大家还是尽量使用 DiffEqFlux。就现有内核而言,Flux 是最完整的,但它的风格让我感到厌烦。我希望有一个 Flux 不使用隐式参数,而是使用显式参数。我希望这些参数由 ComponentArrays 表示。
以上是开发人员亲自上场:Julia语言搞机器学习和Python比,哪个好用?的详细内容。更多信息请关注PHP中文网其他相关文章!

Curses首先出场的是 Curses[1]。CurseCurses 是一个能提供基于文本终端窗口功能的动态库,它可以: 使用整个屏幕 创建和管理一个窗口 使用 8 种不同的彩色 为程序提供鼠标支持 使用键盘上的功能键Curses 可以在任何遵循 ANSI/POSIX 标准的 Unix/Linux 系统上运行。Windows 上也可以运行,不过需要额外安装 windows-curses 库:pip install windows-curses 上面图片,就是一哥们用 Curses 写的 俄罗斯

相比大家都听过自动化生产线、自动化办公等词汇,在没有人工干预的情况下,机器可以自己完成各项任务,这大大提升了工作效率。编程世界里有各种各样的自动化脚本,来完成不同的任务。尤其Python非常适合编写自动化脚本,因为它语法简洁易懂,而且有丰富的第三方工具库。这次我们使用Python来实现几个自动化场景,或许可以用到你的工作中。1、自动化阅读网页新闻这个脚本能够实现从网页中抓取文本,然后自动化语音朗读,当你想听新闻的时候,这是个不错的选择。代码分为两大部分,第一通过爬虫抓取网页文本呢,第二通过阅读工

糟透了我承认我不是一个爱整理桌面的人,因为我觉得乱糟糟的桌面,反而容易找到文件。哈哈,可是最近桌面实在是太乱了,自己都看不下去了,几乎占满了整个屏幕。虽然一键整理桌面的软件很多,但是对于其他路径下的文件,我同样需要整理,于是我想到使用Python,完成这个需求。效果展示我一共为将文件分为9个大类,分别是图片、视频、音频、文档、压缩文件、常用格式、程序脚本、可执行程序和字体文件。# 不同文件组成的嵌套字典 file_dict = { '图片': ['jpg','png','gif','webp

长期以来,Python 社区一直在讨论如何使 Python 成为网页浏览器中流行的编程语言。然而网络浏览器实际上只支持一种编程语言:JavaScript。随着网络技术的发展,我们已经把越来越多的程序应用在网络上,如游戏、数据科学可视化以及音频和视频编辑软件。这意味着我们已经把繁重的计算带到了网络上——这并不是JavaScript的设计初衷。所有这些挑战提出了对新编程语言的需求,这种语言可以提供快速、可移植、紧凑和安全的代码执行。因此,主要的浏览器供应商致力于实现这个想法,并在2017年向世界推出

2017 年 Transformer 横空出世,由谷歌在论文《Attention is all you need》中引入。这篇论文抛弃了以往深度学习任务里面使用到的 CNN 和 RNN。这一开创性的研究颠覆了以往序列建模和 RNN 划等号的思路,如今被广泛用于 NLP。大热的 GPT、BERT 等都是基于 Transformer 构建的。Transformer 自推出以来,研究者已经提出了许多变体。但大家对 Transformer 的描述似乎都是以口头形式、图形解释等方式介绍该架构。关于 Tra

首先要说,聚类属于机器学习的无监督学习,而且也分很多种方法,比如大家熟知的有K-means。层次聚类也是聚类中的一种,也很常用。下面我先简单回顾一下K-means的基本原理,然后慢慢引出层次聚类的定义和分层步骤,这样更有助于大家理解。层次聚类和K-means有什么不同?K-means 工作原理可以简要概述为: 决定簇数(k) 从数据中随机选取 k 个点作为质心 将所有点分配到最近的聚类质心 计算新形成的簇的质心 重复步骤 3 和 4这是一个迭代过程,直到新形成的簇的质心不变,或者达到最大迭代次数

大家好,我是J哥。这个没有点数学基础是很难算出来的。但是我们有了计算机就不一样了,依靠计算机极快速的运算速度,我们利用微分的思想,加上一点简单的三角学知识,就可以实现它。好,话不多说,我们来看看它的算法原理,看图:由于待会要用pygame演示,它的坐标系是y轴向下,所以这里我们也用y向下的坐标系。算法总的思想就是根据上图,把时间t分割成足够小的片段(比如1/1000,这个时间片越小越精确),每一个片段分别构造如上三角形,计算出导弹下一个时间片走的方向(即∠a)和走的路程(即vt=|AC|),这时

集成GPT-4的Github Copilot X还在小范围内测中,而集成GPT-4的Cursor已公开发行。Cursor是一个集成GPT-4的IDE,可以用自然语言编写代码,让编写代码和聊天一样简单。 GPT-4和GPT-3.5在处理和编写代码的能力上差别还是很大的。官网的一份测试报告。前两个是GPT-4,一个采用文本输入,一个采用图像输入;第三个是GPT3.5,可以看出GPT-4的代码能力相较于GPT-3.5有较大能力的提升。集成GPT-4的Github Copilot X还在小范围内测中,而


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SublimeText3汉化版
中文版,非常好用

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

SublimeText3 Linux新版
SublimeText3 Linux最新版