山东大学模式识别KNN实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
山东大学软件学院模式识别课程实验报告
图1 1-NN
图2 2-NN
图3 1~20-NN
绘制表格如下:
K值准确率(%)
1 98.73
2 98.52
3 98.63
4 98.52
5 98.10
6 98.20
7 97.89
8 97.46
9 97.78
10 97.89
11 97.89
12 97.78
13 97.36
14 97.57
15 97.36
16 97.57
17 97.15
18 97.36
19 97.25
20 97.25
绘制散点图如下:
可以看到,随着K值的增加,预测的准确率反而逐渐降低,这与理论上样本足够多,K值足够大,正确率会越好的想法冲突,可能是K值增大后噪声点增多?
2、更改距离度量方式
可以考虑采用曼哈顿距离进行距离度量
更改投票方式:让离的越近的样本点的权重值越大。可以代用高斯模板进行度量。
实验二:
1、KNN应用场景:
它的特点是完全跟着数据走,没有数学模型可言。
需要一个特别容易解释的模型的时候。
比如需要向用户解释原因的推荐算法。
比如文字识别,面部识别;预测某人是否喜欢推荐电影(Netflix);基因模式识别,比如用于检测某中年疾病;客户流失预测、欺诈侦测(更适合于稀有事件的分类问题)
KNN应用场景:通常最近邻分类器使用于特征与目标类之间的关系为比较复杂的数字类型,或者说二者关系难以理解,但是相似类间特征总是相似。
引用来源:
https:///question/26726794
/qq_16365849/article/details/50649905
/liyuefeilong/article/details/48162111
2、KD树
KD树的思想上课学长有具体讲过
Kd-树其实是K-dimension tree的缩写,是对数据点在k维空间中划分的一种数据结构。其实,Kd-树是一种平衡二叉树,图示如下
参考来源:
https:///snakehand/archive/2012/08/13/2636236.html https:///item/kd-tree/2302515?fr=aladdin
3、Hash Map
本次代码中有用到
实验三:协同过滤
关于协同过滤的一个最经典的例子就是看电影,有时候不知道哪一部电影是我们喜欢的或者评分比较高的,那
么通常的做法就是问问周围的朋友,看看最近有什么好的电影推荐。在问的时候,都习惯于问跟自己口味差不
多的朋友,这就是协同过滤的核心思想。
协同过滤是在海量数据中挖掘出小部分与你品味类似的用户,在协同过滤中,这些用户成为邻居,然后根据他
们喜欢的东西组织成一个排序的目录推荐给你。所以就有如下两个核心问题
(1)如何确定一个用户是否与你有相似的品味?
(2)如何将邻居们的喜好组织成一个排序目录?
协同过滤算法的出现标志着推荐系统的产生,协同过滤算法包括基于用户和基于物品的协同过滤算法。
2. 协同过滤的核心