基于K-近邻法的分类器的研究与实现(毕业论文)

合集下载

基于K近邻的分类算法研究

基于K近邻的分类算法研究

基于K近邻的分类算法研究K近邻(K-Nearest Neighbors)算法是一种常见的分类算法,它基于样本的特征相似性进行分类。

该算法的基本思想是,对于一个新的样本点,根据其与已知样本的距离,找出距离最近的K个已知样本,然后通过对这K个样本的分类情况进行统计,来对新样本进行分类。

K近邻算法的主要优点是简单、易于理解和实现,同时具有较好的分类效果。

然而,K近邻算法也存在一些缺点,包括计算复杂度高、对离群点敏感等。

因此,在应用K近邻算法时需要注意调整参数,并在数据预处理中去除异常值。

K近邻算法的步骤如下:1.计算样本之间的相似度:通常使用欧几里得距离或曼哈顿距离来计算样本之间的相似度。

样本间距离越小,相似度越高。

2.选择K值:K值是指在计算距离最近的K个样本时所选择的集合大小。

选择一个合适的K值非常重要,不同的K值会对分类结果产生影响。

3.找出K个最近的样本:根据已有样本与新样本的距离计算结果,找出距离最近的K个样本点,可以使用排序算法(如快速排序)来实现。

4.统计K个样本中的类别:统计在K个最近的样本中各个类别出现的频率,选择出现次数最多的类别作为新样本的类别。

5.进行分类:将新样本分类到出现频率最高的类别中。

K近邻算法的性能受到两个主要因素的影响:距离度量和K值的选择。

合适的距离度量方式和K值的选择能够显著提高算法的分类准确性。

然而,在处理大规模数据时,K近邻算法的计算复杂度较高,因为它需要对每个测试样本计算其与所有训练样本之间的距离。

为了降低计算复杂度,可以采用一些优化方法,如KD树、Ball树等。

在实际应用中,K近邻算法被广泛应用于文本分类、图像识别、推荐系统等领域。

例如,在推荐系统中,可以根据用户的兴趣领域和已有用户的行为数据,找出与一些用户兴趣相似的K个邻居用户推荐相应的商品。

总之,K近邻算法是一种简单、易于理解和实现的分类算法,它通过寻找样本之间的相似性来进行分类。

然而,该算法也存在一些缺点,需要在实际应用中合理调整参数,并对数据进行预处理,以提高分类效果。

K近邻分类算法范文

K近邻分类算法范文

K近邻分类算法范文K近邻(K Nearest Neighbors,KNN)分类算法是一种基本的机器学习算法,用于解决分类问题。

它是一种非参数算法,可以用于处理离散和连续型特征的数据集。

本文将详细介绍KNN算法的原理、步骤和算法的优缺点。

一、KNN算法原理1.计算距离:对于新样本,需要与训练集中每个样本计算距离。

常用的距离度量方法有欧式距离、曼哈顿距离和闵可夫斯基距离等。

2.选择K个最近邻居:根据距离选择K个最近邻居。

K的选择是一个重要参数,通常通过交叉验证来确定。

4.输出分类结果:将新样本标记为投票结果的类别。

二、KNN算法步骤KNN算法的步骤如下:1.数据预处理:对训练集进行数据预处理,包括特征标准化、缺失值处理和离散特征转换等。

2.特征选择:通过统计分析、特征重要性评估等方法选择合适的特征。

3.计算距离:对于新样本,计算它与训练集中每个样本的距离。

4.选择最近邻:根据距离选择K个最近邻居。

6.进行预测:将新样本标记为投票结果的类别。

7.模型评估:使用评估指标(如准确率、召回率和F1分数等)评估模型性能。

三、KNN算法的优缺点KNN算法具有以下优点:1.简单易理解:KNN算法的原理直观简单,易于理解和实现。

2.无假设:KNN算法不需要对数据做任何假设,适用于多种类型的数据。

3.非参数模型:KNN算法是一种非参数学习算法,不对数据分布做任何假设,适用于复杂的数据集。

KNN算法也有以下缺点:1.计算复杂度高:KNN算法需要计算新样本与训练集中所有样本的距离,计算复杂度较高,尤其是在大数据集上。

2.内存开销大:KNN算法需要保存整个训练集,占用内存较大。

3.对数据特征缩放敏感:KNN算法对特征缩放敏感,如果特征尺度不同,可能会导致距离计算不准确。

四、总结KNN算法是一种简单而有效的分类算法,适用于多种类型的数据。

通过计算新样本与训练集中所有样本的距离,并选择最近的K个邻居进行投票决策,可以得到新样本的分类结果。

K—最近邻分类算法应用研究

K—最近邻分类算法应用研究

K—最近邻分类算法应用研究作者:滕敏卫文学滕宁来源:《软件导刊》2015年第03期摘要:介绍了K-最近邻分类算法原理,将该算法应用到实际问题乘式割草机问题,通过实验得到了该乘式割草机问题中最近邻个数k的最佳值。

研究了K-最近邻分类算法中最近邻个数k的取值对K-近邻分类算法的影响,实验确定当k大致等于n/k时,其中n是该训练集中事例的数目,K-最近邻算法的分类准确率最高。

关键词:KNN分类算法;乘式割草机;训练集中图分类号:TP312文献标识码:A 文章编号:1672-7800(2015)003-0044-020 引言K-最近邻(以下简称KNN)分类算法[1]是目前比较流行的一种分类方法。

如今它已被广泛应用于各种人工智能领域,如模式识别、数据挖掘、后验概率估计、相似性分类、计算机视觉和生物信息学等。

KNN分类算法的最大优点是其适合于属性较多或数据量很大的问题。

它不需要先使用训练样本进行分类器设计,而是可以直接用训练集对数据样本进行分类,确定其类别标号。

KNN分类算法思想简练,易于实现,在许多领域都有成功应用。

1 K-最近邻算法简介最近邻分类法是基于类比学习,即通过给定的检验元组与和它相似的训练元组进行比较来学习。

训练元组用n个属性描述。

每个元组代表n维空间的一个点,即所有训练元组都放在n 维模式空间中。

当给定一个未知元组时,KNN分类算法搜索该模式空间,找出最接近未知元组的k个训练元组。

这k个训练元组是未知元组的k个“最近邻”。

文中的KNN分类算法是基于如下假设:①所有数据及类别都为数值类型;②度量距离越大,两个元组越相似;③每一个属性具有相等的权重;④属性值归一化;⑤如果元组X1和(或)X2的给定属性A的值缺失,则假定取最大可能差。

2 实验算法流程KNN分类算法流程如下:Step1:准备数据,对数据进行预处理。

Step2:选用合适的数据结构存储训练数据和测试元组。

Step3:设定参数k,一般训练元组数越多,k的值越大,通常取奇数。

基于K-近邻法的分类器的设计与实现

基于K-近邻法的分类器的设计与实现

1 近邻分类器
S A MP L E s a m p l e [ W, t mg F a n g _ _ S S 1 Z E ] , ' / 样本集 /

