人工智能(AI)

H2O.ai简介

2018-12-03  本文已影响0人  Liam_ml
image.png

介绍

人工智能......在这一点上,你知道这是未来的潮流,如果你把它添加到你的职业技能列表中并且最终会杀死我们所有人,那么你会变得非常富有。由于前两点激发普通人的兴趣,下一步通常是他们试图弄清楚如何更多地了解这个领域。他们通常会找到一个在线课程或一些介绍,其后的逻辑进展是获得一些经验。那就是当他们遇到我喜欢称之为“ 工具问题 ”的时候。

image.png

有太多的工具可供选择,很难分辨哪种工具适合这项工作。我不打算比较和对比工具,因为图1中的工具只占不到十分之一的可用工具,但我要做的是介绍一家公司,其任务是为所有人简化和民主化人工智能。他们最终是否能够实现这一目标仍然悬而未决,但至少他们为我们的机器学习努力提供了一个良好的起点。

谁是H2O.ai?

H2O.ai是H2O等开源机器学习(ML)产品背后的公司,旨在让所有人都能轻松完成ML。他们的开源社区包括超过129,000名数据科学家和12,000个组织。在过去两年中,他们还有近一半的财富500强使用他们的软件,用户增长了330%。分析师也注意到他们被列为具有最完整视野的领导者,其中包括Gartner 2018年数据科学和机器学习平台魔力象限中的16家供应商。他们的业务合作伙伴包括微软,IBM,NVIDIA,Splunk,Databricks,MapR,Anaconda,Cloudera等主要厂商。那么他们是如何获得如此大的追随者的呢?通过实现承诺,使机器学习可访问,并允许业务用户从数据中提取洞察力,而无需部署或调整机器学习模型的专业知识。

image.png

如果你曾经在一家大公司工作并且不得不处理缓慢移动的数字化转型,那么你可能对一家公司的目标只是使用一个复杂的软件感到兴奋,但也对它们持怀疑态度,因为几乎每家科技公司都做出了这样的承诺。没有交付。让我们更深入地分析H2O.ai,看看他们如何实现这一承诺以及他们的产品在生产中运行的用例。

产品供应

H2O.ai表示,通过允许业务用户从数据中提取洞察力而无需专业知识来部署或调整机器学习模型,它使ML可访问。他们是怎么做到的?通过他们的机器学习产品套件,我们将讨论。

image.png

现在我们对H2O.ai提供的产品进行了高级概述,让我们探讨他们的技术能力。

技术特点和功能

H2o的产品提供开源,内存,分布式,快速,可扩展的机器学习和预测分析平台。“快速”来自分布在集群中的数据,并以压缩的列式格式存储在内存中,允许您并行读取数据。H2O的核心代码是用Java编写的,与许多其他现代应用程序一样,H2O提供了一个REST API,用于通过HTTP上的JSON从外部程序或脚本访问所有软件的功能。Rest API由H2O的Web界面(Flow UI),R绑定(H2O-R)和Python绑定(H2O-Python)使用。

image.png

可用的机器学习算法

在可用的机器学习算法方面,H2O有一套很好的可用算法供用户使用。

大数据和Anaconda集成

对于大数据,H2O与包括Spark在内的Hadoop工具生态系统很好地集成。支持的Hadoop发行版是Cloudera CDH,Hortonworks HDP,MapR 4.x +和IBM Open Platform。虽然H2O与Hadoop和Spark集成,但除非您想在Hadoop或Spark集群上部署H2O,否则它们不需要运行H2O。

H2O还与数据科学家使用的开源软件包和环境管理系统Conda集成,可以快速安装,运行和更新软件包及其依赖项。Conda和Anaconda可以在Anaconda Cloud上使用,在协作期间共享包,笔记本,项目和环境。除非您想在Anaconda Cloud上运行H2O,否则Conda不需要运行H2O。
为了简洁起见,我将跳过一些技术细节,但如果您想了解更多有关架构组件JVM管理CPU管理流体矢量帧等内容的信息,请点击链接。

客户和用例

那么谁在使用这种技术和用例?很高兴你问。H2O强调了金融,保险和医疗保健行业的使用。H2O启用的特定解决方案示例:

对你来说太高了?想要了解公司如何利用H2O创建ML模型并获得更好的见解并通过数据分析为客户提供服务的更多细节?当然,接下来就是这样

旅行服务客户的大规模ML和预测

image.png

我现在想为一家大型旅游服务机构提供更具体的用例,每年带来超过6800亿美元的收入。该公司希望使用ML为数百万用户评分酒店和目的地建议,并在广告平台出价期间从1M +关键字中选择,以确保最有效的广告展示位置。他们还希望运行机器翻译工作,根据用户的语言偏好,将酒店/航班描述转换为网站的43种不同支持语言之一。

机器学习要求

基于对现有系统的分析以及之前部署机器学习的尝试,他们想要一个解决方案:

初步尝试

他们最初的尝试包括:

最终的解决方案是使用H2o并为Sparkling Water上游提供编排代码。在这样做的过程中,他们为H2O 开发了一种“ 外部集群模式 ”,它消除了YARN的依赖性,帮助他们扩展超过1K +节点而没有任何问题。

解决方案架构

image.png

我们现在将对生产中用于进行预测的体系结构和模型培训进行高级概述。

离线:模型创建和培训(安全,非生产)

  1. 最终用户通过创建点击流活动与网站进行交互,该活动可以查看酒店,选择航班,阅读评论等。
  2. 对于不需要预测的JSON事件,数据将发送到Spark Cluster,以便工作流在数据之上运行。数据转换为存储和模型培训。
  3. 然后,Data Scientist在Spark中的数据集上创建数据框并发送到H2o集群。
  4. 在H2o中,科学家选择正确的算法,训练和建立模型。还可以访问具有Web UI 的功能存储,他们可以在其中发现或重用功能,查看哪些功能可在线访问与脱机,分配功能的所有权并强制执行质量。
  5. 在训练之后,他们将模型以普通旧Java对象(PO​​JO)或模型对象优化(MOJO)格式导出到预测处理系统以用于生产。

在线:酒店评分示例(实时处理)

  1. 最终用户在搜索纽约的酒店时创建需要预测的点击流事件。
  2. 该JSON事件被发送到Kafka主题
  3. Spark从Kafka获取事件并在其上运行转换,类似于离线完成的数据争论,将值输出到另一个Kafka主题,将Cassandra作为持久后端输出。
  4. 然后,流处理应用程序对ML模型进行API调用,ML模型在前面具有API网关,以根据需要缩放预测处理请求。
  5. 对于酒店查询,约10,000个酒店为该特定用户评分并返回给他们希望点击并预订最佳结果的用户。

结论

虽然我们已经涵盖了很多,但我们只是触及了H2O平台功能的表面。随着他们对产品的采用正在快速增长,H2o似乎已准备好实现为每个人实现人工智能民主化的目标。如果您想了解更多信息,请查看2017 H2O世界的主题演讲和会议,这是一个很好的起点。希望对H2O的介绍很有帮助。

上一篇下一篇

猜你喜欢

热点阅读