掌桥专利:专业的专利平台
掌桥专利
首页

一种业务规则自动生成方法和系统

文献发布时间:2023-06-19 09:54:18


一种业务规则自动生成方法和系统

技术领域

本说明书涉及人工智能技术领域,特别涉及一种业务规则自动生成方法和系统。

背景技术

规则天然具备可解释性,便于人们去理解和推理。例如,规则可以是关于如何根据与业务领域中某对象相关的特征的特征数据进行判断,进而对该对象进行定性或归类的原则。与对象相关的特征可以多种多样,如何从众多特征中筛选出更有价值的特征用于制定规则是人们关心的问题。现有的做法是业务人员根据自身经验制定规则,这受限于人员的经验,同时效率不高。如此,本说明书提供一种基于人工智能技术的规则自动生成方法,提供易于人类理解和推理的规则。

发明内容

本说明书实施例之一提供一种业务规则自动生成方法,所述方法由处理器执行,其中,包括:获取多个样本的业务数据,每个样本的业务数据包括该样本的标签数据和N个特征对应的特征数据,N为不小于2的整数;基于多个样本的特征数据进行因果图学习,得到一个或多个因果图;其中,因果图包括两个以上存在因果关联的特征;对于一个或多个因果图中的任一个:利用多个样本的标签数据和在该因果图中的特征对应的特征数据,训练树模型;基于训练出的树模型生成业务规则。

本说明书实施例之一提供一种树模型训练方法,其中,所述方法由处理器执行,其包括:获取多个样本的业务数据,每个样本的业务数据包括该样本的标签数据和N个特征对应的特征数据,N为不小于2的整数;基于多个样本的特征数据进行因果图学习,得到一个或多个因果图,所述因果图包括两个以上存在因果关联的特征;对于一个或多个因果图中的任一个:利用多个样本的标签数据和在该因果图中的特征对应的特征数据,训练树模型。

本说明书实施例之一提供一种业务规则自动生成系统,其中,包括数据获取模块、因果图学习模块、树模型训练模块以及规则生成模块;所述数据获取模块用于获取多个样本的业务数据,每个样本的业务数据包括该样本的标签数据和N个特征对应的特征数据,N为不小于2的整数;所述因果图学习模块用于基于多个样本的特征数据进行因果图学习,得到一个或多个因果图,所述因果图包括两个以上存在因果关联的特征;所述树模型训练模块用于对于一个或多个因果图中的任一个,利用多个样本的标签数据和在该因果图中的特征对应的特征数据训练树模型;所述规则生成模块用于基于训练出的树模型生成业务规则。

本说明书实施例之一提供一种树模型训练系统,其中,包括数据获取模块、因果图学习模块和树模型训练模块;所述数据获取模块用于获取多个样本的业务数据,每个样本的业务数据包括该样本的标签数据和N个特征对应的特征数据,N为不小于2的整数;所述因果图学习模块用于基于多个样本的特征数据进行因果图学习,得到一个或多个因果图,所述因果图包括两个以上存在因果关联的特征;所述树模型训练模块用于对于一个或多个因果图中的任一个,利用多个样本的标签数据和在该因果图中的特征对应的特征数据训练树模型。

本说明书实施例之一提供一种业务规则自动生成装置,其中,包括处理器和存储设备,所述存储设备用于存储指令,当所述处理器执行指令时,实现如本说明书任一实施例所述的业务规则自动生成方法。

本说明书实施例之一提供一种树模型训练装置,其中,包括处理器和存储设备,所述存储设备用于存储指令,当所述处理器执行指令时,实现如本说明书任一实施例所述的树模型训练方法。

附图说明

本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:

图1是根据本说明书一些实施例所示的业务规则自动生成方法的流程示意图;

图2是根据本说明书一些实施例所示的业务规则自动生成系统的示例性流程图。

具体实施方式

为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。

应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。

如本说明书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。

本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。

规则天然具备可解释性,便于人们去理解和推理。在很多具体的业务领域,规则可以用于指导人们对业务对象进行定性或归类,或者指导人们基于当前条件采取下一步行动。其中,对象可以是人、产品或行为等等。比如,在反套现业务场景中,业务人员可以基于规则对用户行为(即所述对象)的特征进行分析判断,确定该行为是否属于套现行为。又比如,在客服业务场景中,规则可以指导客服人员对用户聊天内容(即所述对象)进行分析判断,确定针对用户聊天内容上文应当回应的业务话术。一般来说,规则可以包括判断要素和判断条件。其中判断要素可以对应于对象的特征,而判断条件则对应于基于对象特征数据的条件逻辑,用于将判断引到下一判断要素或给对象定性或归类。仅作为示例,在反套现业务场景中,判断某用户行为是否属于套现行为的规则中的判断要素可以包括信用卡单日消费额度,刷卡频次等,而判断条件可以是信用卡单日消费额度是否大于设定金额,刷卡频次是否超过设定频次等。

在现实场景中,与对象相关的特征不计其数,如何高效、准确的从众多特征中提取有价值的作为规则中的判断要素,以及如何确定基于这些判断要素确定适当的判断条件,是制定规则不可回避的问题。本说明书一些实施例提出了一种基于人工智能技术的规则自动生成方法,以代替人工进行规则的自动化生成,且生成的规则具有可解释性。在很大程度上提高了业务领域的生产工作效率。

不难理解,规则的表现形式可以类比于树模型的预测逻辑。在一些实施例中,规则可取自树模型。然而,树模型训练方案并不关注或者难以发现特征之间的关联,或者说单纯的树模型训练并不会对对象的特征进行筛选,而是在较为发散的特征空间内寻求最优的分裂路径。这使得生成的规则不具解释性,难以满足业务需求。为此,本说明书一些实施例提出了基于因果图学习和树模型训练相结合的方式自动生成业务规则的方法。

需要说明的是,本说明书提及的树模型和规则均应用于业务场景,涉及的对象特征都来自于真实的生产生活领域,数据类型包括但不限于语音、文本、图像等,并非单纯的智力活动规则(如单纯的数学规则)。仅作为示例,这里的业务场景可以是反套现场景,此类场景下的树模型和规则可用于识别实体(个人或组织)产生的行为(即所述对象)是否属于非法套现(定性或归类)。考虑到监管需求,反套现规则需要具备可解释性。

图1是根据本说明书一些实施例所示的业务规则自动生成方法的流程示意图。该流程可以由处理器执行。如图1所示,该流程可以包括因果图学习、树模型学习(训练)和规则抽取三个部分。

该流程的输入包括多个样本的业务数据(以下简称样本数据集),每个样本的业务数据包括该样本的标签数据和N个特征对应的特征数据。其中,N为不小于2的整数。在一些实施例中,可以用矩阵来表征多个样本的业务数据(可简称样本数据集),例如X和Y。其中,X为特征部分,Y为标签部分。

在一些实施例中,可以对样本数据集进行划分,例如将样本数据集划分为训练数据集和测试数据集。其中,训练数据集可用于基于目标函数(如损失函数)训练树模型,测试数据集用于对训练出的树模型的性能进行测试(评估)。若测试出树模型的性能无法满足要求,可对训练参数进行调整甚至重新获取训练集(或重新训练),直至训练出性能满足要求的树模型。

可以理解,一个对象(如,个人、组织、产品或个人/组织等实体实施的行为等)可以作为一个样本,例如将一个用户作为一个样本,相应地可以将用户ID作为样本ID。样本数据可以从合法的公开数据源获取,也可以在经过用户授权的前提下从用户端获取。在一些实施例中,可以利用分布式机器学习、TEE(Trusted Execution Environment,可信执行环境)学习等有利于保护数据隐私的技术,进行因果图和树模型的学习。

因果图是一种有向无环图(Directed Acyclic Graph,DAG),可用于刻画变量(或事件)之间的因果关联。

图结构包括顶点和连接顶点的边。其中,一个顶点可代表一个特征(或变量),边可表示特征(或变量)间的关联。有向无环图是指边具有方向且任意两个顶点间无法形成闭环的图。

为了发现特征间的因果关联,可以基于多个样本的特征数据进行因果图学习。可以理解,因果图的每个顶点可代表一个特征,顶点之间的边代表特征间的因果关联。仅作为示例,如图1所示,特征数量N=29,特征编号/ID为0~28。

