开发人员需要了解SDLC中的机器学习

机器学习

为了了解软件开发中机器学习(ML)的当前和未来状态,我们收集了来自16个解决方案提供商的IT专业人员的见解。我们问:“在SDLC中使用机器学习时,开发人员需要记住什么?” 这是我们学到的:

基本原理

ML的最大问题是将其视为SDLC的万能救星,从而无需遵循传统的SDLC设计和协议。ML可以大大提高效率,并使开发人员可以更好地将时间分配给需要人工输入的操作。但是,它不能完全取代认真,勤奋和周到的软件计划,设计,开发和版本控制。

机器学习与代码不同

使用公共云提供商提供的工具。他们步调自如,轻松自在,您可以通过认证。ML与编写代码相反。它是基于需求培训和新数据而不断发展的模型。像一个怀疑的科学家那样思考,您总是在尝试反驳和改进。 

SDLC中ML应用程序中的过程不确定性强,因此它在很大程度上取决于ML工程师的技能,以便能够以正确的方式构造数据和算法。开发人员必须注意偏见的引入。开发人员需要记住,这些机器只知道它们所教的内容,并从我们提供给它们的数据中学习。如果数据有偏见,则机器将有偏见–有无数的例子表明机器无法从学习的数据中识别出他们没有暴露过的面孔,口音或性别。

另一个风险在于构建的产品不是最佳产品,它将继续在您的代码和SDLC中推广自己。这比在传统的编码环境中更为普遍,在传统的编码环境中,错误的输出会迅速且经常在雷达下显示出来。重要的是要弄清楚护栏,如何确保获得正确的结果,然后如何确保机器知识可以传递,并且随着时间的推移而变得更好而不是变得更糟。

建立包容性以达到预期的结果是关键,而从一路走到后期制作则不能失去对优化的关注。反馈将构成此过程的很大一部分-收集,解释并重新整合到数据科学中,我们才能真正取得成功。

了解您要解决的业务问题

看大图。您如何才能帮助解决遇到的挑战?AI在哪里可以帮助您解决这些问题?这将为您的事业和公司提供帮助。了解您的客户在做什么。我们如何使用AI来帮助他们?端到端测试有很多价值,可以提高所生产产品的整体质量。代码移到最前面。 

没有任何监视模型会记住准确性,有效性和计算性能指标。医院感染的费用为10,000美元,而干预的费用为100美元。误报的成本远低于误报。考虑您正在处理的业务问题。自动空值使工程师有机会自行尝试并与数据科学合作以提高他们的生产力。

其他

扫描二维码关注公众号,回复: 11937044 查看本文章

当相互补充使用经典算法和ML模型时,通常会证明成功。

不需要时不要使用ML。它有很多缺点。如果您足够聪明,可以编写维护代码。当您无法使用时,您将去ML。它是统计数据,需要大量数据,并不完全准确。不要试图解决内部难题。您应该购买工具。请注意,它不是100%准确的,并且知道要赔偿的费用。

有很多炒作和噪音。工具和技术对数据科学家来说很重要。数据科学家需要了解您正在解决的业务问题。随着时间的流逝,数据科学家成为开发人员。更侧重于脚本。角色正在合并。统计人员开始使用Python和脚本。挑选框架。标题与工具混合在一起。数据工程的简便性将导致角色更加复杂。具有业务背景和实施能力的人员将产生最大的影响。您不再需要知道如何管理Hadoop集群。

开发人员应确保他们选择正确的工具和技术,并注意项目的复杂性。选择正确的机器学习算法和应用领域至关重要。知道其开发生态系统的内在基础后,选择合适的算法,监督ML效率和工具是开发人员在构建智能开发生态系统时需要密切关注的领域。SDLC可以变成由多个运动部件,众多生态系统组件和编程组件组成的复杂组件。

在我目前的产品结构中,例如,模块是用C ++构建的,有些是用Java构建的,有些是用Python构建的,有些是用JavaScript构建的,许多第三方库等。此外,不同的模块和不同的功能需要各种测试技术。需要在SDLC流程中设计不同的ML算法和训练集。重要的是要意识到其复杂性,并选择适用于您的特定生态系统的工具和技术。

了解机器学习模型和缺乏可预测性。与您团队中的数据科学家建立合作关系,并对数据感到满意,以便能够了解应用程序在做什么。

在建模中,偏差和方差,欠拟合或过拟合之间存在折衷,只能分析一个数据。有两种力量可以理解和找到模型中的正确平衡。

 

猜你喜欢

转载自blog.csdn.net/weixin_38726452/article/details/102315666
今日推荐