CN110059725B - 一种基于搜索关键词的检测恶意搜索系统及方法 - Google Patents

一种基于搜索关键词的检测恶意搜索系统及方法 Download PDF

Info

Publication number
CN110059725B
CN110059725B CN201910216948.3A CN201910216948A CN110059725B CN 110059725 B CN110059725 B CN 110059725B CN 201910216948 A CN201910216948 A CN 201910216948A CN 110059725 B CN110059725 B CN 110059725B
Authority
CN
China
Prior art keywords
word
candidate word
search
seed
candidate
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
CN201910216948.3A
Other languages
English (en)
Other versions
CN110059725A (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.)
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 CN201910216948.3A priority Critical patent/CN110059725B/zh
Publication of CN110059725A publication Critical patent/CN110059725A/zh
Application granted granted Critical
Publication of CN110059725B publication Critical patent/CN110059725B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于搜索关键词的检测恶意搜索方法,包括:相关性初筛步骤,比较搜索关键词与种子词的相关性,选取多个搜索关键词为第一候选词;候选词聚类步骤,将该第一候选词转化为向量后进行聚类,从聚类后的该第一候选词中选取第二候选词;流行词去除步骤,以该第二候选词构建搜索词图,根据恶意搜索关键词的成簇特性,在该搜索词图中去除流行词以筛选出恶意搜索关键词。

Description

