
大家好!
我叫Sergey Konkov-我是业务报告与数据的数据架构师。
本文讨论了在零售公司中使用地理分析和机器学习的可能性,并基于我们客户的真实项目-大型美容院网络。 不会有太多的代码和技术细节,将关注技术的审查,其应用和集成。
挑战赛
在服务领域有一家积极发展的公司。 该公司每月在购物中心(TC)开设数家美容院。
任务是选择最佳的发现地点,以减少制定决策的时间和成本。实施计划样本
- 我们将收到有关购物中心的数据,这些数据可以帮助我们评估场所的吸引力;
- 让我们尝试在公司已经运营的那些购物中心中,将获得的数据与沙龙的工作结果联系起来;
- 我们将创建一种方法来评估新购物中心的吸引力;
- 我们将创建一个机器学习模型来为那些尚不存在我们公司的购物中心计算该估计值;
- 我们将创建工具,使专家在选择开设零售店的地方自动化工作;
我们收集地理数据
因此,购物中心的哪些数据可以提供帮助。
反映:
- 例如,它位于哪个区域和城市-莫斯科或萨马拉,巴维卡或维希诺;
- 购物中心的大小-那里有几家商店,饭店,沙龙?
- 这些商店是什么-建筑材料或时尚精品店?
- 那里有竞争对手吗? 还有多少? 哪一个呢?
- 也许有关于购物中心访客人数的信息?
- 附近还有其他购物中心吗? 在5公里半径范围内,没有比这更好的一两个马路;
- 还有附近还有什么? 也许是一个拥有许多办公室员工的大型商务中心或一个睡眠区?
这就是“有经验的”人对谁需要决定营业地点的思考。 高级人员还可以使用分析,可以在所有这些因素的基础上用Excel或SQL进行分析。
收集和处理该数据需要花费时间。 让我们尝试优化它。
从哪里获取数据? 让我们看一下市场上的地理服务。 主要的是:Yandex Maps,2GIS,Google Maps。 比较功能之后,我们选择了2GIS。
我们认为该服务的主要优势:数据的准确性,相关性和完整性,用户友好的API。 但是您可以使用其他制造商的解决方案。
可以通过服务网站上的表格访问2GIS API。 访问是付费的,并且取决于请求的数量,有必要在与2GIS的合同中分别规定如何使用数据,这就是为什么我们请求它们,我们将如何处理它们等等。
我将告诉您一些如何使用2GIS API的方法。该服务使您可以选择组织在特定地区(城市,地区,街道等)中的位置。 作为过滤器,您可以指定组织的标题(活动类型)。 我们将请求在“购物中心”标题下搜索所有组织。 结果,我们获得了该地区购物中心的列表。 在每个购物中心的响应中,也将出现所谓的房屋标识符-building_id。 我们将使用收到的building_id中的一个向建筑物中的所有组织发出请求。 我们会获得此购物中心中所有组织的列表,包括其名称和标题。

因此,我们收到了特定购物中心中所有商店,沙龙,餐厅和其他组织的列表。 我们可以对我们感兴趣的每个购物中心提出这样的要求。
项目基础设施
为了实现,我们选择了
MS Azure的云。 我们需要的一切,即:
从2GIS获得的所有数据都将加载到Azure SQL数据库表中。
我们将所有脚本下载到Azure数据工厂包中。 这将使我们能够按时间表批量下载数据(例如,针对特定城市的所有购物中心的数据),以保持数据的相关性,也可以根据特定购物中心的要求进行下载。
集成任务示例:

处理数据
我们可以开始搜索2GIS数据与沙龙实际结果之间的关系。 为此,请将购物中心上的数据上传到公司已经存在的商店。 在那里,我们将通过ERP上传有关沙龙工作的数据-收入,支票数量,保证金,访客数量。
在此阶段,我们将专家连接到数据科学项目。 对于他们,我们基于收集的数据和Azure机器学习环境部署OLAP多维数据集。
数据科学家进行的研究表明,以下因素对沙龙工作的影响最大(收入和边际):
- 购物中心所在的城市;
- 购物中心的商店数量;
- 购物中心的竞争对手人数;
- 某些品牌的存在;
- 半径2公里以内的其他购物中心的数量;
为了评估购物中心的吸引力,我们引入了一个从1到10的标度。为了提高吸引力评估的透明度,我们需要向用户确切显示哪些因素以及它们如何影响最终评分。 这是对其中一个购物中心进行评估的示例:

连接机器学习
我们为公司已经运营的所有购物中心计算此估计。 结果数据集(因子+评估)将用于创建机器学习模型。 最终,模型应该确定对购物中心开设新沙龙的吸引力的评估。
在Azure ML Studio中创建实验的示例:

该图显示了一个基于线性回归模型创建机器学习实验的简单示例。
在以Web服务的形式部署创建的模型之后,我们将能够为没有公司沙龙的购物中心获得吸引力等级。
因此,我们有数据,我们了解如何使用它们,并且我们有一种对购物中心进行排名的方法。 现在,我们将所有这些信息转移给正在运行的用户。
我们使选址部门员工的工作自动化
首先,创建分析报告。
例如,我们需要评估在N开设多个零售店的可能性。
我们对以下数据感兴趣:
- 城市中的所有购物中心(每个商店的数量,竞争对手的数量,我们的商店);
- 城市中所有有竞争者的购物中心,但没有我们。
- 城市中的所有竞争对手(代表购物中心的商店,总零售店数量);
这是MS Power BI中的一份报告的示例。 数据源是我们在MS Azure上的数据仓库。

接下来,我们将制作一个工具,以在地图上的购物中心上显示收集的数据。 熟悉的API 2GIS将为我们提供帮助。 在Web应用程序中,创建一个地图小部件并在其上应用带有购物中心标记的标记。 示例(实际数据已更改):

总结一下
因此,我们执行了以下操作:
- 我们建立了从2GIS服务获取购物中心数据的过程。
- 我们发现所获得的数据与该公司已经运营的那些购物中心的沙龙结果之间存在联系。
- 他们创建了一种评估购物中心吸引力的方法。
- 我们开发了报告和工具,以使专业人员在选择开设零售店的地点时的工作自动化。
让我们看看我们拥有的解决方案的体系结构。
在本文的下一部分中,我计划告诉您如何制作一个机器人地理分析程序来帮助负责选择场所的员工。感谢您的关注!
如果有人对解决方案各个组件的实现的技术细节感兴趣,那么我将很乐意在评论或个人信息中回答问题。