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

一种行为决策逻辑识别方法及系统

文献发布时间:2023-06-19 16:08:01



技术领域

本说明书涉及计算机技术领域,特别涉及一种行为决策逻辑识别方法及系统。

背景技术

用户例如人的行为通常有其对应的行为决策逻辑。例如,用户在选择进货商品时有其对应的行为决策逻辑、农户在选择种植的作物时有其对应的行为决策逻辑、旅行者选择旅游地点时有其对应的行为决策逻辑、用户在选择加自选或选择浏览的股票时有其对应的行为决策等。挖掘用户对对象的行为决策逻辑能够可以更好地了解用户的行为偏好,以为用户提供更好的服务。

基于此,亟需一种更好的挖掘用户的决策逻辑的方法。

发明内容

本说明书实施例之一提供一种行为决策逻辑识别方法,所述方法包括:获取用户的多个正样本和多个负样本,其中,所述正样本为所述用户在其上产生目标行为的对象的对象事件数据,所述负样本为所述用户未在其上产生目标行为的对象的对象事件数据,所述对象事件数据基于事件因子进行记录;确定多个目标事件因子;基于所述多个正样本和所述多个负样本,获取所述用户的事件因子偏好数据,所述事件因子偏好数据包括所述多个目标事件因子分别在所述多个正样本和所述多个负样本中的用户偏好属性;基于所述事件因子偏好数据,生成在所述事件因子偏好数据中支持所述多个正样本中的至少部分正样本的一个或多个簇,所述簇包括一个目标事件因子或多个目标事件因子组成的事件因子组合;基于所述一个或多个簇得到所述用户的一个或多个行为决策逻辑。

本说明书实施例之一提供一种行为决策逻辑识别系统,包括:样本获取模块,用于获取用户的多个正样本和多个负样本,其中,所述正样本为所述用户在其上产生目标行为的对象的对象事件数据,所述负样本为所述用户未在其上产生目标行为的对象的对象事件数据,所述对象事件数据基于事件因子进行记录;事件因子确定模块,用于确定多个目标事件因子;偏好数据获取模块,用于基于所述多个正样本和所述多个负样本,获取所述用户的事件因子偏好数据,所述事件因子偏好数据包括所述多个目标事件因子分别在所述多个正样本和所述多个负样本中的用户偏好属性;簇生成模块,用于基于所述事件因子偏好数据,生成在所述事件因子偏好数据中支持所述多个正样本中的至少部分正样本的一个或多个簇,所述簇包括一个目标事件因子或多个目标事件因子组成的事件因子组合;决策逻辑确定模块,用于基于所述一个或多个簇得到所述用户的一个或多个行为决策逻辑。

本说明书实施例之一提供一种行为决策逻辑识别装置,其特征在于,所述装置包括:至少一个存储介质,存储计算机指令;至少一个处理器,执行所述计算机指令,以实现如前所述的行为决策逻辑识别方法。

本说明书实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取所述计算机指令时,所述计算机执行如前所述的行为决策逻辑识别方法。

用户的行为决策逻辑对于了解用户的行为偏好,为用户提供更好的服务带来帮助。但用户的行为受多种因素影响,难以确定得到准确的用户行为决策逻辑。基于此,本说明书实施例提出了一种行为决策逻辑识别方法和系统,结合对象事件数据、用户行为数据,实现针对个体用户的多维度因子的行为决策逻辑分析。

附图说明

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

图1是根据本说明书一些实施例所示的示例性行为决策逻辑识别系统的应用场景示意图;

图2是根据本说明书一些实施例所示的示例性行为决策逻辑识别系统的模块图;

图3是根据本说明书一些实施例所示的示例性行为决策逻辑识别方法的流程图;

图4是根据本说明书一些实施例所示的用户的偏好矩阵的示意图;

图5是根据本说明书一些实施例所示的生成一个或多个簇的流程图。

具体实施方式

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

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

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

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

图1是根据本说明书一些实施例所示的示例性行为决策逻辑识别系统的应用场景示意图。在一些实施例中,如图1所示,行为决策逻辑识别系统的应用场景100可以包括处理设备110、终端设备120、存储设备130和网络140。

处理设备110可以处理从终端设备120、存储设备130和/或行为决策逻辑识别系统的应用场景100的其他组件获取的数据和/或信息。例如,处理设备110可以从终端设备120、存储设备130中获取用户行为数据、对象事件数据、用户的正样本、用户的负样本等,并对其进行处理。又例如,处理设备110可以控制终端设备120、存储设备130工作。在一些实施例中,处理设备110可以执行本说明书中一些实施例所述的行为决策逻辑识别方法的一个或多个步骤。

在一些实施例中,处理设备110可以是单一服务器或服务器组。服务器组可以是集中式的或分布式的。在一些实施例中,处理设备110可以是本地或远程的。例如,处理设备110可以通过网络140从终端设备120和/或存储设备130访问信息和/或数据。又例如,处理设备110可以直接连接到终端设备120和/或存储设备130以访问信息和/或数据。在一些实施例中,处理设备110可以在云平台上实现。例如,云平台可以包括私有云、公共云、混合云、社区云、分布式云、云间云、多云等或其任意组合。

在一些实施例中,处理设备110可以包括输入装置和/或输出装置。在一些实施例中,输入装置和/或输出装置可以包括显示屏、键盘、鼠标、麦克风等或其任意组合。

终端设备120可以与处理设备110和/或存储设备130通信和/或连接。在一些实施例中,可以通过终端设备120实现与用户的交互。在一些实施例中,终端设备120可以包括移动设备121、平板电脑122、笔记本电脑123等或其任意组合。在一些实施例中,终端设备120(或其全部或部分功能)可以集成在处理设备110中。

存储设备130可以存储数据、指令和/或任何其他信息。在一些实施例中,存储设备130可以存储从处理设备110、终端设备120和/或获取的数据(例如,用户行为数据、对象事件数据、目事件因子偏好数据等)。在一些实施例中,存储设备130可以存储处理设备110用来执行或使用以完成本说明书中描述的示例性方法的数据和/或指令。

在一些实施例中,存储设备130可以包括一个或多个存储组件,每个存储组件可以是一个独立的设备,也可以是其他设备的一部分。在一些实施例中,存储设备130可包括随机存取存储器(RAM)、只读存储器(ROM)、大容量存储器、可移动存储器、易失性读写存储器等或其任意组合。在一些实施例中,存储设备130可在云平台上实现。在一些实施例中,存储设备130可以是处理设备110和/或终端设备120的一部分。

网络140可以包括能够促进信息和/或数据交换的任何合适的网络。在一些实施例中,行为决策逻辑识别系统的应用场景100的至少一个组件(例如,处理设备110、终端设备120、存储设备130)可以通过网络140与行为决策逻辑识别系统的应用场景100中至少一个其他组件交换信息和/或数据。例如,处理设备110可以通过网络140从终端设备120获取用户数据。

应当注意,上述关于行为决策逻辑识别系统的应用场景100的描述仅仅是为了说明的目的而提供,并不意图限制本说明书的范围。对于本领域的普通技术人员来说,可以根据本说明书的描述,做出多种修改或变化。例如,行为决策逻辑识别系统的应用场景100可以在其它设备上实现类似或不同的功能。然而,这些变化和修改不会背离本说明书的范围。

图2是根据本说明书一些实施例所示的示例性行为决策逻辑识别系统的模块图。如图2所示,在一些实施例中,行为决策逻辑识别系统200可以包括样本获取模块210、事件因子确定模块220、偏好数据获取模块230、簇生成模块240和决策逻辑确定模块250。在一些实施例中,行为决策逻辑识别系统200对应的功能可以由处理设备110执行。

样本获取模块210可以用于获取用户的多个正样本和多个负样本,其中,正样本为用户在其上产生目标行为的对象的对象事件数据,负样本为用户未在其上产生目标行为的对象的对象事件数据,对象事件数据基于事件因子进行记录。关于正样本和负样本获取的更多内容可以参考图3的步骤310及其相关描述。

事件因子确定模块220可以用于确定多个目标事件因子。关于目标事件因子确定的更多内容可以参考图3的步骤320及其相关描述。

偏好数据获取模块230可以用于基于多个正样本和多个负样本,获取用户的事件因子偏好数据,事件因子偏好数据包括多个目标事件因子分别在多个正样本和多个负样本中的用户偏好属性。关于事件因子偏好数据获取的更多内容可以参考图3的步骤330及其相关描述。

簇生成模块240可以用于基于事件因子偏好数据,生成在事件因子偏好数据中支持多个正样本中的至少部分正样本的一个或多个簇,簇包括一个目标事件因子或多个目标事件因子组成的事件因子组合。关于簇生成的更多内容可以参考图3的步骤340及其相关描述。

决策逻辑确定模块250可以用于基于一个或多个簇得到用户的一个或多个行为决策逻辑。关于决策逻辑确定的更多内容可以参考图3的步骤350及其相关描述。

应当理解,图2所示的系统及其模块可以利用各种方式来实现。例如,通过硬件、软件或者软件和硬件的结合来实现。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。

需要注意的是,以上对于系统及其模块的描述,仅为描述方便,作为示意,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。

图3是根据本说明书一些实施例所示的示例性行为决策逻辑识别方法的流程图。在一些实施例中,流程300可以由处理设备110或行为决策逻辑识别系统200执行。例如,流程300可以以程序或指令的形式存储在存储设备(例如,存储设备130、处理设备110的存储单元)中,当处理设备110或图2所示的模块执行程序或指令时,可以实现流程300。在一些实施例中,流程300还可以利用以下未描述的一个或以上附加操作,和/或不通过以下所讨论的一个或以上操作完成。另外,如图3所示的操作的顺序并非限制性的。

步骤310,获取用户的多个正样本和多个负样本,其中,正样本为用户在其上产生目标行为的对象的对象事件数据,负样本为用户未在其上产生目标行为的对象的对象事件数据,对象事件数据基于事件因子进行记录。在一些实施例中,步骤310可以由处理设备110或获取模块210执行。

用户可以是指使用服务提供平台(例如商品进货平台、股票资讯平台等)的对对象产生行为的主体,例如商家、农户、旅游者、投资者等。目标行为是指需关注的用户的某个或某些行为,例如,商家进货商品、农户种植农作物、用户选择旅游地点、投资者浏览股票等行为。目标行为可以根据对用户的分析目标确定。例如需挖掘用户对商品进货的决策逻辑,则目标行为为进货。又例如,需挖掘用户对股票关注的决策逻辑,则目标行为可以包括加自选、浏览。在一些实施例中,获取模块210可以获取用户的行为数据,进而可以基于用户的行为数据,确定用户在其上产生了目标行为的对象。以使用股票资讯平台的用户为例,其在平台(例如股票资讯平台、股票交易平台)上的行为数据可以包括:浏览A股票、加自选A股票、减自选B股票、关注C股票、买入A股票、卖出B股票等行为数据。浏览是指投资者查看股票信息;加/减自选:是指投资者将股票加入个人选择中或从个人选择中删除;关注是指投资者对股票添加关注以便重点或优先获得关注的股票信息。确定的目标行为为加自选和关注,则可以根据用户的行为数据确定用户在其上产生了目标行为的对象包括A股票、C股票。在一些实施例中,某些涉及用户隐私的行为数据(例如用户的交易数据)需用户授权才可获取。

在一些实施例中,用户的行为数据可以以多元组来表示,例如,用户的一条行为数据可以表示为用户ID、行为类型、对象、日期构成的四元组。以投资行为为例,投资者的浏览某支个股的行为数据可以表示为(用户ID,浏览,股票代码,日期)。在一些实施例中,各种类型的目标行为数据可以其对应的权重,不同类型的目标行为数据可以有不同的权重,例如加自选行为数据对应第一权重,关注行为数据对应第二权重,第一权重可以大于第二权重。在一些实施例中,获取模块210可以基于目标行为数据的权重,确定正样本和负样本的数量比例。

在一些实施例中,用户的行为数据例如目标行为数据可以存储在分布式文件系统(Hadoop Distributed File System,HDFS)中,可以从HDFS系统中获取用户的非隐私的目标行为数据(例如,浏览行为数据)和/或用户确认授权的隐私的目标行为数据(例如交易数据等敏感数据)。

在一些实施例中,获取模块210可以基于用户ID、日期在文件系统中查询获取所需的目标行为数据(例如目标用户在预设时间段的目标行为数据)。

对象可以是指用户的目标行为作用到的事物,例如,商家进货的各种商品、农户种植的各种农作物、各个旅游地点、用户买入和/或卖出的各个股票(其中,某个股票可以称为个股)、用户关注的各个股票等。

对象事件是指现实世界中发生的对象的相关事件,例如,商品的产能上升、物流变快、农作物的种子价格下降、农作物的肥料价格上升、影响农作物的气候变化类型、旅游景点的管控措施类型、旅游景点的淡旺季月份、个股的放量上涨、个股的缩量回调、个股的放量下跌等事件。

对象事件数据是指表示对象事件的数据,在一些实施例中可以用事件特征表示对象的事件数据。在一些实施例中,对象事件数据可以基于事件因子进行记录,不同的事件因子可以表示不同的事件特征。由此,某个对象的对象事件数据可以包括一个或多个事件因子。以个股事件为例,对象事件数据可以由一个或多个个股事件因子构成,个股事件因子可以包括例如涨停、跌停、竞价高开、放量、缩量、即将解禁、净利润大增、突破五日均线等。在一些实施例中,事件因子可以预先定义(例如,预先定义898个事件因子)或根据对象事件数据进行特征抽取等方法得到。

在一些实施例中,各个对象的对象事件数据可以以图谱数据的形式存储,图谱数据中可以包括表示对象的节点、表示对象事件的节点、表示节点之间关系的边。其中,对象事件节点的节点属性信息可以包括一个或多个事件因子。

在一些实施例中,获取模块210可以通过公开数据获取对象事件数据。以个股事件数据为例,市场上的个股事件数据可以是一份公共的个股事件因子库,获取模块210可以将其进行离线预处理、结构化,最后持久化至缓存文件。

在一些实施例中,获取模块210可以为对象事件数据预先建立索引,以便于基于索引在对象事件数据例如图谱中查询获取所需的对象事件数据(例如某个对象在预设时间段的对象事件数据)。例如,可以基于个股、日期构建个股事件数据的双重索引,以便于基于个股、日期在图谱数据中查询获取所需的某个时间段的某个或多个个股的个股事件数据。

由于构建索引的耗时较长,且市场数据有较长时效性,在一些实施例中,获取模块210可以在首次预处理完后将其持久化为数据库缓存(DataBase Cache)文件,若非手动指定需要重新构建,下一次运行会直接读取缓存文件。通过直接读取缓存文件,可以加速后续的关联及采样行为。

在一些实施例中,获取模块210可以采样/获取预设时间段中用户在其上产生目标行为的对象的对象事件数据作为正样本。例如,将用户在预设时间段加自选行为和浏览行为对应的股票的事件数据作为正样本。

在一些实施例中,获取模块210可以采样/获取预设时间段中用户未在其上产生目标行为的对象的对象事件数据作为负样本。例如,将用户在预设时间段中从未浏览和加自选过的股票的事件数据作为负样本。

预设时间段可以根据需求确定,例如可以是历史的一天、一月、两月等。在一些实施例中,获取用户的正样本的预设时间段和获取用户的负样本的预设时间段为同一时间段。

在一些实施例中,为了方便描述,用户的正样本和负样本都可以称为对象事件数据样本。对象事件数据样本可以用n个事件因子(例如所有的898个事件因子)的因子序列表示。对于一个对象事件数据样本(例如正样本或负样本),若该样本数据中存在有某事件因子,则因子序列中该事件因子对应的位置处取值可以为第一预设值例如1,若该样本数据中不存在某事件因子,则因子序列中该事件因子对应的位置处取值可以为第二预设值例如0。

在一些实施例中,获取的正样本和负样本的数量比例可以根据经验或需求设置。例如,可以令负样本的数量大于正样本,又例如,默认设定正负样本数量比例为1:30。

在一些实施例中,用户的多个正样本和多个负样本可以共同构成用户的用户数据,用户数据可以用矩阵表示。用户数据可以包括m行数据,其中,m行对应采样的m个对象事件数据样本(包括用户的正样本、负样本),每一行数据可以包括对应的对象事件数据样本的因子序列(n个事件因子的因子序列)。在一些实施例中,用户数据中的每一行数据中还可以包括标签数据(例如用户数据可以包括m行×(n+1)列)以用于记录对象事件数据样本的正负样本标签(标签取值为1可以表示正样本,取值为0可以表示负样本)。在一些实施例中,多个正样本和多个负样本可以和用户的目标行为数据关联。例如,用户数据中的每一行数据中还可以包括该行对象事件数据样本对应的目标行为数据的内容。具体地,作为示例,一个正样本为用户1在时间t浏览的股票A的个股事件数据,该正样本对应的一行数据中可以包括该正样本对应的用户I D、用户目标行为(如浏览)、对象(股票A的代码)等目标行为数据的内容。

步骤320,确定多个目标事件因子。在一些实施例中,步骤320可以由处理设备110或事件因子确定模块220执行。

在一些实施例中,事件因子确定模块220可以在多个事件因子(例如n个事件因子)中确定多个目标事件因子。

在一些实施例中,可以根据事件因子在多个正样本中的分布与在多个负样本中的分布之间的差异是否满足分布预设条件来确定事件因子是否为目标因子。目标事件因子为在多个正样本中的分布与在多个负样本中的分布之间的差异满足分布预设条件的事件因子。可以理解,在多个正样本中的分布与在多个负样本中的分布之间的差异满足分布预设条件的事件因子可以是多个事件因子中的强因子,其对用户的目标行为决策产生决定作用(即该事件因子与目标行为的关联较强)。在一些实施例中,多个事件因子中除强因子之外的其它事件因子可以称为无关因子。

在一些实施例中,分布预设条件可以包括以下中的一种或多种的组合:事件因子的分布差异检验值满足预设要求(例如大于阈值)、事件因子对正负样本标签的贡献度检验值满足预设要求(例如大于阈值)、事件因子的分布差异检验值和事件因子对正负样本标签的贡献度检验值共同满足预设要求(例如事件因子的分布差异检验值和对正负样本标签的贡献度检验值之和大于阈值)。

在一些实施例中,事件因子确定模块220可以采用下列方法中的一种或多种的组合来确定事件因子是否为目标事件因子:

方法一:确定事件因子在正负样本数据(指采样的多个正样本和多个负样本)中的分布差异检验值,即,该事件因子在正样本数据中的分布与该因子在负样本数据中的分布的差异。某个事件因子在正样本和负样本里面的分布差异越大,则分布差异检验值越大。在一些实施例中,事件因子确定模块220可以通过卡方检验、T检验、F检验等方法得到事件因子在正负样本数据中的分布差异检验值。基于各事件因子的分布差异检验值确定目标事件因子。例如将分布差异检验值大于某预设值的事件因子确定为目标事件因子。

方法二:确定事件因子在正负样本数据中对正负样本标签的贡献度检验值;事件因子的所述贡献度检验值与事件因子在正负样本数据里分布多少有关。在一些实施例中,事件因子确定模块220可以通过多种检验方法获得贡献度检验值,例如,对离散值采用卡方检验,对连续值进行其他相关检验(如,T检验、F检验等)。基于各事件因子的所述贡献度检验值确定目标事件因子。例如将贡献度检验值大于某预设值的事件因子确定为目标事件因子。

方法三:根据方法一及方法二的检验值,对多个事件因子进行排序,确定最优的k个强事件因子。其中k为预设值,例如,可以预设为30、50或100等,k越大保留的强事件因子越多,计算负荷越大。在一些实施例中,事件因子确定模块220可以将方法一及方法二的检验值相加得到事件因子的最终检验值,根据该最终检验值对多个因子进行排序,将最终检验值最大的k个事件因子作为目标事件因子。

在一些实施例中,确定了多个事件因子(例如所有的n个事件因子)中的多个目标事件因子后,可以将用户数据(包括多个正样本和多个负样本数据)中除多个目标事件因子外的其它事件因子(即无关因子)的数据剔除以继续用于后续处理。例如,在n个事件因子中确定了k个目标事件因子,可以将前述m行*n列或m行*(n+1)列的用户数据中(n-k)个其它事件因子对应的(n-k)列剔除,得到包括m行*k列或m行*(k+1)列目标事件因子的用户数据。

步骤330,基于多个正样本和多个负样本,获取用户的事件因子偏好数据,事件因子偏好数据包括多个目标事件因子分别在多个正样本和多个负样本中的用户偏好属性。在一些实施例中,步骤330可以由处理设备110或偏好数据获取模块230执行。

在一些实施例中,目标事件因子的用户偏好属性包括在对象事件数据样本(如正样本或负样本)中,用户对该目标事件因子偏好或不偏好。用户偏好属性有其对应的偏好属性值,例如用户对目标事件因子偏好则偏好属性值为1,不偏好则偏好属性值为0。

在一些实施例中,目标事件因子在正样本中或负样本中的用户偏好属性基于目标事件因子在正样本或负样本中是否存在,以及在多个正样本中该目标事件因子的数量与在多个负样本中该目标事件因子的数量之间的关系确定。

在一些实施例中,若在某个对象事件数据样本(正样本或负样本)中不存在某个目标事件因子,则可以确定在该对象事件数据样本(正样本或负样本)中所述某个目标事件因子的用户偏好属性为不偏好,例如在该对象事件数据样本中所述某个目标事件因子的用户偏好属性值为0。

在一些实施例中,若在某个对象事件数据样本(正样本或负样本)中存在某个目标事件因子,则偏好数据获取模块230可以基于多个正样本和多个负样本(即前述用户数据,可以为n行*k列的矩阵)确定在所述某个对象事件数据样本(正样本或负样本)中,用户对所述某个目标事件因子的用户偏好属性(即偏好或不偏好)。例如,对于某个目标事件因子,偏好数据获取模块230可以基于用户数据中多个正样本包含的该目标事件因子的数量的占比(在本说明书中可简称正样本数据里某目标事件因子占比,是指多个正样本数据中包含的该目标事件因子的数量/用户数据中包含的该目标事件因子的总量)、用户数据中多个负样本包含的该目标事件因子的数量的占比(在本说明书中可简称负样本数据里某目标事件因子占比,多个负样本数据中包含的该目标事件因子的数量/用户数据中包含的该目标事件因子的总量)确定用户对该目标事件因子的用户偏好属性。其中,对于对象事件数据样本(正样本或负样本),若样本中存在某事件因子则称该样本包含该事件因子,若样本中不存在某事件因子则称该样本不包含该事件因子。

