几乎每个人都同意,数据科学家和人工智能开发人员是科技行业的新超级明星。但是,要求一组首席信息官为数据科学相关的职位定义确切的专业领域,不和谐就成为了日常词汇。
随着企业通过招聘包括数据分析师、数据工程师、数据科学家、机器学习工程师和深度学习工程师在内的团队来寻求可操作的见解,成功的关键是了解每个角色能为企业做什么和不能做什么。
理想与现实世界
在一个完美的世界里,每个公司员工和高管都在一套明确定义的职责和责任下工作。
数据科学不是那个世界。公司通常会根据项目需求构建其数据科学组织:保持良好的数据卫生的主要问题是吗?或者是否需要在关系模型中处理数据?也许团队需要有人成为深度学习方面的专家,并且了解基础设施和数据?
根据公司的规模和预算,任何一个职位都可能被期望拥有这些解决问题的技能中的一项或多项。当然,角色和职责会随着时间的推移而改变,就像随着大数据时代演变到人工智能时代一样。
也就是说,对于首席信息官(以及她或他现在管理的数据科学团队)来说,尽可能多地消除一些最常见角色(数据分析师、数据工程师、数据科学家、机器学习工程师和深度学习工程师)的角色和职责的模糊性是件好事。
最了解每个项目如何适应公司目标的团队最有能力取得成功。无论角色如何,随着数据从分析转移到高级 AI ,加速计算基础设施也是推动整个管道成功的关键。
数据分析师
认识到数据分析师的工作很重要,因为早在现代数据科学和人工智能管道出现之前,这些专家就一直在帮助公司从数据中提取信息。
数据分析师使用标准商业智能工具,如 Microsoft Power BI、Tableau、Qlik、Yellowfin、Spark、SQL 和其他数据分析应用程序。大规模的数据分析可能涉及许多不同数据源的集成,这增加了数据工程师和数据科学家工作的复杂性——这是这些不同专家的工作如何趋于重叠和互补的另一个例子。
数据分析师在业务中仍然发挥着重要作用,因为他们的工作有助于企业评估其成功。数据工程师还可以为需要评估来自不同来源的数据的数据分析师提供支持。
数据科学家更进一步,以便公司可以开始利用推荐系统、对话式人工智能和计算机视觉等新机会,仅举几例。
数据工程师
数据工程师能够理解杂乱的数据,而且通常有很多数据。担任这个角色的人往往是初级队友,他们使数据美观整洁(尽可能)供数据科学家使用。这个角色涉及大量的数据准备和数据卫生工作,包括大量的 ETL(提取、转换、加载)来摄取和清理数据。
数据工程师必须擅长数据拼图游戏。格式会改变,标准会改变,甚至团队在网页上使用的字段也会经常变化。数据集可能存在传输错误,例如,当一个字段的数据被错误地输入到另一个字段时。
当需要将数据集连接在一起时,数据工程师需要修复标签不一致时出现的数据卫生问题。例如,如果源数据中包含星期几,则数据工程师需要确保使用相同的格式来指示日期,因为星期一也可以写成星期一,或者甚至可以用一个数字表示,该数字可以是 1 或 0,具体取决于一周中的日子的计算方式。
期望您的数据工程师能够自由地使用 Python 等脚本语言以及 SQL 和 Spark。他们需要编程语言技能来发现问题并解决问题。鉴于他们将处理原始数据,他们的工作对于确保您的管道稳健非常重要。
如果企业从其数据湖中提取数据进行 AI 训练,那么这种基于规则的工作可以由数据工程师完成。更广泛的特征工程是数据科学家的工作。根据他们的经验和项目,一些数据工程师可能会为数据科学家提供初始数据可视化图形和图表。
根据贵公司对数据管理的严格程度,或者您处理来自各种合作伙伴的数据,您可能需要团队中有许多数据工程师。在许多公司中,数据工程师的工作通常最终由数据科学家完成,数据科学家在将其投入工作之前准备自己的数据。
数据科学家
数据科学家对数据进行实验,以找到隐藏在其中的秘密。这是一个广泛的专业领域,可以包括数据分析和数据处理的工作,但数据科学家的核心工作是通过使用统计机器学习或深度学习将预测技术应用于数据来完成的。
多年来,IT行业一直在谈论大数据和数据湖。数据科学家是最终将这些原始数据海洋转化为信息的人。这些专家使用各种工具进行分析、实验、构建和测试模型以找到模式。为了在工作中表现出色,数据科学家还需要了解他们所支持的业务需求。
这些专家使用许多应用程序,包括 NumPy、SciKit-Learn、RAPIDS、CUDA、SciPy、Matplotlib、Pandas、Plotly、NetworkX、XGBoost、特定领域的库等等。他们需要具备统计机器学习、随机森林、梯度提升、包、特征工程、训练、模型评估和细化、数据归一化和交叉验证方面的领域专业知识。这些技能的深度和广度使得显而易见,为什么这些专家在当今的数据驱动型公司中受到如此高的重视。
数据科学家经常解开谜团以获得更深层次的真相。他们的工作包括为复杂现象找到最简单的解释,并构建足够简单的模型,这些模型既足够灵活,又足够忠实,可以提供有用的见解。他们还必须避免模型训练的一些危险,包括过度拟合他们的数据集(即,生成的模型不能有效地从示例数据中泛化)和意外地将隐藏的偏见编码到他们的模型中。
机器学习工程师
机器学习工程师是万事通。这位专家构建了机器学习和深度学习的整个过程。他们采用由数据科学家和深度学习工程师开发的 AI 模型,并将其投入生产。
这些独角兽是业内最受追捧和高薪的公司之一——公司努力工作以确保他们不会被挖走。让他们满意的一种方法是提供正确的加速计算资源,以帮助他们更好地完成工作。机器学习工程师必须了解端到端管道,他们希望确保管道得到优化,以快速提供出色的结果。
这并不总是那么容易直观,因为机器学习工程师必须了解应用程序,了解下游数据架构,并重点关注随着项目规模扩大可能出现的系统问题。担任此角色的人必须了解 AI 管道中使用的所有应用程序,并且通常需要熟练掌握基础设施优化、云计算、容器、数据库等方面的技能。
为了保持最新状态,需要重新评估 AI 模型,以避免所谓的模型漂移,因为新数据会影响预测的准确性。出于这个原因,机器学习工程师需要与他们的数据科学和深度学习同事密切合作,他们需要重新评估模型以保持其准确性。
深度学习工程师
对于机器学习工程师来说,一个关键的专业是深度学习工程师。此人是一名数据科学家,是深度学习技术方面的专家。在深度学习中,人工智能模型能够通过模仿人类思维和学习方式的神经网络来学习和改进自己的结果。
这些计算机科学家专门研究高级 AI 工作负载。他们的工作既是科学,又是艺术,旨在开发深度学习模型黑匣子中发生的事情。他们做的特性工程少得多,而数学和实验要多得多。在这个领域,推动可解释人工智能(XAI)模型的可解释性和可解释性尤其具有挑战性。
深度学习工程师需要处理大型数据集来训练他们的模型,然后才能将它们用于推理,在那里他们应用所学到的知识来评估新信息。他们使用 PyTorch、TensorFlow 和 MXNet 等库,并且需要能够构建神经网络,并在统计、微积分和线性代数方面具有很强的技能。
如何将技能与策略相匹配
鉴于这些关键角色的所有广泛专业知识,很明显,企业需要一种策略来帮助他们提高团队在数据科学和人工智能方面的成功。许多新的应用程序需要得到支持,并配备适当的资源来帮助尽快完成这项工作,从而解决业务挑战。
那些刚接触数据科学和人工智能的人通常会选择从云中的加速计算开始,然后转向混合解决方案,以平衡对速度的需求和运营成本。内部团队往往看起来像一个倒金字塔,更多的分析师和数据工程师将数据汇集到数据科学家的可操作任务中,直至机器学习和深度学习工程师。
您的 IT 范式将取决于您的行业及其治理,但一个很好的经验法则是确保您的供应商和团队的技能保持一致。通过更好地了解现代数据团队的角色以及他们取得成功所需的资源,您将在构建可以将数据转化为业务价值的组织方面走得更顺利。