CN107493370B - 流量模板确定方法、流量信息识别方法及装置 - Google Patents

流量模板确定方法、流量信息识别方法及装置 Download PDF

Info

Publication number
CN107493370B
CN107493370B CN201610410508.8A CN201610410508A CN107493370B CN 107493370 B CN107493370 B CN 107493370B CN 201610410508 A CN201610410508 A CN 201610410508A CN 107493370 B CN107493370 B CN 107493370B
Authority
CN
China
Prior art keywords
flow
template
traffic
corpus
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610410508.8A
Other languages
English (en)
Other versions
CN107493370A (zh
Inventor
李斌
张俊骏
郑恒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Banma Zhixing Network Hongkong Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610410508.8A priority Critical patent/CN107493370B/zh
Publication of CN107493370A publication Critical patent/CN107493370A/zh
Application granted granted Critical
Publication of CN107493370B publication Critical patent/CN107493370B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72436User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for text messaging, e.g. short messaging services [SMS] or e-mails
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • H04L12/1432Metric aspects
    • H04L12/1435Metric aspects volume-based

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本申请提供了一种流量模板确定方法、流量信息识别方法及装置,其中的流量模板确定方法包括:确定多条流量语料样本之间的相同内容以及差别内容;根据所述相同内容以及所述差别内容形成多个流量模板;将所述形成的流量模板加入流量模板集合中。本申请提供的技术方案可以实现流量模板的自动维护,在降低了流量模板维护工作量的同时,提高了流量模板的维护效率;不仅能够准确的识别出信息中的流量信息,而且不会对流量校准的准确性产生不良影响。

Description

流量模板确定方法、流量信息识别方法及装置
技术领域
本申请涉及网络通讯技术,尤其涉及一种流量模板确定方法、流量信息识别方法、流量模板确定装置以及流量信息识别装置。
背景技术
越来越多的用户在使用其智能手机等用户设备利用移动网络进行网络访问。为了使用户掌握其已使用流量以及剩余流量等流量信息,用户往往会根据其实际使用的套餐在其用户设备中设置相应的流量信息,这样,用户设备可以根据预先设置的流量信息以及其对流量使用情况的监控为用户提供已使用流量以及剩余流量等流量信息。
用户设置的流量信息不准确以及用户设备对流量的监控与运营商对流量的监控之间的差异等因素会造成用户设备向用户提供的流量信息不准确,而利用流量校准技术可以提高用户设备向用户提供的流量信息的准确性。
现有的流量校准的实现方式通常为:预先人工维护多个流量模板,利用预先维护的流量模板对运营商发送的信息(如短信)进行识别,以从运营商发送的信息中获取总流量、已使用流量以及剩余流量等流量信息,从而可以根据获取到的流量信息执行流量信息设置等操作。
发明人在实现本申请过程中发现,人工维护流量模板不仅工作量较大且维护效率较低,另外,不同地区不同运营商所发送的信息的格式各异以及新的流量业务的不断推出(如流量结转等),都会使得人工维护流量模板的工作量进一步增加,从而导致流量模板的更新周期较长,这些都会对流量校准的准确性产生不良影响。
发明内容
本申请的目的是提供一种流量模板确定方法、流量信息识别方法及装置。
根据本申请的第一个方面,提供了一种流量模板确定方法,包括:确定多条流量语料样本之间的相同内容以及差别内容;根据所述相同内容以及所述差别内容形成多个流量模板;将所述形成的流量模板加入流量模板集合中。
根据本申请的第二个方面,提供了一种流量信息识别方法,包括:获取信息;将所述信息与流量模板集合中的流量模板进行匹配;根据匹配的流量模板,识别流量信息,其中,所述流量模板集合中包括的流量模板是根据多条流量语料样本之间的相同内容以及差别内容的一部分生成的。
根据本申请的第三个方面,还提供了一种流量模板确定装置,包括:确定模块,用于确定多条流量语料样本之间的相同内容以及差别内容;形成模板模块,用于根据所述相同内容以及所述差别内容形成多个流量模板;设置模块,用于将所述形成的流量模板加入流量模板集合中。
根据本申请的第四个方面,还提供了一种流量信息识别装置,包括:获取模块,用于获取信息;匹配模块,用于将所述信息与流量模板集合中的流量模板进行匹配;第一识别模块,用于根据匹配的流量模板,识别流量信息,其中,所述流量模板集合中包括的流量模板是根据多条流量语料样本之间的相同内容以及差别内容的一部分生成的。
与现有技术相比,本申请各个实施例体现了以下优点:本申请通过获得多条流量语料样本之间的相同内容以及差别内容,并利用相同内容以及差别内容形成流量模板,使本申请具有从多条流量语料样本中挖掘出流量模板的功能,从而本申请可以实现流量模板的自动维护,在降低了流量模板维护工作量的同时,提高了流量模板的维护效率;由于本申请可以实现流量模板的自动维护,因此,无论包含有流量信息的语料的格式如何变化,也无论后续会推出怎样的新的流量业务,本申请都能够及时的随之调整流量模板集合中的流量模板,从而能够准确的识别出信息中的流量信息,进而不会对流量校准的准确性产生不良影响。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请实施例一的流量模板确定方法的流程图;
图2为本申请实施例一的获取多条流量语料样本之间的相同内容以及差别内容的一个具体例子的流程图;
图3为本申请实施例一的将形成的流量模板加入流量模板集合中的一个具体例子的流程图;
图4为本申请实施例三的流量信息识别方法的流程图;
图5为本申请实施例四的流量模板确定装置的结构示意图;
图6为本申请实施例四的确定模块的结构示意图;
图7为本申请实施例四的形成模板模块的结构示意图;
图8为本申请实施例四的设置模块的结构示意图;
图9为本申请实施例五的流量信息识别装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施例作详细描述。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然本申请的流程图将各项操作描述成顺序的处理,但是,其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
本实施例中的服务器包括但不限于单个网络服务器、多个网络服务器组成的服务器组或者基于云计算(Cloud Comput ing)的由大量计算机或者网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述服务器可以接入网络并与网络中的其他设备进行信息交互操作。其中,所述服务器所能够接入的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述服务器以及网络等仅为举例,其他现有的或今后可能出现的服务器或者网络如可适用于本申请,也应包含在本申请保护范围以内,并以引用方式包含于此。
后面描述所讨论的方法(其中一些通过流程图示出)实施例可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合的形式来实施。当用软件、固件、中间件或者微代码来实施时,用以实施必要任务的程序代码或者代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本申请的示例性实施例的目的,但是,本申请可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
应当理解的是,当一个单元被称为“连接”或者“耦合”到另一个单元时,其可以直接连接或者耦合到所述另一个单元,也可以存在中间单元。与此相对的,当一个单元被称为“直接连接”或者“直接耦合”到另一个单元时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之间的关系的其他词语(例如,“处于...之间”相比于“直接处于...之间”,“与...邻近”相比于“与...直接邻近”等等)。
这里所使用的术语仅仅是为了描述具体实施例,而不是意图限制示例性实施例。除非上下文中明确地另有所指,否则,这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定了所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或者添加一个或更多的其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换的实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
技术术语说明:
流量模板,用于识别短信等信息中所包含的流量信息;
流量语料样本,通常为包含有流量信息的信息,流量语料样本可以用于形成流量模板,例如:流量语料样本可以为通过对服务器发送的用于通知用户其流量信息的短信进行预处理而形成的信息;流量语料样本还可以为服务器发送的用于通知用户其流量信息的短信;其中,服务器可以为运营商服务器,或者其他各种数据服务器等。
语料样本集合,所有的流量语料样本形成语料样本集合;
流量语料,也可以称为原始流量语料,通常为用于形成流量语料样本的原始信息,如运营商发送的用于通知用户其流量信息的短信等。
下面结合附图对本申请的技术方案作进一步详细描述。
实施例一、流量模板确定方法。
图1为本实施例的流量模板确定方法流程图。图1中,本实施例的方法主要包括:步骤S100、步骤S110以及步骤S120。本实施例的方法通常由网络设备(如服务器等)来执行,且利用本实施例的方法所设置的流量模板集合可以用于流量校准的应用场景,如在用户设备接收到运营商发送来的信息(如短信等)后,利用流量模板集合从接收到的信息中获取总流量、已使用流量以及剩余流量中的一个或者多个,从而可以根据获取到的信息在用户设备中进行流量信息设置操作。
下面结合附图对本实施例的方法所包含的各步骤分别进行说明。
图1中,S100、获取多条流量语料样本之间的相同内容以及差别内容。
作为示例,本实施例可以从预先设置的流量语料样本集合中选取多条流量语料样本,并获取选取出的多条流量语料样本之间的相同内容以及多条流量语料样本之间的差别内容。本实施例中的语料样本集合通常是由预先获得的各流量语料样本形成,且语料样本集合中通常包含有为数众多的流量语料样本,如语料样本集合中包含上百/上千/上万条流量语料样本等。
本实施例中,多条流量语料样本之间的相同内容,包括:完全相同的内容,或相似的内容,例如,相似度满足设定阈值的内容。
本实施例中的流量语料样本可以为短信流量语料样本,当然,本实施例中的流量语料样本也可以为微信流量语料样本或者QQ流量语料样本等其他形式的流量语料样本。
作为示例,本实施例中的流量语料样本通常是对流量语料(即原始流量语料,如运营商发送给用户的短信等原始流量语料)进行预处理(即清洗处理)而形成的,即通过对语料进行预处理,使原始流量语料满足流量语料样本的要求,从而使原始流量语料转换为一条流量语料样本,原始流量语料转换后的流量语料样本属于语料样本集合。本实施例中的流量语料可以包括从运营商服务器处获取的流量语料,也可以包括从众多用户处获取的流量语料,即本实施例中的流量语料样本的来源可以为运营商服务器和/或众多用户。
作为示例,本实施例中的对流量语料的清洗处理可以包括:对流量语料中的标点符号的转换处理(如将中文标点符号转换为英文标点符号等),该清洗处理也可以包括:去除流量语料中的非法字符(如去除流量语料中的繁体字、换行符以及图形符号等);该清洗处理还可以包括:将流量语料中的数字以及该数字后面的流量单位(通常为紧随该数字的流量单位)使用特定字符(如占位符)来表示,且在通常情况下,流量语料中的数字以及紧随该数字的流量单位可以使用一个占位符来表示。
作为示例,本实施例对流量语料进行清洗处理(即预处理)的一个具体的例子为:预先设置有各中文标点符号和相应的英文标点符号之间的对应关系信息,获取一条运营商发送给用户的短信,按照从该短信的开始至结尾的方向,顺序查找该短信中所包含的标点符号,每查找到一个标点符号,均判断预先设置的上述对应关系信息中是否存在与该标点符号相匹配的中文标点符号,如果存在与该标点符号相匹配的中文标点符号,则利用对应关系中相匹配的中文标点符号所对应的英文标点符号来替换短信中的该中文标点符号;而如果判断结果为不存在与该标点符号相匹配的中文标点符号,则继续在短信中查找下一个标点符号,直到对短信中的所有标点符号均进行了判别处理。
作为示例,本实施例对流量语料进行清洗处理(即预处理)的另一个具体的例子为:预先设置有非法字符集,且本实施例可以根据实际需求设置非法字符集中所包含的字符(即非法字符);在获取到一条运营商发送给用户的短信之后,按照从该短信的开始至结尾的方向,顺序查找该短信中所包含的各字符是否属于非法字符集,并将查找到的属于非法字符集中的字符从该短信中删除。
需要特别说明的,本实施例也可以预先设置合法字符集,而不是非法字符集,在设置合法字符集的情况下,在查找到短信中所包含的某个字符不属于合法字符集中的字符时,应将该字符从短信中删除。
作为示例,本实施例对语料进行清洗处理(即预处理)的再一个具体的例子为:预先设置有流量单位(如KB、MB以及G等),在获取到一条运营商发送给用户的短信之后,按照从该短信的开始至结尾的方向,顺序查找该短信中所包含的数字串,在每查找到一个数字串时,均判断该数字串后面的字符是否为预先设置的流量单位,如果是预先设置的流量单位,则利用占位符替换该数字串和流量单位;而如果判断结果为不是预先设置的流量单位,则继续在短信中查找下一个数字串,直到对短信中的数字串均进行了判别处理。
作为示例,本实施例可以利用多种方式获取多条流量语料样本之间的相同内容以及差别内容;
一个具体的例子,本实施例可以利用相似度算法以及LCS(Longest CommonSubsequence,最长公共子序列)算法来获得语料样本集合中的多条流量语料样本之间的相同内容以及差别内容,即首先利用相似度算法从语料样本集合中选取出相似度满足预定相似度要求的多条流量语料样本(如选取两条流量语料样本),然后,利用LCS算法计算选取出的多条流量语料样本之间的相同内容,而流量语料样本中的除相同内容之外的内容即为差别内容;
另一个具体的例子,本实施例可以利用频繁模式挖掘算法获取语料样本集合中的多条流量语料样本之间的相同内容,而流量语料样本中的除相同内容之外的内容即为差别内容;
再一个具体的例子,本实施例可以利用频繁项集挖掘算法获取语料样本集合中的多条流量语料样本之间的相同内容,而流量语料样本中的除相同内容之外的内容即为差别内容。
本实施例中的多条流量语料样本之间的相同内容通常包括一个或者多个公共字符串,且本实施例中的多条流量语料样本之间的差别内容通常包括多个差别字符串。在多条流量语料样本之间的相同内容包括两个或者更多的公共字符串的情况下,前后两个公共字符串之间一般存在差别字符串(流量语料样本的最后部分为公共字符串的情况除外,即流量语料样本的最后部分为公共字符串时,该公共字符串之后不会存在差别字符串),也就是说,每一条流量语料样本所包含的相同内容被一个或者多个差别字符串间隔为多段,每一段均为一个公共字符串。
作为示例,本实施例中的一个公共字符串通常包括一个或者多个完整的语句,也可以包括不完整语句。本实施例中的语句通常是指通过标点符号(如分号、句号或者感叹号等)的断句而形成的语句。
作为示例,本实施例的流量语料样本中的一个差别字符串通常包括:一个/多个字符,且在通常情况下,一个差别字符串不会包括一个或者多个完整的语句。
下面以编辑距离算法以及LCS算法为例,结合图2对本实施例的获取多条流量语料样本之间的相同内容以及差别内容的具体实现过程进行说明。
图2中,S200、获取一条流量语料样本(如从语料样本集合中选取一条流量语料样本),并计算该流量语料样本与其他各条流量语料样本(如语料样本集合中的其他各条流量语料样本)之间的编辑距离。到S210。
作为示例,在计算两条流量语料样本之间的编辑距离的过程中,如果流量语料样本中的数字以及该数字的流量单位(即紧随该数字的流量单位)还没有被屏蔽(如没有被替换为占位符),则本实施例应先对流量语料样本中的数字以及该数字的流量单位进行屏蔽处理,如可以先将两条流量语料样本中的数字以及该数字的流量单位(如KB或者MB或者G等)均使用相同的特定字符(如占位符)来表示;然后,再计算两条流量语料样本之间的编辑距离。在通常情况下,流量语料样本中的数字以及紧随该数字的流量单位可以使用一个占位符来表示。
S210、从计算出的所有编辑距离中挑选出最小编辑距离,且挑选出的最小编辑距离应不为零。到S220。
在本实施例中,由于编辑距离为零通常表示两条流量语料样本完全相同,而本实施例是根据存在一定差异的多条流量语料样本来形成流量模板,因此,本实施例在选择最小编辑距离时,应排除为零的编辑距离。
S220、判断该最小编辑距离是否小于预先设置的第一编辑距离,如果小于第一编辑距离,则到S230,而如果不小于第一编辑距离,则到S240。
S230、利用LCS算法获取编辑距离最小的两条流量语料样本之间的相同内容,两条流量语料样本中除了相同内容之外的部分均为差别内容。到S240。
本实施例利用LCS算法获得的相同内容包括至少一个公共字符串,且本实施例利用LCS算法获得的差别内容包括至少一个差别字符串。
由于本实施例中设置有第一编辑距离,而利用该第一编辑距离可以实现将两条流量语料样本之间的差异控制在一个较小的范围内,因此,本实施例通过LCS算法所获得的两个流量语料样本之间的每一个差别字符串通常为一个/多个字符,而通常不会出现一个差别字符串包括一句较长的语句的现象。本实施例中的第一编辑距离通常可以根据实际需求设置。
S240、针对一条流量语料样本的处理过程结束。
需要特别说明的是,本步骤中的多条流量语料样本可以是属于同一个运营商的流量语料样本(即不同运营商的流量语料样本被分为多个分组,一个组对应一个运营商,从而本实施例可以针对每一组分别执行流量模板确定操作);当然,本步骤中的多条流量语料样本也可以是属于不同运营商的流量语料样本。
S110、根据相同内容以及差别内容形成多个流量模板。
作为示例,本实施例可以将相同内容设置在流量模板中,将差别内容(即对于多条流量语料样本各自不同的差别内容)以并列择一的方式设置在流量模板中,也就是说,上述多条流量语料样本中的同一个公共字符串前/后的差别字符串以并列择一的方式设置在流量模板中。
本实施例中的一个流量模板可以具体为一个正则表达式,且一个正则表达式通常包括:一段/多段公共正则表达信息以及一段/多段差别正则表达信息;其中的公共正则表达信息对应上述相同内容,而差别正则表达信息对应上述差别内容,且差别正则表达信息用于实现差别字符串的并列择一方式。
作为示例,本实施例可以根据相同内容以及差别内容在流量语料样本中的语序排列顺序形成一个正则表达式,且该正则表达式中的一段公共正则表达信息对应一个公共字符串,而一段差别正则表达信息对应多条流量语料样本中的相应位置处的各差别字符串。多条流量语料样本中的同一个公共字符串前/后的各差别字符串以或的形式设置在相应段的差别正则表达信息中。
另外,本实施例在形成正则表达式的过程中,可以将正则表达式中的表征数字以及数字的流量单位的信息(如占位符)替换为表示流量取值范围的正则表达信息。
作为示例,本实施例为了避免流量模板出现冗长的现象,以提高流量模板的可维护性以及流量信息的识别效率,可以对流量模板进行去噪处理,如删除上述形成的正则表达式中的公共正则表达信息中的与流量信息无关的语句(如未包含有数字和数字的流量单位的语句)。当然,本实施例也不排除在形成流量模板之前,先分别删除多个流量语料样本中的相同内容中的与流量信息无关的相同语句(如未包含有数字和数字的流量单位的语句),然后,再利用语句删除处理后的相同内容和差别内容形成流量模板的实现方式。
作为示例,本实施例可以按照从正则表达式的开始到结尾的顺序,依次查找每一段公共正则表达信息中的各语句是否包含有数字以及数字的流量单位,以此来判断公共正则表达信息中的各语句是否包含有流量信息。
具体的,本实施例可以根据一段公共正则表达信息所包含的逗号、感叹号或者句号等英文标点符号确定该段公共正则表达信息所包含的各语句。在公共正则表达式中的数字以及数字的流量单位使用特定字符(如占位符)来表示的情况下,可以针对一段公共正则表达信息所包含的每一个语句,分别判断语句中是否包含有特定字符(如占位符),如果判断结果为语句中包含有特定字符,则认为该语句为包含有流量信息的语句,如果判断结果为语句中没有包含有特定字符,则认为该语句为未包含有流量信息的语句,将没有包含有流量信息的语句从公共正则表达信息中删除。在公共正则表达式中的数字以及数字的流量单位已经使用表示流量取值范围的正则表达信息来表示的情况下,可以针对一段公共正则表达信息所包含的每一个语句,分别判断语句中是否包含有表示流量取值范围的正则表达信息,如果判断结果为语句中包含有表示流量取值范围的正则表达信息,则认为该语句为包含有流量信息的语句,如果判断结果为语句中没有包含有表示流量取值范围的正则表达信息,则认为该语句为未包含有流量信息的语句,将没有包含有流量信息的语句从公共正则表达信息中删除。
S120、将上述形成的流量模板加入流量模板集合中。
作为示例,流量模板集合由预先设置的各流量模板形成。在流量模板集合中不存在与上述形成的流量模板相同或者相类似的流量模板的情况下,可以直接将流量模板添加在流量模板集合中;而在流量模板集合中存在与上述形成的流量模板相同的流量模板的情况下,可以认为上述形成的流量模板已经被设置于流量模板集合中了;在流量模板集合中存在与上述形成的流量模板相类似的流量模板的情况下,可以将上述形成的流量模板与相类似的流量模板进行融合,以使两个相类似的流量模板融合为一个新的流量模板,且该新的流量模板会替代/覆盖流量模板集合中的与上述形成的流量模板相类似的流量模板。
本实施例可以利用相似度算法从流量模板集合中查找是否存在与上述形成的流量模板相同或者相类似的流量模板,如本实施例可以计算上述形成的流量模板与流量模板集合中的各流量模板之间的相似度,如果计算出的一个相似度表示两个流量模板完全一致,则认为流量模板集合中存在与上述形成的流量模板相同的流量模板;如果计算出的一个相似度满足预定相似度要求,则认为流量模板集合中存在与上述形成的流量模板相类似的流量模板;而如果计算出的所有相似度均不满足预定相似度要求,且计算出的所有相似度均不能表示出两个流量模板完全一致,则认为流量模板集合中不存在与上述形成的流量模板相同或者相类似的流量模板。
一个具体的例子,分别计算上述形成的流量模板与流量模板集合中的每一个流量模板之间的编辑距离,从计算出的所有编辑距离中挑选出最小编辑距离,如果挑选出的最小编辑距离为零,则确定出流量模板集合中存在与上述形成的流量模板相同的流量模板,则认为上述形成的流量模板已经设置于流量模板集合中;如果挑选出的最小编辑距离不为零,且小于预先设定的第二编辑距离,则确定出该最小编辑距离所对应的流量模板集合中的流量模板即为与上述形成的流量模板相类似的流量模板,应将这两个流量模板进行融合处理;如果挑选出的最小编辑距离不为零,并且也不小于预先设定的第二编辑距离,则确定出流量模板集合中不存在与上述形成的流量模板相类似的流量模板,则可以直接将上述形成的流量模板添加在流量模板集合中。
在需要将两个流量模板进行融合处理时,本实施例应先获取两个流量模板之间的相同内容以及两个流量模板之间的差别内容,本实施例中的两个流量模板之间的相同内容通常包括一个或者多个共同段,且本实施例中的两个流量模板之间的差别内容通常包括多个差别段。在两个流量模板之间的相同内容包括两个或者更多的共同段的情况下,前后两个共同段之间一般存在差别段(流量模板的最后部分为共同段的情况除外,即流量模板的最后部分为共同段时,该共同段之后不会存在差别段),即每一个流量模板所包含的相同内容被一个或者多个差别段间隔为多段,每一段均为一个共同段。
在获取了两个流量模板之间的相同内容以及两个流量模块之间的差别内容之后,本实施例应将两个流量模板的相同内容中的各个共同段前/后的差别段以并列择一的方式设置在新的流量模板中。
下面以编辑距离算法以及LCS算法为例,结合图3对本实施例的将形成的流量模板加入流量模板集合中的具体实现过程进行说明。
图3中,S300、计算上述形成的流量模板(如正则表达式)与流量模板集合中的各流量模板(如各正则表达式)之间的编辑距离。到S310。
S310、从计算出的所有编辑距离中挑选出最小编辑距离。到S320。
S320、判断该最小编辑距离是否为零,如果为零,则到S360,如果不为零,则到S330。
S330、判断该最小编辑距离是否小于预先设置的第二编辑距离,如果小于第二编辑距离,则到S340,而如果不小于第二编辑距离,则到S370。
S340、利用LCS算法获取编辑距离最小的两个流量模板(如两个正则表达式)之间的相同内容(即公共正则表达信息),两个流量模板中除了相同内容之外的部分均为差别内容(即差别正则表达信息)。到S350。
本实施例利用LCS算法获得的相同内容包括至少一个共同段(如公共正则表达段),且本实施例利用LCS算法获得的差别内容包括至少一个差别段(如差别正则表达段)。
由于本实施例中设置有第二编辑距离,而利用该第二编辑距离可以实现将两个流量模板之间的差异控制在一个较小的范围内。本实施例中的第二编辑距离通常可以根据实际需求设置。
S350、将两个流量模板之间的相同内容中的相同共同段前/后的差别段以并列择一的方式设置于流量模板集合中的该流量模板中(如以或的方式设置于流量模板集合中的正则表达式中),从而对流量模板集合中的流量模板进行了更新,更新后的流量模板可以识别更多种表达方式的流量信息。
S360、针对上述形成的流量模板的处理过程结束,可以丢弃上述形成的流量模板。
S370、将上述形成的流量模板加入流量模板集合中。
另外,本实施例也可以采用频繁模式挖掘算法或者频繁项集挖掘算法来确定不同流量模板之间的相同内容以及不同流量模板之间的差别内容。
实施例二、流量模板确定方法。
设定本实施例中的语料为两条运营商发送给用户的短信,即下述短信A和短信B:
短信A为:亲爱的用户,欢迎使用100XX!您本月国内通用流量共有1324MB,剩余流量不足132.40MB;套餐内本地流量共有100MB,剩余0MB。
短信B为:亲爱的用户,欢迎使用100XX!您本月国内通用流量共有2048MB,剩余流量为1024.00MB;套餐内本地流量共有80MB,剩余30MB。
首先,本实施例需要对短信A和短信B分别进行清洗处理,以将短信A和短信B分别形成流量语料样本,即流量语料样本A和流量语料样本B。
具体的清洗处理方式可以为:将短信A和短信B中的逗号、感叹号以及分号等中文标点符号分别替换为英文标点符号,并将1324MB、132.40MB、100MB、0MB、2048MB、1024.00MB、80MB以及30MB分别替换成一个占位符(这里使用φ表示占位符)。由于上述短信A和短信B中均未包括非法字符,因此,没有对短信A和短信B进行非法字符删除处理。
清洗处理后的短信A变为短信样本A,短信B变为短信样本B,短信样本A和短信样本B属于短信样本集合。短信样本A和短信样本B可表述为如下格式:
短信样本A:亲爱的用户,欢迎使用100XX!您本月国内通用流量共有φ,剩余流量不足φ;套餐内本地流量共有φ,剩余φ。
短信样本B:亲爱的用户,欢迎使用100XX!您本月国内通用流量共有φ,剩余流量为φ;套餐内本地流量共有φ,剩余φ。
之后,利用编辑距离算法计算短信样本A与短信样本B之间的编辑距离,由于短信样本A与短信样本B不完全相同,因此,本次计算出的编辑距离不为零。设定本次计算出的编辑距离小于第一编辑距离,因此,本实施例使用LCS算法获得短信样本A与短信样本B之间的相同内容以及两者之间的差别内容。
利用LCS算法获得相同内容的一个具体例子为:首先利用LCS算法获得第一个公共字符串,即“亲爱的用户,欢迎使用100XX!您本月国内通用流量共有”,将该公共字符串替换为一个占位符(本实施例中使用$1$表示),短信样本A与短信样本B被转换为如下格式:
短信样本A:$1$φ,剩余流量不足φ;套餐内本地流量共有φ,剩余φ。
短信样本B:$1$φ,剩余流量为φ;套餐内本地流量共有φ,剩余φ。
然后,重复利用LCS算法可以获得第二个公共字符串、第三个公共字符串、第四个公共字符串以及第五个公共字符串,这四个公共字符串分别为“;套餐内本地流量共有”、“,剩余流量”、“,剩余”、以及“。”,本实施例可以将第二个公共字符串、第三个公共字符串、第四个公共字符串以及第五个公共字符串分别替换为一个占位符(本实施例可以使用$2$、$3$、$4$、$5$分别表示)。
此时,将短信样本A和短信样本B中的相同内容和差别内容拼接起来即可形成一个流量模板(即正则表达式),即:
$1$φ,$3$((不足)|(为))φ$2$φ$4$φ$5$
将流量模板中的φ替换成一个专门用于表示取值范围的正则表达式信息,即[0-9\.+kKmMgG]+,再利用实际的公共字符串替换上述$1$、$2$、$3$、$4$以及$5$,即可获得一个流量模板,即:
亲爱的用户,欢迎使用100XX!您本月国内通用流量共有[0-9\.+kKmMgG]+,剩余流量((不足)|(为))[0-9\.+kKmMgG]+;套餐内本地流量共有[0-9\.+kKmMgG]+,剩余[0-9\.+kKmMgG]+。
对上述获得的流量模板进行去噪处理,由于可以判断出“亲爱的用户,欢迎使用100XX!”中没有包含表示取值范围的正则表达式信息,即[0-9\.+kKmMgG]+,因此可以确定该语句中没有包含流量信息,可以将该语句删除,从而最终得到的流量模板为:
您本月国内通用流量共有[0-9\.+kKmMgG]+,剩余流量((不足)|(为))[0-9\.+kKmMgG]+;套餐内本地流量共有[0-9\.+kKmMgG]+,剩余[0-9\.+kKmMgG]+。
设定流量模板集合中有一个流量模板为:
您本月国内通用流量共有[0-9\.+kKmMgG]+,剩余流量((不足)|(为))[0-9\.+kKmMgG]+;套餐内国际流量共有[0-9\.+kKmMgG]+,剩余[0-9\.+kKmMgG]+。
本实施例通过计算这两个流量模板的编辑距离可知,计算出的编辑距离不为零,且小于第二编辑距离,因此,本实施例可以利用LCS算法获取到这两个流量模板之间的相同内容以及两个流量模板之间的差别内容,从而本实施例可以将这两个流量模板融合为一个新的流量模板,即:
您本月国内通用流量共有[0-9\.+kKmMgG]+,剩余流量((不足)|(为))[0-9\.+kKmMgG]+;套餐内((国际)|(本地))流量共有[0-9\.+kKmMgG]+,剩余[0-9\.+kKmMgG]+。
流量模板集合中的该流量模板被更新为融合后的新流量模板。
实施例三、流量信息识别方法。
图4为本实施例的流量信息识别方法流程图。图4中,本实施例的方法主要包括:步骤S400、步骤S410以及步骤S410。本实施例的方法通常由终端侧(如智能移动电话等终端设备)来执行,如可以通过终端设备中的流量监控程序(如安全中心)来执行,也可以由终端设备中的短信应用来执行,且短信应用所识别出的流量信息可以传输给流量监控程序(如安全中心),以提醒用户。另外,终端设备所使用的流量模板集合可以从服务器(如流量监控程序所对应的服务器等)处获取,并由服务器维护更新(如在服务器中的流量模板集合更新时,服务器会更新终端设备中的流量模板集合)。
图4中,S400、获取信息。该信息(如待识别信息)可以为运营商发送给用户的短信等。
S410、将上述获取的信息与流量模板集合中的流量模板进行匹配。
本实施例中的流量模板集合中包括的流量模板可以是利用上述实施例一记载的方法而设置的流量模板,且流量模板集合中的流量模板可以为正则表达式。
S420、根据匹配的流量模板,获取流量信息。
在确定出流量模板集合中存在与上述获取的信息相匹配的流量模板的情况下,可以根据相匹配的流量模板准确的获取流量信息,如从上述获取的信息中获取到流量信息;再如利用该匹配的流量模板从其他信息中获取到流量信息,进一步而言,对于一个用户而言,其所选择的运营商以及所使用的流量套餐在一段时间内通常不会发生变化,在针对用户设备接收到的运营商发送来的短信等信息进行流量信息识别时,可以确定出与该信息匹配的流量模板,并利用该匹配的流量模板从该信息中获取流量信息,后续,针对用户设备接收到的运营商发送来的其他信息,同样可以使用之前匹配的流量模板来获取流量信息。
在确定出流量模板集合中不存在与上述获取的信息(如待识别信息)相匹配的流量模板的情况下,本实施例还可以根据预先设置的关键字集合中的各流量关键字来判断该信息所包含的流量关键字,从而本实施例可以根据该信息所包含的流量关键字从该信息中获取到相应的流量信息。
由于从信息(如待识别信息)中获取到的所有流量信息通常可以划分为多组(也可以称为多个子套餐),如上述短信A中的国内通用流量共有1324MB和剩余流量不足132.40MB可以算做一组,而套餐内本地流量共有100MB和剩余0MB可以算作一组,因此,本实施例应识别出获取到的流量信息所包含的各子套餐。
在根据相匹配的流量模板来从上述获取的信息或者其他信息中获取流量信息时,可以根据流量模板的设置识别出获取到的流量信息所包含的各子套餐;而在根据关键字集合来从上述获取的信息中获取流量信息时,可以根据该信息中的标点符号识别出获取到的流量信息所包含的各子套餐,如以分号为间隔,将所有的流量信息划分为多组。
本实施例可以针对识别出的各子套餐进行相应的处理,如设定一个完整的子套餐应包括:总流量、已用流量和剩余流量这三部分内容,如果检测到一个子套餐包括了这三部分,则可以验证该子套餐中的已用流量和剩余流量之和是否为总流量,如果不为总流量,则可以将总流量修改为已用流量和剩余流量之和;如果检测到子套餐只包括三部分内容中的两部分,则可以通过计算确定出缺少的一部分的具体取值;如果检测到子套餐只包括三部分内容中的一部分,则可以将另外两部分设置为缺省值,如一个子套餐只包括已用流量,则可以将总流量设置为已用流量,而将剩余流量设置为零。
本实施例识别出的流量信息可以用于流量校准等应用场景。
实施例四、流量模板确定装置。
图5为本实施例的流量模板确定装置结构示意图。图5中,本实施例的装置主要包括:确定模块500、形成模板模块510以及设置模块520;且该装置还可以包括:预处理模块530。本实施例的装置通常由网络设备(如服务器等)来执行,且利用本实施例的装置所设置的流量模板集合可以用于流量校准的应用场景,如在用户设备接收到运营商发送来的信息(如短信等)后,利用流量模板集合从接收到的信息中获取总流量、已使用流量以及剩余流量中的一个或者多个,从而可以根据获取到的信息在用户设备中进行流量信息设置操作。
下面结合附图对本实施例的装置所包含的各模块分别进行说明。
确定模块500主要用于确定多条流量语料样本之间的相同内容以及差别内容;且该确定模块500包括:选取子模块501、相同内容子模块502以及差别内容子模块503(如图6所示)。
其中的选择子模块501主要用于根据流量语料样本集合中流量语料样本间的相似度,从流量信息样本集合中选取相似度满足第一预定相似度要求的多条流量语料样本;其中的相同内容子模块502主要用于获取所述多条流量语料样本之间的相同内容;其中的差别内容子模块503主要于选取从多个流量语料样本中的每个流量语料样本中分别去掉所述相同内容,得到多条流量语料样本之间的差别内容。
作为示例,确定模块500(如选择子模块501)可以从流量语料样本集合中选取多条流量语料样本,并获取选取出的多条流量语料样本之间的相同内容以及多条流量语料样本之间的差别内容。本实施例中的语料样本集合通常是由预先获得的各流量语料样本形成,且语料样本集合中通常包含有为数众多的流量语料样本,如语料样本集合中包含上百/上千/上万条流量语料样本等。
本实施例中的流量语料样本可以为短信流量语料样本,当然,本实施例中的流量语料样本也可以为微信流量语料样本或者QQ流量语料样本等其他形式的流量语料样本。
作为示例,本实施例中的流量语料样本通常是预处理模块530对流量语料(即原始流量语料,如运营商发送给用户的短信等原始流量语料)进行预处理(即清洗处理)而形成的,即预处理模块530通过对语料进行预处理,使原始流量语料满足流量语料样本的要求,从而使原始流量语料转换为一条流量语料样本,原始流量语料转换后的流量语料样本属于语料样本集合。
作为示例,预处理模块530对流量语料的清洗处理可以包括:对流量语料中的标点符号的转换处理(如将中文标点符号转换为英文标点符号等),该清洗处理也可以包括:去除流量语料中的非法字符(如去除流量语料中的繁体字、换行符以及图形符号等);该清洗处理还可以包括:将流量语料中的数字以及该数字后面的流量单位(通常为紧随该数字的流量单位)使用特定字符(如占位符)来表示,且在通常情况下,流量语料中的数字以及紧随该数字的流量单位可以使用一个占位符来表示。
作为示例,预处理模块530对流量语料进行清洗处理(即预处理)的一个具体的例子为:预先设置有各中文标点符号和相应的英文标点符号之间的对应关系信息,预处理模块530获取一条运营商发送给用户的短信,按照从该短信的开始至结尾的方向,顺序查找该短信中所包含的标点符号,每查找到一个标点符号,预处理模块530均判断预先设置的上述对应关系信息中是否存在与该标点符号相匹配的中文标点符号,如果存在与该标点符号相匹配的中文标点符号,则利用对应关系中相匹配的中文标点符号所对应的英文标点符号来替换短信中的该中文标点符号;而如果判断结果为不存在与该标点符号相匹配的中文标点符号,则预处理模块530继续在短信中查找下一个标点符号,直到对短信中的所有标点符号均进行了判别处理。
作为示例,预处理模块530对流量语料进行清洗处理(即预处理)的另一个具体的例子为:预先设置有非法字符集,且预处理模块530可以根据实际需求设置非法字符集中所包含的字符(即非法字符);在获取到一条运营商发送给用户的短信之后,预处理模块530按照从该短信的开始至结尾的方向,顺序查找该短信中所包含的各字符是否属于非法字符集,并将查找到的属于非法字符集中的字符从该短信中删除。
需要特别说明的,本实施例也可以预先设置合法字符集,而不是非法字符集,在设置合法字符集的情况下,在预处理模块530查找到短信中所包含的某个字符不属于合法字符集中的字符时,应将该字符从短信中删除。
作为示例,预处理模块530对语料进行清洗处理(即预处理)的再一个具体的例子为:预先设置有流量单位(如KB、MB以及G等),在获取到一条运营商发送给用户的短信之后,预处理模块530按照从该短信的开始至结尾的方向,顺序查找该短信中所包含的数字串,在每查找到一个数字串时,预处理模块530均判断该数字串后面的字符是否为预先设置的流量单位,如果是预先设置的流量单位,则预处理模块530利用占位符替换该数字串和流量单位;而如果判断结果为不是预先设置的流量单位,则预处理模块530继续在短信中查找下一个数字串,直到对短信中的数字串均进行了判别处理。
作为示例,确定模块500可以利用多种方式获取多条流量语料样本之间的相同内容以及差别内容;
一个具体的例子,确定模块500(如相同内容子模块502以及差别内容子模块503)可以利用相似度算法以及LCS算法来获得语料样本集合中的多条流量语料样本之间的相同内容以及差别内容,即相同内容子模块502首先利用相似度算法从语料样本集合中选取出相似度满足预定相似度要求的多条流量语料样本(如选取两条流量语料样本),然后,利用LCS算法计算选取出的多条流量语料样本之间的相同内容,而流量语料样本中的除相同内容之外的内容即可以被差别内容子模块503作为差别内容;
另一个具体的例子,确定模块500可以利用频繁模式挖掘算法获取语料样本集合中的多条流量语料样本之间的相同内容,而流量语料样本中的除相同内容之外的内容即可以被差别内容子模块503作为差别内容;
再一个具体的例子,确定模块500可以利用频繁项集挖掘算法获取语料样本集合中的多条流量语料样本之间的相同内容,而流量语料样本中的除相同内容之外的内容即可以被差别内容子模块503作为差别内容。
本实施例中的多条流量语料样本之间的相同内容通常包括一个或者多个公共字符串,且本实施例中的多条流量语料样本之间的差别内容通常包括多个差别字符串。在多条流量语料样本之间的相同内容包括两个或者更多的公共字符串的情况下,前后两个公共字符串之间一般存在差别字符串(流量语料样本的最后部分为公共字符串的情况除外,即流量语料样本的最后部分为公共字符串时,该公共字符串之后不会存在差别字符串),也就是说,每一条流量语料样本所包含的相同内容被一个或者多个差别字符串间隔为多段,每一段均为一个公共字符串。
作为示例,本实施例中的一个公共字符串通常包括一个或者多个完整的语句,也可以包括不完整语句。本实施例中的语句通常是指通过标点符号(如分号、句号或者感叹号等)的断句而形成的语句。
作为示例,本实施例的流量语料样本中的一个差别字符串通常包括:一个/多个字符,且在通常情况下,一个差别字符串不会包括一个或者多个完整的语句。
确定模块500获取多条流量语料样本之间的相同内容以及差别内容的具体实现过程如上述实施例一中针对图2的描述,在此不再详细说明。
形成模板模块510主要用于根据相同内容以及差别内容形成流量模板,其中将相同内容设置在流量模板中,将对于多条流量语料样本各自不同的差别内容以并列择一的方式设置在流量模板中;且该形成模板模块510可以包括:正则子模块511、替换子模块512以及删除子模块513(如图7所示);其中的正则子模块511主要用于根据所述相同内容以及所述差别内容形成正则表达式,其中相同内容包括至少一个公共字符串,所述差别内容包括至少一个差别字符串,所述正则表达式中的公共字符串被差别字符串分割开,且不同流量信息样本中的差别字符串以并列择一的方式设置;其中的替换子模块512主要用于将所述正则表达式中的表征数字以及数字的流量单位的信息替换为表示流量取值范围的信息;其中的删除子模块503主要用于删除正则表达式中的未包含有数字和流量单位的语句。
形成模板模块510所形成一个流量模板可以具体为一个正则表达式,且一个正则表达式通常包括:一段/多段公共正则表达信息以及一段/多段差别正则表达信息;其中的公共正则表达信息对应上述相同内容,而差别正则表达信息对应上述差别内容,且差别正则表达信息用于实现差别字符串的并列择一方式。
作为示例,形成模板模块510(如正则子模块511)可以根据相同内容以及差别内容在流量语料样本中的语序排列顺序形成一个正则表达式,且该正则表达式中的一段公共正则表达信息对应一个公共字符串,而一段差别正则表达信息对应多条流量语料样本中的相应位置处的各差别字符串。多条流量语料样本中的同一个公共字符串前/后的各差别字符串以或的形式设置在相应段的差别正则表达信息中。
另外,形成模板模块510(如替换子模块512)可以在正则子模块511形成正则表达式的过程中,可以将正则表达式中的表征数字以及数字的流量单位的信息(如占位符)替换为表示流量取值范围的正则表达信息。
作为示例,本实施例为了避免流量模板出现冗长的现象,以提高流量模板的可维护性以及流量信息的识别效率,形成模板模块510(如删除子模块503)可以对流量模板进行去噪处理,如删除上述形成的正则表达式中的公共正则表达信息中的与流量信息无关的语句(如未包含有数字和数字的流量单位的语句)。当然,本实施例也不排除在正则子模块511形成流量模板之前,先利用删除子模块503分别删除多个流量语料样本中的相同内容中的与流量信息无关的相同语句(如未包含有数字和数字的流量单位的语句),然后,正则子模块511再利用语句删除处理后的相同内容和差别内容形成流量模板的实现方式。
作为示例,删除子模块503可以按照从正则表达式的开始到结尾的顺序,依次查找每一段公共正则表达信息中的各语句是否包含有数字以及数字的流量单位,以此来判断公共正则表达信息中的各语句是否包含有流量信息。
具体的,删除子模块503可以根据一段公共正则表达信息所包含的逗号、感叹号或者句号等英文标点符号确定该段公共正则表达信息所包含的各语句。在公共正则表达式中的数字以及数字的流量单位使用特定字符(如占位符)来表示的情况下,删除子模块503可以针对一段公共正则表达信息所包含的每一个语句,分别判断语句中是否包含有特定字符(如占位符),如果判断结果为语句中包含有特定字符,则认为该语句为包含有流量信息的语句,如果判断结果为语句中没有包含有特定字符,则删除子模块503认为该语句为未包含有流量信息的语句,将没有包含有流量信息的语句从公共正则表达信息中删除。在公共正则表达式中的数字以及数字的流量单位已经使用表示流量取值范围的正则表达信息来表示的情况下,删除子模块503可以针对一段公共正则表达信息所包含的每一个语句,分别判断语句中是否包含有表示流量取值范围的正则表达信息,如果判断结果为语句中包含有表示流量取值范围的正则表达信息,则认为该语句为包含有流量信息的语句,如果判断结果为语句中没有包含有表示流量取值范围的正则表达信息,则认为该语句为未包含有流量信息的语句,删除子模块503将没有包含有流量信息的语句从公共正则表达信息中删除。
设置模块520主要用于将形成的流量模板加入流量模板集合中,且该设置模块520可以包括:选取模板子模块521以及模板融合子模块522(如图8所示);其中的选取模板子模块521主要用于从流量模板集合中选取与所述形成的流量模板的相似度满足第二预定相似度要求的流量模板;其中的模板融合子模块522主要用于将所述形成的流量模板与所述选取的流量模板融合为一个流量模板加入流量模板集合中。
作为示例,流量模板集合由预先设置的各流量模板形成。在流量模板集合中不存在与上述形成的流量模板相同或者相类似的流量模板的情况下,设置模块520可以直接将流量模板添加的流量模板集合中;而在流量模板集合中存在与上述形成的流量模板相同的流量模板的情况下,设置模块520可以认为上述形成的流量模板已经被设置于流量模板集合中了;在流量模板集合中存在与上述形成的流量模板相类似的流量模板的情况下,设置模块520可以将上述形成的流量模板与相类似的流量模板进行融合,以使两个相类似的流量模板融合为一个新的流量模板,且该新的流量模板会替代/覆盖流量模板集合中的与上述形成的流量模板相类似的流量模板。
设置模块520(如选取模板子模块521)可以利用相似度算法从流量模板集合中查找是否存在与上述形成的流量模板相同或者相类似的流量模板,如设置模块520(如选取模板子模块521)可以计算上述形成的流量模板与流量模板集合中的各流量模板之间的相似度,如果计算出的一个相似度表示两个流量模板完全一致,则认为流量模板集合中存在与上述形成的流量模板相同的流量模板;如果计算出的一个相似度满足预定相似度要求,则认为流量模板集合中存在与上述形成的流量模板相类似的流量模板;而如果计算出的所有相似度均不满足预定相似度要求,且计算出的所有相似度均不能表示出两个流量模板完全一致,则认为流量模板集合中不存在与上述形成的流量模板相同或者相类似的流量模板。
一个具体的例子,设置模块520(如选取模板子模块521)分别计算上述形成的流量模板与流量模板集合中的每一个流量模板之间的编辑距离,从计算出的所有编辑距离中挑选出最小编辑距离,如果挑选出的最小编辑距离为零,则确定出流量模板集合中存在与上述形成的流量模板相同的流量模板,则认为上述形成的流量模板已经设置于流量模板集合中;如果挑选出的最小编辑距离不为零,且小于预先设定的第二编辑距离,则确定出该最小编辑距离所对应的流量模板集合中的流量模板即为与上述形成的流量模板相类似的流量模板,应将这两个流量模板进行融合处理;如果挑选出的最小编辑距离不为零,并且也不小于预先设定的第二编辑距离,则确定出流量模板集合中不存在与上述形成的流量模板相类似的流量模板,则可以直接将上述形成的流量模板添加在流量模板集合中。
在需要将两个流量模板进行融合处理时,设置模块520(如模板融合子模块522)应先获取两个流量模板之间的相同内容以及两个流量模板之间的差别内容,本实施例中的两个流量模板之间的相同内容通常包括一个或者多个共同段,且本实施例中的两个流量模板之间的差别内容通常包括多个差别段。在两个流量模板之间的相同内容包括两个或者更多的共同段的情况下,前后两个共同段之间一般存在差别段(流量模板的最后部分为共同段的情况除外,即流量模板的最后部分为共同段时,该共同段之后不会存在差别段),即每一各流量模板所包含的相同内容被一个或者多个差别段间隔为多段,每一段均为一个共同段。
设置模块520(如模板融合子模块522)在获取了两个流量模板之间的相同内容以及两个流量模块之间的差别内容之后,设置模块520(如模板融合子模块522)应将两个流量模板的相同内容中的各个共同段前/后的差别段以并列择一的方式设置在新的流量模板中。
设置模块520将形成的流量模板加入流量模板集合中的一个具体实现过程如上述实施例一中针对图3的描述,在此不再详细说明。
实施例五、流量信息识别装置。
图9为本实施例的流量信息识别装置流程图。图9中,本实施例的装置主要包括:获取模块600、匹配模块610以及第一识别模块620,且该装置还可以包括:关键字模块630以及第二识别模块640。本实施例的装置通常设置于终端侧(如智能移动电话等终端设备)中,如可以设置于终端设备中的流量监控程序(如安全中心)中,也可以设置于终端设备中的短信应用中,且短信应用中的流量信息识别装置所识别出的流量信息可以传输给流量监控程序(如安全中心),以提醒用户。另外,流量信息识别装置所使用的流量模板集合可以从服务器(如流量监控程序所对应的服务器等)处获取,并由服务器维护更新(如在服务器中的流量模板集合更新时,服务器会更新终端设备中的流量模板集合)。
获取模块600主要用于获取信息(如待识别信息)。
匹配模块610主要用于将上述获取的信息与流量模板集合中的流量模板进行匹配。
本实施例中的流量模板集合中的流量模板可以是利用上述实施例四记载的装置而设置的流量模板,且流量模板集合中的流量模板可以为正则表达式。
第一识别模块620主要用于根据匹配的流量模板,识别流量信息。
在匹配模块610确定出流量模板集合中存在与上述获取的信息相匹配的流量模板的情况下,第一识别模块620可以根据相匹配的流量模板准确的获取到流量信息,如第一识别模块620从上述获取的信息中获取到流量信息;再如第一识别模块620利用该匹配的流量模板从其他信息中获取到流量信息,进一步而言,对于一个用户而言,其所选择的运营商以及所使用的流量套餐在一段时间内通常不会发生变化,在本实施例的装置针对用户设备接收到的运营商发送来的短信等信息进行流量信息识别时,第一识别模块620可以确定出与该信息匹配的流量模板,并利用该匹配的流量模板从该信息中获取流量信息,后续,本实施例的装置针对用户设备接收到的运营商发送来的其他信息,第一识别模块620同样可以使用之前匹配的流量模板来获取流量信息。
而在匹配模块610确定出流量模板集合中不存在与上述获得的信息(如待识别信息)相匹配的流量模板的情况下,关键字模块630可以根据预先设置的关键字集合中的各流量关键字来判断信息所包含的流量关键字,从而第二识别模块640可以根据信息所包含的流量关键字从信息中获取到相应的流量信息。
由于第一识别模块620和第二识别模块630从信息中获取到的所有流量信息通常可以划分为多组(也可以称为多个子套餐),如上述短信A中的国内通用流量共有1324MB和剩余流量不足132.40MB可以算做一组,而套餐内本地流量共有100MB和剩余0MB可以算作一组,因此,第一识别模块620和第二识别模块630应识别出获取到的流量信息所包含的各子套餐。
在第一识别模块620根据相匹配的流量模板获取流量信息时,第一识别模块620可以根据流量模板的设置识别出获取到的流量信息所包含的各子套餐;而在第二识别模块630根据关键字集合来从信息中获取流量信息时,第二识别模块630可以根据信息中的标点符号识别出获取到的流量信息所包含的各子套餐,如以分号为间隔,将所有的流量信息划分为多组。
本实施例的装置可以针对识别出的各子套餐进行相应的处理,如设定一个完整的子套餐应包括:总流量、已用流量和剩余流量这三部分内容,如果检测到一个子套餐包括了这三部分,则可以验证该子套餐中的已用流量和剩余流量之和是否为总流量,如果不为总流量,则第一识别模块620或者第二识别模块630可以将总流量修改为已用流量和剩余流量之和;如果检测到子套餐只包括三部分内容中的两部分,则第一识别模块620或者第二识别模块630可以通过计算确定出缺少的一部分的具体取值;如果检测到子套餐只包括三部分内容中的一部分,则第一识别模块620或者第二识别模块630可以将另外两部分设置为缺省值,如一个子套餐只包括已用流量,则第一识别模块620或者第二识别模块630可以将总流量设置为已用流量,而将剩余流量设置为零。本实施例识别出的流量信息可以用于流量校准等应用场景。
需要注意的是,本申请的一部分可以被应用为计算机程序产品,例如计算机程序指令,当其被智能电子设备(如计算机或者服务器等)执行时,通过该智能电子设备的操作可以调用或者提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或者其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的智能电子设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请并不局限于上述示范性实施例的细节,而且在不背离本申请的精神或者基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将本申请的实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或者装置或者模块也可以由一个单元或者装置或者模块通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (22)

1.一种流量模板确定方法,包括:
确定多条流量语料样本之间的相同内容以及差别内容;
根据所述相同内容以及所述差别内容形成多个流量模板;
其中,所述确定多条流量语料样本之间包含的相同内容以及差别内容包括:
根据流量语料样本集合中流量语料样本间的相似度,从流量信息样本集合中选取相似度满足第一预定相似度要求的多条流量语料样本;
获取所述多条流量语料样本之间的相同内容;
从所述多个流量语料样本中的每个流量语料样本中分别去掉所述相同内容,得到所述差别内容;
将所述相同内容设置在流量模板中,将所述多条流量语料样本各自不同的差别内容以并列择一的方式设置在流量模板中;
将所述形成的流量模板加入流量模板集合中。
2.根据权利要求1所述的方法,其中,在确定多条流量信息样本之间的相同内容以及差别内容的步骤之前,所述方法还包括:
对流量语料进行以下至少之一的预处理,以形成流量语料样本:
将流量语料中的中文标点符号转换为英文标点符号;
根据预设的非法字符集去除流量语料中的非法字符;
将流量语料中的数字以及该数字的流量单位替换为特定字符。
3.根据权利要求2所述的方法,其中,所述相似度包括编辑距离,第一预定相似度要求包括:针对流量信息样本集合中的一个流量信息样本,与该流量信息样本的编辑距离小于第一编辑距离阈值、不为零、且是各编辑距离中的最小编辑距离。
4.根据权利要求1所述的方法,其中,所述根据所述相同内容以及所述差别内容形成多个流量模板的步骤包括:
根据所述相同内容以及所述差别内容形成正则表达式,其中所述相同内容包括至少一个公共字符串,所述差别内容包括至少一个差别字符串,所述正则表达式中的公共字符串和差别字符串交叉排列,且不同流量信息样本中的差别字符串以并列择一的方式设置。
5.根据权利要求4所述的方法,其特征在于,所述根据所述相同内容以及所述差别内容形成多个流量模板的步骤还包括:
将所述正则表达式中的表征数字以及数字的流量单位的信息替换为表示流量取值范围的信息。
6.根据权利要求4所述的方法,其特征在于,所述根据所述相同内容以及所述差别内容形成多个流量模板的步骤还包括:
删除所述正则表达式中的未包含有数字和流量单位的语句。
7.根据权利要求1至6中任一权利要求所述的方法,其中,所述将所述形成的流量模板加入流量模板集合中的步骤包括:
从流量模板集合中选取与所述形成的流量模板的相似度满足第二预定相似度要求的流量模板;
将所述形成的流量模板与所述选取的流量模板融合为一个流量模板加入流量模板集合中。
8.根据权利要求7所述的方法,其中,所述相似度包括:编辑距离,第二预定相似度要求包括:与所述形成的流量模板的编辑距离小于第二编辑距离阈值、不为零、且是各编辑距离中的最小编辑距离。
9.根据权利要求7所述的方法,其中,所述流量模板为正则表达式,且所述将所述形成的流量模板与所述选取的流量模板融合为一个流量模板加入流量模板集合中的步骤包括:
确定所述形成的流量模板的正则表达式和所述选取的流量模板的正则表达式之间的相同内容以及对于所述形成的流量模板的正则表达式和所述选取的流量模板的正则表达式之间的差别内容;
将所述相同内容设置在融合后的流量模板中,将所述对于所述形成的流量模板的正则表达式和所述选取的流量模板的正则表达式各自不同的差别内容以并列择一的方式设置在融合后的流量模板中。
10.一种流量信息识别方法,包括:
获取信息;
将所述信息与流量模板集合中的流量模板进行匹配;
根据匹配的流量模板,识别流量信息,
其中,所述流量模板集合中包括的流量模板是根据多条流量语料样本之间的相同内容以及差别内容的一部分生成的;
其中,所述流量模板的生成包括:
根据流量语料样本集合中流量语料样本间的相似度,从流量信息样本集合中选取相似度满足第一预定相似度要求的多条流量语料样本;
获取所述多条流量语料样本之间的相同内容;
从所述多个流量语料样本中的每个流量语料样本中分别去掉所述相同内容,得到所述差别内容;
将所述相同内容设置在流量模板中,将所述多条流量语料样本各自不同的差别内容以并列择一的方式设置在流量模板中。
11.根据权利要求10所述的方法,其中,所述方法还包括:
在确定出不存在匹配的流量模板的情况下,根据关键字集合中的各流量关键字确定所述信息包含的流量关键字;
根据所述信息包含的流量关键字,从所述信息中获取流量信息。
12.一种流量模板确定装置,其中,所述装置包括:
确定模块,用于确定多条流量语料样本之间的相同内容以及差别内容;
形成模板模块,用于根据所述相同内容以及所述差别内容形成多个流量模板;
设置模块,用于将所述形成的流量模板加入流量模板集合中;
其中,所述确定模块还包括:
选取子模块,用于根据流量语料样本集合中流量语料样本间的相似度,从流量信息样本集合中选取相似度满足第一预定相似度要求的多条流量语料样本;
相同内容子模块,用于获取所述多条流量语料样本之间的相同内容;
差别内容子模块,用于选取从所述多个流量语料样本中的每个流量语料样本中分别去掉所述相同内容,得到所述差别内容;
其中,所述形成模板模块具体用于:
将所述相同内容设置在流量模板中,将所述多条流量语料样本各自不同的差别内容以并列择一的方式设置在流量模板中。
13.根据权利要求12所述的装置,其中,所述装置还包括:
预处理模块,用于对流量语料进行以下至少之一的预处理,以形成流量语料样本:
将流量语料中的中文标点符号转换为英文标点符号;
根据预设的非法字符集去除流量语料中的非法字符;
将流量语料中的数字以及该数字的流量单位替换为特定字符。
14.根据权利要求12所述的装置,其中,所述相似度包括:编辑距离,第一预定相似度要求包括:针对流量信息样本集合中的一个流量信息样本,与该流量信息样本的编辑距离小于第一编辑距离阈值、不为零、且是各编辑距离中的最小编辑距离。
15.根据权利要求12所述的装置,其中,所述形成模板模块具体包括:
正则子模块,用于根据所述相同内容以及所述差别内容形成正则表达式,其中所述相同内容包括至少一个公共字符串,所述差别内容包括至少一个差别字符串,所述正则表达式中的公共字符串和差别字符串交叉排列,且不同流量信息样本中的差别字符串以并列择一的方式设置。
16.根据权利要求15所述的装置,其特征在于,所述形成模板模块还包括:
替换子模块,用于将所述正则表达式中的表征数字以及数字的流量单位的信息替换为表示流量取值范围的信息。
17.根据权利要求15所述的装置,其特征在于,所述形成模板模块还包括:
删除子模块,用于删除所述正则表达式中的未包含有数字和流量单位的语句。
18.根据权利要求12至17中任一权利要求所述的装置,其中,所述设置模块包括:
选取模板子模块,用于从流量模板集合中选取与所述形成的流量模板的相似度满足第二预定相似度要求的流量模板;
模板融合子模块,用于将所述形成的流量模板与所述选取的流量模板融合为一个流量模板加入流量模板集合中。
19.根据权利要求18所述的装置,其中,所述相似度包括:编辑距离,第二预定相似度要求包括:与所述形成的流量模板的编辑距离小于第二编辑距离阈值、不为零、且是各编辑距离中的最小编辑距离。
20.根据权利要求18所述的装置,其中,所述流量模板为正则表达式,且所述模板融合子模块具体用于:
确定所述形成的流量模板的正则表达式和所述选取的流量模板的正则表达式之间的相同内容以及对于所述形成的流量模板的正则表达式和所述选取的流量模板的正则表达式各自不同的差别内容;
将所述相同内容设置在融合后的流量模板中,将所述对于所述形成的流量模板的正则表达式和所述选取的流量模板的正则表达式各自不同的差别内容以并列择一的方式设置在融合后的流量模板中。
21.一种流量信息识别装置,包括:
获取模块,用于获取信息;
匹配模块,用于将所述信息与流量模板集合中的流量模板进行匹配;
第一识别模块,用于根据匹配的流量模板,识别流量信息,
其中,所述流量模板集合中包括的流量模板是根据多条流量语料样本之间的相同内容以及差别内容的一部分生成的;
其中,所述流量模板的生成包括:
根据流量语料样本集合中流量语料样本间的相似度,从流量信息样本集合中选取相似度满足第一预定相似度要求的多条流量语料样本;
获取所述多条流量语料样本之间的相同内容;
从所述多个流量语料样本中的每个流量语料样本中分别去掉所述相同内容,得到所述差别内容;
将所述相同内容设置在流量模板中,将所述多条流量语料样本各自不同的差别内容以并列择一的方式设置在流量模板中。
22.根据权利要求21所述的装置,其中,所述装置还包括:
关键字模块,用于在确定出不存在匹配的流量模板的情况下,根据关键字集合中的各流量关键字确定所述信息包含的流量关键字;
第二识别模块,用于根据所述信息包含的流量关键字,从所述信息中获取流量信息。
CN201610410508.8A 2016-06-12 2016-06-12 流量模板确定方法、流量信息识别方法及装置 Active CN107493370B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610410508.8A CN107493370B (zh) 2016-06-12 2016-06-12 流量模板确定方法、流量信息识别方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610410508.8A CN107493370B (zh) 2016-06-12 2016-06-12 流量模板确定方法、流量信息识别方法及装置

Publications (2)

Publication Number Publication Date
CN107493370A CN107493370A (zh) 2017-12-19
CN107493370B true CN107493370B (zh) 2020-08-04

Family

ID=60642210

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610410508.8A Active CN107493370B (zh) 2016-06-12 2016-06-12 流量模板确定方法、流量信息识别方法及装置

Country Status (1)

Country Link
CN (1) CN107493370B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109068286B (zh) * 2018-05-31 2021-08-13 上海尚往网络科技有限公司 一种信息解析的方法、介质及设备
CN109597873B (zh) * 2018-11-21 2022-02-08 腾讯科技(深圳)有限公司 语料数据的处理方法、装置、计算机可读介质及电子设备
CN110852083A (zh) * 2019-10-28 2020-02-28 深圳市梦网科技发展有限公司 一种短信模板的生成方法及装置
CN113487865B (zh) * 2021-07-02 2022-07-22 江西锦路科技开发有限公司 一种高速公路行驶车辆信息采集系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102752398A (zh) * 2012-07-18 2012-10-24 腾讯科技(深圳)有限公司 解析流量值的方法、终端、服务器及系统
CN105208571A (zh) * 2015-08-11 2015-12-30 北京奇虎科技有限公司 通信业务使用量的校准方法和装置
CN105488025A (zh) * 2015-11-24 2016-04-13 小米科技有限责任公司 模板构建方法和装置、信息识别方法和装置
CN105554713A (zh) * 2015-12-11 2016-05-04 小米科技有限责任公司 流量提醒方法及装置
CN105630976A (zh) * 2015-12-24 2016-06-01 北京奇虎科技有限公司 训练语料的获取方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013155619A1 (en) * 2012-04-20 2013-10-24 Sam Pasupalak Conversational agent

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102752398A (zh) * 2012-07-18 2012-10-24 腾讯科技(深圳)有限公司 解析流量值的方法、终端、服务器及系统
CN105208571A (zh) * 2015-08-11 2015-12-30 北京奇虎科技有限公司 通信业务使用量的校准方法和装置
CN105488025A (zh) * 2015-11-24 2016-04-13 小米科技有限责任公司 模板构建方法和装置、信息识别方法和装置
CN105554713A (zh) * 2015-12-11 2016-05-04 小米科技有限责任公司 流量提醒方法及装置
CN105630976A (zh) * 2015-12-24 2016-06-01 北京奇虎科技有限公司 训练语料的获取方法和装置

Also Published As

Publication number Publication date
CN107493370A (zh) 2017-12-19

Similar Documents

Publication Publication Date Title
CN107729526B (zh) 一种文本结构化的方法
CN107493370B (zh) 流量模板确定方法、流量信息识别方法及装置
CN109992766B (zh) 提取目标词的方法和装置
CN108305180B (zh) 一种好友推荐方法及装置
KR20210038467A (ko) 이벤트 테마 생성 방법, 장치, 기기 및 저장 매체
CN112396049A (zh) 文本纠错方法、装置、计算机设备及存储介质
CN106959976B (zh) 一种搜索处理方法以及装置
CN111079408A (zh) 一种语种识别方法、装置、设备及存储介质
CN107515866B (zh) 一种数据操作方法、装置和系统
US20140225899A1 (en) Method of animating sms-messages
CN110413307B (zh) 代码功能的关联方法、装置及电子设备
CN113867694B (zh) 一种智能生成前端代码的方法和系统
CN111652658A (zh) 画像融合方法、装置、电子设备及计算机可读存储介质
CN110765276A (zh) 知识图谱中的实体对齐方法及装置
CN110928995B (zh) 一种交互信息处理方法、装置、设备及存储介质
CN102662953B (zh) 与输入法集成的语义标注系统和方法
CN112148958A (zh) 用于信息推荐的方法、设备和计算机存储介质
CN108616413B (zh) 信息校准方法和装置
CN113434631A (zh) 基于事件的情感分析方法、装置、计算机设备及存储介质
CN111949838A (zh) 一种数据的传播路径生成方法、装置、设备及存储介质
CN110851597A (zh) 一种基于同类实体替换的语句标注的方法及装置
JP2013015907A (ja) 画像分類装置、画像分類装置の制御方法及びプログラム
CN106407271B (zh) 一种智能客服系统及其智能客服知识库的更新方法
CN113326407A (zh) 一种数据处理方法及装置
JP6282174B2 (ja) テキストを用いたルート案内方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201112

Address after: Room 603, 6 / F, Roche Plaza, 788 Cheung Sha Wan Road, Kowloon, China

Patentee after: Zebra smart travel network (Hong Kong) Limited

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right