一种基于搜索关键词的检测恶意搜索系统及方法
技术领域
本发明涉及计算机网络搜索技术领域,特别涉及一种检测恶意搜索的方法及系统。
背景技术
搜索引擎为互联网用户搜索感兴趣的内容提供了方便快捷的入口,用户通过提交搜索关键词进行检索,搜索引擎接收到提交的搜索关键词后,基于一系列排名算法和规则,对许多相关的网页给出排名,将网页按排名显示在搜索结果页面上。
搜索引擎常常使用付费搜索的广告模式,企业可以参与竞价排名,当用户搜索相关的关键词时,将企业的广告显示在搜索结果页面的靠前位置,常见的收益模式是企业根据广告被点击的次数向搜索引擎付费。这种付费搜索的广告模式由于通过用户提交的搜索关键词捕捉到用户的需求,因而是很有效的,但是一些恶意用户瞄准其中蕴含的巨大经济利益,通过进行恶意搜索来损害竞争对手的利益或者谋求自身利益最大化。
例如,某搜索引擎运营商或者某广告客户,可以通过故意搜索广告关键词并点击广告来消耗竞争对手的经济,并且使广告不能到达潜在的客户;或者,只进行搜索而不点击任何搜索结果,以此降低搜索关键词的点击率,进而影响广告的质量得分,降低其在搜索结果页上的排名,自己之后还能以更低的价格来参与广告位的竞价。
进行恶意搜索的最常见方式是使用机器人(计算机程序模拟搜索引擎用户)提交设定好的搜索关键词,甚至执行后续的点击等操作。近年又出现了新的恶意搜索方式,使用众包平台发布任务,雇佣网络用户完成在特定搜索引擎上对特定关键词的搜索和/或对特定网页的点击等。由于这些恶意搜索增加了互联网上的流量,加重了搜索引擎的负担,并且严重损害了搜索引擎广告市场的正常运作,检测搜索引擎中的恶意搜索是有必要的。自动产生的搜索往往表现出一些机器人的特性,比如它们可以在短时间内产生大量的搜索,因而当前主要的检测方法都是基于用户的行为特征来检测恶意用户的,比较有代表性的方法列举如下:
(1)基于短时间内搜索量和相邻两次搜索间隔的检测方法。这种方法考察用户在一段时间内的平均搜索量和相邻两次搜索间隔,如果平均搜索量大、相邻搜索间隔小,那么认为用户是一个机器人,再进一步考察用户搜索内容。该方法的优点是简单、易于实现。该方法的缺点是阈值较难以设置,无法避免漏检,尤其无法应对日益复杂的恶意搜索手段。
(2)基于搜索会话建模的检测方法。这种方法重点考察用户的动作行为(如点击行为),如果是有逻辑性的行为序列,就认为是正常会话;如果行为序列不具有逻辑性,充满了正常用户几乎不会做的操作,就认为这是在进行机械性重复任务的非正常会话。实现时利用马尔可夫链对搜索会话建模,然后基于马氏距离寻找异常值,对应会话认为是异常会话。该方法的缺点是无法应对近年来越来越能模仿正常用户搜索模式的机器人。
(3)基于矩阵的检测方法。这种方法是对其他检测机器人方法的补充,针对搜索量相对较低的机器人群组进行检测,具体实现是用矩阵表示用户的搜索、点击行为,然后计算“集中度”指标,认为搜索词较集中的用户群组是机器人群组。该方法主要关注搜索量相对较低的机器人用户群组,难以处理通过众包平台进行恶意搜索的新型方式。
(4)基于众包用户特性的检测方法。这种方法利用众包平台用户的特性(温和性,同步性,分散性),通过聚类的方法检测进行恶意搜索的众包平台用户。该方法专门针对将恶意搜索任务发布到众包平台的众包恶意搜索方式,适用范围有限。
再比如,发明名称为“一种基于搜索引擎关键词的主动式蜜罐检测方法”(公开号CN103440454B),该方法首先利用已知的恶意搜索引擎关键词库,自动构造相应的蜜罐网页:对于针对URL路径的恶意搜索引擎关键词,利用Appache HTTP Server引擎的地址重写技术构造相应的蜜罐网页;对于针对网页内容的恶意搜索引擎关键词,把关键词重新输入到搜索引擎中,将返回的网页结果作为蜜罐网页。其次将蜜罐网页收录到搜索引擎中。最后根据蜜罐网页的恶意访问记录采用数据挖掘算法提取新的恶意搜索引擎关键词,并将其并入到恶意搜索引擎关键词库,重新构造新的蜜罐网页。该方法大大提升蜜罐的检测效率,弥补传统蜜罐的被动性缺点;并且动态更新蜜罐网页,以获取最新的黑客攻击漏洞信息。但是,该重点在于网站的安全漏洞方面,并不能检测搜索引擎用户提交的恶意搜索。
发明申请名称为“利用搜索引擎来防止污染的系统和方法”(公开号:CN1790329A),用于防止恶意搜索内容扩散。该系统包括用于在通过web爬寻器遍历的可搜索内容中检测恶意可搜索内容的检测机制。该系统还包括用来在确定恶意可搜索内容包括在由搜索引擎提供的搜索结果中之后,处理检测到的恶意可搜索内容的呈现机制。该呈现机制处理检测到的恶意可搜索内容以便防止将该恶意可搜索内容扩散给搜索结果的接收者。但是,该方法为防止出现在搜索引擎结果中的恶意网站损坏用户计算机的方法,并不针对用户进行的恶意搜索。
美国专利“计算机实现的提供广告的方法”(Computer-implemented methodforproviding advertisement,申请号:US14049195),包括使广告与预测的查询显示同时显示在搜索字段的自动完成用户界面元素中,该方法涉及在搜索引擎的搜索字段中接收用户输入的文本。基于用户输入的文本确定(620)预测查询,并且提供预测文本和用户输入的文本的一部分。在用户输入的文本中缺少预测文本。基于预测的查询来确定项目的广告。使广告与正在搜索字段的自动完成用户界面元素中显示的预测查询同时显示给用户。该发明提出了一种预测搜索引擎用户想输入的搜索关键词并根据预测的搜索关键词显示相应广告的方法。
美国专利“Systems and Methods for Detecting Online Fraud检测网络欺诈的系统和方法”(申请号US15206761),所描述的系统和方法能够快速和有效地检测欺诈性因特网域,即用于托管或分发欺诈性电子文档(如欺诈性网页和电子消息)的域。一些实施例使用反向IP分析从托管在与已知欺诈性域相同的IP地址的一组域中选择一组欺诈候选。根据域注册数据进一步过滤候选集。进一步分析托管在每个过滤候选域上的在线内容,以识别真正欺诈的域。然后,安全模块可以防止用户访问此类域的内容。
总之,当前存在的检测恶意搜索方法都存在一定的缺陷,难以快速、准确、普适地检测恶意搜索。
发明内容
本发明的目的是克服上述现有技术的无法快速、准确、普适地检测恶意搜索的缺陷,提出了一种基于恶意搜索关键词的时间相关性的检测恶意搜索方法及系统,从搜索关键词入手,可以兼顾准确性、简单易用性、高效性和普适性。
具体来说,本发明涉及一种基于搜索关键词的检测恶意搜索方法,包括:相关性初筛步骤,比较搜索关键词与种子词的相关性,选取多个搜索关键词为第一候选词;候选词聚类步骤,将该第一候选词转化为向量后进行聚类,从聚类后的该第一候选词中选取第二候选词;流行词去除步骤,以该第二候选词构建搜索词图,根据恶意搜索关键词的成簇特性,在该搜索词图中去除流行词以筛选出恶意搜索关键词。
本发明所述的检测恶意搜索方法,其中该相关性初筛步骤具体包括时间相关性筛查步骤,以该种子词s的时间戳tseed为中心,生成第一时间窗口Tseed,该第一时间窗口Tseed的区间为[tseed-T/2,tseed+T/2],当在用户搜索日志中每出现一次该种子词即生成一个第一时间窗口Tseed,获取第一时间窗口Tseed内的搜索关键词,以所有该搜索关键词为初始候选词a,生成初始候选词集合A;其中T为时间窗口阈值;词频相关性筛查步骤,获取初始候选词a的词频值TF(a,A),以TF(a,A)大于词频阈值的初始候选词a为第一候选词;其中,
Figure BDA0002002381200000041
l(a,A)为初始候选词a在初始候选词集合A中出现的次数。
本发明所述的检测恶意搜索方法,其中该候选词聚类步骤具体包括:候选词向量生成步骤,在每个该第一时间窗口Tseed内,以每个该种子词s的时间戳tseed为中心,设置多个第二时间窗口Tw;以该种子词s在该第一时间窗口Tseed内出现的次数为维数M,将该第一候选词转化为M维的候选词向量;其中,若该第一候选词在第m个第二时间窗口Tw内出现时,该第一候选词对应的候选词向量的第m个分量设置为1,反之则设置为0;其中M、m为正整数,M≥1,1≤m≤M;聚类筛选步骤,将所有该候选词向量进行聚类,若形成的类小于聚类阈值,则将其过滤掉,反之则以其包含的第一候选词为第二候选词。
本发明所述的检测恶意搜索方法,其中该流行词去除步骤具体包括:搜索词图构建步骤,以该第二候选词为节点q构建该搜索词图;边连接比较步骤,获取节点qi和其邻居节点qj之间的边连接强弱度oij,并获取节点qi的所有边连接强弱度oij的均值Oij,若均值Oij小于流行词去除阈值,则节点qi对应的第二候选词为流行词,反之则节点qi对应的第二候选词为恶意搜索关键词;其中,oij=nij/((ki-1)+(kj-1)-nij),nij为节点qi和其邻居节点qj的公共邻居个数,ki为节点qi与其邻居节点关联的边数,kj为邻居节点qj与其邻居节点关联的边数。
本发明还涉及一种基于搜索关键词的检测恶意搜索系统,包括:相关性初筛模块,用于比较搜索关键词与种子词的相关性,以选取多个搜索关键词为第一候选词;候选词聚类模块,用于将该第一候选词转化为向量后进行聚类,以从聚类后的该第一候选词中选取第二候选词;流行词去除模块,用于以该第二候选词构建搜索词图,根据恶意搜索关键词的成簇特性,在该搜索词图中去除流行词以筛选出恶意搜索关键词。
本发明所述的检测恶意搜索系统,其中该相关性初筛模块包括:时间相关性筛查模块,用于通过时间相关性比较以获取初始候选词;其中以该种子词s的时间戳tseed为中心,生成第一时间窗口Tseed,该第一时间窗口Tseed的区间为[tseed-T/2,tseed+T/2],当在用户搜索日志中每出现一次该种子词即生成一个第一时间窗口Tseed,获取第一时间窗口Tseed内的搜索关键词,以所有该搜索关键词为初始候选词a,生成初始候选词集合A;其中T为时间窗口阈值;词频相关性筛查模块,用于通过词频相关性比较获取第一候选词;其中获取初始候选词a的词频值TF(a,A),以TF(a,A)大于词频阈值的初始候选词a为第一候选词;
Figure BDA0002002381200000051
l(a,A)为初始候选词a在初始候选词集合A中出现的次数。
本发明所述的检测恶意搜索系统,其中该候选词聚类模块包括:候选词向量生成模块,用于将该第一候选词转化为向量;其中在每个该第一时间窗口Tseed内,以每个该种子词s的时间戳tseed为中心,设置多个第二时间窗口Tw;以该种子词s在该第一时间窗口Tseed内出现的次数为维数M,将该第一候选词转化为M维的候选词向量;其中,若该第一候选词在第m个第二时间窗口Tw内出现时,该第一候选词对应的候选词向量的对应第m个分量设置为1,反之则设置为0;M、m为正整数,M≥1,1≤m≤M;聚类筛选模块,用于将所有该候选词向量进行聚类,若形成的类小于聚类阈值,则将其过滤掉,反之则以其包含的第一候选词为第二候选词。
本发明所述的检测恶意搜索方法,其中该流行词去除模块包括搜索词图构建模块,用于以该第二候选词为节点q构建搜索词图;边连接比较模块,用于获取节点qi和其邻居节点qj之间的边连接强弱度oij,以获取节点qi的边连接强弱度均值Oij,若均值Oij小于流行词去除阈值,则节点qi对应的第二候选词ci为流行词,反之则节点qi对应的第二候选词ci为恶意搜索关键词;其中,oij=nij/((ki-1)+(kj-1)-nij),nij为节点qi和其邻居节点qj的公共邻居个数,ki为节点qi与其邻居节点关联的边数,kj为邻居节点qj与其邻居节点关联的边数。
本发明还提出一种可读存储介质,存储有可执行指令,该可执行指令用于执行如前述的基于搜索关键词的检测恶意搜索方法。
本发明还提出一种数据处理装置,包括如前述的可读介质,该数据处理装置调取并执行该可读介质中的可执行指令,以进行基于搜索关键词的恶意搜索检测。
本发明主要技术效果有:
(1)准确性。基于恶意搜索关键词本身具有的时间相关性,结合后续的检测流程设计,使用时间窗口和词频(TF)对候选词进行初步过滤;保证候选词与种子词的时间相关性足够强;将候选词根据与种子词的共同出现模式进行聚类;本发明的检测方法可以保证检测结果的准确性。
(2)简单易用性。本发明中每一步都不复杂,易于实现,且对原始输入数据要求少,只需要用户的搜索日志和若干种子词。
(3)高效性。检测方法的整体流程设计,每一步的方法有效的同时简单高效,由于每一步都采用了简单高效的算法,本发明运行速度快,并且最后一步之前的部分都可以并行化,进一步提高运行速度。
(4)普适性。由于本发明从搜索关键词的角度入手,利用恶意搜索关键词的时间相关性进行检测恶意搜索,不仅可以检测机器人进行的恶意搜索,也可以检测采用众包平台等方式使用人力进行的恶意搜索。通过构建搜索词图并使用边连接强弱为指标,充分利用恶意搜索关键词抱团出现的特性;
总之,本发明中提出的方法可以有效克服现有检测恶意搜索方法的缺陷,能够对恶意搜索进行准确、简单、高效、普适地检测。
附图说明
图1是本发明的检测恶意搜索方法的整体检测示意图。
图2是本发明的检测恶意搜索方法的整体检测流程图。
图3是本发明的检测恶意搜索系统的整体框架图。
图4是本发明的检测恶意搜索方法的候选词转化成向量示意图。
图5是本发明的检测恶意搜索方法的搜索词图的力导向图局部图。
图6是本发明的数据处理装置示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明提出的基于搜索关键词的检测恶意搜索方法和系统进一步详细说明。应当理解,此处所描述的具体实施方法仅仅用以解释本发明,并不用于限定本发明。
在进行检测恶意搜索方法研究时,现有技术中的缺陷是由于主要考虑恶意用户的行为特征进行检测而没有关注用户提交的搜索关键词导致的,由于搜索关键词是用户搜索目的的体现,经过对用户短时间内连续提交的搜索关键词进行研究发现,解决上述缺陷可以通过利用搜索关键词的时间相关性来实现,具体地,相同目的的恶意搜索常常使用特定一团搜索关键词(都来自一个“词典”),并且会在较短时间内连续提交,呈现出抱团出现的特性。本发明首先从专家人工打分得到的恶意搜索关键词(以下称为“种子词”)开始拓展,考察用户的搜索日志中与种子词出现时间相近的搜索关键词作为恶意搜索关键词的候选词(以下称为“候选词”),通过与种子词的相关性、相同出现模式候选词的个数、流行度等方面的过滤,最终筛选出恶意搜索关键词。
针对现有的检测恶意搜索方法的上述缺陷,本发明提出了一种基于搜索关键词的检测恶意搜索方法。不同于以往主要关注恶意用户的检测方法,从搜索关键词的角度入手,以一些种子词为起始,利用用户搜索关键词的时间相关性来拓展检测到的恶意搜索关键词。
图1为本发明的检测恶意搜索方法的整体检测示意图。如图1所示,本发明的检测恶意搜索方法主要包括以下几个部分:
①相关性初筛部分:把以种子词为中心的时间窗口内出现的搜索关键词认为是候选词,通过词频(TF)指标考察各候选词与种子词的相关性,将相关性低的候选词去除掉,剩下的候选词交给搜索词聚类部分。
②搜索词聚类部分:考察候选词与种子词共同出现的模式,对模式相似的候选词进行聚类,排除掉较小的聚类,剩下的候选词交给流行词去除部分。
③流行词去除部分:构建搜索词图,根据图中候选词有关的边的连接强弱判断候选词是不是可能在任何时候被任何用户搜索的流行词,去除流行词,剩下的词被认为是恶意搜索关键词。
以上各部分协同工作,共同完成最终恶意搜索的检测。
图2为本发明的检测恶意搜索方法的整体检测流程图。如图2所示,具体来说,本发明的基于搜索关键词的检测恶意搜索方法,包括:
相关性初筛步骤,比较搜索关键词与种子词的相关性,选取多个搜索关键词为第一候选词;候选词聚类步骤,将该第一候选词转化为向量后进行聚类,从聚类后的该第一候选词中选取第二候选词;流行词去除步骤,以该第二候选词构建搜索词图,根据恶意搜索关键词的成簇特性,在该搜索词图中去除流行词以筛选出恶意搜索关键词。
其中:相关性初筛步骤,包括:
时间相关性筛查步骤S11,以该种子词s的时间戳tseed为中心,生成第一时间窗口Tseed,该第一时间窗口Tseed的区间为[tseed-T/2,tseed+T/2],当在用户搜索日志中每出现一次该种子词即生成一个第一时间窗口Tseed,获取第一时间窗口Tseed内的搜索关键词,以所有该搜索关键词为初始候选词a,生成初始候选词集合A;其中T为时间窗口阈值;
词频相关性筛查步骤S12,获取初始候选词a的词频值TF(a,A),以TF(a,A)大于词频阈值的初始候选词a为第一候选词;其中,
Figure BDA0002002381200000081
l(a,A)为初始候选词a在初始候选词集合A中出现的次数。
候选词聚类步骤,包括:
候选词向量生成步骤S21,在每个该第一时间窗口Tseed内,以每个该种子词s的时间戳tseed为中心,设置多个第二时间窗口Tw;以该种子词s在该第一时间窗口Tseed内出现的次数为维数M,将该第一候选词转化为M维的候选词向量;其中,若该第一候选词在第m个第二时间窗口Tw内出现时,该第一候选词对应的候选词向量的第m个分量设置为1,反之则设置为0;其中M、m为正整数,M≥1,1≤m≤M;
聚类筛选步骤S22,将所有该候选词向量进行聚类,若形成的类小于聚类阈值,则将其过滤掉,反之则以其包含的第一候选词为第二候选词。
流行词去除步骤,包括:
搜索词图构建步骤S31,以该第二候选词为节点q构建该搜索词图;
边连接比较步骤S32,获取节点qi和其邻居节点qj之间的边连接强弱度oij,并获取节点qi的所有边连接强弱度oij的均值Oij,若均值Oij小于流行词去除阈值,则节点qi对应的第二候选词为流行词,反之则节点qi对应的第二候选词为恶意搜索关键词;
其中,oij=nij/((ki-1)+(kj-1)-nij),nij为节点qi和其邻居节点qj的公共邻居个数,ki为节点qi与其邻居节点关联的边数(度数),kj为邻居节点qj与其邻居节点关联的边数(度数)。这里度数是图论中的一个基本概念,一个节点的度数指的是图中与该节点关联的边数。如本说明书中具体实施方式部分所述,这里构建的“搜索词图”即是一个“图”,其中,每个节点代表一个第二候选词,若两个第二候选词在短时间内共同出现过,则对“搜索词图”中这两个第二候选词对应的代表节点之间连边。有了这个图之后,即可知道每个节点的度数。
图3是本发明的检测恶意搜索系统的整体框架图。如图3所示,本发明还提出一种基于搜索关键词的检测恶意搜索系统,包括:相关性初筛模块,用于比较搜索关键词与种子词的相关性,以选取多个搜索关键词为第一候选词;候选词聚类模块,用于将该第一候选词转化为向量后进行聚类,以从聚类后的该第一候选词中选取第二候选词;流行词去除模块,用于以该第二候选词构建搜索词图,根据恶意搜索关键词的成簇特性,在该搜索词图中去除流行词以筛选出恶意搜索关键词。
相关性初筛模块具体包括时间相关性筛查模块,用于通过时间相关性比较以获取初始候选词;其中以该种子词s的时间戳tseed为中心,生成第一时间窗口Tseed,该第一时间窗口Tseed的区间为[tseed-T/2,tseed+T/2],当在用户搜索日志中每出现一次该种子词即生成一个第一时间窗口Tseed,获取第一时间窗口Tseed内的搜索关键词,以所有该搜索关键词为初始候选词a,生成初始候选词集合A;其中T为时间窗口阈值;词频相关性筛查模块,用于通过词频相关性比较获取第一候选词;其中获取初始候选词a的词频值TF(a,A),以TF(a,A)大于词频阈值的初始候选词a为第一候选词;
Figure BDA0002002381200000101
l(a,A)为初始候选词a在初始候选词集合A中出现的次数。
候选词聚类模块具体包括:候选词向量生成模块,用于将该第一候选词转化为向量;其中在每个该第一时间窗口Tseed内,以每个该种子词s的时间戳tseed为中心,设置多个第二时间窗口Tw;以该种子词s在该第一时间窗口Tseed内出现的次数为维数M,将该第一候选词转化为M维的候选词向量;其中,若该第一候选词在第m个第二时间窗口Tw内出现时,该第一候选词对应的候选词向量的对应第m个分量设置为1,反之则设置为0;M、m为正整数,M≥1,1≤m≤M;聚类筛选模块,用于将所有该候选词向量进行聚类,若形成的类小于聚类阈值,则将其过滤掉,反之则以其包含的第一候选词为第二候选词。
流行词去除模块包括:搜索词图构建模块,用于以该第二候选词为节点q构建搜索词图;边连接比较模块,用于获取节点qi和其邻居节点qj之间的边连接强弱度oij,以获取节点qi的边连接强弱度均值Oij,若均值Oij小于流行词去除阈值,则节点qi对应的第二候选词ci为流行词,反之则节点qi对应的第二候选词ci为恶意搜索关键词;其中,oij=nij/((ki-1)+(kj-1)-nij),nij为节点qi和其邻居节点qj的公共邻居个数,ki为节点qi与其邻居节点关联的边数,kj为邻居节点qj与其邻居节点关联的边数。
下面对本发明提出的基于搜索关键词的检测恶意搜索方法进行详细说明。
首先是输入数据准备,使用的输入数据包含两部分:一部分是对每个用户按时间排好序的搜索日志,主要包含用户每次搜索的时间戳和使用的搜索关键词;另一部分是一个种子词列表,其中的种子词s在起始时已经被确认为是恶意搜索关键词,种子词列表一般由专家进行打分选出,且可以随时间推移进行修改。
基于上述数据,可以展开恶意搜索的检测过程,将与种子词短时间内共同出现的搜索关键词作为候选词,然后一步步过滤掉非恶意的搜索关键词,最终剩下的就是检测到的恶意搜索关键词。
各部分的具体功能说明如下:
(1)相关性初筛部分:为了利用恶意搜索关键词之间的时间相关性,根据种子词s从用户的搜索日志中产生若干包含候选词的日志段,将其中包含的搜素关键词作为第一候选词。具体地,通过设置一个时间窗口阈值T,对于用户搜索日志中种子词s的每一次出现生成一个时间窗口Tseed,以该种子词s为中心,以该用户所有时间戳落在第一时间窗口Tseed内的搜索关键词为初始候选词a,构成初始候选词集合A,这些初始候选词a等待后续的过滤。为了衡量初始候选词a与种子词之间的相关性程度,考虑到初始候选词a与种子词s在短时间内应多次出现,因此使用词频(TF)指标来衡量初始候选词a与种子词s的相关程度。对初始候选词集合A,分别计算每个初始候选词a在初始候选词集合A中的词频值(TF值),即该初始候选词a出现次数/初始候选词集合A中所有词的总出现次数。舍弃TF值小于或等于词频阈值的候选词(与中心的种子词s不够相关),然后将剩下的初始候选词a作为第一候选词b交给搜索词聚类部分。
例如,设时间窗口阈值为T,某个种子词s某一次在搜索日志中出现的时间戳为tseed,则所有该用户的搜索日志中时间戳属于区间[tseed-T/2,tseed+T/2]的搜索关键词形成一个初始候选词集合A。对于一个候选词a,其在A中出现的次数记为l(a,A),则其TF值为:
Figure BDA0002002381200000111
其中a'为初始候选词集合A中的任一候选词。
(2)搜索词聚类部分:考虑到恶意搜索关键词总是抱团出现的特性,它们的出现模式应该是相似的。该部分考察候选词的出现模式,通过将候选词转化成向量(维数等于中心的种子词在该段搜索日志中出现的次数)来捕捉其出现模式的特征。
种子词s在第一时间窗口Tseed截取的搜索日志段中出现了M次(M为正整数),所以使用M维向量来代表每个第一候选词b的出现模式,设置第二时间窗口Tw,对种子词s的每一次出现都产生一个第二时间窗口Tw,如果第一候选词b出现在第m个第二时间窗口Tw里,认为它与种子词s的该次出现足够近,因而把该第一候选词b对应向量对应的第m个分量设置为1,否则设置为0;其中M、m为正整数,M≥1,1≤m≤M。
图4为本发明的检测恶意搜索方法的候选词转化成向量示意图。如图4所示,种子词s在第一时间窗口Tseed截取的搜索日志段中出现了5次,所以使用5维向量来代表每个第一候选词b的出现模式,例如附图2中的第一候选词b1,它在5个第二时间窗口Tw中,只在第二个里没有出现,其它四次都出现了,因此b1转换得到的5维向量是(1,0,1,1,1),同样的,b2转换得到的5维向量是(1,1,0,0,0),b3是(0,0,0,1,1)、b4是(0,1,1,0,0)……对这些向量进行聚类,进而得到对应第一候选词的聚类,在聚类的具体实现时,使用简单高效且能自动确定聚类个数的X-means聚类方法对这些向量聚类(X-means聚类方法详见:Dan Pelleg,AndrewW Moore,et al.2000.X-means:Extending k-means with efficient estimation of thenumber of clusters..In Icml,Vol.1.727–734.),这里X-means是对K-means算法的改进。K-means需要先指定聚类个数h(h为正整数),随机从输入数据中选取h个点作为h个聚类的初始中心点,然后重复下面两个步骤:
①将每个输入数据点分配到距离最近的类中心所属的类中;
②对每个类内数据点的坐标取均值重新计算每个类的中心,直到每个类的中心点坐标不再发生变化为止。
由于实际应用中聚类个数h往往是无法提前确定的,X-means方法对K-means做了一些改进,主要过程是,先指定一个比较小的聚类个数Kmin做一次Kmin-means聚类,然后对每个聚类不断重复尝试能否把聚类一分为二,使用贝叶斯信息准则作为判断标准决定是否保留本次分裂,直到停止分裂或者聚类个数达到指定的聚类个数上限。X-means能通过贝叶斯信息准则自动确定指定聚类个数范围内最优的聚类个数,最终停止尝试分裂时就得到了聚类结果。
在对代表每个第一候选词b的向量做完聚类之后,就得到了对第一候选词b根据出现模式聚类的结果,出现模式相似的第一候选词b被聚到同一个类中,考虑到恶意搜索关键词往往扎堆出现的特性,恶意搜索关键词应该形成有一定规模的聚类(包含第一候选词个数较多),而偶然出现的正常搜索关键词形成的聚类应该较小(包含第一候选词个数较少),据此设置一个聚类大小(包含候选词个数)的聚类阈值,将小于聚类阈值的类过滤掉,这些过滤掉的类中所包含的第一候选词可能只是偶然出现在初始候选词集合A中的正常搜索词,以完成过滤剩下的第一候选词b为第二候选词c,得到更精炼的候选词集合。另外值得注意的是,到此为止的步骤都是可以并行化的,因为每个种子词产生的时间窗口之间无关,可以并行处理。第二候选词c交给流行词去除部分。
(3)流行词去除部分:经过前面两部分处理,第二候选词c中除了想识别的恶意搜索关键词之外,还包含随时可能出现的流行词。流行词是可能被任何用户在任何时间搜索的,因此,它们可能与不同目的、来自不同“词典”的恶意搜索关键词共同出现。考虑按照图论的完全图概念,将所有第二候选词构建为一张搜索词图,其中每个节点q代表一个第二候选词c,若两个词在时间上具有相关性(在短时间内共同出现过),就对相应的两个点连边。具体地,对每个用户的搜索记录中,时间戳相差小于一个设定值的搜索词之间连一条边。在搜索词图中,由于恶意搜索关键词之间的时间相关性,恶意搜索关键词对应的节点倾向于形成连接紧密的社区,不同目的的恶意搜索关键词之间形成不同的社区,而流行词则处于社区边缘、连接不同社区的位置。使用力导向图(详见论文:Thomas MJ Fruchterman andEdward M Reingold.1991.Graph drawing by force-directed placement.Software:Practice and experience21,11(1991),1129–1164.)对搜索词图进行可视化,其局部图如图5所示,可以观察到恶意搜索关键词明显的成簇特性,而圆圈圈出来的节点就是想过滤掉的流行词,它们处于连接不同簇的位置。以顶点的共同邻居覆盖比例(Overlap)来计算搜索词图中边的连接强弱度(详见论文:J-P Onnela,Jari Saram¨aki,Jorkki Hyv¨onen,Gy¨orgy Szab′o,David Lazer,Kimmo Kaski,J′anos Kert′esz,and A-L Barab′asi.2007.Structure and tie strengths in mobile communicationnetworks.Proceedings of the national academy ofsciences104,18(2007),7332–7336.)。
设某条边的两个顶点是节点qi和其邻居节点qj,则边连接强弱度oij(Overlap值)为:oij=nij/((ki-1)+(kj-1)-nij),其中nij是qi和qj的公共邻居个数,ki为节点qi的度数,kj为邻居节点qj的度数。考虑两种极端情况,对在同一个完全图中的两个点,其Overlap值是1;反之,如果qi和qj没有公共邻居即nij=0,那么oij=0。因此,恶意搜索关键词相连的边Overlap值应较大,而流行词相连的边Overlap值较小。基于此观察,对每个节点qi,取其周围所有相连边的Overlap均值Oij,如果Oij值较小,则说明该节点点对应的是一个流行词,将它从第二候选词c中去除,最终剩下的就是检测到的恶意搜索关键词。
综上所述,利用恶意搜索关键词的时间相关性进行恶意搜索检测,基于搜索词的时间相关性进行检测可以保证本方法的普适性;检测方法的整体流程设计,每一步的方法有效的同时简单高效,保证了本发明的准确性、简单易用性和高效性;使用时间窗口和词频TF值对候选词进行初步过滤,保证候选词与种子词的时间相关性足够强;将候选词根据与种子词的共同出现模式进行聚类,过滤掉偶然出现的候选词;通过构建搜索词图并使用边连接强弱为指标,充分利用恶意搜索关键词抱团出现的特性,过滤掉流行词,得到检测到的恶意搜索关键词。
图6是本发明的数据处理装置示意图。如图6所示,本发明实施例还提供一种可读存储介质,以及一种数据处理装置。本发明的可读存储介质存储有可执行指令,可执行指令被数据处理装置的处理器执行时,实现上述基于搜索关键词的检测恶意搜索方法。本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于可读存储介质中,如只读存储器、磁盘或光盘等。上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明实施例不限制于任何特定形式的硬件和软件的结合。
虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何所属技术领域中的普通技术人员,在不脱离本发明的精神和范围内,可以做出若干变形和改进,故本发明的保护范围当视后附的申请专利范围所界定者为准。

Claims (8)

1.一种基于搜索关键词的检测恶意搜索方法,其特征在于,包括:
相关性初筛步骤,比较搜索关键词与种子词的相关性,选取多个搜索关键词为第一候选词;
候选词聚类步骤,将该第一候选词转化为向量后进行聚类,从聚类后的该第一候选词中选取第二候选词;
流行词去除步骤,以该第二候选词为节点q构建搜索词图;获取节点qi和其邻居节点qj之间的边连接强弱度oij,并获取节点qi的所有边连接强弱度oij的均值Oij,若均值Oij小于流行词去除阈值,则节点qi对应的第二候选词为流行词,反之则节点qi对应的第二候选词为恶意搜索关键词;其中,oij=nij/((ki-1)+(kj-1)-nij),nij为节点qi和其邻居节点qj的公共邻居个数,ki为节点qi与其邻居节点关联的边数,kj为邻居节点qj与其邻居节点关联的边数。
2.如权利要求1所述的检测恶意搜索方法,其特征在于,该相关性初筛步骤具体包括:
时间相关性筛查步骤,以该种子词s的时间戳tseed为中心,生成第一时间窗口Tseed,该第一时间窗口Tseed的区间为[tseed-T/2,tseed+T/2],当在用户搜索日志中每出现一次该种子词即生成一个第一时间窗口Tseed,获取第一时间窗口Tseed内的搜索关键词,以所有该搜索关键词为初始候选词a,生成初始候选词集合A;其中T为时间窗口阈值;
词频相关性筛查步骤,获取初始候选词a的词频值TF(a,A),以TF(a,A)大于词频阈值的初始候选词a为第一候选词;其中,
Figure FDA0002956496710000011
l(a,A)为初始候选词a在初始候选词集合A中出现的次数。
3.如权利要求2所述的检测恶意搜索方法,其特征在于,该候选词聚类步骤具体包括:
候选词向量生成步骤,在每个该第一时间窗口Tseed内,以每个该种子词s的时间戳tseed为中心,设置多个第二时间窗口Tw;以该种子词s在该第一时间窗口Tseed内出现的次数为维数M,将该第一候选词转化为M维的候选词向量;其中,若该第一候选词在第m个第二时间窗口Tw内出现时,该第一候选词对应的候选词向量的第m个分量设置为1,反之则设置为0;其中M、m为正整数,M≥1,1≤m≤M;
聚类筛选步骤,将所有该候选词向量进行聚类,若形成的类小于聚类阈值,则将其过滤掉,反之则以其包含的第一候选词为第二候选词。
4.一种基于搜索关键词的检测恶意搜索系统,其特征在于,包括:
相关性初筛模块,用于比较搜索关键词与种子词的相关性,以选取多个搜索关键词为第一候选词;
候选词聚类模块,用于将该第一候选词转化为向量后进行聚类,以从聚类后的该第一候选词中选取第二候选词;
流行词去除模块,用于以该第二候选词构建搜索词图,根据恶意搜索关键词的成簇特性,在该搜索词图中去除流行词以筛选出恶意搜索关键词;该流行词去除模块包括:搜索词图构建模块,用于以该第二候选词为节点q构建搜索词图;边连接比较模块,用于获取节点qi和其邻居节点qj之间的边连接强弱度oij,以获取节点qi的边连接强弱度均值Oij,若均值Oij小于流行词去除阈值,则节点qi对应的第二候选词ci为流行词,反之则节点qi对应的第二候选词ci为恶意搜索关键词;其中,oij=nij/((ki-1)+(kj-1)-nij),nij为节点qi和其邻居节点qj的公共邻居个数,ki为节点qi与其邻居节点关联的边数,kj为邻居节点qj与其邻居节点关联的边数。
5.如权利要求4所述的检测恶意搜索系统,其特征在于,该相关性初筛模块包括:
时间相关性筛查模块,用于通过时间相关性比较以获取初始候选词;其中以该种子词s的时间戳tseed为中心,生成第一时间窗口Tseed,该第一时间窗口Tseed的区间为[tseed-T/2,tseed+T/2],当在用户搜索日志中每出现一次该种子词即生成一个第一时间窗口Tseed,获取第一时间窗口Tseed内的搜索关键词,以所有该搜索关键词为初始候选词a,生成初始候选词集合A;其中T为时间窗口阈值;
词频相关性筛查模块,用于通过词频相关性比较获取第一候选词;其中获取初始候选词a的词频值TF(a,A),以TF(a,A)大于词频阈值的初始候选词a为第一候选词;
Figure FDA0002956496710000021
l(a,A)为初始候选词a在初始候选词集合A中出现的次数。
6.如权利要求5所述的检测恶意搜索系统,其特征在于,该候选词聚类模块包括:
候选词向量生成模块,用于将该第一候选词转化为向量;其中在每个该第一时间窗口Tseed内,以每个该种子词s的时间戳tseed为中心,设置多个第二时间窗口Tw;以该种子词s在该第一时间窗口Tseed内出现的次数为维数M,将该第一候选词转化为M维的候选词向量;其中,若该第一候选词在第m个第二时间窗口Tw内出现时,该第一候选词对应的候选词向量的对应第m个分量设置为1,反之则设置为0;M、m为正整数,M≥1,1≤m≤M;
聚类筛选模块,用于将所有该候选词向量进行聚类,若形成的类小于聚类阈值,则将其过滤掉,反之则以其包含的第一候选词为第二候选词。
7.一种计算机可读存储介质,存储有计算机可执行指令,该计算机可执行指令被执行时,实现如权利要求1~3任一项所述的基于搜索关键词的检测恶意搜索方法。
8.一种数据处理装置,包括如权利要求7所述的计算机可读存储介质,该数据处理装置调取并执行该计算机可读存储介质中的计算机可执行指令,以进行基于搜索关键词的恶意搜索检测。
CN201910216948.3A 2019-03-21 2019-03-21 一种基于搜索关键词的检测恶意搜索系统及方法 Active CN110059725B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910216948.3A CN110059725B (zh) 2019-03-21 2019-03-21 一种基于搜索关键词的检测恶意搜索系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910216948.3A CN110059725B (zh) 2019-03-21 2019-03-21 一种基于搜索关键词的检测恶意搜索系统及方法

Publications (2)

Publication Number Publication Date
CN110059725A CN110059725A (zh) 2019-07-26
CN110059725B true CN110059725B (zh) 2021-07-09

Family

ID=67317248

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910216948.3A Active CN110059725B (zh) 2019-03-21 2019-03-21 一种基于搜索关键词的检测恶意搜索系统及方法

Country Status (1)

Country Link
CN (1) CN110059725B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102129450A (zh) * 2010-01-20 2011-07-20 微软公司 检测尖峰查询
CN102289756A (zh) * 2010-06-18 2011-12-21 百度在线网络技术(北京)有限公司 点击有效性的判断方法及其系统
CN103455754A (zh) * 2013-09-05 2013-12-18 上海交通大学 一种基于正则表达式的恶意搜索关键词识别方法
CN106104512A (zh) * 2013-09-19 2016-11-09 西斯摩斯公司 用于主动获取社交数据的系统和方法
CN106776915A (zh) * 2016-11-30 2017-05-31 四川用联信息技术有限公司 一种新的聚类算法实现搜索引擎关键词优化
CN109255024A (zh) * 2017-07-12 2019-01-22 车伯乐(北京)信息科技有限公司 一种异常用户同党的搜索方法,装置,及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060028463A (ko) * 2006-03-09 2006-03-29 정성욱 온라인 광고 시스템에서의 이용자 부정 클릭 추적과 방지시스템 및 그 방법
US20080147456A1 (en) * 2006-12-19 2008-06-19 Andrei Zary Broder Methods of detecting and avoiding fraudulent internet-based advertisement viewings
US8131611B2 (en) * 2006-12-28 2012-03-06 International Business Machines Corporation Statistics based method for neutralizing financial impact of click fraud
KR100857148B1 (ko) * 2007-04-26 2008-09-05 엔에이치엔(주) 무효클릭을 처리하는 방법 및 상기 방법을 수행하는 시스템
CN101631136A (zh) * 2008-07-18 2010-01-20 华为技术有限公司 交互广告的实现方法、系统、终端设备和广告客户端
KR101391392B1 (ko) * 2010-11-17 2014-05-07 애드바이미 유한회사 소셜 네트워크에서의 광고 서비스 제공 방법
CN103914484A (zh) * 2013-01-07 2014-07-09 阿里巴巴集团控股有限公司 一种页面内容的生成方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102129450A (zh) * 2010-01-20 2011-07-20 微软公司 检测尖峰查询
CN102289756A (zh) * 2010-06-18 2011-12-21 百度在线网络技术(北京)有限公司 点击有效性的判断方法及其系统
CN103455754A (zh) * 2013-09-05 2013-12-18 上海交通大学 一种基于正则表达式的恶意搜索关键词识别方法
CN106104512A (zh) * 2013-09-19 2016-11-09 西斯摩斯公司 用于主动获取社交数据的系统和方法
CN106776915A (zh) * 2016-11-30 2017-05-31 四川用联信息技术有限公司 一种新的聚类算法实现搜索引擎关键词优化
CN109255024A (zh) * 2017-07-12 2019-01-22 车伯乐(北京)信息科技有限公司 一种异常用户同党的搜索方法,装置,及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Pricing of Online Advertising: Cost-Per-Click-Through Vs. Cost-Per-Action;Yu Hu;《2010 43rd Hawaii International Conference on System Science》;20100311;1-9 *
在网络流量中搜索恶意输入并自动修复验证;丁志芳;《万方数据知识服务平台》;20140107;4156-4161 *
网络广告中的点击欺诈检测方法研究;乔晨蕊;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180215(第2期);全文 *

Also Published As

Publication number Publication date
CN110059725A (zh) 2019-07-26

Similar Documents

Publication Publication Date Title
Kaghazgaran et al. Combating crowdsourced review manipulators: A neighborhood-based approach
US8719179B2 (en) Recruiting service graphical user interface
Liu et al. A method for the detection of fake reviews based on temporal features of reviews and comments
Dominguez-Sal et al. A discussion on the design of graph database benchmarks
Jiang et al. Spotting suspicious behaviors in multimodal data: A general metric and algorithms
US9288124B1 (en) Systems and methods of classifying sessions
CN107918644B (zh) 声誉管理框架内的新闻议题分析方法和实施系统
US20060287988A1 (en) Keyword charaterization and application
US20100023508A1 (en) Search engine enhancement using mined implicit links
US20080270549A1 (en) Extracting link spam using random walks and spam seeds
Meschenmoser et al. Scraping scientific web repositories: challenges and solutions for automated content extraction
Drew et al. Automatic identification of replicated criminal websites using combined clustering
CN111292167A (zh) 基于大数据的竞品分析方法、系统、存储介质及电子设备
CN111475725A (zh) 用于搜索内容的方法、装置、设备和计算机可读存储介质
Yang et al. Learning to infer competitive relationships in heterogeneous networks
CN110059725B (zh) 一种基于搜索关键词的检测恶意搜索系统及方法
CN111222918B (zh) 关键词挖掘方法、装置、电子设备及存储介质
CN115048504A (zh) 信息推送方法、装置、计算机设备及计算机可读存储介质
Kitsuregawa et al. Socio-Sense: A system for analysing the societal behavior from long term Web archive
Anitha et al. A web usage mining based recommendation model for learning management systems
Ting et al. Applying Social Network Embedding and Word Embedding for Socialbots Detection
Gadek et al. AI techniques to analyse a social network on text, user and group level: application on Galaxy2
Chen et al. The best answers? Think twice: identifying commercial campagins in the CQA forums
CN116150541B (zh) 后台系统的识别方法、装置、设备及存储介质
CN118132818B (zh) 基于意象差异的旅游区域资源评估方法

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