第一论文网免费提供石油矿藏论文范文,石油矿藏论文格式模板下载

持卡人餐饮标签的设计和实现

  • 投稿艺名
  • 更新时间2015-09-29
  • 阅读量999次
  • 评分4
  • 12
  • 0

刘为怀 才华

(中国银联电子支付研究院上海 201201)

摘 要 针对银联餐饮商户无法进行菜系划分的问题,引入外部餐饮数据,首先利用结巴分词对外部餐饮数据进行分词,然后对分词后的外部餐饮数据进行清洗,形成餐饮商户不同菜系的划分标准,补充了银联餐饮商户的菜系划分数据,以餐饮商户不同菜系的划分数据为基础,与银联持卡人日常餐饮消费数据相结合,形成含有菜系划分的持卡人餐饮标签基础数据,以持卡人餐饮标签基础数据作为源数据,设计持卡人餐饮标签,实现每个持卡人打上不同的餐饮标签。

教育期刊网 http://www.jyqkw.com
关键词 餐饮标签,菜系,分词,青睐口味

中图分类号:TP3 文献标识码:Adoi:10.3969/j.issn.1674-7933.2015.05.001

作者简介:刘为怀,男,1981 年生,硕士,助理经理,主要从事及研究领域:大数据平台数据挖掘及数据聚合的研究,Email :liuweihuai@unionpay.com ;才华,硕士,工程师。

0 引言

跨行业数据整合与利用是大数据领域的重要方向,不同来源数据的联动能产生化学反应,带来挖掘结果丰富度与质量的极大提升。

银联拥有全量的交易数据,详细记录了持卡人的消费行为,为了丰富持卡人画像,根据持卡人日常消费行为,对持卡人进行打标签。我们选择衣食住行中的食——餐饮进行研究,以2014年上海市持卡人消费数据作为研究对象,分析上海市持卡人在餐饮行业的消费情况。

1 标签设计

进行持卡人餐饮标签研究过程中, 首先需要对商户进行划分,银联数据只能识别商户是否为餐饮类,而无法细化到商户到底是中餐馆还是西餐馆等详细信息。因此,我们需要借助外部数据,补充银联商户信息,并与银联交易数据相结合,形成持卡人餐饮标签基础数据,在此基础上,对持卡人餐饮具体标签进行细化分析。

在寻找外部数据过程中,我们发现百度地图的餐饮数据不仅包含了详细的菜系分类,而且还开放了易于调用的API接口,经过比较,选择百度地图的餐饮数据作为外部数据,补充银联数据,进行持卡人餐饮标签研究。

银联交易数据与百度地图餐饮数据相结合,对持卡人就餐行为进行分析和挖掘,得出六个餐饮标签:菜系分布、爱吃菜系、青睐口味、就餐人群、就餐档次、就餐时间。

1.1 菜系分布

参考百度地图餐饮[1]、大众点评[2]、百度百科[3]上关于菜系的定义及分类,将菜系分为6大类,51小类,具体分类如下:

1) 中餐馆:鲁菜,川菜,粤菜,闽菜,苏菜,浙菜,湘菜, 徽菜,本帮菜,赣菜,鄂菜,晋菜,桂菜,北京菜,豫菜,黔菜,滇菜,西北菜,台湾菜,清真菜,客家菜,火锅,自助餐,东北菜,江浙菜,烧烤,海鲜,小吃;

2) 西餐厅:披萨,牛排,意大利菜,法国菜,德国菜,俄罗斯菜,拉美烧烤,中东料理;3) 料理:日本料理,韩国料理,日式烧烤,寿司,日式自助;

4) 东南亚菜:泰国菜,越南菜,印度菜,菲律宾菜,印尼菜;

5) 快餐:中式快餐,西式快餐;

6) 甜点冷饮:面包西点,冰淇淋,甜点饮品。对持卡人在51种不同菜系的消费金额、消费次数进行统计,计算出持卡人菜系分布数据。

1.2 爱吃菜系

以持卡人菜系分布为源数据,对每一个持卡人在不同菜系的消费次数和消费金额进行比较,优先比较消费次数,次数相同则比较消费金额,找出持卡人消费次数或金额最多的菜系,即是持卡人爱吃菜系。

1.3 青睐口味

就餐口味分为酸、甜、咸、辣、海鲜、淡六种,以51种菜系为基础,进行口味分类,具体分类结果如下:

1) 酸:晋菜,桂菜,黔菜,滇菜;

2) 甜:苏菜,本帮菜,面包西点,冰淇淋,甜点饮品;

3) 咸:鲁菜, 晋菜,客家菜, 东北菜;

4) 辣:川菜, 湘菜,桂菜, 黔菜, 滇菜, 火锅,烧烤, 拉美烧烤;

5) 海鲜:闽菜,浙菜,台湾菜,海鲜,日本料理,寿司,日式自助;

6) 淡:料理,闽菜,浙菜,苏菜,本帮菜,台湾菜, 江浙菜,日本料理,韩国料理,寿司,日式自助。

考虑到持卡人如果喜欢一个口味,就会经常去消费,因此,应该优先以消费次数而不是消费金额作为衡量持卡人青睐口味的标准。

对于每一个持卡人,每一次餐饮消费的菜系进行口味划分,不同口味的消费次数进行累加,计算出持卡人不同口味消费次数,找出消费次数最多的口味作为持卡人青睐口味。

1.4 就餐人群

就餐人群分为爱吃中餐、爱吃西餐、爱吃料理、爱吃东南亚菜、工作餐、爱吃零食六种,以51个菜系为基础,进行就餐人群划分,具体分类结果如下:

1) 爱吃中餐: 鲁菜,川菜,粤菜,闽菜,苏菜,浙菜,湘菜,徽菜,本帮菜,赣菜,鄂菜,晋菜,桂菜,北京菜,豫菜,黔菜,滇菜,西北菜,台湾菜,清真菜,客家菜,火锅,自助餐,东北菜,江浙菜;

2) 爱吃西餐:披萨,牛排,意大利菜,法国菜,德国菜,俄罗斯菜,拉美烧烤,中东料理;

3) 爱吃料理:日本料理,韩国料理,日式烧烤,寿司,日式自助;

4) 爱吃东南亚菜:东南亚菜,泰国菜,越南菜,印度菜,菲律宾菜,印尼菜;

5) 工作餐:中式快餐,西式快餐;

6) 爱吃零食:小吃,冰淇淋,甜点饮品。

与口味类似,持卡人如果喜欢吃西餐或料理,就会经常去消费,因此,应该优先以消费次数而不是消费金额作为评定持卡人属于哪一个就餐人群。

对于每一个持卡人,每一次消费的菜系进行就餐人群划分,不同就餐人群的消费次数进行累加,计算出持卡人在不同就餐人群的消费次数,找出消费次数最多的人群作为持卡人所属就餐人群。

1.5 就餐档次

大众点评网餐饮人均消费分为五个档次,根据每次就餐2~3人规模,计算出五个就餐档次,具体如下:

1) Level1: <100

2) Level2: [100, 160)

3) Level3: [160, 240)

4) Level4: [240, 400)

5) Level5: >=400

对于每一个持卡人,统计一年内在餐饮上的消费金额、消费次数,次均消费金额等于消费金额除以消费次数。如果消费次数小于2,则就餐档次为1挡;如果消费次数大于等于2,则找出次均消费金额属于五个档次中的哪一挡,既是持卡人就餐档次。

1.6 就餐时间

我们从两个方面对就餐时间进行划分,一是按照是否工作时间就餐进行划分,二是按照早中晚餐进行划分,具体如表1。

对于每一个持卡人,每一次餐饮消费时间进行就餐时间划分,对消费金额和消费次数进行累加,得出持卡人在不同就餐时间的消费金额和消费次数分布。

根据持卡人就餐时间分布,优先以消费次数而不是消费金额,找出持卡人最爱外出就餐时间。

2 标签实现

银联数据只能识别商户是否为餐饮类,而无法细化到商户到底是中餐馆还是西餐馆等详细的菜系划分。因此,我们需要借助外部数据,补充银联商户信息,并与银联交易数据相结合,形成持卡人餐饮标签基础数据,在此基础上,对持卡人餐饮具体标签进行细化分析,如图1所示。

2.1 外部数据

百度地图的餐饮数据不能直接与银联数据相结合,需要经过分类、下载、提取、分词、清洗等预处理过程,才能为我们所使用,具体处理流程如图1所示。百度地图Place API是一套免费使用的API接口[4],调用次数限制为10万次/天。ak是API请求串的必填参数,请先获取密钥,若无百度账号则首先需要注册百度账号。

以下是一个关于Place API的简单示例,设置检索城市为上海,检索关键字为“火锅”,检索后返回20条符合条件的json格式的POI数据。

http://api.map.baidu.com/place/v2/search? q=火锅&region=上海&output=json&page_num=0&page_size=20&scope=2&ak=L5zwYVyvhzw5MkHbkuqmIzDi

组成说明:

1) 域名:api.map.baidu.com

2) 服务名:place

3) 服务版本号:较之前版本,v2版本新增参数。

4) Place方法名:如search表示区域POI查询,q表示检索关键字,region表示检索城市,output表示输出格式为jason,page_num表示分页页码, page_size表示每页返回记录数量,scope表示检索结果详细程度,ak表示用户的访问密钥。

根据上述Place API接口,使用java编写了一个http请求程序,不同菜系中文名称作为关键字进行检索,返回jason格式的餐馆详细信息,主要包括餐馆名称、经纬度、具体地址、联系电话、菜系分类、客户评价信息等,返回的jason数据以文件的形式保存到本地。

从百度地图获取的餐饮数据包含了很多信息,但我们只需要其中的餐馆名称。通过字符串拆分、截断等技术提取含有餐馆名称的字段,存放在菜系文件中。

使用Python语言编写一个分词脚本,引入结巴中文分词模块[5],所有51个菜系的餐馆名称文件,逐一遍历,对餐馆名称进行分词,分词后的教育期刊网 http://www.jyqkw.com
关键词 ,存放在对应菜系的分词文件中。

分词后的教育期刊网 http://www.jyqkw.com
关键词 ,我们发现有很多无用符号,如“、”“-”“‘”“~”“+”“.”“\\”“\n”“?”“?”“@”“!”等,一些通用词语,如“精品”“批发”“烟草”“有限公司”“特色”“公司”“食品”“超市”“各类”“餐饮”“食”等,以及道路、街道、地区、小区、学校、商场等名称。上述教育期刊网 http://www.jyqkw.com
关键词 在各个菜系的分词文件中均有出现,导致不同菜系的教育期刊网 http://www.jyqkw.com
关键词 区分度下降,因此,需要对分词后的所有菜系的教育期刊网 http://www.jyqkw.com
关键词 进行清洗。

清洗工作分两个部分进行,首先建立一个过滤数组,将无用符号、通用词语、道路、街道、地区、小区、学校、商场等名称放入过滤数组,然后对所有菜系的分词文件进行遍历,将分词文件中含有过滤数组的教育期刊网 http://www.jyqkw.com
关键词 进行剔除,并剔除包含“店”“路”“银行”“医院”“大学”以及长度为1的教育期刊网 http://www.jyqkw.com
关键词 。过滤后的教育期刊网 http://www.jyqkw.com
关键词 ,存入对应菜系的教育期刊网 http://www.jyqkw.com
关键词 文件中。

2.2 基础数据

百度地图餐饮数据经过分类、下载、提取、分词、清洗等数据预处理后,与银联交易数据相结合,丰富了银联餐饮信息。

首先,从银联交易数据中获取餐饮行业商户列表,根据商户名称,利用百度地图不同菜系的教育期刊网 http://www.jyqkw.com
关键词 数据,对银联餐饮商户进行菜系划分,然后持卡人餐饮消费记录与增加了菜系划分的银联餐饮商户进行合并,形成持卡人餐饮标签基础数据,具体流程如图2所示。

以上海地区2014年银联交易数据为样本,提取餐饮商户信息,包括商户号、商户名称,形成银联餐饮商户表,经统计,共有银联餐饮商户31308家。通过百度地图餐饮数据覆盖的银联餐饮商户有14 962家,商户覆盖率47.8%。抽取100个经过菜系划分的银联餐饮商户进行分析,经过手工验证,商户的菜系划分准确率68%。

上海餐饮消费总卡数为15 947 927个,百度地图餐饮数据覆盖的银联上海就餐持卡人个数为13 393 809个,持卡人覆盖率84.0%。

2.3 标签实现

以持卡人餐饮标签基础数据作为源数据,实现持卡人六个餐饮标签设计,并对部分餐饮标签数据进行统计,统计结果如下:

以持卡人青睐口味表为源数据,对上海地区2014年持卡人青睐口味进行统计,具体结果如表2所示。

以持卡人就餐人群表为基础,对上海地区2014年六个就餐人群进行统计,具体结果如表3所示。

持卡人就餐档次表为基础,对上海地区2014年五个就餐档次进行统计,具体结果如表4所示。

此外,我们统计了2014年餐饮消费次数大于等于12次,就餐等级为level5的持卡人数,结果为354 380人,占全部就餐人群2.22%,可以看出,平均每个月都外出就餐,次均消费金额大于400元的就餐人群非常之少。以持卡人就餐时间表为基础,对上海地区2014年最爱外出就餐时间进行统计,具体结果如表5所示。

3 结论

持卡人餐饮标签有三个创新点,具体如下:

一是引入百度地图餐饮数据,收集不同菜系的餐馆名称,对餐馆名进行分词、清洗,分词形成的教育期刊网 http://www.jyqkw.com
关键词 组作为不同菜系的划分标准。

二是利用百度菜系的教育期刊网 http://www.jyqkw.com
关键词 组,判断银联餐饮商户所属菜系,形成银联餐饮商户的菜系标签。

三是根据不同菜系的口味特点,总结出酸、甜、辣、咸、海鲜、淡六种口味,根据持卡人日常就餐消费情况,计算出持卡人的青睐口味。

教育期刊网 http://www.jyqkw.com
参考文献

[1]百度地图. 菜系分类. http://map.baidu.com.

[2]大众点评. 菜系分类. http://www.dianping.com.

[3]百度百科. 中国菜系.http://baike.baidu.com/link?url=kebqqDG7Aib4Bm0GoSfRxSZIuliirPN6R4jB7QGceL-0_UNfvqGwtbf-nhsPYyueJlLwmXgTfuJAh5Sx3faka.

[4]百度. Place API开发指南.http://developer.baidu.com/map/index.php?title=webapi/guide/webservice-placeapi.

[5]GitHub. 结巴中文分词.http://www.iteye.com/news/26184-jieba.