在一些实施例中,具体的,若在某个对象事件数据样本(正样本或负样本)中存在某个目标事件因子,并且正样本数据里某目标事件因子占比大于负样本数据里该目标事件因子占比,则可以确定在该对象事件数据样本中所述某个目标事件因子的用户偏好属性为偏好,例如在该对象事件数据样本中所述某个目标事件因子的用户偏好属性值为1。反之,若在某个对象事件数据样本(正样本或负样本)中存在某个目标事件因子,并且负样本数据里某目标事件因子占比大于正样本数据里该目标事件因子占比,则可以确定在该对象事件数据样本中所述某个目标事件因子的用户偏好属性为不偏好,例如在该对象事件数据样本中所述某个目标事件因子的用户偏好属性值为0。

值得注意的是,在前述步骤320中,可以将用户数据(多个正样本和多个负样本)中的无关因子(在正样本中分布和负样本中分布差异不大的事件因子)的相关数据去除,因此用户数据中的多个目标事件因子的正负样本分布都是有差异的,进而每一个目标事件因子都可以根据在正样本数据里和在负样本数据里目标事件因子的不同占比确定用户对其偏好或不偏好。

前述多个目标事件因子分别在多个正样本和多个负样本中的用户偏好属性构成的数据可以称为事件因子偏好数据。在一些实施例中,事件因子偏好数据可以用矩阵表示(可以称为用户的偏好矩阵)。例如,如图4所示,用户的偏好矩阵的包括m行×k列,其中m行分别对应用户的m个对象事件数据样本(包括采样的多个正样本和多个负样本),k列对应k个目标事件因子,每一行数据中包括k个目标事件因子在该行对应的对象事件数据样本中的用户偏好属性值。

步骤340,基于事件因子偏好数据,生成在事件因子偏好数据中支持多个正样本中的至少部分正样本的一个或多个簇,簇包括一个目标事件因子或多个目标事件因子组成的事件因子组合。在一些实施例中,步骤340可以由处理设备110或簇生成模块240执行。

通过生成支持多个正样本中的至少部分正样本的一个或多个簇,可以确定更有效的目标事件因子和/或目标事件因子组合,换言之,生成簇的目的是找到精准的可以支持用户行为的目标事件因子和/或目标事件因子组合。

在一些实施例中,簇生成模块240可以基于多个目标事件因子,生成一个或多个事件因子密集单元,事件因子密集单元可以包括一个目标事件因子或多个目标事件因子组成的事件因子组合。

在一些实施例中,簇生成模块240可以基于事件因子偏好数据,确定一个或多个事件因子密集单元中满足支持条件的一个或多个目标事件因子密集单元。在一些实施例中,支持条件可以包括:事件因子密集单元在事件因子偏好数据中支持多个正样本中的至少部分正样本;支持的正样本数量可以根据经验或需求设置。其中,某个事件因子密集单元所包括的一个或多个事件因子在事件因子偏好数据中的某个样本(正样本或负样本)中的用户偏好属性都为偏好(例如偏好属性值都为1),则可称该事件因子密集单元支持该样本。在本说明书中,事件因子密集单元支持的每个样本都可以称为一个支持点。支持点量是事件因子密集单元支持的正样本的数量。

在一些实施例中,支持条件还可以包括以下中的一种或多种的组合:事件因子密集单元在事件因子偏好数据中支持的正样本数量与多个正样本和多个负样本的总数的关系(后文简称密集单元的覆盖率)满足第一关系条件、事件因子密集单元在事件因子偏好数据中支持的正样本数量与其在事件因子偏好数据中支持的正样本和负样本总数的关系(后文简称密集单元的准确率)满足第二关系条件。

事件因子密集单元的覆盖率=事件因子密集单元的支持点量C/用户行为正样本数量。例如,用户行为正样本共有浏览、加自选、购买这3个,若某事件因子密集单元支持的用户行为正样本有浏览和加自选这2个,则覆盖率为2/3。

事件因子密集单元的准确率=事件因子密集单元的支持点量C/所有正负样本中事件因子密集单元支持的用户行为数量。例如,事件因子密集单元支持的用户行为正负样本共有浏览、加自选、购买、卖出、减自选这5个,若某事件因子密集单元支持的用户行为正样本有浏览和加自选这2个,则准确率为2/5。

在一些实施例中,第一关系条件和第二关系条件可以基于经验或需求设定。例如,将第一关系条件和第二关系条件分别设为事件因子密集单元的覆盖率大于1/2和事件因子密集单元的准确率大于1/3。若某个事件因子密集单元对应的覆盖率为141/280,准确率为141/420;该事件因子密集单元的覆盖率和准确率分别满足第一关系条件和第二关系条件。

在一些实施例中,簇生成模块240可以基于一个或多个目标事件因子密集单元生成一个或多个簇。其中,每个目标事件因子密集单元可以对应一个簇。

在一些实施例中,可以基于多个目标事件因子,通过高维数据聚类的方法生成满足支持条件的一个或多个目标事件因子密集单元,进而得到一个或多个簇。关于基于多个目标事件因子生成一个或多个簇的更多方法可以参见图5及其说明。

步骤350,基于一个或多个簇得到用户的一个或多个行为决策逻辑。在一些实施例中,步骤350可以由处理设备110或决策逻辑确定模块250执行。

行为决策逻辑可以是指对象的事件特征与用户决策的联系。例如,某农户在预计多雨的年份选择种植大豆,某投资者在某个股放量上涨时买入该个股等。

在一些实施例中,决策逻辑确定模块250可以将一个或多个簇输出为用户的一个或多个行为决策逻辑。

在一些实施例中,决策逻辑确定模块250可以在得到的多个簇中确定满足关联性条件的多个簇;以及可以从多个簇中,去除满足关联性条件的多个簇中的部分簇;将多个簇中保留的一个或多个簇输出为用户的一个或多个行为决策逻辑。

在用户发生某个行为时,必然同时出现支持该行为的多个事件因子组合,例如,用户行为满足“股价上升、股价在50元以上”这个事件因子组合,同时也必然满足“股价上升、股价在30/40...以上”这些事件因子组合,这些事件因子组合就是高关联性的事件因子组合。这些事件因子组合对应的多个簇可以称为满足关联性条件(也可以称为高关联性)的多个簇。

在一些实施例中,决策逻辑确定模块250可以在多个高关联性的事件因子组合中,只保留一个最符合用户行为的(即最佳的)事件因子组合,继续以前述例子说明,可只保留“股价上升、股价在50元以上”这个事件因子组合。

在一些实施例中,决策逻辑确定模块250可以采用以下2种方法或其任意组合,确定多个高关联性的事件因子组合:

方法一:根据专家经验对多个事件因子(例如898个事件因子)进行分类,根据两个事件因子组合中各事件因子的所属类别可以判断两个事件因子组合是否是高关联性;例如,898个事件因子可以分为157个知识点大类,例如:K线形态、均线、kdj、成长能力、成交量(例如放量、缩量都属于成交量这一类别)等。

方法二:可以采用Apr ior i算法等关联规则算法对市场数据进行规则挖掘,得到在市场数据中存在的频繁项集(即会同时出现的事件因子组合),如(涨跌幅-大涨)和(涨停-T字涨停)属于一个频繁项集,后者出现时前者必然出现;基于挖掘的频繁项集可以判断得到的多个事件因子组合中,哪些是高关联性的事件因子组合。

在一些实施例中,决策逻辑确定模块250可以对将一个或多个簇中经过择优筛选保留的一个或多个簇输出为用户的一个或多个行为决策逻辑。

在一些实施例中,将一个或多个簇输出为用户的一个或多个行为决策逻辑可以包括将一个或多个簇转换为可理解的逻辑表达。换言之,前述得到的簇可以是人不可读的字符代码,决策逻辑确定模块250可以将簇的字符代码转化为人可读的文本表达。

在一些实施例中,得到用户的一个或多个行为决策逻辑后,可以基于用户对对象的行为决策逻辑为用户提供信息推荐(例如为用户推荐支持用户的行为决策逻辑的一个或多个对象及其相关信息)、消息提醒(例如向用户发送支持用户的行为决策逻辑的一个或多个对象的相关消息提醒)等服务,例如通过平台、终端等设备向用户提供信息推荐、消息提醒等服务,使得用户的用户体验更好。

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

图5是根据本说明书一些实施例所示的生成一个或多个簇的流程图。

如图5所示,首先,簇生成模块240可以基于多个目标事件因子,生成初始维度的多个事件因子密集单元;事件因子密集单元包括一个目标事件因子或多个目标事件因子组成的事件因子组合,其中,目标事件因子的数量等于事件因子密集单元对应的维度。在一些实施例中,初始维度可以是较小的维度,例如一维。在一些实施例中,簇生成模块240可以基于前述获取的事件因子偏好数据例如用户偏好矩阵中的k个事件因子,生成k个一维事件因子密集单元,一维事件因子密集单元包括一个事件因子。例如,如果前述用户偏好矩阵中K=50,即包括50个强因子,则可得到50个一维的事件因子密集单元。

