行业词典生成方法及装置的制作方法

文档序号:6357847阅读:85来源:国知局
专利名称:行业词典生成方法及装置的制作方法
技术领域
本发明涉及数据挖掘技术,尤其涉及一种行业词典生成方法及装置。
背景技术
行业词典是以最小语言单位表示的某一行业的术语和习用语的集合,例如机械行业词典、旅游行业词典等。现有技术中,与行业词典相近的技术包括文本分类特征选择技术和领域本体(Domain Ontology)库构建技术。文本分类特征选择技术是文本分类系统中实现特征空间降维的一种非常重要的方法,其先对训练集合中的文本进行分词,然后统计词语在训练集合中的出现频度,再通过特征选择算法选择出一些词作为分类器训练时使用的特征。其中,常见的特征选择算法有 互信息、文档频率、卡方校验、信息增益等。其中,被选择出的作为分类器训练时使用的特征类似于行业词典中的词汇。但是,由于文本分类特征选择技术是为了实现分类,在实现过程中主要是以解决数据维度过高和提高分类模型的泛化能力为目标,因此,经由文本分类特征选择技术选择出来的词的精度较低,无法满足行业词典对大容量、高精度等的需求,因此,无法直接采用文本分类特征选择技术来生成行业词典。本体是对领域知识的一种表示,用于对客观世界的存在进行系统化描述,方便知识的重用和交互。领域本体库构建技术重点在于发现领域相关的概念,以及本体之间的相互关系。通常,本体由领域专家创建。目前领域本体库自动化构建的过程一般包括数据处理对文本进行自然语言处理,例如分词,词性标注等;概念提取通过一些语言规则(例如词性组合)或者统计算法提取出概念;语义关联抽取通过一些文法规则等来确定概念与概念之间的关系。由上述分析可知领域本体库构建技术主要通过人工设定的规则或者采用大规模语料进行训练来进行发现;其中,人工设定的规则是固定的,其召回率比较低;而语料训练需要准备大量的语料,既耗时又费力。另外,领域本体库构建技术还需要建立各个本体之间的相互联系,使得其在实现自动化上存在较大的难度,基于此,现有领域本体库创建技术也无法直接用来生成行业词典。而现有技术主要是通过人工搜集的方式来形成行业词典,该生成行业词典的方式成本高,效率低,因此,急需提供一种自动生成行业词典的技术方案以克服现有技术的缺陷。

发明内容
本发明提供一种行业词典生成方法及装置,用以生成行业词典,提高生成行业词典的效率,降低生成成本。本发明提供一种行业词典生成方法,包括根据初始行业术语,获取所述初始行业术语对应的文档集合;根据所述文档集合,获取候选术语;对所述候选术语进行行业相关度分析,获取相关候选术语;
对所述相关候选术语进行共现分析和关联关系挖掘,生成行业词汇;将所述行业词汇加入行业词典。本发明提供一种行业词典生成装置,包括第一获取模块,用于根据初始行业术语,获取所述初始行业术语对应的文档集合;第二获取模块,用于根据所述文档集合,获取候选术语;第三获取模块,用于对所述候选术语进行行业关联度分析,获取相关候选术语;生成模块,用于对所述相关候选术语进行共现分析和关联关系挖掘,生成行业词汇;添加模块,用于将所述行业词汇加入行业词典。本发明提供的行业词典生成方法及装置,根据初始行业术语获取对应的文档集合,并从文档集合中获取候选术语,对候选术语进行行业关联度分析、共现分析和关联关系挖掘等处理,生成行业词汇,并加入行业词典。采用本发明技术方案可以根据初始行业术语以及对应的文档集合生成行业词典,与现有技术相比,该技术方案可自动生成行业词汇,无需人工搜索,提高了生成行业词典的效率,节约了生成成本。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一提供的行业词典生成方法的流程图;图2为本发明实施例二提供的行业词典生成方法的流程图;图3为本发明实施例三提供的行业词典生成装置的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本发明实施例一提供的行业词典生成方法的流程图。如图1所示,本实施例的方法包括步骤11、根据初始行业术语,获取初始行业术语对应的文档集合;具体的,用户提供初始行业术语给行业词典生成装置,由行业词典生成装置以初始行业术语作为查询词,从搜索引擎中获取初始行业术语对应的文档集合,搜索引擎中包括了海量与该行业相关的文档。其中,初始行业术语可由单个词或者词组组成,词或词组按照不同的行业类别进行组织。例如用户提供的旅游行业的初始行业术语可以按照如下方式组织吃美食小吃特产饮食;
住住宿宾馆酒店;行交通自驾旅游地图。行业词典生成装置从搜索引擎中获取文档集合的一种实施方式包括行业词典生成装置将属于同一行业类别的初始行业术语进行不同组合,获取初始行业术语组合;然后以获取的每个初始行业术语组合作为查询词,利用搜索引擎提供的查询接口进行查询,获取和查询词最相关的若干个(例如10个)文档,直到所有的初始行业术语组合均作为查询词进行查询后,获取指定个数的文档;所获取的指定个数的文档即形成文档集合。在本实施例的文档集合中,文档也按照行业类别进行组织。步骤12、根据文档集合,获取候选术语;具体的,步骤12的一种实施方式包括步骤121、对文档集合进行预处理,获取词序列集合;其中,预处理主要是指对文档集合中的每个文档进行分词处理,即对文档进行词语切分,获取一系列的词。由于中文文本不像英文,英文各行的单词之间有空格作为自然分界符,而中文的词与词之间没有明显的分界符,为了便于行业词典生成装置对中文文档进行自动处理,需要对文档进行词语切分,形成一系列的词。其中,分词处理可以采用基于词典的分词方法,也可以采用基于统计的分词方法。由于分词的准确度对最终生成的行业词典的质量有一定的影响,因此,需要根据行业特性选择合适的分词方法。另外,该预处理除了包括分词处理之外,还可以进行词性标注、停词或同义词处理等操作。其中,词性标注是指为文档中每个词指定具体的词性;常见的词性一般有名词、 动词、形容词、副词、介词、连词等。由于行业词典中包含的行业词汇一般都具有比较明确的意义,某些词性(例如介词)的词称为行业词汇的可能性比较小,因此,通过词性标注可以首先过滤掉一部分词。经上述操作后,文档集合最终变成一个相对比较简练、标注好词性的词序列集合。步骤123、对词序列集合进行过滤处理,获取候选术语。行业词典生成装置获取候选术语的过程包括首先从词序列集合中获取词组,优选的,行业词典以后缀树数据结构表示并结合相应的重复字串提取算法提取重复子串作为词组,即通过将词序列集合表示成后缀数组,然后将求重复子串的问题转化成求后缀的公共前缀的问题来获取词组;然后,行业词典生成装置选择词频大于词频阈值的词或词组作为候选词;其中,词频是指词或词组出现的频度,词频阈值是预先设定的。最后,行业词典生成装置根据预先设定的过滤规则,对候选词进行过滤,从候选词中获取候选术语。由于行业词汇具有鲜明的行业特点,因此,需要从词序列集合中进行层层筛选,以逐步缩小所需处理的词或词组的范围。其中,为了便于对词序列集合进行过滤处理,本实施例步骤12的另一种实施方式为在步骤123之前还包括步骤122 对词序列集合进行主题词提取处理,生成主题词控制词表。其中,主题词提取主要是指从词序列集合中提取出能代表文档主题内容的核心词汇, 所有文档的核心词汇即构成主题词控制词表。其中,主题词提取有多种方法,例如基于统计分类的算法、基于共现关系分析的算法等。基于上述实施方式,本实施例中的过滤规则可以包括(1)初始行业术语或屏蔽词典中的词或词组不能作为候选术语;其中,屏蔽词典是由非行业词汇形成的词典。(2)候选术语包含的词必须是主题词控制词表中的词。(3)长度限制,即长度大于1的词或者包含词的数量小于2或大于4的词组均不能作为候选术语,即只有长度大于1的词,或者包含2 至4个词的词组才可以作为候选术语。(4)作为其他词组的前缀或后缀的词组(即不完整的词组)不能作为候选术语。其中,根据行业类别所需行业词典的质量,行业词典生成装置可以根据上述任一过滤规则或者上述过滤规则的任意组合进行过滤操作,以形成不同质量的行业词典。其中, 根据上述所有规则进行过滤后所生成的行业词典的质量最高,因此,优选所有规则的组合作为本实施例的过滤规则。步骤13、对候选术语进行行业相关度分析,获取相关候选术语;其中,经过上述步骤获取的候选术语仍然比较多,即使一些高频的候选术语也不见得和行业类别相关,因此,本实施例进一步通过行业相关度分析把候选术语中不相关的候选术语去除。行业相关度分析主要是指计算候选术语与行业类别之间的相关度。行业词典生成装置通过计算候选术语与行业类别的相关度,可以选取相关度较大的若干候选术语作为相关候选术语,进入下一步处理操作,以进一步减小生成行业词汇所需的词或词组范围。其中,相关候选术语的数量可以预先指定。步骤14、对相关候选术语进行共现分析和关联关系挖掘,生成行业词汇;该步骤主要是指利用整个文档集合或者词序列集合对相关候选术语做进一步的挖掘,分析各相关候选术语与行业类别的共现关系,统计共现数据;然后通过关联规则挖掘的方法对共现数据进行处理,发现与行业类别相关程度超过设定相关度阈值的候选术语作为行业词汇。步骤15、将行业词汇加入行业词典。具体的,行业词典生成装置将生成的行业词汇,加入对应行业类别的行业词典中, 即形成了该行业类别的行业词典。本实施例的行业词典生成方法,根据初始行业术语获取对应的文档集合,通过对文档集合进行分词、词性标注、过滤筛选等数据挖掘处理获取候选术语,然后通过对候选术语进行行业相关度分析获取相关候选术语,进一步对相关候选术语进行共现分析和关联关系挖掘,发现与行业类别相关度大于相关度阈值的相关候选术语并将其作为行业词汇,加入行业词典,最终生成行业词典。本实施例通过多种数据分析和挖掘等方式获取行业词汇并生成行业词典,一方面解决了从海量信息中提取行业词汇的问题,另一方面可以自动提取行业词汇,解决了人工搜索的问题,提高了生成行业词典的效率,节约了生成成本。进一步,本实施例提供一种步骤122的实施方式,在该实施方式中,行业词典生成装置基于统计分类算法生成主题词控制词表。该实施方式包括两个阶段训练阶段和识别阶段。在训练阶段,需要预先准备训练语料,该训练语料包括训练文档和训练文档对应的主题词(即训练主题词);行业词典生成装置对上述训练语料进行分词和词性标注等处理,生成训练语料中每个词的特征集合和主题词判断结果,该主题词判断结果是指该词是不是主题词的一个判断结果;然后,利用分类算法(例如支持向量机(SVM)、朴素贝叶斯(NaiVe bayes)等)对每个词的特征集合和主题词判断结果进行训练,生成分类器。在识别阶段,行业词典生成装置,首选获取词序列集合中每个词的特征集合,然后利用分类器和每个词的特征集合对每个词进行是否为主题词的判断;根据判断为是的判断结果获取主题词,进而生成主题词控制词表。特征集合主要包括词频-逆向文档频率(Term Frequency-Inverse Document Frequency ;简称为TF_IDF)、词性、词是否在标题中、第一次出现的位置、词的长度等特征。其中,TF-IDF是信息检索和文本挖掘中常用的一种加权技术,TF指的是词频,是词在一篇文档中出现次数之和;IDF是逆向文档频率,其定义为公式(1)IDF=Iog JD|( 1 )
IRt1 ed}|其中,|d|为文档集合中的总的文档数,I {el:、e d} I表示包含词语、的文档个数。另外,采用TF-IDF算法也可以获取主题词,由于主题词提取精度将影响后续生成的行业词典的质量,因此,本实施例采用同时基于TF-IDF以及其他多个特征共同来提取主题词,以保证主题词提取的精度,提高行业词典的质量。进一步,步骤13获取相关候选术语的一种具体实施方式
,包括步骤131、行业词典生成装置采用卡方校验或信息增益等统计算法,计算每个候选术语与所属行业类别的相关度;其中优选卡方校验算法。卡方校验算法的原理为首先假设两个变量是独立的(原假设),然后观察实际值和理论值的偏差来确定理论是否正确。如果偏差很小,则认为是样本误差,接受原假设,即认为两个变量是独立的;否则否定原假设,即认为两个变量是相关的。在计算候选术语和行业类别的相关度这个问题上,主要关心的是一个候选术语和一个行业类别之间是否相互独立;如果独立,则说明该候选术语和行业类别不相关,不属于这个行业类别。基于此,原假设为候选术语和行业类别相互独立,可以使用的观察值有四个,如表1 (以候选术语“成都小吃”和行业类别“吃”为例)。表 1
属于“吃”不属于“吃”总计包含“成都小吃”ABA+B不包含“成都小吃”CDC+D总计A+CB+DN其中,A为“成都小吃”在“吃”这个行业类别下的文档中出现的次数;B为“成都小吃”在非“吃”的其他行业类别下的文档中出现的次数;C为在“吃”这个行业类别下的文档中不出现“成都小吃”的文档数量,D为在非“吃”的其他行业类别下的文档中不出现“成都小吃”的文档数量。根据公式(2)计算卡方值X2 (t,C)= (AD'BC)2(2)
(A+B)(C+D)其中,卡方值越大,说明候选术语“成都小吃”和行业类别“吃”的相关度越大。步骤132、行业词典生成装置根据相关度的大小,从候选术语中获取指定个数的相关候选术语。
具体的,对每一个行业类别,行业词典生成装置根据上述公式( 计算出该行业类别下的每个候选术语的卡方值之后,将卡方值从大到小排序,选取前k个候选术语作为相关候选术语,进入下一步计算。其中,k是预先指定的相关候选术语的个数,k为大于或等于1的自然数。基于上述实施例,步骤14生成行业词汇的一种实施方式包括步骤141、行业词典生成装置对相关候选术语和所属行业类别在文档数据库中的出现次数进行统计,获取共现数据,所述共现数据包括文档数量、每个相关候选术语与行业类别同时出现时的第一次数值和行业类别单独出现时的第二次数值;在此说明,此处的文档数据库与前述根据初始行业术语从搜索引擎中获取的文档集合不同,前述的文档集合是文档数据库的一个子集,即此处的文档数据库包含的与行业相关的文档的数量更多,通常在千万级以上。其中,共现分析是数据挖掘中一种常用的技术手段,主要思想是如果两个词频繁在相同上下文中出现,认为这两个词之间有着比较密切的联系。本实施例正是基于该原理在搜索引擎过程中自动发现更多行业术语的。其中,共现分析的上下文可以是整个文档、段落或句子。本实施例以文档为例。例如对于相关候选术语t和行业类别c中包含的行业术语d,若在同一篇文档中出现,则记录共现次数为1,表示为Coimt (t,c)-> 1 ;同时统计相关候选术语t和行业类别c单独出现的频率,一篇文档算一次,分别表示为Coimt (t) - > 1和count (c) - > 1。根据上述处理,对相关候选数据t和行业类别c在整个文档数据库中的每个文档均进行统计,获取共现数据。该共现数据包括文档数量、在所有文档中每个相关候选术语和行业类别同时出现的次数(即第一次数值),在所有文档中行业类别单独出现的次数(即第二次数值)以及在所有文档中每个相关候选术语单独出现的次数。例如某个共现数据包括Coimt (t, c)-> 100 表示相关候选术语t和行业类别c在100篇文档中共同出现了 ;coimta)- > 2000 表示相关候选术语t在2000篇文档中出现了 ;count (C) - > 20000 表示行业类别c 在20000篇文档中出现了 ;N-> 100000 表示文档数量为10万,即文档数据库中总共有10 万篇文档。步骤142、对共现数据进行关联规则挖掘,获取相关候选术语与行业类别的关联强度;在得到共现数据之后,根据关联规则挖掘对上述现有数据进行处理,计算支持度 (Support)和置信度(Confidence);其中支持度和置信度的计算公式分别为公式(;3)和公式⑷。Support (A — B) = P (A U B) (3)Confidence (A — B) = P (A | B) (4)将上述共现数据应用到上述公式可得到表示支持度的公式( 和表示置信度的公式(6)Support (c- > t) = count (t, c)/N(5)Confidence (c- > t) = count (t, c) /count (c) (6)公式( 用于计算每个相关候选术语和行业类别同时出现的次数与文档数量的比值,该比值即为支持度;公式(6)用于计算每个相关候选术语和行业类别同时出现的次数与行业类别单独出现的次数的比值,该比值表示置信度。由公式( 和公式(6)分别表示的支持度和置信度共同用于表示候选术语t与行业类别c的关联强度。其中,在本实施例中,预先设置了支持度阈值和置信度阈值,用于作为判断关联强度大小的基准。行业词典生成装置将计算获取的支持度和置信度分别与支持度阈值和置信度阈值进行比较;将支持度和置信度同时大于支持度阈值和置信度阈值的关联强度称为强关联强度;反之,称为弱关联强度。另外,除了根据支持度和置信度来计算相关行业术语与行业类别之间的关联强度之外,还可以有其他方式,例如可以利用更强调专有性的关联度来代替上述的置信度。其中,可以根据公式(7)来计算关联度
权利要求
1.一种行业词典生成方法,其特征在于,包括根据初始行业术语,获取所述初始行业术语对应的文档集合; 根据所述文档集合,获取候选术语; 对所述候选术语进行行业相关度分析,获取相关候选术语; 对所述相关候选术语进行共现分析和关联关系挖掘,生成行业词汇; 将所述行业词汇加入行业词典。
2.根据权利要求1所述的行业词典生成方法,其特征在于,在将所述行业词汇加入行业词典之后还包括将所述行业词典中的行业词汇重新作为所述初始行业术语,并返回执行根据初始行业术语,获取所述初始行业术语对应的文档集合的操作。
3.根据权利要求2所述的行业词典生成方法,其特征在于,在将所述行业词典中的行业词汇重新作为所述初始行业术语,并返回执行根据初始行业术语,获取所述初始行业术语对应的文档集合的操作之前还包括将所述行业词汇之外的相关候选术语加入屏蔽词典。
4.根据权利要求1所述的行业词典生成方法,其特征在于,所述根据所述文档集合,获取候选术语包括所述文档集合进行预处理,获取词序列集合; 对所述词序列集合进行过滤处理,获取所述候选术语。
5.根据权利要求4所述的行业词典生成方法,其特征在于,在对所述词序列集合进行过滤处理,获取所述候选术语之前还包括对所述词序列集合进行主题词提取处理,生成主题词控制词表。
6.根据权利要求1-5任一项所述的行业词典生成方法,其特征在于,所述根据初始行业术语,获取所述初始行业术语对应的文档集合包括将所述初始行业术语进行不同组合,获取初始行业术语组合;将所述初始行业术语组合作为查询词,利用搜索引擎获取指定个数的文档。
7.根据权利要求4或5所述的行业词典生成方法,其特征在于,所述对所述文档集合进行预处理,获取词序列集合包括对所述文档集合中的每个文档分别进行分词处理,获取所述词序列集合。
8.根据权利要求7所述的行业词典生成方法,其特征在于,所述对所述文档集合进行预处理还包括对所述文档集合中的每个文档进行词性标注、停词或同义词处理。
9.根据权利要求5所述的行业词典生成方法,其特征在于,所述对所述词序列集合进行主题词提取处理,生成主题词控制词表包括对预设的训练语料进行分词和词性标注处理,生成所述训练语料中每个词的特征集合和主题词判断结果,所述训练语料包括训练文档和所述训练文档对应的训练主题词;利用分类算法对所述训练语料中每个词的特征集合和主题词判断结果进行训练,生成分类器;获取所述词序列集合中每个词的特征集合;根据所述分类器和所述每个词的特征集合对所述每个词进行是否为主题词的判断;根据判断结果,生成所述主题词控制词表。
10.根据权利要求5或9所述的行业词典生成方法,其特征在于,对所述词序列集合进行过滤处理,获取候选术语包括以后缀树数据结构在所述词序列集合中提取重复的子串作为词组;选择词频大于词频阈值的词或词组作为候选词;根据过滤规则,对所述候选词进行过滤,获取所述候选术语。
11.根据权利要求10所述的行业词典生成方法,其特征在于,所述过滤规则包括以下任意一种或其组合所述初始行业术语或屏蔽词典中的词或词组不能作为候选术语; 候选术语包含的词必须是所述主题词控制词表中的词; 长度小于1的词或包含词的数量小于2或大于4的词组不能作为候选术语;或作为其他词组的前缀或后缀的词组不能作为候选术语。
12.根据权利要求1-5任一项所述的行业词典生成方法,其特征在于,对所述候选术语进行行业相关分析,获取相关候选术语包括采用卡方校验或信息增益算法,计算每个所述候选术语与所属行业类别的相关度; 根据相关度的大小,从所述候选术语中获取指定个数的所述相关候选术语。
13.根据权利要求1-5任一项所述的行业词典生成方法,其特征在于,所述对所述相关候选术语进行共现分析和关联关系挖掘,生成行业词汇包括对所述相关候选术语和所属行业类别在文档数据库中的出现次数进行统计,获取共现数据,所述共现数据包括文档数量、每个所述相关候选术语与所述行业类别同时出现时的第一次数值和所述行业类别单独出现时的第二次数值;对所述共现数据进行关联规则挖掘,获取所述相关候选术语与所述行业类别的关联强度;选择所述关联强度大于关联度阈值的相关候选术语作为所述行业词汇。
14.根据权利要求13所述的行业词典生成方法,其特征在于,对所述共现数据进行关联规则挖掘,获取所述相关候选术语与所述行业类别的关联强度包括计算每个所述第一次数值与所述文档数量的比值,获取每个所述相关候选术语对应的支持度;计算所述第一次数值与所述第二次数值的比值,获取置信度。
15.根据权利要求13所述的行业词典生成方法,其特征在于,对所述共现数据进行关联规则挖掘,获取所述相关候选术语与所述行业类别的关联强度包括计算每个所述第一次数值与所述文档数量的比值,获取每个所述相关候选术语对应的支持度;P(C)-P(A)P(B)根据公式11= /DMvn^TvnmvnA,获取每个所述相关候选术语与所述行业类别的关联 ^P(A)P(A)P(B)P(B)度;其中,R表示关联度;P(A)表示所述相关候选术语在所述文档数据库中出现的概率; P(B)表示所述行业类别在所述文档数据库中出现的概率;P(C)表示所述相关候选术语和所述行业类别同时出现在所述文档数据库中的概率。
16.一种行业词典生成装置,其特征在于,包括第一获取模块,用于根据初始行业术语,获取所述初始行业术语对应的文档集合; 第二获取模块,用于根据所述文档集合,获取候选术语; 第三获取模块,用于对所述候选术语进行行业关联度分析,获取相关候选术语; 生成模块,用于对所述相关候选术语进行共现分析和关联关系挖掘,生成行业词汇; 添加模块,用于将所述行业词汇加入行业词典。
17.根据权利要求16所述的行业词典生成装置,其特征在于,还包括触发模块,用于将所述行业词典中的行业词汇重新作为所述初始行业术语,并触发所述第一获取模块执行根据初始行业术语,获取所述初始行业术语对应的文档集合的操作。
全文摘要
本发明提供一种行业词典生成方法及装置。方法包括根据初始行业术语,获取初始行业术语对应的文档集合;根据文档集合,获取候选术语;对候选术语进行行业相关度分析,获取相关候选术语;对相关候选术语进行共现分析和关联关系挖掘,生成行业词汇;将行业词汇加入行业词典。采用本发明技术方案可以生成行业词典,解决了现有技术人工搜索行业词汇时成本高、效率低等问题。
文档编号G06F17/30GK102169495SQ201110089698
公开日2011年8月31日 申请日期2011年4月11日 优先权日2011年4月11日
发明者何伟平, 吴永强, 王名悠 申请人:趣拿开曼群岛有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1