多层聊天检测和分类的制作方法

文档序号:7774047阅读:244来源:国知局
多层聊天检测和分类的制作方法
【专利摘要】本发明公开多层聊天检测和分类。这里呈现的实施例提供一种计算机实现的方法的系统、方法和制品,来监视在在线多用户环境中交互的用户。对于由用户在会话期间发送的每条消息,通过第一分类器确定所述消息对于所述在线多用户环境是可接受的还是不可接受的。如果满足针对用户的会话的触发条件,就通过第二分类器确定是否将所述会话上报至仲裁人以供复查。
【专利说明】多层聊天检测和分类
【技术领域】
[0001]本发明总体涉及有效地将聊天分类为可接受的或者不可接受的,以保护在线环境中访客的安全。
【背景技术】
[0002]在线聊天可以指因特网(Internet)上提供基于文本的消息从发送者到接收者的直接实时传输的任何种类的通信。在线聊天可以是点到点的通信或者从一个发送者到一个或多个接收者的多播通信。聊天可以是在线社区、论坛、web会议服务或者各种其他在线的、基于文本的通信中任何一种通信的特征。
[0003]许多在线社区具有规则或者规定以在聊天会话中避免误解以及简化用户之间的通信。这些规定随着社区的变化而变化。这些规定希望保护社区和它们的访客免受欺凌、猥亵的行为、骚扰、暴力、和众多不希望或者不恰当的活动。多数聊天社区监视在线聊天以确保其符合这些规定。仲裁人具有这样的任务:监视聊天以确定具体聊天消息的内容,从而查明用户是否违反了社区规定。由于多数在线社区中聊天的数量的原因,监视者直接监视所有聊天通信是不现实和昂贵的。
[0004]经常使用软件来过滤可能是冒犯的并且可能需要仲裁人进一步审查的聊天。最常用以监视聊天的软件过滤器是贝叶斯(Bayesian)过滤器。贝叶斯过滤器的工作是通过使用对人类创建的符记(token)字典的直接匹配来计算不恰当的并且被标志以供仲裁人进一步检查的聊天的概率。这些符记通常是字、短语或者其他类别。这具有易于预测和易于直接管理的优点,但却损失了准确度和效率。此过滤器不能够区别某些术语或短语的良性使用与其他对这些相同术语或短语的更不恰当的使用。由于很多短语具有多个或者隐藏的含义,此过滤器谨慎地向仲裁人传递这些聊天消息。很有可能在聊天会话期间的某一时间点上,多数用户将说出一些话,这些话将会触发聊天过滤器标记聊天消息并且向仲裁人通知该活动。加上来自聊天过滤器的误报发言的数目,仲裁人很快就被复查聊天会话的请求淹没。
[0005]聊天仲裁人被请求确定与特定访客聊天会话相关联的许多聊天语句的意图。通常这涉及阅读聊天会话的相当一部分历史。仲裁人必须确定在会话中作出该聊天的访客的意图以及该聊天会话是“恶意的并且不可接受”还是“恶意的但是可接受”。最终仲裁人必须确定触发复查的聊天会话是否应该被忽视,或者是否应该对访客账号采取某些动作。整个过程极大地依赖于仲裁人的干预。仲裁人的干预对公司的人力施加了巨大的负担,代价昂贵。当前的过滤技术需要被提升从而只对仲裁人上报确实违反社区规定并且与可能犯了小错并将被原谅的聊天会话相反的不可接受的聊天会话。

【发明内容】

[0006]这里呈现的实施例包括一种用于监视在在线多用户环境中交互的用户的方法。该方法一般可以包括:对于由第一用户在会话期间发送的每条消息,通过第一分类器确定将所述消息标注为对于在线多用户环境是可接受的还是不可接受的。如果满足针对用户的会话的触发条件,确定是否将所述会话上报至仲裁人以供复查。
[0007]其他实施例包括但不限于:一种计算机可读介质,其包括使得处理单元能够实现本公开方法的一个或多个方面的指令;以及被配置为实现本公开方法的一个或多个方面的具有处理器、存储器和应用程序的系统。
【专利附图】

