CN101739431A - 一种可自调参数的串匹配方法和系统 - Google Patents

一种可自调参数的串匹配方法和系统 Download PDF

Info

Publication number
CN101739431A
CN101739431A CN200810227158A CN200810227158A CN101739431A CN 101739431 A CN101739431 A CN 101739431A CN 200810227158 A CN200810227158 A CN 200810227158A CN 200810227158 A CN200810227158 A CN 200810227158A CN 101739431 A CN101739431 A CN 101739431A
Authority
CN
China
Prior art keywords
algorithm
string matching
parameter
pattern string
characteristic index
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.)
Pending
Application number
CN200810227158A
Other languages
English (en)
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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN200810227158A priority Critical patent/CN101739431A/zh
Publication of CN101739431A publication Critical patent/CN101739431A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明涉及一种可自调参数的串匹配方法和系统。该方法包括:步骤1,实时监测模式串匹配算法应用环境的特征指标,获取该特征指标的变化状况;步骤2,依据模式串匹配算法应用环境的特征指标的变化状况和调整策略决定是否调整算法参数,如果是,执行步骤3,否则继续执行步骤1;步骤3,重新计算算法参数,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行更新。本发明能够解决在线系统中算法的自动更新问题,在不需要人工干预的情况下,可以自动根据环境的变化而调整自身的参数,并在系统可支持的情况下自动更新。

Description

