《数据挖掘》课程大作业_第1页
《数据挖掘》课程大作业_第2页
《数据挖掘》课程大作业_第3页
《数据挖掘》课程大作业_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、大良及上大写网络教育学院数据挖掘课程大作业题 目:姓 名:报名编号: 学习中心:层 次: 专升本专 业:计算机科学与技术第一大题:讲述自己在完成大作业过程中遇到的困难, 解决问题的思 路,以及相关感想,或者对这个项目的认识,或者对 Python与数据 挖掘的认识等等,300-500字。数据挖掘是一门重要的专业课。数据挖掘引起了信息产业界的极大关注, 其主 要原因是存在大量数据,可以广泛使用,并且迫切需要将这些数据转换成有用的 信息和知识。数据挖掘就是从大量的数据中,抽取出潜在的、有价值的知识、模 型或规则的过程。作为一类深层次的数据分析方法,它利用了数据库、人工智能 和数理统计等多方面的技术。

2、要将庞大的数据转换成为有用的信息, 必须先有效率地收集信息。随着科技 的进步,功能完善的数据库系统就成了最好的收集数据的工具。数据仓库,简单地说,就是搜集来自其它系统的有用数据, 存放在一整合的储存区内。所以其实 就是一个经过处理整合,且容量特别大的关系型数据库,用以储存决策支持系统 所需的数据,供决策支持或数据分析使用。数据挖掘的研究领域非常广泛、主要包括数据库系统、基于知识的系统、人 工智能、机器学习、知识获取、统计学、空间数据库和数据可视化等领域。主要 是可以做以下几件事:分类、估计、预测、关联分析、聚类分析、描述和可视化、 复杂数据类型挖掘第二大题:完成下面一项大作业题目2019秋数据

3、挖掘课程大作业题目一:Knn算法原理以及python实现要 求:文档用使用word撰写即可。主要内容必须包括:(1)算法介绍。(2)算法流程。(3) python实现算法以及预测。(4)整个word文件名为姓名 奥鹏卡号 学习中心(如 戴卫东101410013979浙江台州奥鹏学习中心1VIP )答:一、knn算法介绍1 .介绍邻近算法,或者说K最近邻(kNN, k-NearestNeighbor)分类算法是数据挖掘 分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说 的是每个样本都可以用它最接近的 k个邻居来代表。kNN算法的核心思想是如果 一个样本在特征空间中的k个最相

4、邻的样本中的大多数属于某一个类别, 则该样 本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只 依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。kNN方法在类别决策时,只与极少量的相邻样本有关。由于kNN方法主要靠周围有限的邻 近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,kNN方法较其他方法更为适合。2 .核心概括主要的思想是计算待分类样本与训练样本之间的差异性,并将差异按照由小 到大排序,选出前面K个差异最小的类别,并统计在K个中类别出现次数最多的 类别为最相似的类,最终将待分类样本分到最相似的训练样本的类中

5、。与投票 (Vote)的机制类似。二、knn算法流程1 .准备数据,对数据进行预处理2 .选用合适的数据结构存储训练数据和测试元组3 .设定参数,如k4 .维护一个大小为k的的按距离由大到小的优先级队列,用于存储最近邻训 练元组。随机从训练元组中选取k个元组作为初始的最近邻元组,分别计算测试 元组到这k个元组的距离,将训练元组标号和距离存入优先级队列5 .遍历训练元组集,计算当前训练元组与测试元组的距离,将所得距离 L 与优先级队列中的最大距离Lmax6 .进行比较。若L>=Lmax则舍弃该元组,遍历下一个元组。若 L < Lmax, 删除优先级队列中最大距离的元组,将当前训练元组

6、存入优先级队列。7 .遍历完毕,计算优先级队列中k个元组的多数类,并将其作为测试元组 的类别。8 .测试元组集测试完毕后计算误差率,继续设定不同的k值重新进行训练, 最后取误差率最小的k值。三、代码实现使用python程序模拟KNN#法Created on Sat Jun 22 18:38:22 2019author: zhenimport numpy as npimport collections as csdatanp.array( 203,1,126,1,89,1,70,1,196,2,211,2,221,2,311,3,271,3)特征feature = data:,0 # print

7、(feature)label = data:,-1 #结果分类print(label)predictPoint = 200 #预测数据print(" 预测输入特征为: " + str(predictPoint)distance = list(map(lambda x : abs(predictPoint - x), feature) # 各 点到预测点的距离print(distance)sortIndex = np.argsort(distance) # 排序,返回排序后各数据的原始下标print(sortIndex)sortLabel = labelsortIndex #

8、 根据下标重新进行排序print(sortLabel)# k = 3 # 设置k值大小为3for k in range(1,label.size+1):result = cs.Counter(sortLabel0:k).most_common(1)00 #根据 k值计算前 k 个数据中出现次数最多的分类,即为预测的分类print(" 当 k=" + str(k) + " 时预测分类为: " + str(result)四、结果203 126 89 70 196 211 221 311 2711 1 1 1 2 2 2 3 3预测输入特征为: 2003, 74, 111, 130, 4, 11, 21, 111, 710 4 5 6 8 1 2 7 31 2 2 2 3 1 1 3 1当 k=1 时预测分类为:1当 k=2 时预测分类为:1当 k=3 时预测分类为:2当 k=4 时预测分类为:2当 k=5 时预测分类为:2当 k=6 时预测分类为:2当 k=7 时预测分类为:1当 k=8 时预测分类为:1当 k=9 时预测分类为:1总结1. 根据训练数据和结果可知,当k较小时【比如本次当k=11 ,若训练数据 存在异常数据时容易出现预测错误的情况,因此一般K值都不能太小!2. 当 k 值较大时,某个分

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论