CN101082925A - 一种基于sql语言的粗糙集属性约简方法 - Google Patents

一种基于sql语言的粗糙集属性约简方法 Download PDF

Info

Publication number
CN101082925A
CN101082925A CN 200710062284 CN200710062284A CN101082925A CN 101082925 A CN101082925 A CN 101082925A CN 200710062284 CN200710062284 CN 200710062284 CN 200710062284 A CN200710062284 A CN 200710062284A CN 101082925 A CN101082925 A CN 101082925A
Authority
CN
China
Prior art keywords
attribute
powerset
yojan
power set
empty
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 200710062284
Other languages
English (en)
Inventor
曹付元
梁吉业
姜广
宁姝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanxi University
Original Assignee
Shanxi University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanxi University filed Critical Shanxi University
Priority to CN 200710062284 priority Critical patent/CN101082925A/zh
Publication of CN101082925A publication Critical patent/CN101082925A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于SQL语言的粗糙集属性约简方法,该方法利用标准SQL语言中的GROUP BY子句对信息系统分组得到的元组数与原信息系统元组数的比值作为属性区分能力的度量,对信息系统的属性集生成的幂集,将幂集中的所有元素按照基数大小排序,根据属性约简的目的,如果属性集中的一个子集为约简,则包含该子集的其他元素一定不是约简,这样可以减少搜索空间,提高约简速度。本发明方法实现灵活简单,针对性强,和数据库实现了有效地耦合,可广泛应用于粗糙集属性约简领域。

Description

一种基于SQL语言的粗糙集属性约简方法
一、技术领域
本发明涉及一种粗糙集属性约简方法,具体属于一种基于SQL语言的粗糙集属性约简方法。
二、背景技术
在数据挖掘的诸多方法中,粗糙集理论与方法对于处理复杂系统不失为一种较为有效的方法,它是由波兰的Pawlak Z教授于1982年提出的,是一种处理不精确、不确定和模糊知识的软计算工具。经过二十多年的发展,粗糙集理论已经在信息系统分析、人工智能、决策支持系统、知识与数据发现、模式识别与分类、故障检测等方面取得了较为成功的应用。属性约简是粗糙集理论中的核心内容之一,它是指在保持知识库分类能力不变的条件下,删除其中不相关或不重要的知识。粗糙集属性约简的目标就是最小属性约简,它已经被证明是NP问题。经典的最小属性约简方法是基于区分矩阵的粗糙集属性约简方法,但由于该方法在面对大数据集的时候,由于运行时间过长而变得不再实用。
三、发明内容
本发明的目的在于克服基于区分矩阵的粗糙集属性约简方法的不足,提供一种运行速度快又实用的基于SQL语言的粗糙集属性约简方法。
本发明提供了一种基于SQL语言的粗糙集属性约简方法,该方法利用标准SQL语言中的GROUP BY子句对信息系统分组得到的元组数与原信息系统元组数的比值作为属性区分能力的度量,对信息系统的属性集生成的幂集,将幂集中的所有元素按照基数大小排序,根据属性约简的目的,如果属性集中的一个子集为约简,则包含该子集的其他元素一定不是约简,这样可以减少搜索空间,提高约简速度。具体包括如下步骤:
(1)输入信息系统S=(U,A),其中U是对象的非空有限集合,A是属性的非空有限集合;
(2)初始化:约简结果集red为空集;
(3)生成属性集A的幂集:对属性集A的元素进行排序,用二进制数(k1,k2,…,k|A|)2来表示A的子集,其中ki=0或1,当ki=0表示该子集中不包含A的第i个属性,当ki=1表示该子集中包含A的第i个属性,初始值为(01,02,…,0|A|-1,1)2,用二进制的方法依次加1,直到(11,12,…,1|A|-1,1)2,则得到属性集A不包含空集的幂集Powerset,对幂集Powerset中元素按照其元素基数大小从小到大排序,将结果放入存储区中;
(4)计算属性集A的区分能力α(A):通过GROUP BY子句,在属性集A上对U进行分组运算,得到的元组数|UA|与|U|的比值,即为 α ( A ) = | U A | | U | ;
(5)搜索过程:依次从存储区取幂集Powerset中的第一个元素,如果它与整个属性集A的区分能力一样,则第一个元素即为一个约简,并将其放入到约简结果集中,在幂集Powerset中查找包含该约简的所有元素,并将其删除,重复以上过程,直到幂集Powerset为空,这样可以逐步减少搜索空间,提高约简速度;
(6)停止条件判别:幂集Powerset为空,即幂集中所有元素均已处理,停止判断。
基于SQL语言的粗糙集属性约简方法的设计思想:
在粗糙集理论中,对于信息系统S=(U,A),其中U是对象的非空有限集合,A是对象的属性集,设PA,求不可区分关系IND(P)的一般方法是:将对象集U中未分类的个体两两比较,比较它们对P的每一个属性,如果所有的取值都相同,则属于同一个等价类。根据IND(P)的定义,两个个体同属于一个等价类当且仅当对P中的每一个属性,它们的取值都相同。在标准SQL(Structured Query Language)语言中,GROUP BY子句和COUNT(*)集函数将数据集按某一列(属性)或多列(属性)值分组,值相等的为一组,同时得到每组个数。组的个数在粗糙集理论中也就是划分的等价类的数目,每组所包含对象的个数也就是某一等价类所包含的对象数目。根据上述原理,给出了属性集区分能力的计算方法:
设SS=(U,A)是一个信息系统。设PA,则属性集P对S=(U,A)分组(GROUP BY)后,得到信息系统为SP=(UP,PU{Pnum}),其中Pnum为通过集函数COUNT(*)得到的附加属性,简记为SP=(UP,P′),则属性集P的区分能力的计算方法如下式:
α ( P ) = | Up | | U |
α(P)越大,它的区分能力越强,说明属性集P对U的分类越细,且有0<α(P)≤1。
与现有技术相比,本发明通过粗糙集理论与数据库技术的耦合,用SQL语言来定义知识以及在约简过程中搜索策略的改进,减少了搜索空间,提高了约简速度。
四、附图说明
图1为本发明方法的流程图。
五、具体实施方式
为了更好地理解本发明的技术方案,下面结合附图和实施例作进一步描述。
实施例1:
(1)信息系统S=(U,A)如表1,其中U={1,2,3,4,5},A={a,b,c,d}
表1
  id     a     b     c     d
  12345     01121     12011     20100     02012
(2)初始化
red=;
(3)生成属性集A的幂集Powerset
Powerset={{a},{b},{c},{d},{a,b},{a,c},{a,d},{b,c}{b,d},{c,d},{a,b,c},
                {a,b,d},{b,c,d},{a,c,d},{a,b,c,d}};
