浅谈如何通过数据,验证地图单点信息(POI)的准确性
编辑导语:如今数据分析和机器学习是很火热的领域,近几年各行各业都已经采集了大量的数据,如何利用数据提高效率成为了问题的关键。
作为一个C端产品经理,最近工作原因有幸与某厂的地图部门聊到了单点信息(POI)的准确性这个问题(主要是店铺的开张与否),在当今大数据和机器学习如此火热的时代,自己有目的的对此问题做了一个浅显的分析,写一篇小文章请地图相关的PM一起来指正一下。
目前来看,单点信息主要以人工方式进行验证,大多数依靠人工扫街和商户认领。信息流程处理复杂,费时费力,数据的延迟相对严重,没能充分利用已有数据。
下边将从一个具体案例入手,归纳总结,以点带面,升级为一套可执行方案。
一、案例分析
案例的选取:案例店铺在身边不能太多,如便利店,因为便利店旁边就有很多替代品;也不能太少,如大型商超,开张关门的频率基本很低,不具有参考价值。所以案例使用洗衣店这种非高频却是必须品的店铺。
案例:小区门口有家洗衣店,需要判断其是否仍然健在开张营业。
案例分析:数据的产出来自方方面面,但是其本质来源于人类的日常活动,洗衣店的参与者包括了洗衣店消费者(Customer)、老板店员(Owner)和供应商(Supplier,以洗衣店为用户的服务提供商),下面对三种角色的行为轨迹进行分析,从而发现其可利用的数据点。
1. 来自消费者的判断
首先消费者的洗衣流程:
以上是洗衣店消费者将脏衣服送洗的流程图,从上图可以发现,能够充分判断洗衣店在开张营业状态的路径有两条,通过数据来验证的方式有两个:
- 用户通过地图软件查询到目的地并拨打电话后,在一定允许的时间差内,导航到该目的地。由于我们可以在用户允许的前提下获知用户是否使用了该点的电话信息,同时,可以在用户允许的前提下获知到用户在调用了电话信息后的2小时内(时间可以修正),通过地图软件导航到了该目的地,或者通过与地图软件合作的软件(SDK接入者)或硬件(合作车商),导航或打车到达该洗衣店,那证明该洗衣店开张的可能性较大。
- 用户到达店铺后,进行下单支付。该数据我们不能在地图本身拿到,但是若有支付合作商拥有该场景应用,再用户允许的前提下,我们在后台将该洗衣店的收款账号与点信息匹配,当一天内有超过3笔(数量可以修正)收入后,那证明该洗衣店开张的可能性极大。
从图中可以看出,店面有可能关门的路径有三条,通过数据来验证的方式是两种:
- 用户拨打电话后,继续搜索和查看其它洗衣店
- 用户在该洗衣店附近,搜索或导航到另一个洗衣店
2. 来自老板店员的判断
以上是洗衣店消费者的洗衣流程图,下边再看一下店员的流程图,从而寻找可以从店员身上找到可利用数据点。
从老板店员来看:
- 首先可以从店铺建立开始,在用户允许的前提下,将每天都会规律性到达洗衣店的地图软件用户保存在洗衣店的信息中,当这些数据有异常变化时,就可以对店铺营业情况及时进行验证和管理;
- 和上边消费者判断行为一样,可以通过店铺内的消费支付情况判断其是否营业;另外,由于一个店铺对于水电的使用基本是平稳的,在用户允许的前提下,通过支付合作商的生活缴费功能数据,也能获取其是否营业中的信息;
- 通过接入地图软件SDK的跑腿APP是否在该店产生订单,来判断其营业情况
来自供应商的判断
对于洗衣服的用户来说洗衣店是服务提供商,但洗衣店在整个市场中,自己本身也是客户,其他供应商,包括为洗衣店提供洗衣耗材用品的商家或个人,以及给店员提供生活服务的商家或个人(如外卖等),在用户允许的前提下,这些供应商产生的行为数据可以拿来对洗衣店的营业情况进行验证:
- 由于店铺的经营一般都会归于平稳,洗衣耗材供应商会呈规律式的来送货,当我们通过数据分析,将一个人判读为供应商时,若其周期性运动轨迹出现异常时,其服务的这家洗衣店就存在关门的可能;
- 另外在用户允许的前提下,可以通过接入地图软件SDK的生活服务提供商,收集信息,查看该点是否任然被服务,若该点近3天(时间可修正)没有被服务的记录,那么就存在关门可能
以上供应商的1/2两条判断数据,可以与上边的老板店员数据的1/3相结合。
二、归纳升级方案
根据上述分析,对于单点信息,判断其是否仍然活跃,归纳总结出如下表格:
判断的核心方式是:通过数据噪点找到可能存在的问题,通过其他数据的验证找到数据的真实情况。
每个点的营业状态可以预留三个值,分别为:营业中,待确认,不营业。最初获取点,点信息为营业中状态,我们为点信息加入五个维度的考察指标,当这五个维度中,出现判断不营业的次数超过了10次(数量需要进行统计与测试),可以是一个维度判断不营业出现10次,或多个维度判断不营业出现10次,那就将该点挂起,变为待确认状态,然后去进一步遍历该点的5个维度在数据出现噪点后的时间内所有的判断条件,以及监控其未来5个维度的发展情况,更多信息判断为在营业或不营业的,则将点营业状态改变到正确值。
这里边还可以加入用户参与,当状态值为待确认时,对于路过或以该目的地为起点或终点的用户进行推送消息,提问反馈,验证我们的判断是否正确。其中反馈真实信息的用户可以得到某种奖励,当然这是另一个问题,不做讨论。
最后,根据最终情况去完善和修正方案,包括方案中的判断方式和方案中的判断内容维度,从而进一步优化方案,这个优化也需要提一下,除了方案本身的优化,机器通过反馈,不断学习,从而提高机器判断的正确率。利用数据,尽量减少人工和降低成本。
以上是我提出的一个解决方案,当然,具体实施时,还需要考虑很多,其中包括5个维度中提到的各种时间范围值,每个维度的真值和假值等。方案有很多不完善之处,希望地图界的大佬,尤其在POI项目中的大佬能够提出优化方案,共同探讨。
三、文章总结
如今数据分析和机器学习是很火热的领域,近几年各行各业都已经采集了大量的数据,如何利用数据提高效率成为了问题的关键。
在我以浅显的眼光来看,当需要解决某个问题时,可以通过一个维度的数据解决,然后再通过另外一个维度去验证,再通过第三个维度去验证第二个维度,如此下去,做一些灰度模型,最终机器的判断值或输出值等于真实值,这就是最简单却最有效的一种大数据应用。
声明:文章中提到的所有用户信息获取与应用,都会获得用户允许。在法律允许的范围内,本文最终解释权归本文作者所有。
文末提出一个简单的问题,如何判断搜狗输入法用户的男女比例?希望能够与大家一起探讨。
作者:小花,资深增长产品,公众号:小花摸耳(idhuaandmore)
本文由 @ 小花 原创发布于人人都是产品经理。未经许可,禁止转载。
题图来自unsplash,基于CC0协议
有点意思,考虑跳槽不?来我厂吧…
地图的核心支撑在于数据的丰富度和准确性,利用算法模型对线上数据的准确度做判断是合理的,但是否能大幅度提升验证的效率还需评估。
在楼主的这个模型里,如果用户前往一个POI,发现其已经停业或搬迁,对于单个用户来讲,体验伤害已经造成,此时产品的核心应在于及时止损,安抚用户,回收错误信息。在我看来,此时的报错机制和用户激励要远远比用户此时的轨迹信息收集更为重要,目前来看,百度做得并不好。
另一番方面,如何引导B端或者G端在地图上认领信息,也是很重要的一点,这些应该从产品思路上考虑,而不应该仅仅局限于数据和算法。
我的理解,数据和算法都是为了产品服务,是解决问题的手段,不是目的,地图还是要更加关注自身产品业务线的逻辑,从用户层面看问题会好一点
您说的没错,需要从整体产品线看问题,角度没问题,可以说您是全局把控,其实他们整个地图部门就在从全产品角度看问题,发现并解决问题。只是会落实到每个组,跟我一起探讨问题的是该厂的POI组,而且是POI组的其中一道程序的部门,虽然我没有接触其他部门,但我相信,他们公司肯定有专门做用户层面的部门。
我们希望将问题拆分,寻找到每个可以优化和解决问题的点,提升产品,这不就是我们一直在追求的极致吗?谢谢点评,虚心接受啦,看您也关注地图行业,希望以后可以不吝赐教哦。 😎
思维都挺好的,来高德不?挺对口的,联系电话:15801164987