下面是我们在SAP TechEd 2018英特尔展台上演示的一个原型的总结。这是使用Intel Skylake CPU和机器学习(ML)来自动进行ETL(提取转换和加载)映射的。底部有一个演示视频。
通常情况下,这是一个团队工作,你可以在幻灯片上看到构建这个原型的人,包括SAP团队和Intel团队。我想表彰的主要贡献者是Nidhi Sawhney,Stojan Maleschlijski和John Santerre.
原型使用了以下组件
我们要解决的场景如下。
一家公司从其客户处接收各种不同格式的数据。接收到的单个数据文件可能包含各种格式和各种数据字段,甚至不同类型的事务。这使得他们无法使用传统的ETL方法。这些文件和格式确实发生了变化,但数据类型保持一致。
它们已经手动构建了规则,然后用于ETL映射。规则是在行(记录)级别保存的。对于每一条记录,他们都会知道。
然后我们想看看我们是否可以教一台机器执行相同的任务,以及我们能达到什么样的精度水平。
如果你仔细观察下面相同的数据,你应该能够看到,在一个文件中,我们有许多需要在ETL过程中处理的问题。这些都不是不可克服的,但需要重要的逻辑和规则。
然后我们想教机器学习如何处理这些数据。我们将用以前标记的数据训练一个深度学习模型。这些模型将学习从事务字符串中理解模式。
首先我们确定事务的类型,大数据工具,通过从以前的事务中学习它。
其次,我们执行字段到列的识别。
为了训练ML模型,我们同时使用了数据的水平扫描和垂直扫描,这使得模型能够"看到"数据,从而识别不同类型的数据,北京大数据,企业信息化应用系统,与我们的做法大致相同。我们也使用Intel CPU,而不是GPU,并且配置正确(正确编译的MKL tensorflow python wheel和环境变量如下所示)
架构如下所示,模型培训和评分在SAP HANA之外执行,大数据云计算,使用类似的Intel Skylake硬件。
我们使用的Intel硬件规格如下。
ML面临的一个挑战是使用带有GPU的专用硬件,然而,我们证明了这些并不总是必需的。
我制作了一个简短的视频,捕捉了机器学习原型的主要部分。
Python模型训练SAP分析云(SAC)中的模型评估使用SAP HANA智能数据集成(SDI)进行数据采集使用SAP HANA External Machine Learning(EML)对数据进行评分
首先使用Python对ML模型进行训练。
然后使用SAC对模型进行评估,在这里我们可以看到一些实例,其中有非常多的数据,该模型确实表现得很好,因为它需要更多的数据。条形图表示每个字段的记录计数,行是模型准确度(F1得分)。
最后我们使用SAP HANA WebIDE通过SDI获取新数据,然后使用外部机器学习对这些数据进行得分。视频中捕获的模型是对交易(trade)类型进行分类。
,交通大数据