一种可自调参数的串匹配方法和系统
技术领域
本发明涉及模式串匹配领域,尤其涉及一种可自调参数的串匹配方法和系统。
背景技术
模式串匹配是一个经典问题,数十年来已经有上百个算法被陆续提出。研究者已经清楚的认识到:影响串匹配算法的因素有很多,不同的算法在不同的条件下性能表现也有很大的差异。
典型的模式串匹配的应用是将文本T输入匹配自动机,匹配自动机输出结果R。
其中,常用的符号定义如下:文本T,长度为n;模式串集合P,个数为r,最小长度为m,字符集为∑;结果集合R,个数为K,每个结果为(id,pos)形式,其中,id为模式串的唯一标识,pos为匹配成功的模式串位置。
可以看出,串匹配算法的应用环境有模式串集合本身、运行机器、输入文本等几个方面,它们都对算法的性能有影响,下面分别加以介绍。
(1)模式串本身
已有的研究都表明,对串匹配算法性能影响最主要的是:模式串的个数r、模式串的最小长度m、字符集大小|∑|等。除此之外,字符的分布、模式串的长度分布等也对算法性能有影响。三个主要的影响因素与性能的关系为:
A、匹配时间与|∑|反相关,匹配时间随着|∑|的增大而增大;
B、匹配时间与r正相关,匹配时间随着r的增大而增大;
C、匹配时间与m反相关,匹配时间随着m的增大而减小。
很自然的,研究人员对不同的算法在上述几个影响因素不同变化情况下的性能表现进行了细致的研究,并给出了一些性能图。
(2)运行机器环境
在运行机器的环境中,影响串匹配算法性能的因素主要有CPU主频、Cache缓存(包括一级缓存L1 Cache和二级缓存L2 Cache)大小、TLB表大小、总线速度等。其中,Cache缓存大小是一个非常关键的因素。
在影响算法性能的诸多因素中,除了算法本身的时间复杂度,存储空间和算法的Cache性能也是一个非常重要的影响因素,这一点在串匹配算法中尤为明显。这是因为:自动机是串匹配算法(例如:AC(Aho-Corasick)算法、SBOM(Set Backword Oracle Matching)算法)主要的数据结构,当模式串规模较小的时候,算法的存储空间和Cache缓存的大小相当,因而能够保证自动机的大部分数据结构常驻于Cache之中,从而保持了较高的Cache命中率;随着模式串规模的增大,自动机的存储空间也越来越大,常常是Cache大小的几十倍乃至上百倍,Cache中能够缓冲的数据结构只占自动机的很小一部分,大部分的数据访问都需要从内存中加载,由于CPU对内存和Cache的访问速度相差一个数量级,这就极大延迟了指令对数据的访问时间,降低了算法的匹配速度。此外,随着微电子工艺的发展,CPU和内存之间的性能差异越来越大,Cache命中率的小幅度降低都可能导致算法速度的大幅度下降。
在对三种经典串匹配算法(AC、WM、SBOM)的Cache命中缺失率(CacheMiss Rate)与模式串个数的研究中可以看出:随着模式串规模的增加,串匹配算法的Cache Miss Rate也急剧增加。更进一步,对于基于自动机的算法(AC、SBOM)来说,二级Cache是影响算法性能的关键;而对于基于查表的算法(WM,Wu-Manber)来说,一级Cache则占据主导因素。这是因为:基于自动机的算法耗用的存储空间很大,往往超出二级Cache的大小,因而二级Cache对算法的影响比一级Cache更为明显;基于查表的算法则不然,其散列表通常可以完全载入二级Cache,但仍然大于一级Cache的大小,由于对散列表访问的随机性,这类算法对一级Cache的大小非常敏感。
综上所述可以得出:串匹配算法的存储空间和Cache局部性是影响串匹配算法性能的主导因素。这一点对于大规模模式串集合尤其明显。
(3)输入文本
如果从匹配算法的原理角度理解,输入文本对串匹配算法性能的影响主要来源于算法的跳跃次数、匹配过程中可能命中的次数、访存的次数等,但这些因素是一些隐形的,它们本质上应该与输入文本上的特征相关,这些特征主要包含文本中字符的分布情况、模式串命中个数等。
在使用多组真实模式串集合和真实网络数据进行的测试中可以看出:串匹配算法在输入文本数据上的匹配速度是有波动的。进一步分析可以看出:这种速度的波动很大程度上与模式串在文本中的命中个数是相关的,命中个数少,其速度就快;命中个数多,其速度就慢。因此,可以使用“命中密度”的概念来定义给定的模式串集合在一个输入文本数据上的命中情况。定义如下:给定模式串集合P和文本T,命中密度ρ是指单位文本长度内命中的模式串次数。ρ=F(P,T)。具体来说,因为这种波动是由模式串集合和文本共同作用的现象,因此,“命中密度”的概念还可以在模式串和文本两个维度上分别定义为“文本上的命中密度”和“模式串上的命中密度”。
一些已有的研究结果表明:串匹配算法的时间与文本命中密度成反关系,随着命中密度的增大而增大;同时,不同的串匹配算法对文本命中密度的敏感程度不同。
在串匹配算法应用的系统中,例如:网络异常事件检测系统,网络病毒检测系统等,算法的选择是在系统设计之初确定的,然后就固化在系统中不再更改。即使更改,通常是需要系统停止运行,然后进行算法更新(代码的更新),然后再重新启动系统。这对于在线运行的系统是不可接受的。例如一个千兆流量下的在线内容检测系统,系统需要检测的数据每秒至少800Mbps,如果系统停止运行,即使是几秒的时间,也将会有几个G的流量没有检测,造成的损失和可能造成的危害是不可估计的。
发明内容
为了解决上述的技术问题,提供了一种可自调参数的串匹配方法和系统,其目的在于,提供自动感知环境变化而自动调节算法参数的串匹配方法,它可以在应用系统运行过程中实时的监测应用环境的变化,实时的自动调整算法的参数,使得应用系统的整体性能达到最优。
本发明提供了一种可自调参数的串匹配方法,包括:
步骤1,实时监测模式串匹配算法应用环境的特征指标,获取该特征指标的变化状况;
步骤2,依据模式串匹配算法应用环境的特征指标的变化状况和调整策略决定是否调整算法参数,如果是,执行步骤3,否则继续执行步骤1;
步骤3,重新计算算法参数,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行更新。
模式串匹配算法应用环境的特征指标包括:模式串集合、文本数据、模式串匹配结果的统计信息、和/或机器环境。
步骤1包括:
步骤11,实时监测模式串集合,获取模式串集合的变化状况;和/或
步骤12,实时监测机器环境,获取机器环境的变化状况;和/或
步骤13,实时监测文本数据和模式串集合经模式串匹配后的模式串匹配结果的统计信息。
步骤3包括:
步骤31,重新计算算法参数;
步骤32,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行预处理;
步骤33,对算法进行在线更新。
步骤1中,采用主动方式或者被动方式实时监测模式串匹配算法应用环境的特征指标。
调整策略通过机器学习自动生成或者人工设置。
本发明提供了一种可自调参数的串匹配系统,包括:
特征指标监测模块,用于实时监测模式串匹配算法应用环境的特征指标,获取该特征指标的变化状况;
算法参数调整判决模块,用于依据模式串匹配算法应用环境的特征指标的变化状况和调整策略决定是否调整算法参数;
算法更新模块,用于重新计算算法参数,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行更新。
模式串匹配算法应用环境的特征指标包括:模式串集合、文本数据、模式串匹配结果的统计信息、和/或机器环境。
特征指标监测模块:用于实时监测模式串集合,获取模式串集合的变化状况;和/或实时监测机器环境,获取机器环境的变化状况;实时监测文本数据和模式串集合经模式串匹配后的模式串匹配结果的统计信息。
算法更新模块,还用于在进行算法更新之前,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行预处理。
特征指标监测模块,采用主动方式或者被动方式实时监测模式串匹配算法应用环境的特征指标。
调整策略通过机器学习自动生成或者人工设置。
本发明能够解决在线系统中算法的自动更新问题,在不需要人工干预的情况下,可以自动根据环境的变化而调整自身的参数,并在系统可支持的情况下自动更新,使在线系统一直保持高效的运行。
附图说明
图1是可自调节参数的串匹配方法的原理结构图;
图2a是WuManber算法的字符块转移表示意图,其中bomb和barbarian在Wu Manber算法中的不良块字符转移距离,b=2;
图2b是WuManber算法的字符块转移表示意图,其中bomb和barbarian在Wu Manber算法中的不良块字符转移距离,b=3;
图3是WuManber算法的使用散列表划分模式串集合示意图;
图4是应用可自调节参数串匹配方法的系统的结构示意图;
图5是应用可自调节参数串匹配方法的系统的流程图。
具体实施方式
本发明提供了一种可自动感知环境并具有自动调优参数功能的串匹配方法,见附图1,它包含如下步骤:
步骤1),实时监测模式串匹配算法应用环境的各项特征指标,具体包括:模式串集合的个数,模式串集合中模式串的最小长度,最大长度,长度分布频率,机器的可用内存大小,机器的可用Cache大小,文本数据输入的速度,单位时间内匹配结果的个数,匹配的模式串的分布等;
步骤2),根据当前指标值以及指标的变化值进行算法参数调整的决策,决定是否进行算法参数的调整;
步骤3),当需要调整算法时,重新计算算法的参数,然后转到步骤4);否则,不需要重新计算,转到步骤1);
步骤4),根据新的参数值和新的特征指标值对算法进行初始化,进行在线算法的更新,实现算法参数的自动调整。
上述本发明的步骤1)进一步包含如下的步骤:
实时监测模式串集合的变化,一旦有改变,则重新计算模式串集合的特征指标值;
实时监测运行机器的相应指标变化情况;
实时接收模式串匹配结果的统计信息(反馈信息);
本发明提供了一个使用上述可自调节参数的串匹配方法的系统,见附图4,它包含如下的部件:
1)自调节参数的决策部件:使用上述可自调节参数的方法,根据监测的外部环境指标的改变和预先设定的参数调整策略规则,进行参数调整的决策,当需要进行参数调整时,重新对参数的值进行计算;
2)串匹配算法的预处理部件:根据当前算法的参数,结合当前模式串的更改情况,对串匹配算法进行预处理;
3)串匹配算法的扫描匹配部件:读取外部输入的网络流数据,对数据进行扫描匹配,将匹配的结果存储到外部文件中;同时,输入的数据也将送入自调节参数的决策部件,作为一种被监测的环境指标,参与参数调节策略的计算和调整。
4)结果统计部件:对扫描匹配的结果按照需要进行统计,并将统计结果存储到外部文件中。结果统计的信息将被读取到自调节参数的决策部件,作为一种指标,参与参数调节策略的计算和调整。
本发明中,可自调节参数的串匹配方法的具体实施包括如下步骤:
1)在应用系统运行过程中,实时监测环境的各项特征指标;
为了保证实时性,监测行为可以使用主动和被动两种方式。主动方式是指:系统根据运行情况设置一个时间间隔,监测模块使用定时器在指定时间去读取相应的指标特征;被动方式是指各个被监测的主体在特征有变化时,主动通知监测模块。考虑到被监测主体和特征的多样性,建议使用主动方式。
监测的环境及其特征包括:
模式串集合:模式串的个数,模式串的长度分布及其最小长度等;
文本数据:文本到来的速度,单位长度内字符集中的字符出现的概率等;此外,在文本上匹配的特征是指给定的模式串集合在输入的文本数据上进行匹配后所表现出来的一些特点,它是通过匹配结果的统计信息来获得的,主要包括:单位文本数据中匹配的模式串个数,指定模式串匹配的个数等;
机器环境:CPU主频、CPU的利用率、L1 Cache大小、L2 Cache大小、内存大小、算法当前可用缓存大小等。
2)使用调整策略决定是否进行算法的更新;
调整策略是针对应用系统中使用的模式串匹配算法的性能特点而设计的一系列规则,规则具有优先级,依次使用这些规则可以根据监测到的环境指标值决定当前是否要调整算法的参数。不同算法的调整策略是不一样的。下面以例子说明调整策略的规则生成过程、书写方法及其具体实施过程。
调整策略的生成:调整策略可以有两种办法产生,一是有通过机器学习的方法自动生成,具体方法可以使用决策树、DT等;二是由领域专家给出。机器学习的方法通常用于对不明确的规则的自动发现,它具有一定的智能性,但是生成的规则粒度较粗,往往需要人工校验后才可应用到实际系统中。而领域专家是本领域中经验丰富的工作者,它们通过大量的实验和人工经验,可以给出非常精准的规则,满足实际系统的需求。例如,针对模式串本身的特征对串匹配算法性能的影响,可以总结如下:
模式串的个数在3个区域中时,串匹配算法的性能表现差异不明显,其参数也不需要调整,3个区域的界限是5000和50000;模式串的长度(最小长度)在2个区域时,串匹配算法的性能差异不明显,其参数也不需要调整,2个区域的界限是20个字符;当命中率不超过1%时,串匹配算法的性能差异不明显,算法参数不需要调整。
上述几个示例给出的是简单的规则,每条规则只针对一个影响因素。更复杂的调整规则是与多个因素相关的。例如:串匹配个数在5000以内并且命中率超多10%,需要调整参数;模式串长度大于20并且可用内存/2大于模式串长度与个数的乘积时,需要调整算法参数。
调整策略规则的书写:调整策略的规则一般以配置文件的方式存储,在系统开始运行时,读入系统内。规则文件每行一条规则,每条规则的格式为:
优先权号  条件  动作[ELSE动作]
格式分为两个部分,第一部分为优先权号,越小的优先权越高,相等情况下按照排列顺序进行判断;第二部分为规则本身,以条件和动作的形式给出。其中,条件是以逻辑表达式方式给出,取值为“真”或者“假”;动作有两种,“change”表示调整参数,“no-change”表示不调整。条件后面的动作表示条件取值为“真”时需要执行的。规则的动作部分最后有一个可选项,表示当条件部分取值为“假”时执行的动作,它一定和前面的动作不相同。如果规则的最后没有这个可选项,而前面的条件部分取值为“假”,则需要继续判断此优先级后面的规则和后续优先级的规则,直到全部规则判断结束。判断初始时,动作默认为“no-change”,当动作判断为“change”时,可以立刻跳出此步骤,进入到下一个步骤中。规则书写的一个示例如下:
规则1:1  |now-M-last-M|<50MB  no-change
规则2:2  0<=last-r<=5000&&1<=now-r<=5000||
5000<=last-r<=50000&&5000<=now-r<=50000||
last-r>50000&&now-r>50000  no-change  EL SE change
规则3:3  last-m>20&&now-m>20  &&  m*r<M/2  no-changeELSE change
规则4:3  last-m<=20&&now-m<=20  no-change
规则5:4  last-key-mit<1%&&now-key-mit<1%  no-change
......
上述示例中共有规则8条,分为4个优先级。
调整规则的实施过程:判断时,先从优先级为1的规则1开始,如果它的条件满足,则执行后面的动作;“no-change”需要后续判断,因此开始执行优先级为2的规则,如果它的条件不满足,则执行“ELSE”的动作为“change”,判断结束,执行调整的后续步骤;如果条件满足,则继续优先级3的规则的判断。规则3的条件判断如果为“真”,则继续规则4的条件判断,如果为“假”,因为没有“ELSE”选项,则继续后续判断,执行规则5的判断,以此类推,直到全部规则判断结束,得到最后的决策结果。
算法参数的重新计算;
对应用系统中使用的模式串匹配算法的参数,根据新的环境指标值进行重新计算。因为不同的算法,需要的参数是不同的,因此计算方法也不一样。模式串匹配算法按照匹配数据结构的不同大致可以分为基于自动机的和基于查表的两种类型。下面以基于查表的WuManber算法为例说明。
符号定义:字符集大小为∑,模式串的个数为r,模式串长度为m(对于不同长度的模式串,按照最小长度取齐即可),机器的Cache大小为C,可用内存大小为M,WuManber算法中字符块大小为b,散列表大小为h。
WuManber算法的基本思想是将字符集中的字符组合成一定长度的字符块(block),计算全部字符块的转移距离,同时使用散列表来筛选匹配阶段应进行匹配的模式串,以便减少匹配计算量。WuManber算法中,长度为b的字符块B的转移距离s[B]的计算公式为:
图2a、2b中给出的是模式串“bomb”和“barbarian”在WuManber算法中分别块大小为2和3时的块字符的转移距离示意图。
用字符块代替单个字符的方法,固然改善了跳跃距离,但它它需要维护一个∑b大小的表,带来了存储空间的暴涨。长度为2的块字符集含有216=65536字符,长度为3的块字符集含有224=16777216字符。Wu Manber算法中使用哈希函数对块字符作了一个映射,将块字符映射到一个较小的空间,减少存储转移距离表所需的空间。如果两个以上的块字符映射到了该空间中同一个位置,则该位置对应的转移距离为映射到它的块字符对应的转移距离的最小值。图3中给出的是模式串“barbarian”、“bomb”、“musician”和“constant”对应在散列表中位置的示意图,右侧的图为四个模式串右对齐,取其最后长度为2的4个字符块为示意;左侧图为4个字符块在散列表中的位置及其索引的模式串的示意。可以看出,因为“an”字符块在2个模式串中出现,因此散列表对应位置后面将链接2个模式串,同时此位置的转移距离随着模式串个数的增多(表示此位置的冲突越多)而下降。
WuManber算法在匹配过程中的移动距离的计算分为三种情况:
情形1:块B出现在模式串中,这时模式串向右滑动s[B]=m-j个字符,j为该块在模式中的最右出现位置。s[B]=0这种特殊情形见情形3。
情形2:块B没有出现在模式中,这时模式串向右滑动s[B]=m-b+1个字符,b为块的大小。
情形3:s[B]=0,即块出现在模式串中并且与模式串对齐,这时需要对文本和模式串进行验证,看是否出现一个匹配。然后模式串向右滑动1个字符。
通过WuManber算法的原理可以看出:一方面,随着模式串个数的不断增加,块字符的转移距离将变得很小,直至为0,此时将严重影响算法的速度;另一方面,随着块字符集合的增加,块字符的转移距离表所需的存储空间也不断增加。算法的性能是和算法运行时的环境指标和算法本身的参数决定的,其中环境指标中主要包括模式串的个数、长度、机器的缓存大小、机器的可用内存大小等,算法的参数主要指块字符大小和散列表的大小。下面给出根据环境指标计算算法参数的方法。
字符块长b的选择:
WM的平均跳跃距离为:
shift = ( m - b + 1 ) ( 1 - mr 2 | Σ | b )
为了保证平均跳跃距离shift不小于最大跳跃距离m-b+1的一半,即
shift = ( m - b + 1 ) ( 1 - mr 2 | Σ | b ) ≥ 1 2 ( m - b + 1 )
必须有:|∑|b≥mr,即d≥log|∑|mr。由于b越大,最大跳跃距离m-b+1就会越小。因此,b的最优值为:
Figure G2008102271587D0000103
([]为取整符号)
散列表大小h的选择:
为简单起见,设可用的存储空间大小为M字节。(这里的“存储空间”可以是内存,也可以是高速缓存,甚至是磁盘设备)
当散列表大小为h时,平均跳跃距离表SHIFT占用的存储为h字节(每个表项用1个字节表示)。待校验的关键词列表MatchList占用的存储为D×h+r×(m+D)字节(其中D是一个指针域的存储空间大小,在32位机器上是4字节,在64位机器上是8字节)。
因此,总的存储空间大小为:h+D×h+r×(m+D)≤M,于是散列表大小
Figure G2008102271587D0000104
同时h不能超过|∑|b,所以h的最优值为:
h opt = min ( M - r × ( m + D ) ( D + 1 ) , | Σ | b )
例如:在一个64位机器上(D=8),对于256字符集数据来说,
当m=8,r=10000,M=256MB时,b=2,h=28M;
当m=20,r=1,000,000,M=512MB时,b=3,h=53M。
算法的预处理;
当通过调整策略决定更新算法并且已经通过参数的重计算将新的参数值确定之后,算法使用新参数和相应的环境指标值进行预处理过程,构造出可以执行匹配功能的结构,通过系统指定的更新机制,在合适的时机将新算法更新到应用系统中,从而完成应用系统的算法自调节过程。
每个算法的预处理过程是不同的,取决于其算法原理的不同。这部分内容不属于本发明的内容,因此省略不做具体阐述。
本发明中,应用可自调节参数的串匹配方法的系统的具体实施过程(系统流程图)见图5:
系统初始启动后,定时检查是否进行在线算法的更新,如果不需要更新,则继续运行系统,并实时执行运行环境的检测;
如果需要在线算法的更新,则根据当前最新的模式串和最新计算出来的算法参数值,对算法进行预处理;
预处理后,根据系统的情况,在合适的时候进行算法的在线更新。在线系统正常运行,开始使用新参数的匹配算法。
匹配运行的结果一方面根据需要写入结果文件,另一方面根据设定的统计值进行统计计算,并将结果写入到匹配结果统计信息文件中。
运行环境的检测通过主动或者被动的方式,获取当前被监测的指标。被监测的信息来源于模式串文件中的模式串信息、文本上匹配结果的统计信息、机器环境信息等。
获取环境信息后,进行算法参数的调整策略判定,根据指定的策略和判定规则,进行决策,得出是否需要进行算法参数的调整。
如果需要调整,则对算法参数的值重新计算;否则,继续运行环境的监测过程。
重新计算后的算法参数值参加是否进行算法更新的判定中。
本领域的技术人员在不脱离权利要求书确定的本发明的精神和范围的条件下,还可以对以上内容进行各种各样的修改。因此本发明的范围并不仅限于以上的说明,而是由权利要求书的范围来确定的。

