机器学习工程师是现代商业的必需品
与 91.6%的财富1000强企业增加了投资 在大数据和人工智能领域,对 机器学习(ML)工程师也在显著增长 而且没有放缓的迹象. 事实上,LinkedIn将机器学习工程师列为 2022年增长第四快的角色 仅在美国,机器学习工程师的就业市场预计将增加 到2026年增长31%.
所以找到一个机器学习工程师有多难呢? 好吧, 如果你的目标只是找到一个可以在简历上合法列出机器学习的人,这并不难. 但如果目标是找到一个真正掌握其细微差别的ML专家, 权力, 战略应用, 那么挑战肯定是艰巨的.
您将需要了解您的业务需求以及如何使用ML来实现理想的解决方案. 然后,您将需要创建一个高效的招聘和评估流程,专门针对寻找不仅仅是合格的机器学习工程师, 而是适合你特定需求的机器学习工程师. 你在这个过程中的第一步, 然而, 是继续阅读并了解更多关于这些关键步骤的信息.
是什么属性将优秀的机器学习工程师与其他工程师区分开来?
有才华的机器学习工程师不仅在理论上知识渊博,而且在技术上精通, 还拥有各种软技能,可以增强他们的ml特定能力.
一个优秀的机器学习工程师应该具备:
-
理论知识
- 基本和集成ML模型
- 回归,分类,聚类,强化学习,优化
- ML指标适用于不同的模型类型
- 不同应用的深度学习(DL)架构
-
技术技能
- 良好的编程技能(Python和/或R、SQL),有其他编程语言经验者优先.)
- MLOps工具和平台(这些将取决于您现有的或期望的基础设施,例如.g., SageMaker, AzureML, H2O.ai、Vertex ai、datarrobot等.)
- 大数据技术和工具:拼花文件、大文件查看/编辑工具
- Visualization: matplotlib, seaborn; good-to-have: sweetviz, plotly
- 数据库(关系数据库和非关系数据库)和数据仓库解决方案
-
软技能
- 理解和理解能力 解决问题 只有极少的业务指导
- 质疑假设的能力
- 调查思维和数据驱动的论证
你如何确定理想的机器学习工程师类型?
现在您知道了如何从一般的角度来识别一个高质量的ML工程师. 但是机器学习问题可以是多种多样的,所以你需要 确定您的具体业务需求 以便找到理想的机器学习工程师来解决这些问题. 首先起草一份 “问题的声明” 确定你想要解决的问题,以及机器学习将如何成为解决方案的一部分.
你的问题陈述至少应该包括以下考虑因素:
-
识别问题
-
您希望改进哪些业务案例?
- 可以找到一些ML考虑的业务案例 在这里,下面有更多的见解.
- 你想找一个长期的还是短期的工作?
- 您是否有明确定义的需求,或者您正在寻找使用ML来帮助整体业务流程的人?
-
定义利益相关者
- 哪些业务领域需要机器学习工程师的专业知识?
- 谁可以参与ml授权流程的设计/重新设计?
-
定义技术
- 您现有的/期望的云/本地平台是什么?
- 在您的业务中使用哪些编程语言?
- 您拥有或计划使用哪些数据库?
-
考虑MLOps
一旦你在问题陈述中解决了这些问题, 您可以使用以下指南来确定1)您的需求是否最适合初级或高级ML工程师,以及2)您应该优先考虑的特定候选人技能集, 根据您的具体业务案例:
经验水平
初级机器学习工程师 –
这些工程师将能够在数据选择/准备领域做出决定, 模型开发, 以及技术实施. 他们还需要从你的数据科学家和DevOps工程师那里获得指导.
高级机器学习工程师 –
凭借他们更广泛的背景和更长的历史在空间, 高质量的高级机器学习工程师可能会在上述日常功能中更加先进. 然而, 他们还将以“大局”的心态超越日常工作,以确定可以使用ML改进的业务领域. 高级工程师应该能够理解您的业务流程,并选择适当的技术工具与您现有的基础设施无缝集成.
按业务案例划分的优先技能
预测 -寻找理解时间序列模型的机器学习工程师. 像Prophet或长短期记忆(LSTM)这样的复杂模型提供了良好的性能,但有时会隐藏底层数据的复杂性. 以确保您的数据得到充分的探索, 寻找了解时间序列基础知识的ML工程师, i.e.、季节性、趋势、自回归特性和平稳性.
客户细分 -寻找具有聚类算法知识的机器学习工程师, 定义集群数量的技术, 以及聚类模型的性能. 对业务指标有很好的理解, 比如客户满意度, 购买历史, 以及客户终身价值, 也很重要.
欺诈检测 -寻找具有异常检测模型经验的机器学习工程师, 用于检测新的欺诈模式的无监督学习, 不平衡的分类和/或聚类, 理解异常值, 以及有效地应用ML度量来保持模型相关性.
身份验证,视频监控,和/或自动视频和图像标签 -寻找一个理解许多系统需要检查视频流的机器学习工程师, e.g., 识别财产上的入侵者, 协助进行远程身份验证, 自动按类型对电影和电视节目进行分类, 或者检测参与者. 这些技能依赖于图像分类/分割技术, 哪些通常基于最先进的深度学习架构, 所以理解它们是必要的. 然而, 对于机器学习工程师来说,理解视频流处理的复杂性也很重要, 数据压缩, 存储大量非结构化数据, 以及在图像上训练的机器学习模型的性能.
声音分类和语音生成 -寻找一个ML工程师,他了解声音通常使用傅里叶变换来处理,以创建可以以与图像相同的方式处理的时间/频率“图像”. 另外, 合适的候选人还将具备身份验证技能描述中提到的图像分类/分割技能和经验, 以上.
文本处理、聊天机器人、搜索引擎和文本生成 -寻找具有文本标记化专业知识的机器学习工程师, 嵌入, 简单模型(如多项朴素贝叶斯和Word2vec), 最先进的模型. 除了建模之外,文本存储和压缩方面的经验也很重要.
如何为你的项目写一个机器学习工程师的职位描述
您已经确定了机器学习工程师所需的经验水平和技能. 现在是时候找到最合适的人选了. 像大多数招聘启事一样, 每个职位都有类似的/标准的角色和职责. 为了在本文中提供帮助,请考虑引用 这个机器学习工程师招聘模板. 然后, 确保在问题陈述中包含明确的要求,以帮助候选人在申请前进行自我选择.
机器学习工程师的面试问题有哪些?
尽管面试官和被面试者通常都试图坚持一个基本的脚本, 大多数好的面试会转向对话领域,因为每个回答往往会引发更多意想不到的问题, 但是相关的后续问题. 也就是说, 有一个你知道你需要回答的问题清单来正确评估你的候选人是很重要的. 考虑使用 这些面试问题 在您的会议期间准备好,以及以下内容:
深度学习和机器学习的区别是什么?
深度学习(DL)和机器学习(ML)的主要区别在于DL是一个具有多个隐藏层的神经网络(NN)架构. 虽然从概念上讲,这与单层神经网络(ML感知器)没有太大区别。, 隐藏层的添加允许对特征和目标变量之间非常复杂的关系进行编码. 这, 反过来, 允许有效地处理大型非结构化数据, 比如图像, 文本, 和音频.
存在什么类型的神经网络?
人工神经网络领域在不断发展,已经提出了许多类型的神经网络, 测试, 并付诸实践. 尽管不同的来源提出了不同的分类法, 在典型的商业应用中,最常见的神经网络类型包括感知器, 前馈神经网络, 卷积神经网络, 和递归神经网络. 感知器对于创建基本模型很有用. 前馈神经网络在各个领域都有应用,其优点是可以使用不同的激活函数. 卷积神经网络广泛应用于图像、视频和声音处理应用. 循环神经网络用于序列处理,尤其是在自然语言处理中. 它们是……的基础 变压器神经网络.
你能说出十大机器学习算法中的几个吗? 你对它们有多熟悉? 请举例说明.
线性回归, 逻辑回归, k - means, 随机森林算法, 支持向量机算法, 决策树, 然而,算法, 朴素贝叶斯算法, 梯度和AdaBoost算法, 降维算法.
为什么公司要雇佣机器学习工程师?
机器学习工程师使用机器学习来改进数据处理和洞察力提取. ML engineers share many responsibilities with 数据科学家; 然而, 除了建立模型, 机器学习工程师在生产环境中开发管道并维护模型. 他们的典型工作流程包括以下步骤:
- 数据采集:可选,可由 数据工程师 or 数据科学家,或者可以从现成的数据集中提取
- 探索性数据分析(EDA)
- 基础模型构建
- 最佳模型选择:模型比较,交叉验证,超参数调整
- ML管道创建:建立评估指标, 预警方法, 以及与商业应用程序和仪表板的集成
- ML管道测试
- ML管道部署:docker、Terraform脚本或类似的
- 性能跟踪和维护:自动再培训, 性能警报, 实验跟踪
- 模型升级:通常当新的数据类型可用或业务目标被修改时
结论
越来越多地, 机器学习正在为我们的许多日常问题提供解决方案, 无论是个人还是职业. 作为商业领袖, 将机器学习集成到我们工作的尽可能多的方面是不够的, 领先于竞争对手是很有必要的.
对机器学习有一个高层次的理解,并熟练掌握其许多当前和潜在的业务应用程序,将为您提供在自己的公司中识别机器学习用例的关键能力,并聘请理想的机器学习工程师来实现正确的解决方案.