CN106528812B - 一种基于usdr模型的云推荐方法 - Google Patents
一种基于usdr模型的云推荐方法 Download PDFInfo
- Publication number
- CN106528812B CN106528812B CN201611015525.8A CN201611015525A CN106528812B CN 106528812 B CN106528812 B CN 106528812B CN 201611015525 A CN201611015525 A CN 201611015525A CN 106528812 B CN106528812 B CN 106528812B
- Authority
- CN
- China
- Prior art keywords
- user
- data
- similarity
- preference
- formula
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于USDR模型的云推荐方法,包括如下步骤:第一步:USDR数据模型建模,过程如下:1.1用户数据模型建模,用户数据基本划分为六类:用户基本数据、时间数据、地点数据、环境数据、用户偏好数据和历史数据;1.2系统数据模型建模,系统数据模型包括:基础数据、功能数据和其他数据。第二步:基于USDR模型的云推荐方法,过程如下:2.1基于用户的云推荐方法;2.2基于系统的云推荐方法;第三步:采用基于USDR模型的云推荐算法得出用户推荐度列表。本发明采用面向多源异构数据的USDR模型,通过将用户数据和系统数据分类来快速得到用户和系统的不同推荐度,以实现云环境下数据的高效推荐。
Description
技术领域
本发明涉及到一种基于USDR模型的云推荐方法
背景技术
Web在科技的进步和信息的更新交替中进入了“2.0时代”,同时由于各种信息更新速度的加快,互联网的数据资源也同步进入了大数据云时代,在某种程度上,网络垃圾和无效资源也越来越多,当普通用户想要寻找某种有用的资源时,如何在海量数据中筛选出特定的资源变成一个急需解决的问题。
在云环境中,对于云数据的统一建模一直是研究热点。对于部署在云端的各类信息推荐系统,其数据结构是多源且异构的,因此用户对数据灵活性和安全性的要求更高。随着数据信息技术的不断发展,网络更新逐步加快,数据的更新也越来越快,因此,在云环境中,如何从海量信息中快速帮助用户获取偏好的信息数据一直是一个研究热点。
国内外学者和研究机构从不同的视角对Web数据和推荐方法进行了研究。
从RSS推荐技术方向出发的代表性工作主要有:上海大学的陈锋等对信息服务资源进行聚合需求分析,提出了一种基于RSS推送技术的信息服务内容聚合服务方式;东京工业大学计算机科学系的Hao Han等在RSS推送的基础上构造网络新闻文章内容自动提取系统,可以从新闻网页中提取对用户有价值的文章内容。
其次,协同过滤推送是目前主要使用的推送方式之一,协同过滤推送不仅可以实现信息的推送,而且可以根据用户的兴趣实现个性化推送。目前对协同过滤推送技术研究中具有代表性的有:大连理工大学系统工程研究所的郭艳红等人提出了一种基于稀疏矩阵的个性化改进策略,能够避免用户之间相似度不密切的关系,提高了矩阵在稀疏情况的预测准确度。合肥工业大学管理学院的李聪、梁昌勇等人提出了基于领域最邻近的协同过滤推荐算法,是数据的稀疏性得到了降低,提高了推荐准确性。
从数据传输方向出发的代表性工作主要是中国海洋大学应用数学系的YangWang,马杜赖卡玛拉大学物理系的Bharadwaj Veeravalli设计了一种分阶段获取云端分享数据的算法,能够有效的控制数据的传输成本。国内电子科技大学计算机科学与工程系的许福龙,刘明等人进一步提出了一种基于相对距离感知的动态数据传输策略,采用传感器节点到汇聚点的相对距离来计算节点传输概率的大小,并以此作为消息传输时选择下一跳的依据。
但以上方法都只是通过单一修改推送方式或推荐算法而实现内容的推荐,并侧重于对传统推送方式的技术改良,但并不能有效解决面向多源异构数据的云环境下用户的个性化推荐问题。一种理想的云推荐方法应该考虑推送多源异构数据时遇到的效率低,实时性差等问题,并能从用户基础属性和偏好属性出发,来推送数据,以满足用户个性化需求。
发明内容
为了克服现有推送方式的无法解决面向多源异构数据的云环境下用户的个性化推荐问题的不足,本发明针对云环境下多源异构数据的特征,综合移动互联网安全性和隐私性等特点,本发明提供一种有效解决解决面向多源异构数据的云环境下用户的个性化推荐问题的基于USDR模型的云推荐方法,采用面向多源异构数据的USDR(User System DataRelationship)模型,通过将用户数据和系统数据分类来快速得到用户和系统的不同推荐度,以实现云环境下数据的高效推荐。
本发明所采用的技术方案是:
一种基于USDR模型的云推荐方法,包括如下步骤:
第一步:USDR数据模型建模,过程如下:
用户数据分为用户基础数据、时间数据、地点数据、用户偏好数据和历史数据;
系统数据分为服务类型数据、服务介绍以及这些服务的范围;这些系统中的数据结构多样,类型复杂,并且有些数据是动态变化的。USDR模型能够有效的处理这些云数据。
1.1用户数据模型建模
用户数据基本划分为六类:用户基本数据(BasicData)、时间数据(TimeData)、地点数据(LocationData)、环境数据(EnvironmentData)、用户偏好数据(PerferenceData)和历史数据(HistoryData);
1.2系统数据模型建模
系统数据模型主要元素包括:基础数据(SerBasicData)、功能数据(SerFunctionData)和其他数据(SerOtherData);
第二步:基于USDR模型的云推荐方法,过程如下:
2.1基于用户的云推荐方法
传统的推荐算法有皮尔逊相关系数法、向量余弦法、斯皮尔曼相关系数法等等,在不同的领域中,需要选取不同的相似度计算方法。由于云数据的特殊性,本发明提出了一种基于USDR模型的云推荐算法,根据用户、系统的相似值来计算推荐的系统数据。主要目的在于计算两个用户的相似度,本算法中主要使用用户行为相似度来计算用户的类似喜好。本算法又两部分组成:一部分由用户基础属性来决定用户的相似程度,通过计算,基本属性的差异越小,则相似程度越高;第二部分是偏好、位置和服务记录数据等,通过查看用户的地理位置和历史感兴趣的系统的数值,该数值越大,则用户之间的相似程度越高,最后计算总相似度。
2.1.1计算基础属性相似度
基础属性一般都是数值类型。对于数值型属性,只需要计算绝对值只差|D|=|Attr1-Attr2|。对于名称型的基础数据,一般取值类型比较单一,就可以采用二进制编码的方式来表示。最终将用户全部名称型数据编码串联起来,行成一个二进制串。
不同的数值型属性的绝对值最大与最小的差距为[α1,αn],然后把这个区间划分为n-1个相等的区间{[α1,α2],[α2,α3],...[αn-1,αn]},对每个区间给予相应的数值{0,1,2,3...n},当用户的数值型属性绝对值落在某个区间时,即可得出属性间的距离Dbnum。对于名称型属性,通过确定编码位数n,然后将每个取值通过格雷编码,然后依次链接起来,最后通过计算海明距离,得到名称型属性距离DH。定义用户A和B,每个基础属性的权重值为wi,则所有属性权重值满足
对于数值型的属性距离Dbnum,根据上面的解释,定义不同的取值区间:
若α∈[α1,α2],则dbnum=0;
若α∈[α2,α3],则dbnum=1;
若α∈[αn-1,αn],则dbnum=n-1;
数值属性的距离计算为:
对于名称型的属性距离Dbnum,则对不同的取值进行编码。将用户的全部名称属性编码串联起来,形成二进制串At;采用At的海明距离来计算用户名称属性的距离。
DH=wDhm(DbNumA,DbNamB) (3)
最终得到2个用户A与B的基础属性距离
通过差值DA-B可得出,DA-B越小,相似度则越大,DA-B越大,则相似度越小。
2.1.2计算用户偏好相似度
若给定用户u和v,N(u)表示用户u的偏好相似度集合,N(v)表示用户v的偏好相似度集合,余弦公式相似度计算公式为:
用余弦公式计算用户间两两的相似度之后,算法通过综合分析基础数据相似度和用户偏好数据相似度,再进行推荐,推荐度公式如6所示。
公式中,DA-B为基础数据的差值,N(i)表示对项目i有偏好的用户组,Re(u,l)表示存在与用户A偏好类似的用户组。wab描述用户A与用户B的相似度,ybi表示用户B对项目i的偏好程度。
2.2基于系统的云推荐方法,过程如下:
2.2.1计算系统之间的相似程度
根据余弦公式可得系统的相似度:
从余弦公式中可以看出,Num(i)表示偏好系统i的用户数量,Num(j)表示偏好系统j的用户数量,与的比值表示在偏好系统i的用户中同时也偏好系统j的比例。但是当系统j是一个所有人都偏好的系统时,任何其他系统通过公式(7)得出的结果都会很大,所以本发明中将公式(7)进行修改,如公式(8)所示:
公式(8)在分母中加入了相当于降低了系统j的权重。首先设定权重值w区间范围为[w1,wn],将[w1,wn]分割为n个小区间{[w1,w2],[w2,w3],...,[wn-1,wn]},每个区间赋值{0,1,2....,n},然后对所有系统两两比较,如果用户的偏好落在区间范围内,那么认为这些系统属于同一个领域,相似度很大,值得推荐。
2.2.2根据相似度生成系统推荐列表
首先分别将每位用户对每个系统的偏好情况用矩阵表示,得到每位用户的偏好矩阵,然后将所有用户的偏好矩阵相加,得到相似度矩阵S,S[i][j]表示同时对系统i和系统j都偏好的用户数量。
得到相似度矩阵之后,通过公式7计算用户a对系统i的推荐度:
公式9中N(u)表示当前用户的偏好集合,S(i,k)表示与系统i比较相似的K个系统的集合,wij是系统i与系统j的相似度。将该推荐度从大到小排列,采用TOP-N的方式取前N个系统推荐给用户。
第三步:采用基于USDR模型的云推荐算法得出用户推荐度列表:
通过分别计算用户和系统数据的推荐度会导致结果比较粗糙,为了使得云推荐算法更加精确,将用户数据推荐度加入到系统数据推荐度中,得出综合推荐度列表,将使推荐度的结果更加准确和方便,更加方便于下一步的云推送。使用基于USDR模型的云推荐算法得出用户推荐度列表的具体流程如下:
3.1查看用户历史记录数据表,若用户的历史数据为空,则说明为新注册用户,那么就执行步骤3.2,否则执行步骤3.5;
3.2查看用户基础数据中的关联用户列表,若有关联用户,则执行步骤3.3,若无,则执行步骤3.4;
3.3将该用户与每位关联用户分别用公式DA-B进行计算,得出相似度,查看相似度在设定的权重值内的用户,执行步骤3.4;
3.4使用公式(6)计算所有在权重值范围内的关联用户的偏好推荐度Recommenduser,加入用户推荐列表中,执行步骤3.5;
3.5使用公式(9)计算的历史数据表中每个系统的推荐度Recommendsystem,将这些系统放入推荐列表,执行步骤3.6;
3.6将步骤3.4和步骤3.5中的Recommenduser和Recommendsystem分别平方,再求和开根号得出综合推荐度:
3.7根据综合推荐度,加入到综合推荐度列表。
本发明的优点是:针对传统推送方式下用户被推荐内容经常较为相似、用户满意度低等问题。面向云环境中的数据呈现多源异构的特点,设计了基于USDR模型的云推荐方法,分别从用户和系统两边来建模以满足多系统面向不同用户的个性化云推荐功能。通过将用户数据和系统数据分类来快速得到用户和系统的不同推荐度,以实现云环境下数据的高效推荐,从而在海量信息中快速帮助用户获取偏好的信息,既能满足用户的功能性需求,同时也满足了用户的个性化需求。
附图说明
图1是用户数据模型图。
图2是成绩查询服务系统模型图。
图3是多媒体服务数据模型图。
图4是基于USDR模型运行过程示意图。
图5是基于USDR模型的云推荐算法运行流程图。
具体实施方式
下面结合附图对本发明做进一步说明。
实施例1
参照图1~图5,一种基于USDR模型的云推荐方法,包括以下步骤:
第一步:USDR数据模型建模,过程如下:
在云环境中,云数据数量庞大,种类繁多,根据系统服务种类,可以划分为数据查询服务、工资数据服务、排队服务、交通数据服务、购物信息服务、股票期货服务、多媒体数据推送服务等多种服务类型。
比如有三种股票软件都通过云平台为客户提供金融数据推送服务,但是其中一款股票软件是收费软件,数据推送响应时间更快、推送的服务更多,但价格也是同类股票软件中最高的。除了相同类型的服务中出现的情况,用户数据信息之间也存在不同,用户将会根据自己的基础信息选择不同的服务。比如交通数据服务服务中,有些用户可能上班时间比较自由,那么他们可以选择上下班高峰期过后的道路数据推送服务,而有些用户需要准时到达单位,那么推送给他们当时的路况数据,可以使他们选择在上下班高峰期避开一些拥堵路段;同样,购物信息服务中,经济条件好的用户可能比较偏好奢侈品,而经济条件一般的用户则偏好于普通实用的商品,所以在推送数据是就会一定的差异性,需要建立用户和系统的关系数据模型。
当用户请求获取一种类型的服务时,基于USDR模型的云推荐方法应该自动根据现有云环境中相同类型的系统和用户自身的数据,推送给用户最合适的服务,这样就既能满足用户的功能性需求,同时也满足了用户的个性化需求。
用户数据主要可以分为用户基础数据、时间数据、地点数据、用户偏好数据、历史数据等。
系统数据主要可以分为服务类型数据(如成绩查询服务、金融股票服务等)、服务介绍以及这些服务的范围(价格、位置)。这些系统中的数据结构多样,类型复杂,并且有些数据是动态变化的。USDR模型能够有效的处理这些云数据。
1.1用户数据模型建模
用户数据基本可以划分为六类,如表1所示:
用户基本数据(BasicData):包括用户姓名、性别、身份证、电话、出身日期、职业、毕业学校、爱好、出生地等。
时间数据(TimeData):记录用户的使用系统的时间,同时也记录用户所在的时区。
地点数据(LocationData):用于记录用户所在的位置,包括城市,工作日经常出没地点。
环境数据(EnvironmentData):记录当日天气情况,温度等。
用户偏好数据(PerferenceData):记录用户的偏好情况,如运动,电影,理财,旅游,读书等。
历史数据(HistoryData):记录用户曾经使用的系统,常用的理财,消费记录等。
表1
通过UML工具可以很清晰的看出用户各类数据之间的关系,并且通过设置主键显示出各条属性的重要程度,具体如图1所示。
系统数据服务有成绩查询服务、工资数据服务、银行排队服务、交通数据服务、酒店预订服务、股票期货服务、多媒体数据推送服务。这些系统都属于不同的领域,这些系统的数据类型复杂程度高,数量大,若不进行建模将很难进行云推送,在对系统数据进行建模之后也跟利于数据的个性化推荐云推送,本例选择具有代表性的成绩查询服务系统和多媒体数据服务系统进行系统数据模型建模。
1.2系统数据模型建模
(1)成绩查询服务系统
成绩查询服务系统主要为在校学生提供每个学期结束之后的成绩查询服务,首先最高层应该为用户的类型,为本科生、硕士研究生还是博士研究生,确定了学生类型之后需要到各个学院中查询数据,由于很多学院中的必修课是相同的,所以为了避免重复的查询接下来模型中将分为必修课和选修课以及实践活动。最终得到个门功课的成绩。最后学生得到了该门课的成绩之后,还需要对老师进行评价,如图2所示。
系统数据模型再结合用户数据模型可以看出,在用户数据模型中的用户偏好,毕业院校就可以更加精确的给用户推送推荐数据,同时这种分层的结构能使云推送更加高效。
(2)多媒体数据服务系统
多媒体数据服务相对于成绩查询服务将会复杂很多,多媒体数据服务各种系统中,可以将数据的类型分为文字数据、音频数据、视频数据、图文数据等。根据多媒体服务的不同类型和用户的偏好将分为新闻,体育,娱乐,游戏,电影等,接下来再继续对具体需要推送的数据进行分类,详情见图3。
系统数据模型主要元素包括基本数据,其他数据如表2所示:
基础数据(SerBasicData):主要是对系统服务的基本描述,包括服务提供商,服务类型,服务ID,服务名称,服务简介等数据。
功能数据(SerFunctionData):主要对服务中的功能性参数进行描述,即服务输入输出参数,服务的接口参数,最终服务执行结果等。
其他数据(SerOtherData):主要有些系统需要定位数据,天气数据等其他因素。
表2
第二步:基于USDR模型的云推荐算法,过程如下:
2.1基于用户的云推荐算法
传统的推荐算法有皮尔逊相关系数法、向量余弦法、斯皮尔曼相关系数法等等,在不同的领域中,需要选取不同的相似度计算方法。由于云数据的特殊性,本发明提出了一种基于USDR模型的云推荐算法,根据用户、系统的相似值来计算推荐的系统数据。主要目的在于计算两个用户的相似度,本算法中主要使用用户行为相似度来计算用户的类似喜好。本算法又两部分组成:一部分由用户基础属性来决定用户的相似程度,通过计算,基本属性的差异越小,则相似程度越高;第二部分是偏好、位置和服务记录数据等,通过查看用户的地理位置和历史感兴趣的系统的数值,该数值越大,则用户之间的相似程度越高,最后计算总相似度。
(1)基础属性相似度
基础属性一般都是数值类型,如性别,年龄,毕业院校等。对于数值型属性,只需要计算绝对值只差|D|=|Attr1-Attr2|。对于名称型的基础数据,一般取值类型比较单一,就可以采用二进制编码的方式来表示,比如性别:男,女,分别对应00,01。其他复杂点的以此类推。最终将用户全部名称型数据编码串联起来,行成一个二进制串。
不同的数值型属性的绝对值最大与最小的差距为[α1,αn],然后把这个区间划分为n-1个相等的区间{[α1,α2],[α2,α3],...[αn-1,αn]},对每个区间给予相应的数值{0,1,2,3...n},当用户的数值型属性绝对值落在某个区间时,即可得出属性间的距离Dbnum。对于名称型属性,通过确定编码位数n,,然后将每个取值通过格雷编码,然后依次链接起来,最后通过计算海明距离,得到名称型属性距离DH。定义用户A和B,每个基础属性的权重值为wi,则所有属性权重值满足
对于数值型的属性距离Dbnum,根据上面的解释,定义不同的取值区间:
若α∈[α1,α2],则dbnum=0;
若α∈[α2,α3],则dbnum=1;
若α∈[αn-1,αn],则dbnum=n-1;
数值属性的距离计算为:
对于名称型的属性距离Dbnum,则对不同的取值进行编码。将用户的全部名称属性编码串联起来,形成二进制串At;采用At的海明距离来计算用户名称属性的距离。
DH=wDhm(DbNumA,DbNamB) (3)
3)最终得到2个用户A与B的基础属性距离
通过差值DA-B可以看出,DA-B越小,相似度则越大,DA-B越大,则相似度越小。
(2)用户偏好相似度
若给定用户u和v,N(u)表示用户u的偏好相似度集合,N(v)表示用户v的偏好相似度集合(如时间,位置,系统使用情况等),运用余弦公式相似度计算公式:
表3用户偏好表
用户A | 成绩查询系统 | 金融服务系统 | 酒店预订系统 |
用户B | 成绩查询系统 | 工资系统 | |
用户C | 交通查询系统 | 金融服务系统 | 多媒体系统 |
从表3的用户偏好为代表:用户A对{成绩,金融,酒店}方面的系统感兴趣,用户B对{成绩、工资}方面的系统感兴趣,所以可以计算出用户A和用户B的偏好相似度,如下所示:
用余弦公式计算用户间两两的相似度之后,算法通过综合分析基础数据相似度和用户偏好数据相似度后,再进行推荐,推荐度公式如6所示。
公式中,DA-B为基础数据的差值,N(i)表示对项目i有偏好的用户组,Re(u,l)表示存在与用户A偏好类似的用户组。wab描述用户A与用户B的相似度,ybi表示用户B对项目i的偏好程度。
2.2基于系统的云推荐方法
基于系统的云推荐算法,主要通过以下两步完成:首先计算系统之间的相似程度,然后根据相似度生成系统推荐列表。
根据余弦公式可得系统的相似度:
从余弦公式中可以看出,Num(i)表示偏好系统i的用户数量,Num(j)表示偏好系统j的用户数量,与的比值表示在偏好系统i的用户中同时也偏好系统j的比例。但是当系统j是一个所有人都偏好的系统时,如工资系统,任何其他系统通过公式(7)得出的结果都会很大,所以本发明中将公式(7)进行修改,如公式(8)所示:
公式(8)在分母中加入了相当于降低了系统j的权重。首先设定权重值w区间范围为[w1,wn],将[w1,wn]分割为n个小区间{[w1,w2],
[w2,w3],...,[wn-1,wn]},每个区间赋值{0,1,2....,n},然后对所有系统两两比较,如果用户的偏好落在区间范围内,那么认为这些系统属于同一个领域,相似度很大,值得推荐。分三步介绍采用基于系统的云推荐算法的简单例子。
假设有a,b,c,d,e5个系统,同时存在A,B,C,D,E5位用户,对每位用户偏好的项目用矩阵表示:
用户A:偏好a,b,c系统,用矩阵表示为
用户B:偏好a,b,d系统,用矩阵表示为
用户C:偏好a,d系统,用矩阵表示为
用户D:偏好b,c,e系统,用矩阵表示为
用户E:偏好a,e系统,用矩阵表示为
将A,B,C,D,E矩阵全部相加之后可得矩阵S,S[i][j]则表示同时对系统i和系统j都偏好的用户数量。
得到相似度矩阵之后,通过公式(7)计算用户a对系统i的推荐度:
公式9中N(u)表示当前用户的偏好集合,S(i,k)表示与系统i比较相似的K个系统的集合,wij是系统i与系统j的相似度。将该推荐度从大到小排列,采用TOP-N的方式取前N个系统推荐给用户。
第三步:基于USDR模型的云推荐算法得出用户推荐度列表,过程如下:
为了达到更好的用户体验,为用户提供个性化的推荐服务,基于USDR模型运行过程如图4所示,首先根据用户注册数据为用户建模,其次为云环境中的每个相关系统进行建模,当模型构建完成之后,分析用户注册数据中的基础属性数据,计算出基础属性相似度,再算出用户偏好属性相似度,最后同理算出基于系统的云推送推荐算法,最终为用户推送推荐数据。
通过分别计算用户和系统数据的推荐度会导致结果比较粗糙,为了使得云推荐算法更加精确,将用户数据推荐度加入到系统数据推荐度中,得出综合推荐度列表,将使推荐度的结果更加准确和方便,更加方便于下一步的云推送。如何使用基于USDR模型的云推荐算法得出用户推荐度列表的具体流程如图5所示:
1)查看用户历史记录数据表,若用户的历史数据为空,则说明为新注册用户,那么就执行步骤2),否则执行步骤5)。
2)查看用户基础数据中的关联用户列表,若有关联用户,则执行步骤3,若无,则执行步骤4)。
3)将该用户与每位关联用户分别用公式DA-B进行计算,得出相似度,查看相似度在设定的权重值内的用户,执行步骤4)。
4)使用公式(6)计算所有在权重值范围内的关联用户的偏好推荐度Recommenduser,加入用户推荐列表中,执行步骤5)。
5)使用公式(9)计算的历史数据表中每个系统的推荐度Recommendsystem,将这些系统放入推荐列表,执行步骤6)。
6)将步骤4)和步骤5)中的Recommenduser和Recommendsystem分别平方,再求和开根号得出综合推荐度:
7)根据综合推荐度,加入到综合推荐度列表。
Claims (1)
1.一种基于USDR模型的云推荐方法,其特征在于:所述云推荐方法包括如下步骤:
第一步:USDR数据模型建模,USDR即User System Data Relationship,过程如下:
1.1用户数据模型建模
用户数据基本划分为六类:用户基本数据、时间数据、地点数据、环境数据、用户偏好数据和历史数据;
1.2系统数据模型建模
系统数据模型包括:基础数据、功能数据和其他数据;
第二步:基于USDR模型的云推荐方法,过程如下:
2.1基于用户的云推荐方法,过程如下:
2.1.1计算基础属性相似度
基础属性是数值类型,对于数值型属性,只需要计算绝对值之差|D|=|Attr1-Attr2|;对于名称型的基础数据,取值类型比较单一,采用二进制编码的方式来表示;最终将用户全部名称型数据编码串联起来,形成一个二进制串;
不同的数值型属性的绝对值最大与最小的差距为[α1,αn],然后把这个区间划分为n-1个相等的区间{[α1,α2],[α2,α3],...[αn-1,αn]},对每个区间给予相应的数值{0,1,2,3...n-2},当用户的数值型属性绝对值落在某个区间时,即可得出数值型的属性距离Dbnum;对于名称型属性,通过确定编码位数,然后将每个取值通过格雷编码,然后依次链接起来,最后通过计算海明距离,得到名称型属性距离DH;定义用户A和B,每个数值型属性的权重值为wi,则所有属性权重值满足
对于数值型的属性距离Dbnum,根据上面的解释,定义不同的取值区间:
若α∈[α1,α2],则di=0;
若α∈[α2,α3],则di=1;
.......
若α∈[αn-1,αn],则di=n-2;
数值型的属性距离计算为:
对于名称型属性距离DH,则对不同的取值进行编码;
将用户的全部名称属性编码串联起来,形成二进制串At;采用At的海明距离来计算用户名称属性的距离:
最终得到2个用户A与B的基础属性距离
通过差值DA-B可得出,DA-B越小,相似度则越大,DA-B越大,则相似度越小;
2.1.2计算用户偏好相似度
若给定用户u和v,N(u)表示用户u的偏好相似度集合,N(v)表示用户v的偏好相似度集合,余弦公式相似度计算公式为:
用余弦公式计算用户间两两的相似度之后,算法通过综合分析基础数据相似度和用户偏好数据相似度,再进行推荐,推荐度公式如(6)所示:
公式中,DA-B为基础数据的差值,N(i)表示对项目i有偏好的用户组,Re(u,l)表示存在与用户A偏好类似的用户组;wab描述用户A与用户B的相似度,ybi表示用户B对项目i的偏好程度;
2.2基于系统的云推荐方法,过程如下:
2.2.1计算系统之间的相似程度
根据余弦公式得系统的相似度:
从余弦公式中看出,Num(i)表示偏好系统i的用户数量,Num(j)表示偏好系统j的用户数量,与的比值表示在偏好系统i的用户中同时也偏好系统j的比例;
将公式(7)进行修正,如公式(8)所示:
公式(8)在分母中加入了相当于降低了系统j的权重;首先设定权重值w区间范围为[w1,wn],将[w1,wn]分割为n-1个小区间{[w1,w2],[w2,w3],...,[wn-1,wn]},每个区间赋值{0,1,2....,n-2},然后对所有系统两两比较,如果用户的偏好落在区间范围内,那么认为这些系统属于同一个领域,相似度很大,值得推荐;
2.2.2根据相似度生成系统推荐列表
首先分别将每位用户对每个系统的偏好情况用矩阵表示,得到每位用户的偏好矩阵,然后将所有用户的偏好矩阵相加,得到相似度矩阵S,S[i][j]表示同时对系统i和系统j都偏好的用户数量;
得到相似度矩阵之后,通过公式(9)计算用户a对系统i的推荐度:
Recommdsys(a,i)=∑i∈N(u)∩S(i,k)wij (9)
公式(9)中N(u)表示当前用户的偏好集合,S(i,k)表示与系统i比较相似的k个系统的集合,wij是系统i与系统j的相似度;将该推荐度从大到小排列,采用TOP-N的方式取前N个系统推荐给用户;
第三步:采用基于USDR模型的云推荐算法得出用户推荐度列表,过程如下:
3.1查看用户历史记录数据表,若用户的历史数据为空,则说明为新注册用户,那么就执行步骤3.2,否则执行步骤3.5;
3.2查看用户基础数据中的关联用户列表,若有关联用户,则执行步骤3.3,若无,则执行步骤3.4;
3.3将该用户与每位关联用户分别用公式DA-B进行计算,得出相似度,查看相似度在设定的权重值内的用户,执行步骤3.4;
3.4使用公式(6)计算所有在权重值范围内的关联用户的偏好推荐度Recommenduser,加入用户推荐列表中,执行步骤3.5;
3.5使用公式(9)计算的历史数据表中每个系统的推荐度Recommendsystem,将这些系统放入推荐列表,执行步骤3.6;
3.6将步骤3.4和步骤3.5中的Recommenduser和Recommendsystem分别平方,再求和开根号得出综合推荐度:
3.7根据综合推荐度,加入到综合推荐度列表。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610645265 | 2016-08-05 | ||
CN2016106452656 | 2016-08-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106528812A CN106528812A (zh) | 2017-03-22 |
CN106528812B true CN106528812B (zh) | 2019-04-23 |
Family
ID=58352527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611015525.8A Active CN106528812B (zh) | 2016-08-05 | 2016-11-18 | 一种基于usdr模型的云推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106528812B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229728B (zh) * | 2017-12-18 | 2022-02-18 | 成都返空汇网络技术有限公司 | 一种货源信息的推荐方法及一种计算机设备 |
CN108359557A (zh) * | 2018-05-15 | 2018-08-03 | 西安早安网络科技有限公司 | 基于物联网的智能家用啤酒机及控制方法 |
CN109710851B (zh) * | 2018-12-27 | 2021-02-23 | 三盟科技股份有限公司 | 基于互联网模式下多源数据分析的就业推荐方法及系统 |
CN110060538A (zh) * | 2019-04-08 | 2019-07-26 | 上海云之驾科技股份有限公司 | 基于历史数据建模的个性化人工智能驾培训练系统及方法 |
CN111080339B (zh) * | 2019-11-18 | 2024-01-30 | 口口相传(北京)网络技术有限公司 | 基于场景的类目偏好数据生成方法及装置 |
CN113626708A (zh) * | 2021-08-11 | 2021-11-09 | 武汉卓尔数字传媒科技有限公司 | 一种服务推荐方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544623A (zh) * | 2013-11-06 | 2014-01-29 | 武汉大学 | 一种基于用户偏好特征建模的Web 服务推荐方法 |
CN103577403A (zh) * | 2012-07-19 | 2014-02-12 | 镇江雅迅软件有限责任公司 | 基于云计算技术的推荐系统实现方法 |
CN103793465A (zh) * | 2013-12-20 | 2014-05-14 | 武汉理工大学 | 基于云计算的海量用户行为实时分析方法及系统 |
CN105760449A (zh) * | 2016-02-03 | 2016-07-13 | 浙江工业大学 | 一种面向多源异构数据的云推送方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10430856B2 (en) * | 2013-03-26 | 2019-10-01 | Paymentus Corporation | Systems and methods for marketplace catalogue population |
-
2016
- 2016-11-18 CN CN201611015525.8A patent/CN106528812B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577403A (zh) * | 2012-07-19 | 2014-02-12 | 镇江雅迅软件有限责任公司 | 基于云计算技术的推荐系统实现方法 |
CN103544623A (zh) * | 2013-11-06 | 2014-01-29 | 武汉大学 | 一种基于用户偏好特征建模的Web 服务推荐方法 |
CN103793465A (zh) * | 2013-12-20 | 2014-05-14 | 武汉理工大学 | 基于云计算的海量用户行为实时分析方法及系统 |
CN105760449A (zh) * | 2016-02-03 | 2016-07-13 | 浙江工业大学 | 一种面向多源异构数据的云推送方法 |
Non-Patent Citations (2)
Title |
---|
Recommend trustworthy services using interval numbers of four parameters via cloud model for potential users;Hua MA 等;《Frontiers of Computer Science》;20150916;第9卷(第6期);887–903 * |
基于USDR模型的云推荐方法研究;陆佳炜 等;《计算机测量与控制》;20180825;第26卷(第8期);227-232,237 * |
Also Published As
Publication number | Publication date |
---|---|
CN106528812A (zh) | 2017-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106528812B (zh) | 一种基于usdr模型的云推荐方法 | |
US10963942B1 (en) | Systems, methods, and devices for generating recommendations of unique items | |
Pan et al. | Study on convolutional neural network and its application in data mining and sales forecasting for E-commerce | |
US10841743B2 (en) | Branching mobile-device to system-namespace identifier mappings | |
Christensen et al. | Social group recommendation in the tourism domain | |
US7774227B2 (en) | Method and system utilizing online analytical processing (OLAP) for making predictions about business locations | |
CN111259263B (zh) | 一种物品推荐方法、装置、计算机设备及存储介质 | |
CN109947987B (zh) | 一种交叉协同过滤推荐方法 | |
CN111723292B (zh) | 基于图神经网络的推荐方法、系统、电子设备及存储介质 | |
CN101454771A (zh) | 基于使用多媒体调查特征匹配以划分和标记个体的系统和方法 | |
CN107391582B (zh) | 基于上下文本体树计算用户偏好相似度的信息推荐方法 | |
CN103955464A (zh) | 一种基于情境融合感知的推荐方法 | |
Zhang et al. | MugRep: A multi-task hierarchical graph representation learning framework for real estate appraisal | |
CN108897750B (zh) | 融合多元上下文信息的个性化地点推荐方法及设备 | |
CN113781139B (zh) | 物品推荐方法、物品推荐装置、设备和介质 | |
CN111429161B (zh) | 特征提取方法、特征提取装置、存储介质及电子设备 | |
CN108665083A (zh) | 一种基于用户画像动态轨迹模型的广告推荐方法及系统 | |
CN114036376A (zh) | 一种基于k均值聚类的时间感知自适应兴趣点推荐方法 | |
Majid et al. | GoThere: travel suggestions using geotagged photos | |
CN114528480A (zh) | 一种基于k均值聚类的时间感知自适应兴趣点推荐方法 | |
Zou et al. | An innovative GPS trajectory data based model for geographic recommendation service | |
CN117093778A (zh) | 一种基于词义加权的工程机械软件任务和人员推荐方法及系统 | |
Xu et al. | [Retracted] Tourist Attraction Recommendation Method and Data Management Based on Big Data Analysis | |
Qu et al. | The application of interactive methods under swarm computing and artificial intelligence in image retrieval and personalized analysis | |
Zhang | [Retracted] Design and Implementation of Sports Industry Information Service Management System Based on Data Mining |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |