整理 | 郭露
出品 | CSDN(ID:CSDNnews)

对于软件工程师而言,机器学习(ML)的前提在于需要数据要足够真实。但事实上即使数据来源真实,软件工程师仍会面临许多问题,例如机器学习的门槛高、软件操作的难度大、系统维护困难等等,下面详细介绍了工程师在开发过程中所面临的问题。

(图源自ICphoto)

机器学习也需要学习?

机器学习作为人工智能的一大分支,指的是机器通过分析大量数据进行学习。目前机器学期依旧处于研究阶段,并且人们可能需要花大量的时间了解如何通过机器学习完成最基本的事情。

例如在图像分类中,必须:

  • 了解张量、损失函数、迁移学习、逻辑回归、网络微调、超参数搜索、过拟合、主动学习、正则化和量化等概念;
  • 熟悉一个及以上ML库,例如PyTorch、Tensorflow、FastAI或是scikit-learn等等。学习ML库比学习编程库要难得多,因为ML的概念与程序员的认知非常不同;
  • 了解最先进的SOTA深度神经网络模型; 确保深度网络在适当的数据语料库中进行了预训练。

学习软件是必备项?

对于软件工程师来说,只有通过数据探索和管理的软件才能可视化数据、对数据进行详细的分析、查找数据样本并调试数据等。除此之外,软件工程师还需要使用软件才能跟踪实现并生成模型,而主动学习和发现标记错误等过程需要与ML模型进行交互。因此即使了解了机器学习也依旧需要掌握各种不同的软件才能处理数据,这无疑增加了使用机器学习的成本。

基础架构和MLOps可以做什么?

除了ML的概念和软件的使用,软件工程师依旧需要学习云基础架构相关知识,以便:

  • 评估并选择各种硬件,以权衡训练和推断的成本性能;
  • 建立一个快速、有弹性且节约成本的培训通道。为了在主动学习期间进行培训和再培训时提供交互式和响应式体验,加快或减慢基础设施的速度非常重要;
  • 在设置数据相关的低延迟、弹性、可用以及高效的推断。 监控云系统和软件的性能、可用​​性和利用率。

系统维护非常重要?

软件工程师需要负责系统维护,并且对系统进行调整,维护由多个部分拼接在一起的大型系统。维护不仅适用于软件和基础架构,还适用于需要迭代最新技术的ML。

机器学习、软件、基础架构和系统维护四个部分成为了开发ML功能的巨大障碍。而软件的意义在于是降低障碍,开发人员则需要解决以前甚至没有考虑过的问题。只有克服这些障碍才能更好地通过ML进行软件开发。

【参考资料】
https://www.nyckel.com/blog/ml-too-hard-for-software-developers/

