马尔可夫及隐马尔可夫模型在数据挖掘中的应用

数据库与信息管理本栏目责任编辑:

闻翔军马尔可夫及隐马尔可夫模型在数据挖掘中的应用

侯传宇1,2

(1.合肥工业大学计算机与信息学院,安徽合肥230009;2.宿州学院数学系,安徽宿州234000)

摘要:随着用户对于数据挖掘的精确度与准确度要求的日益提高,马尔可夫模型与隐马尔可夫模型被广泛用于数据挖掘领域。本文阐述了马尔可夫模型和隐马尔可夫模型数据挖掘领域的应用,以及隐马尔可夫模型可解决的问题,以供其他研究者借鉴。关键词:马尔可夫模型;隐马尔可夫模型;数据挖掘

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)07-11186-03

TheApplicationofMarkovModelsandHiddenMarkovModelsinDataMining

HOUChuan-yu1,2

(1.SchoolofComputerandInformation,HefeiUniversityofTechnology,Hefei230009,China;2.DepartmentofMathematics,SuzhouCol-lege,Suzhou234000,China)

Abstract:Withthecustomer'srequirementraisingdaybydayinaccuracyandaccurate,MarkovModelsandHiddenMarkovModelswereextensivelyusedinDataMining.ThispaperintroducedtheapplicationofMarkovModelsandHiddenMarkovModelsinDataMining,andsomeproblemsthatcouldbesolvedbyHiddenMarkovModels,whichcouldprovidehelptoresearchersinthisdomain.Keywords:MarkovModels;HiddenMarkovModels;DataMining

1引言

当前Internet与数据库的高速发展,信息以海量增长,对于越来越多的数据,如何寻找有用的信息是人们所关心的问题,也是数据挖掘的任务。数据挖掘(DataMining,DM),又称数据库中的知识发现(KnowledgeDiscoveryinDatabase,KDD),是从90年代初兴起的一门数据库技术。数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。数据挖掘是多学科交叉的产物,结合了数据库、人工智能、统计学、机器学习、可视化等技术,通过发现有用的新规律和新概念,提高了数据拥有者对大量原始数据的深层次理解、认识和应用,解决了“数据丰富,知识贫乏”的问题,具有广泛的应用前景。

数据挖掘能从大量数据中抽取出隐藏在数据之中的有用信息,从而为决策者进行决策提供重要的依据,大大提高决策的科学性和减小决策的盲目性也可以帮助商业管理者更好地理解用户的行为,制订相应的用户服务政策,从而增加商业机会。例如电信公司通过发现用户通话的规律,制定更合理的优惠政策。随着用户对于挖掘数据的精度与准确度要求的提高,大量数据挖掘算法涌

自动文本抽取、数据流分类等,取得了较现。其中,数学模型—马尔可夫模型与隐马尔可夫模型应用在许多挖掘领域,如:语音识别、

好的挖掘效果。

2马尔可夫模型及隐马尔可夫模型简介

马尔可夫模型(MarkovModels,MM)可来描述为:如果一个系统有N个状态,S1,S2,……,Sn,随着时间的推移,该系统从某一状态转移到另一状态,系统在时间t的状态记为qt。系统在时间t处于状态sj(1≤j≤N)的概率取决于其在时间1,2,……,t-1的状态,该概率为:p(qt=sj|qt-1=si,qt-2=sk,……)。

若系统在时间t的状态只与其在时间t-1的状态相关,则该系统构成一个离散的一阶马尔柯夫链(时间与状态都是离散的)又称为齐次马氏链,即:

p(qt=sj|qt-1=si,qt-2=sk,……)=p(qt=sj|qt-1=si)

若(1)式是独立于时间t的随机过程,即状态于时间无关,则称为马尔可夫过程。(1)

用Pij(t)表示,在任一时刻s,qs从状态i经过时间t转移到状态j的概率。Pij(t)表示其转移概率。则可通过其转移矩阵来求其n步

"(0),则可以求得其n步的概率分布:P"(n)=P"(0)p(n)。转移矩阵,令p=p(1)=Pij(t),则其n步转移矩阵为p(n)=pn。若初始状态的概率分布P

收稿日期:2008-01-15

作者简介:侯传宇(1980-),男,安徽利辛人,助教,合肥工业大学在职研究生,研究方向:人工智能与数据挖掘。

1186

本栏目责任编辑:闻翔军数据库与信息管理隐马尔可夫模型(HiddenMarkovModels,HMM)是一个双重随机过程,具体的状态序列不可知,只知其状态转移的概率,即模型的状态转换过程是不可观察的(隐蔽的),而可观察的事件的随机过程是隐蔽的状态转换过程的随机函数。也就是说:(1)HMM的状态是不确定或不可见的,只有通过观测序列的随机过程才能表现出来。(2)观察到的事件与状态并不是一一对应,而是通过一组概率分布相联系。(3)HMM是一个双重随机过程,两个组成部分:①马尔可夫链:描述状态的转移,用转移概率描述。②一般随机过程:描述状态与观察序列间的关系,用观察值概率描述。隐马尔可夫模型可以用图1表示,其参数的含义见图2。

图1HMM组成示意图

图2参数的含义

假设λ=(π,A,B),则可以根据前向算法(Theforwardprocedure)或后向算法(Thebackwardprocedure)来求P(O|λ)。根据Viterbi搜索算法可以解决如何选择一个对应的状态序列s=q1,q2,...qt,使得s能够最为合理的解释观察序列O的问题。

3马尔可夫模型与隐马尔可夫模型在数据挖掘中的应用

马尔可夫模型是一种预测模型,广泛的应用于商业预测以及隐含概念漂移的数据流分类中。其在商业预测中为决策者进行决策提供重要的依据,提高了决策的科学性,减少了决策的盲目性;其用于隐含概念漂移的数据流分类中,在保证分类准确度的基础上提高了分类的时间性能。

隐马尔可夫模型是一种应用非常广泛的统计模型,最早是从语音识别问题中发展起来的。七十年代,FredJelinek(贾里尼克)和卡内基・梅隆大学的JimandJanetBaker(贝克夫妇)分别独立地提出用隐含马尔可夫模型来识别语音,语音识别的错误率相比人工

八十年代李开复博士坚持采用隐含马尔可夫模型的框架,成功地开发了世智能和模式匹配等方法降低了三倍(从30%下降到10%)。

界上第一个大词汇量连续语音识别系统Sphinx。目前HMM已广泛用于文本信息抽取以及用户兴趣漂移研究中。

3.1马尔可夫模型在商业预测中的应用

马尔可夫模型多被用于产品的市场占有率预测中[1],如马尔可夫模型可解决商业群体分析的问题[2],商业群体中客户可分成VIP客户、主要客户、普通客户和小客户,由于不同的客户群体中的客户因为某种原因向其他的客户群体转移,普通客户可以转移到小客户,小客户也可转移成为普通客户,因而客户群体的分布会发生变化。根据帕累托80/20法则,客户群体的变化会直接影响公司的效益。通过建立相应的马尔可夫模型对客户群体组分类进行预测,可为企业制定相应的市场策略提供依据。对数据库中数据的分析

!(0),对于一客户群体中的客户向另外一客户群体转移的概率p(n),可以通过对公司历史交易可得到各种客户类型初始状态的分布P

!(1)=P!(0)p(n)。数据库进行挖掘得到。这样就可以得到下一个状态的分布P这样公司就可以根据下一阶段客户群体的可能的分布状态

来调整市场策略。

3.2马尔可夫模型在隐含概念漂移的数据流分类中的应用

RePro算法[8]的目标是:(1)利用原始数据组织的历史概念来判别新的概念是否是历史概念的重现。(2)从概念的历史记录中学习概念转移的规律。(3)实现预测每一个即将来临的概念并用来预测将到来的待分类的样本所属的类。为实现其目标,RePro算法用马尔可夫链表示概念的历史进程,每一个不同的概念就是马尔可夫链的一种状态,不同概念间的变化可以用概念转移矩阵表示,每当出现一个新的概念,就增加矩阵的行列。假设随着时间的推移,利用概念等价度量得到一系列历史概念集C_DIS,利用Proactive算法得到互异概念集C_SEQ,和概念转移矩阵C_TRA。RePro算法设定一个可能的阈值thresholdprob,一个分类精确度阈值thresholdaccu当一个目标样本窗口I_WIN到来时,RePro算法将预测出将用来分类的概念Cnext。Clast表示C_SEQ中最近的稳定概念,依照概念转移矩阵找出转移概率比thresholdprob高的并用Cnext(s)表示。如果不止一个Cnext(s)存在,则对于每一个Cnext(s)计算它在I_WIN中的分类精度,找出分类精度最高的一个。如果不存在Cnext(s),则计算C_DIS上的每一个概念在I_WIN上的分类精度,Cnext用来表示分类精度最高的一个。如果Cnext在I_WIN上的分类精度比thresholdaccu低,则从I_WIN窗口中学习新的概念并用Cnext表示。

RePro算法利用马尔可夫链构造历史概念序列,并充分利用概念转移矩阵对可能出现的概念进行预测,提高了分类的时间性能和分类准确度。

1187

数据库与信息管理

3.3HMM在文本信息抽取中的应用本栏目责任编辑:

闻翔军

适应性强、抽取精度高的优点而日益受到研究利用HMM进行信息抽取是一种基于机器学习的信息抽取方法,它因易于建立、

者的关注。McCallum提出“收缩(shrinkage)”技术来改进HMM信息抽取模型概率的估计[6]。钟敏娟等提出了基于多模板隐马尔可夫模型的文本信息抽取算法[5](MT-HMM)。该算法中HMM被看作成一个五元组{S,T,A,B,Π其中S是状态集,模型共有N个状态;V是}。

词汇集,模型共有M个可能的输出单词;A是N×N的状态转移矩阵,aij是从状态si转换到状态sj的概率;B是N×M的释放概率矩阵,bi(Vk)是在状态bj时释放单词Vk的概率;П是初始状态概率集合,πi是第i个状态作为初始状态的概率。

采用MaximumLikelihood(ML)算法,建立HMM模型,ML算法主要以统计的方法得出HMM模型参数,由以下3个公式分别计算模型的初始状态概率、转移状态概率和状态释放概率,即

(1)

(2)

其中,Init(i)是所有训练序列中,初始状态为i的序列个数,Cij是所有训练序列中,从状态Si转换到状态Sj的次数。

(3)

其中,Ej(Vk)是所有训练序列中,状态Sj释放单词Vk的次数。

MT-HMM算法分3个步骤:

(1)基于马尔可夫链模型,聚类训练数据为几个类;

(2)对每一类训练数据,分别利用公式(1)-(3)训练一个初始概率矩阵П和一个转移概率矩阵A以及状态释放概率B;

(3)使用训练好的模型抽取信息时,结合每一个初始概率矩阵、每一个转移概率矩阵和统一的释放概率矩阵,使用Viterbi算法来找出最优的标记序列。从这些最优标记序列中选择一个概率最大的序列作为最终标记序列。

该算法对训练数据形式聚类,分多个形式模板训练隐马尔可夫初始概率及转移概率参数,同时结合统一训练的释放概率参数对文本信息进行抽取,一定情况下提高了信息抽取的精确度和召回率。

3.4HMM在处理用户兴趣漂移上的应用

文献[7]中指出,用户兴趣度的漂移,可类比概念漂移的模式,即用概念漂移来模拟兴趣漂移。用户的兴趣是隐含的内容,用户的行为(或通过行为挖掘到的用户的兴趣)是外在可见目标概念,当用户的兴趣(隐含内容)发生改变后,用户的行为也会发生改变,这是兴趣漂移的过程。可采用一定的漂移算法综合当前用户的兴趣和新发掘的用户的行为(或兴趣),计算得到用户真正的兴趣变化。

对于一个假设状态集合Q,具有指定的初始状态qt和最终状态qf,那么对于一个状态转移集,每个元素为(q→q′),一个离散的输出符号集:Σ=σ1,σ2...σm。从初始状态开始,转移到一个新的状态,观测到一个输出符号,如此反复,直到最终状态,于是就产生一个符号串:X=x1,x2…xm。每一个转移存在着一个转移概率P(q→q′)在一个状态观测到一个特殊符号的概率为P(σ|q)。那么在一个隐马尔可夫模型M上一个串X被观测的概率为在所有可能路径上求概率和。

通过对用户对web页面的操作(打印页面,页面另存,添加收藏,点击链接等),以及服务器日志记录的挖掘。可以得到所需要的数据,然后利用HMM进行求解,得到用户可能的兴趣漂移。该方法不仅能够准确跟踪用户的兴趣,还可以预测用户的兴趣,可以帮助Web站点的设计者理解用户的偏好,以改进站点的设计。

