主权项 |
一种分布式垃圾短信识别方法,其特征在于,将待识别短信数据集合拆分成各个待识别短信子任务,各个待识别短信子任务分别包括至少一条待识别短信,各个待识别短信子任务分别发送至分布式系统中的各个节点进行处理,各个节点分别按如下步骤,根据预设检测器库中各个检测器内的各个垃圾短信关键词,针对所接收到的待识别短信子任务进行垃圾短信识别;步骤000.根据预设垃圾关键词库,初始化检测器库中的各个检测器,然后进入步骤001;步骤001.由待识别短信子任务队列中提取一条未处理的待识别短信,作为当前识别短信,获取当前识别短信中的各个关键词Gene<sub>1</sub>,Gene<sub>2</sub>,Gene<sub>3</sub>…Gene<sub>i</sub>,进入步骤002;步骤002.将当前识别短信中的各个关键词Gene<sub>1</sub>,Gene<sub>2</sub>,Gene<sub>3</sub>…Gene<sub>i</sub>通过HashMap<key,value>,获得所有包含有这些关键词的检测器Index的索引值的集合,进入步骤003;步骤003.将得到的索引值集合通过m个HashSet,判断是否存在亲和力大于或等于预设匹配率阈值brake的检测器Index,是则判定当前识别短信为垃圾短信,将其加入垃圾短信库,并由AVL树中提取出利用该检测器Index,进入步骤004;否则说明检测器库中不存在能与当前识别短信匹配率达到预设匹配率阈值brake的检测器,则判定当前识别短信为正常短信,将其加入至正常短信库,进入步骤009;其中,m=Testlength*brake;步骤004.由被判断为垃圾短信的当前识别短信中的各个关键词,构建若干新检测器,接着判断正常短信库中正常短信的条数是否大于或等于预设正常短信库比对条数阈值,是则进入步骤005;否则将各个新检测器加入到检测器库中,并进入步骤009;步骤005.由正常短信库队列中提取一条未参与针对各个新检测器自检的正常短信,分别针对各个新检测器,将该正常短信中各个关键词与新检测器中各个垃圾短信关键词进行匹配,获得彼此匹配相同关键词的数量Count,并获得新检测器中垃圾短信关键词的数量N,再根据Count与N的比值,获得新检测器针对该正常短信的垃圾匹配率,进而分别获得各个新检测器针对该正常短信的垃圾匹配率,然后进入步骤006;步骤006.分别针对各个新检测器,判断新检测器针对该正常短信的垃圾匹配率是否大于或等于预设垃圾匹配率阈值,是则说明新检测器把正常短信判断为垃圾短信,即新检测器为不合格检测器,删除该不合格的新检测器,否则不做进一步操作,然后进入步骤007;步骤007.判断是否存在新检测器,是则进入步骤008;否则进入步骤009;步骤008.判断正常短信库中是否存在未参与针对该各个新检测器自检的正常短信,是则返回步骤005;否则判断新检测器为合格检测器,将合格检测器加入到检测器库中,并进入步骤009;步骤009.判断待识别短信子任务中是否存在未处理的待识别短信,是则返回步骤001;否则针对该待识别短信子任务垃圾短信识别方法结束。 |