简单的机器学习程序_机器学习变得越来越简单,软件工程却走向了相反的道路………

68b6a09416eefac10650b39027df2878.png
图源:unsplash

过去的5年里,机器学习变得越来越容易,机器学习工具也正在变得愈加“平民化”。而与此同时,软件工程却比以往更复杂了。然而,这对于软件工程师来说是件好事,但对于机器学习(ML)专家来说则不然。

原因何在实上,这是机器学习到软件工程,数据科学到数据分析发展的进程。

机器学习工具正愈加“平民化”

谷歌希望每个人都能接触到机器学习模型的训练,不论他们的技术知识如何。随着机器学习大众化,云服务的市场逐渐增长,理解算法的价值则逐渐下降。

很久以前,我们手动编码算法。后来,Sklearn可以在几行代码中完成同样的操作。原始的TensorFlow很难使用,Keras使其变得容易。如今,谷歌、微软和亚马逊都提供服务用以选择、训练和调整云中模型,然后立即在API后提供模型。

可能在不久的将来,人人都可以训练人工智能。但是随着复杂性的降低,对于经验丰富的软件工程师来说,它只是信手拈来的另一个工具而已。

机器学习发展集中于几门语言上

语言的重要性不必多说。你知道COBOL(面向商业的通用语言)吗果知道,便能获得一份终身工作。世界金融体系依赖于此。然而如今没有人再学习COBOL了,大多数机器学习是通过Python来实现,而软件开发则是通过多种语言实现的。

c6453d0bb21270b2c045ade9b229f452.png
快速草图

后端工程师知道浏览器的工作原理,前端工程师也具备一些数据库的概念。两者都能防止如SQL注入这样的安全漏洞。对软件有一个整体理解能使改换专业变得更容易,还能帮助构建端到端解决方案。

广泛的技能组合使软件工程师能更好地适应模棱两可的环境。随着需求的增长,软件工程师经常转行到数据科学领域。但反过来,数据科学家则不太可能去开发软件。随着人们开始将机器学习看作硬编码条件逻辑的替代品,更多软件工程师去涉足机器学习领域。

成为有竞争力的全栈开发者需要数年时间

实际上,优化数据库、构建API微服务以及构建响应式前端这三者之间并没有什么共同点。他们可能是由3种不同的语言实现的,这些领域里几乎没有自动化。

与此相比,全栈机器学习工程师正在实现愈加强大的自动机器学习技术(AutoML),笔者可以为此编写一个SOP(标准操作程序),并将训练分类器的任务交给实习生。软件工程技能组各个部分的自动化淘汰还需时日。

(通常)机器学习是产品的补充而非产品本身

acd01cb04e7d669af0de315d2b0261c1.png
图源:unsplash

软件开发十分复杂,但这种复杂性意味着不可替代的技能,这非常有利于就业。广泛的技能组合赋予了人们端到端解决实际问题的能力。为了构建一个能使普通人自行解决问题的社区,软件工程是一个不错的开端。

机器学习该何去何从呢仍然拥有一席之地,但显然,解决问题比训练模型更为重要。

6d61025f5f91600626ba0e24bb0296b0.png

留言点赞关注

我们一起分享AI学习与发展的干货

编译组:贺宇、苏牧辰

相关链接:https://towardsdatascience.com/machine-learning-is-getting-easier-software-engineering-is-still-hard-d4e8320bc046

如转载,请私信小芯,遵守转载规范

相关资源:干净而彻底的软件卸载利器UninstallToolv3.5.0.5473.rar-桌面系统…

来源:weixin_39667652

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月19日
下一篇 2020年10月19日

相关推荐