关于机器学习这个话题,我相信我这个公众号1500多位关注者里,一定有很多朋友的水平比Jerry高得多。如果您看过我以前两篇文章,您就会发现,我对机器学习仅仅停留在会使用API的层面上。

关于机器学习在SAP标准产品中的应用,Jerry只知道一个例子,就是机器学习在SAP Cloud for Customer(以下简称C4C)中的应用。今天Jerry就把这个例子分享给大家。如果除了C4C外,您还知道SAP其他产品也已经启用了机器学习,请留言,让大家也多增长一些见识,谢谢。

SAP C4C在1708这个版本最先引入机器学习的支持,用于销售场景中的Deal Intelligence(智能交易)和服务场景中的Automatic Ticket Classification(Ticket智能分类)。根据SAP官方网站上发布的信息,到C4C 1802为止,SAP C4C销售和服务领域内支持的机器学习场景如下:

  • Deal Intelligence

  • Lead Intelligence

  • Account Intelligence

  • Ticket Intelligence

本文Jerry将选择三个我熟悉的场景分享给大家。

文章目录

  • C4C系统启用机器学习的前提条件

  • C4C系统启用机器学习的主要步骤

  • 机器学习在C4C客户管理场景中的应用

  • 机器学习在C4C销售商机管理中的应用

  • 机器学习在C4C销售报价单的产品推荐场景中的作用

C4C系统启用机器学习的前提条件

C4C机器学习的思路是分析系统内已有的历史数据,以进行模式识别,创建统计模型对将来的业务决策做出预测。因此历史数据成为C4C机器学习场景一个至关重要的输入条件。

SAP C4C机器学习对于历史数据规模的要求是:对于相关场景至少存在过去12个月的数据,数量不得少于5000个,并且必须满足SAP帮助文档上定义的特征分布。

C4C系统启用机器学习的主要步骤

C4C机器学习功能在每个tenant上默认处于关闭状态。希望启用机器学习的客户需要向SAP提交一个Incident,按照SAP提供的一个模板填写需要启用机器学习的具体场景。作为一个SaaS解决方案,绝大多数复杂的机器学习启用步骤都由SAP工作人员完成,剩下需要由C4C客户在C4C tenant上完成的步骤仅仅是在C4C工作中心视图Predication Services里进行的简单配置工作。

点击Model Setup超链接进行机器学习的模型配置:

注意图中的"Readiness"这一列,代表当前tenant上相关的历史数据的规模和分布是否足以满足SAP定义的创建机器学习训练模型的条件。

如果条件不满足,点击"View Report"能看到具体是历史数据的哪个维度不满足:

历史数据准备好之后,通过点击下图Model表格的工具栏上的按钮"Add Model"创建机器学习的模型,训练并激活模型,然后就能在C4C的业务场景中使用机器学习提供的强大功能了。

这些按钮背后的技术细节全部被SAP封装好,确保客户的相关人员即使没有任何机器学习的技术背景,也能在C4C系统上快速启用机器学习的功能。

我们注意到上图有一列"Data Source", 代表该场景需要的模型是否支持以外部文件的方式将历史数据导入系统。"Auto Extraction"则代表直接使用当前tenant的数据作为历史数据。

等模型训练结束后状态变为Active,就可以开始在C4C业务场景中使用机器学习了。

机器学习在C4C客户管理场景中的应用

使用机器学习进行客户管理,我们可以得到客户360度全方位的视图。

打开SAP C4C的客户工作中心,在客户列表里选中任意一个客户进入明细页面,能在右边看到一个名为Insights的区域。

这些客户的360度视图是基于C4C内部和外部的数据源分析得出的,有助于销售人员进行更有针对性的客户计划和销售。C4C的外部数据源采用的是第三方数据提供商Bombora。

通过Insights面板,我们能够获得通过机器学习得出的每个客户的购买倾向的分数,并且能看出就我们关注的某一话题,该客户的行为和倾向到底如何。Bombora会从该客户相关的B2B网站上捕捉能够反映该客户购买倾向的各种线索。当检测到客户在某个话题上的线索数量有明显增加时,我们称这个客户就该话题表现出了一个Surge(抱歉,Jerry实在不知道这个单词如何翻译成中文)。我们会给出Surge的分数,范围在1到99之间,每周更新一次。

SAP C4C会将某个客户总的Surge分数显示在屏幕右侧Insights面板内,同时显示出Surge分数最高的前三个话题。下图Surge分数前三的话题依次为:Artificial Intelligence, Machine Learning和Collaboration Software。

在C4C工作中心视图Predication Services的Third Party Data可以对Insights面板里需要关注的话题进行配置:

机器学习在C4C销售商机管理中的应用

在销售商机(Opportunity)列表里选中某个商机,能看到右边会使用机器学习的方式给该商机打的分,该分数代表选中商机的赢单概率。

上面显示的分数是基于SAP C4C tenant上过去12个月的销售数据,经过训练之后的机器学习模型计算出来的。分数越高,赢单率越大,因此销售代表可以更有针对性的把资源放在优先级更高的商机上去。分数会每天更新一次。

为了让机器学习计算出来的得分更准确,需要C4C系统里至少存在5000条历史商机数据,并且这些历史商机数据里的"赢单"或者"输单"状态尽可能均匀分布。

Insights标签页里显示的分数和Key Feature(关键指标)全部是从C4C后台通过HTTP请求,以JSON格式返回到前台进行渲染。

这个JSON格式的响应明细如下(从Chrome开发者工具Network标签页里观察到的):

机器学习在C4C销售报价单的产品推荐场景中的作用

大家平时在京东或淘宝上买一个东西后,手机app会自动向我们推荐一些其他我们可能会购买的商品,这些推荐就是背后的机器学习框架基于我们以前的购买习惯通过一定的算法计算出来的。

C4C同样支持使用机器学习根据销售订单历史数据进行向上销售(Up Selling)和交叉销售(Cross Selling)产品推荐。

我们可以在Machine Learning Scenarios(机器学习场景)的列表里看到Product Recommendation(产品推荐)这个场景。通过点击按钮Add Model创建一个新的机器学习模型,点击Train进行训练,确保训练成功完成,状态变为Active, 说明该模型可用。

创建一个新的Product List,里面包含了需要销售的产品:下面的例子有两个产品,ID为为1042416和10001380。

如果是传统的产品推荐场景,假设当我在销售订单的行项目里维护了上述两个产品的ID后,还想推荐一些其他的产品,则需要通过人工的方式将这些推荐的商品维护到Product list的"Proposed Products"标签页里,如下图红色区域所示。

有了人工智能加上机器学习后,就可以省去这些人工配置的步骤和工作量。我给这个Product List加上了一个"203 - Product Recommendation"的场景,如下图蓝色区域所示,希望让这个Product List里包含的产品被加入到销售订单时,通过人工智能的方式由SAP C4C系统自动推荐相关产品。

现在我们来做个测试,创建一个新的销售报价单,将之前维护在Product List的某一个产品,比如1042416,维护在这个销售报价单的行项目里,然后C4C系统自动给我推荐了两个其他产品,ID为P140101和P140100。

下图是我从ABAP后台调试机器学习API调用得到的JSON响应在JSON编辑器里打开的截图。可以看到机器学习给ID为P140101和P140100这两个产品计算的相关分数是90和83。因为机器学习API的具体细节在SAP帮助文档里没有提及,这里不便介绍。

关于机器学习在C4C中的更多应用,请参考SAP帮助文档。感谢阅读。

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

机器学习在SAP Cloud for Customer中的应用的更多相关文章

  1. SAP Cloud for Customer(C4C)的一些学习资料

    经常有顾问朋友们问我想自学C4C,有什么好的资料. SAP内部确实有一些C4C培训材料,但是不能散布到公司外部. 想学习C4C,还是得到SAP官网网站上查找资料. 1. 登录https://help. ...

  2. SAP Cloud for Customer Account和individual customer的区别

    在SAP Cloud for Customer的Customers工作中心里,有三个视图:Accounts,Contacts和Individual Customers. 这三种主数据的区别是什么?我们 ...

  3. SAP Cloud for Customer里Sales Order和Sales Quote的建模方式

    SAP Cloud for Customer的Sales工作中心里有Sales Quote和Sales Order两个视图,一个用于销售报价单,另一个用于销售订单. 流程上是先有报价单 ,报价单是一份 ...

  4. SAP Cloud for Customer Extensibility的设计与实现

    今天的文章来自Jerry的同事,SAP成都研究院C4C开发团队的开发人员徐欢(Xu Boris).徐欢就坐我左手边的位置,因此我工作中但凡遇到C4C的技术问题,一扭头就可以请教他了,非常方便.下图是他 ...

  5. SAP Cloud for Customer Price-计价简介

    SAP Cloud for Customer(本文以下简称C4C)作为SAP新一代的CRM云产品,其Price功能实现虽不如以前的SAP ERP那么复杂,但是也能满足企业运作中各种Price需求. C ...

  6. SAP Cloud for Customer销售订单External Note的建模细节

    SAP Cloud for Customer的销售订单创建页面里,我们可以给一个订单维护External Note,当这个订单同步到S/4HANA生成对应的生产订单后,这个note可以作为备注提示生产 ...

  7. 如何找到SAP Cloud for Customer标准培训和认证方面的信息

    有一些朋友询问我如何在SAP官网上找到和SAP Cloud for Customer相关的标准培训信息,我这里把步骤写出来: 登录SAP官网https://training.sap.com 输入和Cl ...

  8. 如何把SAP Kyma和SAP Cloud for Customer连接起来

    首先进入SAP Cloud for Customer的Administration的工作中心,打开General Settings视图,进入Event Notification配置UI: 新建一个C4 ...

  9. 如何在SAP Cloud for Customer自定义BO中创建访问控制

    文章作者: Yi 已获得Yi的转载许可. 访问控制方式和使用注意事项 1. C4C中的访问控制有两种方式 RelevantForAccessControl AccessControlContext 2 ...

随机推荐

  1. 【Codeforces 664A】 Complicated GCD

    [题目链接] 点击打开链接 [算法] gcd(a,a+1) = 1 所以当a = b时,答案为a,否则为1 [代码] #include<bits/stdc++.h> using names ...

  2. 【转】nose-parameterized是Python单元测试框架实现参数化的扩展

    原文地址: http://www.cnblogs.com/fnng/p/6580636.html 相对而言,Python下面单元测试框架要弱上少,尤其是Python自带的unittest测试框架,不支 ...

  3. Rational Rose 2007 &Rational Rose 2003 下载及破解方法和汉化文件下载

    Rational Rose 2007 &Rational Rose 2003 下载及破解方法和汉化文件下载 分类: 其它2010-08-10 13:28 12926人阅读 评论(4) 收藏 举 ...

  4. memset函数学习

    memset是计算机中C/C++语言函数.将s所指向的某一块内存中的后n个 字节的内容全部设置为ch指定的ASCII值, 第一个值为指定的内存地址,块的大小由第三个参数指定,这个函数通常为新申请的内存 ...

  5. Java 8的Lambda学习

    参考资料:https://www.dotnetperls.com/lambda-java Lambdas用于创建函数对象.通过它们,我们可以在其它方法内部指定方法,甚至可以把方法做为参数传递给其它方法 ...

  6. 任务43:Identity MVC:UI

    基于原来做的cookie认证的代码:MvcCookieAuthSample 增加登陆和退出的方法: 增加Login和SignIn这两个Action方法. 在Views下面创建Account文件夹,然后 ...

  7. hibernate的基础学习

    工具类: public class H3Util { private static final SessionFactory sessionFactory = buildSessionFactory( ...

  8. 洛谷 - P1361 - 小M的作物 - 最小割 - 最大权闭合子图

    第一次做最小割,不是很理解. https://www.luogu.org/problemnew/show/P1361 要把东西分进两类里,好像可以应用最小割的模板,其中一类A作为源点,另一类B作为汇点 ...

  9. bzoj 1003: [ZJOI2006]物流运输【spfa+dp】

    预处理出ans[i][j]为i到j时间的最短路,设f[i]为到i时间的最小代价,转移显然就是 f[i]=min(f[j-1]+ans[j][i]*(i-j+1)+k); #include<ios ...

  10. 第三章 Python运算符

    1.算数运算符 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 31 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 * 乘 - 两个数相乘或是返回一个被重复若干 ...