基于电力关键词分词的数据检索方法及装置
技术领域
本发明涉及关键词检索方法,尤其涉及一种基于电力关键词分词的数据检索方法及装置。
背景技术
对于中文搜索引擎而言,中文分词作为其核心技术之一。中文分词技术属于自然语言处理技术范畴,其应用不仅仅局限于中文搜索引擎,它也是中文信息处理中的一个主要组成部分。中文信息处理是计算机对中文的音、形、义等信息进行处理和加工的过程,它是自然语言处理的一个分支,是一门与计算机科学、语言学、数学、信息学、声学等多种学科相关联的综合性学科。中文分词的基本方法包括如下三种:基于字符串匹配的分词方法、基于理解的分词方法以及基于统计的分词方法。
基于字符串匹配的分词方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个“充分大的”机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功识别出一个词。按照扫描方向的不同,串匹配分词方法可以分为正向匹配和逆向匹配;按照不同长度优先匹配的情况,可以分为最大最长匹配和最小最短匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。
基于理解的分词方法是通过让计算机模拟人对句子的理解,达到识别词的效果。其基本思想就是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。它通常包括三个部分分词子***、句法语义子***、总控部分。在总控部分的协调下,分词子***可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信息。由于中文语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词***还处在试验阶段。
基于统计的分词方案,从形式上看,词是稳定的字的组合,因此在上下文中,相邻的字同时出现的次数越多,就越有可能构成一个词。因此字与字相邻共现的频率或概率能够较好的反映成词的可信度。可以对语料中相邻共现的各个字的组合的频度进行统计,计算它们的互现信息。定义两个字的互现信息,计算两个汉字、的相邻共现概率。互现信息体现了汉字之间结合关系的紧密程度。当紧密程度高于某一个阂值时,便可认为此字组可能构成了一个词。这种方法只需对语料中的字组频度进行统计,不需要切分词典,因而又叫做无词典分词法或统计取词方法。但这种方法也有一定的局限性,会经常抽出一些共现频度高、但并不是词的常用字组。互联网上的搜索引擎是通过搜索引擎爬虫技术,根据一定的策略、运用特定的计算机程序从互联网上抓取新的、公共可访问的web网页、图片和文档资源,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的***,它的处理对象是互联网网页,而电网设备全景监测平台的台账数据和监测数据都是大量的存储在数据库当中,直接用互联网上的搜索引擎技术无法实现对用户所关心的设备或者设备类型进行全文检索。
电网设备全景监测平台是跨越输、变、配、用多个环节的业务场景,集成了智能电网配电自动化、电能质量监测、用电信息采集、状态监测、生产管理***等各业务子***的信息,形成综集综合业务、数据信息、可视化技术为一体的多维度、全方位、立体式的全省统一监测平台,涵盖的数据体量之巨大,靠现有的把各类检测***的查询菜单简单组合在一起的方式,虽然查询速度快,但是用户需要记忆菜单层级,用户记忆负担较大且操作较为繁琐。又或者是把所有的设备甚至所有的监测***数据储存在一张表只用一个菜单查询,虽然操作相对简单,但是数据查询速度很慢。
发明内容
本发明所要解决的技术问题是:提供一种操作简单、能够极大地提高数据检索效率的基于电力关键词分词的数据检索方法及装置。
为了解决上述技术问题,本发明采用的技术方案为:提供一种基于电力关键词分词的数据检索方法,包括如下步骤:
S01、在页面上待输入的文本框中输入关键词,其中,所述关键词包括为设备表名、设备类型或者监测主题;
S02、根据输入的关键词构造单次搜索记录解析结构对象,并将关键词切分成两个或两个以上的关键字并形成关键字集合;
S03、判断关键字集合内的关键字是否满足与词库完全匹配的搜索条件,若关键字集合内的关键字均存在于词库中,则在词库中直接获取与关键字关联的设备表名、设备类型、监测主题及权重信息,并存入搜索记录解析结构对象,否则执行步骤S04;
S04、判断搜索词汇集合内的搜索词汇是否满足与词库不完全匹配的搜索条件,若关键字集合内的关键字部分存在于词库中,则根据词库计算出匹配的关键字的权重,并存入搜索记录解析结构对象,否则执行步骤S05;
S05、若在词库中没有找到匹配的关键字,则使用默认的词库中的配置表进行检索,并将检索结果存入搜索记录解析结构对象;
S06、根据权重大小对搜索记录解析结构对象中存入的所有关键字进行排序,并过滤要在页面上展示的关键字;
S07、组装成SQL并查询数据库后,输出数据。
为了解决上述技术问题,本发明采用的另一技术方案为:提供一种基于电力关键词分词的数据检索装置,包括输入模块、构造模块、第一判断模块、第二判断模块、第三判断模块、过滤模块以及查询输出模块;
所述输入模块,用于在页面上待输入的文本框中输入关键词,其中,所述关键词包括为设备表名、设备类型或者监测主题;
所述构造模块,用于根据输入的关键词构造单次搜索记录解析结构对象,并将关键词切分成两个或两个以上的关键字并形成关键字集合;
所述第一判断模块,用于判断关键字集合内的关键字是否满足与词库完全匹配的搜索条件,若关键字集合内的关键字均存在于词库中,则在词库中直接获取与关键字关联的设备表名、设备类型及权重信息,并存入搜索记录解析结构对象;
所述第二判断模块,用于判断搜索词汇集合内的搜索词汇是否满足与词库不完全匹配的搜索条件,若关键字集合内的关键字部分存在于词库中,则根据词库计算出匹配的关键字的权重,并存入搜索记录解析结构对象;
所述第三判断模块,用于在词库中没有找到匹配的关键字,则使用默认的词库中的配置表进行检索,并将检索结果存入搜索记录解析结构对象;
所述过滤模块,用于根据权重大小对搜索记录解析结构对象中存入的所有关键字进行排序,并过滤要在页面上展示的关键字;
所述查询输出模块,用于组装成SQL并查询数据库后,输出数据。
本发明的有益效果在于:区别于现有的把各类检测***的查询菜单简单组合在一起的方式和把所有的设备甚至所有的监测***数据储存在一张表只用一个菜单查询的方式操作更加简单,用户不需要再去面对庞大的业务***,也不用再去记忆要打开的菜单项的问题,本发明提供了基于电力关键词分词的数据检索方法,一种用户只需在页面的文本框中输入想要查询的设备名称或者设备类型关键字即可。而且查询速度快,用户记忆负担小且用户体验效果良好。由于吸收互联网搜索引擎的精髓,在实现对用户所关系的设备、设备类型或者监测主题进行全文检索之外本专利申请能够无缝适配电网***。
附图说明
图1为本发明基于电力关键词分词的数据检索方法的流程示意图;
图2为本发明基于电力关键词分词的数据检索方法的整体流程示意图;
图3为本发明断词算法的流程图;
图4为本发明一实施例的示意图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:在页面的文本框中输入关键词,并对关键词进行切分以及在词库中搜索对切分后的关键字及关联的设备名称、设备表名及权重,根据权重大小对搜索记录解析结构对象中存入的所有关键字进行排序,并过滤要在页面上展示的关键字后组装搜索,能够极大地提高搜索效率。
请参照图1及图2,一种基于电力关键词分词的数据检索方法,包括如下步骤:
S01、在页面上待输入的文本框中输入关键词,其中,所述关键词包括为设备表名、设备类型或者监测主题;
S02、根据输入的关键词构造单次搜索记录解析结构对象,并将关键词切分成两个或两个以上的关键字并形成关键字集合;
S03、判断关键字集合内的关键字是否满足与词库完全匹配的搜索条件,若关键字集合内的关键字均存在于词库中,则在词库中直接获取与关键字关联的设备表名、设备类型、监控主题及权重信息,并存入搜索记录解析结构对象,否则执行步骤S04,其中,权重信息是指根据用户对相关设备的搜索频率的量化,频率越高权重值越大,并且此处的权重信息包括设备表名、设备类型、监控主题各自的权重信息;
S04、判断搜索词汇集合内的搜索词汇是否满足与词库不完全匹配的搜索条件,若关键字集合内的关键字部分存在于词库中,则根据词库计算出匹配的关键字的权重,并存入搜索记录解析结构对象,否则执行步骤S05;
S05、若在词库中没有找到匹配的关键字,则使用默认的词库中的配置表进行检索,并将检索结果存入搜索记录解析结构对象;
S06、根据权重大小对搜索记录解析结构对象中存入的所有关键字进行排序,并过滤要在页面上展示的关键字;
S07、组装成SQL并查询数据库后,输出数据。在组装的过程中必须能够对在页面上个要展示的字段进行控制实现展示页面的多样性。
从上述描述可知,本发明的有益效果在于:本发明提供了基于电力关键词分词的数据检索方法,一种用户只需在页面的文本框中输入想要查询的设备名称或者设备类型关键字即可。而且查询速度快,用户记忆负担小且用户体验效果良好。由于吸收互联网搜索引擎的精髓,在实现对用户所关系的设备、设备类型或者监测主题进行全文检索之外本专利申请能够无缝适配电网***。
进一步的,所述步骤S05之后,还对搜索的关键字的搜索频率进行记录,并更新词库中关键字权重的步骤。在后台记录用户搜索某个设备、设备类型或者监测主题的频率,使用最近最少使用算法(LRU),设立时间标志位,用以跟踪最近最少被使用的缓存数据。一个数据每被使用一次,其他数据的时间标志位数值(频率)就增加,从而提高排列权重。
进一步的,所述步骤S01具体包括,在带输入的文本框中输入多个关键词,并且多个关键词用空格隔开。
所述步骤S01中“在页面上待输入的文本框中输入关键词”时还包括,在文本框中显示输入与关键词的多个关联词的步骤,所述多个关联词按照与输入关键词匹配的权重排列。对用户输入的关键字以及在搜索结果中对常用设备、设备类型或者监测主题的点击频率进行统计之后在搜索框下方给予输入关键字联想,罗列出跟关键字匹配度较高且点击率较高的词汇方便用户的输入。由于电力的全文检索不同于互联网的全文检索,其对关键字的要求主要是电力行业里的专业术语。此外,在对常用电力关键字也不能单纯只是收集关键词,还必须将关键字所涉及或者关联到的包括设备类型如配变、配电室、馈线、以及监测主题如日负荷、日电量等数据信息也加入搜索的词库中。词库的设计除了包含这些信息之外还应能够对近义词进行归类和识别,词库里的关键字还必须可以设置不同的权重值从而可以实现对搜索结果在展示顺序上可控。
进一步的,所述步骤S02具体包括,根据输入的关键词构造单次搜索记录解析结构对象,并根据空格将关键词切分成两个或两个以上的关键字并形成关键字集合。
进一步的,所述步骤S02中“将关键词切分成两个或两个以上的关键字”采用的算法为正向最大匹配算法、逆向最大匹配算法及双向最大匹配算法中任意一种。基于词库对用户输入的关键字用相关算法进行断词,中文断词不同于英文断词,英文断词可以根据单词之间的空格来进行划分,而中文断词必须建立在词库的基础上,同时避免出现将已经是单独的词再次隔断,例如将厦门断词成“厦”和“门”,因此应借鉴目前比较主流的断词算法,如正向最大匹配算法、逆向最大匹配算法和双向最大匹配算法,结合这三种算法的有优缺点设计一个最适于电力行业的断词算法。同时断词算法需要能够根据权重对断词结果进行排序,权重越高则排序越靠前。
综上所述,本发明提供的基于电力关键词分词的数据检索方法,采用在页面上待输入的文本框中输入关键词,然后对关键词进行切分,以及在词库中搜索对切分后的关键字及关联的设备名称、设备表名及权重,根据权重大小对搜索记录解析结构对象中存入的所有关键字进行排序,并过滤要在页面上展示的关键字后组装搜索,能够极大地提高搜索效率,方便电力关键词的检索。另外,本发明还支持多个关键词同时输入,在输入关键词时还支持关键词联想,方便用户输入。关键词切分准确,搜索的范围小,简化搜索的难度。
参阅图3,图3为本发明断词算法的流程图,该断词算法包括S10、设定带切分字符串S1、输出字串S2以及最大词长ML;S20、判断S1是否为空,若是则输出结果S2,若否则从S1左边开始,去除候选字符串W,W的长度小于或等于ML;S30、判断W是否在词典(词库)中,若否去掉W最右边的一个字后判断W是否为单字,若是则计算S1及S2的长度,其中,S2=W+“,”、S1=S1-W,返回步骤S20,并输出S2,否则返回步骤S30,若是则计算S1及S2的长度,其中,S2=W+“,”、S1=S1-W,返回步骤S20,并输出S2。
参阅图4,具体的,例如用户输入关键字“海峡开闭所”,则本分词算法根据词库,将“海峡开闭所”关键词拆分为“海峡”、“开闭所”两个词,然后根据电力关键词“开闭所”获取到对应设备台账表,从中查询与“海峡”匹配的设备信息。
本发明还提供了一种基于电力关键词分词的数据检索装置,包括输入模块、构造模块、第一判断模块、第二判断模块、第三判断模块、过滤模块以及查询输出模块;
所述输入模块,用于在页面上待输入的文本框中输入关键词,其中,所述关键词包括为设备表名、设备类型或者监测主题;
所述构造模块,用于根据输入的关键词构造单次搜索记录解析结构对象,并将关键词切分成两个或两个以上的关键字并形成关键字集合;
所述第一判断模块,用于判断关键字集合内的关键字是否满足与词库完全匹配的搜索条件,若关键字集合内的关键字均存在于词库中,则在词库中直接获取与关键字关联的设备表名、设备类型及权重信息,并存入搜索记录解析结构对象;
所述第二判断模块,用于判断搜索词汇集合内的搜索词汇是否满足与词库不完全匹配的搜索条件,若关键字集合内的关键字部分存在于词库中,则根据词库计算出匹配的关键字的权重,并存入搜索记录解析结构对象;
所述第三判断模块,用于在词库中没有找到匹配的关键字,则使用默认的词库中的配置表进行检索,并将检索结果存入搜索记录解析结构对象;
所述过滤模块,用于根据权重大小对搜索记录解析结构对象中存入的所有关键字进行排序,并过滤要在页面上展示的关键字;
所述查询输出模块,用于组装成SQL并查询数据库后,输出数据。
综上所述,本发明提供的基于电力关键词分词的数据检索装置为上述方法方案的进一步应用,能够极大提高搜索效率,方便电力领域的关键词的检索。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。