MathorCup优秀论文B题.docx

上传人:b****1 文档编号:1762337 上传时间:2022-10-23 格式:DOCX 页数:23 大小:28.48KB
下载 相关 举报
MathorCup优秀论文B题.docx_第1页
第1页 / 共23页
MathorCup优秀论文B题.docx_第2页
第2页 / 共23页
MathorCup优秀论文B题.docx_第3页
第3页 / 共23页
MathorCup优秀论文B题.docx_第4页
第4页 / 共23页
MathorCup优秀论文B题.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

MathorCup优秀论文B题.docx

《MathorCup优秀论文B题.docx》由会员分享,可在线阅读,更多相关《MathorCup优秀论文B题.docx(23页珍藏版)》请在冰豆网上搜索。

MathorCup优秀论文B题.docx

MathorCup优秀论文B题

评委一评分,签名及备

队号:

10469

评委三评分,签名及备

评委二评分,签名及备

选题:

B题

评委四评分,签名及备

题目:

书籍推荐

摘要

本文主要研究的是书籍推荐问题,分析了影响读者对书籍评分的因素,通过协同过滤算法和书籍相似度分析预测出指定的读者对未读过的书的评分,再基于标签相似度和读书偏好模型给指定的读者分别推荐3本书。

针对问题一:

本文通过相关性分析和对数据的分类统计,发现书籍的平均得分,用户的评分习惯和用户的读书偏好(标签)这三个因素影响读者对书籍的评分。

针对问题二:

对于指定的读者,本文采用余弦相似度来计算所需预测的每一本书籍与这个读者所有评过分的书籍的相似度并依此排序,选取前10本书籍作为邻居集,根据该读者对邻居集中的书籍评分预测出他对这本书的评分。

为了检验预测的准确性,本文把评分记录的一小部分作为测试集,用MAE指标衡量预测误差,结果显示预测效果良好。

针对问题三:

本文采用余弦相似度计算每书籍标签的共生相似度,建立了一个用户读书偏好模型,求出用户之间的相似度和用户偏好与书籍标签匹配度,综合这两个指标得到书籍对用户的推荐指数,按照推荐指数给指定的用户推荐3本未读过的书籍。

关键字:

协同过滤余弦相似度标签相似度读书偏好模型推荐

指数

1.模型假设

1、用户的读书兴趣在整个评分过程中没有发生变化;

2、用户都会尽可能读自己感兴趣的书;

3、书籍的不同的标签代表不同的类别;

4、用户会对感兴趣的书籍反复阅读。

2.主要符号说明

符号

符号说明

书籍质量

书籍受欢迎程度

用户评分偏好

用户读书偏好

社交圈评分影响

书籍间的相似性

标签共生相似度

用户相似度

用户与书籍的匹配度

推荐指数

3.问题分析

3.1第一问题的分析

书籍的评分客观上取决于书籍本身的质量,同时也受到用户评分偏好等的主观影响。

根据附件中所给数据,我们首先定义书籍质量Q、书籍受

欢迎程度P、用户评分偏好IP、用户读书偏好BP、以及社交圈评分影响SI等五个因素。

然后从以上因素出发,分别分析它们对用户评分的影响。

3.2第二问题的分析

在不考虑主观因素影响的条件下,同一用户对书籍质量Q相同的书籍应具有相近的评分,首先,我们采用基于书籍相似性的协同过滤推荐算法,求出与预测书籍相似的邻居集;然后,通过邻居集对预测书籍给出预测评

3.3第三问题的分析

给用户推荐的书籍,应尽可能的符合用户的读书偏好。

首先,我们求出了用户对书籍的关注度;其次,我们求出了用户的读书偏好;然后,求出符合用户偏好的书对用户的推荐指数;最后,找出推荐指数最高的书推荐给该用户。

4.模型建立与求解

4.1第一问题的模型建立与求解

4.1.1分析书籍质量Q因素的影响

我们将书籍的平均得分定义为书籍质量Q,定义如下:

其中,score(j,i,3)表示用户j对书籍i的评分,Ni表示参与对书籍i评分的用户总数。

我们从附件user_book_score.txt中随机找出100名用户,并对每一位用户作如下处理:

Step1:

找出用户所有评分书籍及对应分数;

Step2:

求出这些书籍的书籍质量Q;

Step3:

求出用户评分与书籍质量的相关系数和置信水平。

用户7245481参与打分的书籍数量为517本,其中前10本的处理结果如表

4-1所示。

表4-1用户7245481打分与书籍质量

书籍ID

用户的评分

参与评分的人数

书籍质量Q

962729

4

959

4.116788

356405

4

463

4.164147

836383

4

588

4.061224

284550

4

998

3.942886

723581

4

1145

4.135371

827305

4

478

3.920502

572786

4

232

4.025862

473690

4

319

3.833856

964695

4

1063

4.235183

929118

4

497

4.046278

求得相关系数R=0.57359;置信水平P=1.4614e-046。

因此,对于用户7245481,书籍评分与书籍质量有显着的相关性。

对于随机选取100名用户中的前10名用户,书籍评分与书籍质量的相关性见表4-2。

表4-2书籍评分与书籍质量相关性表

用户ID

相关系数

置信水平

2963436

0.61484

1.06E-07

9187401

-0.28492

0.32347

6202949

0.59575

1.19E-13

5764419

0.35585

3.14E-06

4017913

0.4411

8.37E-05

1137054

0.409

0.018111

7672169

0.52047

8.62E-15

