CN106294636B - 一种基于数据库数据的搜索排名方法 - Google Patents
一种基于数据库数据的搜索排名方法 Download PDFInfo
- Publication number
- CN106294636B CN106294636B CN201610626504.3A CN201610626504A CN106294636B CN 106294636 B CN106294636 B CN 106294636B CN 201610626504 A CN201610626504 A CN 201610626504A CN 106294636 B CN106294636 B CN 106294636B
- Authority
- CN
- China
- Prior art keywords
- data
- user
- similarity
- predicted
- scoring
- 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
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于数据库数据的搜索排名算法,主要包括用户需求分析、数据信息关系分析,信息搜索和结果展示等步骤,首先根据特定用户对各业务模块的关注程度得出各模块对不同用户的重要程度,再通过用户与用户之间的相似程度预测用户对未评价的搜索数据的评价得分,通过数据与数据之间的相似关系预测用户对未评价数据的评价得分,最后综合上述评分得到最后展示排序结果。本发明方法能够根据用户兴趣和数据关系的个性化搜索展示结果,为用户提供更好的搜索上网体验。
Description
技术领域
本发明属于计算机软件应用技术领域,特别是一种针对数据库数据搜索而设计的,依据用户的兴趣和数据间的关系而定制的搜索排名方法。
背景技术
在数据量巨大的互联网时代,为了更好的为在线用户提供服务,个性化搜索结果展现系统成为网络信息检索领域的一项重要研究。通过用户兴趣、信息之间的关系为用户选择最合适的信息展示形式,且协同过滤技术来解决用户搜索信息过量和迷失问题,是数据库搜索排名算法需要解决的问题之一。
发明内容
发明目的:为了解决用户信息过载和数据迷失的问题,本发明提供一种基于数据库数据的搜索排名方法,能够根据用户兴趣和数据关系的个性化搜索展示结果,为用户提供更好的搜索上网体验。
技术方案:为实现上述目的,本发明中基于数据库数据的搜索排名方法,包括以下步骤:
(1)根据待预测用户输入的搜索词进行分词搜索;
(2)对搜索结果集按照Lucenetf-idf算法进行评分排序,获取所述待预测用户对搜索结果集中某一待预测评分的数据的第一预测评分;
(3)根据用户相似度获取数据推导相似度,并利用数据推导相似度计算所述待预测用户对该待预测评分的数据的第二预测评分;根据数据相似度获取用户推导相似度,并利用用户推导相似度计算所述待预测用户对该待预测评分的数据的第三预测评分;
(4)根据所述待预测用户对所述待预测评分的数据的第一预测评分、第二预测评分和第三预测评分计算所述待预测用户对所述待预测评分的数据的最终预测评分;
(5)结果展现。
其中,步骤(3)中所述第二预测评分的计算包括以下步骤:
1)根据不同用户对同一数据的评价统计计算出用户之间的相似度,利用预先设定的用户相似度阈值确定所述待预测用户的相似用户集合,所述相似用户集合中的用户与所述待预测用户之间的相似度大于所述用户相似度阈值;
2)根据所述相似用户集合中的用户评价过的两个不同数据计算出这两个数据间的推导相似度,运用数据间的推导相似度计算所述待预测用户对所述待预测评分的数据的第二预测评分。
其中,步骤(3)中所述第三预测评分的计算包括以下步骤:
1)根据所有用户对两个不同数据的评价统计计算出这两数据间的相似度,得到待预测评分的数据的相似数据集合,所述相似数据集合中的数据与所述待预测评分的数据之间的相似度大于预先设定的数据相似度阈值;
2)根据两个不同用户对所述待预测评分的数据的相似数据集合中的数据评价计算出这两个用户的推导相似度,运用用户间的相似度预测所述待预测用户对所述待预测评分的数据的第三预测评分。
有益效果:本发明中基于数据库数据的搜索排名方法,首先根据特定用户对各业务模块的关注程度得出各模块对不同用户的重要程度,再通过用户与用户之间的相似程度预测用户对未评价的搜索数据的评价得分,通过数据与数据之间的相似关系预测用户对未评价数据的评价得分,最后综合上述评分得到最后展示排序结果。本发明方法利用用户与用户之间的相似程度使用户的差异性得到体现,利用数据与数据之间的相似关系使数据的关联性得到体现,能够根据用户兴趣和数据关系的个性化搜索展示结果,为用户提供更好的搜索上网体验,提高用户搜索结果的满意度。
附图说明
图1是本发明中基于数据库数据的搜索排名方法的流程图;
图2是根据数据推导相似度获取用户对数据预测评分的流程图;
图3是根据用户评价过的数据集合确定相似用户集合的软件实现流程图;
图4是根据相似用户集合中用户对数据的评价计算数据间的推导相似度的软件实现流程图;
图5是根据数据间的推导相似度计算用户对数据预测评分的软件实现流程图;
图6是根据用户推导相似度获取用户对数据预测评分的流程图。
具体实施方式
下面结合实施例对本发明作更进一步的说明。
图1中,本发明中基于数据库数据的搜索排名方法,包括以下步骤:
(1)根据用户输入的搜索词进行分词搜索;
(2)对搜索结果集按照Lucene tf-idf算法进行评分排序,获取用户对搜索结果集中某一待预测评分的数据的第一预测评分;
(3)根据用户相似度获取数据推导相似度,并利用数据推导相似度计算用户对该待预测评分的数据的第二预测评分;根据数据相似度获取用户推导相似度,并利用用户推导相似度计算用户对该待预测评分的数据的第三预测评分;
(4)根据用户对该待预测评分的数据的第一预测评分、第二预测评分和第三预测评分计算用户对该数据的最终预测评分;
(5)结果展现:根据计算出的用户对需要排名的特定数据的预测评分,按照预测评分的高低对数据进行先后排序以网页形式展示在用户面前。
下面以获取用户y对某一待预测评分的数据si的最终评分为例,针对本发明中基于数据库数据的搜索排名算法的几个关键步骤进行详细说明。
对于上述步骤(2),设通过Lucene tf-idf算法获取到用户y对搜索结果数据si的第一预测评分为设数据si属于第k个业务模块,k∈{1,2,3,4,5,6},各业务模块与用户关注数据如下表1所示:
表1各业务模块与用户关注度
模块名称 | 总数据量 | 用户关注数据量 |
模块1 | n<sub>1</sub> | N<sub>1</sub> |
模块2 | n<sub>2</sub> | N<sub>2</sub> |
模块3 | n<sub>3</sub> | N<sub>3</sub> |
模块4 | n<sub>4</sub> | N<sub>4</sub> |
模块5 | n<sub>5</sub> | N<sub>5</sub> |
模块6 | n<sub>6</sub> | N<sub>6</sub> |
通过对不同业务模块的用户关注数据统计得出用户对业务系统各模块的关注重要程度,第i个模块的重要程度的计算公式为:
如图2所示,上述步骤(3)中根据用户相似度获取数据推导相似度,并利用数据推导相似度计算用户对该待预测评分的数据的第二预测评分,包括以下步骤:
1)根据不同用户对同一数据的评价统计计算出用户之间的相似度,得到用户y的相似用户集合。
结合图3中所示的软件实现过程,设用户yi和用户yj评价过的数据集合分别为Si和Sj,用户yi和用户yj均评价过的数据集合为Sij,Ri,c为用户yi对数据c的评价值,Rj,c为用户yj对数据c的评价值,表示用户yi评价过的所有数据的评价平均值,表示用户yj评价过的所有数据的评价平均值,则用户yi和用户yj的相似度simy(i,j)的计算公式(分子对应图3中的变量fij,分母对应图3中的变量fi、fj)为:
得到了用户与用户的相似度后,设与用户y的相似用户集合为Yg,本发明中对于任意用户y,若某一用户与其之间的相似度高于预设设定的用户相似度阈值,则该用户为与用户y相似度较高的用户,该用户属于相似用户集合Yg,用户相似度阈值根据实际情况进行设定。
2)根据用户y的相似用户集合Yg中的用户评价过的两个数据计算出这两个数据间的推导相似度,运用数据间的推导相似度预测用户y对数据si的第二预测评分。
结合图4中所示的软件实现过程,设对数据si和数据sj评价过的用户集合分别为Yi和Yj,则对数据si评价过且与用户y相似度较高的用户集合Yi'=Yi∩Yg,对数据sj评价过且与用户y相似度较高的用户集合Yj'=Yj∩Yg,对数据si和数据sj均评价过的用户集合Yij=Yi∩Yj,对数据si和数据sj均评价过且与用户y相似度较高的用户集合Y’ij=Yij∩Yg。
设Ry,i为用户y对数据si的评价值,Ry,j为用户y对数据sj的评价值,表示Yi所有用户对数据si评价的平均值,表示Yj所有用户对数据sj评价的平均值,数据si和数据sj的推导相似度sims(i,j)的计算公式(分子对应图4中的变量fij,分母对应图4中的变量fi、fj)为:
结合图5中所示的软件实现过程,设用户y没有对其搜索结果集中待预测评分的si进行评价过,则可以预测用户y对数据si的第二预测评分为(式中分子对应图5中的R,分母对应图5中的|R|):
式中,Si为用户y评价过的数据集合其中sims(i,k)为数据si和数据sk的推导相似度。
如图6所示,上述步骤(3)中根据数据相似度获取用户推导相似度,并利用用户推导相似度计算用户对该待预测评分的数据的第三预测评分,包括以下步骤:
1)根据所有用户对两个不同数据的评价分数计算出这两数据间的相似度,得到待预测评分的数据si的相似数据集合。
设对数据si和数据sj评价过的用户集合分别为Yi和Yj,则对数据si和数据sj均评价过的用户集合Yij=Yi∩Yj,设Ry,i为用户y对数据si的评价值,Ry,j为用户y对数据sj的评价值,表示集合Yi中所有用户对数据si评价的平均值,表示集合Yj中所有用户对数据sj评价的平均值,数据si和数据sj的相似度sim's(i,j)的计算公式为:
根据不同数据之间相似度的计算公式,设与数据si的相似数据集合为Sg,本发明中对于任意数据si,若某一数据与其之间的相似度高于预设设定的数据相似度阈值,则该数据为与数据si相似度较高的数据,该数据属于相似数据集合为Sg,数据相似度阈值根据实际情况进行设定。
2)根据两个不同用户对数据si的相似数据集合Sg中的数据评价计算出这两个用户的推导相似度,运用用户间的相似度预测用户y对数据si的第三预测评分。
设用户yi和用户yj评价过的数据集合分别为Si和Sj,则被用户yi评价过且为数据si的相似数据集合Sg中的数据的集合S'i=Si∩Sg,被用户yj评价过且为数据si的相似数据集合Sg中的数据的集合S'j=Sj∩Sg,用户yi和用户yj均评价过的数据集合为Sij=Si∩Sj,则被用户yi和用户yj均评价过且为数据si的相似数据集合Sg中的数据的的集合S'ij=Sij∩Sg,Ri,c为用户yi对数据c的评价值,Rj,c为用户yj对数据c的评价值,表示用户yi评价的所有数据的评价平均值,表示用户yj评价的所有数据的评价平均值,用户yi和用户yj的推导相似度sim'y(i,j)的计算公式为:
设用户y没有对其搜索结果集中待预测评分的数据si进行评价过,则可以预测用户y对数据si的第三预测评分为:
式中,Yi为对数据si评价过的用户集合,则用户sim'y(i,j)为用户yi和用yj的推导相似度。
结合步骤(2)和(3)的内容,上述步骤(4)中得出用户y对搜索结果中待预测评分的数据si的最终预测评分fyi为:
Claims (8)
1.一种基于数据库数据的搜索排名方法,其特征在于,包括以下步骤:
(1)根据待预测用户输入的搜索词进行分词搜索;
(2)对搜索结果集按照Lucene tf-idf算法进行评分排序,获取所述待预测用户对搜索结果集中某一待预测评分的数据的第一预测评分;
(3)根据用户相似度获取数据推导相似度,并利用数据推导相似度计算所述待预测用户对该待预测评分的数据的第二预测评分;根据数据相似度获取用户推导相似度,并利用用户推导相似度计算所述待预测用户对该待预测评分的数据的第三预测评分;
(4)根据所述待预测用户对所述待预测评分的数据的第一预测评分、第二预测评分和第三预测评分计算所述待预测用户对所述待预测评分的数据的最终预测评分;
(5)结果展现。
2.根据权利要求1所述的基于数据库数据的搜索排名方法,其特征在于,步骤(3)中所述第二预测评分的计算包括以下步骤:
1)根据不同用户对同一数据的评价统计计算出用户之间的相似度,利用预先设定的用户相似度阈值确定所述待预测用户的相似用户集合,所述相似用户集合中的用户与所述待预测用户之间的相似度大于所述用户相似度阈值;
2)根据所述相似用户集合中的用户评价过的两个不同数据计算出这两个数据间的推导相似度,运用数据间的推导相似度计算所述待预测用户对所述待预测评分的数据的第二预测评分。
3.根据权利要求2所述的基于数据库数据的搜索排名方法,其特征在于,步骤1)中用户之间的相似度计算公式为:
式中,Si和Sj分别为两个不同用户yi、yj评价过的数据集合,Sij为用户yi和用户yj均评价过的数据集合,Ri,c为用户yi对数据c的评价值,Rj,c为用户yj对数据c的评价值,为用户yi评价过的所有数据的评价平均值,为用户yj评价过的所有数据的评价平均值,simy(i,j)表示用户yi与用户yj之间的相似度。
4.根据权利要求2所述的基于数据库数据的搜索排名方法,其特征在于,步骤2)中根据所述相似用户集合获取不同数据间的推导相似度的计算公式为:
式中,Yi为对数据si评价过的用户集合,Yj为对数据sj评价过的用户集合,Yi'=Yi∩Yg,Y’j=Yj∩Yg,Yij=Yi∩Yj,Y’ij=Yij∩Yg,Yg为相似用户集合,Ry,i为用户y对数据si的评价值,Ry,j为用户y对数据sj的评价值,为所有对数据si评价过的平均评价值,为所有对数据sj评价过的平均评价值,sims(i,j)为数据si与数据sj的推导数据相似度。
5.根据权利要求1所述的基于数据库数据的搜索排名方法,其特征在于,步骤(3)中所述第三预测评分的计算包括以下步骤:
1)根据所有用户对两个不同数据的评价计算出这两数据间的相似度,得到待预测评分的数据的相似数据集合,所述相似数据集合中的数据与所述待预测评分的数据之间的相似度大于预先设定的数据相似度阈值;
2)根据两个不同用户对所述待预测评分的数据的相似数据集合中的数据评价计算出这两个用户间的推导相似度,运用用户间的相似度预测所述待预测用户对所述待预测评分的数据的第三预测评分。
6.根据权利要求5所述的基于数据库数据的搜索排名方法,其特征在于,步骤1)中数据间的相似度计算公式为:
式中,Yi为对数据si评价过的用户集合,Yj为对数据sj评价过的用户集合,Yij=Yi∩Yj,Ry,i为用户y对数据si的评价值,Ry,j为用户y对数据sj的评价值,表示集合Yi中所有用户对数据si评价的平均值,表示集合Yj中所有用户对数据sj评价的平均值,sim's(i,j)为数据si与数据sj之间的相似度。
7.根据权利要求5所述的基于数据库数据的搜索排名方法,其特征在于,步骤2)中所述用户间的推导相似度的计算公式为:
式中,Si为用户yi评价过的数据集合,Sj为用户yj评价过的数据集合,S′i=Si∩Sg,S'j=Sj∩Sg,Sij=Si∩Sj,S′ij=Sij∩Sg,Ri,c为用户yi对数据c的评价值,Rj,c为用户yj对数据c的评价值,表示用户yi评价的所有数据的评价平均值,表示用户yj评价的所有数据的评价平均值,Sg为相似数据集合,sim'y(i,j)为用户yi与用户yj之间的推导相似度。
8.根据权利要求1所述的基于数据库数据的搜索排名方法,其特征在于,设所述待预测用户对所述待预测评分的数据的第一预测评分为第二预测评分为第三预测评分为则所述待预测用户对所述待预测评分的数据的最终预测评分fyi为:
式中,表示所述待预测评分的数据所属业务模块k对所述待预测用户的重要程度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610626504.3A CN106294636B (zh) | 2016-08-01 | 2016-08-01 | 一种基于数据库数据的搜索排名方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610626504.3A CN106294636B (zh) | 2016-08-01 | 2016-08-01 | 一种基于数据库数据的搜索排名方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106294636A CN106294636A (zh) | 2017-01-04 |
CN106294636B true CN106294636B (zh) | 2019-03-19 |
Family
ID=57664951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610626504.3A Active CN106294636B (zh) | 2016-08-01 | 2016-08-01 | 一种基于数据库数据的搜索排名方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106294636B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016118A (zh) * | 2017-04-20 | 2017-08-04 | 上海喆之信息科技有限公司 | 一种用于网站的安全搜索系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101946249A (zh) * | 2008-02-13 | 2011-01-12 | 微软公司 | 使用相关用户的数据来增强web搜索 |
CN102073709A (zh) * | 2010-12-31 | 2011-05-25 | 中国科学技术大学 | 一种基于最近邻用户重排序(drnn)的相似度计算方法 |
CN102084363A (zh) * | 2008-07-03 | 2011-06-01 | 加利福尼亚大学董事会 | 一种用于在结构化数据上高效地支持交互式模糊搜索的方法 |
CN104166732A (zh) * | 2014-08-29 | 2014-11-26 | 合肥工业大学 | 一种基于全局评分信息的项目协同过滤推荐方法 |
CN104331394A (zh) * | 2014-08-29 | 2015-02-04 | 南通大学 | 一种基于观点的文本分类方法 |
CN104391925A (zh) * | 2014-11-20 | 2015-03-04 | 四川长虹电器股份有限公司 | 一种基于tv用户协同预测的视频推荐方法及系统 |
CN104835096A (zh) * | 2015-05-15 | 2015-08-12 | 北京胡杨众联科技有限公司 | 一种检索方法、装置及终端 |
-
2016
- 2016-08-01 CN CN201610626504.3A patent/CN106294636B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101946249A (zh) * | 2008-02-13 | 2011-01-12 | 微软公司 | 使用相关用户的数据来增强web搜索 |
CN102084363A (zh) * | 2008-07-03 | 2011-06-01 | 加利福尼亚大学董事会 | 一种用于在结构化数据上高效地支持交互式模糊搜索的方法 |
CN102073709A (zh) * | 2010-12-31 | 2011-05-25 | 中国科学技术大学 | 一种基于最近邻用户重排序(drnn)的相似度计算方法 |
CN104166732A (zh) * | 2014-08-29 | 2014-11-26 | 合肥工业大学 | 一种基于全局评分信息的项目协同过滤推荐方法 |
CN104331394A (zh) * | 2014-08-29 | 2015-02-04 | 南通大学 | 一种基于观点的文本分类方法 |
CN104391925A (zh) * | 2014-11-20 | 2015-03-04 | 四川长虹电器股份有限公司 | 一种基于tv用户协同预测的视频推荐方法及系统 |
CN104835096A (zh) * | 2015-05-15 | 2015-08-12 | 北京胡杨众联科技有限公司 | 一种检索方法、装置及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN106294636A (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102929928B (zh) | 基于多维相似度的个性化新闻推荐方法 | |
CN107862022B (zh) | 文化资源推荐系统 | |
CN104866554B (zh) | 一种基于社会化标注的个性化搜索方法及系统 | |
CN107766462A (zh) | 基于用户偏好、社交信誉度和地理位置的兴趣点推荐方法 | |
CN105095187A (zh) | 一种搜索意图识别方法及装置 | |
CN104933622A (zh) | 一种基于用户和微博主题的微博流行度预测方法及系统 | |
CN104008109A (zh) | 基于用户兴趣的Web信息推送服务系统 | |
CN109947987B (zh) | 一种交叉协同过滤推荐方法 | |
CN108550068A (zh) | 一种基于用户行为分析的个性化商品推荐方法及系统 | |
CN101482884A (zh) | 一种基于用户偏好评分分布的协作推荐系统 | |
CN103530416B (zh) | 项目数据预测评分库的生成、项目数据的推送方法和系统 | |
CN103077190A (zh) | 基于排序学习技术的热门事件排名方法 | |
CN103838756A (zh) | 一种确定推送信息的方法及装置 | |
CN104462383A (zh) | 一种基于用户多种行为反馈的电影推荐方法 | |
CN104636407B (zh) | 参数取值训练及搜索请求处理方法和装置 | |
CN103198098A (zh) | 一种网络信息投放方法和装置 | |
CN105095476A (zh) | 基于Jaccard均衡距离的协同过滤推荐方法 | |
WO2013107031A1 (zh) | 基于评论信息确定视频质量参数的方法、装置和系统 | |
Hu et al. | A POI-sensitive knowledge graph based service recommendation method | |
CN103744918A (zh) | 基于垂直领域的微博搜索排序方法及系统 | |
CN110609950B (zh) | 一种舆情系统搜索词推荐方法及系统 | |
CN104572915A (zh) | 一种基于内容环境增强的用户事件相关度计算方法 | |
CN106294636B (zh) | 一种基于数据库数据的搜索排名方法 | |
CN107688621A (zh) | 一种文案的优化方法和系统 | |
CN104462597B (zh) | 一种综合用户正负性评分和评分偏好因子的协同过滤方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |