著录项信息
专利名称 | 分类器训练方法和装置、身份验证方法和系统 |
申请号 | CN201410242769.4 | 申请日期 | 2014-06-03 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2016-01-20 | 公开/公告号 | CN105260628A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F21/31 | IPC分类号 | G;0;6;F;2;1;/;3;1查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市南山区高新区科技中一路腾讯大厦35层
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司,腾讯云计算(北京)有限责任公司 | 当前权利人 | 腾讯科技(深圳)有限公司,腾讯云计算(北京)有限责任公司 |
发明人 | 刘杰;古开元;陆莉 |
代理机构 | 广州三环专利商标代理有限公司 | 代理人 | 贾允;肖丁 |
摘要
本发明提供了一种分类器训练方法,包括:获取训练样本集;根据一种预设分类条件特征确定根结点处的分类条件,根据根结点处的分类条件将训练样本集中的训练样本进行分类,获得对应根结点的孩子结点的分类子集;将根结点的孩子结点作为当前结点;循环执行根据另一种预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集的步骤直至叶结点;确定当前结点处的用户身份分类结果,获得决策树分类器。本发明提供的分类器训练方法训练获得的决策树分类器分类性能好。本发明还提供了一种分类器训练装置、身份验证方法和系统。
分类器训练方法和装置、身份验证方法和系统\n技术领域\n[0001] 本发明涉及计算机安全技术领域,特别是涉及一种分类器训练方法和装置、身份验证方法和系统。\n背景技术\n[0002] 账号是用户在互联网中的数字化代表,是用于识别不同的用户的重要依据。然而账号有时会出现账号的真实拥有者无法使用自己账号的情况,比如用户自己可能忘记密码,或者账号被恶意用户盗取并恶意修改了密码等,这种情况下就需要对用户身份进行验证,从而进行账号归属判断,在确认其为账号的合法用户时才会应用户要求修改密码,使其具有对该账号的控制权。这个过程通常可称为账号申诉。\n[0003] 目前对用户进行身份验证并据以进行账号归属判断,需要用户提交证据,证据通常是证明用户曾经拥有这个账号的证明信息。然后服务器对提交的每项证据进行对错判断,然后依据对错判断结果加权打分,最后通过判断加权打分的分数是否超过分数阈值来判断提交证据的用户是否为该账号的合法用户。\n[0004] 然而,通过加权打分来对用户进行身份验证,验证结果的准确性依赖于用户提供证据的多少,其验证结果准确性并不高,尤其是用户提交的证据数量较少的情况下,即使提供的证据完全正确也无法验证成功。\n发明内容\n[0005] 基于此,有必要针对通过加权打分来对用户进行身份验证准确性不高的问题,提供一种分类器训练方法和装置、身份验证方法和系统。\n[0006] 一种分类器训练方法,所述方法包括:\n[0007] 获取训练样本集;所述训练样本集中的每个训练样本包括用户身份属性和对应预设分类条件特征的特征值;\n[0008] 根据一种所述预设分类条件特征确定根结点处的分类条件,根据根结点处的分类条件将所述训练样本集中的训练样本进行分类,获得对应所述根结点的孩子结点的分类子集;将所述根结点的孩子结点作为当前结点;\n[0009] 根据另一种所述预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集;\n[0010] 将当前结点的孩子结点作为当前结点,继续执行所述根据另一种所述预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集的步骤,直至当前结点所对应的分类子集中各个训练样本的相同的预设分类条件特征所对应的特征值分别相同或者当前结点的层数达到指定层数;\n[0011] 根据当前结点所对应的分类子集中对应最多训练样本的用户身份属性确定当前结点处的用户身份分类结果,获得决策树分类器。\n[0012] 一种分类器训练装置,所述装置包括:\n[0013] 训练样本集获取模块,用于获取训练样本集;所述训练样本集中的每个训练样本包括用户身份属性和对应预设分类条件特征的特征值;\n[0014] 根结点训练模块,用于根据一种所述预设分类条件特征确定根结点处的分类条件,根据根结点处的分类条件将所述训练样本集中的训练样本进行分类,获得对应所述根结点的孩子结点的分类子集;将所述根结点的孩子结点作为当前结点;\n[0015] 内部结点训练模块,用于根据另一种所述预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集;还用于将当前结点的孩子结点作为当前结点,继续执行根据另一种所述预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集,直至当前结点所对应的分类子集中各个训练样本的相同的预设分类条件特征所对应的特征值分别相同或者当前结点的层数达到指定层数;\n[0016] 叶结点训练模块,用于根据当前结点所对应的分类子集中对应最多训练样本的用户身份属性确定当前结点处的用户身份分类结果,获得决策树分类器。\n[0017] 上述分类器训练方法和装置,利用训练样本从决策树分类器的根结点处开始逐层训练直到叶结点,从根结点到叶结点的每个非叶结点处的分类条件根据训练样本的其中一种预设分类条件特征确定,而叶结点则体现用户身份分类结果。这样训练获得的决策树分类器从根结点到叶结点的任意一条判断路径可以体现多种预设分类条件特征之间的相关性,分类性能好。在使用该决策树分类器进行身份验证时,不仅考虑用户提交的每种用户证据数据各自的对错,还会考虑多种用户证据数据之间的相关性,身份验证结果准确性高。\n[0018] 一种身份验证方法,所述方法包括:\n[0019] 接收用户终端发来的携带有待验证用户标识和待验证用户证据数据的身份验证请求;\n[0020] 获取对应所述待验证用户标识的用户数据,根据所述获取的用户数据对所述待验证用户证据数据进行验证而获得证据验证结果;\n[0021] 根据所述待验证用户证据数据和所述获得的证据验证结果提取对应预设分类条件特征的待验证特征值;\n[0022] 从决策树分类器的根结点处的分类条件开始,根据所述对应预设分类条件特征的待验证特征值逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应所述待验证用户标识的身份验证结果。\n[0023] 一种身份验证系统,所述系统包括:\n[0024] 身份验证请求接收模块,用于接收用户终端发来的携带有待验证用户标识和待验证用户证据数据的身份验证请求;\n[0025] 证据验证模块,用于获取对应所述待验证用户标识的用户数据,根据所述获取的用户数据对所述待验证用户证据数据进行验证而获得证据验证结果;\n[0026] 待验证特征值提取模块,用于根据所述待验证用户证据数据和所述获得的证据验证结果提取对应预设分类条件特征的待验证特征值;\n[0027] 身份验证结果确定模块,用于从决策树分类器的根结点处的分类条件开始,根据所述对应预设分类条件特征的待验证特征值逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应所述待验证用户标识的身份验证结果。\n[0028] 上述身份验证方法和系统,响应于用户终端的身份验证请求进行身份验证,先对身份验证请求所携带的待验证用户证据数据进行验证,再根据该验证结果提取预设分类条件特征所对应的待验证特征值,从而利用决策树分类器从根结点处的分类条件开始,根据每种预设分类条件特征所对应的待验证特征值逐层判断分类直至获得身份验证结果。这样进行身份验证不仅考虑了每个待验证用户证据的各自的对错,还考虑了各种预设分类条件特征所对应的待验证特征值彼此之间的相关性,身份验证结果准确性高。\n附图说明\n[0029] 图1为一个实施例中分类器训练方法的流程示意图;\n[0030] 图2为一个实施例中获取训练样本集的步骤的流程示意图;\n[0031] 图3为一个实施例中根据检验样本对决策树分类器剪枝的步骤的流程示意图;\n[0032] 图4为一个实施例中身份验证方法的流程示意图;\n[0033] 图5为一个具体应用场景中决策树分类器的局部数据结构示意图;\n[0034] 图6为一个实施例中分类器训练装置的结构框图;\n[0035] 图7为图6中的分类器训练装置的训练样本集获取模块的一个实施例的结构框图;\n[0036] 图8为另一个实施例中分类器训练装置的结构框图;\n[0037] 图9为再一个实施例中分类器训练装置的结构框图;\n[0038] 图10为一个实施例中身份验证系统的结构框图;\n[0039] 图11为另一个实施例中身份验证系统的结构框图。\n具体实施方式\n[0040] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0041] 如图1所示,在一个实施例中,提供了一种分类器训练方法,用于训练获得用于身份验证的决策树分类器。该方法具体包括如下步骤:\n[0042] 步骤102,获取训练样本集;训练样本集中的每个训练样本包括用户身份属性和对应预设分类条件特征的特征值。\n[0043] 训练样本集是用于训练决策树分类器的训练样本的集合,其中的每个训练样本包括用户身份属性和预设分类条件特征各自对应的特征值,且预设分类条件特征的种类数为两个以上。用户身份属性为合法用户和非法用户中的一种,分别表示相应的训练样本是通过或未通过身份验证的样本数据。训练样本集中既存在用户身份属性为合法用户的训练样本,也存在用户身份属性为非法用户的训练样本。\n[0044] 预设分类条件特征是预先设定的需要从用户证据数据中提取出的条件判断式的特征,用户证据数据是用户通过用户终端提供的表示自己为合法用户的证明数据。\n[0045] 在一个实施例中,预设分类条件特征可以包括但不限于是否有好友辅助验证,参与好友辅助验证且辅助验证通过的好友个数是否超过预设个数阈值,是否有正确的历史密码数据、正确的历史密码数据的量化分数是否超过第一预设分数阈值、是否有正确的账号常用地信息、正确的账号常用地信息的量化分数是否超过第二预设分数阈值,用户是否处于国外异地和密码变更次数是否在预设次数范围内中的至少两种。\n[0046] 其中好友辅助验证是指向与待验证用户标识具有通信好友关系的用户标识所对应的客户端发送辅助验证请求,接收该客户端返回的辅助验证结果。辅助验证结果包括通过和未通过,一般参与好友辅助验证且辅助验证通过的好友个数越多,越能说明其为合法用户。历史密码数据是指曾经使用过的密码,对其量化可采用一条正确的历史密码数据对应一个预设分数,比如5分,则2条正确的历史密码数据则对应10分。账号常用地信息包括一个物理位置,该物理位置的登录次数和/或登录时长超过一定阈值,还可以包括相应的时间参数,比如2014年常用地为上海,2013年常用地为深圳、成都。\n[0047] 特征值是相应的预设分类条件特征的具体取值,但并非限定其必须用数值表示。\n比如若预设分类条件特征为“是否有好友辅助验证”,则相应的特征值为“是”或“否”,且“是”或“否”分别为一种特征值。还比如,若预设分类条件特征为参与好友辅助验证且辅助验证通过的好友个数范围,则相应的特征值可为{0,1到3个,4个以上}中的一种。\n[0048] 步骤104,根据一种预设分类条件特征确定根结点处的分类条件,根据根结点处的分类条件将训练样本集中的训练样本进行分类,获得对应根结点的孩子结点的分类子集。\n[0049] 对决策树的训练从根结点开始,具体根据训练样本集中的训练样本的多种预设分类条件特征中选择的一种来确定根结点处的分类条件。决策树是以实例为基础的归纳学习算法,对决策树分类器的训练过程是根据一组无次序、无规则的元组得出决策树分类器表示形式的过程。最终训练获得的决策树分类器包括若干结点,其中非叶结点处对应有分类条件,而叶结点处则对应有用户身份分类结果。使用决策树分类器进行分类时,从根结点的分类条件开始逐层判断直至获得叶结点处的分类结果。其中从根结点开始到一个叶结点途经的所有结点所构成的路径为一个判断路径。\n[0050] 确定根结点处的分类条件后,便可根据根结点处的分类条件,或者依据用于确定根结点处的分类条件的预设分类条件特征来将训练样本集中的训练样本进行分类,从而获得对应根结点的孩子结点的分类子集,根结点的每个孩子结点对应一个分类子集。其中一个结点的孩子结点是指这一个结点的直接后继结点,且一个结点为其孩子结点的双亲结点。这样获得的每个分类子集中的训练样本的对应用于确定根结点处的分类条件的预设分类条件特征的特征值都相同。\n[0051] 在一个实施例中,根据一种预设分类条件特征确定根结点处的分类条件,具体地,可先根据训练样本集中用户身份属性为合法用户和非法用户的训练样本的数量来计算决策信息熵,然后计算训练样本集中每种预设分类条件特征的每种特征值所对应的分类信息熵并据以计算平均信息期望,然后再用决策信息熵减去平均信息期望来计算信息增益,根据信息增益最大的预设分类条件特征来确定根结点处的分类条件。其中决策信息熵的计算公式为I(S1,S2)=-P1Log2P1-P2Log2P2,P1=S1/(S1+S2),P2=S2/(S1+S2)。其中S1为训练样本集中用户身份属性为合法用户的训练样本的数量,S2为训练样本集中用户身份属性为非法用户的训练样本的数量;P1表示训练样本集中出现用户身份属性为合法用户的训练样本的概率,P2表示训练样本集中出现用户身份属性为非法用户的训练样本的概率;其中底数2可换为底数取值范围内的其它数值。每种预设分类条件特征所对应的分类信息熵的计算公式,则可将I(S1,S2)中的S1和S2分别换为一种预设分类条件特征所对应的每种特征值的训练样本的数量,当然特征值的种类数并不限定于2种。一个平均信息期望为一种预设分类条件特征的各种特征值的分类信息熵的加权和,权重为该相应的特征值的比重。\n[0052] 在一个实施例中,根据一种预设分类条件特征确定根结点处的分类条件的步骤,具体包括:统计训练样本集中每种预设分类条件特征的每种特征值所对应的用户身份属性为合法用户的训练样本的数量,根据训练样本集中对应统计的数量最多的特征值所对应的预设分类条件特征来确定根结点处的分类条件。\n[0053] 本实施例中,在训练样本集的范围内,统计每种预设分类条件特征的每种特征值所对应的用户属性为合法用户的训练样本的数量,对应统计的数量最多的特征值所对应的预设分类条件特征具有更好的识别出合法用户的性能。这里选择预设分类条件特征时倾向于能够更好的识别出合法用户的预设分类条件特征,这样根据对应统计的数量最多的特征值所对应的预设分类条件特征来确定根结点处的分类条件,使得根结点处的分类条件能够更好地区分出合法用户。\n[0054] 步骤106,将根结点的孩子结点作为当前结点。\n[0055] 当前结点是指当前要训练的结点,将根结点作为当前结点是对当前结点赋初值,从而便于对当前结点进行循环处理。\n[0056] 步骤108,根据另一种预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集。\n[0057] 另一种预设分类条件特征是指区别于用于确定当前结点所对应的当前路径中的各个结点处的分类条件的预设分类条件特征的预设分类条件特征。当前结点所对应的当前路径是指从根结点开始到当前结点的路径,若当前结点为根结点,则当前结点所对应的当前路径为根结点本身。根据另一种预设分类条件特征确定当前结点处的分类条件后,再依据当前结点处的分类条件或用于确定当前结点处的分类条件的预设分类条件特征来将当前结点所对应的分类子集分类,从而获得对应当前结点的孩子结点的分类子集,当前结点的每个孩子结点对应一个分类子集。这样获得的每个分类子集中的训练样本的对应用于确定根结点处的分类条件的预设分类条件特征的特征值都相同。\n[0058] 在一个实施例中,根据另一种预设分类条件特征确定当前结点处的分类条件,具体地,可以对于当前结点所对应的当前路径,除去已用于确定当前路径中的各个结点处的分类条件的预设分类条件特征后,得到剩余预设分类条件特征;然后根据当前结点所对应的分类子集中用户身份属性为合法用户和非法用户的训练样本的数量来计算对应当前结点的决策信息熵,然后计算当前结点所对应的分类子集中每种剩余预设分类条件特征的每种特征值所对应的分类信息熵并据以计算平均信息期望,然后再用当前结点所对应的决策信息熵减去该平均信息期望来计算信息增益,从而根据信息增益最大的剩余预设分类条件特征来确定当前结点处的分类条件。\n[0059] 在一个实施例中,根据另一种预设分类条件特征确定当前结点处的分类条件的步骤,具体包括:确定当前结点所对应的除去已用于确定当前路径中的结点处的分类条件的预设分类条件特征的剩余预设分类条件特征,统计当前结点所对应的分类子集中每种剩余预设分类条件特征的每种特征值所对应的用户身份属性为合法用户的训练样本的数量,根据当前结点所对应的统计的数量最多的特征值所对应的剩余预设分类条件特征来确定当前结点处的分类条件。\n[0060] 具体地,对于当前结点所对应的当前路径,除去已用于确定当前路径中的各个结点处的分类条件的预设分类条件特征后,得到剩余预设分类条件特征。在当前结点所对应的分类子集的范围内,统计每种剩余预设分类条件特征的每种特征值所对应的用户属性为合法用户的训练样本的数量,这样在当前结点所对应的分类子集的范围内,对应统计的数量最多的特征值所对应的剩余预设分类条件特征具有更好的识别出合法用户的性能。根据对应统计的数量最多的特征值所对应的剩余预设分类条件特征来确定当前结点处的分类条件,使得当前结点处的分类条件能够更好地区分出合法用户。\n[0061] 步骤110,将当前结点的孩子结点作为当前结点。\n[0062] 具体的,确定当前结点处的分类条件后,需要进一步训练当前结点的孩子结点,将当前结点的每个孩子结点分别作为当前结点进行训练。\n[0063] 步骤112,判断当前结点所对应的分类子集中各个训练样本的相同的预设分类条件特征所对应的特征值是否分别相同或者当前结点的层数是否达到指定层数。若是则执行步骤114,若否则继续执行步骤108。\n[0064] 步骤112为用于判断是否结束循环的判断条件,若对于当前结点所对应的分类子集中的训练样本,对应相同的预设分类条件特征的特征值分别是相同的,比如对应第一预设分类条件特征的特征值都是“是”,对应第二预设分类条件特征的特征值都是“否”等,说明当前结点所对应的分类子集中的训练样本已经无法依据预设分类条件特征进行进一步分类,当前结点为叶结点。或者若当前结点的层数达到指定层数,则无需再训练内部结点,当前结点为叶结点。当前结点的层数等于当前结点所对应的当前路径中结点的数量,比如根结点的层数为1,而根结点的孩子结点的层数为2。当步骤112判断为否时,则继续执行步骤108,且步骤108中另一种预设分类条件特征与之前循环中的另一种预设分类条件特征不同。\n[0065] 步骤114,根据当前结点所对应的分类子集中对应最多训练样本的用户身份属性确定当前结点处的用户身份分类结果,获得决策树分类器。\n[0066] 具体地,当步骤112判断为是时,可确定当前结点为叶结点,则可统计当前结点所对应的分类子集中用户身份属性为合法用户的训练样本的数量,从而计算该统计的数量占当前结点所对应的分类子集中训练样本总数的比重是否超过0.5。若是则确定当前结点处的用户身份分类结果为合法用户或者身份验证通过,若否则确定当前结点处的用户身份分类结果为非法用户或者身份验证失败。最终获得包括根结点、内部结点和叶结点所组成的若干判断路径的决策树分类器。\n[0067] 上述分类器训练方法,利用训练样本从决策树分类器的根结点处开始逐层训练直到叶结点,从根结点到叶结点的每个非叶结点处的分类条件根据训练样本的其中一种预设分类条件特征确定,而叶结点则体现用户身份分类结果。这样训练获得的决策树分类器从根结点到叶结点的任意一条判断路径可以体现多种预设分类条件特征之间的相关性,分类性能好。在使用该决策树分类器进行身份验证时,不仅考虑用户提交的每种用户证据数据各自的对错,还会考虑多种用户证据数据之间的相关性,身份验证结果准确性高。\n[0068] 如图2所示,在一个实施例中,步骤102具体包括如下步骤:\n[0069] 步骤202,获取用于训练分类器的身份验证数据样本;身份验证数据样本包括用户证据数据以及经过验证而确定的证据验证结果和身份判定结果。\n[0070] 身份验证数据样本是经过身份确认的身份验证数据的样本,身份验证数据是指用户身份验证的数据。身份验证数据样本包括用户证据数据,该用户证据数据是用户通过用户终端提交的用于证明自己是合法用户的证明数据,比如填写的账号常用地信息、填写的历史密码数据等。\n[0071] 身份验证数据样本还包括经过人工和/或自动的验证而确定的证据验证结果和身份判定结果。证据验证结果是对身份验证数据样本中的用户证据数据进行验证后给出的验证结果,表示该用户证据数据是正确的或错误的。身份判定结果是事先经过身份验证而确定的表示提供该用户证据数据的用户是合法用户或非法用户的判断结果。\n[0072] 步骤204,根据用户证据和证据验证结果提取对应预设分类条件特征的特征值。\n[0073] 对于每个身份验证数据样本,根据其所包括的用户证据数据和证据验证结果来提取对应预设分类条件特征的特征值。这里提取的预设分类条件特征的种类与用户身份验证数据样本所包括的用户证据数据的种类相关。一个用户证据数据可以提取对应多个预设分类条件特征的特征值。\n[0074] 举例说明,若一个身份验证数据样本所包括的一个用户证据数据为提供了两个历史密码数据,证据验证结果为两个历史密码数据一个正确而另一个错误。相应的预设分类条件特征可为“是否有正确的历史密码数据”和“正确的历史密码数据的个数是否为2个以上”,则提取的对应这两个预设分类条件特征的特征值分别为“是”和“否”。\n[0075] 步骤206,根据身份验证数据样本所对应的提取的特征值和身份判定结果构建训练样本集中的训练样本。\n[0076] 对于每个身份验证数据样本提取了对应预设分类条件特征的特征值,将每个身份验证数据样本所对应的提取的特征值作为每个训练样本的特征值,并将相应的身份判定结果作为每个训练样本的用户身份属性,这样就获得了包括若干训练样本的训练样本集。\n[0077] 本实施例中,从用户证据数据中提取对应预设分类条件特征的特征值以构成训练样本,因决策树分类器需要在每个非叶结点处判断分类,训练样本比身份验证数据样本更适合用来训练获得决策树分类器,而且可以从身份验证数据样本中挖掘出更多细节信息,从而使得决策树分类器的分类结果更为准确。\n[0078] 如图3所示,在一个实施例中,上述分类器训练方法还包括根据检验样本对决策树分类器剪枝的步骤,具体包括如下步骤:\n[0079] 步骤302,获取检验样本集;检验样本集中的每个检验样本包括用户身份属性和对应预设分类条件特征的特征值。\n[0080] 检验样本用来检验决策树分类器的分类性能,当经检验样本检验判定决策树分类器的分类性能不佳时对决策树分类器进行剪枝,剪枝是通过修改决策树的判断路径以提高决策树分类准确性的过程。检验样本集中的每个检验样本具有与训练样本集中的训练样本匹配的形式,包括用户身份属性和对应预设分类条件特征的特征值,优选检验样本不属于训练样本集。\n[0081] 在一个实施例中,步骤302具体包括:获取用于检验决策树分类器的身份验证数据样本,其包括用户证据数据以及经过验证而确定的证据验证结果和身份判定结果;根据该用户证据和该证据验证结果提取对应预设分类条件特征的特征值;根据用于检验决策树分类器的身份验证数据样本所对应的提取的特征值和身份判定结果构建检验样本集中的检验样本。\n[0082] 步骤304,根据检验样本集中的每个检验样本的特征值,从决策树分类器的根结点处的分类条件开始逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应每个检验样本的身份判定结果。\n[0083] 检验决策树的过程是在知晓检验样本的用户身份属性的前提下,利用决策树对检验样本分类,判断其是否与已知的用户身份属性一致,若是则说明分类正确,若不一致则分类错误,以达到检验决策树分类器性能的目的。\n[0084] 具体地,对每个检验样本进行分类,依据该检验样本的对应预设分类条件特征的特征值,先根据决策树分类器的根结点处的分类条件来判断分类,到达根结点的一个孩子结点,然后再依据根结点的孩子结点处的分类条件对该检验样本进行判断分类,到达第三层的结点,依此类推。直至叶结点时若找到一条叶结点处的身份分类结果为合法用户的判断路径,则确定该检验样本的身份判定结果为合法用户或者身份验证通过。若无法找到任何一条叶结点处的身份分类结果为合法用户的判断路径,则确定该检验样本的身份判定结果为非法用户或者身份验证未通过。\n[0085] 步骤306,根据检验样本集中的检验样本所对应的身份判定结果和用户身份属性计算决策树分类器的各个判断路径的准确率。\n[0086] 具体地,判断检验样本集中的每个检验样本的身份判定结果是否与该检验样本的用户身份属性匹配,若匹配则记录用于判断该检验样本的身份判定结果的判断路径判断正确一次,若不匹配则记录用于判断该检验样本的身份判定结果的判断路径判断错误一次,如此累积记录。然后用一条判断路径的判断正确的总次数除以该条判断路径的判断正确和判断错误的次数的和,就可以计算获得该条判断路径的准确率,如此计算获得各个判断路径的准确率。\n[0087] 步骤308,调整准确率低于预设准确率阈值的判断路径中的结点。\n[0088] 准确率阈值是事先设定的用于判断决策树分类器的某条判断路径是否达到分类性能标准的量化数值。具体地,对于准确率低于预设准确率阈值的判断路径,删除其叶结点而将该删除的叶结点的双亲结点作为新的叶结点,从而根据新的叶结点所对应的新的分类子集中对应最多训练样本的用户身份属性来确定该新的叶结点处的用户身份分类结果,这相当于将两条判断路径合并。也可以在剪枝后重新计算合并后的判断路径的准确率,若低于预设准确率阈值则继续调整该判断路径。在其它实施例中,可以将准确率低于预设准确率阈值且其叶结点邻近的多条判断路径合并,来达到调整准确率低于预设准确率阈值的判断路径中的结点的目的。\n[0089] 本实施例中,利用检验样本来检验决策树分类器的分类性能,从而在决策树分类器的某条判断路径分类性能较低时对其进行修正,以提高整个决策数分类器的分类准确性。\n[0090] 在一个实施例中,该分类器训练方法还包括根据用户反馈信息调整判断路径的步骤,具体包括:获取用户反馈信息,根据反馈信息调整决策树分类器中与反馈信息相关的判断路径中的结点。\n[0091] 在上述决策树分类器用于用户身份验证的实际应用中,可能会发生用户提供的用户证据数据正确却判定为非法用户的情况,或者用户未提供用户证据数据而是由其他恶意用户提供了虚假的用户证据数据却判定为合法用户的情况,\n[0092] 这种情况下真实用户会提供反馈信息,比如投诉、建议等,这种情况下需要根据该反馈信息来对与该反馈信息相关的判断路径进行剪枝,以提高决策树分类器的分类准确性。具体可以删除该判断路径的叶结点而将该删除的叶结点的双亲结点作为新的叶结点,从而根据新的叶结点所对应的新的分类子集中对应最多训练样本的用户身份属性来确定该新的叶结点处的用户身份分类结果。\n[0093] 下面用一个具体应用场景来说明上述分类器训练方法的原理,具体包括如下步骤:\n[0094] 获取身份验证数据样本集合,每个身份验证数据样本包括用户证据数据以及经过验证而确定的证据验证结果和身份判定结果。其中一个身份验证数据样本如表一所示:\n[0095] 表一:\n[0096]\n[0097]\n[0098] 将获取的身份验证数据样本集合中的身份验证数据样本随机分为两类,一类用于训练分类器,另一类用于检验该训练获得的分类器。对于两类身份验证数据样本分别根据其用户证据和相应的证据验证结果提取对应预设分类条件特征的特征值。提取特征值后,根据用于训练分类器的身份验证数据样本所对应的提取的特征值和身份判定结果构建训练样本集中的训练样本;根据用于检验训练获得的分类器的身份验证数据样本所对应的提取的特征值和身份判定结果构建检验样本集中的检验样本。训练样本集中的每个训练样本包括用户身份属性和对应预设分类条件特征的特征值;检验样本集中的每个检验样本包括用户身份属性和对应预设分类条件特征的特征值。预先设定一个正确的历史密码数据记为\n15分,一个正确的常用地信息记为5分。则根据上述表一所示的身份验证数据样本所获得的一个训练样本如表二所示:\n[0099] 表二:\n[0100]\n[0101] 然后统计训练样本集中每种预设分类条件特征的每种特征值所对应的用户身份属性为合法用户的训练样本的数量,根据训练样本集中对应统计的数量最多的特征值所对应的预设分类条件特征来确定根结点处的分类条件。参考图5所示的决策树分类器的局部数据结构示意图。假设训练样本集中共有100个训练样本,其中50个为用户身份属性为合法用户的训练样本。经过统计这50个训练样本中好友辅助验证通过的个数大于或等于3个的训练样本的数量为45个,比其他统计的数量都多,则将“好友辅助验证通过的个数是否≥3个”作为决策树分类器根结点处的分类条件。根据根结点处的分类条件将训练样本集中的训练样本进行分类,获得对应根结点的孩子结点的分类子集,再将根结点的孩子结点分别作为当前结点。\n[0102] 再执行训练内部结点的步骤,具体包括:确定当前结点所对应的除去已用于确定当前路径中的结点处的分类条件的预设分类条件特征的剩余预设分类条件特征,统计当前结点所对应的分类子集中每种剩余预设分类条件特征的每种特征值所对应的用户身份属性为合法用户的训练样本的数量,根据当前结点所对应的统计的数量最多的特征值所对应的剩余预设分类条件特征来确定当前结点处的分类条件。\n[0103] “好友辅助验证通过的个数是否≥3个”的预设分类条件特征已经用于确定根结点处的分类条件,将其除去获得剩余预设分类条件特征。当前结点所对应的分类子集中共有\n60个训练样本,其中45个为用户身份属性为合法用户的训练样本,经过统计,当前结点所对应的统计的数量最多的特征值为有密码得分共对应40个训练样本,则根据该剩余预设分类条件特征“是否有密码得分”来确定当前结点处的分类条件为“是否有密码得分”。再将当前结点的孩子结点分别作为当前结点而继续执行训练内部结点的步骤,直至当前结点所对应的分类子集中各个训练样本的相同的预设分类条件特征所对应的特征值分别相同或者当前结点的层数达到指定层数。\n[0104] 再将当前结点作为叶结点而根据当前结点所对应的分类子集中对应最多训练样本的用户身份属性确定当前结点处的用户身份分类结果,若当前结点所对应的分类子集中共有25个训练样本,其中24个的用户身份属性为合法用户,则可设定当前结点处的用户身份分类结果为身份验证通过。在逐层训练获得所有内部结点和叶结点后获得训练好的决策树分类器。\n[0105] 最后根据检验样本集对训练获得的决策树分类器进行剪枝,具体地根据检验样本集中的每个检验样本的特征值,从决策树分类器的根结点处的分类条件开始逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应每个检验样本的身份判定结果。根据检验样本集中的检验样本所对应的身份判定结果和用户身份属性计算决策树分类器的各个判断路径的准确率,调整准确率低于预设准确率阈值的判断路径中的结点。\n[0106] 如图4所示,在一个实施例中,提供了一种身份验证方法,本实施例以该方法应用于身份验证服务器来举例说明。该方法具体包括如下步骤:\n[0107] 步骤402,接收用户终端发来的携带有待验证用户标识和待验证用户证据数据的身份验证请求。\n[0108] 当真实用户丢失用于唯一标识出其身份的用户标识所对应的登录口令后,可以在用户终端上通过用户标识管理方所提供的申诉页面提供待验证用户标识,并自主或在申诉页面的引导下提供用于证明其为其待验证用户标识的真实拥有者的待验证用户证据数据。\n从而用户终端将携带有待验证用户标识和待验证用户证据数据的身份验证请求发送给身份验证服务器,由身份验证服务器接收该身份验证请求并据以进行身份验证。用户标识可为账号,比如登录即时通信客户端的账号。当然恶意用户也会企图通过申诉页面来提供虚假的待验证用户标识和待验证用户证据数据,来实现盗取用户标识的目的,这就需要身份验证服务器根据身份验证请求对用户进行甄别,以保证用户账号安全。\n[0109] 步骤404,获取对应待验证用户标识的用户数据,根据获取的用户数据对待验证用户证据数据进行验证而获得证据验证结果。\n[0110] 预先对应待验证用户标识存储了用户数据,比如历史密码数据、曾经使用的用户名称、曾经的登录地点等,身份验证服务器在进行身份验证时凭借该待验证用户标识而获取相应的用户数据,来对身份验证请求中所携带的待验证用户证据数据进行验证,以获得表示待验证用户证据数据正确或错误的证据验证结果。\n[0111] 举例说明,若待验证用户证据数据包括两个历史密码数据,则身份验证服务器获取待验证用户标识所对应的历史密码数据列表,该列表包括该待验证用户标识在预设时间段(比如3年)内使用过的所有密码数据。身份验证服务器分别判断待验证用户证据数据所包括的两个历史密码数据是否分别存在于该历史密码数据列表中,若一个存在一个不存在,则获得表示一个历史密码数据正确、另一个历史密码错误的证据验证结果。\n[0112] 步骤406,根据待验证用户证据数据和获得的证据验证结果提取对应预设分类条件特征的待验证特征值。\n[0113] 根据待验证用户证据数据和其所对应的证据验证结果,来提取相应的对应预设分类条件特征的待验证特征值。这里提取的预设分类条件特征的种类与待验证用户证据数据的种类相关。一个待验证用户证据数据可以提取对应多个预设分类条件特征的待验证特征值。\n[0114] 举例说明,若一种待验证用户证据数据为两个历史密码数据,证据验证结果为两个历史密码数据一个正确而另一个错误。相应的预设分类条件特征为“是否有正确的历史密码数据”和“正确的历史密码数据的个数是否为2个以上”,则提取的对应这两个预设分类条件特征的待验证特征值分别为“是”和“否”。\n[0115] 步骤408,从决策树分类器的根结点处的分类条件开始,根据对应预设分类条件特征的待验证特征值逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应待验证用户标识的身份验证结果。\n[0116] 具体地,根据对应预设分类条件特征的待验证特征值,先根据决策树分类器的根结点处的分类条件来判断分类,到达根结点的一个孩子结点,然后再依据根结点的孩子结点处的分类条件来判断分类,到达第三层的结点,依此类推。直至叶结点时若找到一条叶结点处的身份分类结果为合法用户的判断路径,则确定该次身份验证的身份验证结果为合法用户或者身份验证通过。若无法找到任何一条叶结点处的身份分类结果为合法用户的判断路径,则确定该次身份验证的身份验证结果为非法用户或者身份验证未通过。在一个实施例中,决策树分类器根据上述任一实施例中的分类器训练方法训练获得。\n[0117] 上述身份验证方法,身份验证服务器响应于用户终端的身份验证请求进行身份验证,先对身份验证请求所携带的待验证用户证据数据进行验证,再根据该验证结果提取预设分类条件特征所对应的待验证特征值,从而利用决策树分类器从根结点处的分类条件开始,根据每种预设分类条件特征所对应的待验证特征值逐层判断分类直至获得身份验证结果。这样进行身份验证不仅考虑了每个待验证用户证据的各自的对错,还考虑了各种预设分类条件特征所对应的待验证特征值彼此之间的相关性,身份验证结果准确性高。\n[0118] 下面用另一个具体应用场景来说明上述身份验证方法的原理,该应用场景以该身份验证方法应用于身份验证服务器来举例说明。具体包括如下步骤:\n[0119] 将上述训练获得的决策树分类器应用于上述身份验证方法中以进行身份验证,首先身份验证服务器接收用户终端发来的携带有待验证用户标识和待验证用户证据数据的身份验证请求。然后获取对应待验证用户标识的用户数据,根据获取的用户数据对待验证用户证据数据进行验证而获得证据验证结果。比如用户提交的待验证用户证据数据和据以获得的证据验证结果如表三所示:\n[0120] 表三:\n[0121]\n[0122] 根据待验证用户证据数据和获得的证据验证结果提取对应预设分类条件特征的待验证特征值,比如根据表三中的待验证用户证据数据和相应的证据验证结果提取的对应预设分类条件特征的待验证特征值如表四所示:\n[0123] 表四:\n[0124]\n[0125] 从决策树分类器的根结点处的分类条件开始,根据对应预设分类条件特征的待验证特征值逐层判断分类直至叶结点,该叶结点处的用户身份分类结果为身份验证通过,则确定此次对应待验证用户标识的身份验证的身份验证结果为身份验证通过。此时可通过预设通信方式,比如电子邮件、短信等告知提出身份验证请求的用户身份验证通过,并引导其修改对应该待验证用户标识的登录口令。\n[0126] 如图6所示,在一个实施例中,提供了一种分类器训练装置,该装置包括训练样本集获取模块602、根结点训练模块604、内部结点训练模块606和叶结点训练模块608。\n[0127] 训练样本集获取模块602,用于获取训练样本集;训练样本集中的每个训练样本包括用户身份属性和对应预设分类条件特征的特征值。\n[0128] 训练样本集是用于训练决策树分类器的训练样本的集合,其中的每个训练样本包括用户身份属性和预设分类条件特征各自对应的特征值,且预设分类条件特征的种类数为两个以上。用户身份属性为合法用户和非法用户中的一种,分别表示相应的训练样本是通过或未通过身份验证的样本数据。训练样本集中既存在用户身份属性为合法用户的训练样本,也存在用户身份属性为非法用户的训练样本。\n[0129] 在一个实施例中,预设分类条件特征可以包括但不限于是否有好友辅助验证,参与好友辅助验证且辅助验证通过的好友个数是否超过预设个数阈值,是否有正确的历史密码数据、正确的历史密码数据的量化分数是否超过第一预设分数阈值、是否有正确的账号常用地信息、正确的账号常用地信息的量化分数是否超过第二预设分数阈值,用户是否处于国外异地和密码变更次数是否在预设次数范围内中的至少两种。特征值是相应的预设分类条件特征的具体取值,但并非限定其必须用数值表示。\n[0130] 根结点训练模块604,用于根据一种预设分类条件特征确定根结点处的分类条件,根据根结点处的分类条件将训练样本集中的训练样本进行分类,获得对应根结点的孩子结点的分类子集;将根结点的孩子结点作为当前结点。\n[0131] 对决策树的训练从根结点开始,根结点训练模块604具体用于根据训练样本集中的训练样本的多种预设分类条件特征中选择的一种来确定根结点处的分类条件。最终训练获得的决策树分类器包括若干结点,其中非叶结点处对应有分类条件,而叶结点处则对应有用户身份分类结果。\n[0132] 确定根结点处的分类条件后,根结点训练模块604可用于根据根结点处的分类条件,或者依据用于确定根结点处的分类条件的预设分类条件特征来将训练样本集中的训练样本进行分类,从而获得对应根结点的孩子结点的分类子集,根结点的每个孩子结点对应一个分类子集。这样获得的每个分类子集中的训练样本的对应用于确定根结点处的分类条件的预设分类条件特征的特征值都相同。\n[0133] 在一个实施例中,根结点训练模块604可用于先根据训练样本集中用户身份属性为合法用户和非法用户的训练样本的数量来计算决策信息熵,然后计算训练样本集中每种预设分类条件特征的每种特征值所对应的分类信息熵并据以计算平均信息期望,然后再用决策信息熵减去平均信息期望来计算信息增益,根据信息增益最大的预设分类条件特征来确定根结点处的分类条件。\n[0134] 在一个实施例中,根结点训练模块604可用于统计训练样本集中每种预设分类条件特征的每种特征值所对应的用户身份属性为合法用户的训练样本的数量,根据训练样本集中对应统计的数量最多的特征值所对应的预设分类条件特征来确定根结点处的分类条件。本实施例中,根结点训练模块604用于在训练样本集的范围内,统计每种预设分类条件特征的每种特征值所对应的用户属性为合法用户的训练样本的数量,对应统计的数量最多的特征值所对应的预设分类条件特征具有更好的识别出合法用户的性能。这里选择预设分类条件特征时倾向于能够更好的识别出合法用户的预设分类条件特征,这样根据对应统计的数量最多的特征值所对应的预设分类条件特征来确定根结点处的分类条件,使得根结点处的分类条件能够更好地区分出合法用户。\n[0135] 当前结点是指当前要训练的结点,将根结点作为当前结点是对当前结点赋初值,从而便于对当前结点进行循环处理。\n[0136] 内部结点训练模块606,用于根据另一种预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集;还用于将当前结点的孩子结点作为当前结点,继续执行根据另一种预设分类条件特征确定当前结点处的分类条件,根据当前结点处的分类条件对当前结点所对应的分类子集中的训练样本进行分类,获得对应当前结点的孩子结点的分类子集,直至当前结点所对应的分类子集中各个训练样本的相同的预设分类条件特征所对应的特征值分别相同或者当前结点的层数达到指定层数。\n[0137] 另一种预设分类条件特征是指区别于用于确定当前结点所对应的当前路径中的各个结点处的分类条件的预设分类条件特征的预设分类条件特征。当前结点所对应的当前路径是指从根结点开始到当前结点的路径,若当前结点为根结点,则当前结点所对应的当前路径为根结点本身。内部结点训练模块606用于根据另一种预设分类条件特征确定当前结点处的分类条件后,再依据当前结点处的分类条件或用于确定当前结点处的分类条件的预设分类条件特征来将当前结点所对应的分类子集分类,从而获得对应当前结点的孩子结点的分类子集,当前结点的每个孩子结点对应一个分类子集。这样获得的每个分类子集中的训练样本的对应用于确定根结点处的分类条件的预设分类条件特征的特征值都相同。\n[0138] 在一个实施例中,内部结点训练模块606可用于对于当前结点所对应的当前路径,除去已用于确定当前路径中的各个结点处的分类条件的预设分类条件特征后,得到剩余预设分类条件特征;然后根据当前结点所对应的分类子集中用户身份属性为合法用户和非法用户的训练样本的数量来计算对应当前结点的决策信息熵,然后计算当前结点所对应的分类子集中每种剩余预设分类条件特征的每种特征值所对应的分类信息熵并据以计算平均信息期望,然后再用当前结点所对应的决策信息熵减去该平均信息期望来计算信息增益,从而根据信息增益最大的剩余预设分类条件特征来确定当前结点处的分类条件。\n[0139] 在一个实施例中,内部结点训练模块606可用于确定当前结点所对应的除去已用于确定当前路径中的结点处的分类条件的预设分类条件特征的剩余预设分类条件特征,统计当前结点所对应的分类子集中每种剩余预设分类条件特征的每种特征值所对应的用户身份属性为合法用户的训练样本的数量,根据当前结点所对应的统计的数量最多的特征值所对应的剩余预设分类条件特征来确定当前结点处的分类条件。\n[0140] 具体地,对于当前结点所对应的当前路径,内部结点训练模块606用于除去已用于确定当前路径中的各个结点处的分类条件的预设分类条件特征后,得到剩余预设分类条件特征。内部结点训练模块606用于在当前结点所对应的分类子集的范围内,统计每种剩余预设分类条件特征的每种特征值所对应的用户属性为合法用户的训练样本的数量,这样在当前结点所对应的分类子集的范围内,对应统计的数量最多的特征值所对应的剩余预设分类条件特征具有更好的识别出合法用户的性能。内部结点训练模块606用于根据对应统计的数量最多的特征值所对应的剩余预设分类条件特征来确定当前结点处的分类条件,使得当前结点处的分类条件能够更好地区分出合法用户。\n[0141] 确定当前结点处的分类条件后,需要进一步训练当前结点的孩子结点,将当前结点的每个孩子结点分别作为当前结点进行训练。内部结点训练模块606用于判断是否结束循环,若对于当前结点所对应的分类子集中的训练样本,对应相同的预设分类条件特征的特征值分别是相同的,说明当前结点所对应的分类子集中的训练样本已经无法依据预设分类条件特征进行进一步分类,当前结点为叶结点。或者若当前结点的层数达到指定层数,则无需再训练内部结点,当前结点为叶结点。当前结点的层数等于当前结点所对应的当前路径中结点的数量。\n[0142] 叶结点训练模块608,用于根据当前结点所对应的分类子集中对应最多训练样本的用户身份属性确定当前结点处的用户身份分类结果,获得决策树分类器。\n[0143] 若当前结点所对应的分类子集中各个训练样本的相同的预设分类条件特征所对应的特征值分别相同或者当前结点的层数达到指定层数,则跳出循环,叶结点训练模块608用于确定当前结点为叶结点,统计当前结点所对应的分类子集中用户身份属性为合法用户的训练样本的数量,从而计算该统计的数量占当前结点所对应的分类子集中训练样本总数的比重是否超过0.5。若是则确定当前结点处的用户身份分类结果为合法用户或者身份验证通过,若否则确定当前结点处的用户身份分类结果为非法用户或者身份验证失败。最终获得包括根结点、内部结点和叶结点所组成的若干判断路径的决策树分类器。\n[0144] 上述分类器训练装置,利用训练样本从决策树分类器的根结点处开始逐层训练直到叶结点,从根结点到叶结点的每个非叶结点处的分类条件根据训练样本的其中一种预设分类条件特征确定,而叶结点则体现用户身份分类结果。这样训练获得的决策树分类器从根结点到叶结点的任意一条判断路径可以体现多种预设分类条件特征之间的相关性,分类性能好。在使用该决策树分类器进行身份验证时,不仅考虑用户提交的每种用户证据数据各自的对错,还会考虑多种用户证据数据之间的相关性,身份验证结果准确性高。\n[0145] 如图7所示,在一个实施例中,训练样本集获取模块602包括身份验证数据样本获取模块602a、特征值提取模块602b和训练样本构建模块602c。\n[0146] 身份验证数据样本获取模块602a,用于获取用于训练分类器的身份验证数据样本,身份验证数据样本包括用户证据数据以及经过验证而确定的证据验证结果和身份判定结果。\n[0147] 身份验证数据样本是经过身份确认的身份验证数据的样本,身份验证数据是指用户身份验证的数据。身份验证数据样本包括用户证据数据,该用户证据数据是用户通过用户终端提交的用于证明自己是合法用户的证明数据。\n[0148] 身份验证数据样本还包括经过人工和/或自动的验证而确定的证据验证结果和身份判定结果。证据验证结果是对身份验证数据样本中的用户证据数据进行验证后给出的验证结果,表示该用户证据数据是正确的或错误的。身份判定结果是事先经过身份验证而确定的表示提供该用户证据数据的用户是合法用户或非法用户的判断结果。\n[0149] 特征值提取模块602b,用于根据用户证据和证据验证结果提取对应预设分类条件特征的特征值。\n[0150] 对于每个身份验证数据样本,特征值提取模块602b用于根据其所包括的用户证据数据和证据验证结果来提取对应预设分类条件特征的特征值。这里提取的预设分类条件特征的种类与用户身份验证数据样本所包括的用户证据数据的种类相关。一个用户证据数据可以提取对应多个预设分类条件特征的特征值。\n[0151] 训练样本构建模块602c,用于根据身份验证数据样本所对应的提取的特征值和身份判定结果构建训练样本集中的训练样本。\n[0152] 训练样本构建模块602c用于对于每个身份验证数据样本提取对应预设分类条件特征的特征值,将每个身份验证数据样本所对应的提取的特征值作为每个训练样本的特征值,并将相应的身份判定结果作为每个训练样本的用户身份属性,这样就获得了包括若干训练样本的训练样本集。\n[0153] 本实施例中,从用户证据数据中提取对应预设分类条件特征的特征值以构成训练样本,因决策树分类器需要在每个非叶结点处判断分类,训练样本比身份验证数据样本更适合用来训练获得决策树分类器,而且可以从身份验证数据样本中挖掘出更多细节信息,从而使得决策树分类器的分类结果更为准确。\n[0154] 如图8所示,在一个实施例中,该分类器训练装置还包括第一判断路径调整模块\n609,包括检验样本集获取模块609a、身份判定结果确定模块609b、准确率计算模块609c和调整执行模块609d。\n[0155] 检验样本集获取模块609a,用于获取检验样本集;检验样本集中的每个检验样本包括用户身份属性和对应预设分类条件特征的特征值。\n[0156] 检验样本用来检验决策树分类器的分类性能,检验样本集获取模块609a用于当经检验样本检验判定决策树分类器的分类性能不佳时对决策树分类器进行剪枝,剪枝是通过修改决策树的判断路径以提高决策树分类准确性的过程。检验样本集中的每个检验样本具有与训练样本集中的训练样本匹配的形式,包括用户身份属性和对应预设分类条件特征的特征值,优选检验样本不属于训练样本集。\n[0157] 在一个实施例中,检验样本集获取模块609a还用于获取用于检验决策树分类器的身份验证数据样本,其包括用户证据数据以及经过验证而确定的证据验证结果和身份判定结果;根据该用户证据和该证据验证结果提取对应预设分类条件特征的特征值;根据用于检验决策树分类器的身份验证数据样本所对应的提取的特征值和身份判定结果构建检验样本集中的检验样本。\n[0158] 身份判定结果确定模块609b,用于根据检验样本集中的每个检验样本的特征值,从决策树分类器的根结点处的分类条件开始逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应每个检验样本的身份判定结果。\n[0159] 检验决策树的过程是在知晓检验样本的用户身份属性的前提下,利用决策树对检验样本分类,判断其是否与已知的用户身份属性一致,若是则说明分类正确,若不一致则分类错误,以达到检验决策树分类器性能的目的。\n[0160] 具体地,身份判定结果确定模块609b用于对每个检验样本进行分类,依据该检验样本的对应预设分类条件特征的特征值,先根据决策树分类器的根结点处的分类条件来判断分类,到达根结点的一个孩子结点,然后再依据根结点的孩子结点处的分类条件对该检验样本进行判断分类,到达第三层的结点,依此类推。直至叶结点时若找到一条叶结点处的身份分类结果为合法用户的判断路径,则身份判定结果确定模块609b用于确定该检验样本的身份判定结果为合法用户或者身份验证通过。若无法找到任何一条叶结点处的身份分类结果为合法用户的判断路径,则身份判定结果确定模块609b用于确定该检验样本的身份判定结果为非法用户或者身份验证未通过。\n[0161] 准确率计算模块609c,用于根据检验样本集中的检验样本所对应的身份判定结果和用户身份属性计算决策树分类器的各个判断路径的准确率。\n[0162] 具体地,准确率计算模块609c用于判断检验样本集中的每个检验样本的身份判定结果是否与该检验样本的用户身份属性匹配,若匹配则记录用于判断该检验样本的身份判定结果的判断路径判断正确一次,若不匹配则记录用于判断该检验样本的身份判定结果的判断路径判断错误一次,如此累积记录。然后准确率计算模块609c用于用一条判断路径的判断正确的总次数除以该条判断路径的判断正确和判断错误的次数的和,就可以计算获得该条判断路径的准确率,如此计算获得各个判断路径的准确率。\n[0163] 调整执行模块609d,用于调整准确率低于预设准确率阈值的判断路径中的结点。\n[0164] 准确率阈值是事先设定的用于判断决策树分类器的某条判断路径是否达到分类性能标准的量化数值。具体地,调整执行模块609d用于对于准确率低于预设准确率阈值的判断路径,删除其叶结点而将该删除的叶结点的双亲结点作为新的叶结点,从而根据新的叶结点所对应的新的分类子集中对应最多训练样本的用户身份属性来确定该新的叶结点处的用户身份分类结果,这相当于将两条判断路径合并。调整执行模块609d也可以用于在剪枝后重新计算合并后的判断路径的准确率,若低于预设准确率阈值则继续调整该判断路径。在其它实施例中,调整执行模块609d还可以用于将准确率低于预设准确率阈值且其叶结点邻近的多条判断路径合并,来达到调整准确率低于预设准确率阈值的判断路径中的结点的目的。\n[0165] 本实施例中,利用检验样本来检验决策树分类器的分类性能,从而在决策树分类器的某条判断路径分类性能较低时对其进行修正,以提高整个决策数分类器的分类准确性。\n[0166] 如图9所示,在一个实施例中,该分类器训练装置还包括:第二判断路径调整模块\n610,用于获取用户反馈信息,根据反馈信息调整决策树分类器中与反馈信息相关的判断路径中的结点。\n[0167] 第二判断路径调整模块610具体可以用于删除该判断路径的叶结点而将该删除的叶结点的双亲结点作为新的叶结点,从而根据新的叶结点所对应的新的分类子集中对应最多训练样本的用户身份属性来确定该新的叶结点处的用户身份分类结果。\n[0168] 如图10所示,在一个实施例中,提供了一种身份验证系统,该系统包括身份验证请求接收模块1002、证据验证模块1004、待验证特征值提取模块1006和身份验证结果确定模块1008。\n[0169] 身份验证请求接收模块1002,用于接收用户终端发来的携带有待验证用户标识和待验证用户证据数据的身份验证请求。\n[0170] 当真实用户丢失用于唯一标识出其身份的用户标识所对应的登录口令后,可以在用户终端上通过用户标识管理方所提供的申诉页面提供待验证用户标识,并自主或在申诉页面的引导下提供用于证明其为其待验证用户标识的真实拥有者的待验证用户证据数据。\n从而用户终端将携带有待验证用户标识和待验证用户证据数据的身份验证请求发送出去,身份验证请求接收模块1002用于接收该身份验证请求并据以进行身份验证。用户标识可为账号,比如登录即时通信客户端的账号。\n[0171] 证据验证模块1004,用于获取对应待验证用户标识的用户数据,根据获取的用户数据对待验证用户证据数据进行验证而获得证据验证结果。\n[0172] 预先对应待验证用户标识存储了用户数据,证据验证模块1004用于在进行身份验证时凭借该待验证用户标识而获取相应的用户数据,来对身份验证请求中所携带的待验证用户证据数据进行验证,以获得表示待验证用户证据数据正确或错误的证据验证结果。\n[0173] 待验证特征值提取模块1006,用于根据待验证用户证据数据和获得的证据验证结果提取对应预设分类条件特征的待验证特征值。\n[0174] 待验证特征值提取模块1006用于根据待验证用户证据数据和其所对应的证据验证结果,来提取相应的对应预设分类条件特征的待验证特征值。这里提取的预设分类条件特征的种类与待验证用户证据数据的种类相关。一个待验证用户证据数据可以提取对应多个预设分类条件特征的待验证特征值。\n[0175] 身份验证结果确定模块1008,用于从决策树分类器的根结点处的分类条件开始,根据对应预设分类条件特征的待验证特征值逐层判断分类直至叶结点,根据该叶结点处的用户身份分类结果确定对应待验证用户标识的身份验证结果。\n[0176] 具体地,身份验证结果确定模块1008用于根据对应预设分类条件特征的待验证特征值,先根据决策树分类器的根结点处的分类条件来判断分类,到达根结点的一个孩子结点,然后再依据根结点的孩子结点处的分类条件来判断分类,到达第三层的结点,依此类推。直至叶结点时若找到一条叶结点处的身份分类结果为合法用户的判断路径,则身份验证结果确定模块1008用于确定该次身份验证的身份验证结果为合法用户或者身份验证通过。若无法找到任何一条叶结点处的身份分类结果为合法用户的判断路径,则身份验证结果确定模块1008用于确定该次身份验证的身份验证结果为非法用户或者身份验证未通过。\n[0177] 如图11所示,在一个实施例中,该身份验证系统还包括分类器训练装置1010,该分类器训练装置1010包括上述任一实施例中的分类器训练装置所包括的模块。\n[0178] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。\n[0179] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
法律信息
- 2019-08-13
专利权的转移
登记生效日: 2019.07.25
专利权人由腾讯科技(深圳)有限公司变更为腾讯科技(深圳)有限公司
地址由518000 广东省深圳市福田区振兴路赛格科技园2栋东403室变更为518057 广东省深圳市南山区高新区科技中一路腾讯大厦35层
专利权人变更为腾讯云计算(北京)有限责任公司
- 2019-01-11
- 2016-11-16
实质审查的生效
IPC(主分类): G06F 21/31
专利申请号: 201410242769.4
申请日: 2014.06.03
- 2016-01-20
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-12-25
|
2012-06-06
| | |
2
| |
2012-01-18
|
2011-09-20
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |