本文针对高校大学生群体的特殊性,提出利用形式概念分析进行学生分类管理,为学生工作者提供有价值的参考依据。将属性特征与等价类的方法应用于属性约简,提出了属性约简的判定定理并予以证明;其次提出属性约简及输出算法,首次将属性约简算法应用于高校大学生分类管理,具体做法是:根据属性建立二叉树,调用前序、中序及后序遍历,得到相应序列,首先删掉一个属性,再将每个概念的内涵与剩余属性求交集,若求交集的结果均为单元素集,则该属性可约,否则跳过该属性,重复以上步骤,可以得到约简集;随后讨论了算法的时间复杂度,本文首次将约简集输出算法的时间复杂度降为多项式级。通过实例分析,对比了其它属性约简算法的运行效率和分类能力,证明本文提出的算法具有可行性和正确性。最后进行了总结并讨论了开放性问题。 Based on the particularity of the college student group, this paper proposes to use formal concept analysis for classification management of students, which provides valuable reference for student workers. This paper applies characteristics of attribute and equivalent class to attribute reduction, puts forward judging theorems of attribute reduction with demonstration; secondly, proposes an algorithm of attribute reduction and output, applies this algorithm to classification management of college students for the first time. Specifications are as follows: first of all, establish a binary tree with attributes and obtain sequences of PreOrder, InOrder and PostOrder; delete an attribute; then perform intersection between the rest of attributes and each intent of concepts gradually, if each result contains single element, then this attribute can be removed, otherwise, skip this attribute, repeat the procedures above, consistent set can be obtained, reduction set which involves the minimum elements of consistent set can be output as well; subsequently, discusses the time complexity, this paper reduces the time complexity of reduction set output to polynomial level for the first time. Comparing with other algorithms on runtime and ability of classification, experi-mental results show that the proposed method approves feasibility and accuracy, in the end, draws a conclusion and discusses open issues.
徐春明1,林强2,王璨3*,杨楠4,薄瑜3
1大连科技学院学生处,辽宁 大连
2大连科技学院院长办公室,辽宁 大连
3大连科技学院数字技术学院,辽宁 大连
4大连科技学院经济与管理学院,辽宁 大连
Email: 652196979@qq.com, *297413904@qq.com
收稿日期:2020年3月31日;录用日期:2020年4月15日;发布日期:2020年4月22日
本文针对高校大学生群体的特殊性,提出利用形式概念分析进行学生分类管理,为学生工作者提供有价值的参考依据。将属性特征与等价类的方法应用于属性约简,提出了属性约简的判定定理并予以证明;其次提出属性约简及输出算法,首次将属性约简算法应用于高校大学生分类管理,具体做法是:根据属性建立二叉树,调用前序、中序及后序遍历,得到相应序列,首先删掉一个属性,再将每个概念的内涵与剩余属性求交集,若求交集的结果均为单元素集,则该属性可约,否则跳过该属性,重复以上步骤,可以得到约简集;随后讨论了算法的时间复杂度,本文首次将约简集输出算法的时间复杂度降为多项式级。通过实例分析,对比了其它属性约简算法的运行效率和分类能力,证明本文提出的算法具有可行性和正确性。最后进行了总结并讨论了开放性问题。
关键词 :形式概念分析,等价类,属性约简
Copyright © 2020 by author(s) and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
1966年,克拉克(Clark)和特罗(Trow)从大学认同度(identification with college)和参与思想(involvement with ideas)两个维度将学生分为4类,分别为:学术型(academic)、社交型(collegiate)、职业型(vocational)、不墨守成规型(nonconformist);李志峰 [
学生中的特殊群体理应成为学生工作者关心的重点对象。一般地,我们可以将学生中的特殊群体分为以下几类:行为障碍类学生、情绪化类学生、学习困难型学生。行为障碍类学生通常会表现出攻击行为、破坏行为,他们极度自我,不服从管理,这类学生经常打架,通过打架证明自己的价值;情绪化类学生通常表现为缺乏安全感,他们经常感到恐惧、抑郁,解决问题往往会采取极端的方法,极易出现心理问题;导致学习困难的原因有很多,比如学生可能沉迷于网络,可能因为早恋,也可能受原生家庭的影响,导致这类学生可能上课听讲很认真,但是就是学不会,还可能存在厌学倾向,因为学不会而放弃学习。学生很可能属于上述两种甚至是三种类型。有关分类的方法李珍 [
形式概念分析 [
随着形式背景中数据的增多,基于形式背景的概念数量会急剧增加。因此建立有效的概念格构造算法及属性约简算法成为研究的热点。
马垣 [
国外学者针对属性约简的主要研究方向有两个:基于粗糙集的知识约简和利用不可辨识矩阵的属性约简。Skowron教授 [
国内学者主要以概念格属性约简为研究热点,概念格属性约简在保持形式背景中所有概念的外延集不变的前提下,寻找极小属性子集,该属性子集依然能够完全确定形式背景上的原有概念,并保持它们之间原有的层次结构关系。
王霞等人 [
上述文献都具有很好的参考价值,但针对高效的属性约简集的输出算法研究较少,算法的运行效率也不高。因此本文以高效的属性约简集输出算法为研究重点。
本文分为五部分:第一部分介绍了概念格的相关理论;第二部分引入了属性约简的相关理论并对属性约简的判定定理予以证明;第三部分提出了基于等价类的属性约简算法并分析了算法的时间复杂度;第四部分通过实验分析,证明本文提出的算法具有可行性与正确性;最后,对本文进行了总结并讨论了开放性问题。
形式背景被记为一个三元组 ( X , Y , I ) ,其中X是有限的对象集,Y是有限的属性集, I ⊆ X × Y 是一个二元关系, I ( x , y ) ∈ { 0 , 1 } 。
定义1 令 A ⊂ X , B ⊂ Y ,则:
A ∗ = { y | ∀ x ∈ A , I ( x , y ) = 1 }
B ∗ = { x | ∀ y ∈ B , I ( x , y ) = 1 }
A ∗ 是对象集A共同具有的属性集, B ∗ 是共同具有属性集B的对象集。 〈 A , B 〉 是一个概念当且仅当 A = B * 且 B = A * 。其中A为概念的外延,B为概念的内涵。
性质1 A ∗ = ∩ x ∈ A x ∗ , B ∗ = ∩ y ∈ B y ∗ .
性质2 Y 1 ⊆ Y 2 ⊆ Y ⇒ Y 2 * ⊆ Y 1 * 。
性质3 Y 1 ⊆ Y 1 ** 。
证明:由概念的外延和内涵的定义可证。
偏序关系( ≤ )可以描述概念间的等级结构。 〈 A 1 , B 1 〉 和 〈 A 2 , B 2 〉 是形式背景 ( X , Y , I ) 下的两个概念, 〈 A 1 , B 1 〉 ≤ 〈 A 2 , B 2 〉 当且仅当 A 1 ⊂ A 2 或 B 1 ⊃ B 2 。
若 B ⊆ B 1 并且没有 〈 A 2 , B 2 〉 满足 B ⊆ B 2 ⊆ B 1 ,则 〈 A 1 , B 1 〉 是 〈 A , B 〉 的后继。
概念格 [
定理1 ∀ a ∈ Y , 〈 a ∗ , a ∗ ∗ 〉 为概念。
证明:令 A = a ∗ , B = a ∗ ∗ ,则 B = A ∗ ; B ∗ = a ∗ ∗ ∗ = a ∗ = A ,满足概念的定义,证毕。
推论1 Y 1 ⊆ Y , 〈 Y 1 ∗ , Y 1 ∗ ∗ 〉 为形式概念。
推论2 X 1 ⊆ X , 〈 X 1 ∗ ∗ , X 1 ∗ 〉 为形式概念。
证明:由定理1和外延内涵的定义及性质易证。
定义2对于概念格 L ( I ) = ( ( X , Y , I ) , ≤ ) , ∀ 〈 A , B 〉 ∈ L ( I ) , ∃ 〈 C , D 〉 ∈ L ( I 1 ) ,使 A = C ,则称 L ( I 1 ) 细于 L ( I ) 。
若 L ( I 1 ) 细于 L ( I ) 且 L ( I ) 细于 L ( I 1 ) ,则 L ( I 1 ) 与 L ( I ) 同构,记为 L ( I 1 ) ≅ L ( I ) 。
定义3 [
定义4 [
易证 R E 为等价关系。
定义5 各等价类中的最大元素定义为: { 〈 A , B 〉 | ∀ 〈 C , D 〉 ∈ L ( I ) , B ∩ E = D ∩ E , C ⊂ A } 。
从定义5可知,等价类中的最大元素为该等价类中位于概念格中层次最高的概念。
定理2 [
证明见文献 [
定理3 若E确定的等价类的个数为N,其中N为 L ( I ) = ( ( X , Y , I ) , ≤ ) 中概念的个数,且各等价类均为单元素集,则E为形式背景 ( X , Y , I ) 的协调集。进一步删除E中属性,直至E确定的等价类不全为单元素集,则E为约简。
证明:已知E确定的各等价类均为单元素集,即各等价类中的最大元素即为该单元素,由定理2可知,每个单元素与子背景中的概念一一对应,又因为单元素的个数与原始背景中的概念个数相同,且外延不变,所以,概念格的结构保持不变,满足协调集的定义,进一步删除协调集中的属性至子概念格与原概念格不同构,满足属性约简的定义,得证。
由定理2、3可知,属性约简的问题将转化为判断等价类是否为单元素集的问题。
形式背景中的属性可以分为三类 [
(1) 核心属性: C = ∩ E i ,其属于每个约简。
(2) 相对必要属性: J = ∪ E i − ∩ E i ,其属于某些约简但不属于每个约简。
(3) 不必要属性: K = Y − ∪ E i ,其不属于任一约简。
定理4 ∀ a ∈ Y ,若 a ∗ ∗ = a ,则a为核心属性。
证明:由定理1可知, 〈 a ∗ , a ∗ ∗ 〉 为概念,又因为 a ∗ ∗ = a ,则 〈 a ∗ , a 〉 为概念,由协调集的定义可知,a为协调集中的属性,进一步地,若删除属性a,会导致删除前后的概念格不同构,所以a为每个约简集中的属性,即a为核心属性。证毕。
引理1 在等价关系R下, R = { ( a , b ) ∈ Y ⊗ Y | a ∗ = b ∗ } ,相对必要属性的划分为 J / R = { J i | i = 1 , ⋯ , n } ,E为该形式背景下的约简集,则 | E ∩ J i | = 1 。
证明详见文献 [
定理5 C和J为形式背景下的核心属性集和相对必要属性集, J / R = { J i | i = 1 , ⋯ , n } , ∀ E ⊆ Y ,E是形式背景的约简集当且仅当 E = C ∪ e i { e i ∈ J i | i = 1 , ⋯ , n } 。
证明详见文献 [
由以上论述可以归纳出基于等价类的属性约简算法的一般步骤:首先删掉一个属性,再将每个概念的内涵与剩余属性求交集,若求交集的结果均为单元素集,则该属性可约,否则跳过该属性,重复以上步骤,可以得到所有的协调集,元素个数最少的协调集即为约简集。下面以伪码形式给出基于等价类的属性约简算法:
(1) 根据属性构造二叉树,调用二叉树前序、中序、后序算法,得到前序、中序、后序属性序列。
(2) 生成条件概念:
输入:形式背景 ( X , Y , I ) ;
调用概念生成算法;
输出:所有概念。概念的存储结构采用结构体数组 C [ N ] ,N为概念的个数,C有四个成员,no存储内涵中元素的个数,数组 E [ | X | ] 存储外延,数组 I [ | Y | ] 存储内涵。
(3) 将核心属性,存入数组 C o r e [ | Y | ] :
for each C [ i ]
if( C [ i ] . n o = = 1 ) i → C o r e [ | Y | ] ;
(4) 等价类法进行属性约简,根据前序、中序、后序序列,调用以下算法三次:
{E=Y;
for (i=1; i ≤ | Y | ; i++)/*从第i个属性开始,依次判断属性 Y [ i ] 是否可删*/
{if ( Y [ i ] in C o r e [ | Y | ] ) continue;/*核心属性不能约*/
E = E − Y [ i ] ;/*将去掉属性 Y [ i ] 后的剩余属性存放于E中*/
for each C [ j ]
{k=0;
s → d a t a = E ∩ C [ j ] . I [ | Y | ] ;/*将剩余属性E与每个概念的内涵求交存入节点S的数据域,k为计数器,记录相交属性的个数*/
s → n e x t = p [ k ] → n e x t ;
p [ k ] → n e x t = s ;}/* p [ k ] 为指针指示相交后有k个属性的单链表,采用头插法插入每个结点*/
k=0;
while( p [ k ] → n e x t )/*比较各非空的单链表*/
{ q = p [ k ] → n e x t ;
p=q;
while( q → n e x t )
{ p = p → n e x t ;
while(p)
if( p → d a t a = = q → d a t a ) break;/*两个结点的数据域相等,说明该等价类不是单元素集,则剩余结点无需比较*/
else p = p → n e x t ;
if(p!=NULL) break;
q = q → n e x t ;
p=q;
}
if( q → n e x t ) break;
k++;
}
if( k < N ) Y [ i ] → E ;/*
}
算法的时间复杂度分析:
概念的生成算法最优可以在线性的时间下完成 [
不难发现步骤(3)等价类法属性约简的时间复杂度主要耗费在求交集与比较各单链表是否有两个结点的数据域相等,复杂度分别
例1形式背景如表1所示,概念详见表2,生成的概念格如图1所示。
为了说明算法的正确性,仅举从删a开始的约简过程:
前序序列为
a | b | c | d | e | f | |
---|---|---|---|---|---|---|
1 | 0 | 0 | 0 | 1 | 1 | 0 |
2 | 1 | 1 | 0 | 0 | 0 | 0 |
3 | 1 | 1 | 1 | 0 | 0 | 1 |
4 | 0 | 0 | 0 | 0 | 1 | 0 |
5 | 0 | 0 | 1 | 1 | 0 | 0 |
表1. 形式背景
编号 | 概念 |
---|---|
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 |
表2. 生成的概念
图1. 概念格
(2)
(3) 依次求交集,得到各单链表:
(4) 各单链表中无相同元素,所以开始删b,因为b不是核心属性,
(5) 依次求交集,得到各单链表:
(6)
(7) 因为
(8) 因为f不是核心属性,所以
(9) 依次求交集,得到各单链表:
(10) 各单链表中无相同元素,最终输出约简
同理,可得另外一个约简
为了更好地说明本文的算法效果,我们在硬件配置为CPU E6600,内存2GB的计算机上,操作系统为Windows 10,采用 Microsoft Visual C++ 6.0作为运行环境,我们选取3组随机的形式背景进行实验,实验结果表明随着形式背景中数据的增多,算法的执行时间会有所提高,执行效率不如文献 [
图2. 运行效率
概念格属性约简的前提是寻找极小属性子集,该属性子集依然能够完全确定形式背景上的原有概念,并保持它们之间原有的层次结构关系。为了说明本文算法的有效性,约简后的形式背景见表3,得到的概念见表4,不难发现,约简前后的概念数量和概念格的结构均没有发生改变,证明了本文算法的有效性。
另外,属性约简前后属性对对象的分类能力也不应改变。为了更好地说明本文算法的分类能力,我们选取文献 [
现将本文算法应用于学生分类管理的实例中,学生分类数据如表6所示,
b | c | d | e | |
---|---|---|---|---|
1 | 0 | 0 | 1 | 1 |
2 | 1 | 0 | 0 | 0 |
3 | 1 | 1 | 0 | 0 |
4 | 0 | 0 | 0 | 1 |
5 | 0 | 1 | 1 | 0 |
表3. 约简后的形式背景
编号 | 概念 |
---|---|
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 |
表4. 约简后的概念
约简前属性对对象的分类 | 约简后分类能力是否改变 | 运算级别 | |
---|---|---|---|
文献 [ | 否 | 指数级 | |
本文的算法 | 否 | 多项式级 |
表5. 分类能力比较
a | b | c | d | e | h | q | |
---|---|---|---|---|---|---|---|
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
2 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
3 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
4 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
5 | 0 | 0 | 1 | 0 | 1 | 1 | 1 |
6 | 1 | 1 | 0 | 1 | 1 | 1 | 0 |
7 | 1 | 0 | 1 | 0 | 1 | 1 | 1 |
8 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
表6. 另一个形式背景
编号 | 概念 |
---|---|
表7. 生成的概念
属性 | 是否核心属性 | 删除后各等价类是否为单元素 | 是否可约 |
---|---|---|---|
a | 是 | - | 否 |
b | 否 | 否 | 否 |
c | 是 | - | 否 |
d | 否 | 是 | 是 |
e | 是 | - | 否 |
h | 否 | 否 | 否 |
q | 否 | 是 | 是 |
表8. 约简过程
本文利用等价类法进行属性约简,并设计出了运行效率较高的约简集输出算法,丰富了概念格属性约简的研究理论,借助单链表结点s、结构体数组
属性约简集输出算法仍然依赖于相对必要属性等价类的个数,其组合情况和属性的排列情况有关,若考虑属性的所有排列情况,又会使算法的运算级别升为阶乘级。因此如何设计更高效的属性约简集输出算法是文章进一步的研究方向。
在此衷心感谢论文撰写过程中各位作者的通力支持,同时对参考文献中作者的工作表示诚挚地感谢。
辽宁省自然科学基金项目(2019-ZD-0349,2019-ZD-0348)。
徐春明,林 强,王 璨,杨 楠,薄 瑜. 高校大学生分类管理中基于等价类的属性约简算法应用 Application of Attribute Reduction Algorithm Based on Equivalent Class in Classification Management of College Students[J]. 计算机科学与应用, 2020, 10(04): 665-675. https://doi.org/10.12677/CSA.2020.104069