发明内容
本说明书实施例提供一种关键词组合策略的生成及关键词扩展方法、装置和设备,用于解决如下问题:以提供一种更便利的关键词组合策略的生成方案。
基于此,本说明书实施例提供一种关键词组合策略的生成方法,包括:
获取种子关键词;
根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略;
其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词。
同时,本说明书实施例还提供一种基于语义的关键词扩展方法,包括:
获取种子关键词;
基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;
计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词;
其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型。
同时,本说明书还提供一种关键词组合策略的生成装置,包括:
第一获取模块,获取种子关键词;
第二获取模块,根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
分类模块,以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略,其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词;
生成模块,根据生成的决策树确定关键词组合策略。
同时,本说明书实施例还提供一种关键词扩展装置,包括:
第一获取模块,获取种子关键词;
确定模块,基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型。
第二获取模块,计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词。
对应的,本说明书还提供一种关键词组合策略的生成设备,所述设备包括:
获取种子关键词;
根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略;
其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词。
对应的,本说明书实施例还提供一种关键词扩展设备,所述设备包括:
存储器,存储基于语义的关键词扩展程序;
处理器,调用所述存储器中的基于语义的关键词扩展程序,并执行:
获取种子关键词;
基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;
计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词;
其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型。
对应的,本说明书的实施例还提供一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取种子关键词;
根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略;
其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词。
对应的,本说明书的实施例还提供另一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取种子关键词;
基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;
计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词;
其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过人工输入或者自动从数据中提取风险主题相关的关键词,来获取初始的种子关键词,并根据种子关键词进行共现扩展和语义扩展得到更多的扩展关键词。基于种子关键词和扩展词,从数据中提取出含有这些关键词的语料,通过生成决策树模型的方式,确定关键词组合策略,选取其中评估结果较好(例如准确率高)或者抗变种能力强的关键词组合策略推荐给用户。
本说明书实施例通过获取种子关键词,并且对种子关键词进行语义扩展,进而基于决策树方法生成关键词组合策略,从而可以有效的改善关键词防控过程中常见的漏识、误识、抗变种能力差等的现象,提高关键词安全防控的准确率和覆盖率。此外,还可以根据语义对生成的关键词组合策略进行适当变形,挖掘出在语料中不存在但可能相关的关键词组合策略,从而可以自动化感知风险,有一定的预判风险变种的能力。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在内容风控领域,使用关键词的防控方法多为基于专家经验进行添加,而人的经验往往是有局限性的,一方面,人的感知较为滞后,当风险发酵到一定程度后才会被感知,再进行关键词防控已经比较滞后,另一方面,依靠人的经验对关键词的扩展能力有限,同义词变种词的使用都可以轻松的绕过部署的关键词防控策略;此外,关键词的策略往往因为人的考虑不周或者理解的局限性,造成添加的关键词策略可能会误识很高,给用户造成不必要的打扰。
基于此,在本说明书实施例中,提供一种关键词组合策略的生成方法,通过获取种子关键词并进行语义衍生,并通过生成决策树的方式,确定关键词组合策略,提高关键词组合策略在安防方面的准确性和覆盖度。
在本说明书的实施例中,可采用如图1所示的架构,图1为本说明书实施例所涉及的架构的示意图,下面将基于如图1所示的架构,详细说明本说明书实施例提供的关键词组合策略的生成方法,该方法具体包括以下步骤,如图2所示,图2为本说明书实施例提供的关键词组合策略的生成方法流程示意图,包括:
S201,获取种子关键词。
基于前述内容,种子关键词可以是通过用户手动进行添加的,例如,根据人工对风险的观察和感知或者上层部门下发的要求来进行添加,或者,根据风险情况进行补防来进行补充添加;也可是根据一定的算法对风险数据进行关键词自动挖掘,得到种子关键词,例如,自动搜集高频热点信息进行主题归纳生成种子关键词。
S203,根据所述种子关键词的语义,获取与所述语义相关的扩展关键词。
语言的应用方式十分丰富,基于关键词的安全防控很容易被用不同的表达绕过。例如,各种同义词,谐音词等等。但它们本质上是通过语义相关联的。在实际应用场景中,同一个词可能有多种语义,例如,“翻墙”一词的语义可以是网络中绕过防火墙的IP封锁、内容过滤、域名劫持、流量限制等,对网络内容的访问,和网络风险有关;也可以是现实中的爬墙,绕过门窗等行为,和现实障碍有关,即,同一个词的两种语义有着不同的的外延范围,在进行语义扩展时可以分别进行相应的扩展。
基于语义对关键词进行扩展时,可以采取常用的同义词词表查找扩展的方式,即,认为预先设定某些词语属于同义词或者近义词,以进行互相扩展;或者,还可以通过大规模的语料预先训练相应的关键词扩展模型,通过关键词扩展模型对种子关键词进行相应的扩展,得到语义相关的扩展关键词。根据训练语料的不同,可以得到不同的的扩展模型。在扩展时可以获得多方面的不用的语义扩展关键词词,提高扩展时的覆盖性,例如,一方面可以进行风险语义扩展捕获风险相关词,而另一方面还可以使用通用的语义扩展捕获外漏的可疑词汇,具体的实施方式将在后文详述。
S205,以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略;其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词。此处的逻辑关系可以包括或、与、非及其组合等常见的逻辑关系,还可以包括关键词之间的相互顺序。
基于前述内容,可将关键词视为离散变量,进行one hot编码,并作为分类特征,对包含关键词的风险语料进行决策树分类,以是否有风险作为标签进行分类,生成决策树。本说明书实施例中的决策树是一个树结构(可以是二叉树或非二叉树),其每个非叶子节点表示在一个分类特征(即关键词)上的分类(在决策树中表现为分支),一颗决策树通常有若干分支,根据每个分支的取值(例如,真/假)得到语料在以这个关键词作为分类特征上的输出,而每个叶子节点代表一个最终的类别(例如,有风险或者没风险),当决策树被确定时,相对于已知的风险语料每个叶子节点对应有一个确定的分类结果。
从根节点开始,测试待分类语料中相应的分类特征,并按照其值选择输出分支,通过选择分类特征(即关键词),以使得在分支的过程中让每次分支得到的结果具有最佳的分类效果(可采用基尼系数来表征),直到到达叶子节点,以生成决策树,将叶子节点存放的分类结果作为决策结果。
例如,对一组训练语料,以消费、翻墙和其他作为关键词分类特征,对该训练语料进行分类,如图3所示,图3为本说明书实施例提供的一个具体的决策树分类的示意图。其中,将消费、翻墙和其他均进行了one hot编码(取值为0或者为1),其中的消费小于等于0.5即为分类条件,判定训练语料中是否存在“消费”这个关键词。
根据生成的决策树确定关键词组合策略,具体而言,可以采用如下方式:获取所述决策树的任一叶子节点至根节点的路径;针对任一路径,根据该路径中所包括的所有关键词和分支确定该路径对应的关键词组合策略。
换言之,可根据任一路径上所经历的分类特征及其取值,从而得到该叶子节点所对应的关键词组合策略,通过遍历所有的叶子节点至根节点的路径,得到决策树所对应的多个关键词组合策略。例如,若最终生成的决策树如图3所示,则在这种情形下,对应的关键词组合策略包括“^消费&翻墙”、“^消费&其他”、“消费&翻墙”和“消费&其他”,其中的符号“^”为逻辑关系中的“非”,符号“&”为逻辑关系中的“和”,当然,也可以最终根据分支的情形进行组合得到包含逻辑关系中“或”的关键词组合策略,例如,如图3中的关键词组合策略中包括“消费&(其他或翻墙)”。进一步地,对于生成的关键词组合策略,还可以包含关键词的顺序,例如,根据各非叶子节点的分类相关的一些指标(例如,准确率,)大小进行排序,依序生成关键词组合策略,或者,从根节点至叶子节点的顺序生成对应的关键词组合策略,以便根据该关键词组合的顺序可以更快的进行分类,降低在实际应用中,根据关键词组合策略进行风险控制时的计算量。
容易理解,在实际应用中,对于安全风控领域而言,得到的组合策略中那些“非XX”的部分通常作用不大(即,通常的方案是检测信息中是否包含有某些敏感词),即,对于得到的关键词组合策略还可以去掉其中包含“非XX”的部分,对其进一步的简化,以便用户实施。但是,并不意味着在所有相关的应用时都可以进行同样的省略。
此外,还可以采用随机森林模型以得到关键词组合策略,随机森林模型是一个包含多个子决策树的分类模型,通过从风险语料中随机选取子集,并且随机选取部分关键词作为分类特征。随机森林中的子决策树能够彼此不同,通过对子决策树的判断结果的投票,得到分类结果,采用随机森林模型进行分类,可以提升系统的多样性,从而提升分类性能,进而获得划分能力更好的关键词组合策略。
本说明书实施例通过获取种子关键词,并且对种子关键词进行语义扩展,进而以关键词为分类特征,基于决策树的分类方法生成关键词组合策略,从而可以有效的改善关键词防控过程中常见的漏识、误识、抗变种能力差等的现象,提高关键词安全防控的准确率和覆盖率。
作为一种具体的实施方式,在采用自动挖掘的方式以得到种子关键词的过程中,风险数据的来源包括人工审核和模型自动拦截的数据以及高频出现的传播信息,在这种方式下,可以预先对数据进行主题聚类,获得多个数据子集,然后对每个子集进行种子关键词提取。
基于数据的来源,聚类的方式可以采用半监督学习的方式,即以人工审核和模型自动拦截的数据通过人为给定标签的方式作为有标数据(例如,判定数据为风险数据),以高频出现的传播信息作为无标数据,构建半监督学习(Semi-Supervised Learning,SSL)模型,对无标数据进行分类(标注该无标数据有风险或者没有风险),得到多个数据子集,进而从各子集中进行关键字抽取。具体分类所采用的特征和标签以及算法,可以根据实际情形而定,半监督学习分类模型目前已经较为成熟,此处不再赘述。
对数据子集进行关键词提取的方式可有多种,例如,采用词频-逆向文件频率(term frequency–inverse document frequency,TF-IDF)方法或者TextRank提取每个数据中的文本的关键字。TF-IDF方法通过计算单词的词频和逆向文件频率,以获得TFIDF权重,来评估一个词对于语料库中的一份语料的重要程度,TextRank利用投票的原理,每个单词将票投给它身前身后一定距离的单词,通过预设权重,计算投票积分,以提取关键词,在这种方式下,通常可以得到多个具有权重或者投票积分的关键词。
在通过前述的方式获得多个关键词之后,还可以对其进行适当的过滤(例如,去除得到的关键词中的数字和过长英文单词),并根据权重或者投票积分进行排序,基于排序结果确定该数据子集的种子关键词。例如,选取积分排序最前的1个或者3个关键词作为种子关键词。
通过这种半监督聚类的方式自动从垃圾信息中感知种子关键词,可进一步提高对于风险的防控效率、准确率和覆盖率,并且节省了人工。
在一种具体的实施方式下,对种子关键词根据语义进行扩展时,所采用的预设的关键词扩展模型可以通过如下方式得到:确定关键词扩展模型所采用的训练语料,所述训练语料包括通用语料(general corpus,例如,国家语委现代汉语语料库)或者风险语料(例如,人工审核或者模型拦截的定性的风险语料库);基于所述训练语料,获取包含语义向量的关键词扩展模型,所述关键词扩展模型包括通用关键词扩展模型或者风险关键词扩展模型,所述语义向量用于表征词的语义。
换言之,这两个关键词扩展模型其算法类似,均通过语义向量来表示词的语义特征,但最初进行模型训练时采用的训练语料不同,训练语料包括通用语料或者风险语料,从而得到对应的通用关键词扩展模型或者风险关键词扩展模型。具体而言,同一个词在上述两个不同模型中,其语义向量并不相同,在根据语义扩展时,风险关键词扩展模型更能捕获风险相关的语义词,而通用关键词扩展模型则能捕获到一些外漏可疑词。
基于前述内容,根据种子关键词进行语义扩展时,可采用如下方式:根据所述包含语义向量的关键词扩展模型,确定所述种子关键词的语义向量;计算其它任一词的语义向量与所述种子关键词的语义向量的距离;根据所述距离确定扩展关键词。
换言之,通过将词与词之间的相似程度用向量间的距离来表示,语义向量距离越近的词则认为其语义越相似。根据所述距离确定扩展关键词。例如,可以直接确定距离值在一定范围内的词为扩展关键词,或者,根据计算得到的距离值从小到大进行排序,排序在前位的若干个(例如,三个或者十个)为扩展关键词。
在上述关键词扩展过程中,同一个种子关键词可以分别根据风险关键词扩展模型和通用关键词扩展模型进行扩展,得到不同的风险扩展关键词和通用关键扩展词。例如,在以“翻墙”作为种子关键词进行语义扩展时,得到的风险扩展关键词可以包括诸如VPN、贴图、安装包等等,得到的通用扩展关键词包括翻包、查包、搜人等等,如图4所示,图4为本说明书实施例提供的同一种子关键词根据不同关键词扩展模型进行扩展的具体示例。通过根据种子关键词的语义进行扩展,可以进一步提升关键词的覆盖率和对可能存在的关键词变种进行预防。
作为一种补充的扩展方式,除在对种子关键词进行语义扩展以外,还可以对其进行共现扩展,获取与种子关键词经常共同出现的词,具体可采用如下方式:基于指定语料,获取在指定条件下,其它词与所述种子关键词共同出现的次数或者概率;确定所述共同出现的次数或者概率超过预设值的词为扩展关键词。
其中的指定语料可以是前述用来生成决策树的风险语料,也可以是更一般性的通用语料。所述的指定条件包括:在语料库的任一语料文档中,该词出现在种子关键词周围的一定范围内,例如,出现在种子关键词所属句子的相邻句子中,或者,出现在种子关键词相邻的五个单词内,等等。通过共现扩展得到的关键扩展词与种子关键词通常存在上下文相关的可能,可认为是上下文扩展关键词,例如,以“VPN”作为种子关键词进行共现扩展,可得到诸如“翻”、“盾”、“墙”、“绕过”、“卖”等等上下文扩展关键词。
在生成决策树的过程中,首先可从事语料库提取那些包含指定关键词的语料,以进行决策树训练,这里的关键词包括前文提及的种子关键词、风险扩展关键词、通用扩展关键词和上下文扩展关键词。
在这种实施方式下,可能有些包含关键词语料的标签不完善或者缺失,我们还可以通过采用半监督学习的方式对语料库进行补充。具体实施方式如下:获取包含所述关键词的有标风险语料和无标语料,根据已确定的包含关键词的有标风险语料和所述无标语料,对所述无标语料进行标注,生成有标风险语料语料。例如,采用正样本无标签学习(Positive and unlabeled learning,PU Learning)的方式,对包含关键词的无标语料进风险标签标注,以便于决策树的训练和拟合。
进一步地,在这种实施方式下,由于各类来源词的重要程度不同,在决策树生成时,可进行权重区分处理。通常而言,权重设置为:种子关键词>风险扩展关键词>通用扩展关键词>上下文相关关键词。为此,可调整所述风险语料中,包含种子关键词的风险语料和包含扩展关键词的风险语料的权重(例如,向训练预料中重复添加相同的包含种子关键词的语料以提高其权重),来调整不同来源的词在最终的关键词组合策略中出现的概率和权重,以使生成得到的关键词组合策略更加的符合实际场景。
通过前述的方式,根据训练生成的决策树可以得到多组关键词组合策略。但并不是每一个叶子节点都具有准确的分类效果(即叶子节点对应的分类结果中可能存在部分样本被错误划分),在实际应用中,还可以根据每一个叶子节点下的分类结果,基于预设的评估指标(例如,准确率,召回率,精确率等等),根据训练语料的标签对该叶子节点对应的关键词组合策略进行评估,具体方式如下:确定所述决策树的任一叶子节点所对应的关键词组合策略和分类结果;根据评估指标,基于所述包含所述关键词的风险语料对所述分类结果进行评估;将评估指标符合条件的分类结果所对应的关键词组合策略确定为推荐结果。如图5所示,图5为本说明书实施例提供的对各关键词组合策略进行评估得到的评估报告示意图。在该图中,由于规则策略是根据决策树所生成,其中包含一些分类特征取假的情形,对应反映在该示意图中,符号“^”代表不包含的意思。
换言之,根据生成的决策树获得了多个关键词组合策略后,对其进行评估,选取那些评估指标超过一定值(例如,准确率超过90%,或者。准确率排名前列)的若干个组合作为推荐结果,提供给用户。此外,还可以提供该关键词组合策略的性能报告(例如,日击中量级等等),以供运营商或者用户进行参考、筛选和使用。
在一种具体的实施方式下,对于训练语料中未出现,但预判可能会出现的变种进行防控,还可以采用如下方式,以得到另一关键词组合策略:确定所述关键词组合策略中所包含的任一关键词的语义;获取与所述语义相关的扩展关键词;将所述关键词组合策略中的所述任一关键词替换为所述扩展关键词,生成另一关键词组合策略。
例如:根据决策树得到关键词组合策略“POS机&银行&放款”,我们通过语义相关得知“放款”与“周转”是语义相近的扩展关键词(例如,“周转”是和“放款”语义向量距离top3以内的),但在训练语料中没有出现,则可以在将该关键词组合策略中的“放款”替换为“周转”,生成另一关键词组合策略“POS机&银行&周转”,作为补充,从而做到“无中生有”的构建另一关键词组合策略。通过语义扩展对关键词组合策略进行变形,可以提高抗变种的能力。
在这种实施方式下,也需要对扩展出来的另一关键词组合策略进行相应的评估。由于决策树中并未出现其对应的叶子节点,意味着无法直接对另一关键词组合策略进行适当的评估,因此,可采用如下方式对其进行评估:根据对应替换的两个词的语义的相关或者相似程度,确定评估指标降权参数;根据关键词组合策略的评估指标和所述评估指标降权参数,生成所述另一关键词组合策略的评估指标,以便确定推荐结果。
续前例,若“POS机&银行&放款”的准确率为90%,根据“放款”与“周转”的语义相似程度(例如,二者之间的语义向量距离),确定降权参数为0.7,从而得到“POS机&银行&周转”的准确率为63%(即,90%乘以0.7)。换言之,将“POS机&银行&放款”对应的评估指标进行语义相似度降权后赋给“POS机&银行&周转”。以便根据评估指标确定推荐结果。
为使本说明书实施例的方案更加的浅显明白,下面给出一个具体的关键词组合策略生成的示例对本说明书实施例的方案加以说明。
通过自动挖掘获得种子关键词为“VPN”,系统根据VPN的语义和预先训练好的模型对其进行语义扩展,得到诸如“翻墙软件”和“翻墙”等等扩展关键词,对其进行共现扩展得到诸如翻、墙、盾、绕过、卖等等,挑选出包含这些关键词的语料,并对其中的无标语料进行标注,进而生成关键词树,根据关键词树得到诸多关键词组合策略,对其进行准确率评估以及生成性能报告,提供给用户参考。如图6所示,图6为本说明书实施例提供的一个具体的关键词组合策略生成的示例图。
此外,本说明书还提供一种关键词扩展方法,包括:获取种子关键词;基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词;其中,所述语义向量用于表征词的语义。
在该关键词扩展方法中,使用语义向量来表征词的语义,语义向量间的距离越近,认为两词的语义相似程度越高,在关键词扩展的时候,优先选择那些语义向量距离在一定距离内或者相似度排名前列的词进行扩展。该语义向量模型可以实现通过不同的语料库进行训练得到,基于训练语料的不同,将得到不同的语义向量模型。
例如,基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型,当然,根据实际需要的不同,还可以有针对性的训练多个不同领域的语料库,此处不再一一列举。换言之,同一个词在不同语义模型下其语义向量并不相同,其相似词也往往不一样。通过这种扩展方式,可以获得同一个词的在不同领域内的语义扩展关键词,更能根据实际应用的需要具有针对性的进行关键词扩展。
基于同样的思路,本发明还提供一种关键词组合策略的生成装置,如图7所示,图7为本说明书实施例提供的关键词组合策略的生成装置的结构示意图,包括:
第一获取模块701,获取种子关键词;
第二获取模块703,根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
分类模块705,以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略,其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词;
生成模块707,根据生成的决策树确定关键词组合策略。
进一步地,所述第一获取模块701,接收用户手动输入的种子关键词;或者,获取风险数据,通过预设算法对所述风险数据进行关键词提取,生成种子关键词。
进一步地,所述第一获取模块701,对所述数据进行聚类,生成多个数据子集;通过预设算法,对任一所述数据子集进行关键词提取,获取该数据子集的多个关键词;根据指定参数对所述多个关键词排序,基于排序结果确定该数据子集的种子关键词。
进一步地,所述第一获取模块701,根据已标记的数据和未标记的数据,构建分类器;根据所述分类器对所述未标记的数据进行聚类,获得多个数据子集。
进一步地,所述装置还包括模型生成模块709,确定关键词扩展模型所采用的训练语料,所述训练语料包括通用语料或者风险语料;基于所述训练语料,获取包含语义向量的关键词扩展模型,所述关键词扩展模型包括通用关键词扩展模型或者风险关键词扩展模型。
进一步地,所述第二获取模块703,根据所述包含语义向量的关键词扩展模型,确定所述种子关键词的语义向量;计算其它任一词的语义向量与所述种子关键词的语义向量的距离;根据所述距离确定扩展关键词。
进一步地,所述第二获取模块703,还用于,基于指定语料,获取在指定条件下,其它词与所述种子关键词共同出现的次数或者概率;确定所述共同出现的次数或者概率超过预设值的词为扩展关键词。
进一步地,还包括风险语料获取模块711,获取包含所述关键词的有标风险语料和无标语料根据已确定的包含关键词的有标风险语料和所述无标语料,对所述无标语料进行标注,生成有标风险语料语料。
进一步地,所述风险语料获取模块711,还用于,调整所述风险语料中,包含种子关键词的风险语料和包含扩展关键词的风险语料的权重。
进一步地,所述生成模块707,获取所述决策树的任一叶子节点至根节点的路径;针对任一路径,根据该路径中所包括的所有关键词和分支确定该路径对应的关键词组合策略。
进一步地,所述生成模块707,确定所述决策树的任一叶子节点所对应的关键词组合策略和分类结果;根据评估指标,基于所述包含所述关键词的风险语料对所述叶子节点的分类结果进行评估;将评估指标符合条件的叶子节点所对应的关键词组合策略确定为推荐结果。
进一步地,所述生成模块707,确定关键词组合策略中所包含的任一关键词的语义;获取与所述语义相关的扩展关键词;将所述关键词组合策略中的所述任一关键词替换为所述扩展关键词,生成另一关键词组合策略。
进一步地,所述生成模块707,还用于,根据所述扩展关键词和所述任一关键词的语义相关程度,确定评估指标降权参数;根据所述关键词组合策略的评估指标和所述评估指标降权参数,生成所述另一关键词组合策略的评估指标,以便确定推荐结果。
对应的,本说明书实施例还提供一种关键词扩展装置,如图8所示,图8为本说明书实施例提供的关键词扩展装置的结构示意图,包括:
第一获取模块801,获取种子关键词;
确定模块803,基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型;
第二获取模块805,计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词。
对应的,本说明书还提供一种关键词组合策略的生成设备,所述设备包括:
获取种子关键词;
根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略;
其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词。
对应的,本说明书实施例还提供一种关键词扩展设备,所述设备包括:
存储器,存储基于语义的关键词扩展程序;
处理器,调用所述存储器中的基于语义的关键词扩展程序,并执行:
获取种子关键词;
基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;
计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词;
其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型。
对应的,本说明书的实施例还提供一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取种子关键词;
根据所述种子关键词的语义,获取与所述语义相关的扩展关键词;
以关键词作为分类特征,对包含所述关键词的风险语料进行决策树分类,根据生成的决策树确定关键词组合策略;
其中,所述关键词组合策略由关键词和关键词之间的逻辑关系组成,所述关键词包括所述种子关键词和/或所述扩展关键词。
对应的,本说明书的实施例还提供另一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取种子关键词;
基于预先训练得到包含语义向量的关键词扩展模型,确定该种子关键词的语义向量;
计算其他词语所对应的语义向量与所述种子关键词的语义向量的距离,根据所述距离获取扩展扩展词;
其中,所述语义向量用于表征词的语义,所述包含语义向量的关键词扩展模型包括:基于通用语料训练得到的通用关键词扩展模型,或者,基于风险语料训练得到的风险关键词扩展模型。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和介质类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可,这里就不再一一赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤或模块可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书的实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信编号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书中一个或多个的实施例可提供为方法、系统或计算机程序产品。因此,本说明书的实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的形式。而且,本说明书的实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书的实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定事务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行事务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本说明书的实施例可以有各种更改和变化。凡在本说明书的实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利范围之中。