(4)计算 α ( A ) = | U A | | U | = 1 ;
(5)由于Powerset不为空,则取Powerset中的第一个元素{a},有 α ( { a } ) = 3 5 , 由α({a})≠α(A),从Powerset中删除{a};
(6)由于
Powerset={{b},{c},{d},{a,b},{a,c},{a,d},{b,c}{b,d},{c,d},{a,b,c},{a,b,d},{b,c,d},{a,c,d},{a,b,c,d}}不为空,则取Powerset中的第一个元素{b},有 α ( { b } ) = 3 5 , 由α({b})≠α(A),从Powerset中删除{b};
(7)同理依次从Powerset中删除{c}和{d};
(8)由于
Powerset={{a,b},{a,c},{a,d},{b,c}{b,d},{c,d},{a,b,c},{a,b,d},{b,c,d},{a,c,d},{a,b,c,d}}不为空,则取Powerset中的第一个元素{a,b},有α({a,b})=1,由α({a,b})=α(A),则red=red∪{{a,b}},在Powerset中删除包含{a,b}的元素,即删除{a,b},{a,b,c},{a,b,d}和{a,b,c,d};
(9)由于Powerset={{a,c},{a,d},{b,c},{b,d},{c,d},{b,c,d},{a,c,d}}不为空,则取Powerset中的第一个元素{a,c},有 α ( { a , c } ) = 4 5 , 由α({a,c})≠α(A),从Powerset中删除{a,c};
(10)同理依次从Powerset中删除{a,d}和{b,c};
(11)由于Powerset={{b,d},{c,d},{b,c,d},{a,c,d}}不为空,则取Powerset中的第一个元素{b,d},有α({b,d})=1,由α({b,d})=α(4),则red=red∪{{b,d}},在Powerset中删除包含{b,d}的元素,即删除{b,d},{b,c,d};
(12)由于Powerset={{c,d},{a,c,d}}不为空,则取Powerset中的第一个元素{c,d},有 α ( { c , d } ) = 4 5 , 由α({c,d})≠α(A),从Powerset中删除{c,d};
(13)由于Powerset={{a,c,d}}不为空,则取Powerset中的第一个元素{a,c,d},有 α ( { a , c , d } ) = 4 5 , 由α({a,c,d})≠α(A),从Powerset中删除{a,c,d};
(14)由于Powerset=,则得到所有约简为red={{a,b},{b,d}},计算完毕。
为了验证该方法的有效性,从UCI数据集中挑选了5组数据,并和基于区分矩阵的粗糙集属性约简方法进行了比较,实验环境使用的是Windows XP,CPU 2.4GHz,Ram 1GB,C#编程,SQL Server2000为后台数据库,实验结果如下表2:
表2  两种约简算法比较表
Data set 实例数 属性数 基于SQL语言的粗糙集属性约简方法 基于区分矩阵的粗糙集属性约简方法
执行时间(s) 约简后属性个数 执行时间(s) 约简后属性个数
 Car  1728   6 0.281 6 0.592 6
 postoperative-patient-data 90 8 0.187 8 0.483 8
 Nursery  12960   8 1.935 8 93.961 8
 Monkl  432   7 0.073 6 2.546 6
 Mushroom  8124   22 74.719 15 347.891 15
从实验结果数据可以看到,基于SQL语言的粗糙集属性约简方法和基于区分矩阵的方法结果完全一样,但基于SQL语言的粗糙集属性约简方法约简速度快,特别是在属性少、实例多的时候效果更为明显。

Claims (1)

1、一种基于SQL语言的粗糙集属性约简方法,其特征在于包括如下步骤:
(1)输入信息系统S=(U,A),其中U是对象的非空有限集合,A是属性的非空有限集合;
(2)初始化:约简结果集为空集;
(3)生成属性集A的幂集:对属性集A的元素进行排序,用二进制数(k1,k2,…,k|A|)2来表示A的子集,其中ki=0或1,当ki=0表示该子集中不包含A的第i个属性,当ki=1表示该子集中包含A的第i个属性,初始值为(01,02,…,0|A|-1)2,用二进制的方法依次加1,直到(11,12,…,1|A|-1,1)2,则得到属性集A不包含空集的幂集Powerset,对幂集Powerset中元素按照其元素基数大小从小到大排序,将结果放入存储区中;
(4)计算属性集A的区分能力α(A):通过GROUP BY子句,在属性集A上对U进行分组运算,得到的元组数|UA|与|U|的比值,即为 α ( A ) = | U A | | U | ;
(5)搜索过程:依次从存储区取幂集Powerset中的第一个元素,如果它与整个属性集A的区分能力一样,则第一个元素即为一个约简,并将其放入到约简结果集中,在幂集Powerset中查找包含约简的所有元素,并将其删除,重复以上过程,直到幂集Powerset为空;
(6)停止条件判别:幂集Powerset为空。
CN 200710062284 2007-07-09 2007-07-09 一种基于sql语言的粗糙集属性约简方法 Pending CN101082925A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200710062284 CN101082925A (zh) 2007-07-09 2007-07-09 一种基于sql语言的粗糙集属性约简方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200710062284 CN101082925A (zh) 2007-07-09 2007-07-09 一种基于sql语言的粗糙集属性约简方法

Publications (1)

Publication Number Publication Date
CN101082925A true CN101082925A (zh) 2007-12-05

Family

ID=38912498

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710062284 Pending CN101082925A (zh) 2007-07-09 2007-07-09 一种基于sql语言的粗糙集属性约简方法

Country Status (1)

Country Link
CN (1) CN101082925A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103336790A (zh) * 2013-06-06 2013-10-02 湖州师范学院 基于Hadoop的邻域粗糙集快速属性约简方法
CN106228173A (zh) * 2015-06-02 2016-12-14 武汉纺织大学 一种基于空间统计的取证数据约简方法
CN106446531A (zh) * 2016-09-08 2017-02-22 西北大学 一种基于先验决策模型的谱系树构建方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103336790A (zh) * 2013-06-06 2013-10-02 湖州师范学院 基于Hadoop的邻域粗糙集快速属性约简方法
CN103336790B (zh) * 2013-06-06 2015-02-25 湖州师范学院 基于Hadoop的邻域粗糙集快速属性约简方法
CN106228173A (zh) * 2015-06-02 2016-12-14 武汉纺织大学 一种基于空间统计的取证数据约简方法
CN106446531A (zh) * 2016-09-08 2017-02-22 西北大学 一种基于先验决策模型的谱系树构建方法
CN106446531B (zh) * 2016-09-08 2019-03-22 西北大学 一种基于先验决策模型的谱系树构建方法

Similar Documents

Publication Publication Date Title
CN106294762B (zh) 一种基于学习的实体识别方法
CN106845717B (zh) 一种基于多模型融合策略的能源效率评价方法
CN103136247B (zh) 属性数据区间划分方法及装置
CN101504654B (zh) 一种实现数据库模式自动匹配的方法
CN102663100A (zh) 一种两阶段混合粒子群优化聚类方法
WO2017096892A1 (zh) 索引构建方法、查询方法及对应装置、设备、计算机存储介质
CN114281809B (zh) 一种多源异构数据清洗方法及装置
US11288266B2 (en) Candidate projection enumeration based query response generation
CN105320764A (zh) 一种基于增量慢特征的3d模型检索方法及其检索装置
US10877973B2 (en) Method for efficient one-to-one join
CN114817575B (zh) 基于扩展模型的大规模电力事理图谱处理方法
CN103530316A (zh) 一种基于多视图学习的科学主题提取方法
CN101082925A (zh) 一种基于sql语言的粗糙集属性约简方法
Kumar et al. Parameterization reduction using soft set theory for better decision making
Yang et al. Top k probabilistic skyline queries on uncertain data
CN108346287B (zh) 基于影响因素分析的交通流量序列模式匹配方法
Rao et al. Efficient iceberg query evaluation using set representation
Deng et al. Explainable Subgraphs with Surprising Densities: A Subgroup Discovery Approach∗
Rao et al. Efficient Iceberg query evaluation using compressed bitmap index by deferring bitwise-XOR operations
CN112734010B (zh) 一种适用于图像识别的卷积神经网络模型压缩方法
Pola et al. Similarity sets: A new concept of sets to seamlessly handle similarity in database management systems
Vanahalli et al. An efficient dynamic switching algorithm for mining colossal closed itemsets from high dimensional datasets
Findlater et al. Iceberg-cube algorithms: An empirical evaluation on synthetic and real data
CN101216827B (zh) 智能卡中数据库的查询方法及装置
CN107704587A (zh) 一种用归并算法计算一对一join、一对多join的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication