欢迎光临
我们一直在努力

医疗者设计什么Domino 博客中文翻译(二)

原文:Domino Blog

协议:CC BY-NC-SA 4.0

原文:https://www.dominodatalab.com/blog/advanced-analytics-innovator-meg-walters-at-allstate

一个专注于人工智能的卓越中心(CoE)是 Domino 新的金融服务和保险版 数据科学创新者手册 中一些创新者的流程引擎。从功能上来说,CoE 是一个用于数据科学和高级分析的集中式计算资源,由一个团队管理,但可以服务于一个、五个、十个、一百个甚至数千个在大型企业中使用大规模模型的数据科学家。好事达是 成熟卓越中心 的一个典型例子,好事达是美国 最大的保险公司之一 也是数据科学的主要用户。我们今天介绍的创新者是 Meg Walters ,好事达卓越分析中心的高级经理兼数据科学负责人。

Meg Walters 是好事达公司数据科学领域的领军人物。她负责管理好事达分析卓越中心,从创意、参与到实施,在整个好事达创造创新并推广数据科学的使用。好事达的卓越中心项目在 2021 年雇佣了 5000 多名员工,其中 几乎占公司员工总数 的 11%。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

沃尔特斯说她的团队做了很多基础研究。它构建了许多模型、框架、见解,甚至整个好事达团队都可以使用的数据集。这个概念是让一切都是可复制和可重复使用的。“团队中的任何其他人都应该能够使用我们在一个下午完成的东西,”Walters 说。COE 的团队以 12 周为一个周期工作,然后转向新的研究和项目,以实现持续的创新。

好事达利用 Domino 的企业 MLOps 平台将分析卓越中心扩展为一个模型构建工厂,为数据科学家提供了巨大的生产力收益。公司任何地方的团队都可以灵活地利用最新的数据科学技术,如自然语言处理、计算机视觉、天气、自动驾驶汽车和多模态建模。

企业 MLOps 平台解决了好事达面临的最大挑战之一:环境管理。“我们发现,当一个创新模型在某人最喜欢的环境中创建时,可能是在他们的笔记本电脑上,我们发现有时,当你交付某样东西时,可能需要两周时间才能在不同的环境中镜像和正确运行,”Walters 说。她认为 MLOps 是采用一个模型并将其轻松转移到另一个团队的主要因素。可再现性是将过去和现在的模型扩展为新的业务创新的促成因素。

帮助其业务领导清楚地看到数据科学如何解决重要的业务问题是好事达扩展数据科学的另一个障碍。为了解决这个问题,Walters 组建了一个原型团队。它构建出小型原型,这可能是底层带有一些轻量级分析的微小的最小工作软件,或者可能是演示体验的视频。这些具体的演示使业务决策者能够理解像多模态建模或自动语音识别这样的东西是如何改善业务结果的。

下载我们的免费电子书 阅读好事达的 Walters 和其他创新者、顾问和行业专家在金融服务和保险行业的数据科学领域的更多见解。

除了一些在好事达扩大数据科学使用的项目的例子,Walters 还指出了如何在整个企业推广和创新数据科学的四个技巧。

  1. 将新产品的一部分交到企业手中,让他们了解创新对企业的影响和益处。

  2. 学会使用业务语言,教业务人员一些关于数据科学的语言,并让他们获得一些关于您正在构建的东西的经验。

  3. 确保你构建的所有东西都提供了最大的可重复性和可重用性,是可推广的,并且可以在几年后从货架上拿下来,仍然是完全可重用的。

  4. 定期为创新留出时间和空间。提供一个环境——也许是一个不涉及生产系统的创新沙箱——让数据科学家可以进行实验。

Walters 的故事,就像你可以在我们的免费电子书 中读到的其他创新者一样,努力为数据科学及其支持的业务开发一种通用语言。她的团队商业领袖展示了数据科学如何解决当前的商业挑战。“现在,我们有许多业务部门为我们带来用例,提出问题,并对数据科学的创新应用表现出更多的兴趣和参与,”Walters 说。“这正是您希望从 CoE 获得的影响。”我们邀请您参加 下载数据科学创新者行动手册 并从其他九位数据科学领导者那里了解如何利用 MLOps 加速金融服务和保险行业的创新。

原文:https://www.dominodatalab.com/blog/advice-aspiring-chief-data-scientists-mindset-need

尼克·科莱格拉夫是白板公司的创始人,这是一家专注于机器学习和人工智能的战略创新公司。此前,Kolegraff 是 Rackspace 的首席数据科学家,也是埃森哲的首席数据科学家。作为 Domino“工作中的数据科学领导者”客座博主系列的一部分,Kolegraff 为数据科学家和数据科学经理提供了建议,以考虑他们何时或是否决定担任“首席数据科学家”的角色。这个建议包括对你需要具备的心态、你需要解决的问题类型以及你需要雇佣的人的见解。总共有三个员额。这篇文章关注的是成为“首席数据科学家”需要具备的心态。

我正和一个好朋友聊天,他们问我“对于一个渴望成为首席数据科学家的数据科学家,你有什么建议?”

我们讨论了一些问题,

“那到底是什么意思?”
“首席数据科学家是做什么的?”
“你作为首席数据科学家,需要带来什么价值?”
“需要具备哪些技能?”
“你的心态呢?”
“真的是 C 级角色吗?”
“领先的数据科学甚至是真的吗?”

这些只是我们讨论的几个问题。

在那次长时间的谈话后,有人问我是否愿意将那次谈话变成一系列博客文章,所以我们在这里。做一个 首席数据科学家与头衔 无关,只是 对你的影响有 。我写这一系列博客的目的是塑造一种心态,帮助你专注于 达到下一个水平,而不是追逐一个头衔。

虽然我的头衔是*“首席数据科学家”*,但我过去不是,现在也不是科学家。我姐姐是,当我告诉她我的工作头衔时,她忍不住笑了。事实是,成为首席数据科学家没有灵丹妙药,只有结果和影响。你在商界的地位越高,科技含量就越低。我相信每个人都铺好了自己的路,所以没有一条路会是一样的。但有一点在你的整个旅程中都是相同的——一个为一致的不容置疑的结果而努力的 。你需要通过掌握技能和建立新技能来不断提高…同时坚持不懈地寻求一致的结果和推动变革的创新。要做到这一点,归根结底是一种心态。心态是你所相信的态度的集合,但更深一层来说,它是你承诺过的一种生活方式。心态有助于塑造你的技能;技能使你能够解决新问题;新的问题创造了对新型人的需求或人成长的机会;将这些东西组合起来实现结果是你的组织设计,最终是你的责任。

作为首席数据科学家,你负责整个组织的数据科学、机器学习和人工智能。 不管发生什么,都是你的错。 如果你没有得到你想要的结果,或者其他人正在努力整合你的工作,那是你的错。这是一个难以接受的规则。这在短期内也是一种高风险的心态,尤其是在当今世界,当前的政治策略要求你最大限度地提高受欢迎程度,而不是一致性。我相信,从长远来看,如果你坚持这种心态,并且 总是寻找你可以掌控的地方,这是最有回报的,因为这迫使你不断改进你的游戏。

我喜欢摔跤这项运动。如果你认为摔跤课是生活的广泛应用,你就学会了拥有。它帮助我在我(以前的)运动生涯和利用数据和机器学习来建造东西之间架起了一座桥梁。摔跤这项运动和我周围的人帮助我形成并不断发展我的思维模式。如果没有这种心态,就不可能成为首席数据科学家。对我来说,摔跤是世界上最好的运动。它不仅教你平衡肌肉和大脑,还教你何时、何地以及如何平衡这两方面。它给运动员上了艰苦的生活课,让他们了解人类身体和精神的心理和能力。在我摔跤生涯的早期,我在赛季中是不败的。我在一场比赛中摔跤,我领先了,被绊了一下,裁判判了一个“快速击倒”,我输掉了比赛。我重新看了比赛的录像,发现那是一个糟糕的判罚,不是一个别针。第二天训练时,我向我的教练抱怨这件事,他抓住我,把我扔到墙上

“你让自己处于那种境地是你的错,你把比赛留给裁判判断是你的错,你输了是你的错,当你输了的时候永远是你的错——永远不要把摔跤比赛留给裁判判断”

现在你会因为这样的事情被起诉,但这是我一生中重要的时刻。我很高兴它发生了。那一刻让我难以忘怀。我以前从来没有从我教练的角度来看待这件事,但是现在,它非常有意义。我完全控制了摔跤比赛中发生的事情,我让它发生了——我不想面对现实,所以我责怪裁判。这一刻为我摔跤中的 归属持续改进n 不出意料的结果 打下了基础。那年,我的教练带领我赢得了古典式摔跤的州冠军,后来,我娶了他的女儿。巴金加。但是,直到后来我才发现这种心态在我的工作和生活中有更广泛的应用。

**从某种意义上说,做首席数据科学家也差不多。你的工作经常受到他人的评判,很容易将责任归咎于裁判。在数据行业,我最喜欢的一句名言是:

“如果你折磨数据足够长的时间,它会承认任何事情”
——罗纳德·科斯

有了数据,任何人都可以收集数据并形成自己的观点——或者根据他们的参考框架,可以将数据解释为几乎任何东西…他们是对的。你的工作是找到更高的位置。 成为首席数据科学家意味着承担责任,无论发生什么。如果你不愿意接受这种心态,那么你应该重新考虑成为首席数据科学家。如果你愿意接受这种心态,那么你的心态和方法还有其他细微差别可以借鉴,包括:将数据科学与商业价值联系起来;理解你不是对一个单独的产品负责,而是对一系列相互关联的东西负责,这需要一个更广阔的思维模式;而且,您正处于需要交付成果以赢得更多时间来获得额外成果的阶段。然而,你不能害怕或“放弃”不断证明自己的想法。

Domino 注:Nick Kolegraff 在这个系列中的下一篇文章“给有抱负的首席数据科学家的建议”将于下周在 Domino 数据科学博客上发布。下一篇文章涵盖了首席数据科学家需要考虑的问题类型。**

原文:https://www.dominodatalab.com/blog/advice-aspiring-chief-data-scientists-people-need

尼克·科莱格拉夫是白板公司的创始人,这是一家专注于机器学习和人工智能的战略创新公司。此前,Kolegraff 是 Rackspace 的首席数据科学家,也是埃森哲的首席数据科学家。作为 Domino“工作中的数据科学领导者”客座博主系列的一部分,Kolegraff 为数据科学家和数据科学经理提供了建议,以考虑他们何时或是否决定担任“首席数据科学家”的角色。这个建议包括对你需要具备的心态、你需要解决的问题类型以及你需要雇佣的人的见解。一共三个岗位。第三篇文章关注的是你需要雇佣的人。

在您作为首席数据科学家掌握了您正在解决的问题类型后,这种洞察力将帮助您组织和找到解决这些问题所需的人员。我在这篇文章中的观点来自于一个企业环境,当人员预算超出单个团队的范围时。此外,企业中计划的挑战和投资与直接面向消费者的创业公司不同。要解决的每个问题都千差万别,并且取决于许多因素,但是您正在处理的数据类型将决定您要寻找的人需要什么类型的技能来实际解决该问题。我还假设你需要的人会有软件工程技能。当你在构建产品和自治系统时,这些技能是必须的。要正确地分解它,需要一整本书的知识,所以我精心挑选了几个高层次的例子,涵盖了大多数情况。这些技能根据它们处理的数据类型和处理这些数据所需的技能分为两类。

首先是时间序列数据。时间序列数据是指时间或事件序列对数据集本身具有特定的意义。您可能希望构建一个 API,该 API 可以将股票报价器作为输入,如果其期权定价出现异常,则实时返回,然后将报价器和异常推送到订阅提要。除了工程技能之外,这种类型的人才将在 ARIMA 建模、稳定波动性、建模周期性和移动平均线方面拥有强大的技能,同时理解批处理与流计算世界中每一项的细微差别。

接下来是文本数据。这一类别分为太多的类别,无法在此一一赘述。然而,我们可以撒网说任何包含单词的东西都是文本数据:网页档案、聊天记录、文档库、普通教科书等等。您可能希望构建一个 API,它将文档作为输入(pdf 文件),读取文本,并自动将其映射到搜索索引的类别。您可能希望创建一个 API,给定一个句子,将名词和动词映射到句子,然后自动修复糟糕的句子结构。除了工程技能之外,这种类型的人才将在 NLP、(自然语言处理)语言学、语义技术、名称和实体解析、歧义消除技术和主题建模方法方面拥有强大的技能,同时理解批处理与流计算世界中每一项的细微差别。

接下来是运营数据。运营数据由支持企业运行和运营的数据组成。这可能是购买交易、营销活动结果、销售和销售线索、供应链、库存等的集合。你可能想寻找新的方法来降低成本,并更有效地为你的产品需求储备原材料。或者,您可能希望在不同的产品组合中寻找交叉销售机会,销售团队可以利用这些机会来开发销售线索。这一领域的人才通常在运筹学、经济学和统计学方面有很强的背景,以及通常在参数建模类别中的各种建模技术。他们还可以轻松地在各种平台上获取所需的数据。

最后,我们有需要进行识别的数据。这可以是音频文件的集合、图像的存档、视频的集合等。您可能希望构建一个系统,该系统对图像档案进行爬网,并基于图像(仅基于图像,不基于元数据)自动将它们组织到文件夹中。识别问题是今天人工智能的基础,神经网络技术是大多数人的最爱,被证明具有广泛的应用和适合各种问题。该领域的人才将对神经网络变体之间的差异有很强的理解:卷积神经网络、深度信念网络和反向传播。同时理解其中的每一个如何映射到不同的计算范例。

一群没有共同目标和工作目标的人很难保持一致的交付结果的节奏,因此思考如何建立结构和创造沟通渠道不是一件容易的事情。

最初,您可能认为资源库是一个好方法。每个人都有一致的管理者和志同道合的人;他们在项目/产品上被塞进其他组织,然后在完成项目/产品后回到大本营。如果所有部门都有统一类型的问题要解决,这是很好的,但通常情况并非如此。每个部门都有不同的需求…每一种需求都有不同的期望。嵌入式团队很棒(也就是说,让每个人雇佣他们想雇佣的人),你是他们雇佣谁的顾问。然而,没有全面的一致性,创建标准来控制质量就成了一场噩梦,并且它很快开始滚雪球。团队还会纠结于他们想雇佣谁,因为目标事先没有明确定义。我建议探索的一个更灵活的模型是从发现、建立、优化和维护功能的角度考虑问题。这使您在处理许多不同类型的问题时变得僵硬,允许您根据需要完成的目标灵活地组织团队,还允许您在构建和部署的过程中创建一致性并控制质量。

作为首席数据科学家,您的心态将有助于为您和您组织中的其他人铺平道路,以不断提高他们的技能,同时培养一种坚持不懈地追求不容置疑的结果和推动前进的创新的动力。通过定义你要解决的问题(建议、认可、果断行动)和它们的状态(优化、建立或维护),你可以开发出一个执行模型,为你的组织和执行计划所需的人员提供清晰的思路。 你的工作就是把针往前拨。作为一个人,你的责任是维护你的技术、社区,最重要的是,你的人民的生计。

原文:https://www.dominodatalab.com/blog/advice-aspiring-chief-data-scientists-problems-solve

尼克·科莱格拉夫是白板公司的创始人,这是一家专注于机器学习和人工智能的战略创新公司。此前,Kolegraff 是 Rackspace 的首席数据科学家,也是埃森哲的首席数据科学家。作为 Domino“工作中的数据科学领导者”客座博主系列的一部分,Kolegraff 为数据科学家和数据科学经理提供了建议,以考虑他们何时或是否决定担任“首席数据科学家”的角色。这条建议包括对的洞察、你需要具备的心态,你需要解决的问题类型,以及你需要雇佣的人。总共有三个员额。第二篇文章关注你需要解决的潜在问题。

你还没搞清楚自己在执行什么,就不能执行。听起来很简单,但实际上很难大规模实施。有许多相互关联的部分。了解如何什么那些棋子影响映射回进入公司是至关重要的。弄清楚你正在解决的问题将有助于你执行。

当围绕要解决的问题进行组织时,有两件事情需要考虑:

  1. 您正在解决/构建什么类型的智能能力
  2. 从白板到生产,您将如何执行它

然而,不熟悉这个行业的人需要很容易理解你如何分解这两件事并讨论解决方案。掌握你正在解决的问题类型将有助于你为你需要雇佣的人员类型制定一个计划,以及如何将你的执行力映射回公司的目标。

当我想到*“智力”*时,我把它分成三种主要类型:

暗示性的

  • “嘿,这里有些事情需要考虑?你怎么看?”
  • 基于输入建议用户可能喜欢的东西
  • 搜索推荐作风问题

识别

  • “咦,这是什么东西?”
  • 基于输入识别事物
  • 图像声音文字图案风格问题

果断行动

  • “做这件事”
  • 根据输入告诉用户做什么
  • 自治系统自动化游戏玩家机器人风格问题

这些类型或类别决定了你在创造速赢时的结果有多容易出错,但也有助于决定从基层开始的策略。例子:你可以一开始就使用暗示方法,然后使用暗示方法的结果来帮助解决稍后的识别问题。这些问题桶中的每一个都为你设置了要问的问题,这些问题的答案将定义你如何解决问题,制定你的执行策略,最重要的是有效地沟通你正在尝试做什么。

一旦你确定了问题的类型,并意识到我前面所展示的是一个非常宏观的图景,你就会想进一步了解市场潜力、范围、可行性、成本等。但是所有这些归结起来就是你所创造的目标、解决方案和价值。回答以下问题将有助于制定适合全局的执行策略。这些问题中的每一个都将在这篇文章的后面详细阐述。

  • 我们是在尝试做一个暗示性认可性,还是果断行动的问题?
  • 你是发现建立优化维护吗?
  • 这是一个抽象还是谜题的问题?
  • 什么是组织生命周期工作流程

了解这四个目标之间的动态和平衡将有助于设定基调,并开发一种自然的方式来设定对您试图完成的目标的期望。你希望人们对系统试图实现的目标保持一致。但是你也希望你的团队以一种有凝聚力的方式一起工作,并确保每个人都明白这种动态是至关重要的。这四个不同的目标可以在早期为你需要做什么和你需要谁去做定下基调。

  • 发现 是指你在浏览大量数据,以确定能够帮助企业做出更好决策的见解。您正在以新的方式探索现有的数据。
  • 建立 是你需要分支到产品、市场和技术的新类别和新维度的时候,你当前正在做的事情重新定义了你当前的世界观。你已经认识到你当前的世界观需要改变,并且/或者你想要保护自己,并为之努力,以防以后会发生这样的事情。
  • 优化 就是当你有一个现有的系统,想办法增强它,让它变得更好。也许让它运行得更快,也许让预测更好,也许让它运行得更有效率,这样你就可以节省基础设施成本。
  • 维护是指当您拥有一个现有系统,对它的运行方式感到满意,并且只想让它保持在线并以最有效的方式平稳运行。您可能还想对系统进行一些小的修改,以增强或改进它,同时支持系统 24 小时运行。

**这四个目标的技能和能力大不相同,但都同样需要。它们也完全取决于你是在解决一个抽象问题还是一个难题。以这种方式组织的美妙之处在于,人们可以在每一个目标中进行轮换,以建立对其他人所做的事情及其重要性的感觉。你也不局限于你能解决的问题类型。我将它们视为开发项目生命周期中的不同移交。

商业中的抽象问题是模棱两可的。作为一名首席数据科学家,您通常只有很少的机会(有时只有一次机会)来解决一个抽象的问题,并在极端不确定的情况下做出决策。你在生意中遇到的许多问题都属于这一类。你必须知道什么时候数据在帮助你做这些决定,什么时候数据在为观点提供噪音。

商业中一个抽象问题的例子,

“[插入姓名],我们希望您能为我们的产品线增加一些智能功能,这将使我们比竞争对手更有优势。您能提出一些方案并在下个季度为我们提供一个工作原型吗?”

欢迎来到抽象问题。

这是你得到的所有方向,如果你成功了,你就增加了巨大的价值。如果你不成功…这是你的错,你需要弄清楚你做错了什么。难题仍然是复杂的问题,只不过是不同的解决方法。所有的部分都存在,你只需要把它们组合起来就可以完成你的目标。当我说碎片时,我指的是你可以用来解决问题的资源,这可以是任何东西,从闲置的陈旧技术,到你与其他部门建立的关系。

组织生命周期和工作流程对您的执行方式至关重要。(参见组织生命周期维基百科)。目前商业战略中的惯例会教你如何玩弄政治,影响你周围其他人的行为来完成你的议程,我个人认为这是 b****t 。让人们做他们自己。让他们自己做决定。说到底,有两个人一个想要 X ,另一个想要 Y 。把 XY 放在桌子上,实话实说。你会不同意。找到你们都同意的 Z。让你的结果说话,朝着不容置疑的结果不断改进,他们总会赢。但请记住,一家公司的好坏取决于它的员工。如果他们之间没有凝聚力,朝着一个共同的目标努力,这个系统就会崩溃。当创建内聚性以有效执行时,生命周期和工作流携手并进。

工作流程是公司保持质量水平和一致性的方式。他们有特定的流程来控制这些事情。有时它们毫无意义,充斥着官僚机构。当你建立或优化的时候,这真的开始变得很重要。但是要意识到一致性和质量的重要性。当你建立时,一致性和质量不是一个重要的因素,只要你设定了适当的期望,你就只是在追踪使某件事情“工作”并证明它是一件“可行”的事情。当你有了既定的东西,你就朝着优化它的方向前进,这时一致性和质量就成了必不可少的衡量标准。如果你试图建立一些新的东西,而公司有一个伪装成敏捷框架的瀑布心态,你将很难用看板方法来完成工作。底线:你的工作是为你的团队创造一个可以成功的环境,这没有什么灵丹妙药,只有令人惊叹的人。

Domino 注:Nick Kolegraff 在“给有抱负的首席数据科学家的建议”系列中的最后一篇文章将于下周在 Domino 数据科学博客上直播。最后一个帖子会涵盖你需要雇佣的人。如果你错过了科莱格拉夫的第一篇博客文章,这篇文章涵盖了你需要具备的心态,请访问这里的。**

原文:https://www.dominodatalab.com/blog/ai-enterprise

在本次数据科学 Popup 会议中, Unity Technologies 的人工智能和机器学习副总裁 Danny Lange 深入探讨了人工智能在 Unity、网飞、优步和其他地方的企业中的实际应用和挑战。

原文:https://www.dominodatalab.com/blog/alternative-data-machine-learning

也许在过去的十年中,特征工程最大的发现是认识到你可以通过理解一个人的社会网络的行为来预测他的行为。这种非传统社会数据的使用推动了大量的经济增长,因为它彻底改变了模型的准确性和适用性。

在未来,访问替代数据,如商店的客流量、停车场的卫星图像或文本数据中锁定的信息,可能会让模型解锁下一个伟大的创新功能。

在本次演讲中, Kathryn Hume 深入探讨了非传统数据在金融中的应用。她涵盖了从业者可用选择爆炸的宏观趋势、真实进步与炒作的混淆、众包方法的进步以及其他主题。该讲座全面而可行地概述了数据科学组织如何超越表格数据和传统统计方法,在意想不到的数据源中寻找机会。

原文:https://www.dominodatalab.com/blog/an-in-depth-view-of-data-science

数据科学是统计学、计算机科学和商业相结合的领域。在组织努力保持竞争力、增加收入和取悦客户时,它受到组织的高度重视,因为数据科学家能够从企业创建的大量数据中获得关于如何改进企业决策的见解。它的价值如此重要,以至于随着组织在数据、技术和人才上花费数千万美元,扩展数据科学已经成为新的业务需求。

