过去的5年里,机器学习变得越来越容易,机器学习工具也正在变得愈加“平民化”。而与此同时,软件工程却比以往更复杂了。然而,这对于软件工程师来说是件好事,但对于机器学习(ml)专家来说则不然。
原因何在?事实上,这是机器学习到软件工程,数据科学到数据分析发展的进程。
机器学习工具正愈加“平民化”
谷歌希望每个人都能接触到机器学习模型的训练,不论他们的技术知识如何。随着机器学习大众化,云服务的市场逐渐增长,理解算法的价值则逐渐下降。
很久以前,我们手动编码算法。后来,sklearn可以在几行代码中完成同样的操作。原始的tensorflow很难使用,keras使其变得容易。如今,谷歌、微软和亚马逊都提供服务用以选择、训练和调整云中模型,然后立即在api后提供模型。
可能在不久的将来,人人都可以训练人工智能。但是随着复杂性的降低,对于经验丰富的软件工程师来说,它只是信手拈来的另一个工具而已。
机器学习发展集中于几门语言上
语言的重要性不必多说。你知道cobol(面向商业的通用语言)吗?如果知道,便能获得一份终身工作。世界金融体系依赖于此。然而如今没有人再学习cobol了,大多数机器学习是通过python来实现,而软件开发则是通过多种语言实现的。
如果每位机器学习工程师都具备使用python的经验,那么你的竞争对手就是每一位机器学习工程师。但从软件的角度来说,你只会和使用相同技术的部分工程师竞争。
我总是能看到许多高薪的软件工程师(ruby onrails)职位,这令我很惊讶,这个职位早在几年前就过时了,但是由于历史遗留问题,许多大公司,如shopify、instacart、kickstarter等,仍在使用它。
你确实可以并且应该学习多种语言,这对于能否成为一名优秀的软件工程师来说至关重要。
软件工程需要更多技能
我们总是期待软件工程师对每个方面都至少有一些了解。
快速草图
后端工程师知道浏览器的工作原理,前端工程师也具备一些数据库的概念。两者都能防止如sql注入这样的安全漏洞。对软件有一个整体理解能使改换专业变得更容易,还能帮助构建端到端解决方案。
广泛的技能组合使软件工程师能更好地适应模棱两可的环境。随着需求的增长,软件工程师经常转行到数据科学领域。但反过来,数据科学家则不太可能去开发软件。随着人们开始将机器学习看作硬编码条件逻辑的替代品,更多软件工程师去涉足机器学习领域。
成为有竞争力的全栈开发者需要数年时间
实际上,优化数据库、构建api微服务以及构建响应式前端这三者之间并没有什么共同点。他们可能是由3种不同的语言实现的,这些领域里几乎没有自动化。
与此相比,全栈机器学习工程师正在实现愈加强大的自动机器学习技术(automl),笔者可以为此编写一个sop(标准操作程序),并将训练分类器的任务交给实习生。软件工程技能组各个部分的自动化淘汰还需时日。
(通常)机器学习是产品的补充而非产品本身
少数公司将人工智能作为其核心产品,而大多数公司将人工智能作为既有产品的补充。媒体可能会使用机器学习进行文章推荐,但其核心产品是写作或是出版平台。
有趣的是,大多数公司将机器学习用于简单和相似的用例。这使得单个公司很容易将上述用例作为软件及服务(saas)产品。再然后,突然之间初创企业不再需要在内部构建它了。
这与极度复杂且定制化的基础设施问题形成对比,亚马逊网络服务(aws)上没有能在短时间内处理medium基础设施的现成方案。
基础设施正变得异常复杂
亚马逊云服务(aws)已经拓展出200多种不同的云服务。heroku在云中运行应用程序的平台即服务(paas)方法很不错,但很昂贵。现在有一个全新的云服务平台来进行管理(网络、数据库、服务器),在这里,一个小失误可能会引发很大的安全隐患。
有一个名为“云工程”的完整开发子集,其任务是使软件在aws、gcp或者azure上运行。在小公司中,建设基础设施的任务通常落在高级开发人员的肩上。这个任务很复杂,但同时也意味着宝贵的工作机会和难以复制的技能。
前端开发正在持续发展
当笔者开始做开发时,还可以用jquery构建响应式前端。但不久后公司转向了angular或者react,angular升级为angular2(突发的改变),react将类组件转换为功能组件,并加入了hook。以上这些框架/函数库的工作方式完全不同。
一些公司致力于基于模型自动生成前端。但笔者的同事们一致认为,我们距离高质量产品还有很长一段路要走。
软件开发十分复杂,但这种复杂性意味着不可替代的技能,这非常有利于就业。广泛的技能组合赋予了人们端到端解决实际问题的能力。为了构建一个能使普通人自行解决问题的社区,软件工程是一个不错的开端。
机器学习该何去何从呢?它仍然拥有一席之地,但显然,解决问题比训练模型更为重要
耦合电容和分布电容的选用
基于软件无线电架构的广播监测接收机音质优化设计
导热塑料能延长LED发光二极管的使用寿命
热电偶各种材料的比较
高低电平触发的上升沿触发和下降沿触发区别
机器语言变得越来越简单
Omniverse 资讯速递 | 行业动态、近期发布在线听、最新更新、中文课程系列等你来解锁!
AMD官方:锐龙5000抗热可以达到95°C 没问题!
AppleWatchNike+评测 这款腕表究竟表现如何
支持通话、大屏的4G-Cat.1新品——合宙Air780EP Air780EPV来了
解读2018华为物联网新战略
智能锁按键出现无反应或禁止操作的原因坤坤智能锁告诉你
2.9秒破百的比亚迪“汉”驾到 定位总裁座驾奔驰宝马们紧张了
西通开拓工业设备市场 计划年产500台3D打印机
红米K30系列宣布首发索尼6400万超清相机IMX686
PWR Alarm-100 5G智能断电监测器产品简介
IFWS2018:功率器件封装与应用分会深圳召开
5G时代媒体与新闻业的未来
基于RT-Thread+RA6M4的智能安防系统详解
2022年聚焦5G、汽车、卫星测试等领域