Claims (12)

1.一种可自调参数的串匹配方法,其特征在于,包括:
步骤1,实时监测模式串匹配算法应用环境的特征指标,获取该特征指标的变化状况;
步骤2,依据模式串匹配算法应用环境的特征指标的变化状况和调整策略决定是否调整算法参数,如果是,执行步骤3,否则继续执行步骤1;
步骤3,重新计算算法参数,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行更新。
2.如权利要求1所述的可自调参数的串匹配方法,其特征在于,模式串匹配算法应用环境的特征指标包括:模式串集合、文本数据、模式串匹配结果的统计信息、和/或机器环境。
3.如权利要求2所述的可自调参数的串匹配方法,其特征在于,步骤1包括:
步骤11,实时监测模式串集合,获取模式串集合的变化状况;和/或
步骤12,实时监测机器环境,获取机器环境的变化状况;和/或
步骤13,实时监测文本数据和模式串集合经模式串匹配后的模式串匹配结果的统计信息。
4.如权利要求1所述的可自调参数的串匹配方法,其特征在于,步骤3包括:
步骤31,重新计算算法参数;
步骤32,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行预处理;
步骤33,对算法进行在线更新。
5.如权利要求1所述的可自调参数的串匹配方法,其特征在于,步骤1中,采用主动方式或者被动方式实时监测模式串匹配算法应用环境的特征指标。
6.如权利要求1所述的可自调参数的串匹配方法,其特征在于,调整策略通过机器学习自动生成或者人工设置。
7.一种可自调参数的串匹配系统,其特征在于,包括:
特征指标监测模块,用于实时监测模式串匹配算法应用环境的特征指标,获取该特征指标的变化状况;
算法参数调整判决模块,用于依据模式串匹配算法应用环境的特征指标的变化状况和调整策略决定是否调整算法参数;
算法更新模块,用于重新计算算法参数,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行更新。
8.如权利要求7所述的可自调参数的串匹配系统,其特征在于,模式串匹配算法应用环境的特征指标包括:模式串集合、文本数据、模式串匹配结果的统计信息、和/或机器环境。
9.如权利要求8所述的可自调参数的串匹配系统,其特征在于,特征指标监测模块:用于实时监测模式串集合,获取模式串集合的变化状况;和/或实时监测机器环境,获取机器环境的变化状况;实时监测文本数据和模式串集合经模式串匹配后的模式串匹配结果的统计信息。
10.如权利要求7所述的可自调参数的串匹配系统,其特征在于,算法更新模块,还用于在进行算法更新之前,依据该算法参数和模式串匹配算法应用环境的特征指标的值对算法进行预处理。
11.如权利要求7所述的可自调参数的串匹配系统,其特征在于,特征指标监测模块,采用主动方式或者被动方式实时监测模式串匹配算法应用环境的特征指标。
12.如权利要求7所述的可自调参数的串匹配系统,其特征在于,调整策略通过机器学习自动生成或者人工设置。
CN200810227158A 2008-11-24 2008-11-24 一种可自调参数的串匹配方法和系统 Pending CN101739431A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810227158A CN101739431A (zh) 2008-11-24 2008-11-24 一种可自调参数的串匹配方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810227158A CN101739431A (zh) 2008-11-24 2008-11-24 一种可自调参数的串匹配方法和系统

Publications (1)

Publication Number Publication Date
CN101739431A true CN101739431A (zh) 2010-06-16

Family

ID=42462922

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810227158A Pending CN101739431A (zh) 2008-11-24 2008-11-24 一种可自调参数的串匹配方法和系统

Country Status (1)

Country Link
CN (1) CN101739431A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106663038A (zh) * 2014-06-30 2017-05-10 亚马逊科技公司 用于机器学习的特征处理配方
CN106775962A (zh) * 2015-11-25 2017-05-31 阿里巴巴集团控股有限公司 一种规则执行方法及装置
CN113241121A (zh) * 2021-04-26 2021-08-10 哈尔滨理工大学 一种基于mpi的基因序列精确匹配的方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106663038A (zh) * 2014-06-30 2017-05-10 亚马逊科技公司 用于机器学习的特征处理配方
CN106775962A (zh) * 2015-11-25 2017-05-31 阿里巴巴集团控股有限公司 一种规则执行方法及装置
CN106775962B (zh) * 2015-11-25 2020-06-23 阿里巴巴集团控股有限公司 一种规则执行方法及装置
CN113241121A (zh) * 2021-04-26 2021-08-10 哈尔滨理工大学 一种基于mpi的基因序列精确匹配的方法

Similar Documents

Publication Publication Date Title
US10380498B1 (en) Platform services to enable one-click execution of the end-to-end sequence of modeling steps
Ren et al. Selection-based resampling ensemble algorithm for nonstationary imbalanced stream data learning
CN103593436B (zh) 文件合并方法和装置
CN102110013B (zh) 用于有效生成处理器体系结构模型的方法和设备
CN111177250A (zh) 一种异常交易监测方法、系统及存储介质
CN108509723B (zh) 基于人工神经网络的LRU Cache预取机制性能收益评估方法
CN104572501B (zh) 一种基于访存踪迹局部性分析的多核环境下共享缓存优化方法
Nin et al. Speed up gradual rule mining from stream data! A B-Tree and OWA-based approach
CN111949631A (zh) 一种确定数据库的配置参数的方法及装置
CN109934615A (zh) 基于深度稀疏网络的产品营销方法
CN106100922A (zh) 列车通信网络的网络流量的预测方法和装置
CN101739431A (zh) 一种可自调参数的串匹配方法和系统
CN110097119A (zh) 基于对偶变量扰动的差分隐私保护支持向量机分类器算法
Senge et al. Fast fuzzy pattern tree learning for classification
Chang et al. Dual coordinate descent algorithms for efficient large margin structured prediction
Ienco et al. Change detection in categorical evolving data streams
CN103885964A (zh) 一种内容审核方法和系统
CN114706894A (zh) 信息处理方法、装置、设备、存储介质及程序产品
CN113449753B (zh) 业务风险预测方法、装置和系统
Meyer Convergence control in ACO
Yu et al. Accelerating distributed training in heterogeneous clusters via a straggler-aware parameter server
CN106648891A (zh) 基于MapReduce模型的任务执行方法和装置
CN114629906A (zh) 一种可靠的基于深度强化学习的云容器集群资源调度方法及装置
CN110084376B (zh) 对数据自动分箱的方法及装置
Bangar et al. Investigation and performance improvement of web cache recommender system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20100616