当前位置:大学毕业论文> 专科论文>材料浏览

关于聚类算法论文范文写作 基于关系数据库管理系统的K—means聚类算法相关论文写作资料

主题:聚类算法论文写作 时间:2024-03-13

基于关系数据库管理系统的K—means聚类算法,此文是一篇聚类算法论文范文,为你的毕业论文写作提供有价值的参考。

聚类算法论文参考文献:

聚类算法论文参考文献 学位论文管理系统图书管理系统毕业论文超市管理系统论文学生管理系统论文

摘 要:基于关系型数据库管理系统(DBMS)的数据挖掘算法对数据库程序员来说是一个很重要的问题.这里介绍了利用SQL实现的基于关系数据库管理系统的K-means聚类算法,将简单的K-means计算转化为SQL.实验证明,提出的K-means聚类算法可以对大型数据集进行聚类.将K-means算法分别用SQL和C++实现,比较相关的速度和可伸缩性,并且研究了在DBMS外输出数据集的时间.实验表明,SQL对于小型数据集还是很有效的,但对于大型数据集效率较低,而输出次数对于C++成为了一个瓶颈.

关键词:聚类,K-means;SQL;关系数据库管理系统

中图分类号:TP391.41文献标识码:A文章编号:2095-7394(2015)04-0026-06

0 引言

基于关系数据库管理系统(DBMS)的K-means聚类算法是一个重要的和具有挑战性的问题[1-2].在本文中,专注于使用SQL执行基于关系数据库管理系统的K-means聚类算法,SQL是现今在关系型数据库中的标准语言.聚类算法[3-4]即是将数据集分割成几个组,使分在同一组得个体尽量接近,不在同一组的个体尽量远离.对于提高K-means算法的速度和质量有研究[5-7],但将它集成到关系数据库中却没有得到足够关注.

使用SQL执行基于关系数据库管理系统的K-means聚类算法有许多优势.在任何关系数据库管理系统SQL都是可用的.SQL使应用程序程序员从DBMS的内部机制中分离出来.许多数据集都是存储在关系数据库中的.尝试数据点和维数的不同子集会变得更灵活,更快,而且一般来说,在DBMS内部使用SQL查询比在数据库外部使用其他查询工具更加容易.没有DBMS的支持,管理大型数据集会是一个艰巨的任务.在大多数情况下,空间管理、容错、安全访问、并发性控制等,是由DBMS自动管理的.虽然在关系数据库外部,对一个庞大的数据集进行有效的聚类也是可行的,但将其导出到一个工作站所花费的时间会需要很长.在大多数情况下,聚类结果需要联系其他在数据仓库的报表才能得出结果,或者这些结果将会作为其他数据挖掘任务的输入.所以在关系数据库内部对数据集进行聚类能够解决这些问题.然而用SQL来执行聚类算法显现出一个明显的缺点,SQL语言没有高级程序语言,像C++那么有效和灵活.SQL没有提供很多数组和函数,很多计算如果用SQL表达的话会很复杂或者不可能.SQL查询需要引入更高级的程序语言,比如C来访问文件系统.许多存储器和磁盘访问优化只能被查询优化器控制,而不是数据库应用程序员.以上所提出的缺点将会在本文提出的K-means算法中得到解决.

1 定义

K-means的输入是一个数据集Y,包含d维的n个点,Y等于{y1,y2,等,yn},期望的聚类数目是ki,每个点yi都是d*1的列向量,K-means算法就是找到这样一个包含k个中心点的集合,使每个点到各自中心的距离的平方和最短.输出为三个矩阵,W,C,R,矩阵C和R都是d*k,W是k*1的.贯穿全文,有三个小标被用到指数矩阵中:i等于1,2,等.n,j等于1,2,等k,l等于1,2,等,d.矩阵和下标的具体描述见表1和表2.为了表示C或R中的任一列,我们用j下标(比如Cj,Rj),Cj可以理解为包含在第j个类中的d维向量,每一维有各自的每平方半径,是由Rj提供的.Cj是以列的形式表示第j个聚类中心,CTj是以行的形式表示第j个聚类中心.X1,X2,等,Xk表示数据集Y的k个数据子集,其中Xj∩Xj′等于,j≠j′.K-means使用欧几里德找到距离每个输入点最近的中心点.每个输入点yi到其聚类中心Cj的平均欧几里德距离可以表示为:

江苏理工学院学报第21卷

这里yi∈Xj.

2 用SQL执行K-means算法

至于如何在关系数据库管理系统中执行K-means,最后自动生成SQL代码,这是通过选定参数d的输入表格Y与参数k,k为期望的聚类个数,这在第二节中已经定义.SQL代码生成器动态创建SQL语句,通过不断地迭代监测聚类的好坏直至停止.SQL对于特定的数据库管理系统供应商有不同的扩展,但是我们使用标准SQL,这样我们的方案可以用在任何关系数据库中.

2.1 一般定义

从执行性能观点出发,在我们提出的算法背后有很多重要的定义.第一个是连接表时基于散列的机制.两张表每张都有n行,相同的主键,以时间复杂度O(n)进行连接.每行可以基于主键以时间复杂度O(l)进行查询.因此,如果不同的DBMS没有提供基于散列的索引,连接两张表的时间要比O(n)长.一般来说,人们认为n越大,d和k就相对较小.

2.2 K-means基础构架

用SQL来执行K-means算法最基本的方案为:

(1)安装:创建、索引和填充表格,从Y中随机初始化C和k

(2)重复E和M步骤,直至K-means算法收敛,当q(l-1)(C)-ql(C)≤∈(3)

E:计算每个数据点yi的聚类k,找到该点最近的中心Cj,然后更新充分的数据.

M:更新W、C、R,更新模板表格沿着K-means算法的进程.

2.3 K-means的执行

在这一节中主要描述了K-means算法的特性,并且用SQL来实现此算法.

3.3.1 创建、索引和填充表格

接下来,讨论表格的定义、索引,写出有效的SQL代码来执行K-means算法.通常,省略了数据定义语言(DDL)的申明和删除语句使阐述更加简洁.这样,大多数SQL代码包含了数据操作语言(DML).表格中主关键字这一列是有下划线的.为了有效的连接访问,这些表格是以主关键字为索引的.在SQL中下标i,j,l(表格2)被定义为整形列,数据集Y中数据点的维数d为数值型,W、C、R的矩阵入口为浮点型.在每个INSERT语句之前,都假设有“DELETE FROM等ALL;”语句,使在执行插入语句之前表格为空.

结论:关于对不知道怎么写聚类算法论文范文课题研究的大学硕士、相关本科毕业论文聚类算法论文开题报告范文和文献综述及职称论文的作为参考文献资料下载。

论客户关系管理系统CRM在酒店行业中重要性
摘 要:尽管CRM在旅游业中广泛使用,但是在旅游方面的学术研究中较少文献涉及到客户关系管理。本文希望更多人关注到CRM在旅游领域研究的必要性,以。

企业人力资源管理系统和企业绩效关系
中图分类号:F241 文献标识:A 文章编号:1674-1145(2017)01-000-02摘要作为一个企业,想要快速稳健的发展,人力资源的。

学生管理系统数据库设计
摘要:近年来,学生数量的增加使得管理学生也越来越有难度,目前的大学几乎所有的大学都会使用学生管理系统,而数据库在一个管理信息系统中占相当大的地位。

基于Web钢铁企业客户关系管理系统
创建有效的客户关系管理系统,是摆在钢铁生产企业面前的现实问题。本文阐述了钢铁企业客户关系管理的流程框架,分析了钢铁企业实施客户关系管理系统的要点。

论文大全