通过因果图学习,可以得到一个或多个因果图。根据图结构的特点,一个因果图的顶点与另一因果图的顶点之间没有边(如图1中的单向箭头)。

在一些实施例中,可以根据构造的目标函数的值学习反映因果图结构的权重分布,因果图的权重分布可以用矩阵(即权重矩阵)表示。这里的目标函数至少包括反映样本的业务数据中的各特征对应的特征数据与各特征对应的特征数据经过权重矩阵聚合后的结果之间的差异的第一部分,其中,特征数据也可以用矩阵(即特征矩阵,记为X)表示,特征矩阵的维度与样本的数量和特征数量N匹配。在一些实施例中,可以对特征矩阵与权重矩阵进行运算,来实现对特征数据的聚合。在一些实施例中,聚合可以包括加权及求和等。仅作为示例,所述运算可以是矩阵乘法(如XW)。在一些实施例中,目标函数还可以包括用于限制因果图中特征的数量与N之间差距的第二部分。

通过初始化N个特征中特征之间(如两两特征间)的因果关联,可以得到初始化的权重矩阵W。获得初始化的权重矩阵后,可以基于目标函数调整权重矩阵中的一个或多个元素,进而基于调整后的权重矩阵获得一个或多个因果图。对于目标函数的第一部分,调整目标可包括减小特征矩阵X与聚合结果XW之间的差异,因为该差异越小表明特征间的因果关联越强。对于目标函数的第二部分,调整目标可包括使得因果图中特征的数量与N之间差距大于设定阈值,以避免学习到的因果图中的特征数量接近N。可以理解,当学习到的因果图中的特征数量接近N甚至等于N时,因果图学习对于后续的树模型学习而言可以说是没有意义的。

仅作为示例,目标函数可以是

权重矩阵与图结构之间的映射规则可以人为规定,当目标函数值满足设定条件时可对此时的权重矩阵应用该映射规则,以获得图结构。仅作为示例,该映射规则可以包括:矩阵元素w

另外,因果图学习的目标包括使得目标函数值满足设定条件的同时,保证权重矩阵W满足一定的限制条件,该限定条件使得W对应的图结构为有向无环图。

对于一个或多个因果图中的任一个,可以利用多个样本的标签数据和在该因果图中的特征对应的特征数据训练树模型。利用具有因果关联的特征训练树模型,可以训练出具备可解释性的树模型,从而可基于训练出的树模型生成具备可解释性的业务规则(也可描述为从树模型中抽取规则)。

值得说明的是,训练与任一因果图对应的树模型时,可以忽略因果图中特征的因果关联顺序。例如,如图1所示,学习到的因果图包括特征集合(10,19,13,6,27,28,20,7,23,25),10号特征在因果关联关系中排在首位,但并不一定要将10号特征作为树模型根节点的分裂特征。图1中仅示出了训练出的树模型的一种可能。

在一些实施例中,本说明书中提及的树模型可以是C4.5模型、C5模型、仅包含一棵树的GBDT模型等中的任意一种。

基于训练出的树模型可以生成业务规则。应当理解,可以根据树模型中的每一条路径生成一条业务规则,该业务规则包括该路径对应的所有分裂条件(可以进一步包括特征和阈值条件)以及预测结果,可被解释为“若特征A满足条件a、特征B满足条件b、...、特征M满足条件以及特征N满足条件n依次成立,则输出预测结果Y'”或者类似的。前面提到,树模型的训练不必按照学习到的因果图中特征的因果关联顺序进行,但仍旧可以生成与因果图中特征的因果关联顺序匹配的业务规则。具体地,可以先基于训练出的树模型生成待调整的业务规则,所述待调整的业务规则对应的特征顺序与所述训练好的树模型对应的特征顺序一致,进而可以判断所述训练好的树模型对应的特征顺序与因果图中特征的因果关联顺序是否一致。若不一致,则可以将所述待调整的业务规则对应的特征顺序调整为与因果图中特征的因果关联顺序一致。

例如,如图1所示,从树模型中抽取出的一条待调整的业务规则被解释为“若13号特征满足条件R13、27号特征满足条件R27、28号特征满足条件L28以及10号特征满足条件L10依次成立,则输出8号叶节点对应的预测结果”,根据因果图中特征的因果关联顺序,可以将该业务规则调整为“若10号特征满足条件L10、13号特征满足条件R13、27号特征满足条件R27以及28号特征满足条件L28依次成立,则输出8号叶节点对应的预测结果”。

在一些实施例中,训练的树模型可用于解决分类问题,如识别已经或即将发生非法套现行为的实体(对应二分类问题)。经过训练,树模型的各个叶节点具有其分值,例如,图1中树模型的各叶节点的分值分别为s1、s2、s3、...、s10、s11。基于训练出的树模型的各叶节点的分值,可以确定多个阈值。这里不妨假设s1~s11是经过大小排序的,则确定的多个阈值可以是s2~s10。利用多个样本的业务数据(测试数据集),可测试树模型在不同阈值(如s2~s10)下的业务指标。进而,可以判断各阈值下的业务指标是否满足设定条件,并根据判断结果确定用于二分类的目标阈值。例如,可以将预测叶节点对应的分值不小于目标阈值的样本预测为黑用户,预测叶节点是指样本在树模型中的预测路径上的叶节点。基于训练出的树模型以及目标阈值,可以生成用于二分类(如识别黑样本/用户)的业务规则。

在一些实施例中,前述业务指标可以包括打扰率、召回率、准确率等中的一项或多项。打扰率是指被预测为黑样本的样本占参与测试的所有样本的比例。召回率是指被正确预测为黑样本的样本占参与测试的所有黑样本的比例。准确率是指被预测为黑样本的样本中真实的黑样本所占的比例。值得说明的是,当要判断的全部业务指标不少于两项且存在两个或以上阈值下的全部业务指标均满足设定条件时,可以根据具体业务中对某项业务指标的偏好筛选目标阈值。例如,具体业务中偏好准确率,可以全部业务指标均满足设定条件且准确率最高的阈值确定为目标阈值。

应当理解,在实际应用中可以直接利用树模型进行预测而不是用业务规则进行预测,生成的业务规则可以提供给客户或其他人以供解释。

应当注意的是,上述有关流程的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,若只是为了预测,上述流程可以不包括规则抽取部分。

图2是根据本说明书一些实施例所示的业务规则自动生成系统的示例性模块图。如图2所示,系统200可以包括数据获取模块210、因果图学习模块220、树模型训练模块230和规则生成模块240。

数据获取模块210用于获取多个样本的业务数据,每个样本的业务数据包括该样本的标签数据和N个特征对应的特征数据,N为不小于2的整数。

因果图学习模块220用于基于多个样本的特征数据进行因果图学习,得到一个或多个因果图,所述因果图包括两个以上存在因果关联的特征。

树模型训练模块230用于对于一个或多个因果图中的任一个,利用多个样本的标签数据和在该因果图中的特征对应的特征数据训练树模型。

规则生成模块240用于对于一个或多个因果图中的任一个,基于训练出的树模型生成业务规则。

关于系统200及其模块的更多细节,可以参考图1及其相关描述。

应当理解,图2所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。

需要注意的是,以上对于系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,若只是为了预测,系统200可以不包括规则生成模块240。诸如此类的变形,均在本说明书的保护范围之内。

本说明书实施例可能带来的有益效果包括但不限于:(1)通过因果图学习,可以训练出具备可解释性的树模型,模型效果更好;(2)可以自动化生成业务规则,以应对不断细分的业务场景以及不断变化的业务要求。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。

上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书实施例的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书实施例进行各种修改、改进和修正。该类修改、改进和修正在本说明书实施例中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。

同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。

此外,本领域技术人员可以理解,本说明书实施例的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书实施例的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书实施例的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。

计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。

本说明书实施例各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、VisualBasic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。

此外,除非权利要求中明确说明,本说明书实施例所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书实施例流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。

同理,应当注意的是,为了简化本说明书实施例披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书实施例对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。

最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书实施例的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。

相关技术
  • 一种业务规则自动生成方法和系统
  • 一种电力营销系统的业务规则引擎库系统的实现方法
技术分类

06120112347470