CN109118155B - 一种生成操作模型的方法及装置 - Google Patents
一种生成操作模型的方法及装置 Download PDFInfo
- Publication number
- CN109118155B CN109118155B CN201710493900.8A CN201710493900A CN109118155B CN 109118155 B CN109118155 B CN 109118155B CN 201710493900 A CN201710493900 A CN 201710493900A CN 109118155 B CN109118155 B CN 109118155B
- Authority
- CN
- China
- Prior art keywords
- model
- workflow
- user
- target user
- operations
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
- G06Q30/0256—User search
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供一种生成操作模型方法及装置,包括:建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;将所述用户中的各用户分别作为目标用户,根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。本申请实施例可以提升模型建立的准确性。
Description
技术领域
本申请实施例涉及通信技术领域,具体涉及一种生成操作模型的方法及装置。
背景技术
现有的业务系统包括大量的操作入口与业务产品,需要用户熟知业务操作的上下层,逐级操作以找到目标业务,存在学习成本高、花费时间长的缺陷。为了降低用户的学习成本以及操作复杂度,可以采用机器学习的方法创建智能简单的用户界面(英文全称为User Interface,英文简称为UI)。在进行智能简单UI生成时,关键是需要通过操作树模型生成子操作路径,进而生成符合用户特征的子操作树,实现界面的智能导航。现有技术中,原始的操作树模型均由人工构建,需要经验丰富的领域专家协助,而且只能构建少量共有模型,无法为用户构建个性化的操作模型。因此,亟需一种自动为用户构建个性化操作模型的方法。
目前,在其他领域,例如电子商务领域,存在一种基于多马尔科夫链的内容推荐方法,其可以为每个用户建立马尔科夫模型以生成内容推荐模型,当用户产生新的点击流时,利用当前点击流数据以及内容推荐模型产生用户可能感兴趣的项目以推荐给用户。具体地,这种内容推荐方法可以根据用户的个人信息向用户推荐感兴趣的网页信息和商品,减少用户浏览的时间。在进行内容推荐时,利用用户点击流信息,推荐下一步最可能点击的项目。所述方法可以包括以下步骤:(1)依据用户点击流信息,建立每个用户的马尔科夫模型,对某一目标用户来说,马尔科夫模型包括了转移矩阵A,初始状态λ,及用户集合G,此时用户集合G只包含了目标用户。其中,转移矩阵是由用户从当前页面跳转到下一个页面的概率组成的。(2)依据用户的背景信息建立用户的关系矩阵,利用背景信息确定不同用户间的相似性。(3)计算每个转移矩阵之间的两两相似度,模型的相似度即为转移矩阵间的相似度。随后合并相似度大于阈值的马尔可夫模型,计算此时的马尔可夫模型的转移矩阵及初始状态,并删除被合并的马尔可夫模型。(4)利用相似用户的点击流信息,填充马尔可夫模型中转移矩阵的零行。
申请人经过研究发现,现有技术提供的这种应用于电子商务领域的内容推荐方法,由于通过转移矩阵的相似度合并模型,在合并时仅依赖于每个点击跳转到下一个页面的概率,并未考虑操作的整体上下文信息,容易由于局部最优解造成局部相似的问题,由此得到的模型并不准确。
发明内容
本申请实施例提供了生成操作模型的方法及装置,可以利用工作流模型以及各操作对应的服务调用链,以目标用户的工作流模型为主体进行模型合并以得到操作模型,从而从整体上提升了模型建立的准确性,提高数据处理效率。
为此,本申请实施例提供如下技术方案:
根据本申请实施例的第一方面,提供了一种生成操作模型的方法,包括:建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
在第一方面的第一种可能的实现方式中,所述建立用户各自的工作流模型包括:获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。
在第一方面的第二种可能的实现方式中,所述根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度包括:获取各操作对应的服务调用链;将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离;根据所述不同操作的编辑距离计算不同操作的相似度。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述不同操作的编辑距离计算不同操作的相似度通过以下公式计算得到:
其中,hi表示第i个操作,hj表示第j个操作;|hi|、|hj|分别表示操作hi对应的服务调用链的长度以及操作hj对应的服务调用链的长度;sed(hi,hj)表示操作hi与操作hj间的编辑距离;Simhi,j表示操作hi与操作hj间的相似度;其中,i和j的取值为整数。
在第一方面的第四种可能的实现方式中,根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作间的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度通过以下公式得到:
其中,Sim表示工作流模型间的相似度;fIDp表示插入和删除的与元素的数量和与元素总数的比值,表示fIDp的值对应的权重;fIDh表示插入和删除的操作元素的数量与操作元素总数的比值,表示fIDh的值对应的权重,所述fIDh为利用不同操作的相似度计算得到;fIDe表示插入和删除的边元素的数量与边元素总数的比值,表示fIDe的值对应的权重;fSp表示替换与元素的均值,表示fSp的值对应的权重;fSh表示替换操作元素的均值,表示fSh的值对应的权重。
在第一方面的第五种可能的实现方式中,在进行基于目标用户的工作流模型生成初始操作模型的操作之后,所述方法还包括:确定与目标用户相似的用户,生成相似用户集;获取所述相似用户集中所有用户历史的操作,分析所述所有用户的历史操作,计算得到代表各操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵;利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户的个性化操作模型。
在第一方面的第六种可能的实现方式中,所述确定与目标用户相似的用户,生成相似用户集包括:获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集;依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户的个性化操作模型包括:将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成所述目标用户的个性化操作模型。
结合第一方面的第六种可能的实现方式,在第一方面的第八种可能的实现方式中,所述将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素包括:遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
根据本申请实施例的第二方面,提供了一种操作模型生成装置,包括:工作流模型建立模块,用于为建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;相似度计算模块,用于根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;初始模型生成模块,用于将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
在第二方面的第一种可能的实现方式中,所述工作流模型建立模块具体用于:获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。
在第二方面的第二种可能的实现方式中,所述相似度计算模块具体用于:获取各操作对应的服务调用链;将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离;根据所述不同操作的编辑距离计算不同操作的相似度。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述相似度计算模块具体还用于通过以下公式计算得到不同操作的相似度:
其中,hi表示第i个操作,hj表示第j个操作;|hi|、|hj|分别表示操作hi对应的服务调用链的长度以及操作hj对应的服务调用链的长度;sed(hi,hj)表示操作hi与操作hj间的编辑距离;Simhi,j表示操作hi与操作hj间的相似度;其中,i和j的取值为整数。
在第二方面的第四种可能的实现方式中,所述初始模型生成模块具体用于通过以下公式计算得到目标用户的工作流模型与其他用户的工作流模型的相似度:
其中,Sim表示工作流模型间的相似度;fIDp表示插入和删除的与元素的数量和与元素总数的比值,表示fIDp的值对应的权重;fIDh表示插入和删除的操作元素的数量与操作元素总数的比值,表示fIDh的值对应的权重,所述fIDh为利用不同操作的相似度计算得到;fIDe表示插入和删除的边元素的数量与边元素总数的比值,表示fIDe的值对应的权重;fSp表示替换与元素的均值,表示fSp的值对应的权重;fSh表示替换操作元素的均值,表示fSh的值对应的权重。
在第二方面的第五种可能的实现方式中,所述装置还包括:相似用户集确定模块,用于确定与目标用户相似的用户,生成相似用户集;调整模块,用于获取所述相似用户集中所有用户的历史操作,分析所述所有用户的历史操作计算得到代表各操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵;利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户的个性化操作模型。
在第二方面的第六种可能的实现方式中,所述相似用户集确定模块具体用于:获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集;依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,所述调整模块具体用于:将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成与所述目标用户的个性化操作模型。
结合第二方面的第六种可能的实现方式,在第二方面的第八种可能的实现方式中,所述调整模块具体用于:遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
本申请实施例的第三方面,提供了一种用于生成操作模型的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
从以上技术方案可以看出,本申请实施例具有以下优点:在本申请实施例中,为每个用户建立了与之一一对应的工作流模型,并利用工作流模型包括的各操作对应的服务调用链计算操作的相似度,根据工作流模型包含的各操作的相似度,从整体上衡量模型的相似度,由此得到的操作模型准确性高,提高了数据处理的效率。
附图说明
图1为本申请实施例提供的示例性应用场景示意图;
图2为本申请一实施例提供的生成操作模型的方法流程图;
图3为本申请实施例提供的工作流模型示意图;
图4为本申请实施例提供的生成依赖关系矩阵的示意图;
图5为本申请实例提供的工作流模型生成示意图;
图6为本申请实施例提供的简化的工作流模型a示意图;
图7为本申请实施例提供的简化的工作流模型b示意图;
图8为本申请另一实施例提供的生成操作模型的方法流程图;
图9为本申请实施例提供的调整初始操作模型流程示意图;
图10为本申请实施例提供的初始操作模型与基准模型示意图;
图11为本申请实施例提供的操作模型生成装置示意图;
图12为本申请另一实施例提供的用于生成操作模型的装置示意图。
具体实施方式
本申请实施例提供了一种生成操作模型的方法,可以利用工作流模型以及各操作对应的服务调用链,以目标用户的工作流模型为主体进行模型合并以得到操作模型,从而从整体上提升了模型建立的准确性,提高数据处理效率。
下面结合附图对本申请实施例提供的方法和装置进行介绍。
参见图1,为本申请实施例提供的示例性应用场景示意图。本申请实施例提供的生成操作模型的方法可以应用于如图1所示的业务系统中。所述业务系统可以包括日志信息采集装置、用户库、系统日志库、调用链库、操作模型生成装置、计算节点、操作界面生成装置。其中,所述日志信息采集装置用于采集系统运行的日志,部分调用链也可以通过日志分析得到。一般地,常用埋点方式来实现日志的采集。所述操作模型生成装置用于生成操作模型,其具体实现即可以应用本申请实施例提供的生成操作模型的方法。所述计算节点包括代理模块和路径生成模块,所述代理模块用于将不同用户的操作模型转发到路径生成模块中,所述路径生成模块用于基于不同用户的操作模型,生成相应的操作路径。所述操作界面生成装置用于基于操作路径和UI库生成用户的操作界面。
当然,本申请实施例还可以应用到其他场景中,在此不进行限制。需要注意的是,上述应用场景仅是为了便于理解本申请而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。
需要说明的是,在本申请实施例中,技术术语“工作流模型”一般包含了一组操作及操作间的相互顺序执行关系。所述操作一般用于表示提供某项服务、功能或产品,当然技术术语操作的含义可以不局限于此。以图3为例说明,一个网络购物的工作流模型可以包括将商品加入购物车、购物车结算、提交订单3个操作。又如,一个缴纳话费的工作流模型可以包括用户登录、查询余额、缴纳话费3个操作。
在本申请实施例中,技术术语“服务调用链”一般包括操作调用的各系统服务以及所述各系统服务的发生顺序。一般地,业务系统进行一次操作调用时,业务系统内部的服务会产生多次的相互调用,这个调用过程将业务系统内各个模块间以一个链条的形式串起来,形成服务调用链。举例说明,任意操作都可以对应着一系列的系统内部服务调用,而这一系列的服务调用的发生次序,组成了该操作的具体服务级步骤。当然,以上仅为示例性说明,不视为对本申请的限制。
参见图2,为本申请一实施例提供的生成操作模型的方法流程图。如图2所示,所示方法可以包括:
S201,操作模型生成装置建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序。
具体实现时,可以基于流程挖掘(process mining)生成工作流模型(WorkflowProcess Model)。流程挖掘是基于系统日志来分析业务流程的技术,它的目的是提升流程效率和更好的理解实际业务流程,流程挖掘也被称为自动业务流程发现。目前多数的业务系统都拥有预先设定好的业务流程,当业务进行到某一步时,下一步应该如何执行是按照定义好的业务流程来进行的。业务流程是一系列具有相关性和结构性的操作的集合。操作表示提供某项服务、功能或产品。一般的业务系统均拥有日志信息采集装置,日志信息采集模型采集的日志信息可以存储至系统日志库,从系统日志库中保存的系统日志中可以抽离出最简单的操作事件日志,即包含流程实例标识、操作、参与者及时间的日志。流程挖掘常用在很难获取预先设定好的业务流程描述时或是预先设定的业务流程存在缺陷时进行业务流程发现。由于流程挖掘分析出来的业务流程是系统实际运行的流程,可以用于反馈、优化预先定义的业务流程。流程挖掘的结果可以用工作流模型表示。一般地,工作流模型一般包含了一组操作及操作间的相互顺序执行关系。它是业务流程中操作将信息传递到下一个操作的规则定义、执行与自动化。工作流模型描述了工作流实例的执行周期,如果用图形的方式表示,可由一系列的操作元素及操作元素间的有向边关系构成。如图3所示,为本申请实施例提供的一个工作流模型示意图。
在本申请具体实现时,在为各用户分别建立工作流模型时,可以从系统日志中获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值,根据计算得到的代表操作间的依赖关系的值,生成依赖关系矩阵;根据所述依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成工作流模型。其中,所述操作间的关系至少包括与关系。举例说明,分析所述历史操作可以包括分析操作级别的日志,统计出事件a>wb模式的出现次数。生成依赖关系矩阵时,可以根据公式(2)计算得到代表操作间的依赖关系的值以及根据公式(3) 计算得到代表操作间的与或关系的值。
下面以一个实例说明如何建立用户的工作流模型。举例说明,可以依据系统日志的等级,分析操作级别的日志。所述操作级别的日志记录了用户的各项操作以及操作发生的时间、执行顺序等。一般地,一个完善的业务系统,会有符合自身需求的日志信息采集装置。在采集的日志中把记录操作级别的日志条目抽离出来,或只处理操作级的日志条目,就可以构造出业务系统的操作级日志。
假定以a,b,c,d,e表示业务系统中用户的历史操作(以下可简称为操作),以下日志表示一个用户的操作级日志:
L=[<a,b,c,e>10,<a,c,b,e>10,<a,d,e>2,<a,d,d,e>2,<a,d,d,e>1,<a,e>5,<a,b,e>1,<a,c,e>1]
例如,
在上述操作日志中,<a,b,c,e>表示某一工作流包含的操作以及各操作的执行顺序,数字10表示这一工作流在日志中出现的次数为10次。
具体实现时,在分析历史操作时,可以先统计出事件a>wb模式的出现次数。具体地,由日志L可统计出a>wb的次数。然后,根据公式(2)计算代表操作间的依赖关系的值,形成依赖关系矩阵。根据公式(3)计算得到代表操作间的与或关系的值。
具体可以应用以下公式:
a>wb (1)
其中,公式(1)表示操作b紧接着操作a发生,w表示工作流workflow。
其中,公式(2)表示定义操作b与操作a的依赖关系的值。
其中,公式(3)表示操作b与操作c同时出现在操作a之后的与或关系的值。
参见图4,为本申请实施例提供的生成依赖关系矩阵的示意图。如图5所示,为本申请实例提供的工作流模型生成示意图。在生成依赖关系矩阵后,可以根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。其中,工作流模型的各操作元素为依赖矩阵中的各操作节点,若代表操作间的依赖关系的值大于设定阈值时,则在两个操作元素间生成一条有向边构成工作流模型的边元素,代表操作间的与或关系的值大于某个阈值时则确定操作元素间具有与关系,则用符号AND代表操作元素间的与关系。当然,也可以用符号P代表与元素,如图6所示。
具体实现时,可以逐步获得工作流模型。例如,可以根据预先设定的阈值得到初步的模型,即图5最左侧所示的模型。举例说明,假设设定日志记录大于5条有效,代表操作间的依赖关系的值大于0.9时则在两个操作间生成一条有向边,则根据图4所示的依赖关系矩阵可以得到图5最左侧的初步模型。随后,依据公式(3)计算代表操作间的与或关系的值,需要说明的是,在依据公式(3)计算代表操作间的与或关系的值时,一般可以通过阈值判断的方式确定与、或关系。举例说明,当依据公式(3)计算得到结果的值大于0.1时,确定操作b与操作c为与关系。当依据公式(3)计算得到结果的值小于0.1时,确定操作b与操作c为或关系。当然,阈值的取值可以根据经验确定,不局限于取值为0.1。
S202,操作模型生成装置根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序。
具体实现时,根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度包括:
A,获取各操作对应的服务调用链。
其中,所述操作包括目标用户的工作流模型包含的多个操作以及其他用户对应的工作流模型包含的多个操作。每个操作均有对应的服务调用链,不同操作对应的服务调用链一般不同。
其中,操作的服务调用链一般包括所述操作调用的各系统服务以及所述各系统服务的发生顺序。一般地,业务系统进行一次操作调用时,业务系统内部的服务会产生多次的相互调用,这个调用过程将系统内各个模块间以一个链条的形式串起来,形成服务调用链。举例说明,任意操作都可以对应着一系列的系统内部服务调用,而这一系列的服务调用的发生次序,组成了该操作的具体服务级步骤。具体实现时,可以根据业务系统的服务调用链设计或依据服务级日志中体现的操作调用步骤,获得操作的服务调用链。
B,将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离。
举例说明,假设存在两个操作h1和h2,用符号t表示操作调用的服务,操作h1的服务调用链为t1t2t3t4,操作h2的服务调用链为t1t3t5t6t4。将调用链抽象为一个字符串,采用字符串编辑距离的方法,可以计算出h1和h2的距离为3。其中,字符串编辑距离一般是指两个字符串之间,由一个转换成另外一个所需的最少编辑操作次数。所述编辑操作包括将一个字符替换成另外一个字符、插入一个字符、删除一个字符等操作。例如,将字符串替换t1t2t3t4为字符串t1t3t5t6t4,需要进行一次删除字符t2的操作、一次插入字符t5的操作、一次插入字符t6的操作,共需要3次操作,因此可以计算出h1和h2的字符串编辑距离为3。
C,根据所述不同操作的编辑距离计算不同操作的相似度。
具体实现时,根据所述不同操作的编辑距离计算不同操作的相似度通过以下公式计算得到:
其中,hi表示第i个操作,hj表示第j个操作;|hi|、|hj|分别表示操作hi对应的服务调用链的长度以及操作hj对应的服务调用链的长度;sed(hi,hj)表示操作hi与操作hj间的编辑距离;Simhi,j表示操作hi与操作hj间的相似度;其中,i和j的取值为整数。
仍以上例说明,存在两个操作h1和h2,用符号t表示操作调用的服务,操作h1的服务调用链为t1t2t3t4,操作h2的服务调用链为t1t3t5t6t4。将调用链抽象为一个字符串,采用字符串编辑距离的方法,可以计算出h1和h2的距离为3。由此计算出操作h1和h2的相似度:
S203,操作模型生成装置将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作。
其中,所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
具体实现时,在获取不同操作间的相似度后,即可以利用不同操作间的相似度计算所述目标用户的工作流模型与其他用户对应的工作流模型的相似度。具体实现时,可以利用目标用户的工作流模型与其他用户对应的工作流模型中不同操作间的相似度、目标用户的工作流模型与其他用户对应的工作流模型中与元素的相似度,利用图编辑距离加权得到目标用户的工作流模型与其他用户对应的工作流模型的相似度。
其中,根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作间的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度通过以下公式得到:
其中,Sim表示工作流模型间的相似度;fIDp表示插入和删除的与元素的数量和与元素总数的比值,表示fIDp的值对应的权重;fIDh表示插入和删除的操作元素的数量与操作元素总数的比值,表示fIDh的值对应的权重,所述fIDh为利用不同操作的相似度计算得到;fIDe表示插入和删除的边元素的数量与边元素总数的比值,表示fIDe的值对应的权重;fSp表示替换与元素的均值,表示fSp的值对应的权重;fSh表示替换操作元素的均值,表示fSh的值对应的权重。
下面对详细实现进行具体地说明。
1,将工作流模型进行简化,只包含三种元素,“操作元素”、“与元素”、“边元素”。如图6和图7所示,为简化的工作流模型a与简化的工作流模型b。图中,A、B、C、D、E、F、 G等表示操作元素,p1、p2等表示“与”元素。
2,依据“与”元素的流入“操作”入集合和流出“操作”出集合计算与元素的相似度。
对于一个“与”元素,可以用符号p={Andin|Andout}表示。参见图6和图7,可以将p1表示为p1={[A]|[B,C]},将p3表示为p3={[A]|[B,G]}。
其中,与元素相似度Simpi,j利用以下公式计算:
集合的相似度采用Jaccard相似度来进行计算。例如图6和图7两个不同的工作流模型中,“与”操作p1与p3间的相似度为:
其中,在计算入集合相似度时,由于p1和p3的入集合元素相同,相似度为1。在计算出集合相似度时,由于p1和p3的出集合元素个数总数为3,相同元素个数为1,因此相似度为1/3,则根据上述公式计算得到与元素的相似度为2/3。
3,采用图编辑距离加权计算得到不同工作流模型的相似度。
举例说明,将图6中的工作流模型a编辑为图7中的工作流模型b,需要将p1替换为p3,p2替换为p4;将C替换为G,删除一个操作D,删除一个操作F;增加边AB,删除边AD…,共删除9条边,增加6条边。依据图编辑距离算法及替换元素间的相似性,可以得到模型间的相似度值。
首先可以利用下述公式(6)和(7)计算替换与元素的代价:
其中,对于工作流模型1与工作流模型2,其“与”的集合分别用符合P1,P2表示,IDp表示所有插入、删除的“与”的集合。Sp表示所有替换的“与”的集合。P表示的是“与”,I是insert 的缩写,D是Delete缩写,IDp指的是插入和删除的p的集合,Sp表示所有替换的p的集合。fIDp指的是插入和删除的与元素的数量和与元素总数的比值。Simpn,m是步骤203B计算的“与”元素间的相似度。n和m表示的是“与”节点n和“与”节点m。M指的是从工作流模型1中节点到工作流模型2中节点的映射,P1→P2,H1→H2表示工作流模型1的“与”节点映射到工作流模型2的“与”节点,及“操作”节点映射到模型2的“操作”节点。
其中,∑(n,m)∈M(1-Simpn,m)是求和操作,n与m属于映射M,也就是说,n是P1中的节点,m是P2中的节点。计算的是每一对“与”节点的替换差异的和。fSp计算的是替换与元素的均值。由于替换节点是成对出现在集合中的,所以需要乘以2。
类似地,可以通过以下公式计算替换操作元素的代价:
其中,对于工作流模型1与工作流模型2,其“操作”的集合分别为H1,H2,IDh表示所有插入、删除的“操作”的集合。Sh表示所有替换的“操作”的集合,其他定义与“与”元素的定义相似。例如,fIDh表示插入、删除的操作元素的数量与操作元素总数的比值。fSh表示计算的是替换操作元素的均值。其中,∑(n,m)∈M(1-Simhn,m)是求和操作,n与m属于映射M,也就是说,n是H1中的节点,m是H2中的节点。计算的是每一对操作节点的替换差异的和。Simhn,m表示操作间的相似度。
类似地,可以通过以下公式计算替换边元素的代价:
其中,对于工作流模型1与工作流模型2,其“边”的集合分别为E1,E2,IDe表示所有插入、删除的“边”的集合,fIDe表示插入和删除的边元素的数量占边元素总数的比值。
其中,工作流模型间的相似度Sim可以定义为:
其中,符号w表示的是在计算相似度时“操作”、“与”、“边”所占的权重。该权重可根据不同的模型和应用场景,进行调整。
在计算得到目标用户的工作流模型与其他用户对应的工作流模型的相似度后,可以获取与目标用户的工作流模型相似度大于设定阈值的工作流模型作为与目标用户的工作流模型相似的工作流模型。
然后,合并目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
工作流模型的合并可以采用现有技术。例如,可以为待合并的工作流模型设置标记,随后寻找两个模型间的最大相同区域,最后是基于相同区域合并控制结构及简化。得到初始操作模型后,可以将其作为最终的操作模型使用,当然也可以采用图8所示的方法对初始操作模型进行调整以得到与目标用户的个性化操作模型。
需要说明的是,在本申请实施例中,通过服务调用链计算操作的相似度,并根据工作流模型间操作的相似度从整体上衡量模型的相似度,由此得到的操作模型准确性高,提高了数据处理的效率。
参见图8,为本申请另一实施例提供的生成操作模型的方法流程图。
与图2不同的是,在S203之后还包括获取相似用户集对应的依赖关系矩阵,利用所述依赖关系矩阵调整所述初始操作模型的步骤。
S201,操作模型生成装置建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序。
S202,操作模型生成装置根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序。
S203,操作模型生成装置将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作。
其中,所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
S204,操作模型生成装置确定与目标用户相似的用户,生成相似用户集。
具体实现时,确定与目标用户相似的用户,生成相似用户集包括:
S204A,获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集。
S204B,依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
需要说明的是,在进行相似模型合并时,合并的模型对应的各用户可以形成初始用户集。所述初始用户集包括目标用户以及与目标用户的工作流模型相似的工作流模型对应的用户。举例说明,目标用户A对应工作流模型1,与工作流模型1合并的模型分别为模型2、 3、4,分别对应用户B、C、D,那么初始用户集即为{A,B,C,D}。
所述用户关系矩阵依据用户的属性信息建立。用户的属性信息例如可以包括用户的年龄、性别、职务等信息。通过用户关系矩阵可以找到与初始用户集的相似的用户,并形成一个相似用户集,所述相似用户集包含了初始用户集中的所有用户。其中,相似用户集是初始用户集的一个超集,依据用户间的关系矩阵,与初始用户集内相似的用户将被视为相似用户,这些相似用户和初始用户构成了相似用户集。
S205,操作模型生成装置获取所述相似用户集中所有用户的历史操作,分析所述所有用户的历史操作计算得到各代表操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵。
具体实现时,可以参照图4所示的方法建立依赖关系矩阵。例如,对相似用户集的日志进行工作流模型的挖掘,得到的代表流程关系的矩阵。在S201中,是每个用户单独分析与其对应的操作日志,挖掘得到工作流模型。与S201不同的是,在S204B中,是将相似用户集的所有用户对应的所有操作看作一个整体,挖掘出与这些操作对应的依赖关系矩阵。
S206,操作模型生成装置利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户的个性化操作模型。
其中,所述利用所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与目标用户的个性化操作模型包括:将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成与所述目标用户的个性化操作模型。
具体实现时,所述将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素包括:遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
在这一步步骤中,以相似用户集合挖掘出的依赖关系矩阵为基准,对合并后的流程模型进行调整。之后,将调整后的模型再次同用户的原有操作进行合并,以达到减少因编辑距离产生的工作流结构突变,和增强目标用户自身操作序列的目的。
参见图9,为本申请实施例提供的调整初始操作模型流程示意图。
S206A,遍历初始操作模型。
S206B,判断初始操作模型中的边元素是否存在于基准矩阵中。若否,执行S206F删除所述边元素。若是,执行S206C。
其中,是将依赖关系矩阵作为基准矩阵。若初始操作模型中的“边”元素,不存在于基准矩阵当中,那么就将初始操作模型中的这条边元素进行删除。这一步骤中,需要遍历初始操作模型中的边元素,并与基准矩阵的边元素进行比较。
参见图10,为本申请实施例提供的初始操作模型与基准矩阵示意图。经过S201至S204,得到了如图10所示的初始操作模型,它包含的操作为(A,B,C,D,E,F,G),包含的“与”为(p1,p2)。同时基准矩阵中所包含的操作为(A,B,C,D,E,G),不包含“与”关系,将“操作”和“与”均视为节点元素。
具体实现时,可以将初始操作模型与基准矩阵中的边均以三元组列表的形式存在于系统内存中。以伪代码的形式表示的三元组(Source Node,Target Node,Edge)如下所示:
其中,Source Node与Target Node分别表示模型中的节点元素。Edge的值表示是否具有从Source Node指向Target Node的边存在。如图10中初始操作模型中的边表示为:
[(A,p1,true),(A,D,true),(A,F,true),(A,G,true),(p1,B,true),(p1, C,true),(B,p2,true),(C,p2,true),(p2,E,true),(D,F,true),(D,G,true),(E, G,true),(F,G,true)]
相应地,基准矩阵中的边也以三元组模型表示为:
[(A,B,true),(A,C,true),(A,D,true),(B,E,true),(C,E,true),(D,G, true),(E,G,true)]
遍历初始操作模型中的三元组列表,进行如下操作:
若当前三元组的Source Node与Target Node中有任意一个节点元素不在基准矩阵的节点元素集合中,跳过该三元组,不做任何处理。
若当前三元组的Source Node与Target Node均在基准矩阵的节点元素集合中,此时在基准矩阵的三元组列表中进行查找,如果不存在相同的三元组则将当前初始操作模型列表中的三元组删除。如果存在,不做任何处理。
图10中的初始操作模型中的边进行删减操作后,三元组列表变为:
[(A,p1,true),(A,D,true),(A,F,true),(p1,B,true),(p1,C,true),(B,p2,true),(C,p2,true),(p2,E,true),(D,F,true),(E,G,true),(F,G,true)]。
S206C,将初始操作模型中的“与”元素同基准矩阵的与元素比较,判断是否一致。若否,执行S205G以基准矩阵为标准进行调整所述初始操作模型中的与元素;若是,执行S206D。
具体地,如果初始操作模型中的控制结构“与”元素,与基准矩阵不一致,那么就以基准矩阵为准进行调整。在对边进行处理后,将初始操作模型中的“与”关系,按照基准矩阵进行调整,同边的删除类似,如果当前“与”元素的入操作和出操作有任意一个不在基准矩阵的操作列表中,则忽略当前“与”元素,不做调整。随后将未忽略的“与”元素中的入操作和出操作调整到同基准矩阵中的“与”元素一致。
S206D,将调整后的初始操作模型与S201中得到的目标用户的工作流模型进行合并。
上述处理的目的在于减少编辑距离产生的工作流结构突变,并可以增强目标用户自身操作序列,以保留目标用户操作的个性化特征。
S205E,得到与目标用户的个性化操作模型。
在本申请这一实施例中,以相似用户集合挖掘出的依赖关系矩阵为基准,对合并后的流程模型进行调整,并将调整后的初始操作模型与用户的原有工作流模型进行合并,以达到减少因编辑距离产生的工作流结构突变以及增强目标用户自身操作序列的目的。
其中,本申请实施例同现有技术的主要区别在于,本申请采用服务调用链的相似度来定义操作间的相似度,得到的相似模型具有整体相似性,本申请采用剪边操作、合并原始模型来对模型进行修剪,突出个性化的模型特征。需要说明的是,由于本申请基于服务调用链定义了操作间的相似度,基于基准关系对模型进行修剪,既可以保证生成的操作模型具有高度的结构相似性,同时又能保证模型的个性化的特征。
初始操作模型初始操作模型初始操作模型需要说明的是,本申请不仅可以用于业务系统中的操作模型的建立,还可以应用于其它需要模型来生成路径的场景。
以上对本申请提供的生成操作模型的方法进行了介绍,下面对相应的装置进行介绍。
参见图11,为本申请实施例提供的操作模型生成装置示意图。
一种操作模型生成装置1100,包括:
工作流模型建立模块1101,用于建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序。在一些实施方式中,所述工作流模型建立模块1101 具体用于获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。其中,所述工作流模型建立模块1101的具体实现可以参照图2所示实施例的S201而实现。
相似度计算模块1102,用于根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序。其中,所述相似度计算模块的实现可以参照2所示实施例的S202而实现。
初始模型生成模块1103,用于将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。其中,所述初始模型生成模块1103的实现可以参照2所示实施例的S203而实现。
在一些实施方式中,所述相似度计算模块具体用于:获取各操作对应的服务调用链;将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离;根据所述不同操作的编辑距离计算不同操作的相似度。
在一些实施方式中,所述相似度计算模块具体还用于通过以下公式计算得到不同操作的相似度:
其中,hi表示第i个操作,hj表示第j个操作;|hi|、|hj|分别表示操作hi对应的服务调用链的长度以及操作hj对应的服务调用链的长度;sed(hi,hj)表示操作hi与操作hj间的编辑距离;Simhi,j表示操作hi与操作hj间的相似度;其中,i和j的取值为整数。
在一些实施方式中,所述初始模型生成模块具体用于通过以下公式计算得到目标用户的工作流模型与其他用户的工作流模型的相似度:
其中,Sim表示工作流模型间的相似度;fIDp表示插入和删除的与元素的数量和与元素总数的比值,表示fIDp的值对应的权重;fIDh表示插入和删除的操作元素的数量与操作元素总数的比值,表示fIDh的值对应的权重,所述fIDh为利用不同操作的相似度计算得到;fIDe表示插入和删除的边元素的数量与边元素总数的比值,表示fIDe的值对应的权重;fSp表示替换与元素的均值,表示fSp的值对应的权重;fSh表示替换操作元素的均值,表示fSh的值对应的权重。
在一些实施方式中,所述装置还包括:
相似用户集确定模块,用于确定与目标用户相似的用户,生成相似用户集;调整模块,用于获取所述相似用户集中所有用户的历史操作,分析所述所有用户的历史操作计算得到各代表操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵;利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户的个性化操作模型。
在一些实施方式中,所述相似用户集确定模块具体用于:获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集;依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
在一些实施方式中,所述调整模块具体用于:将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成与所述目标用户的个性化操作模型。
在一些实施方式中,所述调整模块具体用于:遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
其中,所述调整模块的具体实现可以参照图9所示实施例而实现。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
参见图12,为本申请另一实施例提供的用于生成操作模型的装置示意图。所述生成操作模型装置可包括至少一个处理器1201,至少一个网络接口1202或者其它通信接口,存储器1203,和至少一个通信总线1204,用于实现这些装置之间的连接通信。处理器1201用于执行存储器1203中存储的可执行模块,例如计算机程序。该处理器1201可以为CPU,存储器1203可能包含高速随机存取存储器(Random Access Memory,RAM),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口实现该系统网关与至少一个其它网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
其中一个或者一个以上程序存储于存储器1203中,且经配置以由一个或者一个以上处理器1201执行所述一个或者一个以上程序包含用于进行以下操作的指令:建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型。
在一些实施方式中,所述一个或者一个以上处理器201具体还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。
在一些实施方式中,所述一个或者一个以上处理器201具体还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取各操作对应的服务调用链;将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离;根据所述不同操作的编辑距离计算不同操作的相似度。
在一些实施方式中,所述一个或者一个以上处理器201具体还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:确定与目标用户相似的用户,生成相似用户集;获取所述相似用户集中所有用户的历史操作,分析所述所有用户的历史操作计算得到各代表操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵;利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户的个性化操作模型。
在一些实施方式中,所述一个或者一个以上处理器1201具体还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集;依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
在一些实施方式中,所述一个或者一个以上处理器1201具体还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成与所述目标用户的个性化操作模型。
在一些实施方式中,所述一个或者一个以上处理器1201具体还用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (17)
1.一种生成操作模型的方法,其特征在于,包括:
建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;
根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;
将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;
所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型;
所述建立用户各自的工作流模型包括:
获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;
根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;
根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。
2.根据权利要求1所述的方法,其特征在于,所述根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度包括:
获取各操作对应的服务调用链;
将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离;
根据所述不同操作的编辑距离计算不同操作的相似度。
4.根据权利要求1所述的方法,其特征在于,根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作间的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度通过以下公式得到:
5.根据权利要求1所述的方法,其特征在于,在进行基于目标用户的工作流模型生成初始操作模型的操作之后,所述方法还包括:
确定与目标用户相似的用户,生成相似用户集;
获取所述相似用户集中所有用户的历史操作,分析所述所有用户的历史操作,计算得到代表各操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵;
利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户对应的个性化操作模型。
6.根据权利要求5所述的方法,其特征在于,所述确定与目标用户相似的用户,生成相似用户集包括:
获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集;
依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
7.根据权利要求要求5所述的方法,其特征在于,所述利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户对应的个性化操作模型包括:
将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;
合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成所述目标用户的个性化操作模型。
8.根据权利要求7所述的方法,其特征在于,所述将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素包括:
遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;
判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
9.一种操作模型生成装置,其特征在于,包括:
工作流模型建立模块,用于建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;
相似度计算模块,用于根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;
初始模型生成模块,用于将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型;
所述工作流模型建立模块具体用于:
获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;
根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;
根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。
10.根据权利要求9所述的装置,其特征在于,所述相似度计算模块具体用于:
获取各操作对应的服务调用链;
将所述服务调用链抽象为字符串,采用字符串编辑距离的方式计算不同操作的编辑距离;
根据所述不同操作的编辑距离计算不同操作的相似度。
13.根据权利要求9所述的装置,其特征在于,所述装置还包括:
相似用户集确定模块,用于确定与目标用户相似的用户,生成相似用户集;
调整模块,用于获取所述相似用户集中所有用户的历史操作,分析所述所有用户的历史操作,计算得到代表各操作间的依赖关系的值以及代表各操作间的与或关系的值,生成与所述相似用户集唯一对应的依赖关系矩阵;利用与所述相似用户集唯一对应的依赖关系矩阵调整所述初始操作模型,获得与所述目标用户对应的个性化操作模型。
14.根据权利要求13所述的装置,其特征在于,所述相似用户集确定模块具体用于:
获取目标用户以及与所述目标用户的工作流模型相似的工作流模型对应的用户,生成初始用户集;
依据用户各自的属性信息建立用户关系矩阵,利用所述用户关系矩阵确定与所述初始用户集内的用户相似的用户,生成相似用户集。
15.根据权利要求要求13所述的装置,其特征在于,所述调整模块具体用于:
将所述相似用户集对应的依赖关系矩阵作为基准矩阵,调整所述初始操作模型的边元素以及与元素;合并调整后的初始操作模型以及与所述目标用户的工作流模型,生成所述目标用户的个性化操作模型。
16.根据权利要求15所述的装置,其特征在于,所述调整模块具体用于:
遍历所述初始操作模型,判断所述初始操作模型的边元素是否存在于所述基准矩阵中;若不存在,删除所述初始操作模型中不存在于所述基准矩阵中的边元素;判断所述初始操作模型中的与元素是否和所述基准矩阵中的与元素一致;若不一致,以所述基准矩阵为准调整所述初始操作模型中的与元素。
17.一种用于生成操作模型的装置,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
建立用户各自的工作流模型,所述工作流模型包括多个操作以及所述多个操作的执行顺序;
根据业务系统内的不同操作对应的服务调用链,计算所述不同操作间的相似度;所述服务调用链包括所述操作调用的服务以及各服务的发生顺序;
将所述用户中的各用户分别作为目标用户,进行基于目标用户的工作流模型生成初始操作模型的操作;所述基于目标用户的工作流模型生成初始操作模型的操作包括:根据所述目标用户的工作流模型中包括的操作与其它用户的工作流模型中包括的操作的相似度,计算所述目标用户的工作流模型与其他用户的工作流模型的相似度,获取与所述目标用户的工作流模型相似的工作流模型;其中,所述与目标用户的工作流模型相似的工作流模型为与所述目标用户的工作流模型相似度大于设定阈值的工作流模型;合并所述目标用户的工作流模型以及所述与目标用户的工作流模型相似的工作流模型,获得所述目标用户的初始操作模型;
所述建立用户各自的工作流模型包括:
获取用户的历史操作,分析所述历史操作,计算得到代表操作间的依赖关系的值以及代表操作间的与或关系的值;
根据计算得到的代表操作间的依赖关系的值生成所述用户的依赖关系矩阵;
根据所述用户的依赖关系矩阵确定用户的工作流模型中的操作元素和边元素,根据代表操作间的与或关系的值确定所述用户的工作流模型中的与元素,利用确定的所述操作元素、所述边元素、所述与元素生成所述用户的工作流模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710493900.8A CN109118155B (zh) | 2017-06-26 | 2017-06-26 | 一种生成操作模型的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710493900.8A CN109118155B (zh) | 2017-06-26 | 2017-06-26 | 一种生成操作模型的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109118155A CN109118155A (zh) | 2019-01-01 |
CN109118155B true CN109118155B (zh) | 2022-04-05 |
Family
ID=64733915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710493900.8A Active CN109118155B (zh) | 2017-06-26 | 2017-06-26 | 一种生成操作模型的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109118155B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083529B (zh) * | 2019-03-20 | 2020-06-05 | 北京字节跳动网络技术有限公司 | 自动化测试方法、装置、介质和电子设备 |
CN112295231A (zh) * | 2020-11-05 | 2021-02-02 | 中国联合网络通信集团有限公司 | 一种操作训练方法及服务器 |
CN112527387B (zh) * | 2020-11-20 | 2024-03-01 | 杭州大搜车汽车服务有限公司 | 应用处理方法和装置 |
CN112287043B (zh) * | 2020-12-29 | 2021-06-18 | 成都数联铭品科技有限公司 | 基于领域知识的图编码自动生成方法及系统、电子设备 |
CN112785194B (zh) * | 2021-02-04 | 2024-01-26 | 中国地质大学(北京) | 工作流程的推荐方法、装置、可读存储介质及电子设备 |
CN113139574B (zh) * | 2021-03-15 | 2024-04-26 | 上海仙塔智能科技有限公司 | 识别车联网关键用户的方法、电子设备及可读存储介质 |
CN113221678B (zh) * | 2021-04-26 | 2024-06-11 | 深圳市商汤科技有限公司 | 一种标准工时确定方法、装置、计算机设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103942250A (zh) * | 2014-03-13 | 2014-07-23 | 浙江大学 | 流程推荐系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4943240B2 (ja) * | 2007-06-14 | 2012-05-30 | 株式会社日立製作所 | ビジネスプロセス作成方法、ビジネスプロセス作成装置、及びビジネスプロセス作成プログラム |
US20140310054A1 (en) * | 2013-04-16 | 2014-10-16 | Xerox Corporation | Method and system for assessing workflow compatibility |
US20150032499A1 (en) * | 2013-07-23 | 2015-01-29 | International Business Machines Corporation | Business process event mapping |
-
2017
- 2017-06-26 CN CN201710493900.8A patent/CN109118155B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103942250A (zh) * | 2014-03-13 | 2014-07-23 | 浙江大学 | 流程推荐系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109118155A (zh) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109118155B (zh) | 一种生成操作模型的方法及装置 | |
CN110188208B (zh) | 一种基于知识图谱的信息资源查询推荐方法和系统 | |
CN109508419B (zh) | 一种基于知识学习的推荐方法和系统 | |
CN104077723B (zh) | 一种社交网络推荐系统及方法 | |
CN109255586A (zh) | 一种面向电子政务办事的在线个性化推荐方法 | |
US20220058503A1 (en) | Accurate and interpretable rules for user segmentation | |
CN112307762A (zh) | 搜索结果的排序方法及装置、存储介质、电子装置 | |
CN110609870B (zh) | 分布式数据处理方法、装置、电子设备及存储介质 | |
CN111611488A (zh) | 基于人工智能的信息推荐方法、装置、电子设备 | |
CN111967971A (zh) | 银行客户数据处理方法及装置 | |
CN114221991B (zh) | 基于大数据的会话推荐反馈处理方法及深度学习服务系统 | |
CN114997317A (zh) | 风控模型训练、预测风险类别的方法和装置 | |
CN114547439A (zh) | 基于大数据和人工智能的业务优化方法及电子商务ai系统 | |
CN111686451A (zh) | 一种业务处理方法、装置、设备及计算机存储介质 | |
CN116628228A (zh) | 一种rpa流程推荐方法以及计算机可读存储介质 | |
CN115329205B (zh) | 服务于个性化推送服务的大数据挖掘方法及ai推荐系统 | |
CN115186738B (zh) | 模型训练方法、装置和存储介质 | |
CN114049161B (zh) | 基于电商大数据反馈的推送优化方法及电商大数据系统 | |
CN115829110A (zh) | 基于马尔可夫逻辑网预测用户行为的方法及装置 | |
CN111984842B (zh) | 银行客户数据处理方法及装置 | |
CN111125541B (zh) | 面向多用户的可持续多云服务组合的获取方法 | |
CN112685007A (zh) | 结合大数据画像的信息云计算推送方法及数字内容服务器 | |
JPWO2011016281A1 (ja) | ベイジアンネットワーク構造学習のための情報処理装置及びプログラム | |
CN115423565B (zh) | 应用于云端互联网交互流程的大数据分析方法及ai系统 | |
CN114219516B (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 |