是时候重新构建现代化了
我经常与管理其组织中自定义应用程序的业务主管交谈。当主题集中在这些自定义和通常遗留的应用程序的现代化上时,他们常常自豪地声称现代化正在进行,并向我解释他们正在迁移到云中,也许将应用容器化,如果雄心勃勃,则重新构建应用程序以利用微服务。
虽然这些努力是值得的,但我很少注意到这些努力在业务成果方面起着作用。在云中不改善营销应用程序中的个性化,或减少保险系统中的欺诈性索赔或优化制造商的供应链。应用程序可能肯定更敏捷。是的,这些容器编排和自动化的进步以及微服务重用因素也许能够提高开发人员的工作效率,但它们很少(如果有的话)最终从根本上改变或改进应用程序本身。因此,尽管云迁移和容器化很重要,但什么是能够真正推动业务成果的更具影响力的现代化?
为此,我认为有必要利用丰富的数据源,利用新的外部数据为应用程序充电,然后使用此数据来训练机器学习模型,使应用程序能够适应经验。这种下一代现代化将预测模型注入应用程序,以预测未来的某个结果,以便应用程序随后可以相应地采取行动。
您可能还喜欢:
数据科学 vs AI vs ML vs 深度学习
构建智能应用需要智能团队建设
但问题是问题所在。当公司尝试使用 AI 和 ML 实现现代化时,他们通常组织自己的团队很差。
事实上,当您向 IT 应用程序团队中的任何人提及 AI 或 ML 时,他们会立即将您转向数据科学团队或数据湖团队。这是思洛存储器的第一个迹象。这通常意味着能够管理大量数据和”做数学运算”的机器学习人员坐在他们的孤岛中。他们远离行动 – 应用程序与客户、供应商、员工等进行交互。它们离业务还有一步。最近,当我与一家保险公司的数据科学团队的负责人会面时,他们说阻碍他们工作运作的一件事是应用程序团队缺乏参与我们最近从技术角度谈论了其中一些(请参阅我们的博客,关于Hadoop 发生了什么?但在这里,我想专注于人和过程。从人和流程的角度来看,孤岛如何影响现代化?
我的观点是,将 AI 注入应用程序的现状通常由 AI 团队发起。他们从一些数据湖获取数据。他们创建了一个报告,并尝试了许多模型。有时,他们根据可用的数据在真空中创建这些模型。它们运行许多特征、算法和参数的排列,如果执行得当,它们使用精度指标正确测量实验,这些指标可以客观地测量模型预测测试集中新示例的准确程度。关于机器学习实验最佳实践的最佳读物之一是 Andrew Ng 的新书《机器学习的渴望》。
但这里是冲线。AI 或数据科学团队不具备独立完成工作的能力。他们根本没有足够的深入了解业务或应用程序,这些应用程序将部署模型,从而实现生产运营,从而带来业务成果。这一点对数据科学家一点也不小。我一直是一个。但是,对于一个成功的团队,秘诀是多样性。数据科学是一项团队运动。数据科学家需要与了解业务和应用的人员并肩工作。原因如下。
正确的团队可以创建正确的功能
我多年来的观察是,许多 ML 问题没有大量的训练示例,如图像、声音、视频和其他信号处理问题,在这种情况下,预测信号来自数据科学家对数据的争论找到产生一些预测信号的非常好的属性。通常,数据科学家以独特的方式组合数据元素,或者最重要的是聚合数据。这些转换的数据属性是数据科学家所称的要素,它们共同构成了要素向量,这些特征是受监督或分类算法或无监督聚类算法的输入。整个过程称为功能工程,在我看来,是处理企业结构化数据的实际 ML 项目的关键成功因素。
许多数据科学家撰写有关决策树、随机森林、增强算法、贝叶斯算法或深度学习替代方法等算法的中等文章,虽然这些算法确实对模型精度有影响,但获得更好的方法还是最有效的方法。预测信号是获取正确的数据。例如,RFM 转换是关键 — 正率、频率和货币值。这是将交易或行为数据转换为某人最近交易或访问的时间、频率或平均花费(时间或金钱)的过程但是,这是欺骗性的。事实证明,如果您使用访问特定网站(例如,在 48 小时内)的回用率,则可以在广告上获得明显更好的转化。您必须获得正确的功能表示,以获得模型执行!
正率是转换的一个简单示例。去年夏天,我们有幸被国际多发性硬化症(ECTRIMS)会议(ECTRIMS)接纳了一份摘要,与我们的客户精密创新网络(PIN)合作,该网络将独立的神经学诊所联网,以创建一个有关去身份患者的人口数据平台。该公司将为制药公司、机器学习顾问以及预测疾病轨迹的诊所提供宝贵的临床研究数据。
在这个项目中,我们组建了一个跨学科的数据工程师团队来准备数据,数据科学家进行实验,PIN的创始神经学家之一作为主题专家——马克·古德斯布拉特博士。Gudesblatt博士能够将深厚的医学知识转化为我们可以用来为工程师服务的语言。我们从未想到的数据科学家认为的一个特征的一个示例是认知域数(例如,内存、注意力、执行功能、视觉空间)的聚合,这些域对患者的负面影响(以平均值的标准偏差来衡量)。当残疾跨越功能网络时,它与疾病的轨迹高度相关。
我们与 PIN 的合作体现了不同团队协作的这一价值,如上文所示。最初,数据科学家、数据工程师和主题专家正在推动该项目,而应用程序开发人员和业务分析师将大量参与项目的后期阶段。
尽早与应用程序开发人员互动
当然,应用程序开发人员是一个关键的团队群体。没有它们,你永远无法想出如何将模型注入业务逻辑。它们将帮助您回答以下重要问题:
- 应用程序如何使用预测分数来更改业务逻辑?
- 数据多久从应用程序中提取,并用于重新训练模型,使其保持新鲜并反映当前条件?
- 再培训的型号何时以及如何取代旧型号?
- 如何监控模型的行为,以获得准确性?
- 是否需要还原到旧型号?
- 如何将最新的数据用作模型的输入,以便它不对陈旧数据做出决策?
不要等到建模项目结束,才能将应用程序开发人员引入
使用功能工厂创建实验文化
我将在以后的帖子中对此进行更多讨论,但 ML 项目可能更为重要,而不仅仅是将主题专家和应用程序开发人员作为数据科学和数据工程团队的一部分。这一点是,要做好 ML,您必须在公司中创建一种实验文化,并且您必须意识到 ML 项目没有上线日期和移交给操作来保持活力。这是一个持续不断的实验过程。
事实上,团队需要保持敬业,以创造我喜欢称之为功能工厂。功能工厂不断寻求增强信号的新功能。不幸的是,市场变化,不良的参与者创新,气候变化,竞争对手的变化,等等。上线时的完美功能向量可能在 2 个月后产生噪音,或者更糟的是 – 明天。因此,秘诀是保持多元化团队的完整,经常评估已部署的模型,最重要的是,尽可能保持它们的工作效率,以尝试新功能。
结论
总之,在使自定义应用程序现代化时,不要停止容器化或迁移到云。将机器学习的智能注入到应用程序中,以持续改进业务成果为目标。不要创建数据科学组织本身。创建”现代化SWAT团队”,由数据工程师、数据科学家、应用程序开发人员和操作员、主题专家和分析师组成。采用工具和流程,使这些团队能够构建实验文化。