【附图说明】
[0008]为使得以上记载的方面被获得并且能够被详细地理解,上文简要概括的、本发明的实施例的更加具体的描述可以通过参考附图来得到。
[0009]然而要注意的是,附图仅示出了本发明的典型实施例,并且因此不应被认为是对本发明范围的限制,因为本发明可以准许其它等同有效的实施例。
[0010]图1示出了根据本公开的某些实施例的聊天环境的示例。
[0011]图2示出了根据本公开的某些实施例的多级聊天检测和分类系统的示例概述。
[0012]图3示出了根据本公开的某些实施例的聊天服务器计算系统的示例。
[0013]图4示出了根据本公开的某些实施例的用于级别零聊天检测和分类的方法。
[0014]图5示出了根据本公开的某些实施例的用于级别一聊天检测和分类的方法。
[0015]图6示出了根据本公开的某些实施例的用于级别二聊天检测和分类的方法。
[0016]图7是根据本公开的某些实施例为分类器提供对训练数据的更新的方法。
[0017]图8是根据本公开的某些实施例的用于训练级别一聊天分类器的方法。
[0018]图9是根据本公开的某些实施例的用于训练级别二聊天分类器的方法。
[0019]图10示出了根据本公开的某些实施例的训练级别二聊天分类器的示例。
【具体实施方式】[0020]鍵
[0021]这里呈现的实施例提供用于评估是否将聊天会话上报给聊天社区的仲裁人的技术。可以使用多个分类器将聊天会话分类。在一个实施例中,第一级别分类器评估个体的聊天消息。例如,第一分类器可以确定是将聊天会话中的每个个体消息评为“不可接受的”还是“可接受的”。一旦被评定,聊天会话可以被监视其是否满足触发条件。例如,在会话中具有最小数目的聊天消息之后,聊天消息不可接受与可接受的比例可以触发聊天会话向第二分类器的上报。第二分类器评估“不可接受的”消息的汇总以确定聊天会话是否应该被仲裁人复查(或者,尽管包含一些被第一分类器标注为“不可接受的”消息,聊天会话是否是仲裁人在复查之后可能不会采取任何行动的会话)。触发器还可以是不恰当聊天消息的数量或者总数、特别恶意的聊天消息、或者其他可能性。这种方式减少了被仲裁人上报的会话的数目并且帮助更好地识别被准予某一仲裁人动作的聊天会话。
[0022]在一个实施例中,分类器是贝叶斯过滤器。贝叶斯过滤器通过将符记的使用与不恰当的聊天进行关联来工作。这些符记可以是字、二元字组、三元字组、大写形式的存在或位置、奇怪的标点符号、混合字符、或者众多其他表示。贝叶斯分类器可以被训练为:根据出现于聊天消息中的、所辨认的不恰当内容的数量,辨认聊天消息为不可接受的概率。不恰当的消息可以涉及骚扰、欺凌、暴力、修整、或者其他各种不恰当的行为(对于在线通信或者其他通信而言)。[0023]贝叶斯分类器被训练来辨认什么是恰当的行为,什么不是恰当的行为,从而使分类器变得有效。善意聊天与恶意聊天的比例被用于提供级别一分类器的初始训练。针对善意和恶意训练集中的每个特征计算条件概率。例如,经过训练后,短语hello (喂)可能有42%的概率为不可接受的聊天消息的一部分。短语“up your”(去你的)可能有72%的概率为不可接受的聊天消息的一部分。这些概率仅仅作为示例而实际的概率将取决于所供应的训练数据集。
[0024]使用先前被仲裁人复查的聊天会话来训练级别二贝叶斯分类器。在这种情形下,会话可以被标注为需要(或者不需要)仲裁人干预的会话。这么做使得聊天会话的历史能够提供什么应该被仲裁人复查的积极和消极的示例。在一个实施例中,这样标注的聊天会话被供应给级别一分类器,该分类器对会话中的每个聊天消息指派一个“可接受的”或者“不可接受的”的评定。被标注为“不可接受的”的聊天消息的集合提供积极或者消极的训练示例(取决于仲裁人在复查给定的会话之后是否采取动作)。注意,在训练第二分类器的过程中被评定为“不可接受的”那些聊天消息的用处为:在不产生不必要的偏见的同时,提供聊天有多恶意或者多不恰当的测量。就是说,虽然所有被复查的聊天会话可能包括一些被标注为“不可接受的”消息,并不是所有的会话被仲裁人进行动作。通过使用给定的聊天会话中的那些“不可接受的”消息,级别二分类器可以被训练以在仲裁人的干预之前确定聊天会话意欲有多恶意。一旦被训练,级别二分类器可以将聊天会话评估为需要向仲裁人上报的会话或者不需要仲裁人复查的会话。
[0025]下面,参考本发明的实施例。然而,应当理解本发明不限于具体描述的实施例。取而代之,无论是否涉及不同的实施例,以下特征和元素的任何组合被构想来实现并实践本发明。此外,尽管本发明的实施例相对于其它可能的解决方案和/或现有技术可以获得优点,但是,是否通过给定实施例来获得特定优点不是对本发明的限制。因而,以下的方面、特征、实施例和优点仅仅是说明性的并且除非在(一个或多个)权利要求中明确记载,否则不被认为是所附权利要求的元素或限制。同样地,对“本发明”的引用不应理解为是对这里公开的任何创建性主题的概括并且除非在(一个或多个)权利要求中明确记载,否则不应认为是所附权利要求的元素或限制。
[0026]如本领域技术人员将理解的那样,本发明的方面可被体现为系统、方法或者计算机程序产品。于是,本发明的方面可以采取整个硬件实施例、整个软件实施例(包括固件、驻留软件、微代码等等)或者组合了软件与硬件方面的实施例的形式,软件和硬件方面在这里可总体地称为“电路”、“模块”或者“系统”。此外,本发明的方面可以采取在一个或多个计算机可读介质(在其上具有计算机可读程序代码)中体现的计算机程序产品的形式。
[0027]可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如(但不限于)电、磁、光、电磁、红外或半导体的系统、装置或设备或者前面的任何合适组合。计算机可读存储介质的更具体示例(非穷尽列表)包括以下项:具有一条或多条线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EEPROM或闪存)、光纤、便携式致密盘只读存储器(CD-ROM)、光存储设备、磁存储设备或者前面的任何合适组合。在本文的上下文中,计算机可读存储介质可以是可包含或存储供指令执行系统、装置或设备使用或者与指令执行系统、装置或设备结合使用的程序的任何有形介质。[0028]计算机可读信号介质可以包括例如基带中的或者作为载波一部分的其中含有计算机可读程序代码的传播数据信号。这样的传播信号可以采取多种形式中的任何形式,包括但不限于电磁、光或其任何合适组合。计算机可读信号介质可以是任何计算机可读介质,这些可读介质不是计算机可读存储介质并且可以传送、传播或输送供指令执行系统、装置或设备使用的或与指令执行系统、装置或设备结合使用的程序。
[0029]可以利用任何适当的介质来发送包含在计算机可读介质上的程序代码,这些适当的介质包括但不限于:无线、有线、光线电缆、RF等等,或者前面的任何合适组合。
[0030]可以以一种或多种编程语言的任何组合来编写用于执行本发明各方面的操作的计算机程序代码,所述一种或多种编程语言包括诸如Java、Smalltalk、C++等的面向对象的编程语言以及诸如“C”编程语言或类似编程语言之类的传统进程编程语言。程序代码可以作为独立软件包整个在用户的计算机上、部分地在用户的计算机上运行,或者部分在用户的计算机上部分在远程计算机上运行,或者整个在远程计算机或服务器上运行。在后一种场景中,远程计算机可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以进行到外部计算机的连接(例如,利用因特网服务提供商通过因特网)。
[0031]下面参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或框图来描述本发明的各方面。将知道,流程图图示和/或框图的每个块以及流程图图示和/或框图中块的组合可以通过计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机、专用计算机或者其它可编程数据处理装置的处理器,以产生一种机器,从而使得经由计算机或其它可编程数据处理装置的处理器执行的指令创建用于实现一个或多个流程图和/或框图块中指定的功能/动作的装置。
[0032]这些计算机程序指令还可以被存储在计算机可读介质中,该可读介质可以指导计算机、其它可编程数据处理装置或其它设备以特定方式作用,以使得存储在计算机可读介质中的指令产生制造品,该制造品包括实现一个或多个流程图和/或框图块中指定的功能/动作的指令。
[0033]计算机程序指令还可以被加载到计算机、其它可编程数据处理装置或其它设备上以使得一系列操作步骤在计算机、其它可编程装置或其它设备上被执行,来产生计算机实现的处理,从而使得在计算机或其它可编程装置上执行的指令提供用于实现一个或多个流程图和/或框图块中指定的功能/动作的处理。
[0034]可以通过云计算基础设施向终端用户提供本发明的实施例。云计算一般指将可扩展的计算资源配设为网络上的服务。更正式地,云计算可以被定义为一种提供计算资源和其底层技术架构(例如,服务器、存储装置、网络)之间的抽象的计算能力,使能对可配置的计算资源的共享池的方便、按需的网络访问,该可配置的计算资源可以在最小的管理劳动或服务提供商互动下被快速地配设和释放。因而,云计算使得用户能够在“云”中访问虚拟的计算资源(例如,存储、数据、应用以及甚至完全虚拟化的计算系统),而不需要考虑被用来提供这些计算资源的底层物理系统(或者这些系统的位置)。
[0035]通常,云计算资源以使用付费的方式向用户提供,其中用户只被收取实际使用的计算资源(例如,用户或者用户例示的若干虚拟化系统消费的存储空间的量)的费用。用户可以通过网络在任何时间并且从任何地方访问居于云中的任何资源。在本发明的上下文中,用户可以访问云中可用的应用(例如,聊天社区)或者相关的数据。例如,聊天分类引擎可以在云中的计算系统上执行并且提供对聊天的多层检测和分类。在这种情形下,聊天分类引擎可以将用户聊天消息分类并且将已分类的聊天会话存储在云中的存储位置处。这么做使得用户可以从依附于连接到云的网络(例如,因特网)的任何计算系统中访问此信息。
[0036]附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。就此而言,流程图和框图中的每个块可以代表一个模块、区段或者部分代码,该部分代码包括用于实现(一个或多个)具体逻辑功能的一个或多个可执行指令。还应当注意:在一些替换的实现中,块中标示的功能可以不以图中标示的顺序发生。例如,显示为连续的两个块实际上可以基本同时被执行,或者依据所涉及到的功能,有时块可以被逆序或者乱序地执行。还要注意,框图和/或流程图图示的每个块以及框图和/或流程图图示中块的组合可以通过如下方式实现:执行特定的功能或者行为的基于专用硬件的系统,或者专用硬件与计算机指令的组合。
[0037]图1示出了根据本发明的一个实施例的交互式在线环境的示例。如图所示,聊天环境100包括网络160,其连接服务器计算系统105、客户端计算机140和150以及移动设备125。服务器计算系统105具有web服务器120、多用户环境应用115以及数据库110。客户端计算机150具有web浏览器155,并且客户端计算机140具有诸如视频游戏145之类的客户端应用。移动设备125具有聊天应用135和移动浏览器130。
[0038]如图所示,客户端计算机150在诸如因特网之类的网络160上经由web浏览器155在聊天会话中通信。聊天会话是依附于数据库Iio的、并由服务器计算系统105上的web服务器120主持的多用户环境应用115的一部分。还如图1中所示,客户端计算机140执行诸如视频游戏145之类的客户端应用来参与在服务器计算系统105上主持的多用户环境应用115。在另一示例中,移动设备125可以使用聊天应用135或者移动浏览器130来参与在服务器计算系统105上主持的聊天会话。所选取的聊天环境100是用户在聊天社区中参与的多种可能的聊天环境的一个小的说明示例。聊天环境100和多层聊天检测和分类可以在平板或者其他设备上运行。
[0039]图2示出了用于根据本发明的一个实施例的多层聊天检测和分类系统200的示例分类引擎210。分类引擎210具有级别零聊天分类器215、级别一聊天分类器220 (或者更简单地,第一分类器)以及级别二聊天分类器225 (或者第二分类器)。在一个实施例中,第一分类器220和第二分类器225为贝叶斯过滤器。分类引擎210接收聊天消息205并且第一分类器220确定将个体的聊天消息标注为可接受的聊天230还是不可接受的聊天235。而第二分类器225确定聊天会话是否应该上报至仲裁人以进一步复查。
[0040]级别零聊天分类器215确定进入分类引擎210的、到来的聊天205是否包含某些黑名单项目。黑名单项目使得级别零聊天分类器215向仲裁人上报不可接受的聊天235。不包含黑名单上的关键字的聊天消息被路由到通过级别一聊天分类器220分类。被级别一聊天分类器220标注为可接受的聊天消息被输出为可接受的聊天230。被级别一聊天分类器220发现不可接受的聊天被输出为不可接受的聊天235。如果有触发事件,聊天会话被导向级别二聊天分类器225。级别二聊天分类器225确定包含被级别一聊天分类器220分类的聊天消息的聊天会话是否应该被上报至仲裁人。就是说,级别一分类器220寻找聊天消息的元素以确定为“恶意”聊天消息的概率。如果达到阈值,级别二聊天分类器225确定此聊天会话的概率,或者更具体地,该会话中被级别一聊天分类器220分类为不可接受的聊天消息为应该被仲裁人复查的聊天会话的概率。
[0041]图3示出了根据一个实施例的聊天服务器计算系统300的示例。如图所示,服务器计算系统305包括CPU (中央处理单元)350、NIC (网络接口卡)355、GPU (图形处理单元)360、存储器330、存储装置310和总线375。服务器计算系统305被连接到显示器370和输入/输出(I/O)设备365。服务器计算系统305被包括以代表多种计算系统,包括例如塔式服务器、机架式服务器、桌面计算机、膝上型计算机、平板、操纵台游戏系统(console gamesystem)或者能够向其他设备提供聊天服务的多种其他的计算设备。可以在显示设备370(例如,IXD、LED或者CRT显示屏)上查看聊天服务,并且可以使用输入设备365 (例如,键盘、鼠标和/或控制器)来控制聊天服务。
[0042]CPU350和GPU360是执行指令、逻辑和数学处理的可编程逻辑设备,并且它们可以代表一个或多个CPU或GPU、多核CPU或GPU等等。存储器330代表充分大的足够保存以下各项的任何存储器,这些项包括多用户虚拟环境应用347、聊天程序335、web服务器337、聊天分类引擎345和多个用户会话容器340。聊天分类引擎345是如图2中所示的相同的聊天分类引擎210。web服务器337是如图1中所示的相同的web服务器110。存储器330可以是一个存储设备或者多个存储设备的组合,包括随机存取存储器(例如,DRAM模块)、非易失性或者备份存储器(例如,可编程存储器或闪存、只读存储器等等)。
[0043]存储装置310存储供聊天分类引擎345使用的数据库320和应用程序。存储装置310被包括以代表:硬盘驱动器、固态驱动器(SSD)、闪存设备、光媒介(例如,⑶/DVD/Blu-Rav盘)等等。存储设备可以是计算设备305的内部或者诸如NAS、SAN、云或其他存储环境之类的外部设备。如图所示,数据库320包括训练数据325、测试数据326、聊天容器328以及标注为二元字组和三元字组327的字库。
[0044]在一个实施例中,用户正在参与多用户虚拟环境应用347。多用户虚拟环境(MUVE) 347是基于多媒体的娱乐的普遍形式并且不仅可以在在线游戏中发现MUVE347,还可以在用户论坛中发现MUVE347,并且MUVE347还支持学习。MUVE347通常是某一种类的虚拟世界。人们创建了用户身份,当他们登入服务器时可以使用这种用户身份。MUVE347可以针对人群、特定的兴趣、或者甚至是不明确的。MUVE应用347经由聊天程序335向访客供给聊天服务。例如,用户可以通过键入MUVE应用347的聊天界面来启动聊天会话。在聊天会话中,用户交换消息。大部分时间,消息是恰当的。然而,有时消息是不恰当的。例如,在某些情形中人们将变得卑劣。但是在其他情形中,可能会发送更严重或者麻烦的消息。这些更严重或者麻烦的消息是分类器被配置为要上报的消息。聊天程序335将已输入的聊天消息送往被聊天分类引擎345获得的用户会话容器340。聊天分类引擎345通过聊天分类器的层次将聊天会话分类以确定用户会话容器340的聊天会话是否应该被上报至仲裁人。对于由级别二聊天分类器上报的聊天会话,仲裁人确定聊天会话是否是可接受的或者是否应该相对于给定用户采取某一动作。会话容器340中的聊天会话被保存在聊天容器328中。在一个实施例中,级别一和级别二分类器是贝叶斯过滤器。贝叶斯过滤器需要训练来有效地分类文本。在存储装置310中作为训练数据325和测试数据326存储的聊天会话被用于训练分类器。训练数据来自MUVE的聊天会话。聊天被手动地分为“可接受的”或者“不可接受的”消息的分类的示例以用于训练级别一分类器。使用先前由仲裁人复查的聊天会话来训练级别二分类器。更具体地,在一个实施例中,来自需要仲裁人干预的会话的聊天消息被级别一分类器评估。被级别一分类器标注为“不可接受的”消息的结果集合提供训练示例。相反地,来自被仲裁人复查的但是其中仲裁人没有采取行动的会话的聊天消息可以用于建立训练示例。具体地,来自这样会话的聊天消息可以被级别一分类器评估并且标注“不可接受的”的结果聊天消息提供消极的训练示例。训练数据有积极和消极的示例,这使得级别二分类器能够在准予仲裁人复查的聊天会话和虽然具有某些被分类为“不可接受的”消息但是不需要仲裁人干预的聊天会话之间进行区分。
[0045]图4示出了根据本发明的一个实施例的、用于向仲裁人上报不可接受聊天的方法400。级别零聊天检测和分类代表用于评估用户聊天消息的初始例外条款。就是说,级别零聊天分类器可以对应该总是接收来自仲裁人的某一注意或动作的字和短语进行模式匹配。如图所示,该方法开始于步骤410,其中用户进入聊天会话并且开始在MUVE应用347中通过聊天程序与其他用户通信。在一个实施例中,当用户进入聊天会话时,聊天分类引擎创建聊天容器(步骤415)。聊天容器捕获所有的聊天会话活动。随着聊天容器为聊天会话建立历史记录,级别零分类器评估到来的聊天。聊天与黑名单相比较,以确定聊天消息是否包含黑名单的词语或者短语(步骤420)。如果包含,聊天会话被上报至仲裁人以进一步复查(步骤425)。通过立即向仲裁人上报特别恶意或者不可接受的聊天,级别零分类器在聊天多重过滤过程中提供了早期的逃脱机制。另外,如果聊天消息不包含黑名单上的词语或者N元字组,聊天消息被送往级别一聊天分类器进行进一步评估(步骤430)。例如,检查二十五个字的聊天消息来看它是否包含任何来自黑名单的N元字组。若该聊天消息包含来自黑名单的N元字组,聊天会话被立即上报至仲裁人。
[0046]图5示出了根据本发明的一个实施例的用于将个体聊天消息中的元素分类的方法500。该方法开始于步骤505,其中级别一聊天分类器接受在用户聊天会话中生成的聊天消息(步骤510)。在一个实施例中,基于关键字或者符记的呈现,级别一分类器对聊天消息为不恰当的可能性作出概率性的确定。针对聊天消息为不恰当的概率性确定被存储为聊天会话中聊天消息的分类(步骤515)。在一个实施例中,贝叶斯分类器确定聊天消息是“恶意的”或者“不可接受的”。例如,级别一聊天分类器将对于包含咒骂或者性暗示并且符合在恶意聊天中统计发现的内容的阈值的聊天消息指派其为“恶意的”聊天的高概率。这样的聊天消息将被分类为“不可接受的”。
[0047]聊天消息通过级别一聊天分类器并且针对触发条件而被监视。聊天消息被检查以确定被分类为恰当的聊天的聊天消息的数目以及被分类为不恰当的聊天的聊天消息的数目。恶意的聊天对善意的聊天的比例与阈值数值进行比较。如果该数值在可接受的级别之上(步骤525),聊天会话被上报至级别二聊天分类器(步骤535)。例如,假设聊天容器具有400个语句被分类为不可接受的聊天消息以及400个语句被分类为可接受的聊天消息。在这样的情形中,恶意的聊天对善意的聊天的比例将等于1:1。阈值数值可以指示这个比例太高。如果做出这样的确定,聊天分类引擎向级别二分类器上报用户聊天会话。在另一实施例中,阈值数值可以是相当低的。在另一实施例中,阈值数值可以取决于聊天的语句数。阈值数值代表仲裁人想要容忍的已分类的聊天的数目。本领域的普通技术人员可以推测比例阈值数值可以是其选择的任何关系。
[0048]单一聊天会话可以包含数以千计的聊天消息。在步骤530中,监视应用确定聊天会话中恶意语句的总数是否超出阈值数值。这么做阻止用户在更大数目的可接受消息中隐藏很大数目的恶意的聊天消息。阈值数值可以指示:不恰当聊天的数量太多了。在步骤530中,当不恰当聊天消息的计数超出不可接受聊天的阈值数值时,聊天会话被上报至级别二聊天分类器(步骤535)。注意,方法500所示出的用于评估聊天的过程是动态的。只要被确定为具有很高的“不恰当的”概率的聊天消息的数量低于阈值,聊天会话就继续由级别一聊天分类器进行处理(步骤510)。
[0049]例如,假设聊天分类引擎具有1:3的阈值比例以及200条恶意聊天的阈值。包含1000条聊天语句的聊天会话可以具有200条被分类为不恰当的聊天消息和800条被分类为恰当的语句。1:4的不恰当对恰当的比例是可接受的。然而,用户已经发布了 200条被级别一聊天分类器分类为不可接受的聊天消息。因此,该聊天会话被从级别一聊天分类器上报至级别二聊天分类器。在另一实施例中,阈值数值可以是相当低的。在另一实施例中,阈值数值可以更高。在另一实施例中,聊天数值可以取决于聊天消息的数目。本领域的普通技术人员可以知道,恶意聊天阈值数值的数量可以是其选取的任何关系。
[0050]图6示出了根据本发明的一个实施例的用于使用级别二聊天分类器分类聊天会话的方法600。该方法开始于步骤605,其中级别二聊天分类器接收用户聊天会话和已经被级别一聊天分类器分类(即,每个语句被分类为是可接受的或是不可接受的)的聊天消息。在一个实施例中,级别二分类器评估被级别一分类器分类为不可接受的聊天消息。就是说,不像级别一聊天分类器那样个体地评估聊天消息,级别二聊天分类器评估聊天会话。结果为聊天会话自身是应该被仲裁人复查的会话的分类(或者概率)。在步骤610处,级别二聊天分类器处理聊天会话。级别二聊天分类器评估被级别一分类器分类为恶意的各聊天语句并且作出概率性的确定:作为整体的聊天会话是否是可接受的以及是否应该被上报至仲裁人。
[0051]例如,假设向级别一分类器呈现聊天消息“你好,在地图上寻找道场吗? (hellolook up the do jo on the map)”。二兀字组“寻找(look up)” 和字“你好(Hello)” 可能具有较高的概率是不可接受的聊天的一部分。这会发生是因为级别一分类器发现在更高的时间百分比中它们是作为与善意聊天相反的恶意聊天的一部分。级别二聊天检测分类器查找全部聊天会话的特征并且确定聊天会话可接受还是不可接受的概率。在另一实施例中,级别一分类器可以确定:对于聊天消息“你好,在地图上寻找道场吗? ”,善意聊天的概率较高。这些概率受分类器的训练所影响。本领域的普通技术人员能够看到:结果可以依据聊天用户和聊天社区规定而改变。
[0052]聊天会话为可接受的概率(步骤615)是从级别二分类的聊天中作出的。如果确定聊天会话有可能是“善意的”或者“可接受的”聊天,那么分类引擎中止对用户会话聊天容器的上报。如果聊天会话有很高的概率为“恶意的”或者“不可接受的”,那么聊天会话被上报至仲裁人(步骤625)。
[0053]如上所述,级别一分类器评估个体聊天消息是“可接受的”还是“不可接受的”,而且级别二分类器评估聊天会话(即,被标注为“不可接受的”聊天消息的汇总)以确定该聊天会话是否应该被仲裁人复查。另外,可以使用相应的训练数据的集合来训练每个分类器。对于级别一分类器,训练数据可以包括被手动标记为“可接受的”或者“不可接受的”聊天消息的汇总。例如,已经被仲裁人复查的、用户之间发送的聊天消息可以用于建立训练数据的集合。相似地,用于级别二分类器的训练数据可以来自被仲裁人复查过的聊天会话。例如,其中仲裁人确定有必要干预的聊天会话可以提供用于级别二分类器的训练数据。在一个实施例中,这样的聊天会话可以被级别一分类器评估并且被级别一分类器标注为不可接受的个体聊天消息形成用于级别二分类器的训练示例。
[0054]图7示出了根据一个实施例的用于创建训练数据集的方法700。分类引擎接收由仲裁人对其作用的聊天容器(步骤705 )。在复查聊天会话之后,仲裁人可以将某些被级别一分类器标注为“可接受的”或者“不可接受的”聊天消息再次分类。仲裁人还可以评估整个聊天会话是需要(或者不需要)某一仲裁人干预的措施的会话。一旦被如此分类,该消息可以被用于创建额外的训练示例。分类引擎识别被仲裁人再次分类的聊天消息(步骤715)。被仲裁人再次分类的消息可以被添加到用于训练级别一分类器的现存训练数据集(例如,被仲裁人手动地分类为“可接受的”或者“不可接受的”消息的原始集合)。训练数据集被用于级别一分类器的再训练(步骤720)。此外,被级别二分类器上报至仲裁人的聊天会话可以用于创建用于级别二分类器的额外的训练示例(步骤720)。例如,如果仲裁人在复查上报的聊天会话后采取某一动作,那么该会话可以用于创建额外的积极训练示例。相反,被级别二分类器上报至仲裁人、但是没有发生任何干预的聊天会话可以用于创建额外的消极训练示例。在两种情形中,训练示例是从被级别一分类器分类为“不可接受的”并且被上报至仲裁人的聊天会话中创建的。这样的聊天会话一旦被仲裁人标记为“可接受的”或者“不可接受的”,则可以被设定为用于级别二分类器的额外训练示例(步骤735)。
[0055]图8示出了根据本发明的一个实施例的用于训练级别一分类器的方法800。聊天分类引擎被提供有训练示例,即被标注为“可接受的”或者“不可接受的”聊天消息(步骤805)。一旦级别一分类器已经被训练过,就使用某些聊天消息来测试该分类器。测试数据集包括被仲裁人手动地分类为“可接受的”或者“不可接受的”消息。一旦被训练,级别一分类器可以评估测试数据集以确定它对于测试数据集中聊天消息的分类有多准确。训练数据集包括一组被仲裁人分类为不可接受的聊天消息和第二组被仲裁人分类为可接受的聊天消息(步骤815)。
[0056]级别一聊天分类器评估积极的和消极的训练示例的特征,来创建用于确定未分类消息是“可接受的”还是“不可接受的”的统计模型(步骤830)。就是说,训练数据集使得分类器能够确定聊天消息的某些元素为可接受的或者不可接受的的统计概率(步骤835)。例如,短语“我的香蕉(my banana)”可以有这样的统计概率:60%的时间发生在不可接受的聊天消息中,并且相对的,40%的时间发生在可接受的聊天消息中。因此,当分类器发现短语“我的香蕉”时,统计上60%更有可能发生该短语被用在会被仲裁人分类为不可接受的消息中。同样的,对诸如gRAPE之类的不常见的大写以及其中3被用于替代E或者5被用于替代S的奇怪拼写的使用,通常具有更高的统计概率为在不可接受的聊天中并且被这样分类。然而,gRAPE可能发生在用户开启大写锁定时,而且数字的使用可能具有可接受的含义。
[0057]可以通过将在分类器的训练中没有使用过的测试数据运行通过该聊天分类器来检查聊天分类器的正确性。对相同数据集的训练潜在地可以使得分类器过度拟合。当分类器开始记忆训练数据而不是学习从趋势中总结时,就会发生过度拟合。已经过度拟合的分类器一般将具有较差的预测性能。就是说,分类器在没有预测值的情况下试图分类概要而不是正确地假设他们。因此,使用没有用于训练分类器的部分数据集来测试该分类器。新近训练的级别一分类器使用测试数据集来计算测试集中具有较高概率为不恰当的聊天消息的百分比(步骤840)。对于测试数据集的计算结果相对于训练数据集的那些结果进行比较(步骤845)。结果指示了已训练的分类器能够多好地预测聊天消息是应该被标注为“可接受的”还是“不可接受的”。
[0058]图9示出了根据一个实施例的用于训练级别二聊天分类器的方法900。如图所示,方法900开始于步骤905,其中聊天分类引擎从训练数据集中提取聊天会话。如同所述,训练数据集可以包括被分类为可接受的聊天会话910或者不可接受的聊天会话915的聊天会话。例如,如上所述,可以通过评估已被仲裁人复查过的聊天会话来创建训练示例。在这种情形中,积极的训练示例一般对应于其中仲裁人在复查聊天会话后采取某一动作的聊天会话,而被仲裁人复查、但是没有导致任何动作的聊天会话提供消极的示例。在两种情形中,在这些会话中被级别一分类器分类为“不可接受的”聊天消息提供训练示例。此外,在从历史聊天会话中构建初始训练集之后,当已训练的级别二分类器指示给定的聊天会话应该上报至仲裁人以供复查时,可以创建额外的训练示例。依据仲裁人是否在复查该聊天会话后采取行动,可以创建额外的积极的或者消极的训练示例。
[0059]可接受的聊天会话910和不可接受的聊天会话915被级别一聊天分类器评估(步骤925)。级别一聊天分类器将可接受的聊天会话910和不可接受的聊天会话915中的聊天消息标注为是可接受的或者不可接受的。来自导致仲裁人干预的聊天会话(聊天会话915)的不可接受消息的数据集以及来自由仲裁人复查但是不需要任何干预的聊天会话(聊天会话910)的不可接受消息的数据集提供级别二训练数据集。
[0060]接着用来自这些聊天会话的“不可接受的”消息训练级别二分类器。两个数据集基于过去遇到的聊天提供聊天会话为可接受的统计概率。就是说,恶意但是可接受的数据集教导级别二分类器:这些聊天会话可能包含恶意聊天的某些元素,但是统计上仍然有可能被仲裁人认为是可接受的(或者至少在复查后不会导致任何仲裁人干预)。恶意并且不可接受的数据集教导级别二分类器:从统计的角度,这些数据集有可能是不可接受的并且应该被上报至仲裁人以供进一步的复查。
[0061]图10示出了根据本发明的一个实施例的用于级别二分类器1000的训练的示例。如图所示,训练数据集1005示出了被仲裁人1015标注为不可接受的聊天会话的示例。例如,用户I已经聊了五个语句。在这五个语句中,三个语句被级别一分类器示为不可接受。具体地,语句3、语句4和语句5已经被级别一分类器标注为“不可接受的”。仲裁人复查用户I的、被标注为不可接受的聊天会话。用户2的聊天会话也被仲裁人标记为不可接受。用户2聊天会话包含4个语句,其中语句2、语句3语句4被示为不可接受。
[0062]训练数据集1005还展示被仲裁人1010标注为可接受的聊天会话。例如,用户3聊了6个语句。六个语句中的四个语句被聊天分类引擎示为不可接受。仲裁人依然将该聊天会话标记为可接受的。用户4已经聊了 3个语句,它们中的一个语句被聊天分类引擎示为不恰当。用户4聊天会话也被仲裁人确定为可接受的。
[0063]每个被仲裁人标注为不可接受的聊天会话和被仲裁人标注为可接受的聊天会话通过级别一分类器。级别一分类器从可接受的聊天会话的数据集和不可接受的聊天会话的数据集中确定统计上不恰当、或者恶意的语句。就是说,为不可接受的聊天会话数据集1030确定对于不恰当的消息的分类。并且为可接受的聊天会话数据集1035确定对于不恰当的消息的分类。数据集代表这些聊天消息将为某一类型聊天的概率。如图所示,在两个数据集中都发现了【移1语】([Expletive])。
[0064]具有可接受和不可接受的聊天的数据集被用于训练级别二分类器(步骤1040)。分类器基于在不可接受的聊天中发现特定项目的频次与在可接受的聊天中发现特定项目的频次来指派概率。例如,在不可接受的数据集1030和可接受的数据集1035中都发现了【秽语】。那么分类器能够提供【秽语】将会是不可接受的聊天的统计概率。在该示例中,分类器将确定包含【秽语】的聊天消息可能67%的时间发生在不可接受的聊天中。在另一实施例中,【秽语】可以仅10%的时间发生在不可接受的聊天中。级别二分类器评估来自(如上所述,符合某一触发标准的)聊天会话的“不可接受的”消息,从而确定聊天会话是否应该被上报至仲裁人。
[0065]有利地,实施例提供用于减少被上报至仲裁人的聊天的数量的应用。多层聊天检测和分类确定恶意但是可接受的、不需要仲裁人干预的聊天的数量。聊天分类引擎能够在对某些词语或者短语的良性使用和对那些相同词语或者短语的其他违法使用之间进行区分。聊天分类引擎通过对多层分类级别的上报来处理聊天会话以达到这个确定。因而减少了加于仲裁人的大量聊天负担并且节省了时间和金钱。对分类器的再训练确保所认为的设置恰当的聊天被正确地表征,减少了恶意但是可接受的聊天(否则将被上报至仲裁人)的数量。 [0066]尽管以上指定了本发明的实施例,在不背离本发明基本范围的情况下,可以设计出本发明的其他的以及进一步的实施例,并且本发明范围由所附的权利要求确定。
【权利要求】
1.一种用于监视在在线多用户环境中交互的用户的计算机实现的方法,所述方法包括: 对于由第一用户在会话期间发送的每条消息: 通过第一分类器,确定将所述消息标注为对于所述在线多用户环境是可接受的还是不可接受的;并且 如果满足针对所述用户的所述会话的触发条件,就通过第二分类器确定是否将所述会话上报至仲裁人以供复查。
2.如权利要求1所述的方法,其中所述第一分类器是贝叶斯过滤器。
3.如权利要求1所述的方法,其中所述第二分类器是贝叶斯过滤器。
4.如权利要求1所述的方法,还包括: 用多个被标注为可接受或者不可接受的消息训练所述第一分类器。
5.如权利要求1所述的方法,还包括: 用多个训练示例会话训练所述第二分类器,其中每个训练示例是从被标注为适于上报或者不适于上报的会话中生成的,并且其中每个训练示例会话包括来自被所述第一分类器分类为不可接受的会话的消息。
6.如权利要求1所述的方法,其中所述触发条件是所述会话中被分类为不可接受的消息和被分类为可接受的消息的比例。
7.如权利要求1所述的方法,其中所述触发条件是所述会话中被分类为不可接受的消息的最大数目。
8.如权利要求1所述的方法,其中所述第二分类器通过评估所述会话中被所述第一分类器分类为不可接受的消息来确定是否将所述会话上报至仲裁人以供复查。
9.一种系统,包括: 存储应用程序的存储器;以及 处理器,当执行所述应用程序时,所述处理器被配置为行使用于监视在在线多用户环境中交互的用户的操作,所述操作包括: 对于由第一用户在会话期间发送的每条消息: 通过第一分类器,确定将所述消息标注为对于所述在线多用户环境是可接受的还是不可接受的;并且 如果满足针对所述用户的所述会话的触发条件,就通过第二分类器确定是否将所述会话上报至仲裁人以供复查。
10.如权利要求9所述的方法,其中所述第一分类器是贝叶斯过滤器。
11.如权利要求9所述的方法,其中所述第二分类器是贝叶斯过滤器。
12.如权利要求9所述的方法,还包括: 用多个被标注为可接受或者不可接受的消息训练所述第一分类器。
13.如权利要求9所述的方法,还包括: 用多个训练示例会话训练所述第二分类器,其中每个训练示例是从被标注为适于上报或者不适于上报的会话中生成的,并且其中每个训练示例会话包括来自被所述第一分类器分类为不可接受的会话的消息。
14.如权利要求9所述的方法,其中所述触发条件是所述会话中被分类为不可接受的消息和被分类为可接受的消息的比例,或者是所述会话中被分类为不可接受的消息的最大数目。
15.如权利要求9所述的方法,其中所述第二分类器通过评估所述会话中被所述第一分类器分类为不可接受的消息来确定是否将所述会话`上报至仲裁人以供复查。
【文档编号】H04L12/26GK103780453SQ201310495401
【公开日】2014年5月7日 申请日期:2013年10月21日 优先权日:2012年10月19日
【发明者】安德鲁·R·比切姆, 维塔·G·马克曼, 安伯·斯图尔特 申请人:迪士尼企业公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1