NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

一个案例告诉你如何使用 Kyligence + Spark 进行大数据机器学习

  • 2019-09-06
  • 本文字数:2519 字

    阅读完需:约 8 分钟

一个案例告诉你如何使用 Kyligence + Spark 进行大数据机器学习

今天,大数据、数据科学、机器学习分析不再只是热词,已经真实地渗透于生活方方面面。根据福布斯,到 2025 年,全球每年将会有 175 泽字节的数据产生。Kyligence 的诞生为企业带来了极速的大数据分析体验 。当企业要对大规模的数据进一步进行更为复杂的分析如对销售额进行预测时,传统的分析工具就捉襟见肘了 。


这篇文章将以基于 Spark 的分布式机器学习平台 Databricks 为例,为您提供一套从以 Kyligence 为数据源到分布式数据分析平台的高效无缝的解决方案。


对企业未来销量进行预测是一个很普遍的分析需求。分析师需要先以不同的时间粒度如日或月,或者是其他维度粒度如地区,商品等聚合数据,然后按不同的算法预测聚合后的数据。相类似的预测、分析场景还有很多,如运维数据的异常值检测,金融数据的反欺诈识别,销售数据的用户画像等。在数据被深入挖掘之前,都需按维度列或时间戳聚合数据。然而想顺滑地聚合如此海量的数据,并且深入挖掘数据并不简单。

对海量数据进行挖掘的难点

  • 聚合大量数据,复杂度高,所耗时间长

  • 当数据量呈规模式增加时,即使是执行一条简单的筛选查询也会消耗很多时间,并且查询语句复杂度越大,执行语句所花时间就会越长。因此,数据科学家稍调整筛选条件,就会重新陷入等待中。

  • 分析维度的粒度很难随意变动

  • 由于高额的查询成本,数据科学家们会更倾向于聚合有潜在关联的数据维度。这种前瞻性在提高数据科学家们分析效率的同时,也局限了他们的数据探索能力,导致错失发现一些不易察觉的数据规律的机会。

  • 无法实现数据源到分析平台的无缝连接

  • 目前,在大数据领域,数据科学家们最常用的预处理数据工具主要有 Hive,Spark,Pig,Scala 等。而如果想对这些数据进一步的分析,需要从这些工具中导出聚合后的数据,再将其导入到机器学习平台。导入导出看似为简单操作,实际上会打破分析人员工作的连贯性,尤其是当导入导出数据量过大时,他们的工作效率会大大降低。

  • 机器学习工具复杂,生命周期难以管理

  • 工具太过复杂、难以跟踪实验、难以重现结果、难以部署模型。很多企业已经开始构建内部机器学习平台来管理机器学习生命周期。但这些内部平台存在一定的局限性:典型的机器学习平台只支持一小部分内置算法或单个机器学习库。用户无法轻易地使用新的机器学习库,或与社区分享他们的工作成果。

解决方案:Kyligence + Spark

在分析师拉取数据之前,通过 Kyligence 将所需要的所有分析数据都已经以不同的维度、粒度提前聚合好,使得分析师们在极短时间内能直接获取数据。在获取聚合好的数据后,分析师们也无需先将数据导出,再导入专业的支持机器学习的分析平台,也无需再因为适配不同的机器学习方法而安装各种环境。而是直接在该专业的数据分析平台上获取数据,在适配好的环境中,用不同的方法进行近一步预测和分析。



Kyligence 与 Databricks 数据处理流程


  • 应用门槛低,学习成本小

  • 大数据分析普遍会采用分布式存储及计算,使用者需要用了解 Java, Hadoop, Hive, Pig,Spark 等等大数据知识。而 Kyligence 为用户提供了 SQL 查询接口,Databricks 也提供了支持各种机器学习语言的环境,用户无需了解底层原理,就能处理分析海量数据,拥有极佳的用户友好度。

  • 亚秒级查询,随意转换特征值

  • 相较于传统的将数据聚合过程放在数据分析中,此方案在分析师分析数据之前已完成数据处理及聚合。Kyligence 可提前以不同的维度,维度粒度预聚合数据。因此,无论分析师要求获得以何种维度聚合的数据,都能在亚秒级内得到返回结果。数据量,时间成本不再是试错特征值的制约条件。

  • 数据源与分析平台无缝连接

  • 以往的大数据在被分布式计算后,如果想用机器学习进一步分析,往往需要将数据导出,再导入机器学习分析平台。而 Kyligence 和 Databricks 的组合允许用户直接从数据分析平台上获取数据,无需导入导出。在 Databricks 的 notebook 中,用户可通过 SQL 语句直接获取被 Kyligence 预聚合的数据,省去迁移数据,转换数据格式的麻烦。

  • 专业机器学习分析平台

  • Databricks 基于 Spark 提供用户一个专业的分布式机器学习分析平台,支持完整的机器学习生命周期。为用户提供完备的机器学习环境,用户无需自配置环境就可使用各种流行算法。

应用案例

一家名为 “Contoso ”的企业 拥有超过 100,000 的产品,数据集就包含多个事实表和维度表,数据量最大的事实表包含 2 千万条在线销售数据。(Contoso 是微软虚拟的一家公司,其产生的数据主要用于模拟各种企业场景下的数据分析。)


分析目标:根据 2007 年 1 月到 2009 年 5 月 31 日的在线销售数据预测下半年的销售额


  • Step 1: 数据处理


先将数据导入 Kyligence 中,然后转到 Azure Databricks 的页面,通过 PyPI 连接 Kyligence,输入 SQL 获取聚合数据数据,并且这一过程的数据导入所耗时间不超过两秒。SQL 返回的数据集存储为 Pandas 数据表格,然后对该数据表格处理为我们想要的格式,即对销售量按月聚合,产生每月销售量的数据集。然后用 LSTM 进行销量预测。



  • step 2: 数据分析


生成模型训练数据集



训练集的窗口长度是指需要几个时间点的值来预测下一个时间点的值。在这里窗口长度为 1,即用 t 次的时间间隔进行模型训练,然后用 t+1 次的时间间隔对结果进行验证。数据集格式为:dataX 为训练数据,dataY 为验证数据。我们选取数据集中前 36 的数据作为训练集,后 6 的数据作为测试样本集。


LSTM 模型结构与参数设置



选定模型训练的 epoch(总的训练轮数)为 100 和 batch size(每次训练的样本数)为 1,并在 LSTM 层的输出后面加入一个普通的神经网络全连接层用于输出结果的降维。


  • step 3: 结果展示



上图蓝线为真实值,黄线为预测值。可以看出最终的预测曲线与实际的曲线趋势情况基本吻合,销售量从每年的七月开始下滑,10 月会有反弹,且总体的销量趋势呈下滑状态,拟合效果很好,将原始数据的季节性,总体趋势及周期性都预测出来了。


当分析人员需要细化维度到产品时,如预测产品 ‘LitwareRefrigerator 24.7CuFt X980 Brown’ 2009 年下半年的销量,分析人员只需要修改 SQL 代码,就可重获聚合数据,操作简单,执行快速。


Kyligence 与 Apache Spark 可优化从数据源到数据分析平台的整套大数据机器学习生态环境,让大数据挖掘摆脱数据量的束缚,变得轻松高效。


本文转载自公众号 Kyligence。


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-09-06 15:355716

评论

发布
暂无评论
发现更多内容

如何找到香港虚拟主机5元一月的方案?

一只扑棱蛾子

香港虚拟主机

零基础入门NLP - 新闻文本分类比赛方案分享 nano- Rank1

阿里云天池

阿里云

SD-WAN在金融行业的重要性

Ogcloud

SD-WAN 企业网络 SD-WAN组网 SD-WAN服务商 SDWAN

在Windows电脑上上传iOS应用至App Store

雪奈椰子

倒计时1天 | 袋鼠云春季发布会完整议程出炉!快快预约直播

袋鼠云数栈

AI 指标体系 大模型 指标建设

AI 数据观 | 大模型私有化部署落地过程中,那些容易被忽视的“数据集成”难题

tapdata

生成式 AI 应用 大语言模型集成 企业 AI 应用

从基础到高级,带你深入了解和使用curl命令(三)

霍格沃兹测试开发学社

低代码开发有哪些优势?

万界星空科技

低代码开发 低代码平台 mes 万界星空科技

碳视野|新能源产业链看过来! 欧盟关键原材料法案生效!

AMT企源

数字化转型 新能源 双碳 碳管理

天池医疗AI大赛[第一季] Rank5解决方案

阿里云天池

阿里云

企业上了MES系统后,能有什么好处?

万界星空科技

生产管理系统 mes 万界星空科技

人社大赛算法赛题解题思路分享+季军+三马一曹团队

阿里云天池

阿里云

不要在自我提升方面吝啬

老张

自我提升 能力提升

ETL中Python组件的运用

RestCloud

Python ETL 数据集成

【教程】App打包成IPA文件类型的四种方法

Edge浏览器兼容性问题如何修复,这篇文章告诉你

霍格沃兹测试开发学社

猫头虎博主深度探索:Amazon Q——2023 re:Invent 大会的 AI 革新之星

亚马逊云科技 (Amazon Web Services)

re:Invent 亚马逊云科技 生成式人工智能 Amazon SageMaker Amazon Q

ido预售私募官网开发

西安链酷科技

ido私募 预售官网

从基础到高级,带你深入了解和使用curl命令(四)

霍格沃兹测试开发学社

【IJCAI-2018】搜索广告数据探索与可视化

阿里云天池

阿里云

JSON 迎来的首个大客户竟是那种网站

胡译胡说

JavaScript json

SD-WAN解决方案七大便利点

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

大型央国企“信创化”与数字化转型的建设思路

优秀

信创 央国企数字化转型

消息队列选型之 Kafka vs RabbitMQ

字节跳动云原生计算

kafka 消息列队

新一代营销费用管理,有效提升线下渠道投资回报率

赛博威科技

用 AI 让数据分析更智能 - Amazon Q 在 Amazon Quicksight 中的应用

亚马逊云科技 (Amazon Web Services)

数据分析 生成式人工智能

二手车价格预测第十三名方案总结

阿里云天池

阿里云

EMQX Enterprise 5.6 发布:新增 Amazon S3 数据集成、JSON Schema 验证函数

EMQ映云科技

mqtt emqx mqtt broker

全面解析基线版本应用的探索实践

鲸品堂

测试 基线 运营商

现成源码与定制开发:拍卖直播商城平台的最佳选择是谁?

软件开发-梦幻运营部

【PolarDB-X从入门到精通】 第四讲:PolarDB分布式版安装部署(源码编译部署)

阿里云数据库开源

数据库 阿里云 分布式数据库 PolarDB-X

一个案例告诉你如何使用 Kyligence + Spark 进行大数据机器学习_大数据_姜昀佳_InfoQ精选文章