l _ 1 算法原理 i n t t e s t I Wa n g F a n g T S l Z E ] [ 1 6 ] ; / ' 测 试 集 , 1 ) 分类 问题 的两大类基本方法 c h a r c o mp a r e [ Wa n g F a , n g - 骶 ̄ t Z E I / ; ' 对 比集 / ( 1 ) 决策域/ 判别函数 : 利用判别 函数或决策 面方程将 特征空间划 ( 2 ) 计算测试样本 到每个 已知类别样本的距离 分成决策 域 距离的计算采用 的是 n 维空间 的欧氏距离公式 n 维欧氏空间是 ( 2 ) 模板 匹配 : 将待分类样本与标准模板 进行比较 根 据与各 类别 个点集 , 它的每个点 x可 以表 示为 ( x 【 1 】 , x 【 2 】 , …, x [ n 1 ) , 其中 x 【 i 1 ( i 模 板的匹配度情况 . 确定测试样本的类别 1 , 2 , …, n ) 是实数 , 称 为 X的第 i 个坐标 , 两个 点 A=( a [ 1 】 , a [ 2 1 , …, 近邻法属于典型 的模板 匹配 方法也是基于样本 直接设计 的非 线性分 a I n D和 B:( h i 1 ] I b [ 2 ] , …' b [ n ] ) 之间的距离 d ( a, B ) 定义为下面的公式 : 类 器 d ( X, B ) = s q r t 【∑( ( a 【 i ] 一b [ i ] ) 2) ]( i =1 , 2 , …, n ) 2 ) 最 小距离 分类器 : 部分代码如下 : ( 1 ) 将各类训练样本划分若干子类 , 并在每个子类中确定代表点 , d o u b l e d i s t a n c e ( s t r u c t S A MP L E m 5 , n t n 【 1 6 】 ) 般用 子类的质 心或邻 近质心 的某一样本作为代表点 . 测 试样本的类 f 别则以这 些代表 点的距离最近作决策 i n ti ; ( 2 ) 当选 择的代表点不一定能很好地代表各类时 , 错误 率增加 d o u b l e d d; 3 ) 最近邻 分类器: ( N N C — Ne a r e s t N e i b m ・ C l a s s d  ̄ i r e r ) d o u b l e s um= O. 0 :

KNN算法应用范文

KNN算法应用范文

KNN算法应用范文K近邻算法(K-Nearest Neighbors,简称KNN)是一种经典的非参数化监督学习方法,常用于分类和回归问题。

其基本思想是通过计算样本之间的距离,并据此为未知样本确定其类别或数值。

KNN算法的应用非常广泛,下面将从分类和回归两个方面详细介绍KNN算法的应用。

首先是分类应用。

KNN算法在分类问题中非常常见,它根据邻居的类别来确定未知样本的类别。

具体操作如下:1.确定K的值,即确定要考虑的最近邻居的数量。

2.计算未知样本与训练集中每个样本的距离,常用的距离度量方法包括欧氏距离、曼哈顿距离等。

3.根据距离大小,选择最近的K个样本。

4.根据这K个最近邻居的类别,通过投票或求平均值的方式确定未知样本的类别。

1.垃圾邮件分类:根据已知的垃圾和非垃圾邮件样本,通过KNN算法识别未知邮件是否为垃圾邮件。

2.手写数字识别:利用MNIST数据集中的训练样本,通过KNN算法对手写数字进行识别。

3.电影推荐系统:基于用户的历史浏览记录和评分数据,通过KNN算法推荐用户可能感兴趣的电影。

其次是回归应用。

除了分类问题,KNN算法也可以应用于回归问题,即用于预测数值型变量。

在回归问题中,KNN算法可以通过计算最近K个训练样本的平均值或加权平均值来预测未知样本的数值。

1.房价预测:根据房屋的特征(如面积、地理位置等),通过KNN算法预测房价。

2.股票价格预测:结合历史的股票价格数据和相关指标,通过KNN算法预测未来的股票价格。

3.人群流量预测:根据历史的人群流量数据(如公交站点、商场等),通过KNN算法预测未来一些时段的人群数量。

尽管KNN算法简单而直观,但在实际应用中也存在一些问题和挑战。

首先,KNN算法对样本中的离群值敏感,因此需要进行必要的数据预处理和异常值处理。

其次,KNN算法的计算复杂度较高,在大规模数据集上的使用可能会面临效率问题。

此外,KNN算法还需要选取合适的K值,这需要基于实际问题进行调优。

k近邻算法实现红酒数据集分类

k近邻算法实现红酒数据集分类

K近邻算法实现红酒数据集分类一、引言随着数据科学和机器学习的发展,分类算法在许多领域都得到了广泛的应用。

其中,K近邻算法(KNN,K-Nearest Neighbors)是一种简单且有效的分类算法,它基于实例的学习,通过测量不同数据点之间的距离进行分类。

红酒数据集是一个常用的分类任务,用于测试各种分类算法的性能。

本文将探讨如何使用K近邻算法对红酒数据集进行分类。

二、方法论1.数据预处理:首先,我们需要对红酒数据集进行预处理,包括缺失值填充、异常值处理、特征缩放等步骤,以保证数据的质量和一致性。

2.KNN算法原理:KNN算法是一种基于实例的学习,它通过测量不同数据点之间的距离进行分类。

在KNN中,我们选择距离最近的K个邻居,并根据这些邻居的类别进行投票,多数投票决定该数据的类别。

3.实现流程:首先,我们需要将数据集分成训练集和测试集。

然后,使用训练集对KNN算法进行训练,并确定最佳的K值。

最后,使用测试集对算法进行测试,评估其分类性能。

4.性能评估:使用准确率、召回率、F1分数等指标对KNN算法在红酒数据集上的分类性能进行评估。

三、红酒数据集红酒数据集是一个常用的分类任务,它包含了178个样本,每个样本有13个特征(如醇类、苹果酸、柠檬酸等)和一个标签(表示葡萄酒的种类)。

目标是通过分析葡萄酒的特征,将其分为三个类别:红葡萄酒、白葡萄酒和其他类型的葡萄酒。

四、KNN算法KNN算法是一种基于实例的学习,它通过测量不同数据点之间的距离进行分类。

具体来说,对于一个新的样本,KNN算法会在训练集中找到与该样本距离最近的K个邻居,并根据这些邻居的类别进行投票,多数投票决定该样本的类别。

在KNN中,我们通常使用欧氏距离或曼哈顿距离来测量不同数据点之间的距离。

五、实现与结果分析1.数据预处理:首先,我们对红酒数据集进行预处理,处理缺失值和异常值,并进行特征缩放。

这一步的目的是保证数据的质量和一致性,以提高分类的性能。

K_近邻分类算法的研究及实现

K_近邻分类算法的研究及实现

间复杂度为 O(nlogn), 所以整个训练阶段的时间 复杂度为 O(mn+nlogn), 进而得到一个结论: 分 类的效率主要取决于数据库的大小。
参考文献
[1]Hand.D 著.张银奎等译; 数据挖掘原理[M]. 北 2003,4. 京:机械工业出版社, [2]邵峰晶, 于忠清 . 数据挖掘原理与算法 [M]. 北 京:中国水利水电出版社, 2003. [3]韩家炜译.数据挖掘[J].概念与技术, 2000.
类算法的研究及实现
王建伟

1
张 璞
2
(1、 华北水利水电学院信息工程学院, 河南 郑州 450046
2、 河南职业技术学院, 河南 郑州 450000 )
要 :k- 近邻 (KNN) 算法是一种基本的基于实例的学习分类算法, 被广泛用于数据挖掘中。它分为学习过程和训练过程两个阶段。在学习
责任编辑 : 胡明月
-45-
表1
1 2 3 4 5 6 7 8 9 10
85 377% 77 83% 82 547% 73 585% 98 585% 1 90 094% 91 038% 89 623% 78 774% 86 745%
14 623% 22 17% 17 453% 26 415% 1 4151% 0 9 9057% 8 9623% 10 377% 21 226% 13 255%
一系列的相似的 阶段, 该算法除进行已知数据的简单存储之外不进行其它的操作, 而在学习阶段进行绝大多数的计算。每当遇到新的查询实例时, 实例就从存储器中取出, 并用来分类新的查询实例。 关键词 :k- 近邻; KNN ; 分类; 数据挖掘 1 概述 分类问题是数据挖掘邻域研究的一个基 本的问题, 给定一批具有类标记的训练实例, 分 类器被构造并被用于预测待分类实例的类标 一个实例 X 用一个 m 维的属性向量 记。通常, <x1,x2, · · · ,xm> 来表示, 其中 xi 表示实例 X 的第 i 个属性值。令 C 表示实例的类标记,则实例 X 的类标记可表示为 C(x)。KNN 算法作为一种基 本的基于实例的分类算法,由于它的有效 、 简 单、高鲁棒性而被广泛的应用于数据挖掘领域 来解决分类问题。 2 KNN 算法 KNN 算法假定所有的实例对应于 m 维的 实例间的距离是根据标准 欧氏空间 Rm 中的点, 的欧氏距离来度量的,假设有欧氏空间中的两 个实例 a 和 b,则 a、 b 之间的欧氏距离可以表 示为如下: 。 若对实例 X 进行分类时, KNN 将距离实例 X 最近, 即: 欧氏 距离最小的 k 个实例的最普遍的类标记作为预 测值赋给实例 X, 用公式表示如下: , 其中, y ( · · · k ) 为 X 的 k 个近 i i=1,2 C 为 c 所有取值的集合, δ 函数定义如下: 邻, δ (c,c(yi))=1 (c=c(yi)) 且 δ (c,c(yi))=0 (c ≠c(yi))。 由此可见 KNN 算法是一种典型的消极学习算 法, 在训练阶段仅仅简单存储所有的训练实例, 而所有的计算都延迟到训练阶段进行, 即: 对于 未分类的实例分类时,对每一个实例都构建一 个分类模型, 一次建模一次使用。 KNN 分类算法的实现主要可描述为如下: 2.1 训练阶段: 训练数据的存储, 主要包括 训练数据的离散化, 数据的读取, 数据的存储三 个方面。数据的离散化主要是针对数据的 m 维 属性, 对每个属性要进行单独的离散化, 并将离 散化后的数据写入一个表中,以为下一步的数 据读取做准备;数据的读取和存储主要是将表 中数据读入数组存储以便于程序执行处理。需 要说明的是为了确定分类的效果将离散后的数 据分成了十份, 用以进行十重交叉测试试验。 2.2 分类阶段:在这一阶段主要是将上一 阶段处理完毕的数据进行八重交叉测试试验, a.选取一数据作为待分类实例, 具体步骤如下: 计算此实例与其它实例的欧氏距离。b.比较各 个距离的大小, 选取最近邻的 K 个实例; c.查看 上步中 K 个实例的分类标记, 采用多数表决的 d. 应用十重交叉 方式确定待分类实例的类别; 测试试验方法, 重复以上各步骤。 3 结论与性能分析 K 取 2, 3, 4, 5, 6, 7, 8, 9, 10 分 别 做 了 测 试, 发现 K=8 时, 效果最好。最近距离矩阵选择 (K=8 ) 结论如表 1: 欧氏距离。经过程序执行 另外, K 的取值不同, 分类效果明显不同。

基于K-近邻算法的文本自动分类的开题报告

基于K-近邻算法的文本自动分类的开题报告

基于K-近邻算法的文本自动分类的开题报告一、选题意义随着互联网信息的爆炸,人们在面对海量信息的同时,也感受到了信息爆炸带来的困扰。

传统的手动分类方法无法满足人们对高效、准确分类的需求。

基于此,本课题选择了文本自动分类作为研究对象。

文本自动分类是指将一篇未标记分类的文章自动归入已知的类别中。

其中K-近邻算法是一种常见的分类算法。

在本课题中,我们将探讨基于K-近邻算法的文本自动分类方法。

二、研究目标与内容本课题的研究目标是构建一个基于K-近邻算法的文本自动分类系统,能够实现对篇章自动分类,提高分类准确性和效率。

本课题将深入探讨K-近邻算法的原理及其在文本自动分类中的应用,建立文本自动分类系统的数据集并进行数据预处理,构建基于K-近邻算法的分类模型,并评估模型的性能。

三、研究方法与技术路线本课题将采用如下方法和技术路线:1.文献调研:对相关文本自动分类算法进行调研,找到K-近邻算法在文本自动分类中的优势和不足。

2.构建数据集并进行数据预处理:收集大量文本数据,对数据进行清洗、去噪和分词等处理,以便于后续的特征提取和分类。

3.特征提取:提取文本特征,包括词袋模型、TF-IDF模型等,并进行特征选择。

4.基于K-近邻算法的分类模型:将特征向量输入到K-近邻算法模型中,训练模型,实现文本自动分类。

5.性能评估:使用准确率、召回率、F1值等指标对分类模型进行评估。

四、预期成果本课题预期实现一个基于K-近邻算法的文本自动分类系统,对其进行实验验证,并对其效果进行评估。

同时,对文本自动分类领域进行探索,为后续的研究提供借鉴。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于K-近邻法的分类器的研究与实现摘要模式识别的目的就是对未知的样本,判断它所在的类别。

人类的模式识别能力使得人们可以很好的认识周围的环境并与之交流,如果计算机也具有类似的能力,那么其智能程度将会大大提高,可以发挥更大的功能,更好的为人类服务。

本文的研究课题就属于计算机模式识别领域。

分类器是模式识别系统的重要组成部分;也是机器学习的重要研究领域。

本文主要研究对象是KNN分类方法,运用K近邻法(K Nearest Neighbor)对数据进行分类,并对分类结果进行比较研究。

本文的研究工作主要探讨基于K-近邻法的分类器的实现,主要集中在K-近邻法的理论分析,算法实现。

本文首先介绍了数据挖掘的目的、意义及现状,阐述了K-近邻算法在数据挖掘中的地位和作用,然后对K-近邻法进行了详细的研究与分析,并且实现基于K-近邻法的分类器。

本设计采用SQL Server 数据库系统和c#.net开发工具进行分析研究。

关键词:模式识别;数据挖掘;机器学习; K-近邻法;分类器THE RESEARCH & ACHIEVE OF CLASSIFIER BASED ON THE K-NEAREST NEIGHBOR ALGORITHMABSTRACTThe purpose of pattern recognition is judge it in the category for the unknown sample. The pattern recognition capabilities of human canmake it a good understanding of the environment around and exchange with them, If the computer also has a similar capability, its smart levelwill greatly improve ,the level they can play a greater role and better service to humanity. This research on the subject is a kind of computer pattern recognition.Classifier is an important component part in pattern recognition system;it is also an important research in the area of machine learning.This paper mainly targets KNN classification methods, using k-nearest neighbor for data classification, and compared the results.This article research on the achieve of classifier based on the k-nearest neighbor algorithm.Mainly concentrated in the k-nearest-neighbor theoretical analysis and algorithm .First of all,I introduce the purpose、meaning and recent development of data mining.and expatiate the status and function of k- nearest neighbour in this field.then research and analysis to the k-nearest-neighbor detailed and achieve theclassifier based on k-nearest-neighbor.I design this program with SQL Server database system and c #. net development tools for analysis and study.Key words: pattern recognition; data mining, machine learning; k nearest neighbour; classifier目录1 绪论 (1)1.1 课题背景及目的 (1)1.2 国内外研究状况 (2)1.3 课题研究方法 (2)1.4 论文构成及研究内容 (3)2 分类器概述 (4)2.1 分类器概念 (4)2.2 分类器构造方法 (4)2.3 近邻分类器的分类原理 (5)3 K-近邻法的研究与分析 (8)3.1 KNN概念 (8)3.2 K-近邻法算法研究 (9)3.2.1 K-近邻算法数学模型 (9)3.2.2 K-近邻法研究方法 (9)3.2.3 KNN算法需要解决的问题 (10)4 K-近邻法的分类器的设计与编程实现 (12)4.1 开发环境的选择 (12)4.1.1 数据库系统选择 (12)4.1.2 开发语言的选择 (12)4.2 程序设计实现 (14)4.2.1 界面设计 (14)4.2.2 功能模块设计 (15)4.2.3 数据库连接 (17)4.2.4程序运行与调试 (19)4.3 程序实现结果与分析 (20)5 结论 (21)参考文献 (22)致谢 (2)3附录源程序代码 (24)附件1 开题报告 (35)附件2 英文原文及翻译 (40)1 绪论模式识别或者通俗一点讲自动分类的基本方法有两大类,一类是将特征空间划分成决策域,这就要确定判别函数或确定分界面方程。

而另一种方法则称为模板匹配[1],即将待分类样本与标准模板进行比较,看跟哪个模板匹配度更好些,从而确定待测试样本的分类。

近邻法则在原理上属于模板匹配。

一般模式识别系统都由相互联系的两大部分组成,即特征提取器和分类器。

分类的方法包括统计的方法、近邻法、神经网络分类法、无监督聚类法和新出现的基于统计学习理论的支持向量机法,K-近邻分类法是近邻分类法的扩展。

它将训练样本集中的每个样本都作为模板,用测试样本与每个模板做比较,看与哪个模板最相似(即为近邻) ,就按最近似的模板的类别作为自己的类别。

譬如A类有10个训练样本,因此有10个模板,B类有8个训练样本,就有8个模板。

任何一个待测试样本在分类时与这18个模板都算一算相似度,如最相似的那个近邻是B类中的一个,就确定待测试样本为B类,否则为A类。

因此原理上说近邻法是最简单的。

1.1 课题背景及目的数据挖掘是近年来很多领域竟相研究的一个热点领域,而分类器是数据挖掘的一个研究分支[2]。

为了研究基于分类的K-近邻算法,先对数据挖掘做一个概要的介绍。

数据挖掘是八十年代,投资AI研究项目失败后,AI转入实际应用时提出的。

它是一个新兴的,面向商业应用的AI研究。

数据挖掘是从大量的数据中,抽取出潜在的、有价值的知识(模型或规则)的过程。

数据挖掘有分类、估值、预言、相关性分组或关联规则、聚集、描述和可视化六种分析方法。

本文讨论的分类就是首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,对于没有分类的数据进行分类。

K-近邻法是最显著的模式识别系统统计学方法之一,已经有40多年的历史,它很早就被用于文本分类研究。

K-近邻算法的最大优点是:简单,直观,容易实现,应用范围广,几乎可以用于各种不同类型的数据结构;知识以样本的形式表示,不需要进行模型的训练,容易获取,维护方便;在关系数据库中,算法可以用SQL语句来实现;非常适用于分布是计算。

缺点是:需要大量的已经准备好的历史数据;在对一个新样本分类时,要搜索所有的训练样本来寻找最近的邻居,计算量大,时间代价高;由于训练数据常驻内存,会占用大量的内存;且分类结果与参数有关。

在模板数量很大时其错误率指标还是相当不错的。

也就是说近邻法的研究还是有必要的。

1.2 国内外研究状况近十几年来,人们利用信息技术生产和搜集数据的能力大幅度提高,无数个数据库被用于商业管理、政府办公、科学研究和工程开发等,这一势头仍将持续发展下去。

于是,一个新的挑战被提了出来:在这被称之为信息爆炸的时代,信息过量几乎成为人人需要面对的问题。

如何才能不被信息的汪洋大海所淹没,从中及时发现有用的知识,提高信息利用率呢?要想使数据真正成为一个公司的资源,只有充分利用它为公司自身的业务决策和战略发展服务才行,否则大量的数据可能成为包袱,甚至成为垃圾。

因此,面对“人们被数据淹没,人们却饥饿于知识”的挑战,数据挖掘和知识发现(DMKD)技术应运而生,并得以蓬勃发展,越来越显示出其强大的生命力。

数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。

还有很多和这一术语相近似的术语,如从数据库中发现知识(KDD)、数据分析、数据融合(Data Fusion)以及决策支持等。

人们把原始数据看作是形成知识的源泉,就像从矿石中采矿一样。

原始数据可以是结构化的,如关系型数据库中的数据,也可以是半结构化的,如文本、图形、图像数据,甚至是分布在网络上的异构型数据。

发现知识的方法可以是数学的,也可以是非数学的;可以是演绎的,也可以是归纳的。

发现了的知识可以被用于信息管理、查询优化、决策支持、过程控制等,还可以用于数据自身的维护。

因此,数据挖掘是一门广义的交叉学科,涉及到人工智能、数据库、数理统计、机器学习、知识获取、数据可视化、高性能计算等多个领域[3]。

1.3 课题研究方法knn(k-nearest neighbor)分类器是一种在线分类器,即分类的时候,直接从训练样本中找出与测试样本最接近的k个样本,以判断测试样本的类属。

knn分类器的可扩展性比较差,因为每判决一个测试样本,都要将其与所有训练样本比较一次,计算距离。

但是knn分类器对处理与训练样本类似页面的时候的精度比较高。

所以在样本比较少而对分类速度要求不高的情况下,可以使用knn分类器.同样knn分类器也可以应用在只有正例训练样本的情况下。

在小规模仿真的时候使用精度较高的knn分类器,在大规模仿真和实际Web检验的时候使用knn分类器就没有有更好推广能力。

可以看出,尽管近邻法有其优良品质,但是它的一个严重弱点与问题是需要存储全部训练样本,以及繁重的距离计算量。

但以简单的方式降低样本数量,只能使其性能降低,这也是不希望的。

相关文档
最新文档