其次,簇生成模块240可以对生成的多个事件因子密集单元进行一轮或多轮迭代处理,得到一个或多个有效簇其中,一轮迭代处理可以包括步骤510和步骤520:

步骤510:在前一轮迭代处理结果对应的一个或多个事件因子密集单元中(若当前轮为首轮迭代,则前一轮迭代处理结果对应的一个或多个事件因子密集单元即为生成的初始维度的多个事件因子密集单元),筛选出符合支持条件的一个或多个事件因子密集单元并将其生成为对应的一个或多个有效簇。关于支持条件的更多具体内容可以参见图3步骤330及其相关描述,此处不再赘述。

步骤520:在一个或多个有效簇可组合时通过对其对应的事件因子密集单元进行两两组合,以得到维度增加1的一个或多个事件因子密集单元并将其生成为对应的一个或多个有效簇作为本轮的迭代处理结果;在一个或多个有效簇不可组合时将其作为本轮的迭代处理结果。

在一些实施例中,一个或多个有效簇可组合是指有效簇满足组合条件,组合条件可以包括有效簇的数量为多个,并且用于组合的有效簇未达到设定的最高维度或还可以升维。若一个或多个有效簇不满足前述组合条件,则一个或多个有效簇不可组合。

在一些实施例中,簇生成模块240对事件因子密集单元进行两两组合可以包括对事件因子密集单元进行任意两两组合,并保留去重后维度增加1的事件因子密集单元。例如,有效簇1对应的事件因子密集单元为(涨停,竞价高开,放量),有效簇2对应的事件因子密集单元为(净利润大增,竞价高开,放量),则两者组合得到的事件因子密集单元为(涨停、净利润大增、竞价高开、放量),事件因子密集单元的维度从3维增加到4维。

最后,一轮或多轮迭代处理完成后,处理设备110可以将一个或多个有效簇作为所需的一个或多个簇,并可以通过步骤350的方法基于一个或多个簇得到用户的行为决策逻辑。

在一些实施例中,处理设备110还可以对一个或多个有效簇中对应的事件因子密集单元支持的正样本的重合度满足重合度条件的两个有效簇进行融合,以得到融合后有效簇;并基于未进行融合的有效簇和融合后的有效簇,得到一个或多个簇。例如将未进行融合的有效簇和融合后的有效簇作为所需的一个或多个簇。

两个有效簇对应的事件因子密集单元支持的正样本的重合度可以是指两个有效簇对应的两个事件因子密集单元支持的相同正样本数量。在一些实施例中,决策逻辑确定模块250可以确定多个簇之间的支持点重合度(支持的相同正样本数量)高(例如重合度大于某阈值)的多个簇,并对其进行密集簇融合。例如,对一个用户的2个簇(事件因子a,事件因子b,事件因子c)、(事件因子a,事件因子b,事件因子d),这两个密集簇的支持点重合度高,则将这两个密集簇融合得到(事件因子a,事件因子b,事件因子c,事件因子d),同时融合后的密集簇维度增加了1。又例如,如果两个簇之间的支持点重合度满足(1-重合度)小于某阈值,则将两个簇进行前述融合。

在一些实施例中,决策逻辑确定模块250还可以对融合后的新簇进行筛选,例如,基于新簇的覆盖率和/或准确率进行筛选,如果新簇的覆盖率或准确率至少有一个发生提升或提升程度满足要求,则保留该新簇,否则舍弃该新簇。

本说明书实施例还提供一种行为决策逻辑识别装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现支持多引擎框架的图模型任务实现方法,所述方法可以包括:获取用户的多个正样本和多个负样本,其中,所述正样本为所述用户在其上产生目标行为的对象的对象事件数据,所述负样本为所述用户未在其上产生目标行为的对象的对象事件数据,所述对象事件数据基于事件因子进行记录;确定多个目标事件因子;基于所述多个正样本和所述多个负样本,获取所述用户的事件因子偏好数据,所述事件因子偏好数据包括所述多个目标事件因子分别在所述多个正样本和所述多个负样本中的用户偏好属性;基于所述事件因子偏好数据,生成在所述事件因子偏好数据中支持所述多个正样本中的至少部分正样本的一个或多个簇,所述簇包括一个目标事件因子或多个目标事件因子组成的事件因子组合;基于所述一个或多个簇得到所述用户的一个或多个行为决策逻辑。

本说明书一些实施例中,(1)结合事件数据、用户行为数据,实现针对个体用户的行为决策逻辑分析;(2)通过预设大量的多维度的事件因子实现多维度的行为逻辑分析;(3)对事件因子进行筛选、升维等聚合处理,使获得的行为决策逻辑更准确、有效。

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

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

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

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

一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。

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

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

技术分类

06120114718399