知识发现与数据挖掘.docx
《知识发现与数据挖掘.docx》由会员分享,可在线阅读,更多相关《知识发现与数据挖掘.docx(13页珍藏版)》请在冰豆网上搜索。
![知识发现与数据挖掘.docx](https://file1.bdocx.com/fileroot1/2023-2/2/724eaf5e-1069-4f26-b469-30cd5f9e1823/724eaf5e-1069-4f26-b469-30cd5f9e18231.gif)
知识发现与数据挖掘
知识发现与数据挖掘
LT
推进,企业在全生命周期业务活动中产生的数据增长迅速,种类繁多、数量巨大[1]。
例如,记录企业销售和运转的详细情况的数据[2],地球轨道卫星发送回地球的高分辨率图像和遥感数据[3],以及基因组实验对越来越多的有机体产生的序列、结构和技能数据等[4]。
未来学家约翰·奈比斯特指出:
“人类正被数据淹没,却饥渴于信息”。
从浩瀚无际的数据海洋中发现潜在的、有价值的知识,是这个大数据时代的一个标志性工作[5]。
然而,虽然各行业拥有大量的数据,但仍缺乏有用的知识。
由于这些海量数据十分复杂,且具有不完整、高维、异种、模糊和随机等非传统特点[6],无法使用传统的数据分析工具和技术进行处理。
为了解决这个问题,Fayyad于1989年首次提出知识发现(KnowledgeDiscoveryinData,KDD)的概念[7],它是指从数据集中提取可信的、新颖的、具有潜在使用价值的能够被人类所理解的模式的非繁琐的处理过程。
本文介绍了知识发现模型对数据的处理过程,并对知识发现的关键步骤——数据挖掘技术进行了详细概述。
在以上理论的基础上,结合实际研究,以个性化知识服务技术和设计理性模型知识挖掘过程为例,对涉及到的知识发现的关键技术进行了分析。
2知识发现
经典KDD处理模型又称阶梯处理模型,是Fayyad等人提出的具有九个步骤的阶梯递进的KDD处理模型,如图1所示,这九个步骤分别如下[8]。
(1)数据准备:
了解应用领域的相关情况,熟悉相关背景知识,确定用户的需求。
(2)数据选择:
根据用户的要求从数据库中提取出与KDD相关的数据,KDD将主要从这些数据中进行知识提取,在此过程中,会利用一些数据库操作对数据进行处理。
(3)数据预处理:
对从数据库中提取的数据进行清洗,检查数据的完整性及数据的一致性,对其中的噪声数据、缺失数据进行处理。
对噪声数据通常要解决的问题包括如何发现和处理重复记录和错误的属性值,对数据采取什么样的数据平滑工作,以及如何发现和处理孤立点。
(4)数据缩减:
经过预处理的数据,根据知识发现的任务对数据进行再处理,主要通过投影或数据库中的其他操作减少数据量。
(5)确定KDD的目标:
根据用户的要求,确定KDD是发现何种类型的知识,因为对KDD的不同要求会在具体的知识发现过程中采用不同的知识发现算法。
(6)确定知识发现算法:
在确定KDD目标后,根据这个目标选择合适的知识发现算法,包括选择合适的模型和参数,并使得知识发现算法与整个KDD的评价标准相一致。
(7)数据挖掘:
运用选定的知识发现算法,从数据中提取出用户所需要的知识,这些知识可以用一种特定的方式表示或使用一些常用的表示方法,如决策树、产生式规则或回归方程等。
(8)模式解释:
对发现的模式进行解释。
在此过程中,为了取得更为有效的知识,可能会返回到前面的处理步骤中反复进行前面的KDD过程,从而提取出更有效的知识。
(9)知识评价:
将发现的知识以用户能理解的方式呈现给用户,同时对所发现的知识进行检验和评估。
图1知识发现过程
KDD是一个交互的、迭代的、多步骤处理过程。
一次KDD并不定得到理想结果,因此KDD是一个目标和数据不断优化的过程。
可以在当前选择的知识算法不变的情况下,对学习参数进行调整,并重新训练和评价,直到达到满意的结构为止。
也可以选择其他知识发现算法,对同一个数据集进行实验,对比实验经过,找到最合适的知识表示方法和挖掘算法。
在以上过程中,还可以强调专家和用户的作用,提供给他们参与和支持KDD过程的机会。
3数据挖掘
数据挖掘是知识发现过程中最关键的步骤,也是技术难点所在。
数据挖掘是人工智能的一个应用领域,是利用一种或多种计算机学习技术,从数据中自动分析并提取信息的处理过程。
研究知识发现的人员中大部分都在研究数据挖掘技术,采用较多的技术有决策树、分类、聚类、粗糙集、关联规则、神经网络、遗传算法等。
数据挖掘根据知识发现的目标,选取相应算法的参数,分析数据,得到可能形成知识的模式模型。
数据挖掘是知识发现最核心的部分,是采用机器学习、统计等方法进行知识学习的阶段。
数据挖掘算法的好坏将直接影响到所发现知识的好坏。
目前大多数的研究都集中在数据挖掘算法和应用上。
人们往往不严格区分数据挖掘和数据库中的知识发现,把两者混淆使用。
一般在科研领域中称为KDD,而在工程领域则称为数据挖掘。
通过对文献研究总结发现,数据挖掘任务可以划分为三个大类,包括有指导的分类技术,关联分析和无指导的聚类分析技术[9]。
3.1分类技术
分类是指是通过有指导的学习训练建立分类模型,使用模型对未知分类的实例进行分类。
分类技术主要有:
(1)决策树分类:
决策树是数据挖掘中最常用的一种分类和预测技术,使用其可建立分类和预测模型。
决策树模型是一个树状结构,树中每个节点表示分析对象的某个属性,每个分支表示这个属性的某个可能的取值,每个叶节点表示经历从根节点到该叶节点这条路径上的对象的值。
模型通过树中的各个分支对对象进行分裂,叶节点表示的对象值表达了决策树分类的结果。
决策树仅有一个输出,若需要多个输出,可以建立多棵独立的决策树以处理不同输出。
(2)基于规则的分类:
基于规则的分类使用一组if…then规则来分类记录的技术。
算法思想:
先从训练集生成规则集合,规则是使用合取条件表示的,如规则R:
(条件i)->yi,其中R是如下形式:
R:
(胎生=否)^(飞行动物=是)->鸟类;
其中左边称为规则前件或前提;规则右边称为规则后件。
如果规则R的前件和记录x的属性匹配,则称R覆盖x。
当R覆盖给定的记录时,称R被激发或被触发。
建立规则集合后,就进行分类。
对每个待分类的记录和规则集合中的每条规则进行比较,如果某条规则被触发,该记录就被分类了。
(3)最近邻(kNN,k-NearestNeighbor):
所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。
kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。
该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。
kNN方法在类别决策时,只与极少量的相邻样本有关。
由于kNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,kNN方法较其他方法更为适合。
(4)贝叶斯分类:
贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。
也就是说,贝叶斯分类器是最小错误率意义上的优化。
(5)人工神经网络:
神经网络领域最早是由心理学家和神经学家开创的,旨在开发和测试神经的计算机模拟。
粗略地说,神经网络是一组连接的输入/输出单元,其中每个连接都与一个权重相关联。
在学习阶段,通过调整这些权重,能够预测输入元组的正确类标号。
由于单元之间的连接,神经网络学习又称连接者学习(ConnectionistLearning)。
神经网络需要很长的训练时间,对于有足够长训练时间的应用更为合适。
需要大量的参数,通常主要靠经验确定,如网络拓扑结构。
神经网络常常因为可解释性差而受到批评。
例如,人们很难解释网络中学习的权重和“隐含单元”的符号意义。
然而,神经网络的优点包括其对噪声数据的高承受能力,以及对未经训练的数据模式分类能力。
在缺乏属性和类之间的联系的知识时可以使用它们。
不像大部分决策树算法,它们非常适合连续值的输入和输出。
神经网络算法是固有并行的,可以使用并行技术来加快计算过程。
(6)支持向量机:
它可以很好的应用于高维数据,避免了高维灾难问题,它使用训练实例的一个子集来表示决策边界,该子集称作支持向量。
SVM寻找具有最大边缘的超平面(比那些较小的决策边界具有更好的泛化误差),因此也经常称为最大边缘分类器。
分类思想:
(1)在线性可分的情况下就是要学习(找)到这个最大边缘的决策边界(通过线性规划或拉格朗日乘子来求得),当然也允许有一定的误差(可以有少量的结点分在了它不该在的类,但只要在能够容忍的范围就行),然后利用这个最大边缘的决策边界来分类,结果落在一边的为一类,在另一边的为另一类;
(2)在线性不可分的情况下,将原来的数据从原先的坐标空间X转换到一个新的坐标空间中,从而可以在变换后的坐标空间中使用一个线性的决策边界来划分样本的类标号(主要技术包括:
非线性变换、核技术和Mercer定理)。
3.2关联分析技术
关联分析是指发现实物之间关联关系的分类过程,其典型应用就是购物篮分析。
关联分析是一种关联规则挖掘技术,用于发现数据中属性之间的有价值的联系。
现实中,这样的例子很多。
例如超级市场利用前端收款机收集存储了大量的售货数据,这些数据是一条条的购买事务记录,每条记录存储了事务处理时间,顾客购买的物品、物品的数量及金额等。
这些数据中常常隐含形式如下的关联规则:
在购买铁锤的顾客当中,有70%的人同时购买了铁钉。
这些关联规则很有价值,商场管理人员可以根据这些关联规则更好地规划商场,如把铁锤和铁钉这样的商品摆放在一起,能够促进销售。
关联分析主要采用Aprioro技术。
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。
其核心是基于两阶段频集思想的递推算法。
该关联规则在分类上属于单维、单层、布尔关联规则。
在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。
该算法的基本思想是:
首先找出所有的频集,这些项集出现的频繁性至少和预定义的最小支持度一样。
然后由频集产生强关联规则,这些规则必须满足最小支持度和最小可信度。
然后使用第1步找到的频集产生期望的规则,产生只包含集合的项的所有规则,其中每一条规则的右部只有一项,这里采用的是中规则的定义。
一旦这些规则被生成,那么只有那些大于用户给定的最小可信度的规则才被留下来。
为了生成所有频集,使用了递推的方法。
3.3聚类技术
聚类是一种无指导的学习,在学习训练前,没有预先定义好的分类,数据实例是按照某种相似性度量方法,计算实例之间的相似程度,将最为相似的实例聚类在一个组——簇中,在解释和理解每个簇的含义,从而发现聚类的意义。
聚类技术主要有:
(1)K-means算法:
⏹随机选择一个K值,用以确定簇的总数;
⏹在数据集中任意选择K个实例,将它们作为初始的簇中心;
⏹计算这K个簇中心与其他剩余实例的简单欧氏距离,用这个距离作为实例之间相似度的测量,将与某个簇相似度高的实例划分到该簇中,成为其成员之一;
⏹使用每个簇中的实例来计算该簇新的簇中心;
⏹如果计算得到新的簇中心等于上次迭代的簇中心,终止算法过程,否则,用新的簇中心作为簇中心并重复步骤3-5。
(2)凝聚聚类:
⏹开始时,将每个数据实例放在不同的分类中;
⏹直到所有的实例都成为某个簇的一部分;
确定两个最相似簇;
将上一步选中的簇合并为一个簇;
⏹选择一个由步骤2迭代形成的簇作为最后结果。
(3)Cobweb算法:
⏹建立一个簇,使用第一个实例作为它唯一的成员;
⏹对于每个剩余案例,用一个评价函数决定选择一以下两个动作之一执行:
将新实例放到一个已存在的簇中;
创建一个只具有这个新实例的新概念簇。
4实例分析
为了更好地理解从大量数据中进行知识发现的过程,结合作者研究,以个性化知识服务技术和设计理性模型知识挖掘过程为例,分析其中涉及到的知识发现思想和技术。
4.1基于用户行为感知的个性化知识服务[10]
基于用户行为感知的个性化知识服务技术实际上是从大量数据中推送有用的知识给用户。
目前,云制造技术的推广应用已经取得了一定进展,但是,对个性化服务模式的研究较少,平台用户在海量数据中难以获取所需资源,服务提供者缺乏对服务需求者的了解,难以有针对性地提供服务,平台运营商难以了解用户的隐形需求,从而导致资源利用率不高。
(1)用户行为分类:
为了全面获取用户的知识需求,通过用户基本信息、用户行为信息、用户服务信息三个层次建立系统用户模型。
用户模型信息中的用户基本信息和用户服务信息存储在数据库表中,可以通过直接读取相关数据库表获取相应的知识需求概念术语,例如服务的关键词、功能描述、用户的专业、部门等信息,可以通过本体查找和语义扩展来获取用户知识需求。
(2)用户行为评价:
为了给用户提供自身迫切需要且高质量的知识资源,本文提出知识需求度的概念,用以描述用户对知识资源的需求程度。
知识需求度包括知识关注度和知识价值度。
知识关注度从用户对知识的操作行为的角度描述,通过统计分析用户对知识的评分、评论、收藏、订阅和问答等隐性行为,反映了用户对知识资源的关注程度。
知识价值度通过用户主观评价知识资源的价值来反映知识质量的高低,从知识资源的有效性、相关性、创新性和可读性四个方面进行评分。
基于本体的个性化知识服务流程如图2:
输入:
用户个性化需求;
输出:
知识服务资源。
算法处理步骤如下:
步骤1:
判断是否是主动服务,如果是则转步骤2,否则根据用户的输入需求,进行基于本体的分词和扩展,获取用户的个性化需求。
图2基于本体的个性化知识服务流程
步骤2:
在用户模型中进行信息行为过滤,并对过滤后的词集进行语义扩展。
步骤3:
基于扩展词集进行知识资源检索,并计算每个知识资源的用户需求度。
步骤4:
判断知识资源是否大于设定阈值,如果是则对知识资源进行排序,并进行下一步,否则结束程序,不输出知识资源。
步骤5:
输出前N个知识资源,结束。
4.2设计理性知识挖掘[11]
北航刘继红老师团队研究了设计理性知识挖掘理论与方法。
设计理性(DesignRationale)是设计过程知识系统化的显性表达,它包括设计过程中的所有背景知识和信息,包括设计过程中的问题,设计者针对问题的思考、分析、决策以及分析、决策的依据等。
典型的设计理性模型如图3所示,包括设计意图、设计选项、设计决策、决策支持以及设计操作5种设计元素和分解关系、满足关系、决策关系、依据关系、实现关系、触发关系、返回关系以及演进关系8种元素语义关系。
由于设计理性模型的构建极大的依赖于设计者的专业知识、业务水平和设计习惯,使得单一的设计理性模型实例的准确性和通用性难以保障,阻碍了设计理性的高效重用。
图3设计理性模型
首先文章提出了面向知识挖掘的设计理性模型预处理方法。
结合设计认知的研究成果和细粒度设计理性模型的结构特征,将设计迭代归纳为四类:
重复迭代(repeatediteration)、意图重定义迭代(Intentredefinitioniteration)、方案刺激迭代(schemestimulationiteration)、决策变更迭代(decisionalterationiteration)。
提出了针对四种设计迭代的识别和归并算法。
提出了基于语义的设计理性模型节点相似度计算方法,该方法基于设计词典实现节点属性描述的分词,基于本体计算概念语义相似度,基于动词空间和名词空间计算短文本的语义相似度。
各设计节点进行相似度计算的前提都是其特征属性,直接通过关键词匹配即可识别各属性的描述是否相同。
设计节点的相似度计算的难点集中于对其TextDescription属性的语义判断。
依据细粒度设计理性模型对于TextDescription属性的定义,可知TextDescription属性的描述是一段设计者使用自然语言描述的短文本,大多数情况下甚至只是一个简短的句子。
本文首先通过基于词典的分词技术对设计节点的TextDescription属性进行分词处理,将其转化为一个词集,并将词集分为名词词集和动词词集,然后基于领域本体计算两个词集中概念与概念的语义相似度,分别构建名词向量空间和动词向量空间,构建出两个待判断的TextDescription属性的特征向量,通过计算特征向量的余弦值得出两个模型节点的相似度。
考虑到产品设计描述的复杂性,为提高关键词切分的准确率,本文采用结合正向最大匹配法与逆向最大匹配法的双向匹配最大词长分词法。
提出基于频繁模式挖掘的设计知识发现方法,其基本思想是认为在大量设计理性模型实例中准确性和通用性较差的设计知识或模型机构是小概率事件,反之频繁出现的设计知识或模型结构的准确性和通用性较高。
频繁子图挖掘是一种关联分析技术,其任务是在图的集合中发现一组公共子结构,使其支持度满足需求。
该方法使用图挖掘领域的相关技术发现设计理性模型中的频繁结构,将细粒度设计理性模型转化为标号图,通过基于DFS(Depth-First-Search)编码的增长式频繁子图挖掘算法发现频繁子图,并将其转化为可扩展标记语言XML(ExtensibleMarkupLanguage)格式的设计理性模型频繁结构。
5结束语
虽然各行业拥有大量的数据,但仍缺乏有用的知识。
知识发现方法可以有效地解决这个问题。
数据挖掘是知识发现的关键步骤,主要包括分类技术、关联分析技术和聚类技术三类技术。
每类技术的思想可以为知识发现研究提供很好的指导。
基于以上理论研究,结合作者目前研究方向,以个性化知识服务技术和设计理性模型知识挖掘过程为例,对涉及到的知识发现技术进行了分析。
参考文献
[1]魏中贺,李少波.基于云制造的数据挖掘研究[J].贵州大学学报:
自然科学版,2015,32
(1):
75-80.
[2]刘胜.基于数据挖掘的企业销售决策支撑平台设计[D].浙江理工大学,2015.
[3]谢榕,刘亚文,李翔翔.大数据环境下卫星对地观测数据集成系统的关键技术[J].地球科学进展,2015,30(8):
855-862.
[4]宁康,陈挺.生物医学大数据的现状与展望[J].科学通报,2015(5):
534-546.
[5]WuX,ZhuX,WuGQ,etal.Dataminingwithbigdata[J].IEEEtransactionsonknowledgeanddataengineering,2014,26
(1):
97-107.
[6]马建光,姜巍.大数据的概念、特征及其应用[J].国防科技,2013,34
(2):
10-17.
[7]FayyadUM.DataMiningandKnowledgeDiscoveryinDatabases:
ApplicationsinAstronomyandPlanetaryScience.[C]//ThirteenthNationalConferenceonArtificialIntelligenceandEighthInnovativeApplicationsofArtificialIntelligenceConference,AAAI96,Iaai96,Portland,Oregon,August4-8.1996:
1590-1592.
[8]戴红,常子冠,于宁.数据挖掘导论[M].清华大学出版社,2014.
[9]PANG-NINGTAN(美).数据挖掘导论:
完整版[M].人民邮电出版社,2011.
[10]李颖新,敬石开,李向前,等.云制造环境下基于用户行为感知的个性化知识服务技术[J].计算机集成制造系统,2015,21(3):
848-858.
[11]姜浩,刘继红,王宽.基于设计理性模型的设计过程知识挖掘[J].计算机集成制造系统,2015,21
(2):
289-297.