首页> 中国专利> 基于分布式的B2B平台的个性化推荐方法与系统

基于分布式的B2B平台的个性化推荐方法与系统

摘要

本专利公开了一种基于分布式技术的Hadoop平台上的B2B平台的个性化推荐方法及系统。首先,发明基于Hadoop的分布式存储技术,对各种数据如网站日志文件、产品信息、用户信息等进行集中放置、存储和查询,快速高效的处理数据。其次,使用Hadoop平台下的Hive服务对数据进行预处理,使用Map/Reduce实现高效、快速的实现推荐算法。之后,使用Map/Reduce实现对文本信息进行信息检索、文本挖掘工作,匹配用户对询盘、采购所需要的产品信息,获得个性化推荐信息。最后,使用Hadoop平台下的HBase服务提供大数据存储、查询,提升网站推荐用户响应。

著录项

  • 公开/公告号CN103886487A

    专利类型发明专利

  • 公开/公告日2014-06-25

    原文格式PDF

  • 申请/专利权人 焦点科技股份有限公司;

    申请/专利号CN201410122599.6

  • 发明设计人 肖洁芩;徐晓冬;房鹏展;

    申请日2014-03-28

  • 分类号G06Q30/02(20120101);G06F17/30(20060101);

  • 代理机构32207 南京知识律师事务所;

  • 代理人张苏沛

  • 地址 210061 江苏省南京市高新区星火路软件大厦A座12楼

  • 入库时间 2024-02-20 00:20:11

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-01-27

    授权

    授权

  • 2014-07-16

    实质审查的生效 IPC(主分类):G06Q30/02 申请日:20140328

    实质审查的生效

  • 2014-06-25

    公开

    公开

说明书

技术领域

本发明涉及电子商务和数据挖掘领域,具体地说是面向B2B电子商务环境的 一种基于分布式的个性化推荐方法,针对B2B电子商务承载海量数据的特点, 利用Hadoop分布式架构存储记录用户行为和产品信息,并使用其实现快速、高 效的B2B电子商务个性化推荐服务。

背景技术

随着Internet的迅猛发展,电子商务对企业与个人的生产与生活都带来了深 远的影响,伴随着互联网电子商务时代到来的是快速增长的数据,大量的信息发 布,琳琅满目的信息、繁杂的商品类别,使用户在对自己需求相对不明确时,很 难在搜索引擎中搜索自己需要的信息,进一步,用户需要更加符合个人兴趣与爱 好的搜索结果就更加困难。

此时推荐引擎应运而生,用户获得信息结果的方式从单一的目标关键词搜索, 转换到更符合个人使用习惯、更符合个人兴趣喜好的信息发现过程。根据推荐引 擎是否为不同用户推荐不同产品,可以将推荐引擎分为大众行为推荐与个性化推 荐,这里所提到的推荐更多的是个性化的推荐。

专利“一种网络商品个性化推荐方法及系统”(专利申请号 CN201310310951.4),使用用户历史购买商品行为,利用协同过滤方法进行个性 化推荐,用户偏好主要使用用户的购买商品的行为获得。但对于大多数B2B网 站是没有用户交易数据的;B2C因用户需要购买商品,用户会经常性的登录网站, 使得对用户的身份识别较容易,用户的身份明确后才可获得他的历史网站行为情 况,B2B网站用户可以在不登录网站的情况下完成所有的采购行为,身份的识别 却成为难点。

个性化推荐被广泛应用于各大B2C电子商务网站,Amazon、eBay、当当网、 淘宝等,但是B2B平台的个性化推荐面临着更多,更大的难题,如买家身份难 以识别,买家行为数据时间跨度长,总量大等,使用主流的基于B2C平台的推 荐策略已经无法满足B2B个性化推荐性能需要。

面对以上提出的推荐性能、推荐策略的不足,本专利利用Hadoop分布式架 构在处理海量数据方面具有显著优势,使用分布式技术来有效解决推荐中的大数 据存储、大运算量等多种大数据问题,包括提高服务质量的同时降低运维、设备 成本,分布式存储技术以及并行处理框架技术能够有效弥补现有推荐系统中数据 预处理、算法运行、查询检索过慢的缺陷,从而极大地提高推荐系统的效率。

针对B2B电子商务平台服务特点,针对不同类型的大数据采用不同处理技 术,最大程度识别买家的身份,为个性化推荐提供数据的保证,并提出混合的推 荐算法,使其更好的应用于B2B不同的应用场景,提高网站用户体验。

综上所诉,本专利设计了一种基于分布式技术的Hadoop平台上的B2B平台 的个性化推荐方法及系统。

发明内容

本发明在Hadoop框架的基础上实现了高效的B2B电子商务个性化推荐系统。 首先,发明基于Hadoop的分布式存储技术,对各种数据如网站日志文件、产品 信息、用户信息等进行集中放置、存储和查询,快速高效的处理数据。其次,使 用Hadoop平台下的Hive服务对数据进行预处理,使用Map/Reduce实现高效、 快速的实现推荐算法。之后,使用Map/Reduce实现对文本信息进行信息检索、 文本挖掘工作,匹配用户对询盘、采购所需要的产品信息,获得个性化推荐信息。 最后,使用Hadoop平台下的HBase服务提供大数据存储、查询,提升网站推荐 用户响应。

本发明是一种B2B电子商务环境下基于分布式处理的个性化推荐方法,包 括:

步骤1:形成买家身份知识库以及买家偏好知识库,存储在分布式数据仓库 Hive中。针对B2B平台的特点,采集买家在电子商务平台各类型行为数据,数 据来源大致有以下三种:

1)网络日志;

2)买家客服运营数据;

3)线下交易会买家身份数据及偏好。

对不同数据源的数据,包括文本数据网络日志,买家客服维护操作的运营数 据,以及人工录入或移动端采集的线下酒会、展会等获得的买家信息及其采购需 求数据,根据其特点进行不同方式的处理。

步骤1包括以下几个环节:

a)对业务系统数据中的买家客服运营信息,包含邮件、电话回访记录、邮件 营销反馈结果、用户调研问卷等,清洗关联这些相关信息,并将处理结果存入 Oracle关系型数据仓库中。

b)对网站日志使用分布式技术Map/Reduce进行解析和计算,获得用户行为 数据,包括用户点击了哪些产品,用户询盘了哪些产品等信息,汇总统计,为后 面推荐算法的计算提供数据准备,存入分布式数据仓库Hive中。

c)对于线下活动产生的移动端数据(通过平板电脑和手机收集的信息数据)、 名片等数据,采用ETL工具将数据清洗、整合后,存储到Oracle关系型数据库 中。

d)采用Hadoop平台的Sqoop工具,将Oracle的数据加载到Hive数据库中, 通过ETL把用户的身份信息(Email、电话、公司ID、访问IP、访问Cookie) 进行关联,形成网站买家身份知识库。

e)在Hive中整合买家的多种信息,最后形成网站买家偏好知识库。其数据 来源包括:

●在网站上的浏览、搜索、询盘记录;

●客服与买家沟通形成的买家偏好信息记录;

●买家在展会现场移动端留下的包含偏好信息的记录。

网站买家身份知识库和网站买家偏好知识库都存在分布式数据仓库Hive中。 这两个知识库为后续的推荐算法提供所需要的计算数据。

步骤2:利用获得的买家身份知识库与买家偏好知识库中的数据,通过 Map/Reduce实现推荐算法的处理,进行个性化推荐方法的实施,本方法实现了 在多个场景下的个性化推荐,其中场景包括首页、目录页、询盘完成页、产品页。

a)当用户访问首页阶段,在确定用户身份信息后,根据买家偏好知识库中的 用户历史行为数据,使用协同过滤与基于内容算法相结合的推荐方法,推荐相关 产品。

b)在用户访问目录页阶段,在目录页依据统计分析方法获得行业的热门产品 推荐,其中,热门产品根据统计每个行业内被买家最多点击与询盘的产品获得;

c)在用户完成询盘阶段,使用协同过滤与基于内容算法相结合的推荐方法, 推荐相关产品;

d)在用户访问产品页阶段,使用协同过滤与基于内容的推荐方法,推荐用户 相关产品。

最终实现网站各页面不同的并行化的推荐,满足用户在各浏览询价阶段对产 品的不同需求,推荐方法计算所得结果存入到分布式数据仓库Hive中;

步骤3:将Hive数据仓库中的用户身份知识库、用户偏好知识库,以及推荐 结果,通过ETL进行数据模型的重构,转变为HBase面向列的分布式存储,然 后加载到Hadoop平台中的NoSQL数据库HBase中,HBase在海量数据的情况 下,提供给B2B电子商务访问者在线高效的数据检索性能。

步骤4:用户推荐结果的显示策略可分为以下几个步骤:

a)用户在网站进行活动时,系统获取用户的Cookie、IP、Email等信息,利 用HBase分布式高写入的特性,将数据写入到HBase中,通过不同场景的特点, 关联到用户身份。

b)根据识别后的用户身份,如果此用户是具有历史行为的老用户,推荐系统 中已经计算好此用户的推荐产品,将计算好的用户推荐产品列表反馈到网页的推 荐位置即可。

c)如果用户为新用户时,由于缺少其历史行为数据,这时系统反馈无用户信 息,将返回某些行业的热门产品。

基于分布式的B2B平台个性化推荐系统包含了如下模块:数据源模块;分 布式计算模块;分布式数据仓库模块;数据转换加载模块;分布式列式存储模块; 推荐显示模块。

其中,数据源模块之后连接分布式计算模块;将分布式计算模块获得的数据 存入分布式数据仓库模块;之后进入数据转换加载模块;将变换后的数据存入分 布式列式存储模块;最后形成的推荐列表在推荐显示模块中进行展现。

所述数据源模块,用于记录用户访问网站时留下的行为身份数据,作为整个 推荐系统的数据来源,来自于业务系统、文本文件或其它获取途径。

所述分布式计算模块,对数据源中基础数据进行清洗、关联等处理,最终存 放到Hive中。其中包括2个子模块:身份识别计算子模块、数据挖掘计算子模 块。对各数据源获得的用户数据,包括网络日志、运营数据、线下推广数据,作 为输入数据,输入到身份识别计算子模块和数据挖掘计算子模块,获得买家身份 知识库、买家偏好知识库、用户产品推荐列表。其中,身份识别子模块,用于将 用户在网站、运营、线下产生的身份相关信息进行识别,将不同来源的身份信息 进行合并,关联,定位用户身份,从而更精确的了解用户的历史行为。所述数据 挖掘计算子模块,使用各数据源获得的数据,形成买家偏好库,通过分布式挖掘 计算技术,实现设计的数据挖掘算法,提供推荐产品。

所述分布式数据仓库模块,用于把业务系统、文本文件或其它获取途径获取 的数据预处理后,获得的包含有存储身份识别信息、买家偏好信息和推荐结果信 息,利用分布式技术将这些处理后的数据进行存储。

所述数据转换加载模块,此模块可以将不同数据结构的数据库里的数据进行 数据的交换,此模块实现了数据结构的重构,数据的整理等。

所述分布式列式存储模块,此模块利用分布式技术,实现了列式存储的数据 库功能,此模块对于在线情况发生的高速读和高速写有着很好的支持,提高了系 统对用户操作的推荐响应性能。

所述推荐显示模块,此模块根据不同的场景提供给用户不用的推荐产品,并 把每次用户对于推荐产品的反应反馈到数据仓库中。

有益效果:本发明与现有个性化推荐方法相比,具有以下优点:

1.针对B2B平台买家行为的特性,利用各类型数据,通过关联方式识别买家 身份,并分析买家的偏好,极大的提高了B2B平台中个性化推荐的准确性;

2.针对电子商务交易流程的不同阶段,设计符合各阶段特点的个性化推荐方 法,满足用户在各交易阶段对产品的不同需求,使推荐结果更具针对性;

3.采用分布式平台Hadoop提供的各类工具的组合应用,获得分布式的高性 能的同时,更能与数据挖掘的深度计算相结合,使此推荐系统在性能与准确度上 都获得提升;

4、在离线环境中,存储在Hive中的用户身份信息和推荐结构,通过存储模 式转换,加载到在线环境中的HBase中,解决离线环境中的复杂数据计算和在 线环境中的高速读与高速写的需求。

附图说明

图1为本发明实施例推荐系统流程示意图。

图2为本发明实施例推荐系统结构示意图。

图3为本发明实施例身份识别示意图。

图4为本发明实施例数据挖掘结构示意图。

具体实施方式

以下结合附图和具体实施例对本发明作进一步详细说明。

参阅图1,基于分布式的B2B电子商务平台的个性化推荐系统流程,包括:

步骤100,主要采集网络日志、买家客服运营数据、线下交易买家身份数据。 网络日志主要为用户在网站上的行为记录;买家客服运营信息主要包括邮件、电 话回访记录、邮件营销反馈结果、用户调研问卷等;线下交易买家身份数据主要 包括线下活动产生的移动端数据(通过平板电脑和手机收集的信息数据)、名片 数据等。

步骤101,将不同的数据源,通过数据清洗、转换、关联等过程后,分别加 载到对应的数据仓库中。

a)将业务系统数据中的买家客服运营信息,包含邮件、电话回访记录、邮件 营销反馈结果、用户调研问卷等,清洗后,关联这些相关信息,将处理结果存入 Oracle关系型数据仓库中。

b)对网站日志使用分布式技术Map/Reduce进行解析和计算,获得用户行为 数据,进行汇总统计,为后面推荐算法的计算提供数据准备,存入分布式数据仓 库Hive中。

c)对于线下活动产生的移动端数据、名片数据等数据,采用ETL工具将数 据清洗整合到Oracle关系型数据库中。

步骤102,身份识别利用Hadoop的分布式计算技术,将用户在B2B网站、 运营、线下等场景产生的身份信息进行汇总、关联,从而得到在不同场景下的用 户的身份信息,通过不同的用户身份识别强度,可以将用户身份信息与用户历史 行为进行关联。从而解决了在B2B环境中,买家无注册,无登陆行为所带来的 无法检索买家历史行为的问题。

步骤103,推荐算法集成了主流的协同过滤算法、基于内容的推荐算法、统 计分析推荐算法,并根据B2B平台独有的特点,引入了B2B电子商务平台中的 产品属性、供应商信用等指标参数。在在线模式下,根据用户的身份信息,和场 景下的身份关联强度要求,采用上述算法混合得到推荐结果,并根据用户的被推 荐行为效果,动态的调整混合算法的权重。

步骤104,本系统在Hadoop平台中使用了两种数据库产品,Hive和Hbase, Hive是一种基于分布式技术实现的数据仓库产品,它的数据结构与传统的关系 型数据库(比如Oracle)是一致的。HBase是一种基于分布式技术实现的一种列 式存储的NoSQL数据库产品,所以在离线环境中,存储在Hive中的用户身份信 息和推荐结构,需要加载到在线环境中的HBase中,存储模式转换模块的作用 就是将两种不同存储结构的数据进行相互的转化,以应对离线环境中的复杂数据 计算和在线环境中的高速读与高速写的需求。

步骤105,通过在线环境下用户身份与访问场景的不同,根据预先设定好的 推荐策略(详细策略参考步骤407),系统调整不同推荐算法的权重,把身份信 息与算法权重写入HBase中。根据这些参数,动态的将离线状态下推荐算法计 算好的推荐结果推送到显示模块。

参阅图2,本发明是一种B2B电子商务环境下基于分布式处理的个性化推荐 方法及系统,包括以下模块:数据源模块、分布式计算模块、分布式数据仓库模 块、数据转换加载模块、分布式列式存储模块、推荐显示模块。其中,数据源模 块之后连接分布式计算模块;将分布式计算模块获得的数据存入分布式数据仓库 模块;之后进入数据转换加载模块;将变换后的数据存入分布式列式存储模块; 最后形成的推荐列表在推荐显示模块中进行展现。

数据源模块,集成了用户在进行B2B商务活动的所有的信息数据,作为整个 推荐系统的数据来源以及推荐依据,数据源模块的数据来自于业务系统、文本文 件,网络日志或其它途径采集的数据。

分布式计算模块,采用主流的Map/Reduce来对数据源中基础数据进行分布 式的处理,包含清洗、重构、匹配、关联等处理,最终将结果存放到Hive中。 对于不用的算法需求,分为2个子模块:身份识别计算子模块、数据挖掘计算子 模块。所述身份识别子模块,将用户在网站,运营,线下产生的身份相关信息进 行识别,将不同来源的身份信息进行合并,关联,定位用户身份,从而更精确的 了解用户的历史行为。所述数据挖掘计算子模块,使用各数据源获得的数据,形 成买家偏好知识库,利用分布式挖掘计算技术,实现设计的数据挖掘算法,提供 用户产品推荐,解决了传统数据挖掘中,算法的复杂性和数据的规模之间的矛盾, 可以在保证数据挖掘算法的完整情况下,实现大数据的分析。

分布式数据仓库模块,存储离线状态下的所有数据,用于把业务系统、文本 文件或其它获取途径获取的数据预处理后,获得的包含有存储身份识别信息、买 家偏好信息和推荐结果信息,利用分布式技术将这些处理后的数据进行存储。此 模块提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行ETL 的操作,此模块解决了大数据情况下,数据的存储成本和计算效率的问题。

数据转换加载模块,可以将不同数据结构的数据库里的数据进行数据的交换, 此模块实现了大数据情况下的数据的重构,数据的加载等数据转换功能。

分布式列式存储模块,利用分布式技术,实现了列式存储的数据库功能,此 模块对于在线情况发生的高速读和高速写有着很好的支持,提高了用户体验。

推荐显示模块,根据不同的场景提供给用户不用的推荐产品,并把每次用户 对于推荐产品的反应反馈到数据仓库中。

参阅图3,本发明实施例的买家身份识别及行为关联的流程,利用分布式计 算技术,形成买家身份知识库,具体步骤为:

步骤300:从各个数据源获取数据,一部分结构化数据通过各个业务系统收 集,通过ETL进行初步汇总,存储在关系型数据库中。包括登陆行为、询盘行 为、服务买家行为、移动端数据、名片录入信息。

步骤301:从网络日志中提取买家的网站行为以及买家的身份信息,存入到 分布式数据仓库Hive中。

步骤302:从询盘信息表中提取询盘内容信息,包括需要采购产品的行业, 产品关键词,产品名称等相关产品属性进行统计,记录为买家的偏好,联合Email 信息存入到Hive中。

步骤303:将关系型数据仓库的数据通过Hadoop的Sqoop加载到Hive中, 然后将以上三个步骤的用户身份、行为数据进行关联整合,形成用户的身份、行 为数据宽表。

步骤304:在B2B在线情况下,访问用户现有的身份信息,如Cookie、IP 或Email等,可以快速的从身份知识库中关联到完整的用户身份信息,关联步骤 303中获得的用户身份、行为数据宽表,可获得用户历史的行为数据及偏好。

参阅图4,本发明实施例的分布式挖掘流程,基于形成的买家身份知识库与 买家偏好知识库,利用协同过滤与基于内容算法相结合的推荐方法,推荐相关产 品,具体步骤:

步骤401:从数据源获取的网站产品信息数据加载到Hive中与买家偏好知 识库中偏好信息进行关联,形成用户产品宽表,内容包括用户信息、产品信息、 询盘信息、采购信息、用户行为等,表结构详细为如下字段:产品编号、产品卖 家、产品名称、产品关键字、产品状态、产品目录、生产地区、产品卖家等级、 产品点击量、产品询盘量、产品采购量、浏览产品买家编号。

步骤402:在用户产品宽表的基础上,获得用户产品评分矩阵。用户对产品 的评分是用户对产品喜好的量化处理。用户喜好分显性兴趣度与隐性兴趣度两种 兴趣度加权累加获得用户对产品的评分,显性兴趣度使用用户询盘量获得,隐性 兴趣度使用用户对产品的浏览量获得。

之后使用Jaccard度量两个用户行为相似度action_sim(u,v)的基础上加入每 个产品i赋予的惩罚处理因子因为考虑到用户关注产品的曲线符合 长尾分布,其中interest(i)表示喜欢产品i的用户个数。简单地说,就是产品越 热门,对用户行为相似度贡献越少。最终得到用户行为数据相似度度量方法为:

Action_sim(u,v)=ΣiAction(u)Action(v)(e1interest(i)-1)|Action(u)Actinon(v)|

其中u,v为用户,i为产品,Action(u)表示用户u所喜欢的产品集合, Action(v)表示用户v所喜欢产品集合,interest(i)表示喜欢产品i的用户个数。

网站用户和产品数目庞大,两个用户之间选择产品的重叠性会变得非常小, 这样就导致数据集过于稀疏,为降低稀疏度带来的影响,使用步骤403加入用户 偏好产品相似度计算,缓解数据稀疏这一缺陷。

步骤403:计算产品相似度,已知两个用户内容数据u(Content(keyword1, keyword2,keyword3,…keywordk,..)),v(Content(keyword1,keyword2,keyword3,… keywordk,..)),考虑到标签的热度,相似性公式为:

content_sim(u,v)=ΣtContent(u)Content(v)(e1interest(i)-1)|Content(u)Content(v)|

其中Content(u)为用户u标签集合,Content(v)为用户v的标签集合,interest(i) 表示打过标签i用户个数,keywordk指标签,这里使用每个产品的多个关键词作 为产品的多个标签。

步骤404:最终用户的相似性为用户行为相似性和产品内容相似性的加权平 均,弥补数据过于稀疏的缺点。

sim(u,v)=βAction_sim(u,v)+(1-β)Content_sim(u,v)

其中β为参数因子,称推荐系数,取值范围为[0,1]。

步骤405:使用步骤402获得的用户产品矩阵,利用以下公式:

Pu,i=Ru+Σsim(u,v)×(Rn,i-Rn)Σ|sim(u,v)|

计算产品的预测评分,sim(u,v)为用户u和用户v的相似度,Rn,i为最近邻 集中的用户n对产品i的评分,分别为用户u和用户n对产品的平均 评分,这样为用户计算推荐产品。

步骤406:将买家身份知识库和个性化挖掘算法的结果加载到分布式列式数 据库HBase中,并将买家身份信息与推荐结果进行数据结构的重新调整,按照 HBase数据库设计要求的Key/Value数据模型重构数据,形成列式存储,以达到 在线快速查询的目的。

步骤407:在线推荐情景下,分别根据用户在网站的不同行为所能获取的用 户身份,把用户分为以下几个身份等级:

●0级,用户没有登录、询盘。身份信息为:Cookie、IP。

●1级,用户发送询盘或者用户注册,身份信息为:Email或者公司标 识号com_id。

●2级,用户登录状态下发送询盘,身份信息为:公司标识号com_id 和Email。

●3级,网站运营覆盖用户,身份信息为:公司名称、地址、业务范围、 意向卖家。

等级越高,身份信息越丰富,偏好越明确,相对的推荐就越简单,推荐的结 果就更加准确,所以本系统所有的推荐场景首先考虑的是用户身份的等级,之后 考虑的才是功能页面。

获取用户身份信息,根据用户身份知识库关联获取用户的所有身份,确定用 户的身份等级,根据不用的等级,将用户偏好的数据进行权重的调整,将这一系 列参数加载到HBase中进行数据的检索、排序,快速获取用户的推荐结果,整 个过程可以控制在毫秒级别。

以上所述仅为本发明专利的一种实施例而已,并不用以限制本发明专利,凡在本 发明专利的精神和原则之内所作的任何修改、等同替换和改进等,均以包含在本 发明专利的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号