在本文中,深入研究数据科学,以及 Domino 的 Enterprise MLOps 平台如何让您在业务中扩展数据科学。

数据科学是 STEM 中的一个跨学科领域,它结合了数学和统计学、计算机科学以及商业敏锐度,以在复杂的数据集中发现可用于改善决策的模式。

就目前的形式而言,数据科学在行业和应用方面是无限的;唯一的要求是数据、计算能力、数据科学家,以及成为模型驱动的。随着各级企业以数字方式收集更多类型和数量的信息,以及计算能力比以往任何时候都更容易获得,这变得越来越容易。如今,数据通过多种渠道不断生成,包括交易系统、传感器、摄像头和在线交互。存储方面的改进使得实时捕获、管理和使用这些数据成为可能。

这些进步对从金融和银行业到医疗保健和保险业的各个行业都产生了巨大的影响。他们实现了新的跨行业应用,如客户分析和欺诈检测。例如,自然语言处理的进步使得医疗保健专业人员可以自动记录患者的就诊记录,减少了记录时间,并减少了患者离开诊所后很长时间内可能出现的歧义。罕见事件检测,如罕见疾病诊断和信用卡欺诈,在准确性方面有了显著提高

一名成功的数据科学家拥有统计学和计算机科学领域专业知识方面的技能、创新思维和强大的沟通技巧。沟通怎么强调都不为过,因为正是这一特点确保了结果从白板有效地转化为对业务指标的影响。交流的信息通常是模型、流程或算法如何从数据中提取见解,并将其应用于企业内的关键问题。只有当业务理解模型时,他们才会信任模型来驱动业务决策。模型可以以消费者为中心,比如识别关键消费者群体。它们也可以是内部的,比如确定哪个部门的产出最高,或者公司里谁应该加薪。

履行这一角色所需的技能组合以及转型业务影响的潜力,使其被评为“21 世纪最性感的工作”。数据科学家也被称为独角兽,因为他们需要复杂多样的技能。因为独角兽很少存在,所以组织倾向于平衡数据科学家团队的技能。

数据科学技术

数据科学家有各种各样的技术可供他们使用,通常只受数据的质量和数量以及处理能力的限制。

今天,数据科学中使用的最先进的技术由于其获取信息的性质而被归入人工智能(AI)一词,机器学习、深度学习、自然语言处理(NLP)和计算机视觉都被认为是人工智能领域的分支。这些技术都不是新的。事实上,深度学习最早是在 1943 年从理论上描述的。但是低成本、高性能计算和内存的出现使得这些技术得到了广泛应用。

今天最常用的技术是机器学习。据 DeepAI 的人说,“机器学习是计算机科学的一个领域,旨在教会计算机如何在没有明确编程的情况下学习和行动。”根据这个定义,即使是逻辑回归模型也有资格成为机器学习技术。机器学习技术可以分为三类:监督学习、非监督学习和强化学习。

  • 监督学习包括回归和决策树等技术,重点是预测目标变量。常见的例子包括预测(任何事物)和分类。
  • 无监督学习没有目标变量,聚类等技术用于查找相似记录或行为的组。常见的例子包括创建客户群和异常检测。
  • 强化学习侧重于优化特定的决策。这些算法根据过去的决策进行训练,并通过奖励正确的选择和惩罚错误的选择来有效地学习如何优化决策。常见的例子包括推荐引擎和自动驾驶汽车。

数据科学工具包

数据科学家和 IT 人员在数据科学生命周期的所有阶段利用工具(DSLC)。这包括访问和准备数据、构建和测试模型以及将它们部署到生产中。对于给定的任务,有许多商业和开源软件包可用。此外,这些工具可能需要用户编写代码或使用拖放菜单。通常,数据科学家更喜欢基于他们的教育、经验和他们正在解决的问题的工具。此外,新的工具和软件包也在不断开发中。

使用拖放的工具通常在知道如何编码方面有最低限度的先决条件(如果有的话),但是它们也可以限制一个人能完成什么。另一方面,编写代码需要更多的先决知识,但可以在优化解决方案方面产生相当大的好处。拖放和编码就像选择是买现成的毛衣还是自己织;买现成的更容易,但会给出一个更千篇一律的结果,这样袖子可能会太短或腰围太长。另一方面,编织毛衣需要更多的时间,但可以让你创造出你想要的最终产品。

无论您的数据科学团队使用哪种类型的工具,成功的关键是确保所使用的工具集中可用,能够互操作,匹配您团队的技能组合,并允许您构建解决业务问题所需的模型类型。

数据科学生命周期(DSLC)

DSLC 包括项目从构思到在商业中使用的各个步骤。最简单的形式有四个阶段:

  • 管理:管理阶段集中于理解项目的目标,并对任务进行优先排序,以满足时间和预算要求。
  • 开发:在开发阶段,数据科学家构建和评估模型,并研究新技术来改进他们之前的工作。
  • 部署:部署阶段将模型移动到一种状态,在这种状态下,数据可以在业务流程中用于决策。
  • 监控:监控阶段是 DSLC 的最后操作阶段,在此阶段,组织确保模型交付其预期的性能。

数据科学生命周期:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

为了扩大数据科学的规模,DSLC 必须高速发展,因此模型可以在几天或几周内开发和部署,而不是几个月或几年。我们称这个模型为速度。从数据工程师到数据科学家再到业务部门再到开发工程师,会发生许多移交,如果没有适当的架构和技术支持,这可能会减慢移交过程。

实现高模型速度所需的关键能力包括:

  • 数据科学家、IT 和业务部门之间的有效协作
  • 数据科学家可以立即获得集中式工具和计算
  • 整个 DSLC 的治理和安全
  • 由自动化和数据科学记录系统驱动的标准模式和实践
  • 知识库
  • 所有数据科学项目的可见性
  • 生产中模型的监控和管理

也许也是经常被称为 21 世纪最性感的工作,数据科学是值得大肆宣传的少数学科之一;它是多维的、跨学科的和多方面的。数据科学正在彻底改变企业的运营和组织方式,随着技术的进步,应用程序只会变得更加准确。Domino 通过提供一个平台来帮助数据科学团队茁壮成长,该平台使他们能够实现高模型速度,同时还确保数据科学的安全性、治理和可再现性。

Amanda Christine West 是一名数据科学家和作家,居住在科罗拉多州的博尔德市。她获得了密歇根大学的学士学位和弗吉尼亚大学的数据科学硕士学位。在数据科学领域,她最热衷于预测分析、数据可视化、大数据和有效的数据科学交流。

原文:https://www.dominodatalab.com/blog/an-introduction-to-model-based-machine-learning

这篇博客文章跟随我从传统统计建模到机器学习(ML)的旅程,并介绍了一种新的 ML 范式,称为基于模型的机器学习 (Bishop,2013)。基于模型的机器学习可能会引起统计学家、工程师或希望在其研究或实践中实现机器学习的相关专业人员的特别兴趣。

在我攻读交通工程硕士学位期间(2011-2013 年),我在研究中使用传统的统计建模来研究与交通相关的问题,如高速公路撞车事故。当我开始攻读博士学位时,我想探索使用机器学习,因为我读过一些强大的学术和行业用例。特别是,我想开发一些方法来了解人们如何在城市中出行,从而更好地规划交通基础设施。

然而,我发现这种从传统统计建模到机器学习的转变令人望而生畏:

  1. 有大量的文献可以阅读,涵盖了数千种 ML 算法。还有一个新的词汇需要学习,比如“特性”、“特性工程”等等。
  2. 我必须了解使用哪种算法,或者为什么一种算法比另一种算法更适合我的城市交通研究项目。
  3. 如果我的问题似乎不符合任何标准算法,该怎么办?我需要设计一个新的算法吗?

在阅读了大量文献并观看了几门关于机器学习的 MOOCs 之后,我在 Coursera 上发现了达芙妮·柯勒教授的关于概率图形模型(PGM)的课程。这后来让我找到了一本由的 Christopher Bishop 教授写的教科书,书名为“模式识别和机器学习”,我发现它很容易理解。所以很自然地,我查阅了 Bishop 的其他出版物,这时我发现了他的论文,标题是“基于模型的机器学习”。这是我职业生涯的决定性时刻:我爱上了贝叶斯机器学习。如果你喜欢这篇博文,你可能会对毕晓普和他在微软剑桥研究院的同事写的关于这个主题的书感兴趣。

机器学习领域已经发展了数千种学习算法。通常,科学家会从这些算法中进行选择,以解决特定的问题。他们的选择常常受到他们对这些算法的熟悉程度的限制。在这个经典/传统的机器学习框架中,科学家们被约束于做出一些假设,以便使用现有的算法。这与基于模型的机器学习方法形成对比,后者寻求为每个新问题创建定制的解决方案。

MBML 的目标是" "提供一个单一的开发框架,支持创建各种定制模型 "。这一框架源于三个关键理念的重要融合:

  1. 贝叶斯观点的采用,
  2. 使用因素图(一种概率图形模型),以及
  3. 快速、确定、有效和近似推理算法的应用。

核心思想是所有关于问题域的假设都以模型的形式明确化。在这个框架中,模型只是一组关于世界的假设,以概率图形格式表示,所有参数和变量都表示为随机分量。

贝叶斯推理

支持机器学习的这种不同框架的第一个关键思想是贝叶斯推理/学习。在 MBML 中,潜在/隐藏参数被表示为具有概率分布的随机变量。这允许以一致和有原则的方式量化模型参数中的不确定性。一旦模型中的观察变量被固定到它们的观察值,最初假设的概率分布(即先验)使用贝叶斯定理被更新。

这与传统/经典的机器学习框架形成对比,在传统/经典的机器学习框架中,模型参数被赋予平均值,平均值通过优化目标函数来确定。对数百万个变量的大型模型的贝叶斯推理也是使用贝叶斯定理类似地实现的,但方式更复杂。这是因为贝叶斯定理是一种精确的推理技术,在大型数据集上是难以处理的。在过去的十年中,计算机处理能力的提高使得快速有效的推理算法的研究和开发成为可能,这些算法可以扩展到大数据,如置信传播(BP)、期望传播(EP)和变分贝叶斯(VB)。

因子图

MBML 的第二个基石是概率图形模型(PGM)的使用,特别是因子图。PGM 是模型中所有随机变量的联合概率分布的图形表示,用图形表示。因子图是一种 PGM,由表示随机变量的圆形节点、表示条件概率分布(因子)的方形节点和表示节点间条件依赖关系的顶点组成(图 1)。它们为一组随机变量的联合分布建模提供了一个通用框架。

图 1 中整个模型的联合概率 P ( μX )分解为:

p(x=()(T10)(***

***其中 μ 是模型参数,X 是观察变量的集合。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Figure 1: A Factor Graph

在因子图中,我们将潜在参数视为随机变量,并使用贝叶斯推理算法和图来学习它们的概率分布。推理/学习仅仅是图中变量子集上的因子的乘积。这允许容易地实现本地消息传递算法。

概率规划

计算机科学中有一场革命,叫做概率编程(PP ),编程语言现在被构建成除了用逻辑计算之外,还用不确定性来计算。这意味着现有的编程语言现在可以支持随机变量、变量约束和推理包。使用 PP 语言,您现在可以用几行代码以简洁的形式描述问题的模型。然后调用推理引擎自动生成推理例程(甚至源代码)来解决这个问题。PP 语言的一些著名例子包括Infer.Net、斯坦、BUGS、church、Figarro 和 PyMC。在这篇博文中,我们将通过 R 接口访问 Stan 算法。

基于模型的机器学习有 3 个步骤,即:

  1. 描述模型:用因子图描述生成数据的过程。
  2. 观测数据的条件:将观测变量调节到它们的已知量。
  3. 进行推理:进行逆向推理,更新潜在变量或参数的先验分布。换句话说,计算以观察变量为条件的潜在变量的后验概率分布。

预测交通拥堵的简单模型

我们通过遵循 MBML 的三个阶段来应用基于模型的方法:

第一阶段:建立一个交通拥堵问题的模型。我们首先列出我们的问题必须满足的假设。我们假设有一个潜在的交通拥堵状态,用均值( μ 表示,我们有兴趣学习。我们进一步假设该状态具有高斯分布,该高斯分布具有一些均值和(已知或未知的)标准偏差。这种交通拥堵状态将决定在传感器(X)处观察到的速度测量值。然后我们引入一个条件概率 P ( X | μ ),其中 X 的概率是有条件的,因此我们观察到了 μ 。我们还知道,某个后续时间段的流量将取决于之前的流量状态。因此,我们在下一个时间步引入另一个因素图。我们假设其潜在变量具有以先前状态的量为中心的高斯分布,具有某种(已知或未知)标准偏差,即P(μ[2]|μ[1])。这个简单的模型如下面的图 2 所示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Figure 2. A Simple Model for Traffic Congestion

阶段 2 :合并观测数据。我们把观察变量限制在它们的已知量上。这用蓝色阴影表示,如上面的图 2 所示。

第三阶段:进行贝叶斯推理。通过使用概率编程语言,我们能够编写一段紧凑的代码,通过简单地调用内置的推理算法来执行推理。

我们建立的定制模型和推理算法一起构成了我们针对交通预测问题的定制机器学习算法。如果你熟悉这些文献,你可能会意识到我们刚刚开发了一种叫做卡尔曼滤波器的通用算法。我们可以通过添加其他假设来扩展我们的模型,以考虑天气、路面、交通网络状况和体育赛事。这些假设可以获得卡尔曼滤波器的变体,适合于我们的应用。如果我们的目标是找到问题的最佳解决方案,这种变体是否已经存在,或者它是否是一种新颖的算法,都是无关紧要的。

如果我们实现了基于模型的算法,并获得了不太准确的结果,我们可以很容易地检查和修改我们的模型假设,以产生一个更好的模型。根据他们的经验,Winn 等人(2015)发现*“理解和改变假设比直接修改机器学习算法更容易和更直观。即使你的目标只是简单地理解卡尔曼滤波器,那么从模型假设出发,是目前为止推导滤波算法最清晰、最简单的方法,也是理解卡尔曼滤波器是关于什么的*。

对于本案例研究,我们将使用 Stan 来学习模型参数。Stan 提供了一个 R 接口 RStan,可以用来从 R 编程语言内部调用 Stan 算法首先,按照这个链接获取安装 RStan 的先决条件。

然后安装最新的rstan包及其依赖的包,如下所示:

## omit the 's' in 'https' if your environment does not support https downloads
install.packages('rstan', repos = 'https://cloud.r-project.org/', dependencies = TRUE)

## If all else fails, you can try to install rstan from source via
install.packages("rstan", type = "source")

建议您在安装后重启 R,然后再加载rstan包。然后像这样加载rstan库:

library(rstan)

现在,我们可以使用 Stan 建模语言简洁地描述我们的交通拥堵模型,如下所示:

  • 以下代码的第一部分指定了由贝叶斯规则决定的数据
  • 代码的第二部分定义了参数,使用贝叶斯规则来寻找这些参数的后验分布

traffic_model <- "
data {
// the number of speed measurements, N; constrained to be non-negative
int<lower=0> N;
// vector of observed speed measurements,y1, ..., yN
vector[N] y;
// the standard errors, σ1, ..., σN, of speed measurements
vector[N] sigma;
}
parameters {
real mu; // the mean of the traffic speeds
real<lower=0> tau; // the standard deviation of the traffic speeds
vector[N] theta; // the hidden states
real<lower=0> eps; // the standard deviation of the transition pd
}
model {
theta ~ normal(mu, tau); // the probability dbn of the hidden states
y ~ normal(theta, sigma); // the conditional probability dbn of the observed speeds

for (n in 2:N)
theta[n] ~ normal(theta[n-1], eps); // the transition probability dbn
}
"

建议我们在扩展名为.stan的单独文本文件中指定上述模型。然而,对于本教程,我们将把它合并到同一个 R Markdown 文件中。

描述完模型后,您可以通过调用 Stan 推理引擎来执行推理,如下面的代码块所示。调用stan()函数执行三个基本操作:

  1. 首先,使用stanc()函数将 Stan 程序翻译成 C++代码,
  2. 然后编译生成的 C++代码以创建一个 DSO(也称为动态链接库(DLL))。
  3. 最后,运行 DSO 对后验分布进行采样。

下面提到的数据文件可以在这里找到。

traffic <- read.table("data/traffic.txt", header = TRUE)

traffic_data <- list(y = traffic[, "sensor_speed"],
sigma = traffic[, "sigma"],
N = nrow(traffic))

traffic_model_fit <- stan(model_code = traffic_model, model_name = "traffic-prediction",
data = traffic_data, iter = 1000, chains = 4, save_dso = TRUE)

现在,我们可以使用print()函数来检查traffic_model_fit中的结果,包括模型的参数汇总以及对数后验概率。

print(traffic_model_fit, digits = 1)
traceplot(traffic_model_fit)

# extract samples
# return a list of arrays
e <- extract(traffic_model_fit, permuted = TRUE)
mu <- e$mu

# return an array
m <- extract(traffic_model_fit, permuted = FALSE, inc_warmup = FALSE)
print(dimnames(m))

# you can use as.array directly on our stanfit object
m2 <- as.array(traffic_model_fit)

使用基于模型的机器学习有几个潜在的好处,包括;

  • 这种方法提供了一个开发定制模型的系统化过程,以适应我们的具体问题。
  • 它为我们的模型提供了透明度,因为我们通过利用有关交通拥堵的先验知识明确定义了我们的模型假设。
  • 该方法允许使用概率论以有原则的方式处理不确定性。
  • 它不会遭受过拟合,因为模型参数是使用贝叶斯推理而不是优化来学习的。
  • 最后,MBML 将模型开发与推理分开,这允许我们构建几个模型,并使用相同的推理算法来学习模型参数。这反过来有助于快速比较几个备选模型,并选择由观测数据解释的最佳模型。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如需进一步阅读,请参考以下参考资料。

  1. J.Winn,C. Bishop 和 T. Diethe,基于模型的机器学习,微软研究院,http://www.mbmlbook.com/,2015 年。
  2. C.M. Bishop,《基于模型的机器学习》Phil Trans R Soc,A 371: 20120222。http://dx.doi.org/10.1098/rsta.2012.0222,2013 年 1 月
  3. T.明卡、j .温、j .吉弗和 d .诺尔斯,Infer.NET,微软剑桥研究院,http://research.microsoft.com/infernet,2010 年。
  4. Stan 开发团队,《Stan 建模语言用户指南及参考手册》,版本 2.9.0,http://mc-stan.org,2016。
  5. J.Lunn,A.Thomas,N. Best 和 D. Spiegelhalter,“ ”,统计和计算,10:325-337,2000 年。
  6. 名词(noun 的缩写)D. Goodman、V. K. Mansinghka、D. M. Roy、K. Bonawitz 和 J. B.Tenenbaum,“”,载于《人工智能中的不确定性》(UAI),第 220-229 页,2008 年。
  7. 帕蒂尔、a、d .休厄德和 C.J .丰内斯贝克。2010.PyMC:Python 中的贝叶斯随机建模。统计软件杂志,35(4),第 1-81 页,2010 年。
  8. Stan 开发团队,“RStan:Stan 的 R 接口”,版本 2.9.0。
  9. D.Emaasit、A. Paz 和 J. Salzwedel (2016 年)。。IEEE ITSC 2016。正在审查中。***

原文:https://www.dominodatalab.com/blog/an-introductory-guide-to-feature-stores

特征是机器学习模型的输入。在整个组织中使用它们的最有效的方式是在一个功能库中,该功能库自动进行数据转换,存储它们并使它们可用于训练和推理。

由于各种特定功能的挑战,ML 项目和应用程序通常是昂贵且难以扩展的。通常,特性不会在一个组织中的团队和不同的 ML 应用中重用,一些团队可能会以不同的方式定义和使用特性。需要额外的努力来为每个 ML 模型提供所需的特性。要素存储通过提高定义的一致性和数据科学团队的效率来纠正这些问题。特性存储允许团队跨数据科学项目和 ML 模型有效地重用特性,从而提高他们的 MLOps 过程的效率和可伸缩性。

在本文中,您将了解特性存储以及如何在 ML 模型的开发中有效地使用特性存储。

在机器学习中,预测模型学习根据过去的例子做出预测。“特征”是用于描述每个例子的属性。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

表中的每一行都是一个数据实例,可用于训练或推断。列表示单个要素,每个像元是一个特征值。

在称为 特征工程 的过程中创建用作 ML 模型的训练数据的特征。在此过程中,数据科学家对原始数据进行转换,以创建可由 ML 模型使用的特征。

特性存储是一个中央存储,管理专门为数据科学过程准备的特性。通过使搜索和查找特性变得容易,它们可以很容易地跨项目重用,从而提高效率、治理和模型速度。

大多数 ML 或深度学习(DL)模型需要数百到数千个特征,这些特征可能会根据数据类型进行不同的处理。然而,管理大量的特性并不简单,相同的特性集可能适用于不同的 ML 用例。

例如,一家信用机构使用两种不同的 ML 模型:模型 A 和模型 b。模型 A 使用“客户职业”这一特征来预测特定客户的信用评分。与此同时,另一个不同的模型,模型 B,使用相同的功能来预测该客户在信用机构接洽时升级到某个产品的概率。当几个应用程序使用相同类型的特性时,跨这些模型重用特性是有意义的。

现代功能存储由三个主要组件组成—转换、存储和服务:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 资料来源:Artem Oppermann

转换

ML 模型通常需要将原始数据转换成 ML 模型可以使用的特征。例如,ML/DL 模型不能很好地处理被表示为类别或标签的特征(例如性别或颜色)。因此,您需要将这种分类数据转换成更合适的格式。其他常见的转换包括数据和计算值的标准化。特征存储协调这些特征转换,主要有两种类型:

  1. 批处理转换仅适用于静态数据,可以在数据库、数据仓库或数据湖中找到。这种数据的一个典型例子是历史客户数据,它可以在一个表中找到(ie customer_occupation,customer_age country 等)。).
  2. 流转换应用于运动中的数据或流源。这意味着数据在通过要素存储管道时会进行在线转换。与数据库或数据仓库中的数据相比,这种数据更新。例如,必须应用流转换的数据将包括每个用户在过去三十分钟内对登录页面的点击次数,或者每个用户在过去一小时内对每个列表的查看次数。

存储

在较高层次上,要素存储是 ML 操作使用的要素数据仓库。特征存储在架构上不同于传统的数据仓库,因为它由两部分数据库组成:

  1. “离线数据库”主要用于批量预测和模型训练。数据库存储大量历史特征,用于 ML 模型的训练目的。
  2. 第二个数据库称为“在线数据库”,以低延迟向已投入生产的训练模型提供在线功能。该在线数据库满足了为预测模型提供最新功能的需求。

上菜

存储在特征存储中的转换后的数据现在可以被检索并提供给 ML/DL 模型用于训练或一旦它们投入生产。这个过程被称为“上菜”。这一步非常重要,因为它可以确保始终使用正确的特征数据。

对于模型训练,检索并使用脱机数据库中的脱机数据。为了向生产中的模型提供特征,通过高性能和低延迟的 API 从在线数据库提供数据。

开发机器学习模型并不容易,主要是因为人工智能系统非常复杂,需要大量的人工努力。ML 的数据工程和管理是数据科学项目中最耗时的任务。 数据工程师必须为数据科学团队准备各种数据源和相关元数据。然后,数据科学团队确定什么可能对 ML 项目有用,并开发要测试的功能。

除了在数据准备过程中损失宝贵的时间之外,ML 项目和应用成本高昂且难以扩展。 除了在数据准备上浪费宝贵的时间,ML 项目和应用也是昂贵且难以扩展的。创建非标准特征非常耗时,会导致团队之间重复、不一致的工作,并且会使模型无法投入生产,因为用于训练模型的数据无法在生产中重新创建。

为了说明这种复杂性,下图描绘了 ML 基础设施。它表明这些特性是非标准的,因此不太具有可伸缩性:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 来源:Artem 奥特曼

不同的模型访问相同的数据源,以便为每个用例进行单独的数据准备。这意味着大量的精力投入到准备数据和重复的代码中,这带来了巨大的出错可能性。它也有可能使在生产中有效地重新创建特征变得不可能。

下面简要总结了使用非标准化的 ML 基础设施时遇到的问题和挑战:

  • 冗余特征构建
  • 功能不可重复使用
  • 重复代码
  • 功能可能在生产中不可用
  • 资源密集型数据准备

数据科学团队可以通过使用功能存储来避免这些挑战。通过保护商店中的功能,不同的模型可以轻松地重用这些功能,从而减少模型开发时间并提高模型开发的可重复性。

特征存储充当 ML 的中心枢纽,它可以通过避免数据管道丛林来提高 ML 团队的效率。如果没有特征存储,各种模型可能具有本质上相同或相似的数据管道来准备、创建和访问所需的特征。相比之下,特征存储为所有模型提供了标准化的数据管道。

通过使用特征库可以实现高度的 ML 自动化。具体来说,是验证数据完整性的自动化数据验证规则。这可能涉及检查值是否在有效范围内,是否具有正确的格式和数据类型,以及是否为空。

特征库还可以提高模型部署的速度,通过确保特征始终可用于推理。通过使用集中的数据存储来存储训练数据,数据科学团队可以实现最佳的可伸缩性,并提高 ML 应用程序的效率。

下图显示了特征库如何独立于模型构建特征:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 来源:Artem 奥特曼

综上所述,一个特性库给一个数据科学团队带来了很多好处,包括以下:

  • 特征的可重用性
  • 再现性
  • 特征的质量保证
  • 高效利用数据科学家(ie时间显著减少)
  • 高度的 ML 自动化
  • 洗钱中心的出现
  • 数据科学的可扩展性,因为数据、基础设施和标准化流程已经到位,新项目和模型可以更快地扩展和实施

直到最近,如果你想在你的 ML 操作中加入一个特性库,你必须开发你自己的。特色商店主要用于内部 ML 平台,比如优步的米开朗基罗。感谢开源社区,这已经改变了。

即使开源功能商店的选择仍然有限,但随着 盛宴 和 Hopsworks 等产品的出现,选择越来越多。

Hopsworks 功能商店于 2018 年底首次发布,是更大的 Hopsworks 数据科学平台的组成部分。Feast 是一个独立的特性商店,由 GoJek 发布,围绕 Google 云服务打造,像 BigQuery、 Redis 和 Cloud Bigtable,使用 Apache Beam 进行特性工程。

在本文中,您了解了特性存储如何通过将自动化引入 ML 操作来提高效率。特征存储是专门用于 ML 过程的中央数据存储,已经成为现代 ML 栈的关键组件。

通过集中 ML 特性,新的项目和模型可以更快、更可靠地扩展和实现,因为数据、基础设施和标准化的数据过程已经可用。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

原文:https://www.dominodatalab.com/blog/analyzing-large-p-small-n-data-examples-from-microbiome

高通量筛选技术已经发展到在单个实验中测量样品中所有感兴趣的分子(例如,整个基因组、代谢物的量、微生物组的组成)。这些技术被描述为以不偏不倚和无目标的方式对细胞、组织或有机体中的分子进行“通用检测”^(【1】)。希望这些数据能让研究人员更好地理解他们正在研究的东西。

20 世纪为小数据集开发的经典统计学不适用于变量数量远大于样本数量的数据(大 P 小 N,维数灾难,或 P > > N 数据)。我们之前的多米诺博客上的^(【2】),描述了当 P > > N:

*1. 点彼此远离
2. 点落在数据分布的外边缘
3. 预测模型对噪音的拟合接近 100%的准确性
4. 点之间的成对距离变得相同

这些行为中的每一种都会对统计分析造成严重破坏。例如,不可能知道你的预测模型是否准确,因为它正在拟合重要的变量或噪声。

使用自动算法进行数据简化存在问题。考虑具有 500 个变量的数据集,使用 PCA 将维度减少到少数用于分析。仔细观察可以发现,PCA 产生了变量的线性组合——这是无法解释的。理解 500 个系数的意义和相互作用是不可能的。每个 PCA 投影都是不可解释的,因此学习是不可能的。

由于我们仍然有一个大 P 小 N 的问题,直接的假设检验是不可能的。相反,这个分析阶段的目标是解释和学习。将这种分析视为探索性的是很重要的。这种探索性的分析并不是通过一次分析所有的数据来发现突出的部分。不要使用算法来减少数据,而是选择有生物学意义并且可以解释的变量子集。在子集分析中发现的任何东西都应该被视为假设生成,并且在后续设计的实验中可能是可检验的。

BioRankings 所做的两项分析在此作为这种方法的例子。这两项研究都涉及高通量筛选数据和来自作为整合人类微生物组项目一部分的大约一百名糖尿病前期受试者的成百上千个变量。*^(【3】)*在第一次分析中,选择了 12 种细胞因子来测试细胞因子的变化是否与肠道微生物组的组成变化有关。在第二次分析中,选择来自肠道微生物分类群的基因子集,以测试基因拷贝数是否与从胰岛素敏感性(良好结果)到抗性(不良结果)的转化相关。

细胞因子水平与肠道微生物组组成相关吗?

合作者有兴趣了解细胞因子是否与微生物组组成有关。细胞因子是与许多生物学结果如炎症、脓毒症、发育和其他结果相关的小肽。测量了数百种小肽和细胞因子,因此确定了被认为与糖尿病发展相关的 12 个子集,以避免与大 P 小 N 相关的问题,并具有生物学解释可能的集中子集。这 12 个在表 1 中列出。由于大 P 小 N 的数据是探索性的,对这 12 种肽的分析并不排除我们对其他肽亚类的分析。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在统计学中,回归分析常用于将结果(因变量)与输入协变量(自变量)联系起来。当因变量为连续变量、分类变量或生存时间变量时,这些模型得到了很好的发展。然而,对于因变量或结果变量是微生物类群组成的情况,不存在回归模型。

为了将微生物组组成(因变量或结果变量)回归到细胞因子(独立变量或输入变量)上,我们推导并发布了一个新的回归模型。^(【4】)DM-RP art 方法结合了递归分割和狄利克雷-多项式概率模型。递归分割找到协变量空间中结果更均匀的区域。([【5】](#post-7222-footnote-5))狄利克雷多项式概率模型适用于微生物组数据,并提供了假设检验、样本大小和功效计算、效应大小、过度分散和其他经典统计的方法。

DM-RPart 寻找微生物组样本的分区或子集,使得子集内样本的分类群组成或比例彼此之间比其他子集中的样本更相似。聚类分析基于忽略协变量中的信息的距离(即无监督学习)来寻找分区。DM-RPart 是一种使用协变量中包含的信息的监督学习算法。

DM-RPart 中的分区由阈值协变量定义–例如,如果样本有瘦素< 1476 put the sample in the left 子节点,否则将样本放入正确的子节点。通过优化狄利克雷-多项式概率模型的最大似然比 (MLR) ,将父节点中的样本与分成两个子节点的样本进行比较,来自动选择最佳分裂的顺序。通过将父节点划分成两个子节点引起的同质性越大,MLR 越高。任何父节点的划分是在具有最大 MLR 的协变量分裂上完成的。

我们将 DM-RPart 应用于上述 12 种细胞因子,基于对肠道微生物群的可能作用机制的生物学理论。图 1 显示了将 128 个微生物组样本(顶部或根节点)分成 5 个亚组(终端节点)的模型。首先根据瘦素水平高于或低于 1476 的受试者将 128 个样品分开。受试者体内瘦素< 1476 的 57 个样本中,IL4 高于或低于 60 的第二个分裂将他们分成 37 人和 20 人的两个子集。重复这一过程,直到长出一棵大树,然后修剪以避免过度生长。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 1:将微生物类群组成回归到 12 种细胞因子的 DM-RPart 模型。

图 2 中的彩色条形图显示了每个亚群中的微生物组成。每种颜色对应一个分类单元(见图顶部的图例),颜色段的高度对应该分类单元在种群中的比例。不同亚组的分类群组成有很大差异,表明细胞因子水平的变化与微生物组组成的变化有关。

这 12 种细胞因子的分析是可以解释的。值得注意的是,与肥胖相关的微生物组组成在低瘦素(亚组 3,5,6)和高瘦素(亚组 8,9)中不同,这表明瘦素、肥胖和微生物组可能相关。作为一个可检验的假设,确定低瘦素组和高瘦素组中的每组 N = 32 名受试者将提供 80%的能力来检测微生物组组成的统计学显著差异。

需要强调的是,我们认为大 P 小 N 数据分析只是探索性的。这导致了两个结果。首先,分析不限于一个子集。可以进行尽可能多的具有生物学意义的变量子集的分析。这些分析可以使用适用于子集的任何统计方法,而不限于所有子集的相同分析。第二,如果结果表明有趣的生物学,它们应该被视为产生假设,而不是统计意义上的。研究者应该在后续设计的实验中证实这些结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 2:来自 DM-RPart 的五个末端节点中的每一个内样品的分类群组成

微生物组基因有助于将健康患者转化为糖尿病前期吗?

在这项分析中,问题是肠道微生物群是否会影响胰岛素活性正常(胰岛素敏感性)的患者,而不是胰岛素活性降低或糖尿病前期(胰岛素抵抗)的患者。受试者先吃增加体重的食物,然后再吃减轻体重的食物。在整个研究过程中,在 4 个时间点对每位患者的微生物群、胰岛素状态(敏感/耐受)和其他几种表型进行了测量。

我们修改了生态学中使用的一个分析,称为 RLQ^(【7】)来回答这个问题。RLQ 同时分析了包含在三个表格中的信息:

  • r(样品的微生物组组成)
  • l(样本的表型)
  • q(细菌基因拷贝数)。

图 3 显示了 RLQ 数据布局。表 L 和 R 中的行对应于受试者,L 中的条目对应于分类群计数,R 中的条目对应于表型值(例如,胰岛素敏感性或抗性)。表 L 和 Q 的列对应于分类群,Q 中的条目是由 Q 表行指定的每个基因的拷贝数。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 3:RLQ 分析数据表。

由于细菌中的基因组很大(它们必须编码细菌的所有活动),微生物组中有数千个细菌基因,这使得 Q 表非常大,分析大 P 小 n。因此,考虑对基因子集进行重点分析非常重要。

图 4 是来自 KEGG 数据库的半胱氨酸和蛋氨酸代谢途径。^(【8】)该途径描述了这两种分子的合成和降解,涉及数十个步骤和基因。为了减少数据,我们将分析重点放在蓝框中红线所示的蛋氨酸降解途径上。甲硫氨酸降解为 L-胱硫醚,产生与血管疾病(高同型半胱氨酸血症)相关的中间化合物 L-高半胱氨酸,并可能与糖尿病相关。我们将 Q 表限制在被认为与糖尿病相关的甲硫氨酸降解途径中的 4 个基因。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 4:来自 KEGG 数据库的蛋氨酸降解途径。

图 5 显示了 RLQ 分析结果。基因 K00558 (DNA(胞嘧啶-5)-甲基转移酶 1)和基因 K01251(腺苷高半胱氨酸酶)与胰岛素敏感性正相关(红线将每个基因连接到 IR_IS。IS ),并与胰岛素抵抗负相关(蓝线连接每一个与 IR_IS。IR)。不相关的基因和性状显示为绿色。

这些结果表明,增加具有高 K00558 和 K01251 基因拷贝数的分类群在肠道中的患病率可能会减缓或阻止从胰岛素敏感性向抗性的转化,从而减少向糖尿病的转化。这是一个可检验的假设。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 5:甲硫氨酸途径的 RLQ 分析

如上所述,高通量筛选实验是探索性的,并且基于主题领域的专业知识(例如甲硫氨酸降解)选择的一组减少的变量的集中分析不妨碍进行其他分析。烟酸酯/烟酰胺降解途径被认为与胰岛素敏感性和身体质量指数有关,对该途径中基因的聚焦 RLQ 分析如图图 6 所示。发现更多的基因与胰岛素状态相关(正相关和负相关),一个基因 K00763 与身体质量指数正相关——k 00763 的更多拷贝意味着更高的受试者身体质量指数。所有这些都是可检验的假设。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 6:烟酸途径的 RLQ 分析

由于大多数组学研究是在没有假设的情况下设计的——衡量一切,看看会得出什么结果——将数据分析视为探索性的是合适的。在子集分析中发现的任何东西都应该被视为假设生成和潜在可测试的。

通过将生物学知识纳入多组学数据的分析,可能会揭示生物学机制的理解。我们正在将这些实验从“测量一切,看看我们能发现什么”转移到“我们已经测量了一切,现在让我们详细说明有趣的假设,看看它们是否经得起推敲”。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

参考
  1. https://obgyn . online library . Wiley . com/doi/full/10.1576/toag . 13 . 3 . 189 . 27672↑
  2. https://blog.dominodatalab.com/the-curse-of-dimensionality↑
  3. https://www.nature.com/collections/fiabfcjbfj↑
  4. https://www.nature.com/articles/s41598-019-56397-9↑
  5. https://cran . r-project . org/web/packages/RP art/vignettes/long intro . pdf↑
  6. https://journals.plos.org/plosone/article?id = 10.1371/journal . pone . 0052078↑
  7. https://esa journals . online library . Wiley . com/doi/10.1890/03-0178↑
  8. https://www.genome.jp/kegg/kegg2.html↑*

原文:https://www.dominodatalab.com/blog/announcement-domino-is-fully-kubernetes-native

上周,我们宣布 Domino 现在完全是 Kubernetes 的本地产品。

对于构建现代 DS 平台的数据科学团队和 IT 组织来说,这是一个好消息,原因有二:

  • 首先,Domino 现在可以安装在任何基础设施上——任何云或本地,甚至安装在您自己的集群中——因此您可以让您的数据科学基础设施经得起未来考验,并无缝集成到您现有的体系中。
  • 第二,我们不仅仅使用 k8s 来安装我们的平台服务,我们还进行了深入研究:我们重建了整个计算网格,以利用 k8s 来分配数据科学工作负载,包括模型培训工作、交互式笔记本会话、托管应用程序和部署生产模型。有了 Domino,您所有的数据科学工作负载都可以自动从 k8s 中提升。这使得数据科学家更有效率,省去他们开发操作的麻烦。它还通过高效分配工作负载来减轻 It 支持负担,并降低基础架构成本。

在 2014 年成为第一个将数据科学工作负载容器化的平台后,我很自豪我们再次引领行业将现代基础架构的力量带给数据科学团队。K8s 是即将到来的下一波创新的惊人基础。

Btw,如果你喜欢 k8s 和数据科学,加入我们快速成长的工程团队!

[编者按:尼克的帖子最初出现在 LinkedIn 上。有关 Kubernetes 是一个如何能够弥合数据科学家和 IT 之间的差距的编排框架的更多详细信息,请参见他在 Venturebeat 上的文章“ Kubernetes:加速当今数据科学所需的关键因素”。]

原文:https://www.dominodatalab.com/blog/announcing-data-science-pop-san-francisco

我们很高兴地宣布*数据科学弹出窗口旧金山,*我们的数据弹出窗口系列的第 6 次活动。为期一天的论坛将于 2017 年 2 月 22 日在旧金山市中心的激励举行,并将专注于 SaaS、技术和保险领域的数据科学应用。在此注册享受优惠价格。

该活动面向希望开发最佳实践、分享想法并与行业同行建立联系的数据科学领导者。我们得到了来自优步、Atlassian、O’Reilly Media、Nielsen Company 等公司的大量演示和小组讨论。

这里有一些你不想错过的会议。点击查看完整议程。

尼尔森公司首席数据科学家张咪咪的

可计算的内容:笔记本、容器和以数据为中心的组织学习 作者 Paco Nathan,O’Reilly Media 的学习主管

insta cart 的数据科学:让按需盈利 insta cart 数据科学副总裁 Jeremy Stanley

原文:https://www.dominodatalab.com/blog/announcing-data-science-pop-up-los-angeles

我们很自豪地宣布数据科学弹出式洛杉矶,这是我们数据科学弹出式系列的第 5 次活动。在洛杉矶举行的为期一天的论坛将重点关注媒体和娱乐中的数据科学应用。

如果您有兴趣了解数据科学的最新趋势,与思想领袖接触,并与同行交流,请不要错过此次活动!议程将包括与数据科学家、软件工程师、数据驱动型高管和业务开发专业人士等相关的讲座和研讨会。

数据科学 Pop-up LA 将于 2016 年 9 月 14 日举行,可购买早鸟票门票。立即注册,享受优惠价格。

观看在纽约,芝加哥,西雅图和奥斯汀的过去事件的谈话。

Domino 的弹出窗口汇集了来自该地区和全国的广泛的数据科学从业者和机器学习研究人员。我们欢迎您提交一份 100-250 字的演讲提案。我们对娱乐和媒体行业的数据科学领导者的观点特别感兴趣。

该数据科学专题讲座将持续一天,包括两个专题讲座和多种类型的演示:

  • 思想领袖关于最佳实践和数据科学现状的 30 分钟一般性演讲。
  • 关于特定类型定量研究的 45 分钟技术“操作”研讨会。
  • 来自数据科学从业者的 15 分钟闪电谈话,讲述他们所做工作的有趣方面。

我们接受摘要的截止日期是 2016 年 8 月 14 日,今天申请。

原文:https://www.dominodatalab.com/blog/announcing-domino-3-0-and-launchpad

By Mac Steele, Director of Product, Domino Data Lab on October 17, 2018 in

尽管所有公司都在数据科学领域进行投资,但令人震惊的是,很少有人看到任何真正的商业影响。最近的一项研究量化了这一差距,揭示了 85%的人认为模型将使他们的公司获得或保持竞争优势,但只有 5%的人广泛使用它们。

原因很简单;对于公司来说,让模型超越他们的数据科学团队并投入生产是极其困难的。正如一位数据科学领袖敏锐而令人难忘地指出的那样,“我们建立新总部的速度比我们将模型投入生产的速度还要快。”

今天,我们正在帮助改变这种状况,推出了 Domino 3.0,这是我们屡获殊荣的数据科学平台的下一个版本,并推出了 Launchpad,这是一个新模块,旨在帮助公司通过解决他们在将模型投入生产(ModelOps)时面临的运营挑战和瓶颈,最大限度地发挥数据科学投资的影响。

解决数据科学中的最后一英里问题

现在有了 Domino 3.0,公司可以通过消除模型交付瓶颈来填补数据科学投资、执行和实现竞争优势之间的差距。

Domino 的新模块 Domino Launchpad 通过以下方式帮助公司解决数据科学中的最后一英里问题:

  • 消除模型交付的技术障碍通过 Docker 自动提供基础设施,并支持 Shiny、Flask 和 Dash 等流行工具;
  • 改善利益相关者之间的协作通过单一门户发现模型产品和使用数据,确保更快的反馈循环,以验证模型的影响;和
  • 加速模型迭代速度通过自动模型版本控制和实验历史的完全可再现性,实现更快、更连续的模型迭代。

Domino 3.0 背后的动机来自于与领先的数据科学组织合作,看看哪些对他们有用,哪些没用。最新的 Domino 3.0 功能旨在帮助数据科学领导者确保他们的投资产生切实的业务影响。

穆迪分析公司利用 Domino 将模型迭代速度提高了 4 倍

穆迪分析提供专业知识和工具,包括数据、模型、软件和专业服务,帮助公司高效发展和管理金融风险。作为金融建模领域的先驱,穆迪分析团队通过几十年的磨练,基于独特的金融数据集创建模型,然后应用这些模型解决客户的业务挑战,从而建立了竞争优势。通过将一些数据科学项目集中在 Domino 上,Moody’s Analytics 极大地提高了模型生命周期的效率,并扩展了他们与客户和合作伙伴构建协作模型的能力。为了实现这一转变,Moody’s Analytics 需要加快模型开发的速度,并增加生产模型的迭代次数。他们通过 Domino 实现了这一点,减少了端到端的模型开发周期,并将模型作为 API 和应用程序交付给下游消费者。例如,在使用 Domino 的早期体验中,Moody’s Analytics 将预计九个月的项目减少到了四个月。该公司还使用 Domino 将生产模型的迭代速度提高了四倍。穆迪分析的风险和金融分析董事总经理 Jacob Grotta 表示:“凭借穆迪分析的专业知识和工作流程,加上 Domino 和 AWS 基础设施,我们能够加快模型开发,这意味着信息可以更快地到达需要它的客户手中。“我们的客户非常兴奋,因为他们的需求将会以新的方式得到满足,这在以前是不可能的。”

了解关于 Domino 3.0 和 Launchpad 的更多信息

最近,在 Forrester Research 的 Forrester Wave 报告“基于笔记本的预测分析和机器学习解决方案”中,Domino 被评为领导者。

要了解有关 Domino 3.0 的更多信息,请注册参加网络研讨会“领先企业如何应对 ModelOps 挑战”,该研讨会将于 11 月 14 日上午 10:00(太平洋标准时间)由 Forrester Research、Bayer Worldwide 和 Domino 共同举办。在此注册。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

用强大的交互式模型产品取悦利益相关者

Twitter Facebook Gmail Share

原文:https://www.dominodatalab.com/blog/announcing-domino-3-3-datasets-and-experiment-manager

我们在 Domino 的使命是让组织能够将模型放在其业务的核心。模型与软件非常不同,例如,它们在开发过程中需要更多的数据,涉及更多的实验性研究过程,并且它们的行为具有不确定性,因此组织需要新产品和流程来支持数据科学团队大规模开发、部署和管理它们。

今天,我们宣布 Domino 中有两个主要的新功能,可以让数据科学家更容易、更快地开发模型。“数据集”为数据科学家提供了在开发模型时利用大量数据资源所需的灵活性。“实验管理器”为数据科学家提供了一种方法来跟踪、查找和组织他们在研究过程中测试过的所有想法。

正如人们经常引用的那样,数据科学家花费 80%的时间“争论”数据——数据准备、数据工程、特征提取——除了模型开发和培训之外,所有这些都是耗时的活动。这一痛点在拥有从事大量实验的数据科学家团队的组织中被放大了。

数据集提供了高性能的修订数据存储,使数据科学家能够跟踪、共享和重用基于文件的大型数据资源,以便团队能够更快地迭代研究并加速模型开发。数据集不是将数据存储在 Domino 项目文件中,而是提供本地化的数据集合,可随时用于数据科学实验。数据集被设计为处理需要大量单个文件和/或大规模文件的使用情形。通过消除冗余工作并确保每个人都使用最新和最棒的产品,共享和重用数据集中的精选数据的能力可以大大减少花费在争论数据上的时间。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

“数据集功能为我们节省了大量时间,”机器智能公司 Numenta 的首席软件工程师 Luiz Scheinkman 说。“过去处理数据需要几个小时,所以我们要通宵运行这些流程。使用 Domino 数据集,我们可以对数据进行预处理,并在 21 分钟内将预处理后的数据附加到实验中。这意味着我们可以迭代,看到我们的结果,并在一天中不断改进——这在加快整个模型开发过程中有着巨大的差异。”

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Domino 数据集还将数据的版本控制与代码的版本控制分离开来,允许更高的保真度和实验的完全可再现性。数据集允许更细粒度的数据隐私和保护应用。有关 3.3 中数据集的更多信息,请参见 Domino 支持网站并观看本教程:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

除了数据集,Domino 3.3 还引入了实验管理器。数据科学不同于软件开发等其他工作流,因为它涉及开放式探索和实验,以找到最佳解决方案。传统的知识管理系统无法无缝地跟踪和组织这样的工作,因此数据科学家经常求助于手动将元数据保存在电子表格中,或者更糟的是,丢失他们实验的许多线程。数据科学家和数据科学领导者需要一个单一视图来跟踪、组织和管理不同细节级别的实验。实验管理器在 Domino 中提供了这种可见性,就像数据科学家经历训练和调优模型的迭代过程时的“现代实验室笔记本”一样。对实验的状态、性能和影响的单一、高性能视图使数据科学团队能够管理实验,以便找到相关的过去工作、执行元分析和回顾。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

实验管理器允许用户对实验进行搜索、分组、排序和过滤,从而可以轻松地找到特定的过去结果,并查看实验的粒度细节,同时将这些实验置于更广泛的想法背景下进行测试。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

借助实验管理器,数据科学家可以在一个屏幕上比较两次不同运行的结果,以进行快速分析,并访问实验的详细日志记录。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

关于 3.3 中实验管理器的更多信息,请参见 Domino 支持站点。

Domino 3.3 目前已经上市——请务必查看产品演示,了解最新的平台功能。

原文:https://www.dominodatalab.com/blog/announcing-domino-3-4-furthering-collaboration-with-activity-feed

我们的上一个版本,Domino 3.3看到了两个主要功能的增加: 数据集 和 实验管理器 。“数据集”是一种高性能的修订数据存储,为数据科学家提供了在开发模型时利用大型数据资源所需的灵活性。“实验经理”充当数据科学家的“现代实验室笔记本”,用于跟踪、组织和查找他们研究过程中测试的所有内容。

本着继续关注支持协作、组织和透明的精神,Domino 在 Domino 3.4 中引入了对实验管理器的补充:活动提要。

Activity Feed 是实验室中的一个新页面,它提供了一个易于跟踪的、按时间顺序排列的项目变更日志。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 3.4 Activity Feed

虽然有助于跟踪个人的进步,但在与团队合作时,活动提要确实大放异彩。有了 Activity Feed,让新团队成员入职并让他们快速上手变得更快、更容易。新的团队成员可以很容易地回顾过去的工作,目前的进展,并看到谁联系任何以前的工作的问题。类似地,在离开项目后,团队成员很容易通过滚动活动提要来恢复工作。

除了能够跟踪项目随时间的变化,数据科学家还可以轻松访问作业或工作空间的结果,点击作业编号以在实验管理器中查看更多详细信息,并从活动提要中轻松比较作业。如果数据科学家只想要特定的视图,也可以通过工作、工作区和评论进行过滤。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 3.4 Activity Feed

本着促进协作和交流的精神,用户可以对每个事件发表评论并在线回复。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 3.4 Activity Feed

Activity Feed 诞生于改善协作和讨论的目标。作为实验管理器的完美补充,用户现在可以更容易地跟踪项目的进展。

关于 3.4 中的活动 Feed,详见 多米诺骨牌支持站点 。

Domino 3.4 目前已正式上市—联系我们了解更多信息,请务必查看产品演示,了解最新的平台功能。

原文:https://www.dominodatalab.com/blog/announcing-domino-3-5-control-center-for-data-science-leaders-and-trial

By Kelly Xu, Product Marketing Manager on June 26, 2019 in Product Updates

即使是最复杂的数据科学组织也很难跟踪他们的数据科学项目。数据科学领导者希望在任何给定的时刻,不仅知道有多少数据科学项目正在进行中,还想知道在模型开发方面有哪些最新的更新和障碍,以及哪些项目需要他们立即关注。

但是,虽然有大量的工具可供个人数据科学家使用,但数据科学领导者的需求并没有得到很好的满足。例如,一家财富管理公司的分析副总裁最近告诉我们,他不得不拿着笔和记事本在办公室里走来走去,从一个人走到另一个人,以便获得正在进行的项目的实际数量,因为他们的传统任务跟踪工具与数据科学团队使用的工作流不太一致。事实证明,最终的统计结果与提供给首席执行官的最初估计相差甚远。

数据科学领导者面临着一系列与可见性和治理相关的常见挑战:

  • 他们需要帮助跟踪项目
  • 他们需要帮助跟踪生产中的模型
  • 他们需要帮助建立一种遵循最佳实践的文化

考虑到不准确信息的潜在影响(从错误设定的预期、资金不匹配到项目延迟),数据科学领导者在纽约举行的 Rev 2 数据科学领导者峰会上挤满了房间,观看我们专门为他们设计的新“控制中心”功能的现场演示,这并不奇怪。

https://youtube.com/watch?v=aO3YkDwsm6Q

附注:如果你错过了今年的 Rev ,可以在这里找到专题演讲和录音。

去年秋天,我们向 IT 利益相关者提供了 Domino 控制中心,帮助他们了解计算使用和支出情况。今天,我们宣布在 Domino 3.5 中对控制中心进行重大扩展,为数据科学领导者提供新功能。

Domino 3.5 允许数据科学领导者定义他们自己的数据科学项目生命周期。控制中心新增了项目组合仪表板,使数据科学领导者能够轻松跟踪和管理项目,全面了解最新发展。它还通过显示被阻止的项目来实时显示需要立即关注的项目。

数据科学领导者可以在项目组合仪表板中开始他们的一天,该仪表板显示了按可配置的生命周期阶段细分的进行中项目的摘要,并提供了所有项目的即时状态更新。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

每个组织都有自己的数据科学生命周期来满足他们的业务需求。在 Domino 3.5 中,我们允许数据科学领导者和管理者定义他们自己的项目生命周期,并在他们的团队中实施。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据科学家可以在整个生命周期中更新他们的项目阶段,并通过电子邮件通知他们的合作者。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

项目所有者和参与者可以使用“项目阶段”菜单,通过阻止程序的描述将项目标记为被阻止。一旦解决,项目就可以解冻。另一方面,当数据科学家用项目结论的描述将项目标记为完成时,Domino 也会捕获这些元数据,用于项目跟踪和将来的引用。所有这些捕获的元数据对于组织学习、组织项目和帮助避免将来类似的问题都是有用的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

所有这些信息为 Domino 的新项目组合仪表板提供了动力。数据科学主管可以点击查看任何正在进行的项目的更多背景信息,并发现需要关注的受阻项目。

在下面的假设项目中,我们的首席数据科学家 Josh 看到其中一个被阻止的项目是 Avinash 和 Niole 的客户流失项目。虽然他不记得这个项目的细节,但他可以看到它正处于 R&D 阶段,几周后会有一个艰难的停顿。深入到项目中,他可以看到剩下的目标是获得 AUC 在 0.8 以上的分类模型。

Josh 可以转到活动源,以获得有关阻止程序、原因的详细信息,并建议采取行动。在这个例子中,他将要求客户流失团队尝试深度神经网络。他可以标记另一个团队的深度学习专家 Sushmitha,并请她指导这项工作。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

管理项目、跟踪生产资产和监控组织健康状况需要新的工具。这些独特的功能是为数据科学领导者定制的。在 Domino,当您在团队中使用这些优势时,我们很高兴地看到这些优势正在向您走来。

所有这些只是 Domino 中的一些新特性,在 3.5 版本中,我们还对现有特性进行了一些其他增强。例如, Activity feed 得到了增强,可以显示正在评论的文件的预览。它还显示了项目阶段的更新,以及合作者是否提出了任何阻碍因素。用户还可以根据活动类型进行筛选。这与电子邮件通知相结合,将确保随时了解项目的情况。

Domino 3.5 为用户提供了直接从计算机上的数据创建大型数据集快照的选项。CLI 上的上传限制已增加到 50 GB 和最多 50,000 个文件。在相同的上传限制下,用户也可以直接通过浏览器上传文件。CLI 和浏览器上传提供了一种无缝方式,可将笔记本电脑上的数据迁移和贡献到一个位置,以进行数据科学工作。团队可以利用共享的、精选的数据,消除潜在的冗余数据争论工作,并确保完全可重复的实验。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

为了补充数据科学领导者控制中心的新功能,我们还推出了用户活动分析增强功能,以促进许可证报告和合规性。它提供了每个团队成员的 Domino 活动水平的详细视图,以便数据科学和 It 领导可以管理他们的 Domino 许可证分配,并对他们的成本有可见性和可预测性。Domino 管理员可以快速识别活动和非活动用户,并决定是否应该给他们分配一个许可证。在预算规划和合同续签期间跟踪用户活动和增长的能力,使得规划未来支出变得更加容易。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

除了为数据科学领导者带来激动人心的突破性新功能,我们还推出了新的[试用环境]https://www . dominodatalab . com/Trial/对于那些想尝试一下并评估它是否对你的工作有用的人来说,它是完美的。这个最新版本中的新特性也将出现在我们的测试环境中!这是访问 Domino 并开始体验像经销商轮胎和 Redhat 这样的公司在他们的数据科学组织中利用的秘方的一种快速而简单的方法。

Domino 3.5 目前已经上市——请务必试试 Domino 看看最新的平台功能。

Twitter Facebook Gmail Share

原文:https://www.dominodatalab.com/blog/announcing-domino-good-program-nonprofits-students

上周在我们的数据科学 Popup 上,我们宣布了 Domino for Good ,我们的计划是帮助学生和非营利组织使用 Domino 进行数据科学工作。对于非营利组织,我们要么免费提供软件,要么大幅打折。对于学生,我们免费提供软件和计算资源。

我们看到许多组织在数据科学方面做了很好的工作,让世界变得更美好,我们希望成为其中的一员。 Thorn 正在利用数据科学保护儿童,而奥杜邦协会正在利用数据科学保护环境。民主数据正在为人们参与利用数据服务公共利益创造机会,而 MDRC 正在努力改善影响穷人的项目和政策。这些组织受益于数据科学平台,我们都受益于他们所做的工作。

对于学生来说,我们认识到,试图学习数据科学的人往往会被与他们的课程工作无关的事情拖慢脚步。这可能是一台动力不足的计算机,需要访问 GPU,或者浪费时间管理环境和软件包。我们已经和足够多的教育者交谈过,知道这些是真正的痛点。世界需要更多的数据科学家,教育已经够贵了。

值得注意的是,这个程序代表了 Domino 的真实投资。虽然软件是免费的,但我们为该程序的计算资源付费,包括大量的服务器。我们还提供产品培训和支持。

我们相信这项工作值得我们花费金钱和时间,因为我们已经能够从数据科学社区中以如此多的方式受益。人们自愿在我们的弹出窗口上发言,并为我们写博客。更一般地说,开源社区已经创造了像 Jupyter notebooks 和 scikit learn 这样的神奇工具。这些工具使我们的产品对客户更有用。

原文:https://www.dominodatalab.com/blog/announcing-rev-3-dates-keynote-speakers-and-registration

由多米诺数据实验室于 2022 年 2 月 8 日在公司更新

我们很高兴再次在 Rev 3 现场相聚,这是一年一度不容错过的企业 MLOps 峰会!

2022 年 5 月 4 日至 6 日,纽约 Marriott Marquis 酒店。

这有望成为迄今为止最雄心勃勃的企业 MLOps 峰会。而且,注册现在是开放的,有最好的交易,所以你可以保证你和你的团队不会错过这个开创性的经验。立即注册!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Rev 3 汇集了数据科学和 IT 领导者及其团队,分享关于 MLOps 最佳实践的战略和实践见解,以推动其组织内的进步。

为前所未有的三天洞察力和学习做好计划,重点是建立一个持续的学习机器。

模型的力量在于它们不断学习的能力:随着数据的变化,模型也在改进。今年 Rev 着眼于如何将这种持续学习融入到你的模型、团队和生活中。从不容错过的杰出主题演讲嘉宾阵容开始:

  • James Clear ,畅销书作家和个人发展教练。Clear 将谈到“原子习惯”
  • **Mike Hayes,**VMware 首席数字化转型官。“永不满足:海军海豹突击队指挥官谈卓越、敏捷和有意义的生活.”
  • 詹妮弗·杜德纳(Jennifer Doudna),博士, 2020 年诺贝尔奖获得者,加州大学伯克利分校分子和细胞生物学及化学教授。
  • **Linda Avery,**高级副总裁,&首席数据分析官,威瑞森
  • 访问我们的演讲人页面了解更多关于这些以及我们的专家阵容的信息。

这些鼓舞人心的演讲者只是 Rev 3 所提供的一个暗示。该议程包含培训、实践见解、学习和网络,将遵循三个不同的轨道:

数据科学管理 -赢得转型战略、雇佣和建立团队的艺术、创建跨职能协作以及支持数据科学家。

模型驱动的业务 -支持组织战略、运营效率和重大商业价值的数据科学、机器学习和 MLOps 的应用。

MLOps 提示、工具和技巧 -从探索和实验到部署和监控的整个 MLOps 生命周期中的技巧、工具和建议。

立即注册获得最优惠的价格,并确保您的团队沉浸在所有这些无与伦比的学习中。

如你所知,我们对迄今为止最重要的一次变革感到兴奋。这是唯一一次深入探讨数据科学领导力的独特挑战以及机器学习和企业 MLOps 如何支持组织战略、运营效率和重大商业价值的峰会。您将了解关于如何提高数据科学团队的工作效率、增强治理和安全性、加快模型速度的重要见解,以及数据科学生命周期中的其他主题。

…这一切都发生在我身上。

Rev 3 是您希望参加的活动,如果企业 MLOps 是您带领您的企业走向数据科学成功的责任。

不要错过今年的活动。现在就注册,锁定您的空间,并节省(做一只早起的鸟儿是值得的)!

为了更深入地了解更多的发言人和会议,我们的 Rev 3 网站现已上线,提供了详细议程、发言人、会议议程、常见问题解答、地点后勤以及最新的健康和安全信息。

赞助商有机会成为全球 2000 强企业、其支持合作伙伴、行业领袖和数据科学家的焦点。立即了解更多关于赞助的信息

最后,一个关于保持你的健康和安全的注意事项。请放心,我们致力于吸引人且安全的现场活动。Rev 3 将遵循所有最新的疾控中心和纽约当地的指导。

今年五月在纽约见!

原文:https://www.dominodatalab.com/blog/announcing-trial-and-domino-3-5-control-center-for-data-science-leaders

即使是最复杂的数据科学组织也很难跟踪他们的数据科学项目。数据科学领导者希望在任何给定的时刻,不仅知道有多少数据科学项目正在进行中,还想知道在模型开发方面有哪些最新的更新和障碍,以及哪些项目需要他们立即关注。

但是,虽然有大量的工具可供个人数据科学家使用,但数据科学领导者的需求并没有得到很好的满足。例如,一家财富管理公司的分析副总裁最近告诉我们,他不得不拿着笔和记事本在办公室里走来走去,从一个人走到另一个人,以便获得正在进行的项目的实际数量,因为他们的传统任务跟踪工具与数据科学团队使用的工作流不太一致。事实证明,最终的统计结果与提供给首席执行官的最初估计相差甚远。

数据科学领导者面临着一系列与可见性和治理相关的常见挑战:

  • 他们需要帮助跟踪项目
  • 他们需要帮助跟踪生产中的模型
  • 他们需要帮助建立一种遵循最佳实践的文化

考虑到不准确信息的潜在影响(从错误设定的预期、资金不匹配到项目延迟),数据科学领袖们在纽约举行的 Rev 2 数据科学领袖峰会 上挤得满满当当来观看我们专门为他们设计的新“控制中心”功能的现场演示也就不足为奇了。

https://youtube.com/watch?v=aO3YkDwsm6Q%3Ffeature%26%2361%3Boembed

附言:如果你错过了今年的 启 ,专题演讲和录音可以在这里找到。

去年秋天,我们推出了 Domino 控制中心 ,旨在帮助 IT 利益相关方了解计算使用和支出情况。今天,我们宣布在 Domino 3.5 中对控制中心进行重大扩展,为数据科学领导者提供新功能。

Domino 3.5 允许数据科学领导者定义他们自己的数据科学项目生命周期。控制中心新增了项目组合仪表板,使数据科学领导者能够轻松跟踪和管理项目,全面了解最新发展。它还通过显示被阻止的项目来实时显示需要立即关注的项目。

数据科学负责人可以在 e 项目组合仪表板、 开始他们的一天,该仪表板显示按可配置生命周期阶段细分的进行中项目的摘要,并提供所有项目的即时状态更新。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

每个组织都有符合其业务需求的数据科学生命周期。在 Domino 3.5 中,我们允许数据科学领导者&经理定义他们自己的项目生命周期,并在他们的团队中实施。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据科学家可以在项目生命周期中更新项目阶段,并通过电子邮件通知他们的合作者。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

项目所有者和贡献者可以使用项目阶段菜单将项目标记为被阻止,并对阻止者进行描述。一旦解决,项目就可以解冻。另一方面,当数据科学家用项目结论的描述将项目标记为完成时,Domino 也会捕获这些元数据,用于项目跟踪和将来的引用。所有这些捕获的元数据对于组织学习、组织项目和帮助避免将来类似的问题都是有用的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

所有这些信息为 Domino 的新项目组合仪表板提供了动力。数据科学主管可以点击查看任何正在进行的项目的更多背景信息,并发现需要关注的受阻项目。

在下面的假设项目中,我们的首席数据科学家 Josh 发现其中一个受阻的项目是 Avinash 和 Niole 的客户流失项目。虽然他不记得这个项目的细节,但他可以看到它正处于研发阶段,几周后会有一个艰难的停顿。深入到项目中,他可以看到剩下的目标是获得 AUC 在 0.8 以上的分类模型。

Josh 可以转到活动订阅源,以获得有关阻止程序、原因的详细信息,并建议一系列行动。在这个例子中,他将要求客户流失团队尝试深度神经网络。他可以标记另一个团队的深度学习专家 Sushmitha,并请她指导这项工作。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

管理项目、跟踪生产资产和监控组织健康状况需要新的工具。这些独特的功能是为数据科学领导者定制的。在 Domino,当您在团队中使用这些优势时,我们很高兴地看到这些优势正在向您走来。

所有这些只是 Domino 中的一些新特性,在 3.5 版本中,我们还对现有特性进行了一些其他增强。例如, 活动提要 得到了增强,可以显示正在评论的文件的预览。它还显示了项目阶段的更新,以及合作者是否提出了任何阻碍因素。用户还可以根据活动类型进行筛选。这与电子邮件通知相结合,将确保随时了解项目的情况。

Domino 3.5 为用户提供了直接从计算机上的数据创建大型数据集快照的选项。CLI 上的上传限制已增加到 50 GB 和最多 50,000 个文件。在相同的上传限制下,用户也可以直接通过浏览器上传文件。CLI 和浏览器上传提供了一种无缝方式,可将笔记本电脑上的数据迁移和贡献到一个位置,以进行数据科学工作。团队可以利用共享的、精选的数据,消除潜在的冗余数据争论工作,并确保完全可重复的实验。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

为了补充面向数据科学领导者的控制中心的新功能,我们还推出了用户活动分析增强功能,以促进许可证报告和合规性。它提供了每个团队成员的 Domino 活动水平的详细视图,以便数据科学和 It 领导可以管理他们的 Domino 许可证分配,并对他们的成本有可见性和可预测性。Domino 管理员可以快速识别活动和非活动用户,并决定是否应该给他们分配一个许可证。在预算规划和合同续签期间跟踪用户活动和增长的能力,使得规划未来支出变得更加容易。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

除了为数据科学领导者带来激动人心的突破性新功能,我们还将 推出新的 试用环境 t o 让 Domino 更易于使用。对于那些想尝试一下并评估它是否对你的工作有用的人来说,它是完美的。这个最新版本中的新特性也将出现在我们的测试环境中! 这是访问 Domino 并开始体验秘方 公司 像 经销商轮胎 和red hat在他们的数据科学组织中发挥杠杆作用的一种快速简单的方法。

更详细的 Domino 3.5 发行说明可以在这里。Domino 3.5 目前已正式发布——请务必查看我们的3.5 发布网上研讨会 或 试用 Domino 至 查看最新的平台功能。

原文:https://www.dominodatalab.com/blog/answering-questions-model-delivery-aws-strata

这篇文章是达美乐在纽约 Strata 展台回答的常见问题的摘要。我们回答了关于访问 EC2 机器、管理环境和模型交付的问题。

参加像 Strata 这样的活动的最大好处之一是有机会与数据科学家和数据科学经理共度时光。我们直接了解了数据科学家在日常工作中面临的挑战,包括花费在 DevOp 式任务上的时间。我们听到许多数据科学经理谈论他们的计划获得更大的灵活性,以便数据科学家可以自由选择工具和进行实验。我们从数据科学家和数据科学经理那里了解到,有多少公司仍在寻找数据科学有效实现商业价值所需的流程和基础设施。我们还听说许多公司开始将云迁移视为其长期战略的重要组成部分。

这种类型的会议很棒,因为它们给了我们很多关于构建特性的想法。然而,在 Strata 召开的这些会议也很棒,因为它们验证了我们已经推出的产品。事实上,我们最近关于 AWS 上模型交付的声明仅仅强调了我们与亚马逊联合解决方案的一些优势。甚至我们认为更基本的功能,包括轻松访问 EC2 机器、环境管理和模型交付,也受到了 Domino 客户的欢迎。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

以可扩展计算为例。如今,从事数据科学工作的人很少能像 Domino 提供的那样获得计算能力。大多数数据科学家要么仍在他们的个人机器上工作,要么被困在他们无法控制的共享服务器上。尽管硬件层选择菜单很简单,但它仍然是演示中最受工作数据科学家欢迎的功能之一。

我们与 AWS 的合作意味着 Domino 客户可以快速、轻松地获得他们工作所需的计算能力。当然,我们还添加了支持数据科学团队的人员正在寻找的报告和 IT 管理功能。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

计算管理配合,Domino 的环境管理也解决了许多公司面临的问题。因为 Strata 在纽约,我们采访了各种金融服务公司的人。法规遵从性一直是一个重要的话题。我问来自几家银行的人,*“你们的模型验证团队是如何重现模型建立时的环境的?”*事实证明,没有人有好的答案。这是一个文档挑战,对数据科学家可以使用的工具有限制,或者可能只是增加了许多额外的工作。

多米诺解决了这个问题。我们在受监管行业的客户喜欢这样一个事实,即从最初的勘探到生产,环境与模型同行。看到这一点的人赞赏他们在工作方式上获得的灵活性,以及他们使用的任何环境都将得到保护并可供内部和外部审计人员使用的保证。

环境管理还有另外一个好处,那就是客户可以选择将哪些工具加载到环境中,并提供给他们的团队使用。很容易让每个人都能访问 Jupyter、RStudio 以及 SQL、Spark 等工具。Domino 客户也在他们的共享环境中加载专有软件,如 Matlab 和 SAS。结果是集中管理数据科学团队想要使用的所有工具。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 Sneak Peek of Upcoming Workspace within a Single Page View

因为我们刚刚宣布了新的模型交付功能,这一领域引起了很大的兴趣。我们经常听到从一个模型完成到投入生产之间的昂贵的延迟。成本不仅仅是 DevOps 的成本,也不是在生产中使用过时模型的成本。主要成本是模型迭代次数的减少。公司从部署的模型中学习的能力受到了损害,改进的速度也是如此。

有了 AWS 上的 Domino,就消除了 DevOps 开销。人们得到了高可用性的基础设施,以及一个可控制的过程来部署他们所需要的任何规模的模型,从小型原型到 web 规模的面向消费者的应用程序。当然,我们仍然有一个完整的模型发布管理过程,但是没有所有花费如此多的不必要的开销。

模型发布有几个方面是人们真正欣赏的。一个是在生产环境中轻松测试模型的能力。那些构建模型的人可以确认模型确实做了他们期望的事情。使用 Domino 意味着模型不需要在新环境中重新实现,并且消除了一轮又一轮的测试。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

接下来,我们使分配资源以支持生产中的模型变得容易。决定应该投入多少计算能力来支持生产模型就像使用下拉菜单一样简单。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最后,我们让跟踪生产模型的一切变得容易:谁拥有它们、何时建造何时投产何时版本变更等等。Domino 的协作特性扩展到监控和管理模型,以便关键任务预测模型可以获得适当级别的支持。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

当然,对于 AWS 上的 Domino 来说,还有更多让我们的用户感到兴奋的东西。我们已经写了我们支持的 128 个核心 X1 实例。(是的,您可以配置谁可以访问它们。)最近,我们讨论了G3 GPU的价值,以及速度优势是否值得付出。由于集中的知识和容易看到其他人正在做什么的能力,分布式团队变得更快和更有效。首席信息官和 IT 团队很乐意结束影子 IT ,同时仍然支持数据科学工作需求。

如果您未能加入我们的 Strata,并且您有兴趣了解更多有关我们的客户如何使用该平台并迁移到云的信息,请下载我们的“云中的数据科学”白皮书。

原文:https://www.dominodatalab.com/blog/applied-spatial-data-science-with-r

我最近开始写我的博士论文,这篇论文利用了大量不同的空间数据类型。在这个过程中,我发现有很多关于使用 R 进行空间数据分析的概念是我不知道的。本报告的目的是记录一些概念和我最喜欢的空间数据分析包。本报告组织如下:首先,我们需要问为什么 R 是空间分析的一个很好的选择工具;其次,我们将经历一个典型的数据分析生命周期,从获取空间数据到数据准备、探索、可视化和地质统计分析。

为什么使用 R 进行空间数据分析

你可能会问自己:既然有商业和开源的地理信息系统(GIS ),如 ESRI ArcMap 和 QGIS,为什么还要使用 R 进行空间分析呢?以下是我的一些理由:

  • r 是免费和开源的
  • 再现性:研究人员可以再现他们自己的分析或其他人的分析,并验证他们的发现
  • 包:有大量的 R 包用于空间数据分析、统计建模、可视化、机器学习等等。
r 空间数据分析包

我最喜欢的一些空间数据分析包包括:

  • sp :这个包提供了空间数据的类和方法;用于绘制地图、处理坐标等的实用函数。
  • 这个包提供了导入和导出不同的栅格和矢量地理空间数据格式的方法;坐标参考系统;预测等。
  • rgeos :提供处理拓扑操作的函数。
  • ggplot2 :由 Hadely Wickham 开发的最受欢迎的数据可视化软件包
  • ggmap :提供在静态地图上可视化空间数据的功能,这些地图来自 Google Maps、Open Street Maps、cloudmade 和 stamen。
  • leaflet : leaflet for R 提供了控制和集成 Leaflet 的功能,Leaflet 是 R 内部的一个用于交互式地图的 JavaScript 库。
  • 我的大部分空间数据都有日期时间度量。这个包提供了操作日期和时间的函数。

数据

在本教程中,我们将使用从 2010 年 1 月至 2010 年 8 月期间收集的来自休斯顿警察局的犯罪数据。 ggmap 软件包的创建者【大卫·卡尔】好心地收集数据,对其进行处理,并通过他的软件包提供给用户。

所以让我们安装一些我最喜欢的包,我们将在本教程中使用。

## These are some of my favorite packages for spatial data analysis
suppressPackageStartupMessages(library(ggmap))
suppressPackageStartupMessages(library(sp))
suppressPackageStartupMessages(library(rgdal))
suppressPackageStartupMessages(library(rgeos))
suppressPackageStartupMessages(library(ggplot2))
suppressPackageStartupMessages(library(leaflet))
suppressPackageStartupMessages(library(dplyr))
suppressPackageStartupMessages(library(magrittr))
suppressPackageStartupMessages(library(readr))
suppressPackageStartupMessages(library(lubridate))
suppressPackageStartupMessages(library(RColorBrewer))
suppressPackageStartupMessages(library(classInt))

读取空间数据

犯罪数据是逗号分隔值(CSV)格式,并且很小,只有 13MB。

crime_df <- read_csv("data/crime.csv")

## We need to understand the structure of this dataset
str(crime_df)

## Classes 'tbl_df', 'tbl' and 'data.frame': 86314 obs. of 17 variables:
## $ time : POSIXct, format: "2010-01-01 06:00:00" "2010-01-01 06:00:00" ...
## $ date : chr "1/1/2010" "1/1/2010" "1/1/2010" "1/1/2010" ...
## $ hour : int 0 0 0 0 0 0 0 0 0 0 ...
## $ premise : chr "18A" "13R" "20R" "20R" ...
## $ offense : chr "murder" "robbery" "aggravated assault" "aggravated assault" ...
## $ beat : chr "15E30" "13D10" "16E20" "2A30" ...
## $ block : chr "9600-9699" "4700-4799" "5000-5099" "1000-1099" ...
## $ street : chr "marlive" "telephone" "wickview" "ashland" ...
## $ type : chr "ln" "rd" "ln" "st" ...
## $ suffix : chr "-" "-" "-" "-" ...
## $ number : int 1 1 1 1 1 1 1 1 1 1 ...
## $ month : chr "january" "january" "january" "january" ...
## $ day : chr "friday" "friday" "friday" "friday" ...
## $ location: chr "apartment parking lot" "road / street / sidewalk" "residence / house" "residence / house" ...
## $ address : chr "9650 marlive ln" "4750 telephone rd" "5050 wickview ln" "1050 ashland st" ...
## $ lon : num -95.4 -95.3 -95.5 -95.4 -95.4 ...
## $ lat : num 29.7 29.7 29.6 29.8 29.7 ...

快速浏览一下数据结构就会发现,这是一个包含 86,314 个观察值和 17 个变量的数据框架。

让我们快速查看一些数据记录和一些汇总统计数据,以熟悉我们的数据。这可以使用head()summary()命令来完成。

head(crime_df, n = 5)

## Source: local data frame [5 x 17]
##
## time date hour premise offense beat
## (time) (chr) (int) (chr) (fctr) (chr)
## 1 2010-01-01 06:00:00 1/1/2010 0 18A murder 15E30
## 2 2010-01-01 06:00:00 1/1/2010 0 13R robbery 13D10
## 3 2010-01-01 06:00:00 1/1/2010 0 20R aggravated assault 16E20
## 4 2010-01-01 06:00:00 1/1/2010 0 20R aggravated assault 2A30
## 5 2010-01-01 06:00:00 1/1/2010 0 20A aggravated assault 14D20
## Variables not shown: block (chr), street (chr), type (chr), suffix (chr),
## number (int), month (fctr), day (fctr), location (chr), address (chr),
## lon (dbl), lat (dbl)

summary(crime_df)

## time date hour
## Min. :2010-01-01 06:00:00 Length:86314 Min. : 0.00
## 1st Qu.:2010-03-08 01:00:00 Class :character 1st Qu.: 8.00
## Median :2010-05-06 12:00:00 Mode :character Median :14.00
## Mean :2010-05-04 18:47:44 Mean :13.28
## 3rd Qu.:2010-07-02 20:00:00 3rd Qu.:19.00
## Max. :2010-09-01 04:00:00 Max. :23.00
##
## premise offense beat
## Length:86314 aggravated assault: 7177 Length:86314
## Class :character auto theft : 7946 Class :character
## Mode :character burglary :17802 Mode :character
## murder : 157
## rape : 378
## robbery : 6298
## theft :46556
## block street type
## Length:86314 Length:86314 Length:86314
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
##
## suffix number month day
## Length:86314 Min. :1.000 may :11920 friday :13414
## Class :character 1st Qu.:1.000 july :11290 monday :12535
## Mode :character Median :1.000 april :11068 saturday :12525
## Mean :1.012 june :11052 sunday :11019
## 3rd Qu.:1.000 august :10962 thursday :12342
## Max. :9.000 march :10922 tuesday :12503
## (Other):19100 wednesday:11976
## location address lon lat
## Length:86314 Length:86314 Min. :-99.51 Min. :27.51
## Class :character Class :character 1st Qu.:-95.51 1st Qu.:29.69
## Mode :character Mode :character Median :-95.41 Median :29.74
## Mean :-95.42 Mean :29.76
## 3rd Qu.:-95.34 3rd Qu.:29.81
## Max. :-91.95 Max. :37.34
## NA's :5 NA's :5

汇总统计数据显示,我们需要将变量“日期”、“冒犯”、“月”和“日”的格式改为日期和因子。我们还需要在“坐标”变量中去掉 NAs 的 5 个数据记录,因为这将影响我们的一些空间分析。

## Because the sp package is not able to find an inherited method
## for function ‘coordinates’ for signature ‘"tbl_df", let's convert our local dataframe.
## The variables "offense", "month", "day" should be factors
crime_df <- data.frame(crime_df) %>% filter(lon != "NA")
crime_df$offense <- as.factor(crime_df$offense)
crime_df$month <- as.factor(crime_df$month)
crime_df$day <- as.factor(crime_df$day)
crime_df$date <- as.Date(crime_df$date)

空间点数据框架

为了利用几个空间包中的类和方法,包括 sp 包,我们需要将*“犯罪 _ df”本地数据帧转换成*“空间点数据帧”**。

## Convert to SpatialPointsDataFrame with longitude and latitude so as to use spatial packages
## The Coordinate Reference System is a Geographic CRS called WGS84
coords <- SpatialPoints(crime_df[, c("lon", "lat")])
crime_spatial_df <- SpatialPointsDataFrame(coords, crime_df)
proj4string(crime_spatial_df) <- CRS("+proj=longlat +ellps=WGS84")

请注意,我们使用了一些新的函数,即 SpatialPoints、SpatialPointsDataFrame、CRS 和 proj4string。这些来自用于空间分析的 sp 包。这个包的基础类是空间,从它生成其他子类,包括:

getClass("Spatial")

## Class "Spatial" [package "sp"]
##
## Slots:
##
## Name: bbox proj4string
## Class: matrix CRS
##
## Known Subclasses:
## Class "SpatialPoints", directly
## Class "SpatialMultiPoints", directly
## Class "SpatialGrid", directly
## Class "SpatialLines", directly
## Class "SpatialPolygons", directly
## Class "SpatialPointsDataFrame", by class "SpatialPoints", distance 2
## Class "SpatialPixels", by class "SpatialPoints", distance 2
## Class "SpatialMultiPointsDataFrame", by class "SpatialMultiPoints", distance 2
## Class "SpatialGridDataFrame", by class "SpatialGrid", distance 2
## Class "SpatialLinesDataFrame", by class "SpatialLines", distance 2
## Class "SpatialPixelsDataFrame", by class "SpatialPoints", distance 3
## Class "SpatialPolygonsDataFrame", by class "SpatialPolygons", distance 2

我们可以看到空间点空间点数据帧空间类的子类。这种类系统脱离了 R 的基础类系统,为处理空间数据类型提供了更丰富的表示。

现在让我们来看看这种新数据类型的结构。

str(crime_spatial_df)

## Formal class 'SpatialPointsDataFrame' [package "sp"] with 5 slots
## ..@ data :'data.frame': 86309 obs. of 17 variables:
## .. ..$ time : POSIXct[1:86309], format: "2010-01-01 06:00:00" ...
## .. ..$ date : chr [1:86309] "1/1/2010" "1/1/2010" "1/1/2010" "1/1/2010" ...
## .. ..$ hour : int [1:86309] 0 0 0 0 0 0 0 0 0 0 ...
## .. ..$ premise : chr [1:86309] "18A" "13R" "20R" "20R" ...
## .. ..$ offense : Factor w/ 7 levels "aggravated assault",..: 4 6 1 1 1 3 3 3 3 3 ...
## .. ..$ beat : chr [1:86309] "15E30" "13D10" "16E20" "2A30" ...
## .. ..$ block : chr [1:86309] "9600-9699" "4700-4799" "5000-5099" "1000-1099" ...
## .. ..$ street : chr [1:86309] "marlive" "telephone" "wickview" "ashland" ...
## .. ..$ type : chr [1:86309] "ln" "rd" "ln" "st" ...
## .. ..$ suffix : chr [1:86309] "-" "-" "-" "-" ...
## .. ..$ number : int [1:86309] 1 1 1 1 1 1 1 1 1 1 ...
## .. ..$ month : Factor w/ 8 levels "april","august",..: 4 4 4 4 4 4 4 4 4 4 ...
## .. ..$ day : Factor w/ 7 levels "friday","monday",..: 1 1 1 1 1 1 1 1 1 1 ...
## .. ..$ location: chr [1:86309] "apartment parking lot" "road / street / sidewalk" "residence / house" "residence / house" ...
## .. ..$ address : chr [1:86309] "9650 marlive ln" "4750 telephone rd" "5050 wickview ln" "1050 ashland st" ...
## .. ..$ lon : num [1:86309] -95.4 -95.3 -95.5 -95.4 -95.4 ...
## .. ..$ lat : num [1:86309] 29.7 29.7 29.6 29.8 29.7 ...
## ..@ coords.nrs : num(0)
## ..@ coords : num [1:86309, 1:2] -95.4 -95.3 -95.5 -95.4 -95.4 ...
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : NULL
## .. .. ..$ : chr [1:2] "lon" "lat"
## ..@ bbox : num [1:2, 1:2] -99.5 27.5 -91.9 37.3
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : chr [1:2] "lon" "lat"
## .. .. ..$ : chr [1:2] "min" "max"
## ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
## .. .. ..@ projargs: chr "+proj=longlat +ellps=WGS84"

您可以看到该类是 SpatialPointsDataFrame ,有 5 个插槽/组件,包括:

  1. 数据:读入 R 的原点数据,
  2. coords.nrs :坐标的数据类型
  3. 坐标:这些是坐标
  4. bbox :这是坐标的边界框,并且
  5. proj4string :这是坐标参考系统。

我们使用函数CRS()分配一个坐标参考系统,在本例中为 WGS84 。我们知道这是一个地理坐标参考系统(CRS)类型,因为坐标是经度和纬度格式。

或者,您可以使用如下的coordinates()命令。

# Or using the "coordinates" method
crime_spatial_df1 <- crime_df
coordinates(crime_spatial_df1) <- c("lon", "lat")
proj4string(crime_spatial_df1) <- CRS("+proj=longlat +ellps=WGS84")
坐标参考系统

理解坐标参考系统(CRS)很重要。这些对于空间地理编码数据非常有帮助。有两种类型的 CRS,即:

  1. 地理坐标系统(经度、纬度),例如 WGS84
  2. 笛卡尔/投影/平面坐标系(x,y)

投影坐标参考系统由分为两大类的几个系统组成,即:

  1. 州平面图(NADS83):这主要在美国使用,例如内华达州平面图 NADS 83。
  2. 通用横轴墨卡托(UTM),例如内华达(UTM 11N 区)、南非(UTM 34S 和 35S 区)

如果您看到以下格式的坐标数据,那么它是在地理坐标系中。

  1. (-94.324, 42.234)
  2. (33.33 44.4),(33d19’47"N 44d23.9’E),(38SMB4488),(38n 444000 3688000)

基准:基准是定义局部坐标系的一组参数和地面控制点。示例:WGS84、NADS83

我们现在有了一个具有正确坐标系和时间数据的空间点数据框。我们应该保存一份副本作为 R 数据文件。

## So we can quickly read in our processed data without having to re-process it.
saveRDS(crime_spatial_df, "data/crime_spatial_df.rds")

或者,我们可以将处理后的数据保存为 ESRI shape file,以保持空间完整性,如果您需要将它用于其他 GIS 系统,也可以这样做。 rgdal 包提供了writeOGR()命令,用于写出空间数据类型。

## Also create a shapefile of this data
writeOGR(crime_spatial_df, dsn = "data/shapefiles", layer = "crime-shapefile", driver = "ESRI Shapefile", overwrite_layer = TRUE)
ESRI 形状文件多边形

我们将使用的另一个数据集是休斯顿地区的行政人口普查区。这些数据可以从美国人口普查网站获得。

## Create a SpatialPolygonsDataFrame by reading in shapefile data
unzip("data/shapefiles/tl_2015_48_tract.zip", exdir = "data/shapefiles", overwrite = TRUE)
texas_shp <- readOGR(dsn = "data/shapefiles", layer = "tl_2015_48_tract")

## OGR data source with driver: ESRI Shapefile
## Source: "data/shapefiles", layer: "tl_2015_48_tract"
## with 5265 features
## It has 12 fields

class(texas_shp)
## [1] "SpatialPolygonsDataFrame"
## attr(,"package")
## [1] "sp"

或者,我们可以使用 maptools 包中的readShapeSpatial()函数来读取 shapefile 数据。

texas_shp2 <- readShapeSpatial("data/shapefiles/tl_2015_48_tract.shp", proj4string = CRS("+proj=longlat +datum=WGS84"))

我们的 shapefile 属于类**“空间多边形数据帧”**。我们可以通过使用plot()功能绘图来快速查看。

## Use plot method to plot it
plot(texas_shp)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

R 中的一些基础方法可以用来探索空间对象,如plot()summary()print()等。例如,summary()给出空间实体的数量、投影信息和边界框,print()显示空间对象中的数据视图。

sp 包为操作空间对象提供了更丰富的方法。

用于探索任何空间对象的边界区域的方法是bbox()方法。第一行报告东西方向,第二行报告南北方向。

bbox(crime_spatial_df)

## min max
## lon -99.50555 -91.94627
## lat 27.50711 37.33690

我们可以使用proj4string()方法探索任何空间物体的投影系统。如果需要,这种方法也可用于为空间对象指定不同的坐标系。这可以通过以下方式完成:

proj4string(crime_spatial_df)

## [1] "+proj=longlat +ellps=WGS84"

我们可以通过使用“@”符号代替“$”符号来探索/提取空间点数据框中的各个槽。例如,让我们看看数据和坐标槽:

# Explore the SpatialPointsDataFrame
head(crime_spatial_df@data)

## time date hour premise offense beat
## 1 2010-01-01 06:00:00 1-01-20 0 18A murder 15E30
## 2 2010-01-01 06:00:00 1-01-20 0 13R robbery 13D10
## 3 2010-01-01 06:00:00 1-01-20 0 20R aggravated assault 16E20
## 4 2010-01-01 06:00:00 1-01-20 0 20R aggravated assault 2A30
## 5 2010-01-01 06:00:00 1-01-20 0 20A aggravated assault 14D20
## 6 2010-01-01 06:00:00 1-01-20 0 20R burglary 18F60
## block street type suffix number month day
## 1 9600-9699 marlive ln - 1 january friday
## 2 4700-4799 telephone rd - 1 january friday
## 3 5000-5099 wickview ln - 1 january friday
## 4 1000-1099 ashland st - 1 january friday
## 5 8300-8399 canyon - 1 january friday
## 6 9300-9399 rowan ln - 1 january friday
## location address lon lat
## 1 apartment parking lot 9650 marlive ln -95.43739 29.67790
## 2 road / street / sidewalk 4750 telephone rd -95.29888 29.69171
## 3 residence / house 5050 wickview ln -95.45586 29.59922
## 4 residence / house 1050 ashland st -95.40334 29.79024
## 5 apartment 8350 canyon -95.37791 29.67063
## 6 residence / house 9350 rowan ln -95.54830 29.70223
head(crime_spatial_df@coords, 4)

## lon lat
## [1,] -95.43739 29.67790
## [2,] -95.29888 29.69171
## [3,] -95.45586 29.59922
## [4,] -95.40334 29.79024

# Restrict the data to downtown only
downtown_crime <- subset(crime_df,
-95.39681 <= lon & lon <= -95.34188 &
29.73631 <= lat & lat <= 29.78400)

r 有几个用于可视化空间数据的包。我们将看看 R 中的传统绘图系统,它们带有一个 R 安装,通常称为“base-R”包。一个例子是在 sp 包中用于空间数据的plot()函数。我们还将探索“外部”包,包括 ggplot2、ggmap 和传单。

使用传统绘图系统可视化数据

**sp*包提供了通过增量添加图层来绘制空间数据的功能。让我们从绘制德克萨斯州休斯顿的形状文件开始。

plot(texas_shp, col = "grey", axes = TRUE)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后让我们将犯罪数据添加到地图上。使用参数add = TRUE将另一层添加到绘图上。

plot(texas_shp, col = "grey", axes = TRUE)
plot(crime_spatial_df, pch = 21, bg = "red", cex = .5, add = TRUE)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后添加标题和图例。

plot(texas_shp, col = "grey", axes = TRUE)
plot(crime_spatial_df, pch = 21, bg = "red", cex = .5, add = TRUE)
title("Locations of Offensive Crimes in Houston, Texas")
legend("topleft", title = "Legend", legend = "Crime Locations", pch = 21, pt.bg = "red", bty = "n")

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

虽然绘制空间数据的基本函数足以生成地图,但我们希望“外部”R 库能够提供更多功能并生成漂亮的地图,如 ggplot2、ggmap、fleed。

使用外部库可视化数据

ggplot2

ggplot2 适用于数据框,而不是空间*类的对象。所以我们必须使用 ggplot2 中的fortify()函数来转换它们。

crime_df <- data.frame(crime_spatial_df)
texas_shp_df <- fortify(texas_shp)

## Regions defined for each Polygons

现在我们可以利用 ggplot2 的强大的绘图功能。

p <- ggplot() +
geom_polygon(data = texas_shp_df, aes(x=long, y=lat, group = group)) + coord_equal() +
geom_point(data = crime_df, aes(x = lon, y = lat, color = "red")) +
labs(title = "Locations of Offensive Crimes in Houston, Texas") +
xlab("Longitude") +
ylab("Latitude")

p

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ggmap

为德克萨斯州的休斯顿市创建静态背景图层

## Use "get_map" command to download the images and format them for plotting
map_dat <- get_map(location = "houston", source = "osm", zoom = 14)

## Map from URL : http://maps.googleapis.com/maps/api/staticmap?center=houston&zoom=14&size=640x640&scale=2&maptype=terrain&sensor=false

## Information from URL : http://maps.googleapis.com/maps/api/geocode/json?address=houston&sensor=false

使用“ggmap”命令进行绘图

houstonMap <- ggmap(map_dat, extent = "device", legend = "topleft")
houstonMap

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

绘制形状文件

houstonMap2 <- houstonMap +
geom_polygon(aes(x = long, y = lat, group = group), data = texas_shp_df, colour = "black",
alpha = .4, size = .3)

houstonMap2

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用经度和纬度变量对市区犯罪数据进行地理编码

houstonMap3 <- houstonMap2 +
geom_point(aes(x = lon, y = lat), data = downtown_crime, alpha = 0.5, color="darkred", size = 3)

houstonMap3
## Warning: Removed 42 rows containing missing values (geom_point).

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

传单

R 的传单是一个软件包,它提供了开发优雅漂亮的传单地图的功能。传单是领先的交互式地图开源 JavaScript 库。

让我们首先创建一个休斯顿地区的地图,然后添加图层(功能)。这可以使用leaflet()命令来完成。我们应该使用addTiles命令添加的第一层是“瓷砖”。

m <- leaflet() %>% setView(lng = -95.3698028, lat = 29.7604267, zoom = 12) %>% addTiles()
m

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后将 shapefile 数据添加到地图上。使用addPolygon命令,这被添加为另一个层,多边形。

m1 <- m %>% addPolygons(data = texas_shp, fillColor = "transparent", color = "black", weight = 1)
m1

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最后将犯罪数据添加到地图上。使用addMarkers命令将其添加为另一个层,点。

m2 <- m %>% addCircles(data = crime_spatial_df, weight = 1.5, color = "red")
m2

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

参考

如需进一步阅读,请参考以下参考资料。

  1. 应用 R 进行空间数据分析。罗杰·比万、爱德华·佩贝斯马和戈麦斯·卢比奥。用户!系列,斯普林格。第二版。2013 年,xviii+405 页,软皮封面。国际标准书号:978-1-4614-7617-7
  2. 利用遥感全球地图进行地理可视化
  3. 使用 lubridate 1.3.0 对 R 中的日期和时间做更多的事情
  4. R中空间数据可视化介绍。罗宾·洛夫莱斯(< R.Lovelace@leeds.ac.uk >),詹姆斯·切希尔,雷切尔·奥德罗伊德等人诉 1.3,2015 年 9 月
  5. R 传单
  6. ggplot2 文档
  7. 用 Dplyr 操作数据

原文:https://www.dominodatalab.com/blog/atlassian-uses-data-science-improve-collaboration

Atlassian 的数据科学家 Christy Bergman 深入探讨了他们如何利用数据科学来改善用户参与和协作。这个演讲是在数据科学弹出式活动中录制的。

原文:https://www.dominodatalab.com/blog/automated-model-insights

模型经常被部署到处理大量数据的应用程序中。它们通常包含数百或数千个具有高度基数的特性。当这种复杂程度的模型没有按预期执行时,很难诊断根本原因。Domino 通过帮助数据科学家找到影响模型质量的输入数据组来解决这个问题。这使得数据科学家能够快速重新训练模型以考虑这些群组,从而提高模型的整体性能。

Domino 自动生成一个报告,根据模型质量突出表现最差的群组(或部分)。对于每个群组,报告详细描述了该群组中形成影响模型准确性的热点的特征。通过将对比分数分配给群组中的每个特征,用户可以辨别模型质量与该群组之外的其余数据相比的差异。这有助于用户对群组和群组内的特征进行优先排序,以进一步调查并采取补救措施。

除了报告之外,Domino 还会自动建立一个项目,其中包括:

  • 用于执行群组分析的 Python 代码
  • 群组分析结果以 JSON 文件的形式呈现,这些文件代表了跨群组的汇总统计数据以及带有对比分数的每个群组的表现细节

数据科学家可以轻松定制群组分析代码以生成定制报告,或者使用这些报告的输出对模型进行深入的定制分析,然后进入补救步骤。

Domino 是 企业 MLOps 平台,它无缝集成了代码驱动的模型开发、部署和监控,以支持快速迭代和最佳模型性能,因此公司可以确保从其数据科学模型中实现最大价值。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注册数据以支持模型质量分析

登记预测

为了生成模型质量分析,Domino 首先需要您注册预测数据和基本事实数据。对于在 Domino 5.0 中构建并自动监控的模型,Domino 会自动为您注册预测数据。对于所有其他型号,请遵循此处 提供的 说明。

用群组分析记录真实情况

接下来,注册基础事实并触发模型质量分析。按照 这里 提供的步骤,用 Domino 注册地面真实数据,并触发群组分析。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

访问群组分析报告

一旦地面真实数据集被成功摄取,群组分析报告将被创建。您可以在模型的概览页面中跟踪数据接收和群组分析生成的进度。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一旦基础数据和群组分析完成,您可以在模型的“模型质量”页面中访问报告。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

点击“查看报告”链接,您可以看到包含详细群组分析的 PDF。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在此报告中,您可以深入到摘要页面中确定的每个群组,以了解影响模型性能的主要特征。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

自定义报告和分析

除了易于访问和下载的报告之外,Domino 还允许您访问用于执行分析的代码以及 JSON 文件形式的群组统计数据。您可以复制代码和附带的统计数据,以创建自定义报告或作为模型修复工作的一部分。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

结论

这些新功能通过提供可操作的见解,继续让经验丰富的数据科学家轻松构建高质量的模型。在自动化模型质量分析的帮助下,数据科学家可以了解数据中的数据段以及这些数据段中的特征,以便在继续优化模型时进行进一步调查。有了这些关键信息,他们可以选择用更新的数据集重新训练他们的模型,或者调整模型本身。

原文:https://www.dominodatalab.com/blog/autoscaling-compute-clusters

由 Domino 的现场工程师 Alireza Mounesisohi 和 Domino 的解决方案架构师 Lakshmi Narayanan 于 2022 年 2 月 9 日在 的产品更新上发表

分布式计算集群为数据科学家提供了巨大的处理能力,通过更快地测试更多想法来解决复杂问题。然而,利用这种能力具有挑战性,因为:

  • 数据科学家不得不等待集群变得可用,即使它通常在项目中处于闲置状态。
  • 为分布式计算框架调配计算资源和管理包既复杂又耗时,并且需要丰富的开发运维技能。

Domino 5.0 通过分布式计算自动伸缩帮助组织克服这些障碍。对于 Domino 5.0:

  • 计算集群,包括最流行的分布式计算集群类型 Spark、Ray 和 Dask,可根据工作负载动态扩展和收缩,通过确保计算资源可用于任何需要它们的项目来提高数据科学家的工作效率。
  • 消除根据预期峰值负载提交资源的需求,从而节约成本。

它是如何工作的

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

计算节点的自动扩展

Domino 中最常见的自动伸缩用例之一是当用户有不同的机器学习工作负载并需要不同的计算资源时。借助 Kubernetes,用户可以拥有不同的节点池,每个节点池包含不同类型的实例。Domino 利用 Kubernetes 的功能来自动缩放计算节点,因此它们只在使用时才是活动的。

对于向外扩展,Domino 以给定的频率不断地寻找不可用的资源。如果没有可用的资源,Domino 会增加节点数量来满足资源请求。

举例来说,在下面的图 1 中,在 Domino 中创建的非 GPU 工作区将在“默认”节点池上运行。请注意,此处列出的实例属于“m5.2xlarge”类型,节点池仅为“default”和“platform”。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 1:使用中节点的 Domino 仪表盘

对于“dominodatalab . com/Node-Pool”Kubernetes 节点标签 具有相同值的节点形成节点池。节点池字段中具有匹配值的执行将在这些节点上运行。Domino 依赖与 Kubernetes 集群相关的底层节点池中的节点标签来扩展计算节点。此外,硬件层控制 Domino 执行将在其上运行的底层机器类型。

现在,想象开始一个新的 GPU 工作空间(图 2)。Domino 将在底层节点池标记为“default-gpu”的节点上运行工作区。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 2:使用 GPU 硬件层 创建新的工作空间

创建此工作空间将触发 GPU 计算节点从 0 -> 1 向上扩展。(图 3)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 3:集群自动缩放器将触发 GPU 节点从 0->1向上扩展

一旦集群自动扩展了新节点并将其连接到 Kubernetes 集群(图 4 ), workspace pod 就会被调度到新节点

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 4:Domino的基础设施部分下面列出的新节点

集群自动缩放器跟踪节点上的资源请求。如果一个节点在 10 分钟(可配置)内未被利用,它将被终止。

如果满足以下所有条件,则节点被视为不需要:

  • 在此节点上运行的所有 pod 的 CPU 和内存请求的总和小于节点可分配容量的 50%(注意:此阈值是可配置的)
  • 在该节点上运行的所有窗格都可以移动到另一个节点
  • 没有注释设置为禁用缩小( 参考 )

因此,Domino 在任何给定时间都可以有效地平衡资源数量和需求。

跨分布式计算框架自动扩展

除了使用集群自动缩放器自动缩放计算节点之外,Domino 5.0 还具有自动缩放 Spark、Ray 和 Dask 按需集群的能力。这将使数据科学家能够从小型集群开始,并根据工作需求的波动按需扩展。

Domino 利用了 Kubernetes 提供的水平 pod 自动伸缩功能,并支持针对射线 和 Dask 集群的分布式集群自动伸缩。当所有工作线程的平均 CPU/内存利用率超过 80 %(或管理员设置的目标时),将触发一个扩展操作,直到达到为集群配置的最大工作线程数。当平均利用率低于目标时,就会触发缩减。

用户只需点击几下鼠标,就可以设置具有自动扩展分布式计算的集群。如图 5 所示,Domino 将启动一个包含三个 Dask workers 的集群,如果平均 CPU/内存利用率超过配置值,那么 worker 的数量将增加到最多五个 worker。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 5:在 Domino 中启用分布式集群的自动伸缩

Domino 将继续添加工作进程,直到达到最大工作进程限制。图 6 显示了一个示例,其中一个集群从一个工作线程开始,随着资源利用率阈值的超出,扩展到五个工作线程。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图 6:在 Spark 集群 上放大资源的例子

结论

访问可扩展的计算基础架构对于数据科学家做他们最擅长的事情至关重要。Domino 通过满足底层计算需求,使用 Kubernetes 来扩展分布式计算集群,从而增强了数据科学家的能力。此外,管理基础架构的 IT 团队可以高枕无忧,因为他们知道 Kubernetes Cluster Autoscaler 只会在必要时加速节点,从而避免组织在未充分利用的资源上浪费资金。

提高 模型速度 的一个关键组成部分是精简集群的利用率。Domino 根据工作负载自动扩展计算集群,以简化配置、优化利用率和管理计算成本,从而最大化团队的生产力和计算投资的回报。

Domino 是 企业 MLOps 平台,它无缝集成了代码驱动的模型开发、部署和监控,以支持快速迭代和最佳模型性能,因此公司可以确保从其数据科学模型中实现最大价值。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

关于作者

| 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 | Alireza Mounesisohi 是 Domino 客户成功团队的现场工程师。他拥有加州大学戴维斯分校的机械和航空航天工程博士学位,在数据科学和机器学习方面有着广泛的背景。 |

| 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 | Lakshmi Narayanan 是 Domino 客户成功团队的解决方案架构师。他主要服务于 Domino 客户,为新的和现有的 Domino 安装/升级提供架构指导和最佳实践建议。工作之余,他喜欢户外活动,比如徒步旅行,并且痴迷于国际足联。 |

原文:https://www.dominodatalab.com/blog/avoiding-data-science-hype-bubble

在这篇文章中,Domino 数据实验室的首席数据科学家 Josh Poduska 提倡在数据科学行业中使用通用的术语分类法。建议的定义使数据科学专业人员能够消除宣传,提高数据科学创新的速度。

围绕人工智能、数据科学、机器学习和深度学习的噪音正在达到白热化。随着这种噪音的增长,我们的行业在人们说“人工智能”、“机器学习”或“数据科学”时的含义上出现了分歧。可以说,我们的行业缺乏一个共同的分类法。如果有一个分类法,那么我们作为数据科学专业人员,没有很好地坚持它。这有后果。两个后果包括制造炒作泡沫,导致不切实际的期望和越来越缺乏沟通能力,特别是与非数据科学同事的沟通。在这篇文章中,我将涵盖简明的定义,然后讨论我们如何定义像“人工智能”这样的术语对我们的行业来说是多么重要。

  • **数据科学:**使用代码和数据建立模型的学科,这些模型被投入生产以生成预测和解释。
  • **机器学习:**以模型的形式自动捕捉复杂数据模式的一类算法或技术。
  • **深度学习:**一类机器学习算法,使用超过一个隐含层的神经网络。
  • 人工智能:一类在自主程度和范围上与人类不相上下的系统。

我们的条款很有明星效应。它们激励人们去梦想和想象一个更美好的世界,这导致了它们的过度使用。更多关于我们行业的传言会提升所有船只,对吗?当然,我们都希望潮水会继续上涨。但是,我们应该努力实现可持续的增长,避免炒作泡沫,如果泡沫破裂,将会造成广泛的幻灭。

我最近参加了 Domino’s rev conference ,这是一个面向数据科学领导者和从业者的峰会。我听到许多领导者寻求建议,如何帮助高管、中层管理人员,甚至是新的数据科学家对数据科学项目有适当的期望,同时又不牺牲对数据科学的热情。不切实际的期望会降低项目的热情,从而减缓项目的进展。它们也使得在项目成功度量和 ROI 目标上达成一致变得更加困难。

当提到任何做出任何预测的解决方案时,频繁地过度使用“AI”是这种炒作的主要原因。由于频繁的过度使用,人们本能地将数据科学项目与近乎完美的类似人类的自主解决方案联系在一起。或者,至少,人们认为数据科学可以轻松解决他们特定的预测需求,而不考虑他们的组织数据是否支持这样的模型。

术语的不正确使用也会搞乱对话。在数据科学项目的早期规划阶段,当跨职能团队聚集在一起阐明目标并设计最终解决方案时,这种情况尤其具有破坏性。我认识一位数据科学经理,在他批准任何新的数据科学项目之前,他要求他的数据科学家团队与业务领导一起被锁在一个房间里一个小时。好吧,门不是真的锁上了,但它是关着的,他确实要求他们讨论这个项目整整一个小时。他们已经看到了项目返工的减少,因为他们已经关注了与业务利益相关者的早期调整。解释数据科学概念的挑战已经够难了。当我们不能定义自己的术语时,我们只会让事情变得更难。

我从事数据科学已经很长时间了。我和来自世界各地的数百名分析领导者和从业者一起工作过。自从人工智能和深度学习出现以来,我越来越多地不得不暂停对话并提问,以发现人们使用某些术语时的真实意思。例如,你如何解释这些基于我的对话的陈述?

  • “我们的目标是在 5 年内让我们的解决方案由人工智能驱动。”
  • “在投资深度学习之前,我们需要在机器学习方面做得更好。”
  • “我们使用人工智能来预测欺诈,因此我们的客户可以放心消费。”
  • “我们的研究发现,投资人工智能的组织实现了 10%的收入增长。”

很困惑,对吧?

一个人必须问一系列的问题才能理解到底发生了什么。

我听到的最常见的术语-混淆是当有人谈论人工智能解决方案或做人工智能时,他们实际上应该谈论建立深度学习或机器学习模型。似乎太多时候术语的互换是故意的,说话者希望通过说“AI”来获得炒作。让我们深入每一个定义,看看我们是否能在分类法上达成一致。

首先,我将数据科学视为一门科学学科,就像任何其他科学学科一样。以生物学为例。生物学包含一系列的想法、理论、方法和工具。实验是常见的。生物研究团体正在不断地增加这个学科的知识基础。数据科学也不例外。从业者做数据科学。研究人员用新的理论、概念和工具推进该领域。

数据科学的实践包括将代码(通常是一些统计编程语言)与数据结合起来构建模型。这包括数据获取、清理和准备的重要和主导的初始步骤。数据科学模型通常会做出预测(例如,预测贷款风险、预测疾病诊断、预测如何回复聊天、预测图像中的对象)。数据科学模型也可以为我们解释或描述世界(例如,哪些因素的组合对疾病诊断最有影响,哪些客户彼此最相似以及如何相似)。最后,将这些模型投入生产,在应用于新数据时进行预测和解释。数据科学是一门使用代码和数据构建模型的学科,这些模型被投入生产以生成预测和解释。

很难给数据科学下定义,同时将它与统计分析区分开来。我是通过数学和统计方面的教育培训以及作为统计学家的职业经历进入数据科学行业的。像你们中的许多人一样,在数据科学成为一个东西之前,我也在做它。

统计分析基于样本、受控实验、概率和分布。它通常回答关于事件可能性或陈述有效性的问题。它使用不同的算法,如 t 检验、卡方、方差分析、DOE、响应面设计等。这些算法有时也会建立模型。例如,响应面设计是基于观察到的解释因子以及它们如何与响应因子相关来估计物理系统的多项式模型的技术。

我定义中的一个关键点是,将数据科学模型应用于新的数据,以做出未来的预测和描述,或者说“投入生产”。虽然响应面模型确实可以用于新数据来预测响应,但它通常是一种假设性的预测,即如果输入发生变化会发生什么。然后,工程师改变输入,观察物理系统在新状态下产生的反应。响应面模型未投入生产。它不会随着时间的推移,成批或按流地获取成千上万的新输入设置,也不会预测响应。

我的数据科学定义绝不是简单的,但我相信将预测性和描述性模型投入生产开始抓住数据科学的本质。

机器学习这个术语可以追溯到 20 世纪 50 年代。如今,它被数据科学家视为数据科学中使用的一套技术。它是用于构建上述模型的一个工具集或一类技术。机器学习使计算机能够自己生成(或学习)模型,而不是人类明确表达模型的逻辑。这是通过处理一组初始数据,发现数据中复杂的隐藏模式,并在模型中捕获这些模式,以便以后可以将它们应用于新数据,从而进行预测或解释。这个自动发现模式的过程背后的魔力在于算法。算法是机器学习的主力。常见的机器学习算法包括各种神经网络方法、聚类技术、梯度推进机器、随机森林等等。如果说数据科学是像生物学一样的学科,那么机器学习就像显微镜或基因工程。它是实践该学科的一类工具和技术。

深度学习是这些术语中最容易定义的。深度学习是一类机器学习算法,使用具有多个隐藏层的神经网络。神经网络本身可以追溯到 20 世纪 50 年代。深度学习算法最近在 20 世纪 80 年代开始变得非常受欢迎,在 20 世纪 90 年代和 21 世纪初有一段时期,随后在我们的十年中复兴,因为深度网络构建方式的相对较小的调整被证明具有惊人的效果。深度学习可以应用于各种用例,包括图像识别、聊天助手和推荐系统。例如,Google Speech、Google Photos 和 Google Search 就是一些使用深度学习构建的原始解决方案。

AI 已经存在很久了。远在最近的炒作风暴之前,人们就已经用流行语来形容它了。作为数据科学家,我们如何定义它?我们应该何时以及如何使用它?AI 对我们来说是什么?老实说,我不确定是否有人真的知道。这可能是我们的“皇帝没穿衣服”时刻。我们有不确定性和由此产生的炒作,这种炒作来自对新事物和未知事物的承诺。一家著名数据科学公司的首席执行官最近在 Domino 与我们的团队交谈时提到了“AI”。他立刻控制住自己,说道:“我知道那并不意味着什么。我不得不开始使用它,因为每个人都在谈论它。我反抗了很久,但最终还是屈服了。”

也就是说,我将尝试一下: 人工智能是人们希望创建的一类系统,它们具有定义性的特征,即它们将在自主程度和操作范围上与人类相当。

延伸一下我们的类比,如果数据科学像生物学,机器学习像基因工程,那么 AI 就像抗病。它是最终的结果,是我们努力通过应用机器学习(通常是深度学习)和其他技术来创建的一套解决方案或系统。

这是底线。我认为,我们需要区分人工智能解决方案、类人工智能解决方案和真正的人工智能解决方案中的技术。这包括人工智能构建模块,具有人工智能品质的解决方案,以及接近人类自主性和范围的解决方案。这是三件不同的事情。人们经常把这三个单词都叫做“AI”。

举个例子,

  • 深度学习不是 AI。这是一种可以作为人工智能解决方案一部分的技术。
  • 大部分数据科学项目都不是 AI 解决方案。客户流失模型不是人工智能解决方案,无论它是否使用了深度学习或逻辑回归。
  • 自动驾驶汽车是一种人工智能解决方案。这是一个以接近人类能力的复杂性和自主性运作的解决方案。

还记得上面那些神秘的陈述吗?在每一个案例中,我都会问一些问题来弄清楚到底发生了什么。这是我的发现。

  • 一名高管表示:“我们的目标是在 5 年内让我们的解决方案由人工智能驱动。”这位高管的意思是:“我们希望在 5 年内有几个机器学习模型投入生产。”
  • 一位经理说:“在投资深度学习之前,我们需要在机器学习方面做得更好。”经理的意思是:“在我们准备好尝试深度学习方法之前,我们需要对我们的分析师进行基本数据科学原则的培训。”
  • 一名营销人员表示:“我们使用人工智能来预测欺诈,以便我们的客户可以放心消费。”营销人员的意思是:“我们的欺诈评分是基于多年来一直运行良好的逻辑回归模型。
  • 一位行业分析师表示:“我们的研究发现,投资人工智能的组织实现了 10%的收入增长。”这位行业分析师的意思是:“在生产中拥有任何一种预测模型的组织都可以实现 10%的收入增长。”

不管你是否 100%同意我的定义,我想我们都同意,今天我们的行业有太多的炒作,尤其是围绕人工智能。我们每个人都看到了这种炒作如何限制了真正的进步。我认为很多炒作都是由于误用了数据科学的术语。我的要求是,作为数据科学专业人员,我们应该更加努力地意识到我们如何使用这些关键术语,并且礼貌地帮助与我们一起工作的其他人学会正确使用这些术语。我相信,我们越快迭代到一个商定的分类并坚持遵守它,我们就能越快停止炒作,并在构建今天和明天的解决方案时提高我们的创新速度。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

原文:https://www.dominodatalab.com/blog/aws-and-domino-data-lab-containerized-data-science-in-aws-utilizing-kubernetes

在这个“这是我的架构”视频中,Domino 数据实验室的副首席技术官 Ozzy Johnson 展示了 Domino 如何为任何规模和法规需求的客户提供容器化的数据科学解决方案。您将看到 Domino 如何通过 Terraform 和 Jinja 利用基础设施作为代码来构建一个数据科学环境,该环境通过 Docker 和 Kubernetes 的容器化在高度定制的环境中工作。Ozzy 还将介绍 Domino Data Lab 如何在 AWS 和内部环境中工作,同时利用 S3、EC2 和 ELB 等 AWS 服务的优势,获得高可用性和安全性的优势,并缩短 AWS 中的开发时间。

https://youtube.com/watch?v=QLgvQ8Y8Sx0

Twitter Facebook Gmail Share

原文:https://www.dominodatalab.com/blog/balancing-healthcare-ai-innovation-with-governance

合作伙伴营销主管大卫·舒尔曼和全球健康和生命科学主管卡洛琳·法尔斯

从早期疾病检测到智能临床试验设计,再到个性化医疗,人工智能/人工智能在医疗保健和生命科学领域的前景非常广阔,“超过 57%的医疗保健和生命科学组织将人工智能/人工智能评为重要或非常重要,”根据 Ventana Research 在其最近的白皮书 中对首席数据和分析高管的顶级人工智能考虑。

  • 让桑加速了深度学习模型 的训练,在某些情况下速度快了 10 倍,通过全切片图像分析更快更准确地诊断和表征癌细胞。
  • 礼来公司将电子病历、 *保险赔付、真实世界证据(RWE)和其他来源的多模态数据相结合,将人群水平的模式转化为下一个最佳的患者治疗措施(*注:36:56 转化为面板记录)。
  • Evidation 使用来自应用程序和可穿戴技术(如智能手机、活动追踪器和智能手表)的患者生成的健康数据(PGHD)持续测量个人健康 。
  • NVIDIA 的医疗人工智能全球负责人 Mona Flores 描述了使用带有隐私保护数据的联合学习来识别疾病并预测需要哪些治疗。

但是机器学习模型需要数据,而平衡数据科学家进行实验和创新所需的开放性和灵活性与治理和数据隐私法规,是管理全球医疗保健和生命科学企业软件和基础设施的数据和分析高管面临的一项重大挑战。

医疗保健和生命科学组织处理大量不同的数据,包括电子病历、账单、患者就诊报告、保险索赔、放射图像、PGHD 等等。根据 Ventana Research 的数据,这些数据通常分布在云区域、提供商和内部数据源之间——32%的组织报告使用 20 个以上的数据源,而 58%的组织自我报告使用“大数据”, Pb 大小的数据库变得越来越常见。例如,让桑的组织病理学图像的大小可能在 2gb 到 5gb 之间,而更大的临床试验可能超过 10 万张图像。

虽然托管云数据库前景光明,但入口和出口成本会极大地阻碍数据科学的发展。Ventana Research 指出,提取和分析 1pb 的数据可能需要高达 50,000 美元。数据重力性能考虑因素(即,通过协同定位数据和计算来减少模型延迟)以及数据驻留/主权法规进一步使数据收集和处理复杂化,通常会将数据集锁定在单个地理位置。这与 HIPAA 和 GDPR 等法规相结合,凸显了混合云和多云配置对于确保适当的数据管理和地理围栏的重要性。Ventana 研究强调指出:

“到 2026 年,几乎所有的跨国组织都将投资本地数据处理基础设施和服务,以减轻与数据传输相关的风险。”

虽然数据是分布式的,但数据科学是一项团队运动,需要快速的实验、轻松的数据访问和轻松的可复制性来实现真正的创新。AI/ML/Analytics“卓越中心”(COE)战略正变得越来越普遍,通过协作来混合知识,同时提供基础设施和治理。Ventana Research 指出,80%的组织认识到了治理 AI/ML 的重要性。 约翰逊&约翰逊 有一个内部数据科学委员会,帮助“将公司的数据科学社区整合到业务工作流中,从而更快地应用机器学习模型、反馈和影响。”此外,这些 Coe 通过确保数据科学家能够访问所需的数据、工具和基础架构来促进创新,以便他们能够专注于构建突破性的模型,而不是开发运维。

许多医疗保健和生命科学机器学习用例,如计算机视觉(如让桑的深度学习用例),需要专门构建的人工智能基础设施,包括英伟达等公司的 GPU。考虑到数据传输成本、安全性、法规和性能,与跨云或地理位置传输或复制数据集相比,对数据进行计算/处理通常更有意义。

理论上,云基础设施上的 GPU 解决了这个问题——直到考虑到成本和性能。 Protocol 最近报道了 公司将 ML 数据和模型转移回内部、本地设置的趋势,“花更少的钱,获得更好的性能”数据科学工作负载本质上是可变的,训练模型所需的大规模爆发可能难以预测。将其中一些工作负载转移回内部基础架构可以显著降低成本,同时提高性能。

对于 ML CoEs 而言,在混合/多云和本地环境中,从单一控制台管理 AI/ML 变得更具挑战性,尤其是在分布式数据以及全球公司中存在的本地和云基础架构的混合环境中。从数据管理到分析再到数据科学,数据和分析高管在庞大的数据和分析技术体系中难以做出决策。

随着我们最近的 Nexus 混合云数据科学平台 的发布,Domino 数据实验室处于人工智能工作负载的混合/多云支持的前沿。真正的混合数据科学平台使数据科学家能够在公司运营的每个环境中以安全、受监管的方式访问数据、计算资源和代码。我们与 NVIDIA 的深度 合作以及对 更广泛的数据和分析生态系统 的支持,为数据和分析高管提供了培养 AI/ML 创新的信心,同时提供了企业范围治理所需的灵活性。

Ventana Research 强调了开放和灵活的数据科学平台的重要性,“面对不断发展的混合战略、不断变化的数据科学创新,让您的数据科学实践经得起未来考验,并从专门构建的人工智能基础设施或云中实现价值最大化。”要了解更多信息,请查看他们的白皮书。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

原文:https://www.dominodatalab.com/blog/become-full-stack-data-science-company

在这篇文章中,Hoda 提供了对数据科学能力不断增长的公司如何构建其组织结构的见解,以确保数据科学为他们提供竞争优势。【T2

“深度学习做 X”是新的投资者推介趋势。

大数据的兴起和机器学习技术的进步正在推动下一代科技公司的发展。数据科学和算法使最成功的公司能够建立保持竞争优势所需的护城河。成功的科技公司还会调整他们的组织结构,授权给那些为公司带来最独特和差异化价值的人。如果数据科学是贵公司竞争战略中如此重要的一部分,那么您应该花时间考虑:如何构建您的数据科学能力,如何定义您的数据科学家的角色,以及如何在贵公司的所有级别支持数据科学。

在过去的十年里,我们看到了科技公司的爆炸式增长和软件工程师队伍的崛起。很多公司,尤其是年轻的公司,大部分创始人或者整个产品和工程组织都是工程师。以前,标准包括雇佣几乎没有或完全没有领域专业知识的传统 MBA 作为高技术团队的经理。现在,工程师被鼓励和授权进行横向转换,并担任管理职务。在一家成长中的科技公司,仅仅引入一名专注于业务的专业 CEO 不再是一件事。首席执行官要么有技术背景,要么精明的商业导向的首席执行官在 C-Level 迅速带来领域和技术专长,以支持公司战略。科技公司寻找、信任并追随那些致力于理解公司业务的领导者。

我们现在在数据科学领域看到了类似的趋势。

在初期,数据科学被视为工程的小弟弟:作为工程组织的一个子单元。由于数据科学和工程共享技术基础,这是一个合理的起点。

然而它们并不相同。

虽然数据科学家和工程师都编写软件来完成工作,但他们解决问题的方法、评估他们成功的方式以及他们做好自己角色的需求是不同的。随着数据科学的地位越来越高,公司开始围绕它建立业务,是时候重新思考数据科学在组织结构中的位置了。我认为数据科学应该得到适当的关注和自主权。它不应该放在工程或产品组织的保护伞下。相反,它应该在公司的每个层次都有代表:从最高的 C-Level 到基本的个人贡献者层次。

Stitch Fix 是一家提供个人造型服务的在线零售商。我们使用算法和人类专家判断的组合来设计我们客户的风格。我们相对于传统零售商的竞争优势很大程度上可以归因于我们对在业务的各个层面使用数据科学的强烈关注。我们使用算法让我们的造型师能够更好地为我们的客户服务;确定在我们的仓库中挑选物品的最佳路线;甚至向我们的销售团队建议我们自己的服装设计。

为了实现我们的数据科学组织的全部潜力,我们承诺在组织的每个级别都有数据科学代表。Stitch Fix 不仅拥有硅谷最大的数据科学团队之一,还拥有相对于其规模而言最大的数据科学团队之一:每 7 名总部员工中就有 1 名是数据科学家。我们还有一位首席算法官 (CAO),他在管理层代表数据科学组织。

当数据科学成为贵公司的竞争优势时,让一名首席运营官在管理层代表数据科学比由一名工程主管(如首席技术官)代表更有效。与首席技术官等优先考虑数据科学之外的其他领域的人相比,首席技术官对数据科学(从战略到执行)的理解更加深入细致。例如,工程专门研究最终用户交互、事务处理等。虽然重要,但数据科学家并不特别擅长这些能力。因此,将数据科学和工程分离开来可以让每个团队专注于他们擅长的领域。

我们的首席运营官帮助数据科学组织管理期望,并适当地确定数据科学需求层次的优先级。这些需求包括数据收集、ETL、管道,以及理解在我们进入性感的深度学习或机器学习算法之前很久就需要基础设施。拥有 C-Level 的支持有助于我们奠定适当的基础,并使数据科学组织能够像其他业务部门一样无缝扩展。它还有助于管理跨职能利益相关方的期望,并消除管理开销,以便我们的个人贡献者可以专注于成为全栈数据科学家。

在 Stitch Fix,我们不遵守数据科学家在角落里的模式,在这种模式下,数据科学家与公司的其他人隔离开来。我们不会让我们的数据科学家为组织的其他部分运行 SQL 查询而负担过重。我们没有只专注于开发数学模型的数据科学家,这些模型最终会传递给工程人员投入生产。在我们的数据科学组织中,甚至没有一个项目经理。相反,我们相信“全栈”数据科学家。

我们的全栈数据科学家什么都做:工程、机器学习和项目管理。我们将所有这些领域组合成一个角色,因为在迭代过程中有太多的价值。对于非完整堆栈数据科学家,工作流程大致如下:

  • 数据科学家建立数学模型
  • 然后将模型交给工程部门进行生产
  • 然后,每次需要更新模型系数或添加新功能时,数据科学家都必须等待工程师(属于具有不同优先级的组织的一部分)来实施更改。

这种较慢的迭代过程可能会挫伤数据科学家的积极性,因为他或她关心的事情对不同组织的人来说并不重要(对工程师来说也是如此)。全栈模型支持更快的迭代过程,并使我们的数据科学家能够成为特定功能的领域专家,以及其他业务部门同行的宝贵合作伙伴。

公司文化通常是在创业初期形成的。如果数据科学是贵公司的竞争优势,那么在管理层中有一名首席运营官就是一个信号,表明贵公司将数据科学视为一项独立的能力。它还表明,采用以数据为中心的方法来解决关键的战略业务问题对您的公司有多么重要。虽然 Stitch Fix 在公司各个层面的数据科学上都有大量投资,但如果你刚刚起步,你不需要太多的层级。Stitch Fix 的数据科学组织从一名首席执行官和一名数据科学家开始,然后从那里发展起来。

多年来,Stitch Fix 的数据科学组织已经发展到有更多的层次。在我们有一个曹。数据科学副总裁和数据平台副总裁向 CAO 报告,因为这两个组织携手合作,需要紧密合作。平台团队中的数据工程师构建工具、框架和服务,数据科学家反过来利用这些工具、框架和服务来构建 ETL、构建模型并部署到生产中。我们的主管和经理帮助管理利益相关方的期望,并消除管理开销,以便个人贡献者可以专注于成为全栈数据科学家。随着 Stitch Fix 的发展,我们的数据科学组织也在发展。

外卖食品

如果数据科学真的是你的竞争优势,就这样对待它。如果数据科学值得在您的投资者推介材料中强调,那么至少让数据科学组织在高管层中有自己的发言权。让数据科学参与进来不仅可以将业务价值与整个数据科学团队的工作联系起来,还可以实现数据驱动的战略决策。给予数据科学家端到端的所有权,让他们与工程师处于同一层面。只有这样的主动措施来支持您的数据科学组织,才能让发挥其全部潜力。

原文:https://www.dominodatalab.com/blog/being-model-driven-lessons-from-rev-data-science-summit

By Angela Tran Kingyens, PhD, version one ventures on June 19, 2018 in

感谢 version one ventures 的 Angela Tran Kingyens 博士贡献了这篇客座博文。它最初发布到版本一站点这里。

几周前,我参加了由 Domino 组织的 Rev 数据科学领导者和从业者峰会。我之前在博客上分享了去年活动(这是我参加过的最好的数据科学会议之一)的主要收获,包括如何定义数据科学家以及数据科学和数据工程之间的差异。

今年的核心主题之一是数据科学项目的管理。我以前从未这样想过,但事实上,模型是数据科学家的工作成果。

我最大的收获是认识到,当涉及到构建产品和业务时,重要的不仅是数据驱动,还有模型驱动。

模型驱动是什么意思?

如果数据是油,那么模型就是引擎。数据和代码可以被单位化,而模型则更复杂。模型是用数据和代码作为构建块有效地创建的。因此,不能像对待数据或代码一样对待模型,管理数据科学生命周期肯定有最佳实践。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一般来说,数据科学的整个生命周期可以分为以下几个阶段:

  1. **构思:**评估项目可行性和优先级时
  2. **数据采集和准备:**了解数据的可用性、可访问性和数据采集的成本
  3. **研发:**建立迭代的实验方法(包括假设生成、模型选择、KPI、标准)
  4. **验证:**严格评估数据假设、代码库、模型性能和预测结果
  5. **交付:**将模型的数学结果产品化(即,将模型部署到产品本身或作为报告和仪表板)
  6. **监控:**测量模型上线后对用户实际行为的影响

我们大多数人很可能只是有意策划了其中的几个阶段。虽然像这样建立一个全面的工作流程可能需要大量的工作,但最大的好处是我们可以真正衡量一切。这有望转化为所有利益相关者之间更高的效率和更有效的协作,以及更多的可审计性和可再现性。

Twitter Facebook Gmail Share

原文:https://www.dominodatalab.com/blog/benchmarking-nvidia-cuda-9-amazon-ec2-p3-instances-using-fashion-mnist

在这篇文章中,Domino 数据实验室的首席数据科学家 Josh Poduska 写了关于使用时尚 MNIST 对 NVIDIA CUDA 9 和亚马逊 EC2 P3 实例进行基准测试的文章。如果对 Poduska 的其他见解感兴趣,他还将在 Strata New York 2018 上发表“管理企业中的数据科学”。

也许你已经听说过 NVIDIA 的 CUDA 9 软件和亚马逊 EC2 P3 实例。据说,当被投入到训练深度学习网络的任务中时,它们快如闪电。

CUDA 是 NVIDIA 为 GPU 上的通用计算开发的并行计算平台和编程模型。CUDA 9 是下一个提升各种应用和产品性能的迭代。 NVIDIA 声称 CUDA 9 提供了一些显著的优势,例如:

  • 利用 cuBLAS 中的新 GEMM 内核加速深度学习。
  • 为灵活的线程管理提供了新的编程模型。
  • 改进的编译器和开发工具。
  • 能够使用张量内核更快地执行人工智能应用,5X 比 Pascal GPUs 更快。

亚马逊 P3 EC2 实例使用新的Volta GPU(NVIDIA Tesla V100)。亚马逊声称每个 P3 实例可以提供高达 1 petaflop 的混合精度性能。在内部基准测试中,与 CPU 相比,大型工作的深度学习培训从几天缩短到几分钟。

我决定让这两项技术在深度学习图像分类问题上进行测试,看看与上一代选项相比,我可以实现多大的性能提升。

在寻找一个好的神经网络的过程中,数据科学家必须优化一个大的参数空间,包括网络类型、节点数量、层数、辍学率、数据扩充和学习率。在这个领域训练网络需要很多时间。此外,随着深度学习领域的发展,趋势是向更复杂的更深网络发展(例如,正在进行的关于基因变异大型网络的研究)。底线是计算性能是影响数据科学家构建精确神经网络能力的主要因素。

我选择在时尚 MNIST 数据集上运行我的测试,这是手写数字 MNIST 数据集的流行替代品,它提供了更大的准确性挑战。每个图像都是一件衣服,目标是正确地对图像进行分类。这是我的 Jupyter 笔记本中一些图片的快照。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

大多数 MNIST 时尚的第一次尝试的网络可以达到大约 90%的准确率,并且只需要几分钟的训练时间。我想找到一个网络,将推动信封一点——一个需要更长的时间来训练,并提供更大的准确性比一个简单的 CNN。我看到了丹尼尔·科斯拉维(Danial Khosraivy)的一篇文章,他在文章中从 T2 的 VGG 有线电视新闻网(CNN)获得了灵感,并创建了一个类似 VGG 的有线电视新闻网(CNN),在时尚 MNIST 的数据集上进行批量标准化和数据扩充。Mathew Cord 的这个演示有一些有用的结构图来形象化 VGG 网络的样子。

我对丹尼尔的代码做了如下修改。

  1. 添加了代码来传递一个用户参数,以方便运行实验。
  2. 添加了一个计时器来记录构建模型所需的时间。
  3. 添加了一个混淆矩阵,以查看哪里可以提高精确度。
  4. 导出包含精确度和时间的 JSON 文件,以便可以轻松比较运行。
  5. 为 CUDA 8 / P2 测试对 TF 1.4.1 进行了小的代码修改。¹

为了在 P3 实例上比较 CUDA 9,我在 P2 测试了 CUDA 8,在 P2 测试了 CUDA 9。该代码将原始训练数据分成 80/20 训练/验证,以检查过度拟合。该模型以 0.001 的学习率训练 10 个时期,然后以 0.0001 训练另外 10 个时期。在最初的 20 个时期之后,添加数据扩充,通过旋转、移动和缩放原始训练样本来生成新的训练样本。然后,根据这些新数据对其进行新一轮的训练。这种关于扩充数据的训练是基准测试中最长的部分。我想测试数据扩充对准确性和性能的影响,所以我将数据扩充下训练的历元数作为用户提供的参数。对于每个 CUDA/实例组合,我的测试计划涵盖了无增强、25 个增强时期和 50 个增强时期。

这是我的测试计划的布局。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

您可以在 Domino Data Lab 试用网站上免费查看、运行和下载整个项目,包括代码(Domino 包含 AWS 成本)。除了查看项目文件,您还需要登录或注册。登录后,查看自述文件了解更多详细信息。

下面是构建类似 VGG 的 CNN 的代码快照。

vgg_cnn = Sequential([

    Lambda(norm_input, input_shape=(28,28, 1)),

    Conv2D(32, kernel_size=(3, 3), activation='relu', padding='same', input_shape=input_shape),

    Conv2D(32, kernel_size=(3, 3), activation='relu', padding='same'),

    BatchNormalization(),Dropout(0.25),

    Conv2D(64, kernel_size=(3, 3), activation='relu', padding='same'),

    Conv2D(64, kernel_size=(3, 3), activation='relu', padding='same'),

    MaxPooling2D(pool_size=(2, 2)),Dropout(0.25),

    Conv2D(128, kernel_size=(3, 3), activation='relu', padding='same'),

    Conv2D(128, kernel_size=(3, 3), activation='relu', padding='same'),

    BatchNormalization(),Dropout(0.25),

    Conv2D(256, kernel_size=(3, 3), activation='relu', padding='same'),

    Conv2D(256, kernel_size=(3, 3), activation='relu', padding='same'),

    Conv2D(256, kernel_size=(3, 3), activation='relu', padding='same'),

    MaxPooling2D(pool_size=(2, 2)),

    Flatten(),

    Dense(512, activation='relu'),

    BatchNormalization(),

    Dropout(0.5),

    Dense(512, activation='relu'),

    BatchNormalization(),

    Dropout(0.5),Dense(10, activation='softmax')

])

在 Domino 中构建计算环境

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 Domino 中输入 Dockerfile 指令

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 Domino 中设置硬件层

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 Domino 中启动运行并传递参数

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 Domino

上并行运行(P3 C9 和 P2 C8 各有 50 个纪元同时运行)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

运行时间和准确性记录在 Domino 中,以便于比较

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Domino 中自动捕获的配置细节

这是使用 Domino 进行基准测试的最有用的方面之一。当我运行基准测试并解决了一些问题(特别是让代码在 CUDA8 和 P2 上运行 TF 1.4.1)时,能够返回到之前的运行并查看运行所使用的确切环境和硬件层细节是非常有帮助的。这对再现性和导航我的项目是非常宝贵的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在每个设置下进行两次运行,总共 18 次运行。这两次运行的平均最终结果如下所示。在每个测试中,两次运行的模型训练时间几乎相同(这是该基准的主要目的)。准确性数字随着时代的增加而上升,但略有波动。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

https://fast.wistia.net/embed/iframe/2hy38hbw4o

原文:https://www.dominodatalab.com/blog/benchmarking-predictive-models

据说调试比编程更难。如果我们,作为数据科学家,在我们理解的极限下开发模型(“编程”),那么我们可能不够聪明来有效地验证这些模型(“调试”)。

有大量令人眼花缭乱的预测建模技术和软件库可供我们构建模型。结果,在试图解决一个问题的过程中,我们很可能以多个模型告终。理解这些模型的性能是很重要的,并且提供一些关于它们中的哪一个将实现建模练习的业务目标的信心。这就是标杆管理的用武之地。

基准总是不完整和不全面的,但是如果我们小心的话,它们会在方向上是正确的:足够正确以至于我们可以做出正确的选择,并且通过这样做,使我们的组织更聪明、更高效,并且更受洞察力的驱动。

专门对机器学习模型进行基准测试是一项具有挑战性的工作。即使是使用、软件库、超参数调整或计算环境的简单变化也会导致行为的剧烈变化。在本文中,我们将概述比较机器学习模型、执行基准测试以及确保实验可重复性的最佳实践。

虽然对机器学习模型的预测性能进行基准测试很重要,但也有一些重要的操作约束需要考虑。这些包括模型的训练和运行时性能特征。也就是说,训练一个模型需要多长时间,对新数据进行评分需要多长时间,以及完成这两项所需的计算资源。

基准操作特性通常可能与评估模型的预测特性一样重要。例如,考虑在广告购买网络上的实时竞价的问题。bid 的总延迟预算(包括网络访问、数据库查询和预测)为 100 毫秒。在深度学习模型中计算预测花费的 80 毫秒可能意味着该模型不符合业务要求。尽管深度学习模型的预测能力有所提高,但在 5 毫秒内返回结果的逻辑回归模型可能更合适。只关注模型预测性能的基准会忽略将模型投入生产的这一重要方面。

基准要求实验具有可比性、可测量性和可重复性。有了如此多的数据、预测建模技术、软件和超参数的潜在组合,数据科学家如何接近实验环境是很重要的。

容器为执行建模或评分过程的多次运行提供了一个框架,所有这些都使用完全相同的实验设置。这使得数据科学家可以使用聚合和平均来开发关于所需属性的更可靠的统计数据。实验的各个方面也可以以可控的方式逐渐改变。借助合适的计算硬件,可以同时运行多个实验,从而显著减少迭代时间。除了评估预测能力之外,许多容器技术还提供了记录训练模型和运行预测的操作特征的工具。这些包括使用的内存、存储 IO 性能和 CPU 利用率。

通常,机器学习模型在给定环境变化的情况下会表现不同。例如,当可用 CPU 内核、GPU或可用系统内存的数量发生变化时,依赖矩阵计算的模型将表现不同。如果底层 BLAS 库,如 OpenBLAS、Atlas 或英特尔 MKL 互换,也是如此。

容器允许数据科学家测试多个基准配置,所有这些配置都在计算环境中采用了不同的假设,并且以可重复的方式进行测试。

如果配置错误或使用不当,机器学习库使用的许多底层技术可能会扭曲实验结果。经常被误解的是并行性可能在机器学习软件栈中的何处以及如何表现。如果适当配置,许多 BLAS 和其他数学库可以利用多核 CPU。如果不小心确保所有 BLAS 库候选都配置了多线程,基准测试结果将会产生误导。

类似地,例如,如果底层 BLAS 库本身配置为多线程,则在模型级别试验并行化重采样的策略可能会导致 CPU 内核的操作线程超额预订。结果可能是运行时性能严重下降。

在设计实验时,应该考虑运行基准测试的底层硬件。与直接在专用硬件上运行实验相反,基准测试可以在共享的虚拟化资源上进行,如 Amazon Web Services 或企业数据中心的私有云。

虽然访问大量强大的 CPU 和近乎无限的存储可能很方便,但共享计算、网络和磁盘 IO 资源的性质要求我们在构建实验时进行一些思考。

基准流程可能需要运行多次,并使用一个聚合平滑度量(如中值)进行比较。

值得重复的是,根据科学方法,基准应该是可重复的。许多机器学习模型利用来自随机数生成器的熵来启动解空间的搜索。

自动化分割训练、维持、测试数据集的库也是如此。出于基准测试的目的,这些随机数需要在所有运行中保持一致。大多数随机数生成器都支持设置一个种子,这就满足了这个目的。在 R 中,这是通过set.seed完成的,而在 Python 中,使用来自random包的random.seed

确保用于测试机器学习算法的数据集代表模型在生产中会遇到的数据,并在整个数据管道中保持这一点很重要。数据收集或转换过程中引入的任何偏差都可能导致选择在生产中表现不佳的模型。

通常,这种错误会被无意中引入到流水线中。例如,如果数据最初驻留在关系数据库中,那么应该注意不要从预先过滤的源中采样。例如,提取样本的分析数据库中的数据摄取过程可能已经删除了异常值或记录,以减少编码错误或满足业务规则。

基准必须包含训练集和测试集中未筛选的数据,这一点很重要。在所有数据都经过非代表性的清理过程之后,对模型的行为进行基准测试可能会导致较差的实际性能。

数据集泄漏是基准测试可能提供误导性结果的最隐蔽的方式之一。如果更复杂的模型,如梯度增强机器、随机森林或深度神经网络在有泄漏的数据集上训练,它们可能比更简单的模型在维持集上表现得更好。尽管没有对生产数据提供任何更大的预测能力。

实际上,更复杂的模型可能具有更大的能力来过度拟合在实际使用期间不会出现的泄漏趋势。基准数据集中如何引入这种泄漏的一个例子是使用不正确的测试/训练分割。给定一个时间序列数据集,使用简单的测试/训练分割,而不考虑时间序列本身,可能会引入泄漏。

在试图确定潜在的制造商质量缺陷时,应注意排除制造商接到质量问题通知之日后的数据。该数据的预测者可能已经对质量缺陷的一些潜在方面进行了编码,例如批号或零件类型,这可能以不对称的方式不适当地影响模型。对于这种泄漏,复杂模型可能比简单模型更健壮或更不健壮,并导致基准测试不能反映生产中的实际行为。

基准测试中经常犯的一个错误是测试和优化不能解决业务问题的指标。例如,在欺诈检测和医疗诊断中,假阴性可能比假阳性昂贵(或致命)许多倍。使用 AUC 进行基准测试可能会导致一些非常误导的结果。AUC 总结了一个模型在所有阈值上的预测能力,而在生产中,该模型将只使用一个阈值进行预测。在 AUC:预测分布模型性能的误导性度量 中,作者提供了 AUC 为何是评估模型预测能力的潜在不良指标的五个原因。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
对于许多机器学习问题来说,AUC 是一个弱的,而且经常误导的,真实世界预测性能的指标。

因此,重要的是不要仅仅依赖 AUC 等指标,而是选择一个更准确地反映模型在生产中的行为的真实影响的指标。在 关于比较分类器:要避免的陷阱和推荐的方法 (PDF) 中,萨尔茨伯格建议数据科学家应该使用二项式测试来对两个不同的模型进行评级。测试的细节超出了本文档的范围,但是对于任何计划比较不同分类器和模型的人来说,这篇文章都是值得一读的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 Quora 回答中,Peter Skomoroch 指出,比较简化基线模型的模型改进通常是有价值的,例如分类数据的 kNN 或朴素贝叶斯,或者时间序列数据中某个值的 EWMA。这些基线提供了对数据集可能的预测能力的理解。

这些模型通常需要少得多的时间和计算能力来训练和预测,这使它们成为一个有用的交叉检查答案的可行性。kNN 和朴素贝叶斯模型都不可能捕捉复杂的交互。然而,它们将提供对基准模型预测能力的最小界限的合理估计。

此外,本练习还提供了测试基准管道的机会。重要的是,基准管线为具有已知性能特征的模型提供稳定的结果。原始数据集上的 kNN 或朴素贝叶斯,或通过列居中或缩放进行的最低程度的操作,通常会提供弱但足够的学习器,其特征对于比较的目的是有用的。更复杂模型的特征可能不太为人所知,并被证明是具有挑战性的。

随着大量的建模技术和软件库可供数据科学家使用,人们倾向于开发一小组“常用”算法和工具,而不整体评估更大范围模型的优点。这就产生了采用次优解决方案的风险,这种解决方案可能无法实施,可能导致收入损失,甚至危及生命。pre

在本文中,我们探索了许多有效的基准测试模型的最佳实践:实验环境、数据管理、选择适当的度量标准,以及超越预测特性来研究模型如何在生产中使用。

我们希望这有助于构建一种谨慎、有条不紊且高效的基准模型方法,以实现数据科学的使命:帮助人们和组织通过数据做出更好的决策。

原文:https://www.dominodatalab.com/blog/best-practices-managing-data-science-scale

我们最近发布了一份数据科学管理实用指南,旨在帮助当前和有抱负的管理者从行业领导者的挑战和成功中学习。这篇博客文章提供了指南的摘要。

我们 Domino 很幸运有机会与大大小小的领先数据科学团队合作,从奥杜邦到苏黎世都有这样的组织。从这个角度来看,我们可以看到 30,000 英尺的行业趋势,这些趋势占据了头条新闻,同时也见证了发生在战壕中的不那么迷人(但重要)的工作。我称之为当今数据科学的“勇气和荣耀”。

这是一个激动人心的时刻,我们希望分享一些行业经验,这些经验是我们根据过去几年与数据科学团队的经验提炼出来的实用指南。最重要的是,我们不断听到一种渴望,想知道其他人在空间中做什么,什么在工作,哪里不应该涉足。

本指南代表了我们对许多行业挑战的来源的看法,以及由领导者磨练出来的最佳实践。希望这能揭开最新技术的神秘面纱,并激励您在组织中进一步推进数据科学。

以下是指南的执行摘要。

管理、扩展和加速整个数据科学学科的能力越来越多地将成功的组织与那些沦为宣传和幻灭的受害者区分开来。虽然数据科学家可能拥有 21 世纪最性感的工作,但数据科学经理可能拥有 21 世纪最重要但最不为人所知的工作。本文旨在揭示和提升数据科学管理的现状。我们确定了利益相关者的一致性,模型交付的速度,以及影响的度量。这些挑战的根本原因可以追溯到一系列特定的文化问题、流程和组织结构中的差距以及不充分的技术。

基于与数据科学领域的领导者(如好事达、孟山都和穆迪)4 年多的合作,我们观察到最佳解决方案是从构思到交付和监控的整个项目生命周期的整体方法。能够开发迭代交付业务价值和自我测量的严格实践,同时利用数据科学平台技术支持中心辐射型组织结构的组织,可以将数据科学扩展为核心能力,并加速交付强大的模型组合。虽然一个完整的转变可能需要数年时间,但我们建议采用“爬、走、跑”的方法来为最终愿景建立动力。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

原文:https://www.dominodatalab.com/blog/better-knowledge-management-data-science-teams

我们很高兴地宣布了一系列重大的新功能,使您能够更轻松地在您的团队和组织中查找和重用过去的数据科学工作。我们将这些特性称为“可发现性”,它们包含了搜索、标记和获得相关分析工作建议的强大方法。

在本帖中,我们描述了这些特性在高层次上是如何工作的,并深入探究了它们背后的动机以及我们认为它们解决的常见挑战。这些特性在 Domino 中都有;如果你有兴趣看他们的行动,注册一个现场演示。

任何在团队中工作过,看到同事来来去去,或者看到项目成倍增加的人都知道,当没有标准的地方放东西,没有“记录系统”时,找到过去的工作是多么令人沮丧你应该在 Dropbox 里找吗?谷歌文档?Github?也许只需搜索我的电子邮件或公司的维基页面?

这浪费时间。在某些情况下,很多。根据《知识世界》的一篇文章:

一些研究表明,知识工作者花在创建新报告或其他产品上的 90%的时间都花在了重新创建已经存在的信息上。1999 年,IDC 的一项欧洲研究考察了这一现象,称之为“知识工作赤字”,并得出结论,智力返工、不合标准的绩效和无法找到知识资源的成本为每个工人每年 5000 美元。

根据麦肯锡的一份报告“员工每天花 1.8 小时——平均每周 9.3 小时——搜索和收集信息。”

浪费时间对生产力的影响是一回事,但当你的工作对你的业务和竞争优势至关重要时,无法找到和重用过去的工作会导致更大的问题:它会降低你的研究改进速度。

为了说明原因,我们将使用 finance 中的一个概念:复利。复利导致投资呈指数增长,因为每增加一美元都会反馈到正在增长的基础金额中。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
(来源:http://financesolutions.org/about-compound-interest/)

同样的概念也适用于您的分析工作:如果每个项目和工作产品都成为您公司集体知识的一部分,以便未来的同事可以轻松地构建、改进它或在它的基础上进行构建,那么您正在以指数速度混合您的知识并改进您的模型。

所以问题就变成了:你如何保证你的分析工作会被作为后续改进的起点,这样人们就不会再从头开始了?

为了让人们能够在过去的工作基础上更进一步,我们首先需要让他们找到过去的工作。有两种经典的方法:让人们组织或管理工作;让人们去寻找工作。(把这个想成“雅虎 vs 谷歌”的问题。)我们决定两者都允许:Domino 允许您用一组可定制的标记来标记您的项目,还允许您搜索所有项目的内容。

搜索

搜索是不言自明的,令人惊讶的强大。Domino 现在将索引您项目中的所有文件,以及元数据,如您的实验标题,以及关于您的结果的所有注释。

例如,假设我想尝试使用 matplotlib Python 包,我想找到可以复制或借鉴的示例来帮助我学习:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

或者,如果我们希望找到过去的犯罪数据分析,这些数据与工作日和周末的犯罪事件之间的差异有关,我们可以搜索实验以及对结果的讨论:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

当然,搜索尊重权限:你只能看到你被授权访问的项目的结果。安全性(只能看到允许您看到的内容)与可发现性(能够找到并重用相关工作)之间存在天然的矛盾。为了让组织在实施访问控制的同时最大限度地提高可发现性,我们提供了一种将项目设置为“可搜索”的方法,这样没有访问权限的人仍然可以通过搜索找到它们(从而知道它们的存在),但需要请求访问权限才能查看项目内容。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

磨尖

让用户标记东西听起来总是一个好主意——直到你手头有一大堆乱七八糟的东西。标签会很快成为不受管理的、冗余的、低质量的信息的沼泽。

为了解决这个问题,Domino 的标签解决方案支持“图书管理员”或“馆长”角色:一种特殊类型的管理员,可以管理标签并将某些标签指定为“受祝福的”,从而赋予它们特殊的地位。它是这样工作的:

正如你所料,研究人员可以标记他们的项目:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图书管理员可以管理整个标签列表,合并重复标签,将关键标签标记为“已批准”等。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

“批准的”标签以不同的方式出现在用户界面中,以向用户发出他们更受信任的信号。例如,如果您正在标记一个项目,您的自动完成的建议将以绿色显示批准的标记:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

当您搜索给定的标签时,已批准的标签将再次显示为绿色,因此您可以对该分类更有信心:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们认为这种“监管”能力提供了两个世界的最佳之处:它允许自下而上的概念和层次结构的创建,以及自上而下的管理,以确保混乱不会失控。

背景和建议

如果你认为你应该寻找一些东西,搜索和浏览(通过标签或其他方式)是很棒的。然而,通常情况下,你甚至不会想到可能会有相关的工作需要你去做。

为了解决这个问题,我们的 discovery 特性集的最后一部分是一个更高级的项目门户,它不仅会显示您自己的项目,还会显示可能与您正在进行的工作相关的项目。因为我们知道你与谁合作过,以及你的项目涉及哪些主题,所以我们可以就可能与你相关的其他工作提出一些基本建议。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们听说越来越多的组织希望加快模型改进的步伐,以保持领先于竞争对手并更快地推动业务改进。随着这些组织的成长,我们相信“复合研究”将成为这些努力的关键。为此,我们计划继续投资于 Domino 中的“可发现性”和知识管理特性

目前,这些特性在 Domino 企业版中可用,您可以在自己的 AWS 虚拟私有云或自己的服务器上使用。如果你有兴趣试用它们,请告诉我们。

原文:https://www.dominodatalab.com/blog/bias-breaking-chain-holds-us-back

演讲人简历:Vivienne Ming博士被 Inc .杂志提名为十大科技关注女性之一,她是一位理论神经科学家、企业家和作家。她共同创立了她的第五家公司 Socos Labs,这是一家探索人类潜力未来的独立智库。Ming 博士创建了 Socos 实验室,将她与其他创造性专家的不同工作结合起来,扩大他们对全球政策问题的影响,无论是在公司内部还是在我们的社区。此前,Vivienne 是加州大学伯克利分校雷德伍德理论神经科学中心的访问学者,从事认知神经假体的研究。在空闲时间,Vivienne 发明了人工智能系统来帮助治疗她患有糖尿病的儿子,提前几周预测躁郁症患者的躁狂发作,并让孤儿难民与大家庭成员团聚。她是许多公司和非营利组织的董事会成员,包括 StartOut、Palm Center、Cornerstone Capital、Platypus Institute、Shiftgig、野象小姐资本和 SmartStones。明博士还经常谈到她对商业中的包容性和性别的人工智能驱动的研究。对于放松,她是一个妻子和两个孩子的母亲。

精选博文摘要:Vivienne Ming 博士在最近一次 Domino MeetUp 上的演讲深入探讨了偏见及其影响,包括算法、模型、企业和人类的潜在责任。明博士的证据包括为多个创业公司筹集的第一手知识,她在 Gild 担任首席科学家期间完成的数据分析,以及引用数据、经济、招聘和教育领域的研究。这篇博客文章提供了演讲的文本和视频片段。完整视频可供观看。如果您有兴趣查看 Domino 过去活动的其他内容,请查看数据科学弹出播放列表。如果你有兴趣亲自参加一个活动,那么考虑一下即将到来的 Rev 。

研究、实验和发现是所有类型科学的核心,包括数据科学。Ming 博士以“做大量丰富数据工作的力量之一,是这整个范围-我的意思是,在这个世界上没有什么不是入门”开始了演讲。虽然 Ming 博士在整个演讲中提供了详细的见解和证据,指出了丰富数据工作的潜力,但这篇博客文章重点关注性别、姓名和种族人口统计数据中的偏见的影响和责任。它还涵盖了偏见不仅仅是一个数据或算法问题,它是一个人的问题。解决偏见的第一步是承认它的存在。

我们每个人都有偏见,并根据这些偏见做出评估。明博士用约翰内斯·斯托特的变色龙指出“偏见的根源是根本的,不可避免的”。许多人看到这个图像时,就像看到了变色龙。然而,变色龙形象由两个全身涂满颜料的人组成,被巧妙地放置成变色龙的样子。在下面的视频剪辑中,明博士指出

“我无法制造一个不带偏见的人工智能。世界上没有不偏不倚的老鼠。从一个非常基本的意义上来说,这些系统正在根据它们的不确定性做出决策,唯一合理的方法就是根据给定的数据尽力而为。问题是,当你拒绝承认我们的偏见有问题,并实际采取行动时。我们有大量的证据表明存在一个严重的问题,而且这个问题持续存在,不仅仅是小问题。但正如我稍后将要谈到的,它阻碍了我们从一个转变的世界中走出来,一个我认为任何人都可以自私地庆祝的世界。”

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

虽然历史上充满了偏见不被认为是一个问题的时刻,但也有人们解决社会强化的性别偏见的时刻。女性使用男性笔名写史诗小说、打仗、赢得柔道冠军、跑马拉松,甚至如明博士所指出的,在上世纪 60 年代创建了一家名为自由程序员的全女性软件公司。在会见中,明博士指出,女爵士夏羽“史蒂夫”雪莉的 TedTalk,“为什么雄心勃勃的女人有平头?帮助她分析了两种截然不同的初创企业融资经历,这两种经历都是基于性别偏见。

在 Ming 博士与他人共同创建她目前的教育技术公司并获得学历证书之前,她从大学辍学,创办了一家电影公司。当…的时候

“我们创办了这家公司,有趣的是,尽管我们一无所有,也没有任何人应该投资的东西——我们没有一个剧本。我们没有天赋。从字面上看,我们甚至没有天赋。我们没有经验。我们一无所有。我们实际上是在打了几个电话之后,筹集了你在科技行业可能称之为种子资金的资金。”

然而,第二次筹集资金更加困难,因为她现在的公司,尽管有更多的学术,技术和商业证书。在一次与一个有 5 个合伙人的小公司的资金会议上,Ming 博士转述了最后一个合伙人是如何说的“‘你应该为你所建立的感到骄傲’”。当时,我想,哦,天哪,至少这些人中有一个是站在我们这边的。事实上,当我们离开房间时,他真的拍了拍我的头,这似乎有点奇怪。”这促使明博士考虑如何

“我的凭证第二次被转换了。没有人质疑我们的技术。他们很喜欢。他们质疑我们是否知道如何经营企业。人们喜欢的产品本身,而不是电影。第二次,一切都会变得简单得多。除了我能看到的唯一真正的区别是,第一次我是男人,第二次我是女人。”

这使明博士得出结论,并理解斯蒂芬妮·雪莉所说的雄心勃勃的女人有着平头是什么意思。明博士转述说

“从那以后,作为一名企业家,我明白了,一旦感觉他们在和他们最喜欢的侄女打交道,而不是和作为商人的我打交道,我就知道,我知道他们根本没有把我当回事。世界上所有的博士都不重要,我过去在其他公司的所有成功都不重要。你就是我的一切。我学到的是,要提前想好。不要浪费时间和精力,准备向那些根本无法理解你的人推销,当然,在很多情况下,这就是你所能得到的一切。"

明博士还指出,性别偏见在她变性前后所工作的组织中也有所体现。她指出,当她变性后开始工作时,

那是最后一天有人问我数学问题,这有点好笑。我碰巧也有心理学博士学位。但不知怎么一天到下一天,我都没忘记怎么做收敛证明。我没有忘记发明算法意味着什么。然而,人们就是这样处理的,那些以前就知道的人。你看,看到一个人换了一种皮肤,这种变化是多么强大。”

这种经历类似于 Dame Shirley 的经历,她为了在 20 世纪 60 年代创办一家价值数十亿美元的软件公司,“开始挑战当时的惯例,甚至在我的业务发展信件中把我的名字从“Stephanie”改为“Steve”,以便在任何人意识到他是一个“她”之前通过这扇门”。雪莉夫人颠覆了偏见,因为作为女性,她不能在股票交易所工作,不能驾驶公共汽车,或者“事实上,没有我丈夫的允许,我不能开银行账户”。然而,尽管有偏见,雪莉女士说

“谁会想到超音速协和号黑匣子飞行记录器的编程会是一群在自己家里工作的女人做的”……后来,当它成为一家价值超过 30 亿美元的公司,我让 70 名员工成为百万富翁时,他们会说,“干得好,史蒂夫!”

虽然现在不再是 20 世纪 60 年代,但偏见的影响和责任仍然存在。然而,我们在数据科学领域能够访问数据,就偏见进行公开对话,这是避免数据科学项目和分析中的不准确性、培训数据责任和模型责任的第一步。如果在 2018 年,人们基于这样的假设来建立和训练模型,即拥有 XY 染色体的人类缺乏编码能力,因为他们只审查和使用了 20 世纪 60 年代雪莉女士公司的数据,会怎么样?请想一想,这就是发生在雪莉女士、明博士和许多其他人身上的事情。偏见的影响和责任有现实世界的后果。意识到这种偏见,然后解决它,推动行业向前发展,打破阻碍研究、数据科学和我们的链条。

当明博士是 Gild 的首席科学家时,一名记者打电话给她,询问关于何塞·萨莫拉的报道。这也导致了明博士对她即将出版的书的研究。“与众不同的代价”,明博士在会上讲述了一些趣闻轶事(见视频剪辑),并且也为英国《金融时报》撰写了关于这项研究的文章:

为了计算与众不同的税收,我利用了 Gild 收集的 1.22 亿份职业资料数据集,Gild 是一家专门从事招聘和人力资源技术的公司,我在该公司担任首席科学家。从这些数据中,我能够通过检查真实的个人来比较特定人群的职业轨迹。例如,我们的数据集有 151,604 人叫“乔”,103,011 人叫“何塞”。在只选择软件开发人员后,我们仍然分别有 7105 人和 4896 人,他们都是以写代码为生的人。通过分析他们的职业轨迹,我发现,与没有任何学位的乔相比,何塞通常需要硕士或更高的学位,才能在相同的工作质量下获得同等的晋升机会。与众不同的税收很大程度上是隐性的。人们不需要恶意行为就能被征收。这意味着 José需要额外的六年教育以及教育所需的所有学费和机会成本。这是与众不同的税,对何塞来说,这种税一生要花 50 万到 100 万美元。(《金融时报》 )

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

虽然这个特殊的例子侧重于种族导向的人口统计偏见,但在 meetup 的讨论中,Ming 博士引用了相当多的关于姓名偏见的研究。如果 Domino Data Science 博客的读者手头没有她引用的一些研究,那么已经发布的关于名字偏见的研究样本包括:暗示男性性别的名字、、欧洲“听起来高贵”的姓氏、被认为是“容易发音的名字,这也暗示了组织如何选择他们的名字。然而,明博士并没有将讨论局限于性别和命名方面的偏见,她还深入探讨了人口统计偏见如何影响图像分类,尤其是种族方面的偏见。

在 Ming 博士担任 Gild 首席数据科学家之前,她能够看到 Paul Viola 的人脸识别算法演示。在那个演示中,她注意到算法没有检测到乌胡拉。Viola 表示这是一个问题,将会得到解决。几年后,当明博士担任 Gild 的首席科学家时,她转述了她是如何接到“【华尔街日报】打来的电话”的,于是谷歌的人脸识别系统就把一对黑人夫妇标记为大猩猩。艾是种族主义者吗?我说,‘嗯,和我们其他人一样。就看你怎么养了。"

作为背景背景,2015 年,谷歌发布了一款新的照片应用,一名软件开发人员发现,应用将两个有色人种标记为“大猩猩”和 Yonatan Zunger 当时是谷歌社交网站的首席架构师。自从 Yonatan Zunger 离开谷歌后,他就提供了关于偏见的坦诚评论。然后,在 2018 年 1 月,《连线》对 2015 年的活动进行了后续报道。在文章中,《连线》测试了谷歌照片,发现大猩猩、黑猩猩、黑猩猩和猴子的标签“在 2015 年事件后被从搜索和图像标签中删除”。这一点得到了谷歌的证实。《连线》杂志还进行了一项测试,通过搜索“非洲裔美国人”、“黑人男性”、“黑人女性”或“黑人”,评估人们的观点,结果是“一幅放牧羚羊的图像”(在搜索“非洲裔美国人”时),以及“人们的黑白图像,正确地按性别分类,但没有按种族过滤”。这指出了解决机器学习和模型中的偏见所涉及的持续挑战。偏见也有超出社会公正的含义。

正如 Ming 博士在下面的 meetup 视频剪辑中指出的那样,iPhone X 中还内置了面部识别功能。面部识别功能在识别全球有色人种的面部方面具有潜在的挑战。然而,尽管如此,明博士指出“但你必须认识到,这些都不是算法问题。这些都是人类的问题。”人类做出决策来构建算法、构建模型、训练模型,并推出包含具有广泛影响的偏见的产品。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

通过偏见将责任引入算法或模型不仅仅是一个数据或算法问题,而是一个人的问题。理解它是一个问题是解决它的第一步。在最近的多米诺会议上,明博士讲述了

“AI 是一个了不起的工具,但它只是一个工具。它永远不会为你解决你的问题。你必须解决它们。尤其是在我的工作中,只有混乱的人类问题,只有混乱的人类解决方案。机器学习的神奇之处在于,一旦我们发现了其中的一些问题,我们实际上可以用它来帮助尽可能多的人,使这种方法具有成本效益,将解决方案推广到每个人。但如果你认为某个深度神经网络会以某种方式神奇地找出你想要雇用的人,而你一开始没有雇用合适的人,那么你认为那个数据集中发生了什么?”

Domino 不断地策划和放大想法、观点和研究,以促进加速数据科学工作的讨论。Ming 博士在最近的 Domino MeetUp 上的演讲的完整视频可以在获得。另外,Ming 博士还在 Berkeley Institute of Data Science 发表了一篇关于“使用机器学习驱动的应用程序最大限度地发挥人类潜力”的技术演讲。如果您对这些讲座的类似内容感兴趣,请随时访问多米诺数据科学弹出播放列表或参加即将到来的 Rev 。

赞(0)
未经允许不得转载:上海聚慕医疗器械有限公司 » 医疗者设计什么Domino 博客中文翻译(二)

登录

找回密码

注册