软件工程师:机器学习也需要学习?相关推荐

  1. GitHub贡献全球第5,超15,000名软件工程师,后深度学习时代英特尔如何「软硬兼施」

    作为全球最大的半导体公司(2019年Q1数据),英特尔一直以「硬实力」示人,然而就是这样一家公司却有超过15000名软件工程师,在GitHub的2018贡献排行榜上全球第五. 深度学习时代,英伟达凭借 ...

  2. java软件工程师成长过程的学习

    第一阶段:Java基础,包括java语法,面向对象特征,常见API,集合框架: *第二阶段:java界面编程,包括AWT,事件机制,SWING,这个部分也可以跳过,用的时候再看都能来及: *第三阶段: ...

  3. 算法工程师-机器学习-数据科学家面试准备[外企和国外公司、春招、秋招]

    该仓库记录了如何准备机器学习工程师面试,尤其海外与外企岗位 代码地址: https://github.com/LongxingTan/mle-interview 申请岗位:软件工程师-机器学习方向.机 ...

  4. 软件工程师如何转型人工智能?

    2017年9月,Insight AI上发表博文提出,一名软件工程师要转行人工智能行业所必须具备的技能.下面是译文参考,可供各位参考.花5分钟耐心读完,文末另有福利. 将机器学习作为一项技能 作为软件工 ...

  5. “因为这 4 个回答,我决定录用这位软件工程师!”

    作者 | James Williams       译者 | 苏本如 出品 | CSDN(ID:CSDNnews) 以下为译文: 本文中的4个面试问题的示例答案将帮助软件工程师顺利通过技术面试. 软件 ...

  6. 我们需要什么样的软件工程师(上)[转载]

    近期,IT行业中最令人关注的职位当属"软件工程师"了,其需求量在IT人才市场中总是名列第一,成为IT人求职的热点.软件工程师的未来是什么?有哪些出路?你是否已做好物质上及心理上的准 ...

  7. 【CSDN软件工程师能力认证学习精选】如何入门Python与机器学习

    CSDN软件工程师能力认证(以下简称C系列认证)是由中国软件开发者网CSDN制定并推出的一个能力认证标准.C系列认证历经近一年的实际线下调研.考察.迭代.测试,并梳理出软件工程师开发过程中所需的各项技 ...

  8. 【CSDN软件工程师能力认证学习精选】机器学习之决策树(Decision Tree)及其Python代码实现

    CSDN软件工程师能力认证(以下简称C系列认证)是由中国软件开发者网CSDN制定并推出的一个能力认证标准.C系列认证历经近一年的实际线下调研.考察.迭代.测试,并梳理出软件工程师开发过程中所需的各项技 ...

  9. 成都软件工程师python_为什么每个软件工程师都应该学习Python?

    为什么要写一篇文章告诉大家去学习python?最受欢迎的编程语言不是JAVA么? 的确,TIOBE指数显示JAVA依然是最受欢迎的编程语言,但是Python的崛起不可小觑,请看4月份最新的TIOBE指 ...

  10. 机器学习霸占高薪榜、区块链偃旗息鼓?2020 年软件工程师状况解读!

    整理 | 弯月 责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 在当前全球数字化转型的大潮中,每家公司都在向着高科技迈进.无论是银行.航空公司.连锁超市还是汽车制造商(如特斯拉),投资顶 ...

最新文章

  1. 顺序队列相关操作(C语言实现)
  2. Laravel自定义验证规则的实例与框架使用正则实例
  3. 前端学习(1181):vue语法模板
  4. 华为政企云副总裁 年薪_看好“新基建”华为云战略投入政企市场
  5. 阿里云云盾 · 云防火墙技术解读:零配置业务自动分组,安全管理有序、可见...
  6. java调用支付宝接口代码介绍
  7. 升级:myeclipse 2015 ci 16发布
  8. 求边长为一的正方体中,面对角线组成的正四面体体积.
  9. MAC 使用brew安装java11并与java8共存
  10. Libero SoC v2021.1安装与环境配置
  11. 商务个人邮箱、VIP邮箱哪个最好用?外贸安全邮箱又怎么选?
  12. android 获取粗略位置_从Android上的GPS提供商处获取*粗略*位置
  13. 计算机学渣和你说说从毕业到工作
  14. 如何修改SnipeIT的部分设置
  15. python 正态分布概率_计算正态分布中的概率,给定平均值,std在Python中
  16. 上帝或许不掷骰子,但可能会踢足球|图片中的数学之美
  17. 实验三 XSS和SQL注入
  18. CUDA Programming Model--CUDA编程模型
  19. 保险保费基本计算规则
  20. webERP的深入浅出系列——1 基础数据准备初始化

热门文章

  1. 合天网安实验室sql注入实验一 WRITE UP
  2. 东大22春实用写作X《实用写作》在线平时作业1百分非答案
  3. NVIDIA助力风暴英雄黄金世俱杯Ballistix强势夺冠
  4. 写个鸭子类方法java_小黄鸭系列java基础知识 | Java基本语法
  5. 支付宝小程序会员卡开通
  6. 计算机无法访问网络位置,不能访问网络位置,详细教您怎么解决
  7. android win8 磁贴效果第三方库,Win8巧用动态磁贴让浏览更轻松
  8. 单链表插入时间复杂度分析
  9. 【git】git的删除命令与如何删除仓库文件的方法
  10. 通过ip查找域名的网站