[发明专利]用于文本或网络内容分析的大规模特征匹配的方法有效
申请号: | 201210228593.8 | 申请日: | 2012-07-02 |
公开(公告)号: | CN103412858A | 公开(公告)日: | 2013-11-27 |
发明(设计)人: | 薛一波;袁振龙 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 100084 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 文本 网络 内容 分析 大规模 特征 匹配 方法 | ||
1.一种用于文本或网络内容分析的大规模特征匹配的方法,其特征在于,包括步骤:
S1.读入所有特征串,建立双哈希表;
S2.在哈希表内建立有限状态机;
S3.将哈希表内的有限状态机转化为双数组结构存储;
S4.文本或网络内容匹配搜索。
2.如权利要求1所述的方法,其特征在于,步骤S1包括:
S1.1依次读取所有特征串,将特征串信息存入PAT结构体;
S1.2根据特征串规模、运行平台、缓存大小确定两级哈希表,即SHIFT表和MAP表的长度N1、N2,以及哈希字符块的长度B;
S1.3初始化SHIFT表和MAP表,统计特征串集合中的最短特征串长度m,并将SHIFT表及MAP表中所有表项的跳跃值初始化为m-B+1;
S1.4对PAT结构体链表中特征串的所有字符块进行两级哈希运算,保存跳跃值到SHIFT表并链接相应的特征串到不同MAP表表项的入口;
S1.5计算并保存MAP表的匹配跳跃属性值,即skip值。
3.如权利要求2所述的方法,其特征在于,步骤S1.2包括:
S1.2.1确定SHIFT表大小和MAP表大小,即SHIFT表和MAP表表项数目;
S1.2.2确定两级哈希表分别相对应的HASH函数hash_1、hash_2。
4.如权利要求2所述的方法,其特征在于,步骤S1.4包括:
S1.4.1对所有特征串中的字符块从后至前依次通过hash_1函数运算,并根据字符块距离特征串最末端的距离确定对应的SHIFT表跳跃值;
S1.4.2对所有特征串中的后缀字符块通过hash_2函数运算,并将相应的指向特征串的内存指针保存至对应的MAP表结构体链表中。
5.如权利要求2所述的方法,其特征在于,步骤S1.5包括:
S1.5.1对所有特征串中的非后缀字符块通过hash_1函数运算,并判断运算结果是否为0;
S1.5.2对所有通过hash_1函数运算结果为0的字符块通过hash_2函数运算,并保存当前字符块距离特征串最末端的距离值至MAP表结构体中,如果有多个距离值,则保存最小的。
6.如权利要求1所述的方法,其特征在于,步骤S2包括:
S2.1统计MAP表中每个表项链接特征串的数目;
S2.2对于MAP表表项中链接特征串数目大于1的表项根据其特征串建立有限状态机。
7.如权利要求1所述的方法,其特征在于,步骤S3包括:
S3.1预编码阶段,对有限状态机中出现的所有字符进行编码;
S3.2遍历阶段,利用递归算法一次性完成Base和Check双数组的构建;
S3.3释放MAP表表项中建立的有限状态机所占内存。
8.如权利要求7所述的方法,其特征在于,步骤S3.2中:
Base和Check数组需要满足的条件是:check[base[s]+c]=s,并且base[s]+c=t,其中s代表当前状态,t代表下一状态,c代表当前输入字符编码值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210228593.8/1.html,转载请声明来源钻瓜专利网。
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法