4结束语

通过对马尔可夫模型及隐马尔可夫模型的分析,及其应用的研究,可知马尔可夫模型可以解决分类预测等问题,而HMM可解决如下三种问题:

),如何计算P(O|λ(1)给定观察序列O=O1,O2,…OT,以及模型λ=(A,B,π);

(2)给定观察序列O=O1,O2,…OT以及模型λ,如何选择一个对应的状态序列S=q1,q2,…qT,使得S能够最为合理的解释观察序列O;

),使得P(O|λ(3)如何调整模型参数λ=(A,B,π)最大。

问题1可利用前向算法和后向算法解决;问题2可用Viterbi搜索算法解决;问题3的解决较为复杂,可利用前向后向算法(Baum-Welchorforward-backwardprocedure)算法解决。

合理的利用马尔可夫或隐马尔可夫模型,可提高数据挖掘的精确度以及时间性能,因而其在数据挖掘领域有着广阔的应用前景。参考文献:

[1]陈涛.正在走向实用的数据挖掘技术[J].电脑知识与技术,2007,(4):19-20.

[2]张捷,琚春华.基于马尔可夫过程模型的商业客户群体分析[J].计算机时代.2006,(1):34-35.

(下转第1197页)

1188

本栏目责任编辑:闻翔军

mr:=:new.mr;jm:=:new.jm;

mr=mr+jm

endif,

end;数据库与信息管理

图2大额资金收受表和举报单

4结论

在文中,我们通过几个实例集中讨论了oracle触发器的在大中型网站设计中的用途,说明了触发器应用于支持企业级或者商业级解决方案时,它是一个功能十分强大的工具。除了本文所述触发器在行政纪监系统中的应用之外,用户还可以通过使用触发器做到强制数据一致性,提供审计和日志记录,防止无效的事务处理,启用复杂的业务逻辑等。

值得注意的一点是,过多地使用触发器会降低整个数据库的性能,特别是触发器写得不好,更是破坏数据库的运行,因此适当的使用触发器显得很重要。

参考文献:

[1]ThomasKyteOracle9i&10g编程艺术:深入数据库体系结构[M].北京:人民邮电出版社,2006.

进阶与诊断案例[M].北京:人民邮电出版社,2006.[2]盖国强.深入浅出Oracle--DBA入门、

[3]袁福庆.Oracle数据库管理与维护手册[M].北京:人民邮电出版社,2006.

[4]李华飚等.精通Java中间件编程[M].北京:中国水利水电出版社,2003.

[5]孙一林等.Java数据库编程实例[M].北京:清华大学出版社,2003.

实战与经验总结(ITPUB版主作品)[M].电子工业出版社,2008.[6]陈吉平.构建ORACLE高可用环境:企业级高可用数据库架构、

[7]SAMR.ALAPATI.现代数据库管理(原书第6版)[M].北京:人民邮电出版社,2007.

优化与备份恢复[M].北京:人民邮电出版社,2007.[8]盖国强,循序渐进ORACLE--数据库管理、

(上接第1188页)

[3]杜雪樵,惠军.随机过程[M].合肥工业大学出版社,2006.30-70.

[4]刘次华.随机过程[M].华中科技大学出版社,2005.42-83.

[5]钟敏娟,郝谦,刘云中.基于多模板隐马尔可夫模型的文本信息抽取算法[J].计算机工程,2006,(1):203-205.

[6]FrietagD,McCallumA.InformationextractionwithHMMSandshrinkage[C].Procee-dingsoftheAAAI’99WorkshoponMachineLearningforInformationExtraction,1999:31-36.

[7]张勉.基于隐马尔可夫模型的用户兴趣漂移模式发现方法[J].北京建筑工程学院学报.2005,(9):50-52.

[8]YangYing,WuXindong,ZhuXingquan.Combiningproactiveandreactivepredictionsfordatastreams[J].InSIGKDD,2005,(8):710–715.

[9]王实,高文,李锦涛,黄铁军.基于隐马尔可夫模型的兴趣迁移模式发现[J].计算机学报,2001,(2):152-157.

1197


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn