策划| Liam Tung, Maxwell Cooter
编辑|Emily
AI前线出品| ID:ai-front
机器学习已经成为发展最为迅速的领域之一,开发者面临着选择哪种编程语言的问题。在数百种编程语言中,Python 受到越来越多开发人员和程序人员的欢迎,这是不是意味着 Java 语言在机器学习上已到暮年?
Python 成最热门编程语言
据 Stack Overflow 数据显示,Python 成为 2017 年增长最快的编程语言。这个数据是根据用户对带有编程语言标签的页面访问量得出,一个月之内,带有 Python 的页面访问量达 4000 万次,估计其中 1680 万人是开发者和大学生。
2017 年 6 月,带有 Python 标签的页面访问量首次超过 Java 和 JavaScript,其中高收入国家用户占比达到史上最高,例如美国、英国和德国。
Python 成为美国和英国用户访问量最多的标签,而这一热门编程语言在其他高收入国家最受欢迎的编程语言排名也在 Top1-Top2,包括加拿大、西欧国澳大利亚和新西兰。
据了解,编程语言的流行程度受教育和财富等因素的影响,由于 Java 在本科课程中广泛传授,所以带有其标签的网页流量在秋季和春季上升,在夏季下降。
在欠发达国家,Python 是第八大编程语言,高收入国家比贫穷国家对 R 更感兴趣。这可能是由于 Python 和 R 在科学和学术研究中的作用,而学术和科研在发达国家经济中的占比一般大于欠发达国家。
然而,由于 Python 具有多功能性,可用于系统操作、Web 开发、科学建模等原因,即使在并不富裕的国家,Python 也是增长最快的主要语言,增长速度甚至快于富裕国家。
据预测,明年 Python 还将继续增长,而 JavaScript 和 Java 的增长将保持不变。
JavaScript 真的被 Python 代替了吗?
然而事实上,Javascript 不会是算法的终结,Python 也一样。对于开发人员来说,可供他们选择的编程语言其实很多。
如果你相信大数据,Python 将会是很多人的默认选择。
据 Developer Economics 今年早些时候对 2022 人展开的的调查结果显示,50% 的数据科学家和开发人员使用的编程语言是 Python。
那 Javascript 的境况如何呢?和 Python 一样,在 web 编程和浏览器构建爆发的年头,Java 已经在 web 开发前沿享受了 20 多年的黄金时代。作为 web 编程的核心,世界上最大的开发平台,JS 通常用于各种手机 App 和加密货币的编程语言,因为其可移植性和实用性深受开发人员的欢迎。
那么,JavaScript 真的被 Python 代替了吗?简单来说,确实是这样。Developer Economics 报告说明 JavaScript 已经落后太多了,仅是 Python、 C/C++、Java、R 之后开发人员使用的第五大编程语言。但是,JavaScript 的处境并没有这么糟糕,这种编程语言的生存空间还是很大的。该调查报告显示,信息科学和机器学习的新学者还是觉得 Java 比其他编程语言都有优势,例如统计编程中 Java 比 R 更好使。
Expero 公司的高级软件顾问 Steve Purves 认为,JavaScript 在编程语言的世界中还未死亡。“机器学习开发者必须考虑得更加长远。你需要思考编程语言如何应用到实际,这就是 Python 以外的其他语言真正起作用的地方。”Purves 说道。
在线超市 Ocado 开发了一个非常简单的模型,来标记和优先处理电子邮件。这个模型使用的语言是 Python,但 Python 只是项目中的一小部分。
“在这个案例中,当移动设备连接到云端的一个小型服务器上时,用户可以在设备上处理工作,如果对某些数据感兴趣,用户可以将其发送到下一个级别。但问题来了,在高分辨率图像上,人脸识别非常困难 。这时,要么缩小图像的大小,要么使用简单的算法代替,精确度可以达到 60%。也许你可以计算出发送到下一个级别的帧 ,精准率可达 96%。但是,问题在于被发送到其他设备上进行计算中之前,设备上使用的语言是 JavaScript。“
所以,尽管机器学习中的大部分工作都是用 Python 完成,但是 JavaScript 在机器学习中也有一席之地。
然而,在学术界,以及下一代数据科学教育方式方面,JavaScript 在食物链中的作用就下降了。伦敦经济学院(London School of Economics)定量社会研究方法学教授 Ken Benoit 表示,我们确实需要在 Python 和 R 之间进行选择。
他说道,由于 JavaScrip 具有可视化能力,JavaScript 确实发挥着一些作用。 “目前有很多 JavaScript 类库,包括机器学习。Java 被广泛使用,主要是因为其可用性,以及它在浏览器中的呈现方式。例如,最好的图形工具之一 D3,就是一个 JavaScript 库,它在数据可视化方面发挥着重要作用。但是如果你想要开发自动驾驶汽车的神经网络,那么 JavaScript 就没有任何作用了。“Benoit 说道。
Developer Economics 还指出,任何希望进入机器学习领域的开发者都应当关注当下的形势。“但机器学习没有所谓的最佳语言,关键在于想要建立的目标是什么。“
正如 JavaScript 一样,Python 也不可能永远是最先进的编程语言,其他的语言,例如 Julia、Lua 和 Torch 已经开始前浪推后浪,Python 的影响力将受到影响。
据 Benoit 预测,R 将来会变得更加重要,但具有数学和统计学背景的开发者在这个问题上却发生了分歧,前者更喜欢 R,而计算机科学家倾向于选择 Python。
Purves 说道,”JavaScript 仍将继续发挥作用,未来也并不只属于 Python。而评选出哪种语言最优是没有意义的,最终的目的是选择对工作最为有利的“正确”的语言,用不同的工具来完成不同的事情。“
https://www.theregister.co.uk/2017/11/22/javascript_vs_python_machine_learning/
-全文完-
人工智能已不再停留在大家的想象之中,各路大牛也都纷纷抓住这波风口,投入AI创业大潮。那么,2017年,到底都有哪些AI落地案例呢?机器学习、深度学习、NLP、图像识别等技术又该如何用来解决业务问题?
2018年1月11-14日,AICon全球人工智能技术大会上,一些大牛将首次分享AI在金融、电商、教育、外卖、搜索推荐、人脸识别、自动驾驶、语音交互等领域的最新落地案例,应该能学到不少东西。目前大会8折报名倒计时,更多精彩可点击阅读原文详细了解。
网友评论