3736978

0.5322

2.99E-49

3878200

0.43015

0.12473

2614643

0.48621

6.82E-17

经分析,书籍质量是用户评分的影响因素。

4.1.2分析书籍受欢迎程度P因素的影响

书籍的标签数量在一定程度上反映了书籍的受欢迎程度,因此我们定义书籍受欢迎程度P:

其中,tag(i,j)表示书籍i的第j个标签。

我们从附件user_book_score.txt中随机找出100名用户,并对每一

位用户作如下处理:

Step1:

找出用户所有评分书籍及对应分数;

Step2:

求出这些书籍的书籍受欢迎程度P;

Step3:

求出用户评分与书籍受欢迎程度的相关系数和置信水平。

用户7245481参与打分的书籍数量为517本,其中最后10本的处理结果如表

4-3所示。

表4-3书籍评分与书籍标签数

书籍ID

用户的评分

书籍标签数

304070

3

17

419461

3

0

394406

4

17

995198

4

18

523511

4

0

471206

4

24

726758

4

17

798662

3

13

877201

3

20

378626

3

16

求得相关系数R=0.1368;置信水平P=0.0018234。

则对于用户7245481,其评分与书籍标签数具有较强的相关性。

因此,我们认为书籍的受欢迎程度对用户的评分具有一定的影响。

4.1.3分析用户评分偏好IP因素的影响

通过简单统计附件user_read_history.txt以及user_book_score.txt中数据,我们发现:

1、有部分用户对没有阅读过的书籍也给了评分;

2、部分用户对大部分书籍给了相同分数。

因此我们考虑用户评分偏好IP因素,用户评分偏好IP定义如下:

其中,

N:

所有得分书籍的数目;

调整因子;

Ni:

某分值出现次数排名为i的评分次数,则有N1N2N3N4N5。

我们从附件user_book_score.txt中随机找出100名用户,并对每一位用户作如下处理:

Step1:

找出用户所有评分书籍及对应分数;

Step2:

求出用户的评分偏好IP;

Step3:

考察用户的所有评分与评分偏好IP的偏离程度。

ID为7245481的用户参与打分的书籍数量为517本,处理结果如表4-4所示。

表4-4书籍评分与对应出现次数表

书籍的评分

出现次数

1

1

2

7

3

131

4

359

5

19

IP=3.909。

经统计分析,我们得到用户的所有评分均接近于评分偏好IP。

因此,我们认为用户评分受评分偏好IP的影响。

4.1.4分析用户读书偏好BP因素的影响

通过统计分析附件中的user_book_score.txt表以及book_tag.txt表,我们发现,大部分用户会有一个读书偏好BP,他们倾向于阅读含有某一标签的书籍并可能对其打高分。

其中用户7245481参与打分的书籍中,

出现次数最多的标签为6391,出现了266次,且这些书的得分都高于该用户对所有书籍评分的平均分;而用户7625225参与打分的书籍中,出现次数最多的标签为6391,出现了140次,且这些书的得分都高于该用户对所有书籍评分的平均分。

因此,我们可以得出用户读书偏好BP对用户评分有

定的影响。

4.1.5分析社交圈评分影响SI因素的影响

用户好友对书籍的评分在一定程度上影响着用户的评分。

但在我们随

机选取的多组数据中,我们发现有大部分的用户好友并没有参与书籍评分,因此,此处我们不多做分析。

4.2第二问题的模型建立与求解

我们采用基于书籍相似性的协同过滤推荐算法,分别预测附件

predict.txt中的用户对未看过书籍的评分。

1、定义算法中涉及到的书籍间的相似性BS。

找出同时对书籍i,j评分的用户,记为n位,则书籍i,j分别在n维空间上的评分表示为向量i,j,书籍i,j之间的相似性BS(i,j)为:

ij

BS(i,j)cos(i,j)

(1)

其中,i表示i的模长。

2、构造算法中涉及到的评分矩阵S。

矩阵S的前六列表示附件predict.txt中对用户ui要求预测的书籍,记为Pbi,后n列表示用户ui参与评分的所有书籍b,设共有n本,则矩阵S共

有n6列;

矩阵S的第一行表示为用户ui,后m行表示为参与了Pbi中的任意一本的评分的用户,设有m位用户,则矩阵S共有m1行。

3、预测用户ui对第一本书Pbi1的评分。

具体预测算法如下:

Step1:

取矩阵S中第1列元素和第j列元素,j7,8,,n,分别记为s1和sj;

Step2:

取在s1和sj中均不含0的行,记为s1,sj,若没有取到,则定义Pbi1与bj的相似度为0;否则用公式

(1)求Pbi1与bj的相似度BS(Pbi1,bj);Step3:

取相似度BS(Pbi1,bj)最高的10个书籍,组成b1邻居集Bb1,b2,,b10,其中,书籍Pbi1与b1的相似度BS(Pbi1,b1)最高,书籍

Pbi1与b2的相似BS(Pbi1,b2)次之,以此类推。

Step4:

求用户ui对Pbi1的预测评分:

4、对附件predict.txt中所有用户要求预测的书籍用如上算法预测评分。

表4-5用户7245481要求预测书籍的预测评分

书籍ID

794171

381060

776002

980705

354292

738735

预测评分

4

3.8

3.6

3.8

3.6

3.6

表4-6用户7625225要求预测书籍的预测评分

书籍ID

473690

929118

235338

424691

916469

793936

预测评分

3.800161

3.399658

4

4

3.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1