【发明内容】
基于此,有必要提供一种能更准确获取词用法知识的基于数据挖掘获取词用法知识的系统。
一种基于数据挖掘获取词用法知识的系统,所述系统包括:输入装置,用于输入待查词或词组;查询分析装置,对所述待查词或词组中的关键字进行分析,根据分析结果将待查词或词组送入相应的输入模式处理装置进行处理;多输入模式处理装置,利用语义知识和词典对所述待查词.或词组进行分析和扩展,形成查询项,根据所述查询项对网页信息进行搜索,得到与所述待查词或词组相关的网页;网页分析装置,对所述搜索得到的网页进行分析,将所述网页转换为候选文本;用法知识提取装置,对所述候选文本进行处理,提取待查词或词组的上下文信息和典型例句;输出装置,输出上下文信息和典型例句。
其中,所述多输入模式处理装置包括以下多种输入模式单元:比较模式单元、类别模式单元、目标语搭配模式单元和单个词模式单元,还包括用于检索网页的搜索引擎检索模块;
比较模式单元采用逻辑词将词或词组组合成查询项,所述类别模式单元对输入的中心词及类别信息进行分析和扩展而形成查询项,所述目标语搭配模式单元对输入的搭配语进行翻译和扩展而形成查询项,所述单个词模式单元根据输入的单个词形成查询项,所述搜索引擎检索模块根据所述查询项检索网页信息,获取与输入的词或词组相关的网页。
其中,所述网页分析装置可进一步对搜索得到的网页信息进行分析,去除重复的网页,将每一个网页分析成文档模型树的形式,在所述文档模型树中,去除网页中的非文本标签,保留有用标签,从而将网页转换为文本形式的候选文本。
而该用法知识提取装置包括:上下文信息提取单元,通过边界识别将所述候选文本处理为单个句子,通过关键词搜索获取所述单个句子中的候选词,利用统计算法对每个候选文本进行统计,得到所述候选词的出现频率,根据所述候选词的出现频率输出上下文信息的候选列表。
进一步地,所述上下文提取单元进一步根据所述候选词的出现频率对候选词进行排序,按照所述排序选取预设数量个候选词,并根据停词表去除功能词和非实义词,得到包含所述选取的候选词的上下文信息的候选列表。
其中,所述用法知识提取装置还包括典型例句提取单元,所述典型例句提取单元包括:候选例句提取模块,提取网页候选文本中的包含所述上下文信息的句子作为候选例句;聚类模块,利用基于特征的句子聚类方法对所述候选例句进行聚类;典型例句提取模块,在已聚类的句子中选取为聚类中心的句子作为典型例句。
此外,还有必要提供一种能更准确获取词用法知识的基于数据挖掘获取词用法知识的方法。
一种基于数据挖掘获取词用法知识的方法,包括以下步骤:A.接收用户输入的待查词或词组;B.对所述待查词或词组中的关键字进行分析,根据分析结果将待查词或词组送入相应的输入模式进行处理;C.利用语义知识和词典对所述待查词或词组进行分析和扩展,形成查询项,根据所述查询项对网页信息进行搜索,得到与所述输入的词或词组相关的网页;D.对所述搜索得到的网页进行分析,将所述网页转换为候选文本;E.对所述候选文本进行处理,提取词或词组的上下文信息和典型例句;F.输出所述上下文信息和典型例句。
其中,所述输入模式包括以下模式的一种以上:比较模式、类别模式、目标语搭配模式和单个词模式。
当输入模式为比较模式时,所述步骤C具体可以是:采用逻辑词将词或词组组合成查询项,根据所述查询项检索网页信息,获取与输入的词或词组相关的网页。
当所述输入模式为类别模式时,所述步骤C具体可以是:根据语义知识对输入的中心词及类别信息进行分析和扩展,形成查询项,根据所述查询项检索网页信息,获取与输入的词或词组相关的网页。
当输入模式为目标语搭配模式时,所述步骤C具体可以是:根据词典对输入的搭配语进行分析和扩展,形成查询项,根据所述查询项检索网页信息,获取与输入的词或词组相关的网页。
当所述输入模式为单个词模式时,所述步骤C具体可以是:根据输入的单个词形成查询项,根据所述查询项检索网页信息,获取与输入的词或词组相关的网页。
而步骤D具体可以是:对搜索得到的网页信息进行分析,去除重复的网页,将每一个网页分析成文档模型树的形式;在所述文档模型树中,去除网页中的非文本标签,保留有用标签,将网页转换为文本形式的候选文本。
其中,步骤E包括:通过边界识别将所述候选文本处理为单个句子,通过关键词搜索获取所述单个句子中的候选词,利用统计算法对每个候选文本进行统计,得到所述候选词的出现频率,根据所述候选词的出现频率输出上下文信息的候选列表。
步骤E还可包括:根据所述候选词的出现频率对候选词进行排序,按照所述排序选取预设数据个候选词,并根据停词表去除功能词和非实义词,得到包含所述选取的候选词的上下文信息的候选列表。
其中,步骤E还可包括:提取所述单个句子中的包含所述上下文信息的句子作为候选例句;利用基于特征的句子聚类方法对所述候选例句进行聚类;在已聚类的句子中选取为聚类中心的句子作为典型例句。
上述基于数据挖掘获取词用法知识的系统及方法,通过分析待查词或词组的关键字,将其送入相应的输入模式处理装置进行处理,相对于仅仅用单个词进行查询,能更准确的获取与待查词或词组搭配的信息;通过将检索到的网页转换为候选文本,对候选文本进行处理后提取待查词或词组的上下文信息和典型例句。所提取的上下文信息和典型例句能有效反应词的用法,能方便用于获取词的用法知识,提高用户体验需求。
另外,比较模式、类别模式、目标语搭配模式等多种输入模式能有效限制检索条件,使得在统计相同数目的网页的情况下,能挖掘出更准确的词搭配知识;通过基于特征的句子聚类方法对候选例句进行聚类,将检索的冗余例句进行分析聚类,从而提取的典型例句最具有代表性,更能符合用户所需求。
【具体实施方式】
图1示出了一个实施例中基于数据挖掘获取词用法知识的系统,该系统包括输入装置10、查询分析装置20、多输入模式处理装置30、网页分析装置40、用法知识提取装置50和输出装置60。其中:
输入装置10用于输入待查词或词组。在一个实施方式中,输入装置10输入的待查词或词组有多种模式,例如,需要查找单词“solve”的用法知识,可采用单个词输入模式(如“solve”)、目标语搭配模式(如“solve问题”)、类别模式(如“<solve>difficulty,thing”、“<solve>n.”等)、比较模式(如“solveproblem/issue”)等多种模式进行查找。
查询分析装置20用于对待查词或词组中的关键字进行分析,根据分析结果将待查词或词组送入相应的输入模式处理装置进行处理。对于上述多种输入模式,通过不同的输入模式输入的词或词组对应有不同的输入模式处理装置进行处理,查询分析装置20则分析输入的词或词组中的关键字,当分析到词或词组中仅有单个词时,则送入单个词模式单元进行处理;当词或词组中含有字符“<>”,则送入类别模式单元进行处理;当词或词组中含有汉语时,则送入目标语搭配模式单元进行处理;当词或词组中含有字符“/”时,则送入比较模式单元进行处理。
多输入模式处理装置30利用语义知识和词典对待查词或词组进行分析和扩展,形成查询项,根据该查询项对网页信息进行搜索,得到与待查词或词组相关的网页。在一个实施方式中,如图2所示,多输入模式处理装置30包括以下多种输入模式单元:比较模式单元301、类别模式单元302、目标语搭配模式单元303和单个词模式单元304,此外还包括检索网页的搜索引擎检索模块305。下面则对这几种输入模式下的处理过程进行详细阐述:
在比较模式下,例如用户输入“lay/make foundation”,比较模式单元301则需要比较“lay foundation”和“make foundation”哪一个短语是最常用(即最地道的用法)的。比较模式单元301首选通过使用逻辑词将词或词组(即所输入的词或词组中的候选词)组合成查询项,即形成新的查询,然后通过搜索引擎检索模块305进行相关网页的搜索。例如,对于上述“lay/make foundation”,通过逻辑词(OR、AND等)组合成新的查询项为“(lay OR make)AND foundation”,该查询项送入搜索引擎检索模块305,搜索引擎检索模块305则能搜索得到符合该查询项的网页并下载。另外,还可统计上述候选词“lay”、“make”、“foundation”的出现频率,并还可根据其出现频率对网页进行排序。由于可能检索到的网页非常多,可预设限制下载的网页个数,例如,可下载排序后的前300个网页。比较模式由于仅需要一次查询就可获取多种搭配信息的统计,特别适合经过语义扩展后出现很多种组合的情况;其能够发现新的搭配信息,例如,在搜索“solve issue/question”时,由于“problem”经常与“issue”发送在一起,也能将其统计出来;检索到的网页根据候选词的候选频率进行排序,可以选取前面预设数量个网页,更具有代表性。
在类别模式下,类别模式单元302对输入的中心词及类别信息进行分析和扩展,形成查询项。类别模式包括两种类型,一种是输入中心词和词性,例如“<solve>n.”;一种是输入中心词及其同义词,例如“<solve>difficulty,thing”。其中,词性及同义词都是用于指示与中心词搭配的候选词的类别信息。在类别模式下,由于通过类别信息对与中心词搭配的候选词进行了约束,能更为准确获得与中心词搭配的候选词。这里的搭配通常分为两种:语法搭配和词典搭配。语法搭配是指中心词之间(名称、形容词和动词)、中心词和介词或中心词和别的语法结构之间的搭配联系,包括形容词-介词、名词不定式、名词从句、形容词-介词、动词不定式等。词典搭配通常包括动词-名词、形容词-名词、动词-副词、名词-介词和动词-介词。在搭配过程中的词通常可分为5个词性:形容词、动词、名词、副词和介词,这5个词性可以作为类别限制。
为了进一步精确的描述类别信息,还可通过同义词作为上下矢量进行限定,减少搜索结果。由于同义词需要用户来提供,而用户能够提供的信息量少,因此可利用WordNet语义词典中的上位词信息对同义词进行自动扩充。WordNet是一个词典数据库,其把词组织成一个同义词集合的网状结构,每个连接表示它们之间的联系。例如:上位关系、下位关系、同义关系、附属关系等。基于意思相似或属于同一类的词总可能发生在一起的原理,将WordNet中的处于上位关系的词去扩展查询选项从而得到可能的意思。例如,“<solve>thingquestion”,其中“thing question”作为上下文矢量,为了扩展,“question”的上位词“difficulty”也被加入作为上下文矢量,形成新的查询项。这样,关键词“solve”和由一组相关词组成、反应一个详细类别信息的上下文相关矢量“thing questiondifficulty”将送入搜索引擎检索模块305进行相关网页的检索。
在目标语搭配模式下,目标语搭配模式单元303对输入的搭配语进行翻译和扩展,形成新的查询项,搜索引擎检索模块305则根据所述查询项检索网页信息,获取与输入的词或词组相关的网页。在一个实施例中,输入“solve问题”想要查找“solve”的用法知识,目标语搭配模式单元303通过汉语的搭配信息进行限制以得到相关的网页。在该模式下,首先根据汉英知识库对汉语部分进行翻译。由于通用的汉语词典提供的翻译选项比较单一,不能够满足汉语语义扩展的需要,因此,可通过同义词扩展来解决。这样,汉语部分翻译后通过同义词扩展,形成了尽可能多的特征词向量。例如,在输入“solve问题”,进行翻译和同义词扩展后,所形成的新的查询项则为“solve AND(issue OR matter ORproblem OR question)”。搜索引擎检索模块305根据该查询项检索到的网页将限制在“问题”的类别中。另外,还可结合WordNet语义词典对查询项进行进一步的扩展,将WordNet中处于上位关系的词去扩展查询项。如上述查询项进行进一步的扩展后形成新的查询为“solve AND(issue OR matter OR problem ORquestion OR difficulty)”,这里“difficulty”即为“issue”的上位词。
在单个词模式下,例如输入单个词“solve”,单个词模式单元304则根据该单个词形成查询项,搜索引擎检索模块305检索包含该单个词的网页。
网页分析装置40用于对搜索得到的网页进行分析,将网页转换为候选文本。在一个实施方式中,网页分析装置40进一步对搜索得到的网页进行分析,去除重复的网页,将每一个网页分析成文档模型树的形式,在该文档模型树中,去除网页中的非文本标签,保留有用标签(如边界符号等),从而将网页转换为文本形式的候选文本。该候选文本用于后续的用法知识提取过程。
用法知识提取装置50用于对所述候选文本进行处理,提取待查词或词组的上下文信息和典型例句。在一个实施例中,如图3所示,用法知识提取装置50包括上下文信息提取单元501和典型例句提取单元502,其中:
上下文提取单元501通过边界识别将候选文本处理为单个句子,通过关键词搜索获取单个句子中的候选词,利用统计算法对每个候选文本进行统计,得到候选词的出现频率,根据候选词的出现频率输出上下文信息的候选列表。在一个实施例中,上下文提取单元501搜索得到的单个句子中的候选词即为输入的词及与输入的词或词组搭配的单词,利用统计算法统计候选词的出现频率后,还可根据出现频率对候选词进行排序。在统计中,通常只统计一个语法句子里的同现信息,即候选词在同个句子中出现的句子作为统计的内容,如果不在同一个句子中,则不予考虑,这样统计的结果将更具有代表性。统计完所有的单个句子后,根据统计的单词候选的频率对其进行排序,按照该排序结果选取预设数量个候选词,例如选择前5个,去除频率低的候选词,并根据停词表去除功能词(如“a”、“an”、“the”、“and”等)以及一些非实义的词,得到包含选取的候选词的上下文信息的候选列表。对该候选列表,可按照候选词的前后位置信息进行划分,最后输出待查词或词组的上文信息(待查词或词组前面的所有可能词)和下文信息(待查词或词组后面的所有可能词)。
典型例句提取单元502用于提取典型例句。如图4所示,在一个实施例中,典型例句提取单元502包括候选例句提取模块5021、聚类模块5022和典型例句提取模块5023。其中:候选例句提取模块5021用于提取网页候选文本中的包含所述上下文信息的句子作为候选例句;聚类模块5022用于利用基于特征的句子聚类方法对所述候选例句进行聚类;典型例句提取模块5023用于在已聚类的句子中选取为聚类中心的句子作为典型例句。
在一个实施方式中,候选例句提取模块5021将网页候选文本分析成单个句子。具体可根据句子的标点符号(如“,”、“?”、“.”等)将文档分割为单个句子,在区分“.“是句号还是缩写后面的点时,可构建一个缩写列表并指定一些规则去判断是否是句号。另外还可以对分隔的单个句子的长度进行限制,如包含5个词以上30个词以下的句子才作为我们的候选例句。
在一个实施方式中,聚类模块5022利用基于特征的句子聚类方法对候选例句进行聚类的过程如下:
(1)初始化。将上述得到的所有候选例句作为数据段样本,对所有的数据段样本用基于特征距离的方法计算两两之间的匹配距离d(Oi,Oj)从而形成一个距离矩阵,在后面使用时,可以直接用查表的方法得到距离。
其中,基于主要成分的特征距离计算,是利用停词表将句子S分析成只有主干成份组成的,其中包括去除停词表中的词,不同词形态的还原,同时利用同义词词典去除句子中语义相近的类,这样每个句子表示语义上互不相干的特征,类似于模式识别中的主成分分析。设分析后的两个句子分别表示成:O1=w1w2…wm,O2=w1w2…wn,它们之间的距离定义为:
其中,
是表示两个词之间的语义相近度,如果语义相近或者两个词是相同的,定义为1,否则定义为0;m表示主干词组成的句子个数,n表示句子中主干词的个数。
事先设定期望得到的聚类数C、进行类合并的类间距离的阈值θC、每个类中的最少样本数θN以及最大迭代次数tmax;并设c表示类的个数,t表示迭代次数。
(2)初始化聚类中心
分别从c个不同来源的网页中选取包含较多词的句子作为初始聚类中心。这里可以事先设置初始聚类中心的句子含有的候选词个数阈值,当包含的候选词个数达到这个阈值时,则相应句子作为初始聚类中心。
(3)样本分类
将上述数据段样本按照距离最小的原则分到各个类别中,并记录每个类别的样本个数。对任意O∈∏,若则O∈Γj。其中m(Γj)表示类Γj的中心(即聚类中心),∏为包含所有句子的空间,j表示类别号,Γj是第j个类别所有样本空间。同时检查每个类中的样本个数,若样本个数小于θN,则舍去该类,令c=c-1,并将该类中的样本重新分到新的类别中。
(4)重新计算聚类中心
重新计算每个类的聚类中心m(Γj),j=1,2,…,c。聚类中心的计算方法如下:
找出伪中心O′,它是Γ
j中的一个样本,并满足到它的距离小于某一阈值的元素的个数最多。设
和σ
d分别为d(O
k,O
l)的均值和方差,其中O
k,O
l∈Γ
j,则:
其中,阈值的定义如下:如果满足上述条件的元素只有一个,就取该样本为伪中心;如果有两个或两个以上的元素同时满足条件,则把Γj中所有与它的匹配距离小于阈值的样本作为该类的子类,计算子类中各元素与其它元素的平均类内距离,选择平均类内距离最小的元素作为伪中心。所计算得到的伪中心即为与实际聚类中心最接近的样本,其可以替代实际聚类中心。
(5)若这是偶数次迭代或者c≥2C,则转向步骤(8),否则继续。
(6)计算类内距离
计算Γ
j的总体类内距离λ
j ∑和平均类内距离
j=1,2,…,c。
(7)类分裂
将具有最大类内距离的类分裂成两类。最大类内距离可以有两种选择:总体类内距离和平均类内距离。设选择的类为Γjmax,如果‖Γjmax‖≥2θN或者c≤C/2,Γjmax将按照如下方法分裂,在该类中找出两个样本数据Op1和Op2使得对任意该类中的样本对Op3和Op4满足d(Op1,Op2)≥d(Op3,Op4),Op1和Op2作为两个新的聚类中心代替原聚类中心,令c=c+1,转向步骤(9)。
(8)计算类间距离
利用上述基于主成分的特征距离计算方法计算所有的聚类中心两两之间的距离:d(m(Γi),m(Γj)),1≤i,j≤c。
(9)类合并
找出所有d(m(Γ
i),m(Γ
j))中的最小值d(m(Γ
p),m(Γ
q)),如果d(m(Γ
p),m(Γ
q))<θ
C,那么将类Γ
p和类Γ
q合并,利用步骤(4)计算新的聚类中心
,并令c=c-1。
(10)t=t+1,若t<tmax,则转向步骤(3),否则,保存聚类有关的数据:聚类数目c、聚类中心及与该聚类中心最接近的样本(即伪中心),结束。
计算得到聚类中心及与聚类中心最接近的样本(即伪中心,也可以作为聚类中心)后,典型例句提取模块5023则提取作为聚类中心(包括实际聚类中心以及与实际聚类中心接近的样本)的句子,作为典型例句进行输出。
输出装置60用于输出上述得到的上下文信息以及典型例句。
图5示出了一个实施例中基于数据挖掘获取词用法知识的方法流程,该方法流程具体过程如下:
步骤S10,接收用户输入的待查词或词组。在一个实施方式中,可以多种输入模式输入待查词或词组,例如,用于需要查找单词“solve”的用法知识,可输入“solve”、“solve问题”、“<solve>difficulty,thing”、“<solve>n.”、“solveproblem/issue”等多种模式进行查找。
步骤S20,对所述待查词或词组中的关键字进行分析,根据分析结果将待查词或词组送入相应的输入模式进行处理。。对于上述多种输入模式,通过不同的输入模式输入的词或词组对应有不同的输入模式处理装置进行处理,分析输入的词或词组中的关键字。当分析到词或词组中仅有单个词时,则送入单个词模式单元304进行处理;当词或词组中含有字符“<>”,则送入类别模式单元302进行处理;当词或词组中含有汉语时,则送入目标语搭配模式单元303进行处理;当词或词组中含有字符“/”时,则送入比较模式单元301进行处理。
步骤S30,利用语义知识和词典对所述待查词或词组进行分析和扩展,形成查询项,根据所述查询项对网页信息进行搜索,得到与所述输入的词或词组相关的网页。在一个实施例中,如图6所示,步骤S30的具体过程如下:
在步骤S301中,当输入模式为比较模式时,采用逻辑词将词或词组组合成查询项,形成新的查询。例如,对于“lay/make foundaion”,通过逻辑词(OR、AND等)组合成新的查询项为“(lay OR make)AND foundaion”,该查询项送入搜索引擎检索模块305,搜索引擎检索模块305则能搜索得到符合该查询项的网页并下载。另外,还可统计上述候选词“lay”、“make”、“foundaion”的出现频率,并还可根据其出现频率对网页进行排序。由于可能检索到的网页非常多,可预设限制下载的网页个数,例如可下载排序后的前300个网页。比较模式由于仅需要一次查询就可获取多种搭配信息的统计,特别适合经过语义扩展后出现很多中组合的情况;其能够发现新的搭配信息,例如,在搜索“solveissue/question”时,由于“problem”经常与“issue”发送在一起,也能将其统计出来;检索到的网页根据候选词的候选频率进行排序,可以选取前面预设数量个网页,更具有代表性。
在步骤S302中,当输入模式为类别模式时,对输入的中心词及类别信息进行分析和扩展,形成查询项。类别模式包括两种类型,一种是输入中心词和词性,例如“<solve>n.”;一种是输入中心词及其同义词,例如“<solve>difficulty,thing”。其中,词性及同义词都是用于指示与中心词搭配的候选词的类别信息。
为了进一步精确的描述类别信息,还可通过同义词作为上下矢量进行限定,减少搜索结果。由于同义词需要用户来提供,而用户能够提供的信息量少,因此可利用WordNet语义词典中的上位词信息对同义词进行自动扩充。例如,“<solve>thing question”,其中“thing question”作为上下文矢量,为了扩展,“question”的上位词“difficulty”也被加入作为上下文矢量,形成新的查询项。
在步骤S303中,当输入模式为目标语模式时,对输入的搭配语进行翻译和扩展,形成新的查询项。在一个实施例中,输入“solve问题”想要查找“solve”的用法知识,通过汉语的搭配信息进行限制以得到相关的网页。在该模式下,首先根据汉英知识库对汉语部分进行翻译。由于通用的汉语词典提供的翻译选项比较单一,不能够满足汉语语义扩展的需要,因此,可通过同义词扩展来解决。这样,汉语部分翻译后通过同义词扩展,形成了尽可能多的特征词向量。另外,还可结合WordNet语义词典对查询项进行进一步的扩展,将WordNet中处于上位关系的词去扩展查询项。
在步骤S304中,当输入模式为单个词模式时,根据该单个词形成查询项。
在步骤S305中,根据上述生成的查询项检索网页信息,获取与输入的词或词组相关的网页。
步骤S40,对所述搜索得到的网页进行分析,将所述网页转换为候选文本。在一个实施例中,步骤S40的具体过程为:对搜索得到的网页信息进行分析,去除重复的网页,将每一个网页分析成文档模型树的形式;在所述文档模型树中,去除网页中的非文本标签,保留有用标签,将网页转换为文本形式的候选文本。
步骤S50,对所述候选文本进行处理,提取词或词组的上下文信息和典型例句。在一个实施例中,步骤S50包括提取词或词组的上下文信息以及提取词或词组的典型例句两个部分,其中,提取词或词组的上下文信息的过程具体如下:通过边界识别将所述候选文本处理为单个句子,通过关键词搜索获取所述单个句子中的候选词,利用统计算法对每个候选文本进行统计,得到所述候选词的出现频率,根据所述候选词的出现频率输出上下文信息的候选列表。该实施例中,还可进一步根据所述候选词的出现频率对候选词进行排序,按照所述排序选取预设数量个候选词,并根据停词表去除功能词和非实义词,得到包含所述选取的候选词的上下文信息的候选列表。
在一实施例中,如图7所示,提取典型例句的过程具体如下:
在步骤S501中,提取所述单个句子中的包含所述上下文信息的句子作为候选例句。在一个实施例中,步骤S501的具体过程是:对网页候选文本分析成单个句子。具体可根据句子的标点符号(如“,”、“?”、“.”等)将文档分割为单个句子,在区分“.“是句号还是缩写后面的点时,可构建一个缩写列表并指定一些规则去判断是否是句号。另外还可以对分隔的单个句子的长度进行限制,如包含5个词以上30个词以下的句子才作为我们的候选例句。
在步骤S502中,利用基于特征的句子聚类方法对所述候选例句进行聚类。在一个实施例中,如图8所示,步骤S502的具体过程如下:
(1)初始化。将上述得到的所有候选例句作为数据段样本,对所有的数据段样本用基于特征距离的方法计算两两之间的匹配距离d(Oi,Oj),从而形成一个距离矩阵,在后面使用时,可以直接用查表的方法得到距离。
其中,基于主要成分的特征距离计算,是利用停词表将句子S分析成只有主干成份组成的,其中包括去除停词表中的词,不同词形态的还原,同时利用同义词词典去除句子中语义相近的类,这样每个句子表示语义上互不相干的特征,类似于模式识别中的主成分分析。设分析后的两个句子分别表示成:O1=w1w2…wm,O2=w1w2…wn,它门之间的距离定义为:
其中,
是表示两个词之间的语义相近度,如果语义相近或者两个词是相同的,定义为1,否则定义为0;m表示主干词组成的句子个数,n表示句子中主干词的个数。
事先设定期望得到的聚类数C、进行类合并的类间距离的阈值θC、每个类中的最少样本数θN以及最大迭代次数tmax;并设c表示类的个数,t表示迭代次数。
(2)初始化聚类中心
分别从c个不同来源的网页中选取包含较多词的句子作为初始聚类中心。这里可以事先设置初始聚类中心的句子含有的候选词个数阈值,当包含的候选词个数达到这个阈值时,则相应句子作为初始聚类中心。
(3)样本分类
将上述数据段样本按照距离最小的原则分到各个类别中,并记录每个类别的样本个数。对任意O∈∏,若
则O∈Γ
j。其中m(Γ
j)表示类Γ
j的中心(即聚类中心),∏为包含所有句子的空间,j表示类别号,Γ
j是第j个类别所有样本空间。同时检查每个类中的样本个数,若样本个数小于θ
N,则舍去该类,令c=c-1,并将该类中的样本重新分到新的类别中。
(4)重新计算聚类中心
重新计算每个类的聚类中心m(Γj),j=1,2,…,c。聚类中心的计算方法如下:
找出伪中心O′,它是Γ
j中的一个样本,并满足到它的距离小于某一阈值的元素的个数最多。设
和σ
d分别为d(O
k,O
l)的均值和方差,其中O
k,O
l∈Γ
j,则:
其中,阈值的定义如下:
如果满足上述条件的元素只有一个,就取该样本为伪中心;如果有两个或两个以上的元素同时满足条件,则把Γ
j中所有与它的匹配距离小于阈值的样本作为该类的子类,计算子类中各元素与其它元素的平均类内距离,选择平均类内距离最小的元素作为伪中心。所计算得到的伪中心即为与实际聚类中心最接近的样本,其可以替代实际聚类中心。
(5)若这是偶数次迭代或者c≥2C,则转向步骤(8),否则继续。
(6)计算类内距离
计算Γ
j的总体类内距离λ
j ∑和平均类内距离
j=1,2,…,c。
(7)类分裂
将具有最大类内距离的类分裂成两类。最大类内距离可以有两种选择:总体类内距离和平均类内距离。设选择的类为Γjmax,如果‖Γjmax‖≥2θN或者c≤C/2,Γjmax将按照如下方法分裂,在该类中找出两个样本数据Op1和Op2使得对任意该类中的样本对Op3和Op4满足d(Op1,Op2)≥d(Op3,Op4),Op1和Op2作为两个新的聚类中心代替原聚类中心,令c=c+1,转向步骤(9)。
(8)计算类间距离
利用上述基于主成分的特征距离计算方法计算所有的聚类中心两两之间的距离:d(m(Γi),m(Γj)),1≤i,j≤c。
(9)类合并
找出所有d(m(Γi),m(Γj))中的最小值d(m(Γp),m(Γq)),如果d(m(Γp),m(Γq))<θC,那么将类Γp和类Γq合并,利用步骤(4)计算新的聚类中心,并令c=c-1。
(10)t=t+1,若t<tmax,则转向步骤(3),否则,保存聚类有关的数据:聚类数目c、聚类中心及与该聚类中心最接近的样本(即伪中心),结束。
在步骤S503中,在已聚类的句子中选取为聚类中心的句子作为典型例句。具体地,可选择实际聚类中心以及与实际聚类中心最接近的伪中心的句子作为典型例句。
步骤S60,输出所述上下文信息和典型例句。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。