自动搜寻文件中关键词的方法与系统 本发明涉及一种自动搜寻文件中关键词的方法与系统,特别是一种不需经过断词处理,直接搜寻文件中关键词的自动搜寻文件中关键词的方法与系统。
随著科技的发展,现今的时代已经成为一资讯爆炸的时代,大量的文件,例如新闻、论文、评论与专利资料等,均可藉由电脑与网际网络快速地流通,因此,文件取得困难的问题已大幅减少,取而代之是文件的搜寻与整理等问题。如果采用传统图书馆的分类方式,依照领域来对由电脑与网际网络来流通的文件进行逐篇分类,则势必要用人工阅读的方式将文件一一归类,如此将需要大量的人力来进行文件整理的工作。若单纯以编号的方式来整理,则欲搜寻资料又相当不便。因此,许多电脑科学的研究学者均开始尝试用电脑来自动找出文件中的关键字,用以搜寻或整理大量地文件。
一般而言,若欲利用电脑来找出一电脑可读取文件中的关键词,多半均先对文件进行断词处理后,再依断词的结果来找出文件的关键词。所谓的“断词”,是指将由成串字元所组成的文句进行分割,使文句被切割成许多有意义的词汇。例如,若文件中包括了“台北市政府”,则先将“台北市政府”分割成为”台北市”与”政府,再根据文件中两者的出现次数,来决定其是否为文件的关键词。然而,若欲实时处理大量的文件时,例如对一文件资料库中的所有文件依关键词进行自动分类,或是在网络上欲实时地利用关键字来对数篇文件进行过滤时,利用断词法来找寻文件中的关键字将太过耗时。此外,若欲对文件进行断词处理,则势必要另外维护断词所需的文法规则资料库或字词资料库,耗费额外的时间与成本。
所以,如何利用电脑技术来提供一种简单且快速的关键词学习方法与系统,以便处理大量的文件,并进一步使用于例如文件自动摘要、文件自动分类或文件自动过滤等资料检索的相关应用上,已成为一亟待解决的重要问题。
针对上述问题,本发明的目的为提供一种自动搜寻文件中关键词的方法与系统,其可利用电脑技术自动搜寻电脑可读取文件中的关键词,以大幅缩短搜索关键词所需的时间。
本发明的另一目的为提供一种自动搜寻文件中关键词的方法与系统,其不需对文件进行断词处理,故处理速度快,且不需维护复杂的文法规则资料库或字词资料库。
本发明的另一目的为提供一种自动搜寻文件中关键词的方法与系统,其可有效率地处理大量的文件,并可进一步使用于例如文件自动摘要、文件自动分类或文件自动过滤等资料检索的相关应用。
为达上述目的,依本发明的自动搜寻文件中关键词的方法包括一串列产生程序、一候选元素选取程序、一结合程序以及一关键词取出程序。串列产生程序计算一电脑可读取文件中的所有双连文的出现次数,并将双连文置于一串列中,以作为串列的多个元素。候选元素选取程序选取串列中的第一个元素作为前候选元素,以及第二个元素作为后候选元素。结合程序是当前候选元素与后候选元素的出现次数均高于一阀值时,将前候选元素与后候选元素合并为一合并元素。将合并元素置于一合并串列中,并将合并元素的出现次数加一。关键词取出程序则当前候选元素的出现次数高于该阀值,且前候选元素先前尚未与其它元素结合过时。将前候选元素置入关键词串列,以得到电脑可读取文件中的关键词。
本发明还提供一种自动搜寻文件中关键词的系统,包括一串列产生模块、一候选元素选取模块、一结合模块以及一关键词取出模块。串列产生模块计算一电脑可读取文件中的所有双连文的出现次数,并将双连文置于一串列中,以作为串列的多个元素。候选元素选取模块选取串列中的第一个元素作为前候选元素,以及第二个元素作为后候选元素。结合模块是当前候选元素与后候选元素的出现次数均高于一阀值时,将前候选元素与后候选元素合并为一合并元素,将合并元素置于一合并串列中,并将合并元素的出现次数加一。关键词取出模块则当前候选元素的出现次数高于该阀值,且前候选元素先前尚未与其它元素结合过时,将前候选元素置入关键词串列,以得到电脑可读取文件中的关键词。
图1为一流程图,显示依本发明较佳实施例的自动搜寻文件中关键词的方法的流程。
图2为一示意图,显示依本发明较佳实施例的自动搜寻文件中关键词的系统的组成。
附图符号说
1自动搜寻文件中关键词的方法102第一判断程序
101串列产生程序 103合并串列清空程序
104候选元素选取程序 21串列产生模块
105第二判断程序 22合并串列清空模块
106结合程序 23候选元素选取模块
107第三判断程序 24结合模块
108关键词取出程序 25关键词取出模块
109第四判断程序 26候选元素移位模块
110候选元素移位程序 27取代模块
111取代程序 51文件
2自动搜寻文件中关键词的系统 52关键词
以下将参照相关附图,说明依本发明较佳实施例的自动搜寻文件中关键词的方法与系统,其中相同的元件将以相同的参照符号加以说明。
首先,在本发明中所谓的“多连文(N-gram)”指文件内容中所有可能出现的多字词。以“中文资讯检索”短句为例,其所可能产生的“双连文(Bigram)”有五个,分别为:
中文、文资、资讯、讯检、检索
其所可能产生的“三连文(Trigram)”则有四个,分别为:
中文资`文资讯、资讯检、讯检索
依此类推,对于一文件的内容,可一直取到N连文为止。一般,可将N设为文件中所可能出现词的最大长度,例如,对于“中文资讯检索”而言,其最长可以取到六连文,即“中文资讯检索”本身。
由于具有完整意义的词,如上述的“中文”、“资讯”等,必定会在文件中完整出现,而不会只出现其中一部份。而另一方面,可单独出现的词也多半为具有完整意义的词,例如“资讯检索”具有完整意义,但“资讯”亦有完整意义,故亦可单独在文件中的其它地方出现。所以,本发明采用上述的原理作为基本假设,即”关键词将于文件中重覆出现”,以及”具有完整意义的词不会只部份出现于文件中”来对文件进行关键字的搜寻。
请参照图1,依本发明较佳实施例的自动搜寻文件中关键词的方法1是先进行一串列产生程序101,以计算一电脑可读取文件中的所有双连文的出现次数,并将双连文置于一串列中,以作为串列的多个元素。以“资讯系资讯检索系统”为例,其可能产生的双连文为“资讯”、“讯系”、“系资”、“资讯”与“讯检”、“检索”、“索系”与“系统”,且除了“资讯”的出现次数为两次之外,各双连文的出现次数皆为一次,故于串列产生程序101中,即将各双连文加入串列中以作为元素,并记录各该双连文的出现次数。
接着,在第一判断程序102中,判断串列是否为空串列。此时,由于串列中尚有元素,故接着进行合并串列清空程序103,以删除合并串列中所有的元素。事实上,此时在合并串列中并无任何元素存在,故此时合并串列清空程序103不需进行任何删除的动作。
接着,在候选元素选取程序104中,选取串列中的第一个元素以作为前候选元素,并选取串列中的第二个元素以作为后候选元素。在本实施例中,由于串列的第一个元素为“资讯”,第二个元素为“讯系”,故此时前候选元素即为“资讯”,而后候选元素则为“讯系”。
然后,第二判断程序105判别前候选元素与后候选元素的出现次数是否均高于阀值,若是则进行结合程序106,以将前候选元素与后候选元素合并为一合并元素。阀值的大小可依实际需要加以设定,例如依照文件的长度加以调整,长度越长的文件则阀值越大,长度越短的文件则阀值越小。在本实施例中由于“资讯系资讯检索系统”的长度较短,故将阀值设定为1,意谓只要出现两次以上的多连文即可成为关键词。
此时,前候选元素“资讯”的出现次数为2,其大于阀值,而后候选元素“讯系”出现次数为1,其等于阀值,并未大于阀值,故其并不会进入结合程序106,而是进入第三判断程序107。
在第三判断程序107中,若前候选元素的出现次数高于阀值,且前候选元素先前尚未与其它元素结合过时,即将前候选元素置入关键词串列。此时,由于前候选元素“资讯”的出现次数大于阀值。且其先前并未与任何其它元素合并过,故进入关键词取出程序108,将前候选元素“资讯”置入关键词串列中。注意,此处所提及的先前并未与任何其它元素合并过”的意义,是指若该单元先前已被合并过,则其会出现于较长的词中,成为该较长的词的一部份,故已合并过的元素即使再次成为前候选元素,也不会被放入关键字串列中。否则,如果可合并元素一方面可于合并后被置入合并串列,另一方面又会被置入关键字串列话。将造成关键字串列中元素为非完整词汇的机率增大。
然后,进行第四判断程序109,以判断串列是否结束。由于此时串列尚未结束,故进入候选元素移位程序110,以将串列中前候选元素的下一元素设为前候选元素,并将后候选元素的下一元素设为后候选元素。即,将原前候选元素“资讯”的下一个元素“讯系”设为新的前候选元素,而将原后候选元素“讯系”的下一个元素“系资”设为新的后候选元素。换而言之,在候选元素移位程序110中,将前候选元素与后候选元素在串列中向后移位一个元素。
在候选元素移位程序110的后,即回到第二判断程序105,以对新设定的前候选元素与后候选元素进行第二判断程序105或第三判断程序107的判定。
若在第四判断程序109中判定串列已经结束,即,前候选元素已经是串列中的最后一个元素“系统”,则进入取代程序111,将串列中的元素以合并串列中的元素取代。由于在原本的串列中,除了“资讯”此一元素的出现次数大于阀值之外,其它元素的出现次数均未大于阀值,故并不会有任何的元素合并情况产生。因此,合并串列中并不会有任何元素,导致串列中的元素均将被删除。接着,在第一判断程序102中,由于串列为空,故结束整个自动搜寻文件中关键词的方法1的流程。
在上述的流程中,最后在关键词串列中会留下“资讯”此一元素,且其出现次数为两次。此一元素即可视为“资讯是资讯检索系统”的关键词。当然,在流程结束的后,尚可对关键词串列中的各元素进行进一步整理,如使用常用词典作简单的过滤等,以筛选出更适当的关键字。
经由上述流程可以得知,从将文件分解为双连文开始,经由反覆进行元素合并以及将低于阀值的元素删除的动作,串列中的元素将会越来越少,最后在关键字串列中所记录的,即为出现次数超过阀值,且合并过后的多连文。不完整的词(如“讯系”、“系资”等)都会被删除。如此,将可找到文件中出现了一定以上次数,且为完整词汇的关键词。
请参照图2,依本发明较佳实施例的自动搜寻文件中关键词的系统2包括一串列产生模块2、一合并串列清空模块22、一候选元素选取模块23、一结合模块24、一关键词取出模块25、一候选元素移位模块26以及一取代模块27。在本实施例中,各模块均为储存于一电脑装置中的程序模块,其记录于一储存装置,如记忆体、硬盘机或光盘机等中,使一中央处理单元读取各模块之后,即进行如前所述的自动搜寻文件中关键词的方法1的流程,以找出文件51中的关键词。然而,熟悉该项技术者亦可对其进行等效的修改与应用,例如将各模块制作成为实体电路,以将其内置于如电子字典或个人数位助理等电子装置中,以对文件51进行如前所述自动搜寻文件中关键词的方法1的工作,而不超出本发明的精神与范围。
自动搜寻文件中关键词的系统2可自一记忆装置(如记忆体)或记录媒体(如磁盘或光盘)中读取文件51,或经由网际网络自另一网络伺服器读取文件51。在读取文件51后,各模块即依前述的自动搜寻文件中关键词的方法1的流程,搜寻文件51的关键词52。当找出文件51中的关键词52后,即可依关键词52对文件51进行各种处理,如文件自动摘要,文件自动分类或文件自动过滤等。需注意,在上述的实施例中,虽均以中文作为例子,然而依本发明的自动搜寻文件中关键词的方法与系统并不仅限于处理中文,而可应用于日文,韩文等多种文字。
依本发明的自动搜寻文件中关键词的方法与系统利用电脑技术自动搜寻电脑可读取文件中的关键词,故可大幅缩短搜索关键词所需的时间。
依本发明的自动搜寻文件中关键词的方法与系统并不需对文件进行断词处理,故其处理速度快,且不需维护复杂的文法规则资料库或字词资料库。
依本发明的自动搜寻文件中关键词的方法与系统的处理速度快,故当使用于例如文件自动摘要,文件自动分类或文件自动过滤等资料检索的相关应用上时,可更有效率地处理大量的文件。
以上所述仅为举例,而非为限制。任何未脱离本发明的精神与范围,而对其进行的等效修改或变更,均应包含于本专利的权利要求范围中。