原文:Domino Blog
深度学习和神经网络简介
原文:https://www.dominodatalab.com/blog/deep-learning-introduction
像深度学习和神经网络这样的短语在公众心目中可能是人工智能的代名词,但对于与他们一起工作的数据科学团队来说,它们是自成一类的。在自动驾驶汽车的仪表板后面,在我们每天使用的在线应用程序下面,是一系列复杂、交织的算法,这些算法的灵感来自人类大脑的神经生物学。
什么是深度学习?
深度学习是一种机器学习,或 ML,旨在根据输入(X)预测输出(Y)。它通常在涉及具有大量输入属性的数据时使用。深度学习的工作原理是首先识别输入和输出之间的模式,然后在给定以前没有遇到过的数据时,使用这些信息来预测新的输出。例如,深度学习算法可以通过向股票提供其过去表现的数据来预测股票的未来表现。
深度学习与机器学习
ML 是一个广泛的计算机系统类别,它可以通过使用分析数据、发现模式并从这些模式中得出推论的算法,在没有人类干预的情况下进行学习和适应。ML 是人工智能(AI)的子集。深度学习是机器学习 的一个 子集,而神经网络是深度学习的一个子集。
为什么要用深度学习?
当有大量数据要处理,并且组织有基础设施来支持其在合理时间内的大量计算时,深度学习可以比其他 机器学习模型 更具优势。因为深度学习不允许特征检查,也不需要大量的特征工程,所以当你处理大量的非结构化数据时,它特别有用。
你可以使用的数据越多,深度学习就越有可能成为更好的解决方案。随着数据的扩展,深度学习变得更加高效。在一个可用数据除了周复一周、年复一年地扩大之外什么都不做的世界里,深度学习的采用可能会继续升级。
深度学习是如何工作的?
成功的深度学习模型是使用 数据科学生命周期(DCLS) 创建和实现的。这包括四个阶段:管理、开发、部署和监控。
- **管理:**定义问题陈述,选择算法,获取数据。
- **开发:**使用不同的算法和超参数训练多个模型。然后,在新数据上测试表现最佳的模型,以确保它们继续按照预测表现。对于深度学习模型,过度拟合通常是一个问题。当模型变得过于复杂,无法适应以前没有遇到过的新变量时,就会出现这种情况。
- **部署:**模型被移动到它的生产环境中,并且用户被训练使用它。
- 监控: 对模型进行监控,确保其继续平稳运行。如果出现偏差、概念漂移或数据漂移等问题,自动监视器可以立即通知数据科学团队。
深度学习算法分析输入数据,找到数据中的模式,然后预测输出数据。虽然是算法本身做到了这一点,但它的有效性取决于数据的质量以及数据科学团队如何调整算法的超参数。
该算法通过数据分层工作:在输入数据层和输出数据层之间是多个隐藏层,算法在这些隐藏层中工作,排序、分析和建立数据点(节点)之间的联系。这就是深度学习中“深度”一词的由来,因为在输入层和输出层之间通常有许多隐藏层。
该算法在输出层生成预测后,会将其预测与实际输出进行比较,并在出现差异时使用一种称为反向传播的方法进行自我校正。从输出开始,它向后遍历各层,调整其参数,直到结果与实际输出非常接近。
神经网络在深度学习中的作用
人工神经网络是一套算法,其灵感来自人脑的神经生物学。这些网络由 人工神经元 组成,对应于每个隐藏数据层上的节点。每个人工神经元都使用一个激活功能,其中包含一个打开它的特征。
每个节点接受多个加权输入,处理它们,将一个 激活函数 应用于这些输入的总和,然后产生一个输出。然后,下一个节点从之前的节点获取信息,并生成自己的输出。
激活函数的一个例子是 sigmoid 函数,它接收神经元的线性组合输入,并将其重新调整到从 0 到 1 的范围。这很有用,因为函数的输出可以解释为有效的概率分布。此外,sigmoid 是可微分的,允许神经元的权重通过反向传播进行调整,以防其输出与期望的目标不匹配。
建议将节点排列在均匀分离的层中是过于简单化了。这些层的结构可能异常复杂,不同的网络使用不同的层来给出不同的结果。一个 前馈神经网络 就是这样一个简单明了的网络。目前使用的网络拓扑还有很多。
深度神经网络的挑战
神经网络当然不是所有问题的解决方案。对于大量的复杂数据,它们可能比其他 ML 模型更有效,但这些模型的复杂性意味着需要更多的时间和资源来训练、测试和部署它们。
由于数据量较小,深度学习与线性回归或 SVM(支持向量机)等其他算法相比没有太大优势。
成长的机会
深度学习比更简单的算法更耗费资源。随着 CPU 和 GPU 每年变得越来越强大,与几年前相比,今天更多的组织可以利用深度学习。特别值得注意的是 NVIDIA 等公司在 GPU 方面的 进步。由于 GPU 拥有比 CPU 更多的内核,以及更高的内存带宽,因此它们对于神经网络所需的并行计算来说异常强大。
这是通过采用分布式计算和云计算来实现的,分布式计算和云计算将资源负载分布在多个系统上,或者通过互联网使用更强大的服务器。
深度学习被高度采用的另一个原因是算法本身的进步,这些算法改变了深度学习的工作方式。例如,如果你正在训练一个深度学习模型, RELU 函数 可能会给你比 SIGMOID 函数好得多的结果,因为它给你的消失梯度问题更少。
深度学习中的学习类型
在深度学习内部,有各种学习供 数据科学家 和 ML 从业者使用。
监督学习
利用监督学习技术,利用与输入数据相对应的输出数据来训练深度学习模型。例如,如果您正在训练一个模型来识别垃圾邮件,您将为该模型提供电子邮件数据,并指定哪些电子邮件是垃圾邮件,哪些不是。然后,该模型将使用反向传播进行自我调整,以使其预测与提供给它的输出数据相匹配。
使用 监督学习 的深度学习模型通常用于旨在理解人类语言的自然语言处理(NLP),以及用于处理图像和视频的计算机视觉(CV)。
无监督学习
当输出数据在训练期间没有提供给模型时,使用无监督学习。在这种情况下,只给模型提供输入数据,目的是在提供的数据集中发现潜在的有趣模式。
使用这种技术的神经网络的例子是深度信念网络(DBN),其包括由【RBMs】或可变自动编码器(VAEs)组成的栈,并且可以在无监督或有监督的设置中使用。这些通常应用于视频识别、运动捕捉、图像分类甚至图像生成任务。
强化学习
强化学习包括训练 ML 模型做出一系列决策。模型学习在非结构化的复杂环境中实现目标。当与深度学习算法一起使用时,这被称为【DRL】。DRL 用于库存管理、需求预测、供应链管理以及金融投资组合管理和股票市场交易。
迁移学习
迁移学习是一种技术,其中用于一项任务的模型被重新用作另一项任务的另一个模型的起点。 转移学习 可用于自然语言处理或计算机视觉。当第一个模型已经被训练时,它特别有用,加速了开发时间。然而,在第二个模型被训练和测试之后,它的好处才能被确定。
深度学习在行动
对于这样一种相对较新的技术,深度学习已经淹没了商业的各个领域。对于消费者来说,深度学习和神经网络可能是当今汽车技术中最熟悉的,就像特斯拉生产的汽车中的自动驾驶系统一样。今天使用的深度学习的其他例子包括:
- **电子商务:**用于根据客户的独特行为向他们定制产品推荐。
- **安全性:**用于保护计算机系统免受病毒侵害,以及信用卡持卡人免受欺诈。
- **物流:**用于计划、监控和修改运输路线,同时预测交货时间。
因为神经网络是通用的近似器,所以实际上没有什么可以限制它们在人类工作的任何领域中的使用。最困难的领域之一,也是几年前还被认为是不可能的领域,是在医学诊断领域。然而,神经网络也在这一领域取得了重大进展,一些人工智能诊断模型在诊断方面与人类医生一样成功,甚至略胜一筹。
最后的想法
培训、测试和部署深度学习模型需要大量的资源和工具,从综合库到鼓励和支持团队协作和组织治理的平台。
深度学习和机器学习在金融服务中的应用
原文:https://www.dominodatalab.com/blog/deep-learning-machine-learning-uses-in-financial-services
在过去的几年里,机器学习和深度学习已经成为医疗保健、零售、银行和保险等领域的核心部分。这个列表可以无限地继续下去——几乎没有一个领域不应用机器学习(ML)来提高系统的整体效率和准确性。随着世界经济的快速增长,自动处理事情的需求也在增长。
当我们谈论经济时,银行和保险,有时被称为金融服务,是我们想到的两个主要行业。根据埃森哲 的一份报告,人工智能解决方案可能在未来几年为金融服务增加高达 10 亿美元的价值。存在的不仅仅是一个,而是几个 报告 讨论人工智能与金融服务的整合如何增加潜在利益。
包括银行和保险在内的整个金融领域正越来越多地转向在线平台。像新用户注册、身份验证、交易、购买金融服务和保险等事情都可以在网上完成。随着这种转变,出现了对流程自动化、安全性以及快速、优化处理客户查询的需求。嵌入决策系统的机器学习(ML)和深度学习(DL)是满足这些需求的一站式解决方案。它们有助于减少手动任务,增加现有流程的价值,从而改善整个财务系统。像预测信用评分、评估不同类型贷款的客户档案、使用聊天机器人处理客户查询以及检测银行和保险中的欺诈只是组织在 ML 的帮助下可以实现的一些主要用例。
在本文中,您将了解更多关于机器学习和深度学习如何改善金融服务的信息。还将向您介绍不同的金融用例,以及应用于这些领域的机器学习算法。
为什么机器学习和深度学习适用于金融服务?
机器学习是计算机科学的一个分支,它使用数学和统计学来分析数据并做出预测。深度学习是机器学习的一个子领域,它特别使用神经网络来执行涉及非结构化数据的更复杂的任务。机器学习广泛用于回归、分类和聚类等任务,这些任务使用 表格数据,或以行和列格式排列的数据。这通常被称为传统的人工智能方法。深度学习更适合处理更复杂的任务,如处理图像、语音和文本。要训练不同的神经网络模型,深度学习需要海量的数据,以及在记忆和处理方面强大的系统。要了解更多关于作为机器学习和深度学习一部分的算法和模型,请查看 深度学习和神经网络简介。
现在已经向您介绍了 ML 和 DL,让我们讨论一下使用它们的一些主要好处。
-
模式识别: 机器学习方法利用数学和统计的方法来识别数据中的模式。手动在数据中寻找模式非常耗时,而且充满了人为错误——如果模式能够被找到的话。诸如分类或聚类之类的算法可以很容易地找到区分不同类别的模式。这些方法的主要好处之一是,它们能够对以前没有见过的数据进行分类。例如,如果您正在进行欺诈检测,并且有一个实例您的模型没有经过训练,因此不熟悉,该算法仍然能够将该实例识别为可能具有欺诈性的异常值。
-
优化: 随着快速发展的全球化经济和在线平台的快速增长,人们越来越需要更快、更准确地处理金融行业的方方面面。为了取代手动方法,组织使用了两种主要的解决方案。一种是传统的基于规则的方法,第二种是基于 ML 的方法。在基于规则的方法中,规则的创建是手动处理的,这既困难又耗时,并且难以考虑边缘情况。ML 提供了一种不同的方法,由计算机协助人类做出决定。人类仍然需要准备数据,这些数据然后将被输入到 ML 模型训练过程中。最终结果是一个模型,它输出用于决策的规则。因为这些规则不是手工制作的,所以节省了大量的时间和人力,也大大降低了出错的几率。
-
持续改进: 对于很多真实世界的用例,比如欺诈检测或者物体检测,数据分布会随着时间而变化。这可以是数据或概念漂移的形式。如果您的解决方案不能处理这些问题,您将需要手动干预来合并更改。另一方面,如果您使用基于 ML 或 DL 的解决方案,手动干预可能是不必要的。有了适当的模型监控系统,系统可以重新训练模型以解决漂移,从而保持精度。
ML 和 DL 解决方案的财务用例
现在你已经知道什么是机器学习和深度学习了,让我们看看它们在金融领域的一些主要用例。
贷款风险评估
贷款风险,有时也称为信用风险,是指客户无法偿还贷款或信用卡债务,或无法履行合同义务的可能性。对于全球的银行、风险投资公司、资产管理公司和保险公司来说,这是一个代价高昂的问题。手动识别客户的风险概况是一项复杂且耗时的任务,尽管已经将在线信息验证形式的自动化引入到该过程中,但是仍然难以识别客户的风险概况。这就是这些公司现在转向 ML 和数据科学解决方案来解决这个问题的原因。ML 和 DL 解决方案帮助组织识别潜在客户的信用风险,允许将他们划分到不同的利率区间。
基于 ML 的贷款风险评估解决方案
贷款风险评估是一个 二元分类问题 因为你只会有两个输出,类“0(无风险)”和“1(有风险)”。因为这是一个分类问题,所以有许多模型非常适合这个任务。致力于这个问题的组织发现,集成学习模型如 随机森林分类器 和 XGBoost 模型 具有最佳性能。
在贷款风险评估模型中,您处理的大多数用例都有固有的不平衡数据——无风险样本总是比有风险样本多。这意味着模型的准确性很难评估。例如,假设您在 100 行真实数据上测试您的模型,数据集有 90 个无风险样本,10 个被归类为有风险。如果模型报告它们都没有风险,那么模型的准确率是 90 %,因为所有的阴性样本都被正确标记,即使阳性样本都没有被正确标记。但是这个模型在实际操作中是没有用的,因为它不能成功地识别高风险贷款。需要仔细考虑用于评估算法的开发策略和指标,以便考虑数据中的任何自然偏差。
客户分析
客户分析是分析客户行为和偏好的过程。关于客户的数据包含他们的购买模式、地理信息和交易类型等信息。这有助于企业获得信息,如他们共同的客户人口统计数据和客户购买行为,这为他们的业务决策提供了信息。基于 ML 和 DL 的解决方案都用于客户分析。客户分析的一些主要示例如下:
- 客户细分: 可以根据人口统计或行为等信息将客户分组。通过识别这些细分市场,组织能够更好地了解他们的客户在寻找什么,以及他们没有触及的市场细分市场。聚类算法,尤其是 k-means 聚类,用于创建基于行为的客户细分。
- 流失分析: 这是一个确定客户停止使用你的服务的比率的过程,也可能包括他们停止使用的原因。这是一个二元分类问题,为此使用了像逻辑回归、决策树和集成学习模型这样的 ML 模型。
- 情绪分析: 情绪分析是确定顾客对某一产品或服务的满意度的过程。情感分析使用文本分析技术,这些技术使得从文本数据中分析和提取有用信息成为可能。无论是机器学习算法如朴素贝叶斯 还是 DL 算法如 RNNs(递归神经网络) 都用于此。
- 推荐系统: 推荐系统是用来向他们推荐他们可能想要的产品或服务的模块。推荐系统使用的方法有 协同过滤和基于内容的推荐。
定价和优惠
当一个组织推出一种产品或服务时,一个重要的考虑因素是它的价格。许多组织都有专门的团队为不同的客户群创建不同的优惠,但为了改善结果并提供更快的前进方式,机器学习越来越多地用于创建这些优惠。
这可以通过使用聚类算法来实现,该算法有助于相似产品的聚类。例如,如果一家保险公司正在推出新产品,可以将聚类算法应用于该公司提供的所有产品,创建相似产品的组,其中一个组将包含新产品。然后,公司可以使用该组产品的价格点来通知新产品的定价。聚类算法也可以以类似的方式用于为特定的客户群创建报价。
索赔裁决
理赔是解决(包括支付或拒绝支付)投保人提出的索赔的过程。例如,如果某人有一份车辆保险,他们发生了事故,导致他们的车辆损坏,他们将向保险公司索赔。保险公司的代表评估索赔和任何支持文档,如警方报告、照片和来自其索赔理算员的信息。
如果保险公司发现索赔是真实的,他们通过支付适当的金额来调整索赔,否则他们拒绝索赔。所有的保险索赔,不管是什么类型的保险,都遵循一个相似的流程,这个流程在历史上都是手工完成的。通常这需要大量的时间,并且由于需要访问索赔现场而具有很高的财务成本。
近年来,保险公司转向了一种不同的理赔解决方案: 计算机视觉,这是深度学习的一个分支。许多主要的保险公司现在使用无人机拍摄索赔申请的房屋图像。然后,对图像运行多个基于深度学习的 对象检测 和分类模型,以识别基于损坏的类型和严重程度,然后用于处理索赔。
一家这样的公司是欧洲大型保险公司 Topdanmark。在迁移到 Domino 数据科学平台后,Topdanmark能够使用图像和自然语言处理技术将审批时间从四天缩短到仅仅几秒钟。模型比人快 800 倍,它们现在负责 65%的索赔。
标记欺诈
财务欺诈一直是财务相关组织面临的主要问题之一。根据联邦调查局 2021 年 互联网犯罪报告,仅在美国就有创纪录的 847,367 起互联网欺诈投诉,导致 69 亿美元的损失。这些欺诈索赔涉及一系列主题,包括信用卡、贷款偿还、虚假索赔、身份盗窃和文件伪造。然而,网络诈骗案件只是金融诈骗的一个方面。不幸的是,在线和线下欺诈在金融和保险行业非常普遍。一些常见的金融欺诈类型有:
- 虚假的保险索赔,
- 身份盗窃,
- 盗用公款,
- 传销,
- 不诚实的会计,
- 以及许多其他越来越有创意的金融欺诈方式。
处理欺诈的传统方式是使用基于规则的方法。在这种方法中,一组数据工程师手动创建规则,以区分欺诈性和非欺诈性交易。但是,手动创建涵盖所有欺诈情形的规则是不可能的,而且随着数据的增长,维护一个全面的规则集会耗费大量资源并且非常复杂。
使用分类和聚类算法来处理更现代的欺诈检测方法。公司希望能够实时识别欺诈性使用,使他们能够在欺诈发生之前阻止它。
最常见的欺诈类型之一是与信用卡相关的欺诈。鉴于信用卡交易数量巨大,检测信用卡欺诈是一项严峻的挑战。机器学习可能是解决这种挑战的最佳方式,在本案例研究中的 ,您将看到如何构建一个用于信用卡欺诈检测的机器学习模型。其步骤类似于构建任何类型的机器学习模型:首先读取数据集,然后进行探索性数据分析,接着是数据清洗和特征工程。您需要处理的一个具体问题是处理数据集中的不平衡,这种不平衡是由于大多数信用卡交易是真实的,而只有一小部分是欺诈性的。
处理完数据集中的不平衡后,您可以继续训练和评估模型。一旦您对结果感到满意,就该部署模型并使用它来检测现实生活中的信用卡欺诈了。与你所想的相反,这个过程并没有到此结束。部署的机器学习模型需要被持续地监控和定期地重新训练,通常借助于 MLOps 平台。
经济建模
我们生活的经济极其复杂,其中有无数相互交织的经济主体。为了以我们期望的方式影响或推动经济,我们首先需要理解它,尽管它很复杂。这就是模特的用武之地。经济模型只不过是现实世界经济的简化。通常,有一个经济模型试图解释的结果变量,以及以我们想要理解的方式影响结果变量的独立变量。从技术上讲, 模型 是不同变量的数学表示,显示了它们之间的逻辑和数量关系。这可能与任何业务相关,尽管它最常用于金融领域,并用于从数据中获得业务洞察力。
例如,如果您想要预测 GDP 增长率,您可以建立一个模型,其中结果变量是 GDP 增长率本身,自变量是影响它的所有因素,如消费者信心、通货膨胀率、汇率和许多其他因素。当然,该模型不能完美地预测 GDP 增长率,但它仍然非常有用。这就是世界银行、国际货币基金组织和欧洲委员会等组织定期创建这种模型的原因。
经济建模没有标准的机器学习算法,因为所需的模型因组织和数据类型的不同而有很大差异。不过,一些几乎通用的步骤是数据预处理和 特征工程,它们可以揭示大量关于数据的信息。然后,任何机器学习算法都可以使用处理后的数据来执行组织要求的任何任务。
金融建模与此密切相关,金融模型是对金融领域真实场景的简化。对于任何严肃的金融机构来说,金融模型都是不可或缺的,它们是整个金融服务业的核心。这就是为什么改进模型开发流程对金融机构来说至关重要。其中一种方法是使用 Domino 数据科学平台这样的平台。通过使用该平台, 金融建模领域的领导者穆迪分析公司提高了模型开发的效率,将模型开发到部署的周期从 9 个月缩短到 4 个月,并将模型投入生产的速度提高了 6 倍。
贸易
在金融中, 交易 是用金钱买卖一家公司的股票。在股票市场上,每天都有不同的股票被买卖,机器学习也在这里留下了印记。由于全球经济的性质,它受到不可预测的政治和自然事件的严重影响,没有模型可以预测市场的每一次波动。然而,它们可以给你市场运动的指示。
交易一般是一个依赖时间的过程,归类为 时间序列分析。市场分析中常用的基于 ML 的解决方案有 基于支持向量机的预测模型和基于 RFC 的预测模型。这些模型有时在市场突然变化的现实世界中表现不佳,因为它们完全基于过去的数据做出依赖于时间的预测。
更有效的解决方案是既能处理海量数据,又能处理新闻和其他可能影响市场的事件。由于这个原因, 递归神经网络【RNN】模型通常是首选的,因为它们既可以处理文本数据,又可以对与时间相关的特征进行建模。
就像在许多金融应用中一样,机器学习正越来越多地用于制定交易策略。结合算法交易,机器学习可以创建一些真正强大的交易模型。
算法交易 指的是编写一个程序,该程序将遵循关于何时在市场上买卖证券的某些交易指令。它已经使用了几十年,历史上是用一套手工编码的指令。然而,机器学习越来越多地用于获得那组指令,其中将包括关于是购买还是出售的指令,资产定价过高或过低的价格点,在特定情况下购买或出售多少证券,以及其他重要的交易指令。
在开发和部署交易策略的过程中,像 Domino 这样的 MLOps 平台几乎是必不可少的。例如,全球投资经理 Coatue Management、 使用 Domino 来增强他们的投资研究流程。Domino 的平台使 Coatue 能够提高他们的生产力,实现显著的运营节约,加快他们的研究周期,并在生产中部署模型。
新产品创造
这是许多行业目前关注的一个用例。利用以前产品的信息,组织正在使用机器学习来开发新产品。一个很好的例子就是根据客户的地理信息为他们创建新的保险单。
机器学习可以用来改进产品开发过程的许多阶段。使用机器学习模型,公司可以确定新产品的必要性。即使只是使用自然语言处理来分析客户评论,也可以给公司提供新产品、现有产品改进或改善业务的方法。除了识别新产品想法,机器学习还可以帮助新产品概念的设计。
运营效率
机器学习帮助公司优化许多任务,使他们能够改善客户和员工的体验,并提高他们的运营效率。以银行业为例,直到最近几年,像开户、查看交易细节和申请贷款这样的任务才可以在网上几乎即时完成,而不是直接与某人交谈并等待回复。有了 ML、DL 这样的先进技术,所有这些事情都在网上非常高效地进行。
没有预定义的 ML 模型可以提高不同行业的运营效率,但几乎所有的算法最终都会提高效率。例如,在金融部门,对在线用户注册和验证流程进行了调整。在这些过程中,用户提交一张自拍和他们的身份证,然后使用诸如 光学字符识别、 声音识别、 人脸匹配 等算法来验证用户信息。通常,像 CNN 和 RNN 这样的神经网络是这个用户验证过程的核心,而其他监督和非监督算法则用于帮助组织改善他们现有的解决方案。
保险承保
在保险中, 核保 是识别与待保业务相关的风险的过程。保险公司分析这些风险,然后最终确定企业的保险单成本。与本文中讨论的许多任务一样,这曾经是一个手动过程,但是保险公司现在依靠基于 ML 和 DL 的技术来增强承保过程。
机器学习在核保领域有三个主要应用。第一个是分析某人的索赔风险。在索赔风险用例中,公司试图确定投保人提出索赔的可能性。通常,这会导致二元分类问题,其中正类表示可能会提出索赔的人,负类表示不太可能提出索赔的客户。第二个用途是确定事故的严重程度。这是一个 多类分类 问题,分类为低、中、高。严重性影响索赔将支付的金额。最后,ML 用于根据客户资料生成保险报价。这是业务规则的组合,融合了多种监督学习算法的输出,如分类、聚类和流失分析。
在金融服务中使用 ML 和 DL 的挑战
机器学习的挑战通常与模型表现不佳、功能工程不佳、用户采用和/或坏数据等相关。在金融领域,你不仅有这些问题,而且还有必须解决的额外挑战。
监管要求
金融部门受到高度监管,有许多法律管理数据的收集、存储和使用;贷款惯例;和消费者权利。无论决策是通过手工过程还是自动化过程做出的,都必须严格遵守这些要求。
一个常见的监管要求是,银行和其他金融机构必须能够向消费者解释他们是如何做出决定的,也就是说,这些机构必须能够举出拒绝贷款或提高利率的具体主要原因。这使得复杂的多层神经网络的使用在法规遵从性方面存在问题,因为模型复杂性的增加使得很难查明影响结果的具体因素。
另一个关键的监管要求是,金融机构必须能够复制任何模型的结果。为了能够做到这一点,所有影响模型结果的因素(比如数据、代码和使用的任何工具)都需要被记录下来。然而,机器学习模型可能非常复杂,有许多因素影响模型结果。因此,如果没有合适的系统,记录模型开发几乎是不可能的。
这就是 MLOps 平台(比如 Domino 的 enterprise MLOps 平台)的用武之地。它包括一个强大的再现性引擎,可以自动跟踪代码、数据或工具的变化。这使得组织在需要时可以很容易地快速重现模型结果。领先的保险公司好事达保险公司 成功地使用 Domino 的 MLOps 平台 来记录和复制工作,以用于研究和审计目的。在转移到 Domino 的平台之前,Allstate 花了几个月的时间来重建现有的模型,并回答监管机构的问题。
偏见
从一开始就需要考虑反歧视和其他消费者权益法律,并将其构建到您的模型中。在美国, 平等信贷机会法案 使得歧视一些个人特征成为非法;在欧盟, 通用数据保护法规(GDPR) 为贷款人创建了一项法律义务,要求他们拥有确保其模型中没有偏见的机制。虽然确保您的模型在评估客户时不直接考虑种族或性别相对容易,但确保它不考虑可能代表这些类别的因素也很重要,例如居住在特定地区或上过特定学校。应该对模型进行广泛的测试,以确保它们不会在决策过程中引入非法的偏见。
机器学习模型可能带来的潜在歧视或偏见给金融机构带来了声誉风险。甚至一些世界上最大的公司也因为歧视性的模式而受到公众和监管机构的审查。一个例子是 2019 年推出的 苹果信用卡。然而,在推出后不久,用户就注意到该模型存在性别歧视。与男性相比,女性获得的信贷额度较低,即使她们的信用评分和收入较高。另一个臭名昭著的例子是 亚马逊用于招聘员工的型号 ,后来被发现强烈歧视女性。该模型基于历史数据进行训练,在这些数据中,男性提交的简历远远多于女性。这个模型接受了这种偏见,并学会了偏爱男性候选人。
数据访问和治理
在金融服务中使用数据有几个复杂性,这在其他行业中不太常见。金融机构通常拥有按产品分类的数据,这使得为模型提供全面的数据集变得困难。此外,还有大量管理此类数据的存储、使用和访问的法规,尽管这些法规的范围和严格程度因国家而异。
在金融服务领域,确保您的数据准确、最新、干净、公正、完全代表总体情况,并且符合数据位置法规,比以往任何时候都更加重要。如果做不到这一点,不仅会导致不准确的模型,还会导致对你的公司的指控和金融监管机构的高额罚款。说到与数据相关的罚款,其中许多是由于数据泄露。然而,根据 公平信用报告法案,金融机构也可能因无法解释模型结果而被罚款,例如,无法解释贷款申请被拒绝的原因。
由于财务数据的高度敏感性,限制对数据的访问也很重要,而且通常是法律要求的。数据团队应尽可能使用匿名数据,并应注意确保消费者的隐私在整个过程中始终是首要考虑因素。
传统技术
可能有一些用例,您需要构建的不仅仅是一个模型,而是几个相互依赖的模型。在这种情况下,有两个主要考虑因素:一个是系统的整体准确性,另一个是如何连接各种流程。机器学习和深度学习可能需要大量的硬件架构来成功训练模型,而传统系统通常不具备处理数据处理要求或部署要求的能力灵活性。
模型风险管理
如今,金融机构非常依赖模型。银行、保险公司和其他金融机构在任何给定时间都可能有数百甚至数千个模型在生产,并且这个数字每年都在大幅增加。不仅模型的数量在不断增加,它们的复杂性也在增加,机器学习和深度学习技术变得更加突出。
金融机构中使用的模型数量多且复杂,这带来了很多风险,因为这些模型中的任何一个不正常工作都可能对机构造成重大损害。风险可能来自模型本身的缺陷,也可能来自被误用的正确模型。不管是什么原因,有缺陷的模型或它们的误用会产生显著的问题,比如财务损失或糟糕的商业决策。一个臭名昭著的例子是 JP 摩根,该公司在 2012 年因模型错误遭受了超过 60 亿美元的损失。有缺陷的模型也在 2007-2008 年金融危机中扮演了重要角色。
由于与使用模型相关的风险可能很大,因此需要一个框架来管理这些风险。这就是模型风险管理发挥作用的地方。模型风险管理框架涉及对潜在错误模型或误用正确模型所产生的风险进行监控。需要这样一个框架,既要符合严格的监管要求,又要尽量减少模型故障可能带来的损失。每个使用定量模型进行决策的金融机构都需要有一个可靠的模型风险管理框架来监督模型带来的风险。
实施模型风险管理框架的最佳方式是通过 MLOps 平台。MLOps 需要以最有效的方式开发、部署和监控生产中的机器学习模型,对于扩展复杂的数据科学流程至关重要。
模型治理
模型治理是一个框架,通过这个框架,金融机构试图最小化上面解释的模型风险。它是更大模型风险管理框架的一个子集。模型治理包括许多与模型相关的过程,从它的开始到在生产中使用。
模型治理过程甚至在模型被开发之前就开始了,通过确定应该在模型上工作的人以及他们在模型中的角色。在开发模型时,必须记录模型的所有版本。当模型被部署时,模型治理应该确保它正常工作,并且不会经历数据或概念漂移。这些流程中的大部分将由 MLOps 平台处理。
在金融机构中拥有强大的模型治理框架将最大化模型的质量和有效性,同时最小化其风险。当一个模型没有按预期执行时,一个好的模型治理框架应该很快意识到这一点。它还应该处理在金融领域使用机器学习的挑战,例如对偏见和遵守监管要求的担忧。
许多公司在其模型治理框架中使用 Domino 的 MLOps 平台。例如,,四大信用评级机构之一的 DBRS ,在看到 Domino 的治理能力后,部署了 Domino 作为他们所有数据项目的中心平台。另一个例子是一家领先的 【财富 500 强】保险公司,该公司受益于 Domino 企业 MLOps 平台提供的实验、数据集、工具和环境的自动跟踪和完全可再现性。
模型验证
模型验证是模型风险管理框架的关键部分。它处理的是确保模型如预期的那样运行,并且它们解决了预期的问题。模型验证是在模型被训练之后,投入生产之前完成的。然而,验证并不止于此。该模型还会在部署后立即进行验证,以确保它在生产环境中正常工作。之后,只要模型还在生产中,就应该经常执行模型验证,以确认模型仍然在预期的标准下工作。模型验证应该由不同于训练模型的团队来完成,以确保结果不会有偏差。
模型部署和监控
构建、部署和监控 ML/DL 模型是高度技术性和细致的工作,不可能用手工流程大规模完成。Domino Data Lab 的企业 MLOps 平台旨在帮助数据科学团队提高大规模数据科学的速度、质量和影响。Domino 是开放和灵活的,允许专业数据科学家使用他们喜欢的工具和基础设施。数据科学模型快速投入生产,并通过集成的工作流保持最佳性能。Domino 还提供了高度管制的企业所期望的安全性、治理和法规遵从性。
这些功能有助于金融机构为用例创建模型驱动的解决方案,例如:
- 核保和财务评分: Domino 帮助保险组织,包括 财富 500 强全球领导者,识别、测试和管理整个投资组合的风险,包括核保、定价、欺诈检测和法规遵从性。
- 欺诈检测: Domino 帮助您创建不同的分类和基于计算机视觉的解决方案来检测银行和保险业的欺诈。它可以帮助组织识别欺诈性索赔或交易,并在运行时报告它们。即使是《财富》500 强保险公司 中的 也能够通过使用 Domino 的平台改进欺诈检测、风险管理并显著缩短周期时间。
- 个性化: Domino 可以帮助您高效地分析关于个人的数据,在此基础上,您可以为不同的客户创建不同的个性化优惠和产品。 Gap 使用多米诺骨牌 通过提供更个性化的体验来增加客户参与度。
这些只是解决方案的一部分,借助Domino Enterprise MLOps Platform,您可以在 ML 和 DL 领域做更多事情。
结论
在本文中,您已经了解了机器学习和深度学习帮助金融服务行业的企业改进现有解决方案或创建新解决方案的一些方法。作为一个高度监管、高风险的部门,金融部门特别容易受到模型中导致严重后果的小错误的影响。
用 DL4J 和 Domino 进行深度学习
原文:https://www.dominodatalab.com/blog/deep-learning-with-dl4j-and-domino
The screenshot above shows several different “Runs” of the dl4j code on Domino, each one executing a different dl4j example. The selected run is the multi-core MNIST example, running on a 4-core machine.
面向 Java 的深度学习
深度学习是机器学习的一个热门子领域,已被证明可以有效地学习通常只能由人类“解释”的数据集中的抽象表示。比如图像处理(人脸识别、图像搜索)、音频分类、文本分析。
Deeplearning4j 是一个“商业级、开源的深度学习库…旨在用于商业环境,而不是作为一种研究工具。”因为我们正在构建 Domino 来处理相同的商业级分析用例,所以我们迫不及待地想了解关于这个库的更多信息。
因此,昨晚我们很兴奋地参加了 SF 数据挖掘会议,在那里 dl4j 的创造者 Adam Gibson 谈到了深度学习。有一点他说得非常清楚——一遍又一遍——深度学习不是万能的,也不是解决所有问题的好办法。具体来说,他的建议是将其用于媒体(图像、视频、音频、文本)和时间序列分析(例如,传感器数据馈送)。昨晚,当一名观众问及使用它进行欺诈检测(在这种情况下,检查分类逻辑至关重要)时,亚当说了类似这样的话:“我甚至不想在这里看到你。”=)我们欣赏这种诚实和直率。
虽然对 dl4j 的了解越来越多,但让我们更兴奋的是让 dl4j 在 Domino 上运行起来=)
尽管许多 Domino 用户使用 Python、R 和其他脚本语言,但从本质上来说,Domino 是一个任意代码执行器,因此它可以运行您想使用的任何语言的任何代码。因此,启动并运行一个 java 示例是小菜一碟。
为什么这很有用
dl4j 功能强大且灵活,但并不是所有的数据科学家和机器学习从业者都是软件工程师和基础设施专家。Domino 为您省去基础设施设置和配置的麻烦。例如,您不必担心如何为 AWS 机器设置所有需要的库,以及如何获得所有 maven 依赖项来编译 dl4j 示例代码。
通过使用 Domino,所有的设置都是为您处理的,您只需点击一下鼠标就可以在任何硬件上运行您的代码。同时,Domino 跟踪您的代码的每次运行,包括您的结果,因此您可以复制过去的工作并与其他人共享。或者您可以将您的模型打包成一个自助式 webform,以便非技术利益相关者可以使用它。
用 h2o.ai 进行深度学习
原文:https://www.dominodatalab.com/blog/deep-learning-with-h2o-ai
这篇文章提供了深度学习的简要历史教训和概述,以及使用 H2O.ai 将脚趾浸入水中的快速“如何”指南。然后,我描述了 Domino 如何让我们在可扩展的硬件上轻松运行 H2O,并跟踪我们深度学习实验的结果,以将分析提升到下一个级别。
重复过去会有回报
“深度学习”这两个词最近成了风险投资的时髦用语,也成了讨论即将到来的机器人末日的新闻素材。尽管深度学习不是我们想要的机器学习银弹,但谷歌、脸书、易贝和其他公司已经创建了许多令人印象深刻的深度学习应用程序,可以访问海量数据集。例如,在最近的 Re。在波士顿举行的工作深度学习峰会上,谷歌的凯文·墨菲讨论了一个新项目,该项目使用深度学习来自动计算食物图像中的卡路里。这个消息像病毒一样在 T4 传播开来,就像一个会议上关于深度学习的幻灯片一样!当天晚些时候,在同一场会议上,亚历杭德罗·杰米斯(Alejandro Jaimes)展示了雅虎是如何超越仅仅给图片加标签,而对照片的“趣味性”等概念进行分级的。换句话说,深度学习可以用来学习创造力吗?
然而,在我们深入研究之前,让我们退后一步,问一问“为什么突然出现了深度学习炒作?”深度学习并不新鲜。事实上,深度学习的基础主要是一种更性感的方式,即使用梯度下降的反向传播和更大量的隐藏神经网络层。对于那些上过机器学习课程的人来说,backprop 可能是一个熟悉的术语。当我们大多数人都想知道为什么艾迪·墨菲认为一直发布“Party是个好主意的时候,一位著名的心理学家(大卫·鲁梅尔哈特)和未来的深度学习之父(杰弗里·辛顿)发表了开创性的、被高度引用的论文“通过反向传播错误学习表征”。
不幸的是,backprop 在 90 年代和 2000 年代过时了,但由于 2010 年代的一些关键发展,它又回来了(就像 80 年代的其他东西一样):1)大大增加的计算能力,2)大得多的数据集,以及 3)一些关键的算法调整(即 dropout,AdaGrad/AdaDelta 等。)来提高准确率。摩尔定律和互联网允许反向传播模型使用更大的训练集,具有不止一个隐藏的“神经元”层。然后,在 2006 年,Hinton 发表了另一篇被广泛引用的论文,“一种深度信念网络的快速学习算法”,它在很大程度上恢复了神经网络的合理使用。
如果你想知道深度学习算法的许多变体如何工作的细节,有几十种优秀的资源可供使用。以下是我最喜欢的几个:
- https://deeplearning.net/tutorial/
- https://www.youtube.com/watch?v=n1ViNeWhC24
- https://www.youtube.com/watch?v=S75EdAcXHKk
和 H2O 一起深度学习
这篇文章的其余部分将展示如何使用 h2o.ai 在 Domino 中启动并运行深度学习实现。有许多其他可用的包可以运行你的深度学习分析,但为了简单起见,让我们坚持以 h2o 作为一个好的起点。h2o 是用 Java 编写的,但是它绑定了 R 和 Python,这使得它非常灵活。
让我们开始吧。引用某人的话:“从本地考虑。全球行动。”换句话说,从在本地机器上安装 h2o 开始。Python 和 R 的安装都非常简单,除了一个小问题,这似乎是许多 Mac 用户在 Java 方面经常遇到的问题。即使您下载了最新版本的 Java,它仍可能在终端窗口中显示为 1.6 版。解决方法是将 JAVA_HOME 改为 1.8 版路径。
首先,进入 h2o 下载页面,下载 zip 文件。然后打开一个终端并运行:
cd ~/Downloads
unzip h2o-3.0.0.16.zip
cd h2o-3.0.0.16
java -jar h2o.jar
好了,现在让我们直接在 R 中安装 h2o。将以下命令复制并粘贴到 R 中,一次一个,以查看每个命令的输出:
# The following two commands remove any previously installed H2O packages for R.
if ("package:h2o" %in% search()) { detach("package:h2o", unload=TRUE) }
if ("h2o" %in% rownames(installed.packages())) { remove.packages("h2o") }
# Next, we download packages that H2O depends on.
if (! ("methods" %in% rownames(installed.packages()))) { install.packages("methods") }
if (! ("statmod" %in% rownames(installed.packages()))) { install.packages("statmod") }
if (! ("stats" %in% rownames(installed.packages()))) { install.packages("stats") }
if (! ("graphics" %in% rownames(installed.packages()))) { install.packages("graphics") }
if (! ("RCurl" %in% rownames(installed.packages()))) { install.packages("RCurl") }
if (! ("rjson" %in% rownames(installed.packages()))) { install.packages("rjson") }
if (! ("tools" %in% rownames(installed.packages()))) { install.packages("tools") }
if (! ("utils" %in% rownames(installed.packages()))) { install.packages("utils") }
# Now we download, install and initialize the H2O package for R.
install.packages("h2o", type="source", repos=(c("https://h2o-release.s3.amazonaws.com/h2o/rel-shannon/16/R")))
library(h2o)
localH2O = h2o.init()
# Finally, let's run a demo to see H2O at work.
demo(h2o.kmeans)
好了,现在让我们用 Python 安装。注意这只适用于 Python 2.7!
pip install requests
pip install tabulate
pip uninstall h2o
pip install https://h2o-release.s3.amazonaws.com/h2o/rel-shannon/16/Python/h2o-3.0.0.16-py2.py3-none-any.whl
一旦你完成了全新的 h2o 安装,你可以在 GitHub 上克隆我的教程。
现在,如果你在 deep-domino 文件夹中,我们准备打开dl_h2o.r
(或dl_h2o.py
),你会看到这个特定的例子使用的是俄亥俄州立大学综合癌症中心的 Donn Young 博士收集的前列腺癌数据集。分析的目的是确定基线检查时测量的变量是否可用于预测肿瘤是否已穿透前列腺包膜。所提供的数据是以胶囊为基础的主要研究中变量的子集。
在加载数据并做了一些预处理后,H2O 使得只用一行代码运行深度学习算法成为可能。在 R 中:
model = h2o.deeplearning(x = setdiff(colnames(prostate.hex),
c("ID","CAPSULE")),
y = "CAPSULE",
training_frame = prostate.hex,
activation = "RectifierWithDropout",
hidden = c(10, 10, 10),
epochs = 10000)
或者在 Python 中:
model = h2o.deeplearning(x=prostate[list(set(prostate.col_names()) - set(["ID", "CAPSULE"]))],
y = prostate["CAPSULE"],
training_frame=prostate,
activation="Tanh",
hidden=[10, 10, 10],
epochs=10000)
让我们快速分解一下 h2o.deeplearning 论点:
x
是我们的特性列表减去ID
和CAPSULE
列,因为我们将使用,CAPSULE
作为我们的y
变量,training_frame
是,嗯,我们的火车数据帧(触目惊心!),activation
表示当信号乘以网络中某个神经元的权重时使用的非线性激活函数的类型,hidden
表示,在本例中,我们希望使用三层,每层 10 个神经元,并且epochs
设置要执行的训练数据集的遍数。
就是这样!现在,我们简单地在模型上运行预测,然后检查我们的深度学习分类器的表现如何,如下所示:
predictions = model.predict(prostate)
predictions.show()
performance = model.model_performance(prostate)
performance.show()
Domino 中更好的 H2O 分析
在 Domino 中运行我们的 Python 脚本之前,有一点需要注意。h2o 喜欢安装在/usr/local
中,而默认情况下 Python 会在/usr
中寻找它。这可不是什么好事。你会在dl_h2o.py
的前几行看到我们的修正:
import sys
sys.prefix = "/usr/local"
import h2o
h2o.init(start_h2o=True)
更多动力
如果还没有,在 Python 或 R 脚本上点击 Run 来查看 Domino 中的输出。向下滚动到底部的“最大指标”,您会看到我们获得了 98.4%的准确率。还不错!不幸的是,用 Domino 的免费 0.5 内核& 0.5GB RAM 层和
引用 Homer Simpson 的话我现在就要!“Domino 可以轻松扩展您的硬件,以便更快地看到结果。我继续在 R 中运行深度学习演示,以查看不同层的持续时间。
| 硬件层 | 持续时间 |
| 免费(0.5 个内核,1GB) | 4m,20s |
| 小型(双核,8GB) | 1 米,11 秒 |
| 中型(4 核,16GB) | 38s |
| 大型(8 核,30GB) | 34s |
简单的实验跟踪和比较
最后,像所有其他机器学习方法一样,您需要改变参数,如隐藏神经元(和层)的数量或激活函数,以查看在特定数据集上什么效果最好。为了让生活更简单,我强烈推荐使用 Domino 的诊断统计特性来快速浏览关键性能指标。在我们的 R 演示脚本中,我们可以提取关键统计数据,并将其添加到一个 dominostats.json 文件中,如下所示:
r2 <- performance@metrics$r2
mse <- performance@metrics$MSE
auc <- performance@metrics$AUC
accuracy <- performance@metrics$max_criteria_and_metric_scores$value[4]
diagnostics = list("R^2"=r2, "MSE"=mse, "AUC"=auc, "Accuracy"=accuracy)
library(jsonlite)
fileConn <- file("dominostats.json")
writeLines(toJSON(diagnostics), fileConn)
close(fileConn)
Python 以稍微不同的方式处理这些指标的输出,并且具有稍微简单一些的格式:
r2 = performance.r2()
mse = performance.mse()
auc = performance.auc()
accuracy = performance.metric('accuracy')[0][1]
import json
with open('dominostats.json', 'wb') as f:
f.write(json.dumps({"R^2": r2, "MSE": mse, "AUC": auc, "Accuracy": accuracy}))
Domino 在项目中检查这个文件,然后将这些 JSON 元素添加到 Runs 输出屏幕。
现在让我们回过头来,将激活函数从 tanh 修改为 converterwithdropolito,并再次运行分析。同样,我们在底部得到了我们关键指标的一个很好的概要,但是现在这里还有一个额外的项目。如果我们选择两次运行并点击“Compare ”,下面的屏幕截图让我们以一个漂亮的表格格式并排看到我们的关键指标。
哎哟。看起来 converterwithdropoligo 不是这里正确的激活函数。
结论
现在,您知道了如何开始使用 H2O 的 Domino 来运行和比较深度学习分析。我们仅仅触及了 H2O 深度学习能力的皮毛。目前有 49 个不同的输入参数可以用 h2o.deeplearing 进行修改,所以即使一行代码让你自己编写了一个深度学习神经网络,你仍然需要学习很多东西,以获得最大的回报。谢天谢地,现在有很多令人惊叹的深度学习资源。快乐学习!
深度强化学习
原文:https://www.dominodatalab.com/blog/deep-reinforcement-learning
本文提供了《深度强化学习》一书的节选,深度学习图鉴作者克罗恩,贝维尔德,以及巴森斯。本文包括强化学习理论的概述,重点是深度 Q 学习。它还包括使用 Keras 构建一个深度 Q 学习网络,在模拟视频游戏环境中学习。非常感谢 Addison-Wesley Professional 允许摘录这一章。一个补充的 Domino 项目是可用的。
介绍
机器学习领域的最新成就,如开发一个在围棋比赛中击败人类的程序,都是由强化学习推动的。强化学习是通过结合奖励和惩罚来激励程序,训练程序通过试错来达到目标的过程。一个代理人在一个环境的限制下工作,以最大化其报酬。从游戏到模拟进化,强化学习一直被用作探索突现行为的工具。在 Domino 寻求帮助数据科学家加速他们的工作时,我们联系了 AWP·皮尔森,请求他允许我们从克罗恩、贝维尔德和巴森斯所著的《深度学习图解:人工智能的可视化互动指南》一书中摘录“深度强化学习”一章。非常感谢 AWP·皮尔逊提供了摘录作品的许可,并使我们能够提供一个补充的 Domino 项目。
这个项目解决了经典的车杆问题,也就是平衡一根连接在可移动车上的杆。内容包括
- 使用 Keras 和 OpenAI Gym 创建深度学习模型并提供训练环境
- 定义代理
- 代理和环境之间的交互建模
深度强化学习
在本章中,我们将
- 涵盖强化学习的基本理论,特别是称为深度 Q 学习的深度强化学习模型
- 使用 Keras 构建深度 Q 学习网络,学习如何在模拟的视频游戏环境中脱颖而出
- 讨论优化深度强化学习代理性能的方法
- 介绍深度 Q 学习之外的深度 RL 代理系列
强化学习的基本理论
回想一下第 4 章,具体来说,图 4.3 表明强化学习是一种机器学习范例,包括:
- 一个代理在一个环境中采取一个动作(假设该动作在某个时间步长 t 发生)。
- 环境向代理返回两种类型的信息:
- 奖励:这是一个标量值,提供代理在时间步长 t 采取的行动的量化反馈。例如,这可以是 100 点,作为在视频游戏“吃豆人”中获得樱桃的奖励。代理的目标是最大化它积累的奖励,因此奖励是加强代理在特定环境条件下发现的生产行为。
- 状态:这是环境如何响应代理的动作而变化。在接下来的时间步( t + 1)中,这些将是代理选择动作的条件。
- 循环重复上述两个步骤,直到达到某个终端状态。例如,可以通过获得最大可能的奖励、获得一些特定的期望结果(例如自动驾驶汽车到达其编程目的地)、用完分配的时间、用完游戏中允许的最大移动次数或者游戏中的代理死亡来达到这种最终状态。
强化学习问题是顺序决策问题。在第 4 章的中,我们讨论了一些特殊的例子,包括:
- Atari 视频游戏,如吃豆人、乒乓和突围
- 自动驾驶车辆,如自动驾驶汽车和空中无人机
- 棋盘游戏,如围棋、国际象棋和日本象棋
- 机器人手臂操作任务,如用锤子移除钉子
车杆游戏
在这一章中,我们将使用 open ai Gym——一个流行的强化学习环境库(图 4.13 中提供了示例)[int the book]——来训练一个代理玩 Cart-Pole,这是在控制理论领域工作的学者之间的一个经典问题。在推车杆游戏中:
- 目标是平衡推车顶部的杆子。柱子在一个紫色点处与手推车相连,该点作为一个销,允许柱子沿水平轴旋转,如图 13.1 所示。[注意:图 4.13a 中提供了一个推车杆游戏的实际屏幕截图。]
- 手推车本身只能水平移动,要么向左,要么向右。在任何给定的时刻——在任何给定的时间步长——购物车必须向左或向右移动;它不能保持静止。
- 游戏的每一集开始时,手推车被放置在屏幕中心附近的随机点上,杆子处于接近垂直的随机角度。
- 如图 13.2 所示,当出现以下任一情况时,一集结束
- 杆子在推车上不再平衡——也就是说,当
杆子的角度从垂直方向向水平方向移动得太远时 - 购物车触及边界——屏幕的最右边或最左边
- 杆子在推车上不再平衡——也就是说,当
- 在你将在本章中玩的游戏版本中,每集的最大时间步数是 200。因此,如果这一集没有提前结束(由于失去平衡或离开屏幕),那么游戏将在 200 个时间步后结束。
- 每集的每一个时间点都有一点奖励,所以最高奖励是 200 点。
车杆游戏是一个流行的入门强化学习问题,因为它非常简单。对于自动驾驶汽车,实际上有无限多种可能的环境状态:当它沿着道路行驶时,它的无数传感器——相机、雷达、激光雷达、加速度计、麦克风等等——以每秒千兆字节的数据量级,从车辆周围的世界传输大量的状态信息。[注:与雷达原理相同,但使用激光代替声音。与之形成鲜明对比的是,车杆游戏只有四条状态信息:
- 购物车沿一维水平轴的位置
- 2.手推车的速度
- 极点的角度
- 极点的角速度
同样,自动驾驶汽车可能会做出一些相当细微的动作,比如加速、刹车和左右转向。在推车杆游戏中,在任何给定的时间步长 t ,只能从两个可能的动作中选择一个动作:向左移动或向右移动。
马尔可夫决策过程
强化学习问题在数学上可以定义为一种叫做马尔可夫决策过程的东西。MDP 的特点是所谓的马尔可夫属性——假设当前时间步长包含来自先前时间步长的关于环境状态的所有相关信息。对于手推车-杆子游戏,这意味着我们的代理将通过仅考虑手推车的属性(例如,它的位置)和杆子的属性(例如,它的角度)来选择在给定的时间步长 t 向右或向左移动。[注意:马尔可夫属性在许多金融交易策略中被假定。例如,交易策略可能会考虑给定交易日结束时在给定交易所上市的所有股票的价格,而不会考虑前一天的股票价格。]
如图 13.3 所示,MDP 由五个部分定义:
- S 是所有可能状态的集合。按照集合论惯例,每个单独的可能状态(即小车位置、小车速度、极角和角速度的特定组合)由小写的 s 表示。即使当我们考虑相对简单的车杆游戏时,其四个状态维度的可能重组数量也是巨大的。举几个粗略的例子,手推车可以在屏幕的最右边缓慢移动,杆子垂直平衡,或者手推车可以在杆子以大角度顺时针转动的情况下快速移动到屏幕的左边。
- A 是所有可能动作的集合。在车杆游戏中,这套只有两个元素(左和右);其他环境有更多。每个单独的可能动作被表示为 a 。
- R 是给定一个状态-动作对——某个特定状态与某个特定动作配对——的奖励分配,记为( s,a )。这是一种概率分布:完全相同的状态-行为对( s,a )可能在不同的场合随机产生不同数量的奖励 r 。[注意:虽然这在一般的强化学习中是正确的,但车杆游戏是一个相对简单的完全确定的环境。在推车杆游戏中,完全相同的状态-动作对( s,a )实际上每次都会产生相同的回报。为了说明强化学习的一般原理,我们在本节中使用了一些例子,这些例子暗示了车杆游戏比它实际上更不确定。]奖励分配的细节R——它的形状,包括它的均值和方差——对代理人来说是隐藏的,但可以通过在环境中采取行动来瞥见。例如,在图 13.1 中,您可以看到购物车在屏幕中居中,柱子稍微向左倾斜。【注:为了简单起见,这个例子我们忽略大车速度和极角速度,因为我们无法从这个静态图像中推断出这些状态方面。]我们预计,相对于将向右移动的动作与此状态配对而言,将向左移动的动作与此状态 s 配对平均来说会对应于更高的预期奖励 r :在此状态下向左移动 s 会导致杆子更加直立,增加杆子保持平衡的时间步长数,从而倾向于导致更高的奖励 r 。另一方面,在这种状态下向右移动 s 会增加杆子朝水平方向倒下的可能性,从而倾向于游戏提前结束,并获得较小的奖励 r 。
- p 和 R 一样,也是概率分布。在这种情况下,它表示在当前时间步 t 中给定特定状态-动作对( s,a )的下一个状态(即 st+1 )的概率。像 R 一样, P 分布对代理是隐藏的,但是它的各个方面可以通过在环境中采取行动来推断。例如,在推车杆游戏中,代理学习向左动作直接对应于推车向左移动是相对简单的。[注意:与本书中的所有其他人工神经网络一样,深度强化学习代理中的 ann 是用随机起始参数初始化的。这意味着,在任何学习之前(例如,通过玩几集推车游戏),代理人甚至不知道某个状态-动作对 (s,a) 和下一个状态 st+1 之间最简单的关系。例如,尽管对于玩车杆游戏的人来说,向左的动作应该导致车向左移动可能是直观和明显的,但是对于随机初始化的神经网络来说,没有什么是“直观”或“明显”的,因此所有的关系必须通过游戏来学习。]更复杂的关系——例如,图 13.1 中捕捉到的状态 s 中的左动作往往对应于下一个状态 st+1 中更垂直取向的极点——将更难学习,因此需要更多的游戏性。
- γ (gamma)是一个超参数,称为贴现因子(也称为衰变)。为了解释它的意义,让我们暂时离开推车杆子游戏,回到吃豆人。同名的 Pac-Man 角色探索一个二维表面,收集水果可以获得奖励点数,如果被追逐他的鬼魂之一抓住就会死去。如图 13.4 所示,当代理人考虑预期奖励的价值时,它应该将可以立即获得的奖励(比如,获得距离吃豆人只有一个像素的樱桃的 100 分)看得比需要更多时间才能获得的同等奖励(距离 20 个像素的樱桃的 100 分)更高。眼前的奖励比遥远的奖励更有价值,因为我们不能指望遥远的奖励:一个幽灵或其他危险可能会妨碍吃豆人。【注:γ贴现因子类似于会计中常见的贴现现金流计算:一年后的预期收入相对于今天的预期收入进行贴现。在这一章的后面,我们将介绍价值函数(V)和 Q 值函数(Q)的概念。V 和 Q 都包含了γ,因为它防止了它们在具有无限可能的未来时间步长的游戏中变得无界(从而在计算上不可能)。]如果我们设置 γ = 0.9,那么一个时间步长之外的樱桃将被认为值 90 分,[注意:100 ×γt = 100 × 0.91 = 90]而 20 个时间步长之外的樱桃将被认为仅值 12.2 分。[注:100×γt =100×0.920 =12.16 ]
最优策略
MDP 的最终目标是找到一个函数,使得代理在遇到所有可能的环境状态 S 中的任何特定状态 S 时,能够采取适当的动作 a (从所有可能的动作 A 的集合中)。换句话说,我们希望我们的代理学习一个函数,使它能够映射 S 到 A 。如图 13.5 所示,这样的函数用π表示,我们称之为策略函数。
用通俗的语言来说,政策函数π的高级思想是这样的:不管代理人发现自己处于什么样的特定环境,它应该遵循什么样的政策才能使其报酬最大化?对于这种回报最大化思想的更具体的定义,欢迎你仔细阅读:
在这个等式中:
- J(π)被称为目标函数。这是一个我们可以应用机器学习技术来实现回报最大化的功能。[注:本书中提到的成本函数(又称损失函数)是目标函数的例子。成本函数返回一些成本值 C,而目标函数 J(π)返回一些回报值 r。对于成本函数,我们的目标是最小化成本,因此我们对它们应用梯度下降(如图 8.2 中的山谷下降三叶虫所示)。相比之下,对于函数 J(π),我们的目标是最大化回报,因此我们在技术上对其应用梯度上升(想象图 8.2 的图像,想象一只三叶虫徒步旅行以识别山峰),即使数学与梯度下降相同。]
- π表示将 S 映射到 A 的任何策略函数。
- π∫表示将 S 映射到 a 的特定最优策略(在所有潜在的π策略中)。也就是说,π∫是一个函数,它将返回一个动作 a,该动作将导致代理获得最大可能的未来折扣奖励。
- 计算贴现的未来报酬
在所有未来时间步长(即 t>0),我们执行以下操作。
通过将它们全部相加(使用σ)。
深度 Q 学习网络的基本理论
在上一节中,我们将强化学习定义为马尔可夫决策过程。在本节的最后,我们指出,作为 MDP 的一部分,我们希望我们的代理——当它在任何给定的时间步长 t 遇到任何给定的状态 s 时——遵循某个最优策略π∫,这将使它能够选择一个行动 a,使它能够获得的贴现未来报酬最大化。问题是——即使是像车杆游戏这样相当简单的强化学习问题——也很难计算出(或者至少计算效率非常低)最终计算出最大的累积未来折扣奖励
因为所有可能的未来状态 S 和所有可能的行动 A 在这些未来状态下可能采取的行动,有太多可能的未来结果需要考虑。因此,作为一种计算捷径,我们将描述 Q- 学习方法,用于估计在给定情况下最优行动 a 可能是什么。
价值函数
Q-learning 的故事最容易通过解释值函数来描述。价值函数由 V π ( s 定义。它向我们提供了一个指示,即如果我们的代理从一个给定的状态 s 开始遵循它的策略π,那么该状态的价值有多大。
作为一个简单的例子,再考虑一下图 13.1 中的状态。[注意:正如我们在本章前面所做的,我们只考虑大车位置和杆子位置,因为我们不能从这个静止图像推测大车速度或杆子角速度。假设我们的代理人已经有一些合理合理的政策π来平衡极点,那么我们期望它在这种状态下获得的累积贴现未来回报可能相当大,因为极点接近垂直。于是,这个特定状态 s 的值 V π ( s )为高。
另一方面,如果我们想象极点角度接近水平的状态 s h,它的值——Vπ(sh)——更低,因为我们的代理已经失去了对极点的控制,因此该事件很可能在接下来的几个时间步长内终止。
q 值函数
Q- 价值函数建立在价值函数的基础上,不仅考虑状态:它还考虑特定动作与给定状态配对时的效用——也就是说,它重新组合了我们的老朋友,即由(s,a)表示的状态-动作对。因此,在价值函数由 V π (s)定义的情况下,Q 值函数由 Qπ定义( s,a )。[注意:Q 值中的“Q”代表质量,但是你很少听到从业者称之为“质量-价值函数”]
让我们再次回到图 13.1。将动作左(姑且称之为a1)与状态 s 配对,然后从那里遵循一个极点平衡策略π,通常应该对应于一个较高的累积贴现未来回报。因此,这个状态-动作对( s,aL )的 Q 值是高的。
相比之下,让我们考虑将图 13.1 中的动作右(我们可以称之为 aR )与状态 s 配对,然后从那里遵循极点平衡策略π。尽管这可能不会被证明是一个惊人的错误,但相对于采取左行动,累积的贴现未来回报可能会稍微低一些。在这种状态下 s ,向左的动作通常会使竿子变得更加垂直(使竿子能够更好地控制和平衡),而向右的动作通常会使竿子变得更加水平——因此,控制更少,并且该事件更有可能提前结束。总而言之,我们期望( s,aL )的 Q 值高于 (s,aR )的 Q 值。
估计最佳 Q 值
当我们的代理遇到某个状态 s 时,我们希望它能够计算出最优 Q 值,记为Q∫(s,a) 。我们可以考虑所有可能的行动,具有最高 Q 值的行动——最高的累积贴现未来回报——将是最佳选择。
同样,即使对于相对简单的强化学习问题,最终计算最优策略π∫(方程 13.1)在计算上也是困难的,因此,最终计算最优 Q 值 Q∫(s,a)在计算上也是困难的。通过深度 Q 学习的方法(如第 4 章中介绍的;见图 4.5),但是,我们可以利用人工神经网络来估计最佳 Q 值可能是多少。这些深度 Q 学习网络(简称 dqn)依赖于这个等式:
在这个等式中:
- 最佳 Q 值*(Q∫(s,a)* )正在被逼近。
- Q 值近似函数除了其通常的状态 s 和动作 a 输入之外,还结合了神经网络模型参数(由希腊字母 theta,θ表示)。这些参数是我们从第 6 章开始熟悉的常用人工神经元权重和偏差。
在推车杆游戏的环境中,装备有等式 13.2 的 DQN 代理人可以在遇到特定状态 s 时,计算将动作 a(左或右)与该状态配对是否对应于更高的预测累积折扣未来奖励。比方说,如果预测左与更高的累积贴现未来回报相关,那么这就是应该采取的行动。在下一节中,我们将编写一个 DQN 代理,它包含一个 Keras 构建的密集神经网络,以演示如何实现这一点。
For a thorough introduction to the theory of reinforcement learning,
including deep Q-learning networks, we recommend the recent edition of
Richard Sutton (Figure 13.6) and Andrew Barto’s Reinforcement Learning:
An Introduction,15 which is available free of charge at bit.ly/SuttonBarto.
定义 DQN 代理
在我们的 Cartpole DQN Jupyter 笔记本中提供了我们的代码,用于定义一个学习如何在环境中行动的 DQN 智能体——在这个特定的例子中,它恰好是来自 OpenAI Gym 环境库的 Cart-Pole 游戏。[注意:我们的 DQN 代理直接基于 Keon Kim 的,可从他在 bit.ly/keonDQN.的 GitHub 库获得]它的依赖关系如下:
import random
import gym
import numpy as np
from collections import deque
from keras.models import Sequential from keras.layers import Dense
from keras.optimizers
import Adam
import os
名单中最重要的新成员是gym
,开放式人工智能健身房本身。像往常一样,我们在应用时会更详细地讨论每个依赖项。我们在笔记本顶部设置的超参数在示例 13.1 中提供。
示例 13.1 大车极 DQN 超参数
env = gym.make("CartPole-v0")
state_size = env.observation_space.shape[0]
action_size = env.action_space.n
batch_size = 32
n_episodes = 1000
output_dir = "model_output/cartpole/"
if not os.path.exists(output_dir):
os.makedirs(output_dir)
让我们一行一行地看看这段代码:
- 我们使用开放式人工智能健身房
make()
方法来指定我们希望我们的代理与之交互的特定环境。我们选择的环境是车杆游戏的零版本(v0),我们把它赋给变量env
。在你自己的时间里,你可以选择一个替代的开放人工智能健身房环境,如图 4.13 所示。
从环境中,我们提取两个参数:
示例 13.2 中提供了创建 DQN 代理 Python 类的大量代码,称为DQNAgent
。
示例 13.2 深度 Q 学习代理
class DQNAgent:
def __init__(self, state_size, action_size):
self.state_size = state_size
self.action_size = action_size
self.memory = deque(maxlen=2000)
self.gamma = 0.95
self.epsilon = 1.0
self.epsilon_decay = 0.995
self.epsilon_min = 0.01
self.learning_rate = 0.001
self.model = self._build_model()
def _build_model(self):
model = Sequential()
model.add(Dense(32, activation="relu",
input_dim=self.state_size))
model.add(Dense(32, activation="relu"))
model.add(Dense(self.action_size, activation="linear"))
model.compile(loss="mse",
optimizer=Adam(lr=self.learning_rate))
return model
def remember(self, state, action, reward, next_state, done):
self.memory.append((state, action,
reward, next_state, done))
def train(self, batch_size):
minibatch = random.sample(self.memory, batch_size)
for state, action, reward, next_state, done in minibatch:
target = reward # if done
if not done:
target = (reward +
self.gamma *
np.amax(self.model.predict(next_state)[0]))
target_f = self.model.predict(state)
target_f[0][action] = target
self.model.fit(state, target_f, epochs=1, verbose=0)
if self.epsilon &gt; self.epsilon_min:
self.epsilon *= self.epsilon_decay
def act(self, state):
if np.random.rand() &lt;= self.epsilon:
return random.randrange(self.action_size)
act_values = self.model.predict(state)
return np.argmax(act_values[0])
def save(self, name):
self.model.save_weights(name)
初始化参数
我们从示例 13.2 开始,用一些参数初始化该类:
state_size
和action_size
是特定于环境的,但是在车杆游戏中分别是 4 和 2,如前所述。memory
用于存储记忆,这些记忆可以随后回放,以便训练我们 DQN 的神经网络。内存被存储为一个名为 deque (读作“deck”)的数据结构的元素,它与一个列表相同,只是——因为我们指定 maxlen = 2000——它只保留 2000 个最近的内存。也就是说,每当我们试图将第 2001 个元素追加到 deque 上时,它的第一个元素就会被删除,总是留给我们一个包含不超过 2000 个元素的列表。gamma
是我们在本章前面介绍的贴现因子(又称衰变率)γ(见图 13.4)。此代理超参数在未来时间步长中贴现预期奖励。有效γ值通常接近 1(例如,0.9、0.95、0.98 和 0.99)。越接近 1,我们对未来回报的折现就越少。[注意:事实上,如果你设定γ = 1(我们不建议这样),你根本不会贴现未来的回报。]调整强化学习模型(如γ)的超参数可能是一个复杂的过程;在本章快结束时,我们将讨论一个叫做 SLM Lab 的工具,它可以有效地实现这一目标。epsilon
——用希腊字母ε表示——是另一个强化学习超参数,叫做探索率。它代表了我们的代理的随机行动(使它能够探索这样的行动对下一个状态 st+1 的影响和环境返回的回报 r 的影响)相对于我们允许它的行动利用它的神经网络通过游戏积累的现有“知识”的频率的比例。在玩任何一集之前,代理人都没有游戏经验可利用,所以最常见的做法是 100%的时间开始探索;这就是我们设置epsilon = 1.0
的原因。- 随着代理获得游戏经验,我们非常缓慢地衰减它的探索速度,以便它可以逐渐利用它所学到的信息(希望使它能够获得更多的奖励,如图 13.7 所示)。也就是说,在代理播放的每一集的结尾,我们用它的ε乘以
epsilon_decay
。此超参数的常见选项为 0.990、0.995 和 0.999。[注意:类似于设置γ = 1,设置epsilon_decay
= 1 将意味着ε根本不会衰减——也就是说,以连续的速率探索。对于这个超参数来说,这是一个不寻常的选择。] epsilon_min
是勘探率ε可以衰减到多低的下限(最小值)。该超参数通常设置为接近零值,例如 0.001、0.01 或 0.02。我们将它设置为 0.01,这意味着在ε衰减到 0.01 之后(在我们的案例中,到第 911 集时将会如此),我们的代理将只探索它所采取的 1%的动作——在其他 99%的时间里利用它的游戏体验。[注意:如果在这个阶段这个探索率的概念有些不清楚,当我们稍后检查我们代理的逐集结果时,它会变得更清楚。]learning_rate
是我们在第 8 章中介绍的相同的随机梯度下降超参数。- 最后,
_build_model()
——通过包含其前导下划线——被建议作为一个私有方法。这意味着这个方法只推荐在“内部”使用——也就是说,只由类DQNAgent
的实例使用。
建立智能体的神经网络模型
例 13.2 的_build_model()
方法致力于构建和编译一个 Keras 指定的神经网络,该网络将环境状态 s 映射到每个可用动作 a 的智能体 Q 值。一旦通过游戏训练,智能体将能够使用预测的 Q 值来选择它应该采取的特定动作,给定它遇到的特定环境状态。在这个方法中,没有你在这本书里没见过的东西:
- 我们指定一个顺序模型。
- 我们在模型中添加了以下几层神经元。
- 第一个隐藏层是致密的,由 32 个 ReLU 神经元组成。使用
input_dim
参数,我们指定网络输入层的形状,它是环境状态信息 s 的维度。在 cart-pole 环境中,这个值是一个长度为 4 的数组,每个元素对应一个 Cart 位置、Cart 速度、Pole 角度和 Pole 角速度。[注意:在 Cart-Pole 以外的环境中,状态信息可能要复杂得多。例如,对于像 Pac-Man 这样的 Atari 视频游戏环境,状态 s 将由屏幕上的像素组成,这将是二维或三维输入(分别用于单色或全色)。在这种情况下,第一个隐藏层的更好选择是卷积层,如Conv2D
(见第 10 章)。] - 第二隐层也很密集,有 32 个 ReLU 神经元。如前所述,我们将通过在本章后面讨论 SLM 实验室工具来探索超参数选择——包括我们如何专注于特定的模型架构。
- 输出层具有对应于可能动作数量的维度。[注:本书中任何先前只有两种结果的模型(如第 11 和 12 章)都使用了单个乙状结肠神经元。在这里,我们为每个结果指定单独的神经元,因为我们希望我们的代码能够超越车杆游戏。虽然 Cart-Pole 只有两个动作,但许多环境有两个以上的动作。]在推车杆游戏中,这是一个长度为 2 的数组,一个元素代表左边的*,另一个元素代表右边的*。与回归模型一样(见示例 9.8),使用 DQNs,直接从神经网络输出 z 值,而不是转换成 0 到 1 之间的概率。为了做到这一点,我们指定了
linear
激活函数,而不是 sigmoid 或 softmax 函数,否则这本书将占主导地位。**
- 输出层具有对应于可能动作数量的维度。[注:本书中任何先前只有两种结果的模型(如第 11 和 12 章)都使用了单个乙状结肠神经元。在这里,我们为每个结果指定单独的神经元,因为我们希望我们的代码能够超越车杆游戏。虽然 Cart-Pole 只有两个动作,但许多环境有两个以上的动作。]在推车杆游戏中,这是一个长度为 2 的数组,一个元素代表左边的*,另一个元素代表右边的*。与回归模型一样(见示例 9.8),使用 DQNs,直接从神经网络输出 z 值,而不是转换成 0 到 1 之间的概率。为了做到这一点,我们指定了
*** 正如我们在编译回归模型(示例 9.9)时所指出的,当我们在输出层使用线性激活时,均方差是成本函数的合适选择,因此我们将compile()
方法的 loss 参数设置为mse
。我们回到我们的日常优化选择,Adam
。**
**## 记忆游戏
在任何给定的时间步长 t,也就是说,在强化学习循环的任何给定迭代过程中(参见图 13.3),DQN 代理的remember()
方法运行,以便在其memory
队列的末尾添加一个内存。该队列中的每个存储器由关于时间步长 t 的五条信息组成:
- 代理遇到的状态 s[t]
- 代理采取的动作aT2
- 环境返还给代理人的报酬rT2
- next_state s[t+1] 环境也返回给代理
- 如果时间步长 t 是剧集的最后一次迭代,则布尔标志 done 为真,否则为
false
通过记忆回放进行训练
DQN 代理的神经网络模型通过回放游戏的记忆来训练,如例 13.2 的train()
方法所示。该过程从从memory
队列(最多可容纳 2000 个内存)中随机抽取 32 个minibatch
(根据代理的batch_size
参数)内存开始。从一个更大的主体经历集合中抽取一小部分记忆样本,可以提高模型训练的效率:比如说,如果我们使用 32 个最近的记忆来训练我们的模型,那么这些记忆中的许多状态会非常相似。为了说明这一点,考虑一个时间步长 t ,其中小车位于某个特定位置,杆接近垂直。相邻的时间步长(例如,t-1, t + 1, t + 2)也可能处于几乎相同的位置,极点处于接近垂直的方向。通过从大范围的记忆中取样,而不是从时间上最接近的记忆中取样,模型将在每一轮训练中获得更丰富的经验来学习。
对于 32 个采样的记忆中的每一个,我们进行如下一轮模型训练:如果done is True
——也就是说,如果记忆是一集的最后一个时间步——那么我们明确地知道,从这个时间步可以获得的最高可能的奖励等于reward
r[t] 。因此,我们可以设置target
奖励等于reward
。
否则(即if done is False
)我们会尝试估计target
的回报——最大的未来贴现回报——可能是多少。我们从已知的reward
r[t] 开始进行估算,然后加上贴现因子γ。]最大未来 Q 值。通过将下一个(即未来)状态 s[t+1] 传递到模型的predict()
方法中来估计可能的未来 Q 值。在 Cart-Pole 游戏的上下文中这样做将返回两个输出:一个输出用于左操作,另一个输出用于右操作。这两个输出中较高的一个(由 NumPy amax
函数确定)是最大的预测未来 Q 值。
无论target
是明确已知的(因为时间步长是一集的最后一步)还是使用最大未来 Q 值计算来估计的,我们都在train()
方法的for loop
中继续前进:
- 我们再次运行
predict()
方法,传入当前状态 st。和以前一样,在推车杆游戏的上下文中,这返回两个输出:一个用于左边的动作,一个用于右边的动作。我们将这两个输出存储在变量target_f
中。 - 无论代理在这个内存中实际采取了什么动作,我们都使用
target_f[0][action] = target
来用目标回报替换那个target_f
输出。[注意:我们这样做是因为我们只能根据代理人实际采取的行动来训练 Q 值估计值:我们根据next_state
s[t+1] 来估计目标值,并且我们只知道代理人在时间步长 t 实际采取的 s[t+1] 是多少。我们不知道如果代理采取了不同于它实际采取的行动,环境可能会返回到什么下一个状态。]
我们通过调用fit()
方法来训练模型。
- 模型输入是当前状态st 并且它的输出是
target_f
,它包含了我们对最大未来贴现回报的近似。通过调整模型的参数(由方程 13.2 中的 θ 表示),我们因此提高了其准确预测在任何给定状态下更有可能与未来报酬最大化相关的行为的能力。 - 在很多强化学习问题中,
epochs
可以设置为1
。我们不需要多次循环利用现有的训练数据集,而是可以廉价地参与更多集的车杆游戏(例如)来生成我们想要的尽可能多的新训练数据。 - 我们设置
verbose=0
是因为我们在这个阶段不需要任何模型拟合输出来监控模型训练的进度。正如我们稍后演示的,我们将逐集监控代理的性能。
选择要采取的行动
为了在给定的时间步长 t 选择要采取的特定动作at[t],我们使用代理的act()
方法。在此方法中,NumPy rand
函数用于对 0 到 1 之间的随机值进行采样,我们称之为 v。结合我们代理的epsilon
、epsilon_decay
和epsilon_min
超参数,此v
值将为我们确定代理是采取探索性行动还是剥削性行动:
- 如果随机值 v 小于或等于探索速率ε,则使用
randrange
功能选择随机探索动作。在早期情节中,当ε较高时,大多数动作将是探索性的。在以后的剧集中,随着ε越来越衰减(根据 epsilon_decay 超参数),代理采取的探索动作会越来越少。 - 否则——也就是说,如果随机值 v 大于ε——代理选择一个动作,该动作利用模型通过记忆重放学习的“知识”。为了利用这一知识,将
state
s[t] 传递给模型的predict()
方法,该方法为代理理论上可能采取的每个可能的动作返回一个激活输出。我们使用 NumPyargmax
函数来选择与最大激活输出相关联的动作at。[注意:回想一下,激活是线性的,因此输出不是概率;相反,它是对这一行动的贴现的未来回报。]
{注意:在前面讨论我们的DQNAgent
类的初始化参数时,我们介绍了探索性和开发性的行为模式,它们在图 13.7 中被有趣地展示出来。]
保存和加载模型参数
最后,save()
和load()
方法是一行程序,使我们能够保存和加载模型的参数。特别是对于复杂的环境,代理的性能可能是不稳定的:在很长一段时间内,代理可能在给定的环境中表现得非常好,但后来似乎完全失去了它的能力。由于这种剥落,明智的做法是定期保存我们的模型参数。然后,如果代理的性能在后面的剧集中下降,则可以从一些早期剧集中加载较高性能的参数。
与开放的健身房环境互动
创建了我们的 DQN 代理类之后,我们可以用下面这行代码初始化该类的一个实例,我们将其命名为agent
:
agent = DQNAgent(state_size, action_size)
例 13.3 中的代码使我们的agent
能够与一个开放的健身房环境交互,在我们的特殊情况下,这是一个推车杆游戏。
Example 13.3 DQN agent interacting with an OpenAI Gym environment
for e in range(n_episodes):
state = env.reset()
state = np.reshape(state, [1, state_size])
done = False
time = 0
while not done:
#env.render()
action = agent.act(state)
next_state, reward, done, _ = env.step(action)
reward = reward if not done else -10
next_state = np.reshape(next_state, [1, state_size])
agent.remember(state, action, reward, next_state, done)
state = next_state
if done:
print("episode: {}/{}, score: {}, e: {:.2}"
.format(e, n_episodes-1, time, agent.epsilon))
time += 1
if len(agent.memory) > batch_size:
agent.train(batch_size)
if e % 50 == 0:
agent.save(output_dir + "weights_"
+ "{:04d}".format(e) + ".hdf5")
回想一下,我们已经将超参数n_episodes
设置为 1000,示例 13.3 包含一个大 for 循环,允许我们的代理参与这 1000 轮游戏。游戏的每一集都由变量 e 计算,包括:
- 我们用随机的
state
[t]来用env.reset()
开始这一集。为了按照模型期望的方向将状态传递给我们的 Keras 神经网络,我们使用reshape
将其从列转换为行。[注意:我们之前在示例 9.11 中出于同样的原因进行了这种换位。]
** 我们使用代理的remember()
方法将这个时间步的所有方面(state
s[t] ,在该处采取的动作,奖励 r[t] ,下一个state
s[t+1] ,以及标志完成)保存到内存中。
我们设置state
等于next_state
,为循环的下一次迭代做准备,这将是时间步长 t + 1。* 如果剧集结束,我们将在剧集上打印汇总指标(输出示例见图 13.8 和 13.9)。* 给我们的时间步计数器time
加 1。* 如果使用代理的train()
方法,通过重放其游戏记忆来训练其神经网络参数。[注意:您可以选择将此训练步骤上移,使其位于 while 循环内。每一集将会花费更长的时间,因为你将会更频繁地训练代理人,但是你的代理人将会在更少的几集内解决车杆游戏。]* 每 50 集,我们使用代理的save()
方法存储神经网络模型的参数。*
*如图 13.8 所示,在我们代理的前 10 集的车杆游戏中,得分很低。它没能让游戏持续超过 42 个时间步(即 41 分)。
在这些初期阶段,勘探率ε从 100%开始。到第 10 集时,ε已经衰减到 96 %,这意味着代理在大约 4%的时间步长上处于开发模式(参考图 13.7)。然而,在训练的早期阶段,这些剥削行为中的大部分可能实际上是随机的。
如图 13.9 所示,到第 991 集时,我们的代理已经掌握了车杆游戏。
在最后的 10 集里,它每一集都保持了 200 个时间步长,取得了 199 的满分。到了第 911 集,28 探索率ε已经达到了 1%的最小值,所以在所有这些最后一集里,代理人在大约 99%的时间步长里都处于开发模式。从这些最后几集的完美表现来看,很明显,这些剥削行为是由一个神经网络指导的,这个神经网络受到了前几集游戏经验的良好训练。
正如本章前面提到的,深度强化学习代理经常表现出挑剔的行为。当你训练你的 DQN 代理玩推车游戏时,你可能会发现它在后来的几集里表现很好(比如说,在第 850 集或第 900 集左右连续出现 200 次每集),但在最后一集(第 1000 集)时表现很差。如果最终是这种情况,您可以使用 load()方法从一个更早的、更高性能的阶段恢复模型参数。
SLM 实验室的超参数优化
在本章的许多地方,我们一口气介绍了一个超参数,然后在下一口气中我们指出,我们稍后将介绍一个名为 SLM Lab 的工具,用于调整该超参数。好了,那一刻已经到来![注:“SLM”是奇怪回路机器的缩写,奇怪回路概念与关于人类意识经验的想法有关。参见 Hofstadter,R. (1979 年)。Gödel,埃舍尔,巴赫。纽约:基础书籍。]
SLM Lab 是由 Wah Loon Keng 和 Laura Graesser 开发的深度强化学习框架,他们是加州的软件工程师(分别在移动游戏公司 MZ 和谷歌大脑团队工作)。该框架在本报告中可用,并具有与深度强化学习相关的广泛实施和功能:
- 它允许使用许多类型的深度强化学习代理,包括 DQN 和其他人(即将在本章中)。
- 它提供了模块化的代理组件,允许你设计出你自己的新型深层 RL 代理。
- 你可以直接把代理放到许多不同环境库中的环境中,比如 OpenAI Gym 和 Unity(见第 4 章)。
- 代理可以同时在多个环境中接受培训。例如,单个 DQN 代理可以同时解决 OpenAI 健身房推车杆游戏和 Unity 平衡球游戏 Ball2D。
- 您可以将您的代理在给定环境中的表现与其他人的努力进行比较。
至关重要的是,对于我们的目的,SLM 实验室还提供了一种无痛的方法来试验各种代理超参数,以评估它们在给定环境中对代理性能的影响。例如,考虑图 13.10 所示的实验曲线图。在这个特殊的实验中,一名 DQN 特工被训练在一系列不同的试验中玩推车杆子游戏。每一次试验都是一种药剂的实例,具有为多次发作训练的特定的、不同的超参数。试验之间的一些超参数变化如下。
- 密集网络模型体系结构
- [32]:单个隐藏层,具有 32 个神经元
- [64]:也是一个单独的隐藏层,这次有 64 个神经元
- [32,16]:两个隐藏层;第一组有 32 个神经元,第二组有 16 个
- [64,32]:也有两个隐藏层,这次第一个隐藏层有 64 个神经元,第二个隐藏层有 32 个神经元
- 跨所有隐藏层的激活功能
- 乙状结肠的
- 双曲正切
- 热卢
- 优化器学习率(η),范围从零到 0.2
- 探索率(ε)退火,其范围从 0 到 100[注:退火是ε衰变的替代物,用于相同的目的。在ε和ε_ min 超参数设置为固定值(分别为 1.0 和 0.01)的情况下,退火中的变化将调整ε_ decay,使得在指定的情节中将达到 0.01 的ε。例如,如果退火设置为 25,那么ε将以一定的速率衰减,使得它从第一集的 1.0 均匀降低到 25 集之后的 0.01。如果退火设置为 50,那么ε将以这样的速率衰减,即从第一集的 1.0 均匀降低到 50 集后的 0.01。]
SLM 实验室提供了许多用于评估模型性能的指标(其中一些可以沿着图 13.10 的纵轴看到):
- 实力:这是对代理获得的累积奖励的衡量。
- 速度:这是代理能够
多快达到它的强度(也就是多少集)。 - 稳定性:在代理解决了如何在环境中表现良好的问题后,这是对它在后续事件中如何保持其解决方案的度量。
- 一致性:这是一种在具有相同超参数设置的试验中药剂性能重现性的度量。
Fitness :同时考虑上述四个
指标的总体概要指标。使用图 13.10 捕获的实验中的适合度度量,似乎以下超参数设置对于玩推车杆游戏的 DQN 代理是最优的:
- 一种单隐层神经网络架构,单层中有 64 个神经元,性能优于 32 个神经元的模型。
- 隐层神经元的双曲正切激活函数。
- 大约 0.02 的低学习率(η)。
- 退火超过 10 集的探索率(ε)试验优于退火超过 50 或 100 集的试验。
运行 SLM 实验室的细节超出了本书的范围,但是这个库在 https://github.com/kengz/SLM-Lab.有很好的记录
DQN 以外的代理人
在深度强化学习的世界中,像我们在本章中构建的深度 Q 学习网络相对简单。值得称赞的是,DQNs 不仅(相对而言)简单,而且相对于许多其他深度 RL 代理,它们还能有效地利用可用的训练样本。也就是说,DQN 代理商确实有缺点。最值得注意的是:
- 如果在给定的环境中,状态-动作对的可能数量很大,那么 Q 函数会变得非常复杂,因此估计最佳 Q 值 Q *变得很难。
- 即使在计算上很容易找到 Q *的情况下,相对于其他一些方法,DQN 也不擅长探索,因此 DQN 无论如何也不会收敛到 Q *上。
因此,即使 dqn 是样本有效的,它们也不适用于解决所有问题。
为了结束这一深度强化学习章节,让我们简单介绍一下 DQNs 之外的代理类型。如图 13.11 所示,深层 RL 代理的主要类别包括:
- 价值优化:这些包括 DQN 智能体及其衍生物(如双 DQN、决斗 QN)以及通过优化价值函数(包括 Q 值函数)解决强化学习问题的其他类型智能体。
- 模仿学习:这一类别的代理(例如,行为克隆和条件模仿学习算法)旨在模仿通过演示教给他们的行为,例如,向他们展示如何将餐盘放在碗架上或如何将水倒入杯中。虽然模仿学习是一种迷人的方法,但它的应用范围相对较小,我们在本书中不做进一步讨论。
- 模型优化:这类智能体学习在给定的时间步长内,根据( s,a )预测未来状态。这种算法的一个例子是蒙特卡罗树搜索(MCTS),我们在第四章中介绍了 AlphaGo。
- 策略优化:这类 Agents 直接学习策略*,即直接学习图 13.5 所示的策略函数π。我们将在下一节更详细地讨论这些。*
*
策略梯度和强化算法
回想一下图 13.5,强化学习代理的目的是学习一些将状态空间 S 映射到动作空间 a 的策略函数π。使用 DQNs,实际上使用任何其他值优化代理,π是通过估计一个值函数间接学习的,例如最优 Q 值 Q*。对于策略优化代理,π是直接学习的。
策略梯度(PG)算法可以直接在π上执行梯度 ascent32,例如一种特别著名的强化学习算法,称为“强化”。33 像“强化”这样的 PG 算法的优势在于,它们可能会收敛到一个相当最优的解决方案,34 因此它们比 DQN 这样的价值优化算法更适用。代价是 PGs 的一致性较低。也就是说,相对于 DQN 等价值优化方法,它们的性能差异更大,因此 PGs 往往需要更多的训练样本。
演员-评论家算法
如图 13.11 所示,行动者-批评家算法是一个 RL 代理,它结合了价值优化和策略优化方法。更具体地说,如图 13.12 所示,演员-评论家结合了 Q-学习和 PG 算法。在高层次上,所得到的算法包括一个循环,该循环在以下各项之间交替:
- Actor:决定采取行动的 PG 算法。
- 批评家:一种 Q 学习算法,它批评演员选择的动作,提供如何调整的反馈。它可以利用 Q-learning 中的效率技巧,如记忆回放。
从广义上讲,行动者-批评家算法让人想起第 12 章的生成性敌对网络。GANs 在环路中有一个发电机网络和一个鉴别器网络,前者产生假图像,后者对其进行评估。actor-critic 算法在一个循环中有一个 actor 和一个 critic,前者采取由后者评估的动作。
actor-critic 算法的优点是,与 DQN 相比,它可以解决更广泛的问题,而相对于增强算法,它的性能差异更小。也就是说,由于 PG 算法的存在,演员-评论家仍然有些样本效率低下。
虽然实现增强和 actor-critic 算法超出了本书的范围,但是您可以使用 SLM Lab 自己应用它们,并检查它们的底层代码。
摘要
在这一章中,我们介绍了强化学习的基本理论,包括马尔可夫决策过程。我们利用这些信息构建了一个深度 Q 学习代理,解决了 Cart-Pole 环境。最后,我们介绍了 DQN 之外的深度强化学习算法,比如强化和演员评论。我们还描述了 SLM Lab——一个深度 RL 框架,具有现有的算法实现以及用于优化代理超参数的工具。
本章结束了本书的第三部分,第三部分提供了机器视觉(第 10 章)、自然语言处理(第 11 章)、艺术生成模型(第 12 章)和顺序决策代理的实际应用。在第四部分,也是本书的最后一部分,我们将为你提供一些松散的指导,让这些应用适应你自己的项目和爱好。****
定义指标以推动机器学习模型的采用和价值
原文:https://www.dominodatalab.com/blog/defining-clear-metrics-to-drive-model-adoption-and-value-creation
企业数据科学最大的讽刺之一是,尽管数据科学团队擅长使用概率模型和诊断分析来预测收入或确定资产的潜在价值流,但在大多数情况下,很少有分析技术应用于他们衡量数据科学计划价值的方式。人们常说,企业内部没有任何变化,因为你已经建立了一个模型。
在某些情况下,数据科学确实会产生直接创收的模型,例如针对人们提供可以立即兑现的优惠的情境交易引擎。但是在大多数情况下,模型是价值创造的推动者,通过转变过程来创造新的效率或收入,或者通过实现更好的决策。
这是挑战的一部分,评估一个好决策的价值是困难的。
事后回顾糟糕决策对资产负债表的影响实在是太容易了。尽管如此,我们经常会失去关于可能影响底线结果的输入、假设和外部因素的背景。但是好的决策呢?我们如何跟踪通过更好的决策支持(如机器学习模型或诊断可视化)实现的价值,而不是由经验丰富的经理做出决策?
在数据科学项目的启动阶段,根据关键成功指标进行调整
数据科学家需要更好地在组织内部推销他们自己的成功。展示这些成功的一个关键要素是在任何项目启动阶段为利益相关者设定明确的期望。当你在设计你的问题陈述和与现有数据相关的初始假设时,开始解释你可以用什么指标来衡量有意义的成功。
这些指标可以分为三个主要类别
- 领先指标
- 把这些看作是一个好的迹象,表明你正在采取的行动和活动将会带来积极的结果。这些信息可以是销售队列中处理的机会总量,或者是基于建议和提示记录在职业安全平台中的潜在健康和安全风险数量。
- 滞后指标
- 这些指标只能在完整的预测阶段结束时进行测量;也就是说,如果我们预测某种商品的价格将会上涨,并且我们采取了行动,比如设定一个期货合约来创造一个固定价格,那么我们只能在商品价格刷新时衡量这种预测是否成功。这为我们提供了识别模型性能的真实指标。
- 使用/健康指标
- 跟踪模型的总体使用情况和运行状况对于将更多数据科学项目转化为数据科学产品至关重要,数据科学产品是最终用户用来帮助转变业务运营和改进决策的工具。这些常常被数据科学团队遗忘,但最终会导致理解任何摩擦点。模型结果可能需要迭代,以便在业务中更有影响力。
如何创建简明的指标来设定更清晰的预期
就像在工作描述中写关键绩效指标一样,清晰、简洁、精确的指标非常重要。
评估模型的良好指标应包括以下内容:
- 指标类型(领先/滞后/使用)
- 度量名称
- 指标的描述
- 可以评估指标的频率
- 该指标为何重要的基本原理
就指标的基本原理达成一致,并确定可以跟踪该指标的频率,这是与您的业务利益相关者设定明确预期的一个重要阶段。
通过与您的利益相关者就可以使用哪些指标来评估可能的性能达成一致,意味着您不必等待一个完整的预测周期来评估模型的影响,反过来也意味着您能够确定在模型的初始构建中可能没有确定的其他重要因素。
如果我们只跟踪落后的绩效指标,那么我们就不能根据领先指标积极地影响一个模型将如何产生结果,我们可以以更快的节奏来衡量这些领先指标。
例如,许多销售组织每季度跟踪销售情况。这是因为完成一项销售活动需要很长时间。如果我们只在销售周期结束时审查模型的性能,我们可能会错过可以帮助我们改进或迭代模型本身以取得更大成功的主要元素。
我们可能会通过对问题的探索性分析来确定与成功的良好结果相关的度量。
Metric examples for a model optimizing sales results
假设我们已经建立了一个模型,根据人口统计分析和下一个最佳行动风格的产品推荐来识别具有最高成交率的潜在机会。我们还利用这种模式通过数字营销活动锁定潜在客户,因此,我们现在希望看到我们的机会渠道会显著扩大。
我们的愿望是通过更好地使产品符合他们的要求,并考虑捆绑销售等其他策略,来提高我们在渠道中的机会总量,并增加这些机会的价值。
我们可以通过查看我们渠道中的潜在机会总数、这些机会的交易得分(即销售人员认为交易可能完成的可能性)以及我们的机会相对于销售目标的总价值来跟踪这一点。
因为这些指标不需要我们是否成功完成销售的最终结果,我们可以以更高的频率跟踪它们,并使用它们来确定我们的模型结果对绩效产生的积极影响。
相反,如果我们没有看到对这些指标的积极影响,我们需要改进我们的模型运行方式以创造更好的结果,在这种情况下,我们将根据模型结果的真实测试所产生的新见解来迭代模型。
跟踪这些指标有助于我们理解我们的模型在初始阶段是否成功。它们还通过让销售团队更好地了解模型的表现,帮助我们推动采用。
利用使用/健康指标推动模型最终用户采用
正如 Gartner、Harvard 和其他组织提醒我们的那样,大多数模型无法在现代企业组织中投入生产。虽然许多人认为这个问题是技术部署挑战的问题,我们最近与 DataIQ 进行的一项调查指出,最终用户对模型的采用是主要的绊脚石。
越来越需要从产品管理原则中抽出一页来部署数据科学项目。
- 数据科学项目可以被认为是代码、计算和某种接口。
- 在数据科学产品中,我们开始考虑终端用户参与、模型结果和与之交互的工具的迭代设计,以及持续的管理、监控和模型价值的测量。
考虑到这一点,我们必须确定健康和使用指标,使我们能够了解我们的模型结果如何被我们的最终用户采用,这些最终用户对该工具的看法如何,以及我们应该考虑进行哪些潜在的更改以使模型结果更具影响力。
再次使用我们的销售示例,我们确定了以下指标来跟踪我们的模型结果的使用情况/健康状况
- 销售代理查看模型结果的次数。
- 一项调查,旨在确定销售代理认为该模型与其销售流程的相关性。
- 通过投票来确定任何潜在的改进或迭代,从而改进工具。
这些指标允许我们比模型成功的指标更深入。它们支持数据科学团队和模型最终用户之间的双向交流。任何与模型性能相关的怪癖或者任何模型没有被采用的地方都可以被识别出来,并包含在一个整体的入职框架中。
Example model adoption framework for end-users
使用这些指标来制定推广计划有助于我们获得一致的早期反馈,这不依赖于我们评估模型是否有效的漫长销售周期。
包括对我们的用户进行投票,以了解他们如何看待模型以及他们可能做出的任何更改,这使我们进一步了解我们可能无法单独获得结果指标,并确保他们有一种方式来传达他们的想法,并感受到他们参与了数据科学产品本身的整体成功。
在采用的各个阶段,这些指标有助于保持业务部门的参与,并了解模型如何帮助推动其部门的成果,同时也意味着,在确定数据科学部门产生的价值时,我们有了更清晰的途径来确定我们的模型在业务的不同部分实现的商业价值。
结论
许多企业数据科学团队认为在个人层面跟踪数据科学项目的价值是一件棘手的事情。这通常是因为数据科学使业务部门能够更好地做出决策或改变他们的运营方式,这意味着直接的价值并不总是容易找到。
确保所有数据科学计划都包括成功的措施和指标,这是与业务部门保持一致并对模型结果如何实现价值产生明确预期的关键部分。尽管如此,这些度量标准不能仅仅依赖于最终结果——比如基于模型推荐的成功销售。
将这些指标整合到您的模型采用框架中有助于在业务最终用户和数据科学家之间建立更好的一致性。这有助于确保更多的模型投入生产,不仅仅是技术生产,还包括最终用户对模型结果的采纳。
从模型驱动的保险产品推荐中实现 200 万欧元的年利润增量
ConTe.it 和 Admiral Group Europe 的数据科学
在全球范围内,保险公司面临着消费者对便利性、速度和服务的日益增长的期望。许多人转向数据科学和实时分析来推动创新服务和能力。
以 ConTe.it 为例。总部位于罗马的 ConTe.it 是专门从事汽车和摩托车保险的直接保险公司 Admiral Group 的意大利品牌。Admiral Group 及其品牌在全球拥有 500 多万客户,在竞争激烈的保险业中,创新、便利和客户满意度已经成为他们的标志。
ConTe.it 数据科学主管 Francesco Maggina 预计,在未来五年内,机器学习将成为公司 DNA 的一部分,并改变一切,从他们如何为客户定价到他们处理索赔的速度。为此,他和来自该公司西班牙(Admiral Seguros 品牌)和法国(L’olivier 品牌)品牌的数据科学领导者采用了 Domino 数据科学平台来加速算法模型的开发和部署,这将有助于他们更好地了解和服务他们的客户。在 Domino 上构建和部署的一个新的推荐引擎已经使 ConTe.it 能够更快地引导客户找到他们需要的产品。它提高了客户满意度,并有望增加 200 万欧元的利润,通过这些有针对性的客户建议已经获得了超过 50 万欧元的额外收入。
下面的信息图表总结了他们的故事。点击阅读案例研究了解更多详情。
戴尔的 Randi Ludwig 分享了她对数据科学团队的看法
原文:https://www.dominodatalab.com/blog/dell-s-randi-ludwig-shares-her-perspective-on-data-science-teams
几个月前,达美乐和戴尔联手在得克萨斯州奥斯汀举办了一场数据科学盛会。在那次活动中,戴尔数据科学家 Randi Ludwig 分享了她对营造协作环境以培养忠诚的数据科学团队的见解。这篇博客概括了 Randi 关于数据科学社区的数据科学弹出式演讲,并展望了她在 Rev 2 数据科学领袖峰会上关于联合数据科学团队结构的演讲。
Randi 开始了她的数据科学弹出会议,强调了她的教育背景和各种学习风格的经验,以强调个人通过做或教授他人某个主题来学习。这种对学习的洞察非常重要,因为她讨论了信任、开放的沟通渠道以及激励团队和个人参与作为建立成功的数据科学团队的三个基本要素。
建立信任
为了在工作场所建立信任,雇主需要创造一个社区能够繁荣的环境。在这种情况下,创建一个数据科学家社区需要他们有机会参与进来,相互了解,排除故障,并最终相互教授和学习。Randi 解释说,一旦在社区中建立了关系,团队成员就会敞开心扉。这是营造学习和教学环境的关键。
为了实现创新,团队成员需要感觉到他们可以探索新事物并提出问题。与他人讨论新的话题和想法可能会令人生畏,尤其是在潜在关系不存在的情况下。数据科学家需要有一个试错的地方;创新和进步的安全之地。
作为经理或企业,你为员工创造的参与和讨论想法的环境越多,他们就越有可能跳出框框思考,并在有意见时畅所欲言。这可以最终促进产品改进和问题解决方案,并增加员工保留率。
“不舒服就不提问,要会提问才能学习。”- Randi Ludwig,戴尔数据科学家
开放的交流渠道
数据科学家的部分学习和改进过程取决于他们在一个参与性和信息可访问的环境中工作。创建一个在线空间或为此提供一个平台对于团队共享数据和构建模型至关重要。没有协作和一起实践和学习的能力,改进和创新就会受到阻碍。根据 Randi 的说法,数据科学家在持续对话、结合模型开发和团队合作的环境中茁壮成长。
与 Github 允许软件工程师在不同时间存放代码和访问数据类似,数据科学家也在不断地构建模型和探索数据集。共享平台的可访问性是一种需要。(对戴尔来说,这就是 Domino 的用武之地。)
激励团队和个人
让员工参与到协作环境中可能很困难。以物理和数字方式创造环境是一回事,但如果没有直接的要求,积极参与可能会很难。Randi 表示,这是公司可以为员工提供独特激励的地方。
激励的例子包括与参加数据相关会议的领导团队共度时光;HomeAway 证明了这一点,它提供了公司领导团队参与的正式学习机会。旨在探索某些产品主题并与高层管理人员接触的网络活动是激励员工参与的一种激励。Randi 提到,直接资助数据课程也是激励整个企业参与的一种强有力的方式。这不应该仅限于数据科学家,还应该对组织中希望了解正在进行的工作或可能过渡到数据科学职位的其他人开放。
认可那些愿意并积极参与内部社区来学习、进步和增强你的产品的参与者。所有数据科学团队都应该学习和改进他们的工作。
在员工之间建立信任,建立开放的沟通渠道,激励个人和团队,营造一个协作的工作环境,培养忠诚的数据科学家,让他们感觉自己是某个事物的一部分。
团队结构
5 月 23 日,Randi 将根据她在戴尔的经历,以《星际迷航》的风格讨论建立联合数据科学团队结构的好处。如果您对以下会议描述感兴趣,请考虑加入我们在纽约举办的 Rev 活动!
大胆行动–在戴尔构建联合数据科学
您如何确保数据科学家与业务紧密相关,并构建能够有效解决关键业务问题的解决方案?您可以在业务部门中嵌入数据科学家。
“我把她所有的都给她了,船长!”
那么,对于那些分散的数据科学家来说,如何摆脱孤岛,确保最佳实践,并避免返工呢?你可以把它们合并成一个集中的组织。
“这是非常不合逻辑的。”
嵌入式与集中式——如果你能同时拥有两个世界的优势会怎样?在戴尔服务组织内,他们实施了联合数据科学模型。Randi 将讲述戴尔组织的演变、要避免的陷阱以及 champion 的优势。
让我们长寿,共同繁荣!
关于兰迪·路德维希的更多信息
Randi R. Ludwig 是戴尔技术支持和部署服务部的数据科学家。她为涉及戴尔产品的技术支持、保修和维修的业务问题带来了数据科学解决方案。她还专注于提高管理层对数据科学的认识,并将全球戴尔数据科学家连接到一个可以相互协作和学习的网络社区中。此外,她还是 ATX 数据科学领域女性的共同组织者,致力于促进多样性,并为该领域的新人营造一个欢迎的空间。在进入行业之前,Randi 在 UT Austin 获得了天体物理学博士学位,包括对活动星系核和学生如何学习天文学的研究,这使她获得了各种统计数据挖掘技术和多种数据集的经验。
设计一流的 MLOps 管道
原文:https://www.dominodatalab.com/blog/designing-a-best-in-class-mlops-pipeline
如今,数据科学家面临的最大挑战之一是以高效且可重复的方式将模型从开发阶段转化为生产阶段。通过这种方式,机器学习(ML)管道寻求识别该过程中涉及的步骤。一旦定义了这些步骤,就可以对其进行自动化和编排,从而简化数据科学的生命周期。
简而言之,机器学习操作( MLOps )管道将 ML 工作流的每个部分抽象为可操作的模块,这反过来允许数据科学生命周期自动化。这有助于更快地开发、培训、验证和部署生产模型。
在本文中,您将了解典型的 ML 管道的结构,以及在设计一流的 MLOps 管道时要考虑的最佳实践和技巧。
MLOps 管道看起来像什么
在目前可用的许多机器学习文献中,以及在许多数据科学平台的文档中,您会发现如下所示的 ML 管道图:
如您所见,在传统的 ML 管道中有六个明确定义的阶段:
- 数据收集: 数据收集由与数据摄取相关的过程组成,包括将来自不同来源的原始数据传输到其存储位置,通常是数据库。从那里,团队成员可以访问它进行准确性和质量验证。
- 数据验证: 在此阶段,对数据的准确性和质量进行验证。
- 数据预处理: 准备好之前验证过的原始数据,以便能够被不同的 ML 工具处理。这包括将原始数据转换成适合使用的特征。
- 模型训练: 这是数据科学家通过训练和调优多个模型,然后选择最佳模型进行实验的地方。
- 模型分析和验证: 在此阶段,在将经过训练的模型部署到生产环境之前,将对其性能指标进行验证。
- 模型部署: 这个阶段包括注册一个模型,并准备好供业务使用。
对于 MLOps 管道有一种不同的思考方式,它考虑了整个 ML 模型生命周期,从项目启动的那一刻开始,直到在 projection 中对其进行监控(包括最终的再培训):
在本文的其余部分,您将了解在设计一流的 MLOps 管道时需要考虑的事项。
设计一流 MLOps 管道的最佳实践
设计同类最佳 MLOps 管道的目的是最大限度地减少模型生命周期中的摩擦。这可以通过自动化来完成;然而,说起来容易做起来难。
正如您在上一节中看到的,MLOps 管道由许多移动部分组成,因此实现它们之间的协同是复杂的,更不用说自动化了。幸运的是,随后列出的技巧和最佳实践可以帮助您的团队完成这项工作。
分而治之
因为设计 MLOps 管道可能是一项艰巨的任务,所以将它分成更小、更易于管理的步骤被认为是一种最佳实践。这里的关键是彻底定义每个过程,以便于优化和后续的自动化。
例如,在开发阶段,管道中易于优化的一个过程是为您的团队提供一个或多个 ML 框架或过程来执行实验。尽管乍一看似乎很简单,但这一步有其自身的挑战,例如软件版本之间的依赖冲突,以及确定工具所需的资源。因此,另一个有用的技巧是限制每个管道步骤的范围,以避免使其过于复杂。
理想结果的参考可以在 Domino 的自动化环境创建中找到,它允许科学家使用各种分布式计算框架和 ide,这些框架和 ide 在 Docker 映像中自动提供,并链接到您的文件和数据源。
编制 MLOps 管道时保持简单
一旦您有了明确定义的步骤,您就应该着手编排 MLOps 管道。换句话说,确定数据将如何被设计,以及当它从一个步骤移动到下一个步骤时将遵循什么方向和顺序。一个好的技巧是避免不必要的复杂性,使用 ML 编排工具来促进这项任务。然而,请记住,大多数 ML 编排系统的学习曲线往往是陡峭的,所以提到的时间节省假设您的团队已经克服了这个障碍。
如果您正在寻找这一悖论的最有效解决方案,答案就在 达美乐的 数据科学平台,这是唯一一个提供数据科学生命周期端到端编排的平台。
不要忘记记录所有的变化
设计 MLOps 流水线消耗相当多的资源。出于这个原因,记录您对管道所做的所有更改是一个最佳实践。这有助于重用或重新规划管道,从而加快新模型的开发。
另外,类似的原理也适用于你的实验。跟踪实验和模型便于复制。Domino Experiment Manager 最有价值的特性之一是它能够跟踪所有结果以及代码、数据、Docker 图像、参数和重现它们所需的其他内容。此外,Domino 的实验管理器版本自动允许您的团队对每次运行进行标记和评论,以便更好地跟踪结果并确定哪个配置得分最高。
自动化,但不忽略大局
最终,MLOps pipelines 的目标是加快交付可操作的结果,从而做出更好的业务决策。换句话说,在设计 MLOps 管道时,您的团队可能必须在功能方面做出让步,以促进自动化和流程编排。
在灵活性和复杂性之间找到理想的平衡并不容易,因为涉及到许多移动部件,而且一些设计决策会影响整个管道。正因为如此,数据科学家的核心职能技能不是为了解决 it 基础架构的技术方面和限制而设计的,这也于事无补。例如,将经过训练的模型转换成适合消费的格式。模型的容器化不同于创建一个现成的 API。DevOps 工程师,而不是数据科学家,通常处理这些任务,因此模型格式的变化可能是一个主要的不便。
幸运的是,Domino 平台允许数据科学家根据需要将模型作为 API、Docker 容器或应用程序自行发布——这一切都得益于其强大的 UI,并且不需要编写任何代码。
避免供应商锁定
在这一点上,一个及时的建议是不惜一切代价避免使用专有技术的诱惑,希望享受来自单个供应商的各种功能,而不需要您进行编排。这是一个错误,你的组织最终将为此付出代价。
这是避免供应商锁定的最佳实践,在这方面,没有什么比 Domino 更好的了——它是唯一开放的工具和语言无关的 MLOps 平台,经得起未来的考验。
请记住,模型监控不是可选的
你会发现有些管道一旦投产就忽略了监控模型的重要性。这与 ML 管道以模型部署结束的错误信念有关,这是一个违背最佳实践的严重错误,因为监控对于确保模型预测保持准确至关重要。此外,由于模型会随着时间的推移而退化,重新训练它们的需求是不可避免的。
建议记住,MLOps 管道从一开始就是循环的;一旦部署了一个模型,就必须不断地监控它的性能,以确定跳回到初始阶段的正确时机。
在 Domino,监控的重要性得到了强调,这就是为什么他们的平台会自动监控数据和模型质量漂移,以便在生产数据不再与用于培训的数据兼容时发出警报,这样数据科学家就可以及时重新培训和重新发布这些模型。
不要低估协作的力量
设计 MLOps 管道的最后一个技巧是不要低估协作的力量。如前所述,Domino 相信一流的 MLOps 管道是一个跨越整个数据科学生命周期的管道。不同的团队有时在不知道的情况下处理类似的问题,这有什么意义呢?综合所有数据科学家的知识和经验不是更有效率吗?
Domino 提供了一个集中式平台,可以自助访问工具和基础设施,数据科学家可以在这里发现、重用、复制工作,并最终节省时间和资源。
扩散模型——不仅仅是增加噪音
原文:https://www.dominodatalab.com/blog/diffusion-models-more-than-adding-noise
进入你最喜欢的社交媒体网站,使用搜索功能寻找 DALL-E。你可以查看 此链接 查看 Twitter 中的一些例子。上下滚动一点,你会看到一些乍一看很容易辨认的图像。根据所描绘的场景,如果你多注意一点,你可能会发现在某些情况下图像有些不太对劲。在最好的情况下,可能会有一点(或很多)失真,在其他一些情况下,场景是完全古怪的。不,艺术家并不打算包括这种扭曲或古怪,就此而言,很可能这位艺术家甚至不是人。毕竟,DALL-E 是一个计算机模型,之所以这么叫,是因为它是受人喜爱的皮克斯机器人 Wall-E 和超现实主义艺术家 萨瓦尔多·达利 的混合体。
你看到的图像是由文本输入数字生成的。换句话说,你提供你感兴趣的场景的描述,机器学习模型创建图像。我们生活在怎样的未来,对吗?DALL-E 模型于 2021 年 1 月由 OpenAI ,宣布,最近 DALL-E 2 于 2022 年 7 月下旬进入测试阶段。2022 年 8 月下旬,OpenAI 推出了 超涂——一种将图像延续到其原始边界之外的方法。不同的实现已经发布,您可以使用各种各样的实现。例如,看看Craiyon从文本中获得你自己的 AI 图像创作。
下面是我请求获取 jackalopes 图像的一些例子——你可能知道我把它们称为数据科学家的寓言……有关更多信息,请查看 使用 Python 的数据科学和分析。 在任何情况下,你都可以看到获得的一些描绘相当不错,例如第二行的第三个条目显示了一幅貌似真实的图画,很明显是一只长着鹿一样鹿角的野兔。在其他情况下,结果并没有那么好,例如,看看第 1 行和第 2 行的第二个条目——头部的尺寸与所选的身体明显不匹配,一个太小,另一个太大。无论如何,在克雷永(原名 DALL-E mini )创建这些例子的短暂时间内,我不会如此快速地创建这些例子。
OpenAI 发布的最初的 DALL-E 实现使用了 GPT-3 的版本,如果你需要了解更多,请查看我在这个网站上的帖子,标题为 “变形金刚-自我关注救援” 。结合对比语言-图像预训练,或简称为 剪辑 和扩散建模,DALL-E 能够生成多种风格和排列的图像。这篇博文的重点是探索扩散模型背后的东西。让我们开始吧。
什么是扩散模型?
像许多伟大的概念扩展一样,扩散模型的灵感来自物理学,在这种情况下,使用的名称并不羞于显示其根源。扩散是一个过程,其中一些东西-原子、分子、能量、像素-从一个较高浓度的区域移动到另一个较低浓度的区域。当你把糖溶解在一杯咖啡里时,你会很熟悉这一点。起初,糖粒集中在你杯子顶部的一个特定位置,如果任其自然,它们会随机移动并自行分布。如果你通过搅拌来帮助这个过程,浓度梯度会加快,你可以一边享受你的加糖咖啡,一边保持清醒。
正如我们上面提到的,机器学习中的扩散模型从非平衡热力学中的扩散中获得灵感,其中该过程增加了系统的熵。这意味着扩散过程是自发的、不可逆的,换句话说,粒子(原子、像素等。)通过过程展开,但不会自发地重新排序。根据信息论,这相当于由于添加了额外的噪声而丢失了信息。
在 Sohl-Dickstein 等人题为 “使用非平衡热力学的深度无监督学习” 的论文中,非平衡统计物理学提供的动机是他们方法的核心。这个想法是通过慢慢地扰乱和破坏手边的数据分布结构来利用扩散的影响。与物理过程不同,目的是学习反向扩散(那应该叫做集中吗?)过程来恢复和生成数据中的结构。
像在热力学方法中一样,我们定义了扩散步骤的马尔可夫链,以将系统随机噪声添加到我们的数据中。反向扩散过程的学习使我们能够从噪声中构建具有所需属性的数据样本,在这种情况下,就像下图中从嘈杂的图像到笑脸表情符号。
简而言之,我们正在讨论一个两步过程:
- 前向扩散步骤,其中系统地添加高斯噪声,直到数据实际上是噪声;和
- 一个重建步骤,我们通过使用神经网络学习条件概率密度来“去噪”数据。
考虑上面的图表,我们已经概述了两个步骤。对于来自真实数据分布(x_0 \simeq q(x) )的数据点,前向扩散过程以 T T T步向样本添加小的高斯噪声。步长由方差调度控制,使得((0,1) }^T_{t=1}中的\,并且我们得到(q(x _ t | x _ { t-1 } = n(x _ t;\sqrt{1-\beta_t} x_{t-2},\beta_t I) )。在我们的图表中,对于步骤 1,我们从( x_0 )处的笑脸表情符号开始。当我们在每一步添加噪声时,我们洗掉了原始图像。在(T \到\infty )点,我们有一个各向同性的高斯分布。
在我们的第二步,我们采取了一个嘈杂的图像,我们感兴趣的是重建我们的笑脸表情。这是基于这样的假设,即如果我们可以逆转步骤 1 中的过程,我们就可以从高斯噪声输入中重建真实样本。遗憾的是,我们不能容易地估计( q(x_{t-1} | x_t) \,因此需要学习一个模型( p_{\theta} )来逆转扩散过程。这就是图像生成的神奇之处。该模型所基于的马尔可夫公式确保了给定的反向扩散转移分布仅依赖于先前的时间步长,从而允许我们发展该过程。
当训练我们的扩散模型时,我们实际上是在寻找使训练数据的可能性最大化的反向马尔可夫转移。
使用不同方法生成图像
如果生成图像是游戏的名称,那么可能存在上述扩散模型的其他替代方案。让我们来看一些选择,并将它们与扩散模型进行比较和对比。
我们的图像生成的一种可能性是使用变分自动编码器(VAEs ),它通过将输入缩减到更低维度的潜在空间来进行编码。当我们解码结果时,模型试图重建输入,从而生成我们的图像。注意,vae 不仅被要求生成我们的图像,而且被要求以更紧凑的方式来表示它们(维度减少)。这意味着模型正在有效地学习生成训练数据的概率分布的基本特征。在某些情况下,这可能是一个缺点。
在这种情况下,通常提到的另一种可能性是使用基于流量的模型。在这种情况下,我们不使用编码器和解码器。相反,我们使用一系列可逆变换来直接模拟概率分布。我们不是对输入进行编码,而是对数据使用由神经网络参数化的函数( f )。当检索结果时,我们只需使用函数的反函数,即(f^{-1} )。我们可以看到这是如何成为一个问题。
第三种可能性是使用甘斯。生成对抗网络(GAN)是一种使用深度学习的生成建模方法。实际上,它包括学习输入数据中的模式,从而可以使用该模型来生成新的示例,这些示例很可能是从原始数据中提取的。在 GAN 架构中,我们有两个神经网络,它们相互竞争来生成数据的合成实例。在本博客之前的一篇文章中,我们已经讨论了使用 GANs 的优势。为了用 GAN 从噪声中生成图像,我们的出发点是有用的条件变量的噪声。图像由所谓的生成器生成,结果由鉴别器判断是(或不是)从训练集中提取的良好的似是而非的数据。使用 GANs 时需要我们注意的一些方面是:在鉴别器太好的情况下,梯度消失的可能性;或者在生成器学习只产生特定输出的情况下模型崩溃,迫使鉴别器拒绝任何东西和一切。在 2021 年发表的一篇论文中扩散模型在图像合成上击败了 GANs,Dhariwal 等人展示了“扩散模型如何能够实现优于当前最先进的生成模型的图像样本质量。”
扩散模型似乎在生成图像方面占了上风,然而,它们也不是没有问题。在最近的一篇由两部分组成的文章(第一部分和第二部分)中,NVIDIA 的研究人员认为,尽管扩散模型实现了高样本质量和多样性,但它们在采样速度方面并不出色,这限制了它们在实际日常应用中的采用。然后,他们继续介绍 NVIDA 开发的解决这一问题的三种技术,即:
- 潜在空间扩散模型通过首先将数据嵌入平滑的潜在空间来简化数据,在该空间中可以训练更有效的扩散模型。
- 临界阻尼朗之万扩散,一种改进的前向扩散过程,非常适合更简单、更快速的去噪和生成。
- 去噪扩散 GANs 通过表达性多模态去噪分布直接学习显著加速的反向去噪过程。
扩散建模已经被证明是图像生成中非常稳健的方法。更重要的是,基于相同方法制作的音频和视频的进步已经得到了展示。下一次,当你看到一个嘈杂的画面或听到一些对你来说听起来像噪音的东西时,停下来想一想,这可能是一个美丽的场景、一部感人的电影或一首美妙的交响乐的开始。谁能想到!
2018 年 Rev 的多样性和包容性
原文:https://www.dominodatalab.com/blog/diversity-and-inclusion-at-rev-2018
By Grace Chuang, Manager of Sales Development, Domino Data Lab on September 04, 2018 in
Rev 2018 年是多米诺数据科学领袖峰会的开幕日,我们很高兴通过我们的多米诺多样性&包容性俱乐部旅行资助将新鲜的想法带到这次活动中。我们的目标是通过为不同的申请者提供旅行和住宿,为打破阻碍数据科学专业多元化和包容性的障碍做出贡献。
我们询问了我们的 Domino 多样性和包容性赠款接受者关于 Rev 的一些收获,以及是什么让他们来参加会议。你可以在下面读到它们(为了篇幅和清晰起见,编辑了一些摘录):
玛丽琳·费雷拉
关于玛丽莲
Marielen 是巴西跨国软件公司 TOTVS 的数据科学家,之前曾与 CERN 合作,研究神经网络应用、3D 声音的开发以及通过蓝牙低能量处理通信信号以感知人类存在。她共同创立了圣保罗机器学习和数据科学女性分会。
玛丽琳的 Rev 体验
数据责任(通过道德数据科学产生积极的社会影响)小组让我思考我的工作,以及我真的希望我的同事们开始讨论这样的话题。很荣幸能和韦斯·麦金尼(熊猫的创造者)在一起,这让我对开源项目有了更多的思考。我等不及明年去了!
拉蒙·耶佩斯
关于雷蒙
Ramon 正在加州萨克拉门托的太平洋大学攻读数据科学硕士学位。他最近以统计学家的身份在美国农业部工作,对数据科学的基本概念感兴趣(创建算法、利用大型信息数据库以及在公司内部应用经济概念)。他有着广泛的生活经验,之前曾在墨西哥领事馆和美国驻西班牙马德里大使馆工作。
拉蒙的牧师经历
作为数据科学专业的研究生,参加 Rev 大会是一次宝贵的经历。我能够了解数据科学社区的当前问题。例如,一个持续的主题是,我们需要标准化数据科学领域的一些流程,以提高公司的生产力。总的来说,会议很棒。我以后一定会以数据科学家的身份参加。
特里萨·格伯特
关于特里萨
Theresa 目前正在卡内基梅隆大学攻读统计学和机器学习博士学位。她的研究侧重于从照片中了解癌前细胞的特征,长期目标是开发完全预防癌症的药物。她特别热衷于让非统计研究人员理解和探索他们的数据。在空闲时间,她为非营利组织提供免费的统计咨询。
特里萨的牧师经历
Rev 是少有的兑现承诺的会议。作为一名学者,我希望从行业领导者那里了解行业挑战和可行的解决方案,并与现任和有抱负的领导者讨论数据科学文化。演讲人平易近人,话题从数据科学中的伦理问题到特征选择的蒙特卡罗方法。我能与之交往的与会者的素质给我留下了深刻的印象。我的亮点是与谷歌首席数据科学家 Cassie Kozyrkov 讨论数据科学培训。
优秀需要一个中心吗?
原文:https://www.dominodatalab.com/blog/do-you-need-a-center-to-be-excellent
云分析主管 Brian Loyal 和拜耳作物科学公司数据科学副总裁 Naveen Singla
编者按:这是分享开发企业数据科学战略的公司最佳实践的系列文章的一部分。一些文章将包含关于他们使用 Domino 的信息。
几年前,我们加入了越来越多为数据科学创建卓越中心(COE)的公司行列。德勤的一项调查发现,超过三分之一的大公司有卓越中心或能力中心。麦肯锡认为,在成功扩展高级分析的公司中,这一数字高达 60%。
当时,数据科学工作正在拜耳作物科学蓬勃发展,业务部门正在培养自己的从业人员骨干,以便他们可以利用高级分析和机器学习能力。但是,随着越来越多的数据科学用例出现在业务的不同角落,我们希望确保我们有正确的防护栏。这让我们从组织的角度重新评估我们如何管理数据科学,并最终创建一个 COE 来帮助制定治理数据科学的企业战略。从那时起,我们的 COE 扩展了其章程,以培养通用能力和最佳实践来实现大规模数据科学。
最终,我们学到的是,让一个团队专注于跨越组织和最佳实践的问题有很多好处。
听听 Brian Loyal 讨论拜耳作物科学为何推出 COE。
https://www.youtube.com/embed/JvcNujw3fzw
有什么优势?
对我们来说,这些优势包括:
- 数据科学团队之间更好地共享知识。例如,我们观察到从业者对代码和模型的重用增加,这有助于加速新数据科学产品的开发。
- COE 致力于解决跨多个业务部门的重大挑战,例如让从业者更容易挖掘基因组数据,从而提高数据科学的效率。
- 将数据科学和业务战略更好地与侧重于数据科学能力的投资结合起来,这是领导者们正在努力实现的。
- 改善人才获取,重点关注数据科学社区和知识共享,吸引高性能数据科学家的关注。
一路走来,我们学到了什么?
建立一个 COE 或任何类型的中心都不容易。在我们与致力于实施或扩展其企业数据战略的其他人的交谈中,我们通常会提出以下建议:
等到你达到临界质量
虽然我们认为“中心”(在我们的案例中,COE)对于从企业角度治理数据科学很重要,但不要从第一天就设置它。让实践成长一点,然后看看什么时候你达到了需要一个管理机构的临界质量。
在 Bayer Crop Science,当我们开始构建 COE 时,有 200 多名数据科学从业人员在业务部门工作。我们最初的战略直接聚焦于公司领导日益增长的担忧,这使我们能够比其他方式更快地获得关注。
思考如何增加价值
一旦我们的 COE 解决了眼前的治理问题,我们就将注意力转向确定加速数据科学价值的方法。我们称之为“COE 重启”,并成立了两个关键运营团队来支持我们的工作:
- 与研发、供应链和商业等关键业务部门保持一致的垂直团队,帮助他们实现收入和成本削减目标。在这里,我们的 COE 员工主要识别和交付总体数据科学功能,如预测定价模型或基因组学模型,这可能有利于多个业务部门或职能部门。如果业务线还没有数据科学和分析团队,我们的卓越中心将填补空白,帮助开展特定于业务线的数据科学项目,同时业务线领导开始组建自己的数据科学团队。
- 一个横向团队,其任务是构建可以惠及所有人的基础能力和实践。这包括实现 Domino 数据科学平台以使孤立的团队更容易共享数据、代码和模型,并建立社区建设实践以进一步鼓励协作。我们认为这种对社区的强调是至关重要的,并产生了倍增效应。例如,全公司从业者之间自发的聚会和论坛现在已经变得司空见惯,创造了一个自我维持的协作和知识共享循环。
听听那些在战壕里的人
通常,集中式团队和业务之间会有一些摩擦,因为联合团队担心公司法令会阻碍业务目标的实现。为了解决这个问题,我们采取了自上而下和自下而上的方法。这包括创建一个数据科学委员会,将整个公司的数据科学领导者和高级数据科学员工聚集在一起,以塑造组织内数据科学的未来。该委员会确保每个企业的数据科学团队在新流程中拥有发言权,并在决策中感受到主人翁感,这有助于确保采用新功能,并克服在标准化流程和实践方面出现的不可避免的障碍。
衡量你的成功
这对于提升数据科学的总体价值,尤其是卓越中心的工作价值至关重要。我们跟踪许多不同的指标,包括:
- 采用数据科学来推动更好的业务成果,例如为推动业务决策而部署的模型数量,以及基于数据科学做出的业务决策数量。
- 模型的财务影响。在一些地区,比如 R&D,一个新产品可能需要长达 7 年的时间才能上市并产生财务回报,我们不仅仅关注传统的投资回报。例如,我们经常关注 R&D 项目的“命中率”——每一步有多少产品成功进入管道——着眼于持续改进。我们希望这个数字逐年上升,过去几年我们已经看到了积极的趋势。
我们还对公司中从事或支持数据科学工作的任何人进行年度调查,以了解哪些工作有效,哪些工作无效。这些调查揭示了令人惊讶的见解,这些见解导致了我们做事方式的改变。
没有让数据科学规模化的灵丹妙药。尽管如此,我们发现拥有企业数据科学战略有助于我们更快实现这一目标。这些实践,还有其他的,可以帮助铺平道路。
观看名为“利用最佳科学推动成果的最佳实践”的网络研讨会,我(Brian)将与一家领先保险解决方案提供商的数据科学总监 Matt Cornett 和一家全球金融情报公司的人工智能工程总监 Patrick Harrison 一起讨论更多最佳实践。
Docker,但是对于数据
棉被的联合创始人兼首席技术官 Aneesh Karve 访问了 Domino MeetUp,讨论数据基础设施的发展。这篇博文提供了会议摘要、视频和演示文稿。Karve 也是“用 Jupyter 和 Quilt 进行可复制的机器学习”的作者。
Session Summary
被子数据的联合创始人兼首席技术官 Aneesh Karve 讨论了数据像源代码一样被管理的必然性。版本、包和编译是软件工程的基本要素。他问道,如果没有这些元素,我们为什么要做数据工程呢?Karve 深入研究了 Quilt 的开源工作,以创建一个跨平台的数据注册表,该注册表可以存储、跟踪和整理进出内存的数据。他进一步阐述了生态系统技术,如 Apache Arrow、Presto DB、Jupyter 和 Hive。
本次会议的一些亮点包括:
- 数据包代表“可部署、版本化、可重用的数据元素”
- “我们观察了过去三年的计算轨迹,发现容器的垂直增长不仅带来了标准化,而且成本大大降低,生产率大大提高。从虚拟化的角度来看,您接下来要考虑的是数据。我们能为数据创建一个类似 Docker 的东西吗?”
- 如果你有代码依赖,你
pip install -r requirements.txt
,然后你import foo
,import bar
然后开始工作。数据依赖注入要混乱得多。您通常有许多数据准备代码,从网络获取文件,将这些文件写入磁盘,然后有自定义的解析例程,然后运行数据清理脚本。 - 了解了脸书通量模式后,看看 React,不变性提供了很多可预测性。
- 计算和存储的分离,如 Presto DB 等技术所示。与其衡量你收集了多少数据,不如衡量你能多快将数据转化为代码。那叫数据回报。
- 鉴于代码的 linter 和语法检查器无处不在,提倡为数据使用 linter,以确保数据符合特定的配置文件。
- DDL,数据描述语言,是棉被编译器和蜂巢生态系统之间的桥梁。
- 如果你有 Drill,pandas,Cassandra,Kudu,HBase,Parquet,所有这些节点都得到了很好的优化,它们是高性能的。然而,你实际上在哪里度过你的时间呢?Karve 指出,您花费 80%的时间来移动数据,您失去了所有这些性能优化,并且您还有许多非规范化的、重复的逻辑。
https://fast.wistia.net/embed/iframe/at7vn34fbo
Domino 3.0:帮助世界运行在模型上的新特性和用户体验
这篇博文介绍了 Domino 3.0 的新特性。Akansh Murthy 是 Domino 的技术产品经理,之前在 Domino 和 Kareo 担任软件工程师。
介绍
Domino 3.0 通过消除模型操作瓶颈、加速研究和生产力,简化了数据科学家的生活。正如去年 5 月我们的数据科学领袖峰会 Rev 所述,将数据科学集成到组织中需要一个平台,该平台不仅要支持数据科学家的需求,还要支持使用数据科学家工作的业务利益相关者和支持数据科学家基础架构的 it 人员的需求。
为此,我们很高兴发布 Domino 3.0!
此版本包括两个主要的新功能领域,可满足客户的普遍要求:
- 发布和发现数据科学“应用”的简单方法(例如,Shiny、Flask、Dash 等。)
- 用于了解数据科学组织中跨工作负载的计算使用情况的工具。
我们还改进了 UI,使导航和搜索更加高效,并扩展了平台 API,使 Domino 更容易集成到专有工作流中。最终,这些新功能使我们更接近于我们更广阔的愿景模型管理。
应用发布和启动板
在与我们的 data scientist 用户进行多次访谈后,我们意识到他们被迫经历许多内部障碍,只是为了扩展他们工作的基础架构,延长了让他们的工作可见并可获得反馈的时间。
有了 Domino 3.0,数据科学家可以完全控制应用的发布,而不需要 IT 和 DevOps 团队的参与。具体来说,新的发布流程支持对应用运行的硬件进行定制,以根据应用所需的资源、标题和描述、应用的使用统计数据以及查看应用的精细权限进行适当扩展。
应用程序发布后,可以在 Launchpad 中查看,launch pad 是一个门户网站,业务利益相关方可以在其中发现和访问您发布的应用程序。这样可以将应用快速交付给利益相关方,从而获得快速反馈。
我们建立了灵活的许可机制,因此您可以控制谁可以访问您的应用程序,或者是否应该公开发布。
Domino 还可以跟踪您的应用程序被使用的频率以及谁在使用它们。这可以让您了解您的数据科学工作是否以您期望的方式得到利用,并提供一种方式来展示其在您的组织中的影响。
我们认为 Launchpad 将成为游戏规则的改变者,让数据科学的工作对组织中的其他人可见,加速协作和模型迭代。
控制中心
我们还不断听说,IT 管理员和数据科学领导者希望获得粒度级别的成本信息,这将有助于他们做出决策,例如在哪里分配更多硬件,以及查看哪些项目的成本最高。基于这一认识,我们希望整合这些信息,使其易于查找和分析;于是,控制中心诞生了。
控制中心可让您了解整个数据科学组织的计算支出和使用情况,以便做出更明智的资源分配和成本控制决策。
此信息还可以按用户、项目或硬件类型进行筛选,以获得更精细的成本分配。
为了允许更多的定制,我们通过一个 API 公开这些数据,该 API 设计用于与商业智能工具一起工作,因此用户可以将数据集成到现有的工作流和仪表板中。现在,管理员可以使用 Tableau 等工具分析平台活动,甚至可以将数据拉回到 Domino,在 Jupyter 中进行分析或用 Shiny 显示。
这仅仅是 Domino 自动捕获的迷人的元数据类型的开始,我们很高兴能够继续致力于揭示更多的元数据,以帮助我们的用户管理他们的数据科学组织。
新的用户体验和用户界面
我们更新了用户界面的外观,以简洁的外观简化了工作流,让我们的数据科学家用户更容易看到关键产品领域和工具。
新的导航位于侧面而不是顶部,可折叠以允许更多的屏幕空间,这对数据科学家来说是宝贵的,它定义了 Domino 的三个不同区域(实验室、启动板和控制中心)。这允许不同的用户在 Domino 产品中有各自的家——实验室中的数据科学家、Launchpad 中的模型消费者和控制中心中的 IT 管理员。
我们还重新设计了我们的搜索界面,使得搜索结果可以从产品的任何部分的导航栏中访问。查找和重用过去工作的能力对数据科学家来说非常重要,因此我们希望在不离开当前环境的情况下更快地找到有用的内容。我们的搜索引擎索引了平台中所有工作的文件、评论、结果和实验元数据。
我们对收到的早期反应感到兴奋,并相信我们的重新设计朝着为最终用户提供更流畅体验的方向迈出了一步。
公共 API
最近,我们看到一种趋势,即客户构建自己的用户界面,但仍然希望与 Domino 交互。为了便于 API 访问关键的 Domino 功能,我们发布了许多新的 API,可供客户或任何感兴趣的开发人员使用。这些 API 为 Domino 提供了一个全新的生态系统,我们计划公开提供更多的 API。查看我们的 API 文档了解更多信息。
今后
通过减少模型操作瓶颈和提高数据科学家的工作效率,使模型产品对业务利益相关者更加可见,并向 IT 管理员和数据科学领导者公开重要的计算支出数据,Domino 3.0 成为一个端到端平台,可帮助组织构建模型管理功能。在接下来的几个月里,我们将发布对上述新特性的增强,并提供模型监控和治理的新功能。
如果您是一名数据科学家或数据科学领导者,正在构建您的组织,并且对此感兴趣,请观看演示并与我们聊天。如果你是一名对解决这样的问题(以及更多)感到兴奋的工程师,请查看我们的职业页面。为让世界靠模型运转干杯!
Domino 4.3 反映了我们对企业级安全性的专注
原文:https://www.dominodatalab.com/blog/domino-4-3-reflects-our-dedication-to-enterprise-grade-security
By John Brunn, Chief Information Security Officer, Domino on September 09, 2020 in Product Updates
上周我们宣布了Domino 的数据科学平台 Domino 4.3 的最新版本,这代表着企业数据科学家和支持他们的 IT 团队向前迈进了一大步。新特性包括一个新的 Domino 身份验证服务,它将帮助 IT 团队在保持安全性和控制力的同时进行扩展。
Domino 身份验证服务
我们的客户使用 Domino 作为数据科学的记录系统,因此对用户管理有严格的要求。他们希望根据数据科学家在 Domino 系统中的地位,授予或限制对数据科学系统(如数据源或外部服务)的访问权限,这类似于您在 SSO(单点登录)系统中看到的情况。
Domino 正在扩展其企业级身份验证功能,包括通过一个短暂的 Domino 令牌 (OpenID)身份与 Domino APIs 和第三方服务建立信任的选项。任何接受 JSON Web 令牌(JWT)令牌和 Domino 的 JSON Web 密钥集(JWKS)的外部服务都可以使用这些身份令牌进行身份验证。这个功能有效地将 Domino 的身份扩展到了第三方服务。
可能利用该身份服务的一些服务包括:
- Okera ,负责的数据治理
- AWSAssumeRoleWithWebIdentity,用于与 OpenID Connect 兼容的身份提供者协同工作的安全凭证
- 保险库,用于对令牌、密码、证书、加密密钥和其他敏感数据进行安全访问控制
- 自定义 API
当与 Domino 健壮的 SSO 功能结合使用时,这些增强使得 Domino 管理员可以更容易地授予或撤销用户访问权,同时限制用户可以从哪里进行连接。Domino 为其客户提供了创建 API 来扩展 Domino 身份的基础,因此它对其企业数据科学工作流有更多的安全性和控制。
关注安全性
Domino 致力于在我们平台的各个方面提供企业级的安全性、控制和可靠性。自从五月份加入 Domino 以来,我关注的一个领域就是建立一个主动的信息安全扫描过程。今天,我很高兴地向大家报告,Domino 已经通过并超过了世界上一些最有安全意识的组织的严格审查。
作为该流程的一部分,我们对内部流程和工具进行了重大改进,以符合企业应用程序监控和安全报告要求,例如:
- Domino 日志可以暴露给兼容 Fluentd 的聚合工具
- 应用健康指标可以集成到普罗米修斯监控系统中
- 容器和依赖项支持漏洞扫描和补救
财富 100 强中超过 20%的公司都是达美乐的客户。与这些公司的 IT 部门密切合作,帮助我们调整了发展路线图,以满足他们支持大规模企业数据科学的独特需求。Domino 4.3 是这种不懈努力的最新成果,它确保满足最苛刻的安全和控制要求,并且经常超出这些要求。
了解更多信息
- 了解达美乐 SOC 2 Type II 认证。
Domino 4.4 解放了数据科学家,以最大限度地提高生产力
原文:https://www.dominodatalab.com/blog/domino-4-4-liberates-data-scientists-to-maximize-productivity
By Bob Laurent, Sr. Director of Product Marketing, Domino on June 21, 2021 in Product Updates
去年 3 月,当新冠肺炎效应刚刚开始影响企业时,数据科学家站在许多公司的第一线,快速重建模型,帮助高管在前所未有的时期导航。现在,随着世界重新开放,公司正在适应新常态,数据科学家再次分析数据,构建(和重建)模型,并帮助进步的公司利用新的数据科学用例,在某些情况下,全新的商业模式。
如果 15 个月前不清楚,现在当然清楚了。数据科学家正在推动世界上最复杂的公司解决世界上最重要的问题。11 月,我写了为什么数据科学家仍然是“21 世纪最性感的工作”,这是在托马斯·达文波特和 D.J .帕蒂尔在《哈佛商业评论》发表这一观点近十年后。Glassdoor 将“数据科学家”列为 2016-2019 年的“全美最佳工作”,在 2020 年初跌至第三位后,在 2021 年又回到了第二位。
数据科学家是特殊的
为什么?他们所做的事情需要独特的技能、见解和经验,这是一项高度复杂的工作,部分是科学,部分是艺术。他们需要深入的业务领域专业知识,还需要使用最新的数据科学工具和技术进行创新的自由和灵活性。他们还需要访问强大的基础设施,包括 GPU 和分布式计算框架,以执行复杂的分析,这是他们日常工作的一部分。
许多公司,尤其是拥有大型数据科学团队的公司,理解这一需求,但不知不觉地给数据科学家设置了障碍,限制了他们的生产力。例如:
- 数据科学家无法获得他们需要的工具和计算,并且经常花更多的时间来解决 DevOps 挑战,而不是进行高效的数据科学工作。
- 他们无法找到并重用过去的工作。数据科学家浪费宝贵的时间在每个项目上“重新发明轮子”,因为数据科学没有既定的标准或最佳实践。
- 模型和模型工件(例如,应用程序/API)需要迭代,但是使用不同的工具、语言和包(以及每种的不同版本)使得很难与其他数据科学家和业务利益相关者协作。
- 当没有一致的工作方式时,将模型投入生产是缓慢而困难的。如果一个模型幸运地进入生产,不一致或不存在的模型监控实践会消耗大量数据科学家的时间。
数据科学家想要的自由和灵活性往往与其坚持的控制和治理相冲突。公司必须做出权衡,因此,数据科学家经常被迫使用功能有限的解决方案,并且不能自由地在手头工作的最佳工具之间切换。
多米诺倡导数据科学家
我们知道,当数据科学家不必考虑如何让技术发挥作用,从而可以专注于手头的业务问题时,他们处于最佳状态。我们的平台一直为数据科学家提供自助工具和可扩展计算,帮助他们提高工作效率。我们相信让他们以自己喜欢的方式工作,这样他们可以更快地开始工作并立即提高工作效率,而不必再浪费时间在开发运维问题上来解决基础架构挑战。
“有了 Domino Data Lab,他们可以自由地做他们需要做的事情,而且他们从来不会对技术有任何疑问——因为他们只是继续做下去。就像音乐家弹钢琴,或者拿起小提琴。”–Topdanmark 机器学习主管 Stig Pedersen
**今天,我们自豪地宣布多米诺 4.4。**此版本以这一愿景为基础,提供了重新想象的工作空间体验——面向数据科学的下一代数据科学工作台,数据科学家最大限度提高工作效率所需的最重要功能触手可及。你可以把这想象成一架现代 F-35 战斗机的驾驶舱,信息随时可用,飞行员需要的所有最重要的能力都触手可及。
新功能有助于最大限度地提高工作效率
大多数供应商强迫数据科学家进入一个连续的工作流,包括打开一个工作区,完成工作,提交结果,然后在进入下一个任务之前关闭工作区。使用 Domino 4.4 中的持久工作区,数据科学家可以在并行工作流中操作,在并行工作流中可以同时打开多个开发环境,以获得最大的生产率。用户可以根据需要启动、停止和恢复工作区会话(以节省基础设施成本),工作在会话之间持续进行。这确保了他们永远不会丢失工作,并且能够在任何他们想要的时候将他们的工作提交给版本控制。
Domino 自动跟踪实验的所有工件,因此数据科学工作是可再现的、可发现的和可重用的——增加了数据科学团队的吞吐量并降低了监管风险。这些工件被记录为 Domino 文件系统(DFS)的一部分,但许多公司更喜欢使用基于 Git 的集中式代码存储库(例如, GitHub 、 GitLab 、 Bitbucket ),以便数据科学代码可以与其公司 CI/CD 工作流的其余部分集成,从而提高合规性和治理。
Domino 市场领先的再现能力现在通过 CodeSync 得到了增强,因此数据科学家可以在他们业务中使用的现代 IT 堆栈中无缝工作。CodeSync 支持所有的通用 Git 工作流,比如创建分支、提交代码、推送更改等等——所有这些都可以在 Domino 工作区内与您选择的 Git 服务提供商进行交互。这种 Git-first 的体验让用户能够更好地控制复杂工作流的同步和版本控制,并使他们能够轻松地与其他团队成员进行版本控制、基于代码的协作。
数据科学家希望利用来自多个来源的各种不同类型的数据来进行更好的实验。基于云的解决方案需要将数据复制到云中,这带来了安全性和同步问题。在 Domino 4.4 中,我们让连接到外部 NFS 卷变得更加容易,这样数据科学家就可以在 Domino 之外使用更多类型的数据进行更多的实验。而且,他们不必像使用不灵活的云供应商工具那样移动数据。
但是,有时有必要在站点之间移动数据,如果通信被拦截,这将使数据面临风险。我要提到的最后一个特性本身并不是生产力的提高,但它会让数据科学家和 it 团队睡得更香。Domino 4.4 支持传输中的加密和传输层安全性(TLS)——一种保护传输中数据的行业标准方法。
包裹
这些新功能使有经验的数据科学家更容易最大限度地提高他们的工作效率,但它们也使新的和新手数据科学家受益,因此他们可以更快地加入进来,并更快地以有意义的方式做出贡献。我们的新工作空间体验消除了许多新数据科学家在其他平台上面临的关于设置环境、管理库、启动工作空间等的“冷启动”障碍。我们向 IT 团队展示了这一点,让他们意识到他们可以为新用户提供受监管的安全访问,并在适当的位置安装护栏,以防止丢失工作、意外运行和巨额云计算账单。
现有的 Domino 客户现在可以升级到新版本。如果您不是 Domino 客户,请考虑一下 Forrester Consulting 在分析 Domino Enterprise MLOps Platform 的总体经济影响时得出的结论。
Domino 4.6:模型驱动业务的更大信心和灵活性
By Bob Laurent, Sr. Director of Product Marketing at Domino on September 16, 2021 in Product Updates
在过去五年中,数据科学变得越来越复杂:
-
数据科学家必须处理的数据量呈指数级增长
-
数据科学家使用的技术已经变得如此计算密集,以至于他们需要多核 CPU、GPU 和分布式计算
-
人们依赖模型来支持最关键的业务决策,每天都有大量的预测
尽管数据科学家曾经能够在笔记本电脑上本地开发和运行代码,但如今他们通常需要更多基础架构才能取得成功。更多的基础架构通常意味着对复杂开发运维工作的更多要求,以及数据科学家的时间浪费。而且,随着越来越多的公司变得以模型为导向,数据科学家发现他们需要分配更多的时间来监控生产中的模型,否则就有可能让他们的首席信息官以各种错误的理由登上华尔街日报的封面。
Domino 4.6 简介
幸运的是,Domino 用户可能无法理解他们的同行每天面临的基础设施和模型监控挑战。我们在 Domino 4.4 中介绍了我们的下一代数据科学工作台,今天我们将推出 Domino 4.6 ,它提供了企业级模型监控的附加选项、分布式计算的选择以及许多其他创新和改进,我很高兴能够与大家分享。您马上就会看到,Domino 4.6 提供了:
-
*对运营您业务的模型更有信心,*在每天数百个功能和数十亿次预测的规模上
-
提高灵活性数据科学家可以自助访问手头任务/项目的最佳工具和基础设施,包括 Ray.io 和 Dask 分布式计算
-
无缝的用户体验以一致、完全集成并符合最佳实践的方式完成数据科学家需要完成的重要工作
企业级模型监控
最近由韦克菲尔德研究公司和多米诺数据实验室 进行的一项 调查显示,82%的美国大公司(年收入超过 10 亿美元)的数据高管表示,他们的公司领导层应该担心糟糕或失败的模型可能会给公司带来严重后果。然而,DataIQ 最近的另一项 调查显示,近 27%的商业领袖依赖于特定的流程进行模型监控,或者只是不知道模型是如何被审查的。只有 10%的人使用自动化模型监控功能来帮助他们确保运行关键业务功能的模型反映当今快速变化的业务环境。
正是考虑到这些挑战,我们很兴奋地宣布我们新的 Domino 弹性监控引擎。这一突破性的技术进步使 多米诺模型监视器(DMM) 能够在数十亿次每日预测中计算数据漂移和模型质量——是以前版本的 100 倍以上!
DMM 现在可以无限扩展模型监控容量,以支持最苛刻的监控要求。它可以接收和分析来自亚马逊 S3 和 Hadoop 兼容文件系统(HCFS)的海量数据,其中包括 Azure Blob Store、Azure Data Lake (Gen1 和 Gen2)、谷歌云存储和 HDFS。不需要在存储位置之间复制数据,因此可以立即分析数据,而不用担心版本控制、安全性和其他可能会质疑模型准确性的问题。
如果您一直在推迟添加自动化模型监控,您会危及您公司的声誉、竞争力,最重要的是,它的底线。这是另一个诱因。有了 Domino 4.6,DMM 可以与我们的核心产品一起安装在任何环境中,包括所有主要的云平台(AWS、GCP 和 Azure),如果您更喜欢的话,还可以安装在本地。通过单点登录(SSO)和跨整个 Domino Enterprise MLOps 平台的其他集成,用户可以获得从模型开发到部署再到监控的无缝体验。
分布式计算选择
对于数据科学家来说,为特定工作选择和使用最佳工具的能力极其重要。这就是为什么多年来 Domino 的一个指导原则是拥抱最好的开源和商业工具、包、语言、数据源等等——并以消除典型 DevOps 挑战的方式将它们合并到 Domino 中。这一理念延伸到了分布式计算环境,在这种环境中,我们已经支持了短暂的 Spark 一年多,为数据科学家提供了一种极其简单的方式来将 Spark 添加到他们的工作环境中。
在 Domino 4.6 中,我们增加了对按需和 Dask 的支持——这是开源社区中出现的两种最热门的分布式计算形式。如果你不熟悉分布式计算,它允许数据科学家处理大量数据,用于机器学习和其他复杂的数学计算,如深度学习。这两个框架都利用了最先进的机器学习库,可以轻松地扩展单机应用程序,以解决更强大的机器学习问题,而对底层代码几乎没有或根本没有更改。
Ray 的核心是一组核心低级原语( Ray Core ),它们为分布式训练、超参数调整和强化学习提供了巨大的价值。Ray 已经被 许多开源 ML 框架 采用为基础框架,这些框架现在有社区维护的 Ray 集成。Dask 还提供了许多与现有数据科学库的集成,使其成为并行化现有基于 Python 的数据科学代码的最佳选择,只需进行最小的调整。对于使用 Pandas 和 NumPy 库或 Scikit-learn 训练接口大量操作大量数据的计算来说,这是一个特别好的选择。更多关于 Ray 和 Dask 相比 Spark 的优缺点的信息,请查看 最近的博客 。
在 Domino 中创建工作区时,添加 Ray 和 Dask 集群(或者 Spark)非常容易。用户所要做的就是指定一些参数,比如工人的数量和每个工人的能力。从那里开始,Domino 将在后台完成所有繁重的工作,在底层 Domino 基础设施上建立集群,建立网络和安全规则,并在集群的整个生命周期中自动管理集群。不需要 DevOps 经验!
Domino 在真正的企业规模上对三个最流行的分布式计算框架的免开发平台支持是行业首创。这是我们对数据科学团队承诺的一部分,让他们能够为手头的工作选择最佳框架(和一般工具),而不局限于其他平台规定的单一选择,也不需要依赖 It 来创建和管理集群。
更多激动人心的企业 MLOps 功能
我们感到自豪和荣幸的是,超过 20%的财富 100 强企业依靠 Domino 来帮助他们克服基础设施摩擦,更轻松地协作,并帮助更快地将模型投入生产。但随之而来的是,我们有责任继续创新,以满足我们企业客户的许多独特需求。
Domino 4.6 中的其他特性包括:
-
亚马逊 EKS 的多米诺认证。我们已经将亚马逊的托管 Kubernetes 产品 【亚马逊 EKS 整合到我们高度安全、经过全面测试和性能优化的“认证”Domino 产品系列中。在这个版本中,我们让云原生客户能够利用亚马逊 EKS 以最高的信心和操作性能运行 Domino。他们已经在人员培训、建立基础设施管理最佳实践等方面进行了投资。都可以用来简化 Domino 的安装和未来的升级。
-
**Git 库创建&浏览。**在 Domino 4.4 中,我们宣布用户能够 将数据科学代码 与 Git 支持的存储库(例如 GitHub、GitLab 和 Bitbucket)同步,并使他们的工作与现有 CI/CD 工作流保持一致,以改善合规性和治理。我们将这种能力提升到了一个新的水平,为创建新的 Git 存储库提供了原生支持。用户可以上下浏览 Git 树的内容并查看提交历史——所有这些都不需要离开熟悉的 Domino GUI 环境。
-
用快照读/写 Domino 数据集。 Domino 数据集 在整个 Domino 平台上提供高性能、版本化和结构化的文件系统存储。用户现在可以创建“快照”——一个项目的大量数据的精选集合——并与同事无缝共享,以保持实验的可重复性。
包裹
Domino 4.6 是大量用户研究和开发工作的顶点,我迫不及待地想让您使用它。如果您是现有的 Domino 客户,可以立即升级到 Domino 4.6。如果没有,您可以在为期 14 天的免费试用中体验 Domino 提供的所有企业级多点操作功能。
Domino 5.1 简化了对数据源的访问,从而提高了建模速度
建立一个伟大的机器学习模型通常始于获取关键数据——关于临床试验中的患者、拖欠的贷款、个体商店的交易等。尽管人们大肆宣传要创建一个“数据湖”来存放公司的所有数据,但对大多数公司来说,现实情况是数据通常位于各种不同的位置,包括内部和云中。而且,在拥有许多不同部门、不同需求和不同存储要求的大型组织中,这些位置的数量增长很快。
这就是为什么我们在 Domino 5.1 中为更多种类的数据源添加了连接器。今天发布的这个版本建立在我们在一月份将 Domino 5.0 推向市场的创新之上,为我们的许多客户提高了模型速度。通过消除常见的 DevOps 障碍,包括需要编写代码来安装驱动程序和特定库,我们使数据科学团队更容易访问重要数据。
它是如何工作的
上个月,Andrew Coleman 写了一篇详细的博客,解释数据科学家如何使用预建的连接器作为基于表格和基于文件的数据的一致访问模式的一部分。在 Domino 5.0 中,我们为雪花、亚马逊 S3 和亚马逊红移开发了原生数据源连接器。
| |
|
|
今天,作为 Domino 5.1 发布的一部分,我很兴奋地宣布为微软 Azure 数据湖存储、谷歌云存储、 Oracle 数据库、微软 SQL Server 、PostgreSQL和 MySQL 增加了六个连接器:
| |
|
|
| |
|
|
用户不用花时间编写访问数据的脚本,只需进入 Domino 中的“data”部分,单击“Connect to External Data ”,选择合适的数据源,填写基本信息,包括他们的登录凭证。就是这样!连接属性作为访问密钥和秘密密钥安全地存储在与 Domino 一起部署的 Hashicorp Vault 的实例中。
Domino 5.1 还简化了对通用外部数据卷(EDV)的访问,以便在远程文件系统上装载和访问数据——允许数据科学家使用更多类型的数据进行更好的实验。Domino 列出了使用每个注册 EDV 的项目,以深入了解数据是如何使用的,以及用于什么目的。
结论
如果你还记得的话,我们现在已经为所有三个主要的云提供商以及雪花提供了预构建的连接器。此外,如果有一个数据源我们还没有为其构建本机连接器,用户可以创建新的连接器并与同事共享,以帮助民主化对重要数据的访问。
关于如何在 Domino 中配置数据源的详细信息,可以查看我们的文档。如果你错过了我们的 Domino 5.0 发布会,Atul Gawande(著名外科医生、作家和性能改进专家)和 Najat Khan 博士(首席数据科学官和强生公司让桑制药公司研发战略&运营全球负责人&,你可以在这里观看重播。
Domino 5.3 提高了企业数据科学的速度和影响
当今最成功的组织将人工智能和机器学习模型置于其业务的核心,通过加速创新、改善客户体验和做出更快、更少偏见的决策来创造竞争优势。构建人工智能驱动的应用和体验的数据科学团队需要跨混合、多云和内部环境灵活访问最新工具和任何数据。成功构建推动数字化转型的模型还需要企业和政府所期望的安全性、治理和合规性,而不管底层基础架构如何。
今天,我们很自豪地宣布 Domino 5.3 的正式上市——这是一个强大的版本,直接解决了这些需求,以提高大规模数据科学的速度、质量和影响。这些新功能对于那些希望在迎接新的、更大的挑战时变得更加模型驱动的公司来说意味着什么。
跨混合/云计算环境扩展数据科学
企业 需要混合和多云计算数据科学能力 以在组织运营和存储数据的任何地方扩展模型驱动的结果—跨云、内部基础架构、部门和区域。事实上,Forrester 最近对人工智能基础设施决策者的调查 表明了这一需求——71%的人认为他们的人工智能平台对混合云的支持对于执行他们的人工智能战略非常重要,29%的人认为这已经非常重要。
我们 在 6 月份宣布了 我们的混合和云计算架构“Nexus”,今天我们很兴奋地为选定的 Domino 客户提供私人预览。Nexus 是一个单一平台,允许您在任何云、区域或内部的任何计算集群上运行数据科学和机器学习工作负载。它统一了整个企业的数据科学孤岛,因此您可以在一个地方构建、部署和监控模型。
参与设计评审或获得演示的 Domino 客户对它的潜力感到非常兴奋:
- **保护数据主权。**Nexus 不会浪费时间(和金钱)跨区域移动数据来访问计算资源,而是将计算带到数据所在的位置,这是一个强大的范式转变,有助于应对复杂基础设施中的数据重力。通过按地区限制对数据的访问,您可以更好地控制数据本地化法规的实施,例如 GDPR。
- 减少计算支出。 Nexus 将允许用户选择工作负载的处理位置,因此您可以以尽可能低的成本获得合适的性能。例如,您可以将计算密集型工作负载重定向到内部基础架构(例如,GPU 硬件集群),以降低每月云基础架构成本。
- **面向未来的基础设施。**没有一家公司希望被局限于单一的云供应商,尤其是当 最近的中断 暴露出重大的业务风险时。有了 Nexus,您就可以放心地实施混合/多云战略,从而保持一致的运营。
您可以获得更多关于 Nexus 的信息,观看演示,甚至可以在这里 请求成为我们私人预览 的一部分。
更轻松地访问关键数据源
15 年来,我们的行业一直在谈论能够找到和使用数据的挑战,今天,这仍然是一项令人恐惧的工作,浪费了数据科学家大量的时间。这是因为大多数解决方案都专注于在数据库级别解决问题,使用数据仓库、数据目录和其他独立产品为多种类型的用户服务
在 Domino 5.0 中,我们引入了我们独特的方法,将数据目录集成到数据科学家已经花费了大部分时间的 Domino 平台中。高级搜索功能、集成的数据版本控制和预建的连接器相结合,加快了模型速度,从而最大限度地提高了数据科学团队的工作效率。
作为业界最开放、最灵活的平台,Domino 已经包含了最流行数据源的连接器。Domino 5.3 增加了连接到 Teradata 仓库和查询亚马逊 S3(表格)数据库的能力。对于使用 Trino 集群的客户,Domino 5.3 还包括一个 Trino 连接器,可以连接到 其他数据源 ,包括 Cassandra、MongoDB、Redis 和 Delta Lake。
| |
|
|
|
| |
|
|
|
| |
|
|
|
我们连接数据的独特方法消除了与安装驱动程序、库等相关的常见 DevOps 障碍。使用 Domino,您只需选择想要使用的连接器,并填写基本信息,包括您的登录凭证。连接属性作为访问密钥和秘密密钥安全地存储在与 Domino 一起部署的 Hashicorp Vault 实例中。我们的解决方案还简化了部署和监控模型的流程,并追溯到用于模型训练的原始数据。
要了解更多信息,包括我们如何轻松获取您需要的关键信息的演示,请查看这个 博客 。
使用 GPU 实现深度学习
尖端、现代、模型驱动的企业已经在使用多米诺骨牌和先进的深度学习技术来实现医学突破,分析来自网络攻击和欺诈的新威胁,并改善客户关系。例如:
- 强生的让桑制药公司使用多米诺骨牌将深度学习模型的训练速度提高了 10 倍,通过全切片图像分析更快、更准确地诊断和描述癌细胞。
- 欧洲一家大型保险公司 Topdanmark 在 Domino 中使用自然语言和图像处理技术来自动处理索赔,让客户的生活更快地回到正轨。
Domino 已经为训练高级深度学习模型提供了最好的环境。借助 Domino 5.3,我们可以让模型驱动的企业大规模开发和生产深度学习,而无需开发运维技能。
Domino 5.3 使得部署的模型可以使用 GPU 进行模型推理,而不是必须依赖较慢的 CPUs 因此,实现了深度学习和其他大规模并行计算应用程序的显著性能提升。 研究 表明,在类似的成本下,GPU 对于深度学习应用的推理速度是 CPU 的 5 到 15 倍。
通过结合 GPU 进行模型推理,公司能够部署依赖于先进框架的模型,如【tensor flow】和高性能 GPU 加速平台,如英伟达 V100 和英伟达 T4。他们还可以利用开源社区中发生的快速创新来整合和部署强大的算法(例如, BERT on 抱脸 )和预先训练好的图像识别框架(例如, OpenMMLab 检测工具箱 )。
控制和审核对敏感数据的访问
在高度监管的生命科学行业,公司需要绝对确保在临床试验的任何阶段都没有引入患者偏见。能够控制和审核谁被授权在研究过程中查看各种数据对于分析的完整性至关重要。
Domino 5.3 为依赖 Domino 作为现代统计计算环境的制药公司提供了新的法规遵从性和治理功能。不可更改的审计追踪概述了谁被授权访问项目中的数据,以遵守 GxP 关于临床试验监管提交的指导原则。
用 Domino 5.3 提高速度和影响力
Domino 5.3 提高了企业数据科学的速度和影响,具有市场领先的能力来统一混合和多云基础设施,民主化数据源,并推动深度学习。要了解更多有关我们如何在混合云和云计算中释放数据科学的信息,请查看我们新的 Nexus 网页 ,其中包括一个 Nexus 演示。并且,发现Domino 5 的所有强大功能和独特优势。 在 LinkedIn 中关注我们,获取关于新 Domino 5.3 博客的更新以及我们计划在 11 月举行的虚拟活动的详细信息,您一定不想错过。
多米诺+埃森哲携手加速临床研究
原文:https://www.dominodatalab.com/blog/domino-accenture-accelerate-clinical-research-together
By Thomas Robinson, VP of Strategic Partnerships & Initiatives, Domino on December 02, 2020 in Company Updates
在这个疫情的关键时期,人们对如何发现和开发药物治疗的兴趣增加了——人们对科学背后的科学感兴趣。
我们在 Domino Data Lab ,领先的开放式企业数据科学管理平台的提供商,受到超过 20%的财富 100 强企业的信任,加入了埃森哲的 INTIENT Network 合作伙伴生态系统,该生态系统旨在与软件和生命科学组织合作,加速药物发现和开发工作,以改善患者结果。这意味着现在,通过 FDA 认证的 Accenture INTIENT 临床管理分析环境构建在 Domino 数据科学平台上,作为核心工作台,为制药公司提供端到端的临床试验解决方案。
INTIENT 网络是埃森哲 INTIENT 平台的组成部分。它支持整个生命科学企业的洞察力和协作,以提高从药物发现到临床研究的生产率、效率和创新。埃森哲与选定的独立软件供应商(ISV)和组织(包括 Domino 数据实验室)合作,将其技术和内容集成到 INTIENT 临床产品套件中。在 Domino 数据科学平台的帮助下,生命科学团队现在可以通过协作和完全可再现性成功测试数万个假设。
正如许多人现在通过观看和等待新冠肺炎疫苗的开发而知道的那样,在开发一种治疗方法时,需要进行大量的数据建模和统计分析。需要简化对这些数据的管理。为了解决这个问题,Domino 平台现在将在一个通用的信息学框架内提供给生命科学公司,该框架处理核心基础设施需求,如数据接收和清理、安全和 IP 管理、请求管理工作流、企业搜索、数据治理和协作环境。通过在 INTIENT 内部提供 Domino 数据科学平台,我们将与全球健康和生命科学研究机构在临床试验工作流程方面的专业知识带给了一批新的制药公司,推动研究创新。客户获得了一个集中化的研究平台,该平台通过技术和工具选择提供了安全性和可扩展性。
我们相信,我们在生态系统中的参与以及与 INTIENT 的集成将为科学家提供一个至关重要的工作台,支持他们解释药物开发中产生的越来越多的丰富多样的数据。
Domino 平台集中了整个企业的数据科学工作和基础设施,用于协作模型开发、培训、部署和整体生命周期管理——具有敏捷性和效率。有了 Domino,科学家和临床研究人员可以更快地创新,团队协作,并在安全性、监督和合规性方面建立在以前的工作基础上。数据科学领导者可以更好地了解项目,IT 团队可以管理和控制基础架构的使用和成本。有关该平台的更多信息,请访问网站。
Domino 和 DataRobot 一起提供更多价值
原文:https://www.dominodatalab.com/blog/domino-and-datarobot-deliver-more-value-together
By Karina Babcock and Dan Ganancial on March 08, 2018 in Product Updates
我们很兴奋地宣布 DataRobot 成为 Rev 的白金赞助商**,多米诺数据科学拉力赛** 将于 5 月 30 日至 31 日在三藩市举行!为了提供更多关于 Domino 和 DataRobot 之间合作关系的背景,下面是 DataRobot 全球合作伙伴营销总监 Dan Ganancial 写的一篇文章,最初发布在 DataRobot 博客上。
今天的预测分析项目需要大量的协作和团队合作才能成长和成功。然而,有限的资源——例如没有足够的可用的和熟练的数据科学家以及不提供高度自动化的工具——正在阻碍着即使是最优秀的团队。这是伙伴关系和协作介入解决这些限制的时刻,因为公司联合起来提供确保成功所需的资源。就像俗话说的,“三个臭皮匠,顶个诸葛亮。”两个预测分析平台协同工作比一个平台单独工作要好。这种合作体现了两家公司如何实现平衡,并在共享项目和机会方面同步合作。
DataRobot 拥有来自世界各地的各种合作伙伴,并重视这些联系。一个有效和成功合作的例子是与 Domino 数据实验室的合作。DataRobot 和 Domino 共同提供了一种独特的工具组合,使预测分析团队、数据科学家和其他领域专家能够提高工作效率,并提供项目成功所需的资源。这种合作体现了两家公司如何实现平衡,并在共享项目和机会方面同步合作。他们相互取长补短,并基于他们的共同点成功地联合起来。
预测建模变得更加简单
预测分析的一个主要限制是手动创建模型,这是一个耗时且充满挑战的过程,阻碍了许多公司的进步和生产力。Domino 正在申请专利的可再现性和协作引擎为您提供了一个协作编码环境,在这个环境中,您的数据科学团队可以一起工作来准备数据、开发或使用重要的模型,以及部署您的模型。
接下来是 DataRobot。我们提供自动化机器学习,帮助您的团队快速开发几十个模型来考虑,同时提供理解这些模型如何工作的透明度。DataRobot 内置的高级透明度和可视化功能使技术熟练的用户能够准确地看到某个模型是如何执行的,以及如何更好地理解底层数据。DataRobot 在其排行榜上按准确度对所有模型进行排名,允许您快速评估模型。DataRobot 的高级自动化确保您可以找到最适合手头任务的型号。
一旦选择了模型,就有多个部署选项可供选择。DataRobot 提供了三个选项,Domino 允许 API 端点发布< /a >。Domino 还提供了额外的项目协作和共享,这是一种很好的方式,可以用每个参与人员的输入来完成项目。将选定的模型从 DataRobot 引入 Domino 为更多的协作和进一步的细化提供了机会。
使用 Domino 和 DataRobot 时的端到端工作流:
- 准备数据,进行手工特征工程,并在 Domino 中构建模型
- 将数据发送给 DataRobot,以自动构建、验证和调整更多模型供用户考虑
- 模型验证和模型洞察可以在 DataRobot 和 Domino 中完成
- 可以对模型进行比较,然后使用 DataRobot 部署最佳、最准确的模型,或者通过 Domino 进行额外的项目协作和共享
- 使用 Domino 上的 Shiny 和 Flask 应用程序,可以将模型预测转化为可视化和业务决策,并且可以在 Domino 中部署完整的管道,这可以通过 API 获得
几个主要企业已经在一起使用 Domino 和 DataRobot。Domino 允许这些组织的数据科学家编写用于提取数据的脚本、特性工程,然后保存文件或使用 DataRobot API 以编程方式使用 DataRobot 构建模型。然后,数据科学家可以在 DataRobot 中探索可能模型的排行榜,发现数据中揭示的重要模式。他们还可以调整如何将预测转化为商业决策,并创建有洞察力的可视化。
从那里,数据科学家可以在 Domino 的编码器友好的笔记本环境中迭代地手工调整最佳模型,这提供了无限的库支持、版本控制和完全的可再现性——一个真正的端到端数据科学平台。
Domino Data Lab 和 DataRobot 使数据科学家能够加速模型的开发和交付。通过这种协作,两种解决方案的用户都能够获得快速模型开发、自动化机器学习、无缝协作和一键式模型部署等关键功能。这极大地提高了生产率,消除了预测建模过程中的瓶颈。
关于作者:
Dan Ganancial 领导 DataRobot 的合作伙伴营销,他负责推动与联盟和渠道合作伙伴的联合营销计划。Dan 是一名营销专家,在合作伙伴、产品和战略营销方面拥有超过 10 年的经验。在他的职业生涯中,他担任过与咨询销售、业务开发和营销相关的多个职位,在推动客户和收入增长方面取得了骄人的成绩。在推特上关注他: @datarobotdan
Domino 和 MathWorks 合作,通过增强 MATLAB 和 Simulink 云产品加速 R&D
MathWorks 从 1984 年开始加速数据科学与工程。如今,他们的【MATLAB】和Simulink产品是世界上最简单、最高效的工程和科学设计环境,拥有强大的算法和特定领域的模型。它的 400 多万用户社区正在积极地将模型整合到汽车、航空航天和能源等垂直行业的工作流中,以提高生产力,并将重点从平凡的工作转移到创造价值的智力工作上。
成为模型驱动型企业的挑战
将模型整合到产品和业务流程的核心将在未来十年推动前所未有的增长,让模型驱动的企业能够以更准确的预测击败竞争对手。在公司开始试验并慢慢将模型转移到生产场景的这些年里,出现了许多反复出现的挑战:
-
随着多个数据科学小组选择不同的技术堆栈和数据科学语言(如 MATLAB、Python 和 R),跨团队共享知识受到平台差异和缺乏集成的限制。
-
复杂的数据科学工作需要使用强大的工具和计算资源。一台具备处理深度学习等任务所需处理能力的工作站很快就会变得昂贵——一个多 GPU 桌面可能会高达数万美元。
-
金融和医疗保健行业的监管机构需要了解模型是如何开发的,以及使用了哪些数据和代码来创建它们。这需要对 IT 治理、安全性和可再现性进行严格控制。
Domino + MathWorks:支持可伸缩的基础设施和共享知识以加速模型开发
Domino Data Lab 和 MathWorks 合作的目的就是为共同客户解决这些挑战。我们本周在 MATLAB EXPO 上发布的合作伙伴声明建立在两家公司在网络优先体验中提供最佳集成的成功基础之上。
我们两家公司的使命是加速数据科学工作的开发和部署,同时加强协作和治理。对于 MathWorks 的 MATLAB 和 Simulink 用户来说,Domino 合作伙伴关系的好处是显而易见的。
知识共享和工具的广泛支持使数据科学团队能够在以往工作的基础上,与同行自由协作:
- 从任何地方都可以轻松访问 MATLAB,包括所有主要的云平台。用户通过浏览器访问他们的工具,省去了购买只在工作时间使用的昂贵工作站的需要。
- Domino 中的共享数据集使数据发现变得更加容易,并允许团队协作进行多种建模工作。
- 改善与其他工具(JupyterLab、RStudio、SAS 等)用户的协作。)携手解决最棘手的业务挑战。
- 自动版本控制,因此可以随时复制 MATLAB 和 Simulink 中的项目,以支持审计和合规性要求。
灵活的基础架构和自助式沙箱为数据科学团队提供了强大的能力和灵活性,而不会牺牲 IT 治理。
- 对 NVIDIA GPUs 和其他强大计算的大众化访问(例如,更多 CPU 内核、大型 RAM 机器和 Spark 和 Ray 等框架上的分布式工作负载)加速了从标记数据到训练模型的 ML 相关任务
- Simulink 和 Simscape 中的仿真和建模效率更高,这得益于它能够支持包含数十个 CPU 内核的容器。
- 与 Domino 的批处理执行无缝集成,用于预定的培训和启动器,以便与同行共享 MATLAB 和 Simulink 算法。
最重要的是,MathWorks 的半年发行版可以在整个组织中即时推出,而无需在整个企业的桌面机群中安装。向 Domino 平台添加新的 MATLAB 发布映像允许用户在版本之间无缝切换,从而允许用更新的版本验证现有模型。。
具有推动市场潜力的真实世界影响
我们的合作仍处于早期阶段,但我们已经看到了市场的热情。总体而言,客户欣赏这些共享功能,特别是:快速获得答案。IT 和数据科学领导者重视硬件和支持成本节约。同时,Domino 的项目跟踪工具为他们提供了对项目进度和支出的清晰洞察。
洛克希德·马丁公司通过使用 Domino 和 MathWorks 集中整个企业的工具,并选择 NVIDIA 作为其在高性能计算领域的选择,为 300 名数据科学家带来了超过 2000 万美元的数据科学效率和成本节约。借助这一三管齐下的解决方案,it 简化了协作和知识共享,同时自动化了阻碍数据科学家工作效率的手动开发任务。
一家全球性的制药公司加快了与癌症和其他慢性和威胁生命的疾病的斗争,成功地测试了数万个假设,并具有完全的重现性,同时加快了向 FDA 提交测试结果的速度。它能够打破在 MATLAB、Python、R 和 SAS 中工作的 500 多名数据科学家之间的孤岛,并更快地生产模型,以将发现发布给模型输出的跨职能“消费者”——所有这些都在 Domino 平台中完成。
我们期待实现更多功能,并帮助客户推动模型驱动的创新。
为什么“云”不再足够:Domino 在 NVIDIA GTC 展示混合/多云平台
原文:https://www.dominodatalab.com/blog/domino-at-gtc-sept-2022
更新日期:2022 年 9 月 23 日:参见我们在英伟达 GTC 发布的消息:“Domino 数据实验室宣布与英伟达合作推出新的生态系统解决方案,以加速混合和多云端 MLOps 之旅”
人工智能和机器学习是否像最近的 协议 文章所暗示的那样,“正在远离云端”?这是最近一个流行的问题,最近 VentureBeat 的一篇文章 中也提出了这个问题,文章指出“云生态系统最大的弱点之一是难以抓住本地机会。”另一个数据点与前两个数据点一致:挑战性的宏观经济条件和日益激烈的竞争使得网飞这样的公司——曾经是通过采用云来扩大规模的典型——重新评估云成本(正如《华尔街日报》最近报道的)。
Domino 与 NVIDIA 和 Ventana Research 合作编写了一份新的白皮书,探索未来的变化。在 首席数据和分析高管的 5 大 AI 考虑事项 、 中,我们探讨了下一代 AI 基础设施的关键因素,以有效管理复杂、混合/多云环境中的 AI/ML 工作负载。这些也是下周在 2022 年 9 月 19 日至 22 日 NVIDIA 的免费虚拟 GTC 会议上 Domino 会议的核心话题。
混合/云计算数据科学控制成本,提升性能
云的采用——特别是可扩展的按需计算的即时可用性——推动了机器学习(ML)的民主化。但随着数据科学领域的发展,云计算本身的承诺不再满足训练计算密集型人工智能和深度学习模型的复杂公司的需求。 凯特凯耶来自礼宾 备注:
“云计算不会去任何地方,但一些公司正在将他们的机器学习数据和模型转移到他们自己内部管理的机器上。采纳者花更少的钱,获得更好的性能。”
Domino 的 Kjell Carlsson 补充道,模型训练计算需求会根据数据量、模型类型、超参数优化的程度 — 以及数据科学家的工作时间表而大幅波动。一种混合方法将内部计算与“突发”到云以获得额外容量的能力相结合,为不同工作负载提供了规模合适的环境的终极成本控制措施。
数据主权和模型延迟推动了数据和计算的共存
控制计算成本并不是这一趋势的唯一驱动力。Ventana Research 指出,数据输入和输出引入了另一个成本考虑因素,因为提取和分析 1pb 的数据可能会花费高达 50,000 美元。除此之外, 数据主权 和隐私法规通常会将数据集锁定在单个地理区域内,同时需要考虑数据重力性能(例如在分布式或边缘用例中协同定位数据和计算以进行实时预测)。正如 Ventana Research 的 SVP &研究主管大卫·门宁格所说:
“到 2026 年,几乎所有的跨国组织都将投资本地数据处理基础设施和服务,以减轻与数据传输相关的风险。”
Domino 在 GTC 英伟达展示混合/多云平台
去年六月, Domino 宣布了 其新的 Nexus 混合企业 MLOps 平台,由 NVIDIA 提供支持。从那以后,Domino 一直在努力工作,以实现无缝混合/多云 MLOps,我们渴望在 NVIDIA GTC 大会上展示令人兴奋的创新,这是人工智能和元宇宙时代的领先开发者大会。
多米诺是钻石级赞助商 ,在 NVIDIA GTC,从 9 月 19 日至 22 日的免费虚拟会议。不要错过我们的会议:
AI Anywhere:Johnson 如何在混合和多云计算环境中扩展数据科学
9 月 20 日星期二下午 2:00-2:50 PDT
通过基于聊天的问答机会,直接与来自 Johnson & Johnson、Domino 和 NVIDIA 的专家进行实时交流。强生公司云项目办公室全球负责人 Vikash Varma 将与 Domino 战略合作伙伴和企业发展副总裁托马斯·罗宾逊以及 NVIDIA 业务开发、医疗保健和生命科学总监兼全球负责人 Rory Kelleher 一起,深入探讨在混合和云计算环境中协调数据科学工作负载的关键考虑因素。点击此处查看会议点播。
面向混合云未来的下一代人工智能基础设施(与 NetApp 和 NVIDIA 共同展示) 按需提供 9 月 19 日
Domino、NetApp 和 NVIDIA 一直在合作,为企业范围的数据科学治理、跨团队协作和运营效率提供所需的人工智能卓越中心和整体解决方案。我们将展示我们的最新解决方案,以帮助在混合环境中实现无缝数据科学和数据管理,因此不要错过与产品专家的这次会议。点击此处查看专题讲座点播。。
想知道更多我们将在 NVIDIA GTC 发布的预览吗?下载 Ventana Research 的 首席数据和分析高管的 5 大 AI 考虑事项 ,了解在混合/多云中扩展企业数据科学的关键考虑事项。
多米诺联合创始人讨论为什么模型运行世界
原文:https://www.dominodatalab.com/blog/domino-co-founder-discusses-why-models-run-the-world
By Mac Steele, Director of Product, Domino Data Lab on August 21, 2018 in
如果软件吃掉了世界,模型将会管理它。
Domino 联合创始人 Matthew Granade 最近在华尔街日报合写了一篇文章,题为“模特将主宰世界”这篇文章呼应了多米诺的观点,即每家公司都将很快依靠模型运行,否则将面临生存威胁。
今天的许多行业领导者已经在模型上运行。他们明白,数据科学的成功来自于建立新的组织能力,而不仅仅是银弹算法或雇用独角兽。同样的动态也激发了人们对 Domino 五年前帮助创建的数据科学平台空间的浓厚兴趣。我们很高兴这个想法正在成为主流!
以下是文章的简短摘录:
马克·安德森的文章“为什么软件正在吞噬世界”于 2011 年 8 月 20 日发表在本报上。安德森的分析是有先见之明的。他指出的公司——T2、网飞、亚马逊、Spotify——确实蚕食了他们的产业。较新的软件公司——滴滴、Airbnb、Stripe——也参与进来。今天,大多数行业领先的公司都是软件公司,并不是所有的公司都是这样开始的。例如,Aptiv 和 Domino’s Pizza 是其所在行业的长期领导者,它们采用软件来保持或扩大其竞争优势。创新公司的投资者现在在问接下来会发生什么。我们相信一个新的、更强大的商业模式已经从它的软件前身发展而来。这些公司构建其业务流程,将基于“闭环”数据的持续学习模型置于其工作的中心。当构建正确时,他们会创建一个强化循环:他们的产品变得更好,允许他们收集更多数据,这允许他们建立更好的模型,使他们的产品更好,并继续前进。这些都是模型驱动的业务。它们是由各行各业的在职者和初创者创造的。如果软件吃掉了世界,模型将会管理它。阅读全文(注:需订阅)。
在 Domino,我们正在构建一个平台来支持模型驱动的业务。如果您有兴趣了解更多,请阅读我们最近的白皮书,了解各行各业的组织如何将模型置于其业务核心的详细信息。
Domino 数据实验室和 Alexander Thamm 在数据和人工智能夏季会议上推出数据科学之旅加速器
Domino Data Lab 和Alexander ThammGmbH[at]是德语国家数据驱动创新和商业模式战略开发和实施的领导者,将于今天在 Alexander Thamm 的数据和人工智能夏季会议上首次推出独家联合服务产品——数据科学之旅加速器(DSJA)。
旨在帮助德国、澳大利亚和瑞士的客户加快建立模型驱动的竞争优势,DSJA 将 Domino 的企业 MLOps 平台与 Alexander Thamm 的数据科学和人工智能咨询专业知识相结合,提供一套涵盖数据运营和数据科学生命周期的基础元素,企业可以在不牺牲数据科学或 IT 团队需求的情况下扩展数据科学,以满足严格的数据隐私法规的需求。
打造 DACH 梦之队
虽然大多数公司了解数据科学的前景,但知道从哪里开始是一项挑战。根据商业应用研究中心 的 最近的一项研究,数据运营和 MLOps 被广泛认为是解决常见 ML 挑战和问题的相关概念,但只有 50%已经使用 ML 的公司开始实施它们。
Domino Data Lab 允许数据科学和 IT 团队使用其企业 MLOps 平台更快地开发和部署更多模型,从而帮助公司成为模型驱动的公司。今天,超过 20%的《财富 100 强》信任 Domino 来帮助他们克服实验数据科学的共同挑战:不灵活的基础设施、浪费的工作和生产陷阱。
[at]已经为 100 多家客户完成了超过 1,500 个项目,涵盖 5,000 多个使用案例,采用了久经考验的咨询方法:对当前数据能力进行基准测试、制定路线图、设计数据运营模型以及执行数据科学项目。Domino 和[at]共同致力于使用 Domino 的企业 MLOps 平台,为德语市场和关键垂直市场(汽车和工程、金融服务、保险和制药)的客户快速定制数据科学解决方案。
关于 Alexander Thamm 的数据& AI 夏季大会 2022
数据&人工智能夏季会议 是为期一天的活动,来自人工智能、数据科学、机器学习和数据工程等领域的专家和公司交流有关当前技术和未来趋势的信息。目的是将德国和欧洲的数据社区联网,以便学习经验、传递知识和交流关于未来发展的想法。
有兴趣了解更多信息吗?如果你正在慕尼黑参加 AT 的数据和人工智能夏季会议,Domino 数据实验室是白金赞助商,并将在会议上展示 DSJA。不能按时到达吗?点击此处下载我们的解决方案简介,敬请关注我们的最新消息!
在 DataIQ 100 中命名的 Domino 数据实验室的数据科学布道者
原文:https://www.dominodatalab.com/blog/domino-data-lab-s-data-science-evangelist-named-in-dataiq-100
DataIQ ,英国领先的数据和分析社区会员业务,名为 David Bloch ,多米诺数据实验室数据科学布道者,作为 2021 年版 DataIQ 100 最具影响力的领导者之一。
DataIQ 100 于 2014 年推出,旨在表彰英国最具影响力的数据和分析从业者。DataIQ 100 的目的是跟踪企业组织、软件供应商和服务提供商中首席数据官、首席分析官、数据科学家和其他数据专业人士的崛起。
大卫因与丹·哈里斯共同创立并主持“数据领袖高管休息室”而入选该榜单。该休息室是一个仅限受邀会员参加的系列活动,让数据科学领导者能够查看相关的专题讲座,与同行交流并分享他们的知识。
在评论休息室时,大卫说:
“与丹·哈里斯一起创建数据领导者行政酒廊取得了巨大的成功。由于新冠肺炎,通常的一系列高管简报演变成了一个领导者的在线社区,他们每两个月召开一次电话会议,包括一系列演讲者的演讲和从葡萄酒到巧克力和啤酒的指导品尝体验。”
丹补充道:
“很高兴看到 David 和许多数据休息室成员一起在 DataIQ 100 中获得认可。事实证明,这一系列活动对于以有趣和吸引人的方式与其他数据领导者分享想法非常重要,尤其是在我们无法亲自见面的情况下。”
David Bloch 于 2020 年 2 月加入 Domino 数据实验室,从新西兰搬到了英国。在加入 Domino Data Lab 之前,David 是恒天然高级分析部门的总经理,也是沃达丰新西兰大数据和高级分析部门的负责人。David 拥有 20 年的数据专业经验,曾在多个行业工作,包括卫生、电信、银行、保险和广告。
David 作为数据科学传播者的角色包括充当许多数据科学领导者的同行,使用 Domino Data Lab 作为他们的数据科学平台,创建思想领袖内容,并在欧洲和美国的活动中发表演讲。
完整的 DataIQ 100 可在https://www.dataiq.co.uk/dataiq100-2021买到。
关于 DataIQ
DataIQ 是数据和分析专业的第一家会员企业。DataIQ 是一个平台,为数据领导者及其团队提供急需的情报和帮助,以推动数据和分析行业的发展。它的目标是帮助人们通过保护和利用他们宝贵的数据资产来建立伟大的企业。
不断增长的 DataIQ 成员包括许多全球、富时 100 指数成分股公司、大型和中型市场组织,包括英杰华、巴克莱、BBC、BT、汇丰、Sainsbury’s、TUI、大众、Walgreen Boots Alliance、华纳媒体和苏黎世保险。
更多信息请访问www.dataiq.co.uk
2021 年 Domino 数据实验室成熟度指数调查显示,数据科学需要成长
原文:https://www.dominodatalab.com/blog/domino-data-maturity-index-2021
世界上最成熟的公司都极其依赖数据科学作为其长期成功的关键驱动力。但根据一项对年收入超过 10 亿美元的公司的 300 名数据科学高管的新调查,对人员、流程和工具的错误投资正在导致数据科学规模的失败。
这些障碍证明了进行数据科学是困难的,而进步需要对组织的“数据科学成熟度”和相关资源需求进行冷静的评估,以实现大规模生产模型的成功创建、部署和维护。
调查揭示了五个明确的结论:
- 短期投资阻碍增长预期
- 数据科学的角色不明确
- 更多的收入需要更好的模式
- 未经改进的模型会带来更高的风险
- 团队必须清除障碍以实现目标
附带的报告数据科学需要成长:2021 年 Domino 数据实验室成熟度指数揭示了一系列发现,这些发现表明尽管公司尽了最大努力,但它们如何以及为什么难以扩展数据科学。其调查结果包括:
预期超过投资,“引人注目的”短期投资超过持续承诺:
- 虽然 71%的数据高管表示,他们的公司领导层预计他们在数据科学方面的投资将带来收入增长,但令人震惊的是,48%的高管表示,他们公司的投资不足以满足这些预期。
- 相反,他们认为组织似乎只关注短期收益。事实上,超过四分之三(82%)的受访者表示,他们的雇主毫不犹豫地将资金投入到只能产生短期效果的“引人注目”的投资中。
公司很难执行最好的计划来扩展数据科学
- 超过三分之二的数据主管(68%)报告说,将模型投入生产以影响业务决策至少有些困难,37%的人说要做到这一点非常非常困难。
- 近五分之二的数据高管(39%)表示,数据科学产生重大影响的最大障碍是整个组织中存在不一致的标准和流程。
公司面临熟练、高效员工和所需工具的短缺
- 48%的数据高管抱怨员工的数据技能不足,或者无法从一开始就雇佣足够的人才来扩展数据科学(44%)。
- 超过五分之二的数据高管表示,他们的数据科学资源过于孤立,无法构建有效的模型(42%),几乎同样多的人(41%)表示,他们没有被赋予明确的角色。
误导模型的风险越来越大
该研究还探索了是什么让数据科学领导者夜不能寐。这些结果向那些在数据科学领域偷工减料的公司发出了严厉的警告:
-
令人震惊的是,82%的受访者表示,他们的公司领导层应该担心坏的或失败的模型可能会给公司带来严重后果,44%的人报告说,四分之一或更多的模型从未更新。受访者列举了模型管理不善的几个令人震惊的后果,包括:
- 损失收入的错误决策(46%)
- 员工或薪酬决策的内部关键绩效指标有问题(45%)
- 安全和赔偿风险(43%)
- 建模中的歧视或偏见(41%)
介绍 Domino 数据实验室成熟度指数
除了调查结果之外,这份报告首次推出了 Domino 数据实验室成熟度指数:对组织数据科学健康状况的独立评估。成熟度指数被管理给每个调查应答者。它衡量组织使用正确的工具、雇用正确数量的生产数据科学家、将模型投入大规模生产以及协调整个企业大型团队的复杂工作的能力。
调查结果与来自 Domino 的成熟度指数评估进行了比较,结果非常惊人,表明收入增加与成熟度指数表现之间有很强的相关性。寻求获取数据科学投资预期回报的领导者可以使用 Domino 数据科学成熟度指数作为实现更好模型和财务结果的工具。
一个真正有趣的发现是,该调查证实了我们长期以来的立场,即数据科学成熟度越高的公司,其投资回报就越高。例如,超过三分之二的数据高管担心将模型投入生产以影响业务决策,而高成熟度公司中 53%的数据高管将模型投入生产几乎没有困难,是低成熟度公司中 25%的两倍多。
想了解更多关于在数据科学方面是什么将高成熟度公司与低成熟度公司区分开来的见解吗?我们的新报告数据科学需要成长:2021 Domino 数据实验室成熟度指数揭示了它们之间的差异。立即下载!
多米诺多元化与包容俱乐部提供牧师旅行资助
原文:https://www.dominodatalab.com/blog/domino-diversity-inclusion-club-providing-rev-travel-grants
By Grace Chuang on March 26, 2018 in
正如我们最近的数据科学管理调查所证明的那样,协作被列为促成数据科学成功的首要能力。从该领域的数百次电话和电子邮件中,我们知道数据科学领导者“获得”了协作,但仍难以将碎片整合在一起。协作包括有效的沟通,从不同的角度、观点和经验中吸取经验来解决问题。我想强调最后一句话中的一个词,因为它对于数据科学行业的成功既被忽视又至关重要:多元化。
“多元化”对我和我的许多同事来说有着丰富的含义和个人重要性。当我去年夏天第一次加入 Domino 时,多元化在我们的招聘政策中得到了最清晰的体现,但在交谈中也最常被提及。随着我们的快速发展,增加了具有独特背景和经验的人,多元化的话题开始越来越频繁、越来越引人注目、越来越多样化:重复出现的女性午餐、多米诺多元化演讲者系列、多元化招募动力时间,以及午餐时间放映鲁保罗的飙车比赛。
多米诺多样性和包容性俱乐部是有机发展的。自一月份以来,该俱乐部已经成为我们在整个达美乐推广多元化和包容性价值观的正式承诺。无论是通过招聘、保留、职业发展还是培训和发展,我们的成员都致力于提供包容性的环境,在这样的环境中,个人的才能受到重视,并被赋予实现其最大潜力的权利。这对 Domino 和数据科学行业来说是一个互利的贡献,因为麦肯锡发现“性别或种族和民族多样性排名前四分之一的公司更有可能获得高于其全国行业中位数的财务回报”,而人才创新中心发现缺乏多样性意味着“更少有前途的想法进入市场”
有问题吗?联系格蕾丝。
本着这种精神,达美乐的多样性和包容性俱乐部很高兴为达美乐即将举行的 Rev 数据科学领袖峰会(5 月 30 日至 31 日在旧金山举行)提供旅行资助。Rev 汇集了各行业和公司的数据科学领导者,他们认为数据科学是一个关键的业务优势和首席管理人员关注的问题。我们认为,在 Rev 上展示、交流和体验多样性至关重要,在 Rev 上,今天和明天的数据科学领导者将分享技能、知识和想法,将数据科学从宣传变为现实。我们的目标是消除多样性进入数据科学专业领域的障碍。我们对 Rev 的持续支持证明了我们的承诺。
申请 2018 年 Rev 多样性旅行资助。请联系 Grace 询问有关项目的问题。
面向 MLOps 的民主化 GPU 访问:Domino 扩展了对 NVIDIA AI Enterprise 的支持
原文:https://www.dominodatalab.com/blog/domino-expands-support-to-nvidia-ai-enterprise
我们客户的趋势很明显:对于构建日益复杂的模型的企业来说,基于 GPU 的培训是一种竞争优势。从预测性供应链的NLP到临床试验中组织病理学的 图像处理 ,以及能源基础设施的 预测性维护 到保险行业的 自动理赔 ,我们在任何事情中都可以看到这一点。
Domino 于 2020 年与英伟达 合作,在英伟达 DGX 系统上认证 Domino Enterprise MLOps 平台。这种支持使我们的客户能够将强大的 NVIDIA A100 Tensor Core GPUs 用于人工智能和 ML 工作负载。客户可以使用 Domino 在一个 NVIDIA DGX 系统中的一到八个 A100 GPUs 上训练模型。而今年早些时候,我们 宣布支持 通过 Ray & Dask(除了 Spark)进行多节点训练。该功能允许在大规模 DGX 集群基础设施上进行大规模模型训练。此外,Domino 对 A100 GPU 中的 NVIDIA 多实例 GPU (MIG)特性 的支持有助于客户轻松地在单个 DGX 系统上同时部署多达 56 台笔记本电脑或推理作业。
但是英伟达的人工智能产品不仅仅局限于 DGX 的 英伟达人工智能企业 ,它建立在 英伟达 EGX 平台上。这种架构支持在各种部署中快速部署、管理和扩展人工智能工作负载,包括主流加速服务器和现代混合云。
这就是为什么今天,我们很兴奋地 宣布 我们正在与英伟达密切合作,通过支持 Domino Enterprise MLOps 平台运行更广泛的英伟达 GPU,并针对英伟达 AI Enterprise 进行验证,以使 Domino 在 英伟达认证系统 上无缝运行,来深化我们的产品集成。
对客户来说,差异是显而易见的
对于 Domino 客户来说,好处是显而易见的。通过支持 NVIDIA AI 企业软件套件,Domino 将扩展我们对更多 NVIDIA 加速计算平台的支持。除了 DGX,Domino 将通过戴尔、HPE、联想或其他硬件提供商的包装,支持主流加速服务器的各种 NVIDIA GPUs,包括 A100、A30、A40、A10 和 T4。这将在更广泛的 NVIDIA 加速系统上为客户提供相同的认证 Domino 功能。
由于 NVIDIA AI Enterprise 使成千上万运行 VMware vSphere 的公司能够在主流 NVIDIA 认证系统上虚拟化 AI 工作负载,这一新的集成使企业更容易采购、运行和扩展 Domino 的 Enterprise MLOps 平台。
随着 Domino 支持扩展到更多基于 NVIDIA 的平台,企业可以获得两全其美的优势:领先的 NVIDIA AI 训练和推理性能跨各种系统,以及所有必要的数据隐私性、完整性和可靠性。
Domino 强大、可扩展和协作的企业 MLOps 平台帮助数据科学团队在构建人工智能和机器学习解决方案的模型时利用英伟达的高级 GPU。
建立在成功记录的基础上
Domino 强大、可扩展和协作的企业 MLOps 平台帮助数据科学团队在构建人工智能和机器学习解决方案的模型时利用英伟达的高级 GPU。
强生公司还利用 Domino 和 NVIDIA 的技术组合,构建企业 MLOps 战略来实现模型速度。在最近的 NVIDIA GTC 上,我们的首席执行官 Nick Elprin 和强生企业首席信息官 Jim Swanson 讨论了该公司在业务中嵌入数据科学的经验,考虑到了人员、流程和技术。
在不到两年的时间里,AES 使用 Domino 的企业 MLOps 平台从 0 到 50 个模型投入生产。利用英伟达 GPU,AES 的模型覆盖了各种不同的领域:预测发电设备的维护需求,指导金融科技能源交易,进行水文预测,为公用事业提供天气预报,等等。
我们对与 NVIDIA 不断增长的合作伙伴关系的前景感到兴奋,这将使我们的客户能够利用模型实现其业务核心。
多米诺骨牌为社会利益服务:合作、可复制性和开放性
几个月前,当我加入 Domino 数据实验室领导 Domino for Good 计划时,这感觉像是我已经走了很长时间的道路上的完美的下一步。
在 21 世纪初,柏克莱是 T2 开放存取运动的中心。我是物理化学的研究生,接触办公自动化哲学让我的视角发生了翻天覆地的变化。
我的新观点让我认识到,仅仅做科学研究和写文章是不够的。为了真正扩大对科学知识的总贡献,我们必须朝着促进协作和可复制性的开放系统努力。引用 PLOS 的话:
开放 是代表最佳科学价值观的思维定势。一个专注于将科学家聚集在一起,尽可能迅速和广泛地分享工作,更快地推进科学并造福整个社会的组织。”
*自从九年前离开学术界以来,我一直在倡导开放的力量,围绕数字权利和互联网政策开展教育并建立共识,倡导数据方面的规范变革,并倡导将数据科学用于对社会产生积极影响的工作。带着非常熟悉的使命和愿景——合作、可复制性和开放性,为社会利益服务——开始这一新的旅程,这是一种非常有益的感觉。
利用数据做好事的强大新工具
Domino for Good 是一个任务驱动的计划,反映了 Domino 致力于将资源投入到数据科学服务社会的承诺。我可以从 Domino 内部看到一些信号,这些信号清楚地表明了这个承诺有多严肃。一个是他们给了像我这样的行善者定义、设计和构建多米诺骨牌的自由。另一个原因是,我的其他团队的同事们慷慨地为 Domino 贡献了他们的时间和智力资本,尽管作为一家高速增长的初创公司的一部分,他们还有许多其他要求。我们不仅向学生提供免费帐户,还支付学生产生的计算成本,这是该组织对 Domino 的承诺的一个外部可见的例子。您将看到该组织致力于 Domino for Good 的其他演示,因为我们沿着这条道路进行实验和迭代,以找到 Domino 的人员和平台可以为越来越多的从事数据科学以造福社会的人做出贡献的最佳方式。
从我使用 Domino 平台的第一天起,我就知道它对于非营利组织和教育领域的数据工作来说是一个特别好的工具。在以后的文章中,我会更详细地解释为什么我相信这一点,但是现在我只想简单地谈谈对我来说特别重要的三个方面。
Domino 是一个协作平台。给足了眼球,所有的 bug 都是浅薄的。一个集市比一个大教堂更有生产力。这些谚语有直观的意义,并且有无数的例子证明了其中的真理。许多类型的工作都有协作平台,包括软件开发。越来越多的优秀开源软件可以归功于协作软件开发的工具、过程、系统和规范。但是数据科学和软件开发不一样。我们不能简单地将数据科学工作嫁接到软件开发的结构上,并期望它繁荣发展。另一方面,如果我们有一个专门为协作数据科学构建的结构,我们可以从根本上改变人们使用数据科学来应对社会面临的重要挑战的方式。
Domino 使结果具有可重复性。在科学史上,几乎所有的进步都来自于站在前人的肩膀上一步一步地前进,而不是某个人突然灵光一现。对之前已经完成的工作有一个清晰、详细的理解可以加快进度,避免重复劳动。这对任何团队都是有价值的,但当团队的一部分或全部是志愿者时,这一点就变得至关重要了。
**Domino 项目可以打开。当 Domino project 被设置为“被任何人发现”时,可复制性和协作的好处可以被极大地放大。当在团队层面上实践时,可复制性和协作是进步和生产力的强大加速器,当在组织层面上实践时,它们是更强大的加速器。当可复制性和协作在全球范围内得以实现时,潜在的进步和生产力是如此巨大,以至于一想到可以实现什么就令人兴奋。
多米诺平台具有如此巨大的社会影响力并不是偶然的。多米诺创始人认为,我们正处于计算领域一场根本性革命的风口浪尖,这场革命的影响将不仅仅是经济影响或社会影响,而是两者兼而有之。联合创始人克里斯·杨最近对我说
“当人们问我们希望什么样的出路时,我总是感到困惑。为什么大多数人认为财务收益是我们唯一的动机,而我们显然建立 Domino 不仅仅是为了做这些?”。
在与联合创始人 Nick Elprin 的交谈中,我被他声音中真诚的激情所打动,当他谈到作为如此巨大的事情的一部分而产生的内在回报感时,这种感觉将改变所有行业的人们处理数据的方式。
我非常感谢 Chris、Nick 和我的其他才华出众的同事热心于贡献 Domino 资源来增强社会影响力。永远的多米诺骨牌才刚刚开始它的旅程。我不确定前方的确切道路。但我确信这将是一次精彩的演出。*
我们的客户说得很好,正如 Gartner 给 Domino 命名的“远见者”
原文:https://www.dominodatalab.com/blog/domino-gartner-magic-quadrant
Domino 的团队很自豪地在 Gartner 的数据科学平台魔力象限中被评为有远见者。得到第三方的认可很好,但听到通过 Gartner 的报告综合和整理的客户反馈更令人欣慰。我们最自豪的反馈来自三个方面:我们的产品、我们的客户服务和我们的销售团队。
我们投入巨资的一个领域是协作,这些功能一直获得好评。我们关注协作,因为我们知道这是伟大的数据科学的核心。当团队能够分享想法、重用过去的工作并积累团队知识时,他们是最有效的。Domino 实现了无缝协作,即使对于大型的分布式团队也是如此。这被认为是该平台的一个关键优势,对此我们并不感到惊讶。
不仅仅是我们的产品得到了积极的评价。我们不断听到关于我们客户支持团队的好评。我们知道我们的客户都是试图解决棘手问题的忙人。我们总是不遗余力地帮助他们实现目标。早在两年前,我们的客户就写了我们的支持作为选择 Domino 的理由。我们很高兴我们在这一领域的投资得到了客户的赞赏,并在继续壮大我们的团队。
最后,事实证明,客户对他们与 Domino 的销售关系也有非常积极的评价。尽管我们确实有非常好的销售人员,但我们认为这种反应实际上反映了 Domino 客户的整体体验。当有人买了一个产品,但它不起作用时,销售关系就是糟糕的。没有销售人员能克服这一点。当销售人员带来解决问题的方案,并让购买者成为英雄时,销售关系就很好。我们认为我们的销售关系得到如此高的评价,是因为我们的销售人员带来了一个伟大的产品和强大的支持。
完整的报告还赞扬了我们的市场意识,这意味着我们在产品、销售、营销和客户成功方面都做得很好。我们很高兴它得到了关注,我们渴望继续与我们的客户建立良好的产品和良好的关系。
Domino 荣幸地被 Gartner 魔力象限命名为“远见者”
原文:https://www.dominodatalab.com/blog/domino-honored-named-visionary-gartner-magic-quadrant
Domino 的团队很自豪地连续第二年在 Gartner 的数据科学和机器学习平台魔力象限中被评为有远见者。令人兴奋的是,公司和行业分析师越来越认识到数据科学平台的价值,我们很荣幸得到认可。听到我们的客户通过 Gartner 的报告综合和传达反馈,这尤其令人欣慰。
一位客户,Topdanmark 项目经理 Stig Geer Pederson 说,
“在一直处于定量研究和数据科学前沿的保险行业,我们必须以模型为导向,这样我们才能提供最佳的客户体验。对于代码优先的数据科学家来说,Domino 是迄今为止最好、最灵活的机器学习平台;他们是一个战略合作伙伴,将帮助我们保持在北欧保险市场的领导地位。”
Gartner 报告强调了对我们来说最重要的两个主题:我们的产品和我们的客户承诺。你必须阅读报告,看看我们的客户告诉 Gartner 什么。特别是产品的三个方面得到了客户的称赞和我们开发团队的大量投资:协作、开放和模型交付。
- 协作 -我们从一开始就投资的一个领域是平台内的协作特性;这些特性获得了*“在供应商中这一关键能力的最高分。”*我们关注协作,因为我们知道协作是大数据科学的核心。当团队能够分享和发现想法,重用过去的工作,并建立集体知识时,他们是最有效的。Domino 实现了无缝协作,即使对于大型的分布式团队也是如此。
- 开放性——如果每个人都能一起工作,不管他们选择的工具和语言是什么,协作就会更加强大。Gartner 将 Domino 评为*“灵活性、可扩展性和开放性的综合得分最高”*我们一直致力于构建一个开放平台,以便我们的客户能够从当今市场前所未有的创新中受益,从深度学习到自动化 ML 再到数据可视化。
- 模型交付 -我们的客户不断告诉我们,模型只有在影响业务时才有价值。我们听到了反馈,并投入巨资来扩展模型交付的功能。我们很高兴地得知,我们的客户对我们的功能以及我们对产品请求的整体响应能力给予了很高的评价。
我们知道我们的客户都是试图解决棘手问题的忙人。我们的目标是帮助他们实现他们的目标,并且很高兴地看到客户将支持质量作为选择 Domino 的主要原因。
完整报告还指出,我们已经能够在竞争激烈的市场中获得牵引力,这反映出我们在产品、销售、营销和客户成功方面做得很好。虽然市场继续快速发展,但我们很高兴能够继续专注于打造优秀的产品和与客户建立良好的关系。
Domino 是 Forrester Wave 领域的领导者:基于笔记本的预测分析和机器学习
今天,我们很高兴地宣布,Domino 已被任命为Forrester Wave:基于笔记本的预测分析和机器学习,2020 年第三季度 的领导者。该报告根据 26 项标准评估了 12 家供应商,Forrester 将这些标准分为三个高级类别:当前产品、战略和市场份额。据报道:
“Domino 提供了一个企业数据科学平台,支持用户在当今快速扩张的 PAML 生态系统中所需的多种多样的 ML 选项,并具有可重复性原则和治理。”
由数据科学家为数据科学家打造
面对因 2020 年事件而加剧的激烈竞争和其他威胁,许多组织目前(或计划)在数据科学领域投入巨资。他们正在寻找值得信赖的合作伙伴,这些合作伙伴可以帮助他们解决围绕数据科学的谜团,并产生许多供应商承诺但很少实现的出色投资回报。对于一些人来说,这种紧迫性创造了一个独特的机会,将组织锁定在一个有围墙的花园中,以支持销售计量计算和存储的更高目标。他们以开发人员为中心的工具的封闭生态系统为个人用户提供了解决个人数据科学项目的能力,而数据科学的大部分真正成本隐藏在 IT 账单和开发人员中。
相比之下,Domino 是由数据科学家为数据科学家构建的。我们相信,我们在这一浪潮中的领导者地位反映了植根于协作、可复制性和开放性的独特方法。我们的数据科学平台不仅为数据科学家提供了他们想要使用的所有工具,还提供了作为团队自由协作的能力,以释放更大的利益。在我们看来,在这一波中获得“协作”标准的最高分强调了我们提供的丰富功能,以大规模构建数据科学专业知识并将其应用于整个组织。该报告指出:
Domino 驯服了混乱,将您所有不同的 PAML 工具集合在一起,并将它们绑定在一个公共的、受治理的平台上。它允许您的数据科学家使用他们想要的工具,无论是 Domino 自己的 Jupyter、RStudio 和 Zeppelin 笔记本电脑和集成开发环境(ide),还是 AWS SageMaker、DataRobot、MATLAB 和 SAS 等第三方工具。”
解决数据科学的最后一英里
但是,有一个有效的方法来建立和训练模型只是战斗的一半。对于许多组织来说,将模型投入生产也是最具挑战性的。事实上,Forrester 建议“基于笔记本电脑的 PAML 客户应该寻找能够帮助你……利用 ModelOps 大规模运营人工智能模型的提供商”。
Domino 提供了多种方式将模型部署到生产中——从允许业务用户与底层模型交互以支持关键决策的应用程序,到允许模型嵌入到关键业务系统和流程中的健壮 API。今年早些时候我们推出了多米诺模型监视器——一种新的产品,允许组织跟踪整个组织中所有生产模型的性能,以确保它们在周围世界变化时继续提供准确和可信的信息。我们相信,我们在该领域的创新是我们在该报告的“模型操作/模型运行”标准中获得最高分(并列)的原因。
回顾过去,展望未来
我们在 2014 年发明了数据科学平台,作为支持更大愿景的使能技术-使数据科学成为组织如何运营其业务各个方面的不可或缺的一部分。要完成这一使命,首先要重新思考和优化端到端的工作流程,了解数据科学如何从一个想法发展到实验,并最终发展到生产。对于数据科学家来说,这不仅仅是提高流程的效率。您还必须考虑数据科学过程中所有其他参与者的独特需求。未能考虑所有因素可能意味着数据科学被认为是帮助您解决单一问题的被误解的技能,与在董事会中占据突出位置的一流企业职能之间的差异。
今天,我们很高兴为超过 20%的财富 100 强企业提供大规模数据科学支持。我们对基于笔记本电脑的预测分析和机器学习平台的下一步发展有着独特的愿景,我们期待将这一愿景带给我们的客户。我们相信,Forrester 和我们一样,在“解决方案路线图”、“执行能力”和“实现”标准方面给 Domino 打了最高分。
下载 Forrester Wave
我们很高兴提供这份重要研究的免费副本,这样您就可以更多地了解这个市场正在发生的快速创新,并了解为什么 Domino 被公认为领导者。
多米诺在招人
By Thomas Robinson, VP of Strategic Partnerships & Initiatives, Domino on April 16, 2020 in Company Updates
世界正在经历一个充满挑战的时代。我们都有朋友和家人直接或间接地受到了新冠肺炎病的影响。
幸运的是,尽管经济困难,达美乐仍能继续我们的增长;我们正在招聘所有团队和所有办公室的员工。如果你有兴趣在 Domino 工作,访问我们的职业页面申请职位。
在招聘和入职继续进行的同时,我们已经对我们的流程进行了更改,以反映我们新的工作现实。
远程首次面试流程
甚至在封锁在美国实施之前,我们就主动将我们的采访过程 100%远程化了。多米诺现在通过 Zoom 进行我们所有的采访。鉴于这是人们通常面试方式的一个重大变化,我们推出了面试指南,帮助候选人了解他们在何时会见谁,如何连接到他们的 Zoom 面试,并为他们提供了一个聊天框,让他们可以实时直接与我们的招聘团队联系。
Interview guide for a candidate with all the information they need for their remote interview process
新员工多米诺学院
对于新员工,Domino 在新员工被移交给他们的团队开始他们特定角色的入职培训之前,会提供一周的“Domino 学院”。在这一周里,我们不仅要进行标准的账户设置和福利登记,还要就我们的公司战略和文化、如何使用我们的产品、我们的市场定位以及我们如何优先考虑和执行产品和工程工作进行培训。在我们的人员团队的带领下,在我们的管理人员和经验丰富的员工的教导下,我们花时间与新员工在一起,以确保他们具备进入角色的所有背景。
现在我们是 100%远程的,我们已经将 Domino Academy 移动到 Zoom。我们所有的新员工在开始工作之前都会通过联邦快递收到他们的欢迎包,里面有礼品和笔记本电脑。新员工每隔一周的周一加入他们的新员工团队,开始他们的入职和培训。
Kayla, our recent BDR hire, celebrating her new hire kit
社区走到一起
我们的社区已经在我们新发现的互动方式中团结起来。我们的社区团队一直在努力让我们的员工在这些偏远时间保持联系,反过来,我们的员工也开始了他们自己的远程友好活动和聚会。无论是虚拟锻炼会议、宾果之夜,还是我们的 moms & pops 支持小组,该团队已经找到了保持我们社区繁荣的新方法。
The Domino community getting a virtual workout in together
了解更多信息
查看我们的空缺职位。在 LinkedIn 、 Twitter 或脸书上关注我们。
多米诺是公认的最佳工作场所
原文:https://www.dominodatalab.com/blog/domino-is-recognized-as-a-best-place-to-work
我们谦卑而荣幸地宣布,达美乐被列入build In 的 2021 年旧金山/海湾地区最佳工作场所名单。更令人兴奋的是,我们被列入了三个类别:最佳中型公司、最佳薪酬公司和最佳综合公司!没有我们的 Domino 团队成员,我们不可能做到这一点,我们为他们每一个人的成就和对 Domino 的贡献感到骄傲。
我们认识到我们的团队成员可以在任何公司工作,我们很荣幸他们选择在 Domino 工作。我们为我们雇佣的员工感到非常自豪,并且明白我们有责任创造一个促进个人和团队成长的包容性工作环境。最重要的是,我们将 Built In 的认可视为对我们员工的一种褒奖,他们构建了一种繁荣的文化,每天都践行着我们的核心价值观。
Domino 是一个独特的工作场所,充满了热情的团队成员,他们在每种情况下都寻求真理。员工加入我们是因为他们想和以工作为荣的敬业的团队成员一起工作。我们并不总是第一次就做对,但我们的勇气和对卓越的追求推动我们通过复杂和模糊的挑战。我们在成长的过程中不断学习,无论是在我们的产品中还是在我们的文化中,只要我们能从中吸取教训,我们就不会犯错误。在达美乐,我们认识到我们正处于一个旅程中,并相信我们最大的资产之一是员工的声音。真理生活在第一线,通过员工与客户和彼此之间的日常体验。如果我们继续倾听团队成员的意见,欢迎反馈,并根据他们的创意采取行动,我们就能不断追求卓越。
用我们的联合创始人兼首席执行官 Nick Elprin 的话说:
“作为一家公司,我们成功的一切——我们的产品、思想领导力、销售和支持——最终都源于我们的员工。我非常自豪能与这么多有才华的人一起工作,他们希望发明、合作并努力帮助我们的客户释放数据科学的力量。”
我们今年有雄心勃勃的目标,包括大幅增长。我们去年增长了 40%,2021 年也有类似的计划。为了帮助我们扩大规模,同时确保我们保留我们的文化,我们继续发展我们的人力资源系统和流程,密切关注员工体验。
我们的 2021 项目包括:
- 基于我们最近设计的 Domino 框架改进和形式化经理开发。
- 启动 Domino Academy 来帮助和支持新团队成员在 Domino 的前 30 天。
- 通过职业道路、培训和经理反馈循环来促进员工发展。
如果你有兴趣了解更多关于达美乐职业的信息,并为我们的文化做出贡献,请点击这里查看我们的机会。
内建的最佳工作场所
内置基于薪酬信息、福利和文化项目的算法对公司进行排名。今年,根据显示技术专业人士需求的数据,最佳工作场所算法增加了公司对 DEI 和远程文化的承诺。排名是通过结合公司在这些类别中的得分来确定的。这些类别包括:100 个最佳工作场所、50 个最佳小型工作场所、100 个最佳中型工作场所、50 个最佳福利公司和 50 个最佳薪酬公司。
Domino 模型监视器现已推出
上周, 我们宣布了Domino 数据科学平台的最新发布,这代表着企业数据科学团队向前迈进了一大步。我们还宣布了一款激动人心的新产品—Domino 模型监视器(DMM)—它创建了一个“单一平台”来监视整个组织中所有模型的性能。DMM 让公司安心地知道他们的战略决策所基于的模型是健康的,因此对业务、客户满意度等没有负面影响。
在当今前所未有的时代,模型监控尤其重要;当人类行为“正常”时,公司的重要模型是根据来自完全不同的经济环境的数据训练出来的。借助 DMM,您可以识别与培训数据不同的生产数据(即数据漂移)、缺失信息和其他问题,并在更大的问题出现之前采取纠正措施。
Domino Model Monitor 将端到端的模型管理过程与模型操作和治理统一起来。
数据科学团队的工作价值只有在他们构建的模型投入运营后才能完全实现,这样他们才能真正影响业务。一旦投入生产,监控其性能至关重要,以便在需要时对其进行重新培训或改造。在许多组织中,这项责任要么落在 IT 团队身上,因为他们没有足够的工具来评估模型性能,要么落在数据科学团队身上,因为他们占用了重要的增值项目的时间。Domino 致力于用一个对两个团队都有帮助的解决方案来帮助数据科学生命周期的这一方面。
DMM 提供了对跨多个平台的所有生产模型运行状况的全面洞察和可见性。担心生产模型未被跟踪的日子已经一去不复返了;DMM 防止了当生产模型没有得到适当照顾时可能发生的财务损失和不赞成的客户体验。
DMM 允许公司在单个门户中查看跨其组织的所有部署模型,而不管语言、部署基础设施或它们是如何创建的(例如,使用或不使用 Domino)。它为跨团队和模型的监控建立了一致的方法,因此您可以打破部门孤岛,消除不一致或不频繁的监控实践,为整个组织的模型健康指标建立标准,并方便您的 IT/Ops 团队负责监控生产模型。
它首先监控作为模型输入提供的生产数据,并将单个特征与最初用于训练模型的对应特征进行比较。这种对数据漂移的分析是一种很好的方式,可以确定客户偏好是否发生了变化,经济或竞争因素是否影响了您的业务,或者数据管道是否出现了故障,以及是否有空值正在提供给期望更多有用信息的模型。
您还可以上传实时预测数据,或者任何真实数据,以便分析预测准确性。如果 DMM 使用您控制的阈值检测到数据漂移或模型精度下降,它可以发出警报,以便数据科学家可以评估模型并决定最佳纠正措施。通过让数据科学团队专注于监控潜在的“风险”模型,他们有更多的时间进行实验和解决问题。IT 团队可以高枕无忧,因为他们知道在一个易于理解的仪表板中,他们拥有深入了解模型性能所需的一切。
数字多用表的工作原理
要监控任何进行批量预测或部署为 API 端点的模型,您需要在 DMM 上注册模型,配置检查并设置数据接收系统。您可以计划每天、每周或每月对每个型号进行检查,并配置检查失败时谁将收到电子邮件提醒。DMM 接收生产数据,并将其与原始训练数据进行比较,以查看是否有任何特征发生了显著变化。还可以定期获取和评估基础数据和标签数据的预测质量。
使用 Domino 模型监视器,您可以监视:
- 对输入要素的更改。
- 对输出预测的更改。
- 分类和回归模型的模型质量度量跟踪。
- 生产模式的历史趋势。
防止财务损失和降低客户体验
我们周围的世界在不断变化,用于训练模型的历史数据可能无法反映我们今天生活的世界。在这种时候尤其如此。使用 2018-2019 年的数据建立的模型能够很好地预测 2020 年疫情期间会发生什么吗?现在,公司比以往任何时候都更需要意识到买家偏好的变化、经济变化以及其他超出他们控制的外部因素,这些因素会使他们的模型过时。
内部变化也会导致模型降级,在某些情况下,降级的程度相当严重。例如,在一家全球保险公司,上游数据管道中的意外变化导致欺诈检测模型做出次优预测,并在数周内增加索赔支付。DMM 帮助他们检测数据漂移,以便他们能够根据最新的管道变化更新模型,并防止进一步的超额赔付。
DMM 使公司能够检测变化,而不必投入昂贵而稀缺的数据科学资源来不断检查每个模型。他们可以拥有一个仪表板,显示生产中所有模型的运行状况的详细信息,并深入了解详细信息。即使他们不想监控仪表板,他们也可以设置阈值,以便发出主动通知,通知关键人员(包括最初构建模型的数据科学家)是时候使用当今世界的更新数据重新训练它,或者使用新算法完全重建它。DMM 让公司安心地知道,他们的战略决策所基于的模型反映了当今的世界,而不是模型建立时的世界——最大限度地减少对其业务的经济影响,保持客户的满意度和参与度等。
后续步骤
Domino 的团队在设计和开发 DMM 方面投入了大量精力,我们很高兴将这一新产品带给致力于优化其模型健康和流程的数据科学团队。我们感谢客户和朋友在整个开发过程中不断的反馈,并鼓励我们继续改进 Domino,巩固其作为企业中数据科学最佳记录系统的地位。从 Domino 模型监视器的免费试用开始。
要了解更多关于模型监控和 Domino 模型监控器的最佳实践,请参加我们 7 月 14 日的网络研讨会。
Domino 模型监视器:您的问题,已回答
原文:https://www.dominodatalab.com/blog/domino-model-monitor-your-questions-answered-1
By Samit Thange, Senior Product Manager, Domino on July 31, 2020 in Product Updates
在我们最近的Rev 虚拟网络研讨会Monitor Your All Models中,我们讨论了许多组织在确定何时需要重新培训甚至重建关键业务决策所依赖的模型时所面临的挑战。这是我经常听到的一个问题,毫不奇怪,这个活动吸引了众多行业的数百名与会者。
我还在网上研讨会上展示了我们的最新产品, Domino 模型监视器 (DMM)。与会者的兴趣和提问量如此之大,以至于我们无法在现场活动中回答所有问题。这个博客提供了一些最常见问题的答案。我们鼓励阅读白皮书了解模型监控的最佳实践,或者注册试用 DMM 。
1)可以在 DMM 中注册在 Domino Data Science 平台之外创建的模型吗?
是的,您可以注册和监控在 Domino 平台之外构建的模型。DMM 的一个关键价值主张是,它使您能够监控业务关键型模型,而不管用于构建它们的技术或平台,也不管它们部署在哪里。例如,您可以让不同部门的数据科学家团队使用 R Studio、SAS Studio、MATLAB、AWS SageMaker 和其他工具构建模型,他们生成的所有模型都可以在 DMM 中的一个仪表板上进行监控。
2)这是一个可以在协调环境中按需扩展的容器化解决方案吗?
是的,DMM 是一个 Kubernetes-native 应用程序。这使得添加更多基础设施变得容易,以便在工作负载需要时运行更多容器。
DMM 可以监控哪些类型的型号?
DMM 可用于监控回归模型,以及二元和多类分类模型。在回归模型的情况下,不是准确度或精确度,而是诸如均方根误差、平均绝对误差等度量。用于跟踪模型的预测质量。DMM 还可以用于监控文本和图像分类模型的输出预测漂移和模型预测质量。
4)可以监控的型号数量有限制吗?
不需要。DMM 可以处理的模型和数据数量取决于部署规模。
5)漂移趋势图衡量的是什么?如何将它与漂移量并列解释?
当您在 DMM 中分析漂移时,漂移趋势图会显示某个特性的漂移在所选时间段的每一天是如何变化的。总漂移数反映了该时间段所有数据的整体漂移。
6)漂移是如何计算的——是累计还是仅比较开始和结束时间?
DMM 计算聚合数据的漂移。例如,如果您正在查看过去七天的数据,它将为所有七天内的所有输入要素和输出预测构建聚合直方图,并将它们与训练数据进行比较以计算漂移。
7)关于预测正确性的用户输入如何与 DMM 挂钩?
在 DMM 中,您可以采用与预测数据相同的方式获取基本事实标签。假设您有一个每周生成一次这些标签的流程(使用人类专家或系统生成)。您可以将它们放在 AWS S3 存储桶中的 CSV 文件中(您需要 2 列–GT 标签和预测 ID ),并使用该文件的路径对 DMM 进行 API 调用。DMM 会完成剩下的工作。
8)对于数据接收,我们能否直接链接到本地数据源,例如任何 SQL Server 环境?
今天不是开箱即用。根据您使用的特定本地 SQL 数据库,Domino 将添加一个数据连接器,允许您直接接收数据。请让您的 Domino 客户成功经理在 DMM 路线图中优先考虑您的特定数据库连接器。
9)我们的数据集大小以 TB 为单位。DMM 能够支持他们吗?
数据大小限制取决于为 DMM 调配的群集的大小。如果您的数据大小超过了集群所能支持的范围,您可以对数据进行降采样,并将其接收到 DMM 中。例如,如果一个原始数据流有超过 1000 万个预测,我们的观察是,每天摄取 100 万个预测就足以为模型提供可靠的漂移信号。作为部署的一部分,Domino 将与您一起评估一个良好的基线集群大小,如果需要,以后可以添加更多的计算资源。
10)数据源如何连接到 DMM?
DMM 中有一个专用的 UI,通过它可以添加新的数据源和管理现有的数据源。在添加新数据源时,DMM 会要求提供必要的元数据和身份验证细节,作为数据源添加的一部分。每当从这个源读取数据时,提供的信息将用于建立连接和读取数据集。
11)对于实时模型,可以从 Apache Kafka 流中读入输入和输出数据吗?
如今,数据只能使用 REST APIs 获取。然而,通过 Kafka 摄取数据是我们正在考虑的事情。如果 Kafka 用例对您很重要,请联系您的 Domino 客户成功经理来登记反馈。
额外资源
要了解更多关于 DMM 或模型监控的信息,我鼓励您阅读我们的新白皮书了解模型监控的最佳实践。如果您错过了网上研讨会,您可以观看点播会议:监控您所有模型的健康状况。如果你喜欢你所看到的,你可以注册试用 DMM 。
多米诺在 Gartner 魔力象限中任命了一位远见者
By Domino Data Lab on February 19, 2020 in Company Updates
今年的 2020 Gartner 数据科学和机器学习平台魔力象限 现已出炉,我们 Domino 非常荣幸第三次被评为有远见者。我们认为,我们在 Gartner 魔力象限中赢得这一荣誉,是因为我们的产品愿景和路线图有意关注拥有大型代码优先数据科学家团队的企业的需求。正如一家大型金融公司的数据科学总监在 Gartner Peer insights 上分享的:
“他们的[Domino’s]平台向我们的技术领导者展示了现代分析堆栈需要什么,并在这里引起了真正的变化。”
从我们的客户和分析师那里听到我们走在正确的道路上,并提供有意义的价值来帮助公司加速他们的数据科学工作,这总是令人欣慰的。随着组织认识到数据科学创造业务优势的力量,数据科学团队面临着前所未有的压力。我们倾听客户的心声,加倍努力进行产品开发和客户支持,提供广泛的能力来帮助客户实现数据科学产业化。
从产品的角度来看,我们认为 Domino 平台的三个方面是赢得这一美誉的基础:开放性、协作性和可复制性。
-
开放性
从一开始,我们就采取了开放的方法,让团队能够集中管理硬件,并允许数据科学家使用他们喜欢的语言和工具,这样他们就可以走在最前沿。我们真的突破了极限,帮助我们的客户让他们的数据科学基础架构经得起未来考验,并将其无缝集成到他们现有的体系中。Domino 现在可以安装在任何基础设施上——云(当然包括 Amazon Web Services、Microsoft Azure 和 Google Cloud Platform ),本地,甚至在他们自己的 Kubernetes 集群中。我们还重建了整个计算网格,以利用 Kubernetes 来分配数据科学工作负载和部署生产模型,消除了数据科学家面临的开发运维难题,减轻了 IT 负担并降低了基础架构成本。
-
协作
当数据专家可以轻松地分享想法、相互学习,并在以往工作的基础上更上一层楼时,伟大的事情就会发生。当他们可以更轻松地与 IT 和业务利益相关者协作时,他们可以更好地确保他们构建的模型是重要的,并且可以更快地将新模型投入生产。因此,我们更进一步,在数据科学团队内部以及跨 IT 和业务部门实现无缝协作。例如,我们的实验管理器,一个“现代实验室笔记本”,使数据科学团队能够无缝地跟踪、组织和管理实验,而我们的产品组合仪表板项目使管理人员能够轻松地看到项目在项目生命周期中的位置,并确定任何需要立即支持的项目。
诸如此类的协作能力正在帮助我们的客户加强研发工作,加快部署流程,并获得对已部署模型、飞行项目和基础设施成本的重要可见性。正如一家制造公司的首席数据科学家在 Gartner Peer Insights:
“多米诺骨牌数据实验室平台简化了数据科学/机器学习工作流程的每一个组成部分,从版本控制、环境管理到可再现性和最终部署。它使我们能够以比以前快 10 倍的速度向客户部署机器学习解决方案,并为整个公司的合作开辟了全新的可能性. . "
-
再现性
再现模型结果的能力对于快速创新和有效的治理和管理都是至关重要的。有了再现性,数据科学家可以在过去工作的基础上追求更雄心勃勃和复杂的项目。业务涉众可以看到模型是如何构建的,因此他们对模型更有信心,因此更有可能使用它们。法规遵从性人员获得了模型的透明度,包括模型依赖性和开发决策,因此他们可以更好地降低风险。我们的再现性引擎自动跟踪数据科学实验的所有方面(代码、环境、数据等),因此公司永远不会丢失工作,始终可以再现他们的结果,并拥有他们所需的透明度。
总之,这是一个强大的组合,我们的客户反复提到这是他们成功的关键。
我们真的很荣幸在创建企业级平台的工作中获得认可,并正在卷起袖子将更多功能打包到我们的平台中。我们有一个强大的路线图,我们相信它将帮助我们的客户成功地驾驭快速发展的市场。我们将继续确保 Domino 可以在任何平台上使用,并允许使用任何工具或框架。我们将提供更多的功能,以便公司能够更容易地大规模产业化数据科学。一旦模型投入生产,我们将帮助他们更好地管理和监控模型,以便他们能够在当今充满活力的市场中更好地竞争。