CN110969184A - 使用迭代人工智能通过通信决策树的有向轨迹 - Google Patents

使用迭代人工智能通过通信决策树的有向轨迹 Download PDF

Info

Publication number
CN110969184A
CN110969184A CN201910925016.6A CN201910925016A CN110969184A CN 110969184 A CN110969184 A CN 110969184A CN 201910925016 A CN201910925016 A CN 201910925016A CN 110969184 A CN110969184 A CN 110969184A
Authority
CN
China
Prior art keywords
worker
data
node
machine learning
decision
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.)
Pending
Application number
CN201910925016.6A
Other languages
English (en)
Inventor
T·U·罗伯茨
A·波莱里
R·库马尔
R·J·查库
J·斯坦尼比
K·约迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oracle International Corp
Original Assignee
Oracle International Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US16/146,678 external-priority patent/US11321614B2/en
Application filed by Oracle International Corp filed Critical Oracle International Corp
Publication of CN110969184A publication Critical patent/CN110969184A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及使用迭代人工智能通过通信决策树的有向轨迹。实施例涉及在整个通信决策树中配置人工智能(AI)决策节点。决策节点可以支持AI模型的连续迭代,以动态地定义与通过树的轨迹对应的迭代数据。

Description

使用迭代人工智能通过通信决策树的有向轨迹
对相关申请的交叉引用
本申请是于2018年6月13日提交的美国申请号16/007,677的部分延续申请,美国申请号16/007,677要求于2017年9月29日提交的美国临时申请号62/566,026的权益和优先权。出于所有目的,这些申请中的每个通过引用整体并入本文。
背景技术
技术进步已经改善了多种类型的通信通道的可访问性和复杂性。另外,数据存储和网络进步具有增加的容量,使得可以在数据源处存储增加量(和种类)的数据以用于潜在的传输。因此,可以定位数据源以在许多潜在时间跨多个数据通道中的任何一个递送多种类型的数据。在考虑多个相关内容递送而不是单个分发时,内容递送选项的阵列会爆炸。内容提供商常常配置一个或多个静态规则以通过相同的通信通道不加区别地向每个数据摄取者提供相同的内容。虽然(一个或多个)通信规范可以在接收不同数据请求间不同,但是(一个或多个)规则可以被配置为不加区别地且一致地对数据请求做出响应。虽然这种方法提供了配置简单性和确定性操作,但它无法对数据摄取者群体间的潜在可变性做出反应,因此可能会次优地处置请求。
发明内容
在一些实施例中,提供了计算机实现的方法。访问表示通信决策树的数据结构,通信决策树被配置为使用机器学习技术动态地定义通过通信决策树的各个轨迹以指示一系列通信规范。通信决策树包括分支节点集合。该分支节点集合的每个分支节点与被配置为识别给定轨迹的方向的动作点对应。在第一时间,检测到通过通信决策树的轨迹已到达分支节点集合的第一分支节点。轨迹与特定用户相关联。响应于检测到轨迹已到达第一分支节点,检索通过使用机器学习技术处理第一用户数据而生成的第一学习到的数据。第一用户数据包括用于其他用户集合的用户属性。进一步响应于检测到轨迹已到达第一分支节点,检索与特定用户相关联的一个或多个特定用户属性,基于第一学习到的数据和一个或多个特定用户属性来识别一个或多个第一通信规范,并且使得第一内容根据一个或多个第一通信规范被传送到与特定用户相关联的用户设备。在第一时间之后的第二时间,检测到通过通信决策树的轨迹已到达分支节点集合的第二分支节点。响应于检测到轨迹已到达第二分支节点,检索通过使用机器学习技术处理第二用户数据而生成的第二学习到的数据。第二用户数据包括至少一些不包括在第一用户数据中的用户属性。进一步响应于检测到轨迹已到达第二分支节点,基于第二学习到的数据和一个或多个特定用户属性中的至少一些用户属性来识别一个或多个第二通信规范,并且使得第二内容根据一个或多个第二通信规范被传送到用户设备。
在一些实施例中,提供了有形地实施在非瞬态机器可读存储介质中的计算机程序产品。该计算机程序产品可以包括被配置为使得一个或多个数据处理器执行本文公开的一个或多个方法的部分或全部的操作的指令。
在一些实施例中,提供了一种系统,其包括一个或多个数据处理器和包含指令的非瞬态计算机可读存储介质,指令在一个或多个数据处理器上执行时使得一个或多个数据处理器执行本文公开的一个或多个方法的部分或全部的操作。
附图说明
下面参考以下附图详细描述本发明的说明性实施例:
图1示出了交互系统的框图。
图2示出了用于生成电子邮件通信的模板。
图3示出了用于生成app通知通信的模板。
图4示出了通信决策树的表示。
图5图示了与用户设备对应并且延伸通过通信决策树的轨迹的示例。
图6示出了定义通信决策树的示例性界面。
图7示出了用于开关图标的示例性参数定义界面。
图8示出了另一个示例性参数定义界面,其包括实现朝着或反对通信中的各种内容的偏向的选项。
图9示出了另一个示例性参数定义界面,其包括使用各种通信渠道来发送通信以实现朝着或反对的偏向的选项。
图10示出了根据本发明一些实施例的用于使用机器学习来指引通过通信决策树的轨迹的过程的流程图。
图11示出了使用支持可定位视觉元件的界面来定义基于机器学习的通信决策树的过程的流程图。
图12示出了根据本发明一些实施例的示例性渐进过滤决策树。
图13示出了根据本发明一些实施例的在渐进过滤决策树的实现期间发生的数据处理的示例性表示。
图14示出了根据本发明一些实施例的用于使用机器学习模型迭代来推进通过决策树的轨迹的过程的流程图。
具体实施方式
在一些实施例中,提供了重复使用机器学习数据以促进迭代地识别通信规范的系统和方法。更具体而言,生成包括节点集合的通信决策树。每个节点可以与(例如)检测到的事件或分支节点对应,分支节点与通信规范决策对应并且连接到表示与一个或多个特定通信规范对应的通信的多个下一节点。通过通信决策树的每条个体轨迹可以与个体用户和/或一个或多个特定用户设备对应。每条个体轨迹可以在节点集合的特定子集上延伸,其中该子集中的节点表示由用户发起的和/或在一个或多个特定设备中的特定用户设备处发起的具体动作、发送到一个或多个特定设备中的特定用户设备的通信的具体特性;和/或关于即将到来的通信的规范要做出的决策。例如,即将到来的通信的规范可以指示何时将其发送、将要发送到哪个设备、通过哪种类型的通信通道发送和/或它将包括哪种类型的内容。在一些情况下,自然语言处理可以被用于将一个或多个类别指派给在训练集中被发送的一个或多个内容对象中的每个内容对象和/或指派给可用于传输的一个或多个内容对象中的每个内容对象。然后,通信规范可以识别要发送的特定类别的内容。
可以基于与用户和/或特定用户设备对应的当前数据、机器学习模型以及用于机器学习模型的一个或多个学习到的参数来做出每个通信规范决策。可以基于与其他用户的集合相关联的用户数据来学习(一个或多个)参数,并且对于其他用户的集合中的每个用户,用户数据指示另一用户的一个或多个属性和/或事件的集合(例如,用户发起的动作或发送给用户的通信的特性)。可以基于与通信决策树内的特定节点和/或由用户发起的特定动作对应的轨迹目标(例如,由客户端识别)来进一步学习(一个或多个)参数。
通信决策树可以被配置为包括多个分支节点,使得可以针对单条轨迹做出多个通信规范决策。在一些情况下,使用相同类型的机器学习算法(例如,监督回归算法)来做出每个决策。但是,可以在每个分支节点处不同地配置算法,使得分支节点相对于(例如)针对每条轨迹处理的输入类型和/或用于处理与轨迹对应的输入的学习到的参数而不同。在各种情况下,可以训练用于不同分支节点的算法以优化相同或不同的变量(例如,基于相同目标节点或不同目标节点的标识)。不仅分支节点可以相对于算法被配置为处理的输入类型而变化,而且附加地可用于潜在地针对给定用户被处理的简档数据的类型可以变化(例如,由于交互监视,简档数据可以随时间累积)。另外,与任何给定节点相关联的学习到的数据可以随时间改变(由于连续和/或重复的学习)。
作为一个示例,可以在检测到与用户对应的简档数据包括至少预定义的字段集合的信息后初始化用户的轨迹。可以使用一个或多个web服务器在与用户相关联的一个或多个会话上收集简档数据和/或从远程数据源检索简档数据。在一些情况下,用户设备自动检测至少一些简档数据并将其传送到(一个或多个)web服务器(例如,经由在通信中自动填充的报头信息,其识别例如唯一设备标识符、MAC地址、浏览器类型、浏览器版本、操作系统类型、操作系统版本、设备类型、设备设置成的语言等)。在一些情况下,通信包括表示用户输入的数据(例如,输入到web表单中的文本、链接选择、页面导航等),然后可以将用户输入记录为简档数据。
初始化轨迹可以包括识别通信决策树内的第一节点,第一节点可以包括第一分支节点。第一决策节点可以与关于识别在电子邮件通信内向用户的设备传送多个内容对象中的哪个内容对象(例如,识别项目的各种组和/或与网站相关联的信息)的决策对应。第一决策节点还可以与关于在两天时段内何时发送电子邮件的决策对应。可以基于第一学习到的数据做出决策,该数据指示——对于特定类型的用户——什么类型的对象和/或通信时间最有可能导致目标结果。例如,目标结果可以包括用户激活电子邮件内的链接以访问网站上的页面和/或用户以与转换(例如,购买在网站上表示的项目)对应的方式与网站进行交互的发生,并且第一学习到的数据可以指示关于三个内容对象中的哪个内容对象将在导致目标结果方面更有效的预测因子包括用户是否最频繁地使用移动设备(相对于膝上型计算机或计算机)、用户的年龄以及关于用户在链接上点击了哪些类型的内容对象的先前的电子邮件交互指示。
一旦发送了电子邮件,轨迹就可以延伸到表示所发送的内容的节点,直到检测到下一个事件。下一个事件可以包括(例如)激活网站内的链接,从而指示用户参与到与网站的当前会话。在检测到这个事件后,轨迹可以延伸到第二决策节点以确定如何在网站上配置所请求的网页(例如,就是否包括动态内容对象和/或如何布置各种内容对象而言)。在这个示例中,第二学习到的数据指示——对于特定类型的用户——哪些配置最有可能导致相同的目标结果。例如,第二学习到的数据可以指示关于四种配置中的哪种配置在导致目标结果方面更有效的预测因子包括用户是否最频繁地使用移动设备(相对于膝上型计算机或计算机)、浏览器类型、用户设备的当前位置,以及用户位置处的当前时间。一旦发送了网页(根据在第二决策节点处做出的决策而配置),轨迹就可以延伸到表示所发送的网页的配置的节点。在检测到各种用户发起的、系统发起的或外部事件(例如,自先前事件以来经过预定义的时间间隔)后,轨迹可以继续延伸。
在这个示例中,目标结果在多个决策中保持相同。但是,不是识别要执行的动作的静态工作流——或者甚至不是确定要执行的动作的特定于用户的完整序列——本文公开的技术将关于个体动作的决策基于当前简档数据、当前学习到的数据和当前事件检测。在特定轨迹的整个生命周期中迭代地执行机器学习以识别要执行的零碎动作。这种方法可以促进数据的高利用率(例如,可以在中间过程决策中利用学习到的数据和/或简档数据的扩展和/或演进),这可以促进实现目标。另外,这种方法使得能够改变(例如,由客户端发起)机器学习技术的定义和/或约束以快速起作用(例如,因为改变仍然可以影响已经发起的轨迹)。例如,客户端可以将目标从转换改变为在网站上保留用户设备至少阈值会话持续时间。可以确定并立即实现与各种分支节点相关联的用于机器学习模型的经修改的参数,以便影响随后到达(一个或多个)节点的先前发起的轨迹。
通信决策(和/或通过通信决策树的部分指引)可以基于匿名或部分匿名的数据,其中任一个或两者可以从由一个或多个提供者或客户端提供的匿名、部分匿名或非匿名数据构建。例如,远程用户数据管理系统可以从一个或多个数据提供者接收部分匿名或非匿名数据,并且可以根据数据隐私规则模糊或消除个体记录中的字段和/或可以在用户子群体之间聚合字段值以遵守数据隐私规则。如本文所述,匿名或部分匿名的数据是已被剥离PII和/或聚合的数据,使得个体数据值不能超过某个概率与特定的人或用户相关联。因此,匿名或部分匿名的数据可以缺少或模糊足够的数据值以防止将特定的人识别为特定的用户或者防止以至少阈值概率将特定的人识别为用户。例如,匿名或部分匿名的数据可以缺少来自简档数据的姓名、电子邮件地址、IP地址、物理地址和/或电话号码。匿名或部分匿名的数据可以包括或排除某些人口统计数据,诸如年龄、城市、职业等。在一些情况下,匿名或部分匿名的数据对于收集以便符合隐私规则、法规和法律是有用的,同时也能够处理其中一些数据。匿名或部分匿名数据的可以包括基于IP地址范围、邮政编码、日期、在先在线查询的类别、种族、性别、年龄、购买历史和/或浏览历史等从设备搜集的信息,其可以已经根据各种限制个人可识别信息(PII)流的隐私政策和法律被搜集。
在一些情况下,匿名或部分匿名的数据被用于生成和/或更新与个体机器学习配置相关联的学习到的数据(例如,一个或多个参数)。这种类型的训练不需要(例如)要求或受益于诸如联系信息之类的数据字段,因此可以剥离数据记录的这些字段。作为另一个示例,可以基于特定字段的值生成一个或多个子群体,并且此后那个字段的具体值可以用子群体的标识符替换。
在一些情况下,与正在为其做出决策的特定用户对应的简档数据包括匿名或部分匿名的数据。例如,系统可以检测到轨迹已到达分支节点并从用户数据管理系统请求数据(例如,使用设备标识符或与轨迹相关联的其它标识符)。系统可以返回简档数据,该简档数据包括(例如)一个或多个具体的非匿名的字段值、已经一般化(例如,指派给类别)的一个或多个字段值,和/或被消除的字段值。当(例如)这种字段值通过(例如,在使用构建于网页中的数据收集特征和/或经由来自客户端的传输而已经被收集后)被供给或者(例如,在使用数据收集特征来收集)或者以其它方式让正为其做出决策的客户端可访问(例如,经由数据共享协定)时,非匿名的字段数据可以包括在简档数据中。系统还可以返回指示字段值之间的关系的人口数据(例如,其本身可以被学习和/或可以随时间演变),这可以用于估计缺失字段值的值或类别。
图1示出了交互系统100的框图。机器学习数据平台105可以包括一个或多个云服务器并且可以被配置为从一个或多个客户端系统105接收用户数据。用户数据可以包括匿名或部分匿名的用户数据(存储在匿名用户数据存储库115中)和/或安全客户端有用用户数据(存储在安全客户端有用用户数据存储库120中),部分其可以比匿名的用户数据匿名更少匿名或者不匿名。当接收到安全客户端有用用户数据时,它可以与客户端的标识符相关联地安全地存储,使得其它客户端不能得到对数据的访问。数据可以存储在多租户云存储系统中,使得多个客户端可以登录到中央位置以访问服务器或服务器的集合,但是其中取决于哪个客户端已经向云存储系统认证来控制对数据的具体访问。匿名或部分匿名的用户数据可以或可以不特别地为各种客户端配置(例如,取决于客户端供应什么数据和/或与客户端相关联的数据共享协议)。因此,机器学习数据平台105处的简档数据填充器122可以生成与特定客户端的一个或多个个体用户对应的简档数据,并且可以定制哪些字段值包括在个体客户端的简档数据中。
在一些情况下,简档数据填充器122增强简档数据集,以便用部分匿名的用户数据来补充客户端有用用户数据,其可以(如聚合的)为给定用户定义特定于客户端的学习到的数据(存储在特定于客户端的学习到的数据存储库130中)。例如,来自客户端有用数据中的简档的数据可以被映射到匿名或部分匿名的用户数据中的一个或多个数据集,使得更丰富的数据集可以用在机器学习分析中。可以使用重叠数据(例如,IP地址(如果包括在匿名或部分匿名的用户数据中)、购买时间、由客户端指派的伪随机用户标识符等)来进行映射。
机器学习模型配置器123可以基于(例如)识别出的目标结果、可用的训练数据、一个或多个客户端识别出的约束和/或由通信决策树和/或由客户指示的潜在动作来配置给定的机器学习模型。配置机器学习模型可以包括为模型的特定实例定义一个或多个参数(例如,实例与特定分支节点、客户端和/或时间段相关联)。
每个参数可以指示用户属性(存储在学习到的参数数据存储库125中)之间的关系和/或相关性。(一个或多个)参数可以包括权重,该权重指示第一用户属性如何预测第二用户属性和/或预测第二用户属性的程度,其中第二用户属性与关于目标结果是否发生和/或发生的程度的指示对应。权重可以沿着离散或连续的值范围定义和/或可以是二进制的。
作为一个示例,(一个或多个)参数可以指示属性集中的哪些属性预测特定类型的转换事件的未来发生。例如,可以确定在上个月已经访问了与“旅行”标签相关联的网页超过两次是购买一件行李的预测器。作为另一个示例,可以确定在给定日期内已经访问过电影评论网页是稍后购买电影的在线租赁的预测器。还可以学习间接关联和趋势,诸如识别用户的年龄与每天在线花费的平均时间之间存在逆相关。每个参数可以与关系的强度和/或置信度相关联,可选地与所搜集的数据点和正在做出的结论之间的序列关联相关联,其中序列中的每个关联携带关联开始处的数据对于它所说的内容是准确的某个概率以及关联本身是准确的某个其它概率。
可以但不是必须使用客户端有用的简档数据来执行配置和/或产生特定于客户端的参数。特定于客户端的(一个或多个)参数可以是,例如,使用匿名或部分匿名的简档数据生成的(一个或多个)参数的经修改的版本。
可以使用各种机器学习技术来生成学习到的数据。例如,机器学习技术可以使用决策树学习、关联规则学习、人工神经网络、深度学习、归纳逻辑编程、支持向量机、聚类、贝叶斯网络、强化学习、表示学习、相似性和度量学习、稀疏字典学习、遗传算法或基于规则的机器学习。在一些情况下,机器学习技术包括集合技术,其学习集合间权重以应用于从各种底层技术(诸如先前提到的那些中的两个或更多个)产生的结果。可以基于(例如)与底层技术相关联的准确性、速度和/或资源使用率来识别集合间权重。
训练机器学习技术(以识别一个或多个参数)可以包括识别所观察到的输入的集合(例如,营销电子邮件的内容、促销的内容和/或网站的配置)如何与对应输出的集合(例如,结果,诸如针对营销电子邮件、对应促销和/或对应网站配置的某些转换事件的存在或不存在)相关。这些观察到的观察结果可以被用于识别建模的关系和/或趋势,其目的是基于导致候选人事实信息的事实信息来预测尚未发生的候选事实信息(例如,要接收的预测的下一输入或基于某些输入的预测的输出)。每个预测可以携带置信度或概率,并且预测链具有组合的置信度或概率。
因此,机器学习模型配置器123可以基于(例如)目标结果、特定于客户端的简档数据和/或机器学习技术来识别特定客户端系统110的模型参数。可以与已经提供有底层客户端有用简档数据的客户端系统选择性地共享特定于客户端的学习到的数据。客户端系统110可以包括托管一个或多个网站、托管一个或多个app和/或使电子邮件被发送的系统。例如,客户端系统110可以包括接收并对一个或多个域上的页面的HTTP请求做出响应的web服务器135,以及将电子邮件递送到用户的电子邮件地址的电子邮件服务器140。客户端系统110还可以或可替代地包括app服务器145,以接收并对经由在用户设备上执行的应用接收的请求做出响应。因此,客户端系统110处的一个或多个服务器可以被配置为检测来自一个或多个用户设备150-1、150-2的请求和/或触发内容向一个或多个用户设备150-1、150-2的传输。用户设备150-1、150-2可以包括例如计算机、智能电话、平板电脑等。可以认识到的是,在各种情形下,单个用户设备可以与单个用户或多于一个用户相关联。另外,单个用户可以与单个用户设备或多于一个用户设备相关联。
Web服务器135和/或app服务器145可以将对来自内容库153的内容(例如,网页或app页面)的请求的指示作为用户数据存储在客户端管理的用户数据存储库150中。存储的数据可以包括自动检测到的信息(例如,请求时间)以及请求中包括的信息(例如,设备标识符、IP地址、请求的网页、用户输入的输入等)。存储数据可以包括更新简档以包括该数据。Web服务器135、电子邮件服务器140和/或app服务器145还可以在客户端管理的用户数据存储库150中存储数据,该数据指示哪些内容被分发给特定的用户设备(例如,通过识别传输时间、用户设备标识符、(一个或多个)内容对象标识符和/或通信的类型)。
客户端系统110可以将来自客户端管理的用户数据存储库150的至少部分用户数据发送到机器学习数据平台105,机器学习数据平台105可以将其存储在安全客户端有用用户数据存储库120中。(一个或多个)传输可以周期性地、在对特定于客户端的学习到的数据的请求期间、以规则的时间间隔等发生。在一些情况下,客户端系统110在将用户数据发送到机器学习数据平台之前至少部分地将用户数据中的一些或全部进行匿名(例如,通过省略或模糊至少一些字段的值)(例如,使这些用户数据在平台处存储为匿名或部分匿名的用户数据)。在一些情况下,数据不是至少部分匿名的,使得数据或者存储在安全客户端有用用户数据存储库120中或者至少部分地在机器学习数据平台105处被匿名。对于一些数据集,匿名或部分匿名的数据在被剥离PII之后从第三方被接收,并且由客户端系统110存储,而无需访问非匿名的数据。在一些实施例中,匿名或部分匿名的数据是本地匿名或部分匿名的。在这些实施例中,网站可以在其网站上运行嵌入脚本,该脚本在被执行时搜集关于用户对网站的访问的匿名或部分匿名的数据。脚本可以仅搜集可以在不知道用户的个人信息的情况下被收集并且被存储在数据云中的信息,这确保永远不会超出某个概率推断出用户身份。
客户端系统110可以将机器学习数据存储在机器学习数据存储库155中。在一些情况下,机器学习数据包括在分支节点处针对给定轨迹做出的一个或多个决策的指示、使用通信决策树和/或一个或多个参数识别出的一个或多个内容规范。可以从来自机器学习平台105的数据请求、接收和/或导出机器学习数据。例如,在一些情况下,机器学习模型配置器123使得为客户端生成的和/或可应用于客户端的参数被发送到客户端系统110。作为另一个示例,机器学习模型实现器157可以将用特定参数配置的机器学习模型应用于特定简档数据,以识别一个或多个特定通信规范,以定义要为与简档数据对应的客户端采取的通信动作(和/或轨迹的下一个节点)。然后,机器学习模型实现器157可以使得识别出的通信动作和/或下一个节点的指示与轨迹、用户和/或用户设备的标识符相关联地发送。
识别下一个节点和/或(一个或多个)通信规范可以包括使用特定简档数据和一个或多个学习到的参数来运行(与当前分支节点相关联的)机器学习模型。结果可以指示(例如)各种内容呈现特性中的哪一个与导致特定目标结果(例如,目标转换)的高(例如,高于阈值)或最高概率相关联。在一些情况下,分析包括识别与导致特定转换目标结果的最高概率相关联的一个或多个内容呈现特性。在一些情况下,分析把导致特定转换结果的概率与和各种内容呈现特性相关联的预定义的成本度量进行平衡。
在一些情况下,使用参数(例如,在机器学习数据平台105或客户端系统110处)运行机器学习模型可以包括(例如)使用简档数据和参数执行回归分析,以生成可以与一个或多个阈值进行比较的数字。一个或多个阈值可以定义两个或更多个范围(例如,开放范围或闭合范围),每个范围与特定的下一个节点和/或通信动作对应。在一些情况下,使用参数运行机器学习模型可以包括处理简档数据的至少部分和参数的至少部分以产生可以与参考数据变量集合中的每一个(例如,单个值、向量、矩阵、时间序列等)比较(例如,经由计算差异、使用成本函数计算成本等)的结果——每个都与特定的下一个节点和/或通信动作相关联并且每个都潜在地至少部分地基于参数来定义。可以选择与针对其的比较指示了最接近的对应关系的参考数据变量相关联的节点或通信。
动态内容生成器147可以根据所选择的(一个或多个)通信规范来触发内容对象的呈现。为了生成适当的指令,动态内容生成器147可以首先识别什么通信通道要用来发送对象、要发送的对象的类型、要发送的内容的版本和/或何时内容对象要被发送。可以基于(例如)机器学习模型的实现结果、机器学习模型的配置(例如,其可以约束关于这些选项中的一个或多个的潜在选项)和/或一个或多个参数来确定标识。
动态内容生成器147可以识别要发送的通信类型(例如,电子邮件、SMS消息、弹出浏览器窗口或推送的app警报),其可以通知(例如)web服务器135、电子邮件服务器140和/或app服务器145中的哪一个要发送通信。可以明确地(例如,基于机器学习结果、参数和/或机器学习模型配置)或隐式地(例如,由于所选择的内容对象是特定类型)来进行识别。
识别内容对象可以包括从现有内容对象的集合当中选择或者生成新内容对象。内容对象可以包括(例如)网页、网页内的对象、图像、文本消息、电子邮件、电子邮件内的对象和/或文本。在一些情况下,对简档数据执行配置的机器学习模型的结果识别特定内容对象。在一些情况下,结果识别内容的特性(例如,具有特定元数据类别)和/或识别用于选择内容的特定技术。例如,结果可以指示“工具”项目将在内容对象中被特征化和/或通信将包括与四个不同(但未指定)类别对应的四个内容对象。在这种情况下,动态内容生成器147可以(例如)使用选择技术从潜在内容对象的集合中选择,这(例如)经由机器学习实现的结果、经由参数和/或经由预定义的设置来指示。例如,选择技术可以指示选择技术将包括伪随机选择技术、识别最近添加的对象的技术、识别潜在内容对象的集合内的最高转换对象的技术(例如,具有在机器学习结果中指示的一个或多个属性)。
在一些情况下,明确地识别要发送通信的时间(例如,基于机器学习结果、参数和/或机器学习模型配置)。例如,时间范围可以被定义为以当前时间开始并以客户端识别出的最大时间结束。该模型可以评估该时间范围内的规则间隔开的潜在传输时间的集合。(在一些情况下,每个潜在传输时间与其它潜在规范(诸如内容类别或通信通道)相结合被多次考虑)。机器学习模型结果可以识别与导致目标结果的最高结果概率相关联的传输时间。值得注意的是,如果考虑规范的组合,那么传输时间可以包括与最高概率相关联的组合中的时间。在一些情况下,在从与机器学习结果相关联的用户设备接收到对内容(例如,与给定的网站或app对应)的下一请求后,或者根据预定义的传输调度,立即发送通信。
在一些情况下,在发送通信时或之前识别与通信对应的每个规范(例如,在任务期间和/或使用机器学习模型、机器学习配置、参数、客户端规则等)。因此,可以在传输通信之前执行通信和/或通信传输的全部或一些客户端控制的配置。在一些情况下,在发送通信之后识别与通信对应的至少一个规范(例如,在任务期间和/或使用机器学习模型、机器学习配置、参数、客户端规则等)。因此,可以在传输通信之后执行通信和/或通信传输的至少一些客户端控制的配置。因此,这种传输后配置可以基于在传输通信之前不可用的学习到的数据和/或简档数据。例如,与用户对应的附加简档数据可以在发送电子邮件的第一时间和打开并渲染电子邮件的第二时间之间变得可用。所发送的电子邮件可以包括在要渲染电子邮件时执行的脚本。该脚本可以使得发出请求以识别设备性质,诸如布局和/或应用类型。该脚本可以传递这些性质以及对要呈现给服务器的内容的请求。因此,服务器可以基于具体渲染信息、当前简档数据和/或当前参数来选择内容和/或识别一个或多个显示配置,以指引具体内容的选择。
作为附加或替代示例,通信可以包含一个或多个对页面的引用或链接,当被打开时(例如,在web浏览器中),渲染内容用于显示。被链接作为目标的页面可以包括由机器学习引擎在生成通信之前或之时确定的一些内容。页面还可以被配置为包括当检测到对渲染页面的请求时(例如,当脚本检测到链接的激活时)和/或当正在生成或渲染页面时要选择或生成的内容(例如,如通过执行脚本作为加载页面的一部分所指示的)。在一些情况下,电子邮件中的脚本在渲染时或在请求渲染时识别内容配置。在一些情况下,在链接的页面上执行的脚本识别内容配置。
作为一个示例,客户端系统可以提供食品递送的在线购买。可以检测到特定用户在下午2点查看了给定餐馆的菜单。客户端系统可以从其客户端管理的用户数据中从用户的简档数据中检索用户属性的集合。特定于客户端的学习到的数据可以指示,如果在晚上向用户发送包括折扣代码的电子邮件,那么用户将有76%的机会从该餐馆进行购买(例如,与和其它类型的通信和其它时间相关联的较低概率相比较)。响应于确定76%的机会高于发送折扣阈值的65%阈值,电子邮件服务器140将电子邮件发送到用户设备。该电子邮件包括脚本,该脚本在被执行时识别要呈现的餐馆和折扣。用户在第二天上午10点打开电子邮件。执行该代码以从客户端系统请求餐馆和折扣。此后,客户端系统已经接收到更新后的公共学习到的相关数据。客户端系统将时间、用户的位置(当她现在在工作时)和在先购买信息输入到基于学习到的数据构建的决策树。确定折扣为10%(例如,为了维持转换的阈值可能性)并且餐馆将是靠近用户工作地点的熟食店(例如,以最大化转换的可能性),而如果用户在前一天晚上打开电子邮件,那么不同的用户属性和学习到的数据将导致来自用户家附近的印度餐馆(例如,以最大化可能性)的15%折扣(例如,以维持阈值可能性)。该电子邮件包括从熟食店订购的链接。当用户点击链接时,web服务器确定要呈现的内容-具体而言,是推荐哪些食品。这些推荐甚至更多地基于最近更新后的公共学习到的相关数据,这些数据指示沙拉和三明治应当被推荐超过汤和主菜,因为前面的选择最近受欢迎(预计由于天气变暖而受欢迎)。因此,这个示例说明了如何基于最近学习到的数据和用户属性为给定用户动态定制内容呈现。
机器学习数据平台105可以基于(例如)从用户设备接收的任何通信(例如,响应于工作流动作)来生成更新后的客户端数据。例如,更新后的客户端数据可以包括基于接收到的通信的报头或有效载荷中的数据、关于是否(例如,以及何时)检测到特定事件的指示和/或简档被指派给的工作流的当前或最后阶段来生成的一个或多个新字段。机器学习数据平台105可以将更新后的客户端数据(例如,连同对应的简档标识符)利用到客户端系统110,客户端系统110可以将更新后的数据存储在特定于客户端的学习到的数据存储库165中。客户端系统110可以但不需要与(一个或多个)底层简档分开存储更新后的数据。
将认识到的是,在一些情况下,机器学习数据平台中的一些或全部可以结合在客户端系统110内。在一些情况下,客户端系统110在通信决策树的迭代期间与机器学习数据平台通信。例如,客户端系统110(例如,客户端系统110处的web服务器135或app服务器145)可以检测对从用户设备接收的web内容或app内容的请求中的标记(例如,包括在URL中),其中标记指示它与基于机器学习的工作流的关联。然后,客户端系统110可以向机器学习模型实现器157警告该请求,以便可以适当地更新轨迹。
机器学习数据平台、客户端系统110和用户设备150-1、150-2可以通过网络160进行通信,网络160可以包括例如互联网、局域网、广域网等。将认识到的是,可以考虑对所描绘和描述的实施例的各种替代方案。例如,可以在客户端系统110处执行机器学习的一些或全部。客户端系统110可以使用机器学习技术周期性地接收匿名或部分匿名的用户数据以进行处理。
用于使用和配置通信决策树的其它技术在2018年6月13日提交的美国申请号16/007,762(标题为“Methods and Systems for Configuring Communication DecisionTrees based on Connected Positionable Elements on Canvas”)以及于2018年6月13日提交的美国申请号16/007,787(标题为“Machine-Learning Based Processing of De-Obfuscated Data for Data Enrichment”)中详细描述。出于所有目的,这些申请中的每个都通过引用整体并入本文。
图2和图3图示了用于配置用于通信的模板202和302的界面200和300,其被配置为在检测到渲染过程或在渲染时被部分地配置。配置可以包括使用当前学习到的模型配置和当前简档数据来执行配置的机器学习模型。图2中所示的模板202包括用于生成电子邮件通信的模板,并且图3中所示的模板302包括用于生成app通知通信的模板。
模板202包括静态文本(例如,文本205)和交互特征(例如,按钮210)。模板202还表示特定布局,其中三个项目将在文本205上方线性地表示。模板202还包括动态组件(例如,动态文本215和动态图像220),其被配置为在请求或发生电子邮件的渲染时被识别。因此,当发送电子邮件通信时,静态组件可以与被配置为(在检测到渲染电子邮件的请求后)本地识别当前简档数据的至少一部分、请求当前简档数据的至少一部分、请求识别动态组件、接收或检索动态组件(例如,使用当前简档数据、当前匿名或部分匿名的数据和/或当前学习到的参数来识别)和/或基于模板和动态组件生成完整电子邮件的代码一起发送。然后可以呈现生成的电子邮件。
模板302包括静态布局和多个动态文本组件(例如,动态标题部分310)。模板302可以被配置为与促进动态识别每个动态文本组件的脚本一起发送。例如,脚本可以——在检测到对呈现通知的请求后(例如,响应于打开app、点击通知app元件等)——在本地识别当前简档数据的至少一部分、请求当前简档数据的至少一部分、请求识别动态文本组件、接收或检索动态文本组件(例如,使用当前简档数据、当前匿名或部分匿名的数据和/或当前学习到的参数来识别)和/或基于模板和动态文本组件生成完整通知。然后可以呈现生成的通知。界面300示出了动态生成的通知315的示例,其包括静态布局和特定的动态文本。
图4示出了通信决策树400的表示。通信决策树400包括起始节点405,每个轨迹开始于该起始节点。在检测到用户已经完成两个特定动作(例如,初始化两个网站会话、从网站购买两个项目、导航到网站上的至少两个网页等)后,可以(在这个示例中)初始化特定轨迹。
通信决策树400包括三个分支节点410、415和420——每个分支节点分支以连接到表示三个不同动作的三个节点。轨迹可以自动且立即从初始节点405延伸到第一分支节点410,这触发第一决策被做出。具体而言,第一决策可以包括识别要用于发送网站特征的警报的通信通道。警报可以包括自动呈现的静态报头,其指示(例如)产品或折扣(一般)与网站相关联地可用。警报还可以与在检测到对打开通知的请求后要在第二分支节点415处识别的动态内容(例如,具体地识别一个或多个产品和/或折扣)相关联。
第一分支节点410连接到表示电子邮件通信通道的第一动作节点425a、表示SMS消息通信通道的第二动作节点425b,以及表示基于app的通信通道的第三动作节点425c(其中通知将被推送到和/或由安装在用户设备上的应用推送)。
可以使用基于一个或多个第一参数配置的机器学习模型来做出第一决策。可以基于匿名和/或部分匿名的用户数据和/或特定于客户端的数据来动态地确定一个或多个第一参数。例如,匿名和/或部分匿名的用户数据可以指示——对于各种用户子群体(如基于一个或多个用户属性所定义的)中的每个——经由三种类型的通信通道中的每一种发送的警报传输对于触发用户在对应网站上发起会话(例如,如基于使用警报内的跟踪链接所确定的)并在会话期间完成交易的有效性如何。匿名和/或部分匿名的用户数据可以与具有一个或多个特定特性的许多不同网站对应。特定于客户端的数据可以包括由给定客户端针对感兴趣的特定网站跟踪的数据,并且可以包括具体地识别向其发送各种警报和结果的每个用户的数据。因此,特定于客户端的数据在一些方面相对于匿名和/或部分匿名的数据可以更丰富,但是特定于客户端的数据中表示的用户的数量可以小于匿名和/或部分匿名的数据中表示的用户的数量。另外,特定于客户端的数据可以缺少相关的属性组合。例如,给定的客户端可能先前没有使用基于应用的警报,这可能降低了机器学习模型可以用其预测此类警报的潜在影响的准确性。
机器学习模型(用第一参数配置)可以使用与轨迹相关联的简档数据来确定给用户的通信通道。简档数据可以包括客户端收集的简档数据(例如,使用与来自关联于轨迹的用户设备的先前HTML请求相关联的元数据、cookie和/或输入)。简档数据还可以包括从远程用户简档数据存储库请求和接收的其它简档数据,其可以从多个web主机、客户端等收集并管理简档数据。
在识别出通信通道后,轨迹延伸到对应的动作节点(425a、425b或425c)。然后使用对应的通信通道发送警报。警报可以被配置为在检测到对打开警报的请求后自动识别有限的内容并使轨迹延伸到第二分支节点410。然后可以在第二分支节点410处做出决策以确定要在警报的主体中呈现的具体内容。
因此,第二分支节点415连接到表示识别用户最近在网站上查看过的产品的内容的第一通知内容节点430a、表示识别在过去一周内在网站上(跨用户)查看最多的其中四个产品的内容第二通知内容节点430b、以及表示包括折扣标识的内容的第三通知内容节点430c。可以使用基于一个或多个第二参数配置的机器学习模型来做出第二决策。因此,在一些(但不是全部)情况下,在各种分支节点处用于做出决策的一般类型的机器学习模型可以是相同的,但是特定配置(例如,指示要指派给各种用户属性的权重,这些用户属性应在所有和/或目标结果处考虑)可以不同。
可以基于匿名和/或部分匿名的用户数据和/或特定于客户端的数据来动态地确定一个或多个第二参数。但是,自做出第一决策以来,匿名和/或部分匿名的用户数据和/或特定于客户端的数据中的每一个可能已经改变,这会导致第一与第二参数之间的差异。另外,在第二分支节点415处考虑的潜在动作不同于在第一分支节点410处考虑的动作。因此,第一与第二配置可以不同。此外,被处理的简档数据在第一与第二分支节点之间可以不同。例如,客户端相关联的应用可能已经在第一和第二分支节点处执行的处理之间安装在用户设备上(例如,使得基于应用的通知是第二分支节点处的选项但不是第一分支节点处的选项)。
在识别出内容后,轨迹延伸到对应的内容节点(430a、430b或430c)。然后将对应的内容发送到用户设备,使得它可以在用户设备处呈现。
内容可以包括到网站处的网页的一个或多个跟踪链接。在检测到跟踪链路已被激活后,轨迹可以延伸到第三分支节点420。然后可以在第三分支节点415处做出决策,以确定要在所请求的网页上呈现的具体内容。
因此,第三分支节点420连接到第一网页内容节点435a,其表示识别四个代表性产品的内容——每个代表性产品与不同类别相关联;第二网页内容节点435b,其表示识别四个代表性产品的内容——每个代表性产品与相同类别相关联;以及第三网页内容节点435c,其表示基于先前网页交互数据识别被预测为给定用户感兴趣的单个产品的内容。
可以使用基于一个或多个第三参数配置的机器学习模型来做出第三决策。作为对匿名和/或部分匿名的用户数据、特定于客户端的数据的暂时改变的结果和/或作为潜在动作的差异的结果,(一个或多个)第三参数可以与(一个或多个)第一参数和/或(一个或多个)第二参数不同。此外,在第三分支节点420处被处理的简档数据可以与在第一分支节点410和/或第二分支节点415处被处理的简档数据不同(例如,作为检测来自用户设备的通信中的新元数据和/或从远程系统接收与简档对应的信息的结果)。
在识别出内容后,轨迹延伸到对应的内容节点(435a、435b或435c)。然后将对应的内容发送到用户设备,使得它可以在用户设备处在对应的网页内呈现。
将认识到的是,虽然图4中描绘的通信决策树400示出了在每个通信阶段做出单个决策(当要发送通知时、当要呈现通知的主体时以及当要呈现网页时),但是可以代替地使用机器学习模型来做出多个决策。例如,在分支节点410处,可以做出关于使用什么通信通道以及何时发送通知的决策(例如,通过识别时间段内的时间或潜在时间集合中的时间)。作为另一个示例,可以在通信通道决策之前或之后做出分开的决策以识别传输时间。因此,机器学习模型可以被配置为生成多个输出,或者多个机器学习模型可以具有多个配置(每个配置与不同的参数和/或超参数对应,每个参数和/或超参数被分开训练和/或每个产生分开类型的输出)。
图5图示了与用户设备对应并且延伸通过通信决策树400的轨迹500的示例。在这种情况下,在第一分支节点410处做出的机器学习结果指示将使用电子邮件通信通道来发送通知,使得轨迹500延伸到第一动作节点425a。然后将电子邮件通知发送到用户设备。对电子邮件内容的请求被检测到,指示用户正在尝试查看电子邮件,使得轨迹500延伸到第二分支节点415。在那里,做出决策以包括包含电子邮件中的折扣标识的内容。因此,轨迹500延伸到第三通知内容节点430c,并且对应的内容被发送到用户设备。
然后检测到对与电子邮件内的目标链接对应的网页的请求,使得轨迹500延伸到第三分支节点420。生成机器学习结果,其指示网页将包括识别四个代表性产品的内容——每个代表性产品与不同类别相关联。因此,轨迹500延伸到第一电子邮件内容节点435a,在该第一电子邮件内容节点435a处将对应的网页内容发送到用户设备。
在所描绘的实例中,第一分支节点、第二分支节点和第三分支节点处的决策被指示为在第一天的下午5点、第二天的下午12点和第二天的下午6点做出。然后立即执行对应的动作。将认识到的是,还可以根据机器学习模型执行、客户端规则或其它技术来决定动作时间。
还应该认识到的是,识别基于机器学习的决策可以包括实现一个或多个附加约束和/或因子。可替代地或附加地,可以基于一个或多个附加约束和/或因子来进一步修改基于机器学习的决策。例如,于2015年7月13日提交的美国申请号14/798,293(其通过引用整体并入本文用于所有目的)进一步详述了动态识别通信特性的附加技术,其还可以与本文公开的机器学习技术相结合。
在一些实施例中,提供了利用画布来促进配置机器学习实现序列以部分地定义通信交换的系统和方法。更具体而言,利用画布,其接受个体开关视觉元件与对应的通信视觉元件的集合的定位和连接。然后可以基于定位和连接的视觉元件的集合生成通信决策树。画布可以被配置为针对每个通信视觉元件接受与通信视觉元件相关联的一个或多个通信规范的标识。每个开关视觉元件可以表示机器学习技术(与通过训练学习到的特定参数相关联),以用于从连接到开关视觉元件的通信视觉元件的集合中选择特定的通信视觉元件。画布可以被配置为接受(例如,对于每个开关视觉元件或一般而言)目标结果的标识(例如,表示用户发起的事件或通信),其可以指引机器学习选择。因此,使用机器学习技术来选择的特定通信视觉元件可以与被预测相对有可能导致目标结果的通信规范(例如,其可以被表示为通信决策树中的事件视觉元件)对应。
可以为每个表示的开关视觉元件定义机器学习模型。可以使用与其它通信决策树有关的先前轨迹来训练机器学习模型(例如,但是利用具有通信视觉元件的其它通信决策树,所述通信视觉元件与和由正在被训练的模型中的通信视觉元件表示的通信规范相似或相同的通信规范对应)。例如,可以通过确定——针对被路由的轨迹,以便触发具有特定通信规范的通信——那些轨迹表示什么后续用户发起的事件(例如,以及轨迹的哪个部分表示客户端识别的目标结果的发生)来训练模型。还可以或可替代地使用轨迹来训练模型,因为它们的出现与所生成的通信决策树有关。
在一些情况下,可以使用反映先前事件的数据集(例如,通过相同或不同的通信决策树的轨迹和/或事件序列的其它指示)来训练模型,并且用新数据来增强模型。新数据最近可能已经可用(例如,经由新接收的表单输入或元数据检测),但是可以与被估计为静态或可预测地改变的变量类型对应。例如,如果在时间X识别出用户的年龄,那么可以计算用户在时间X-3年的年龄,而在延长的时间段内对兴趣或位置变量的回顾性估计的准确性可能不太可靠。然后,训练可以确定新数据中表示的各种属性是否可预测特定事件是否将要发生。
界面可以被配置为接受关于在各种机器学习阶段应用的偏置的指示。例如,对于连接到特定通信视觉元件集合的给定开关元件,客户端可以与视觉上与第一视觉元件相关联的滑块控件交互,以指示路径选择将朝着第一视觉元件被促进(或从其减弱)。可以基于交互来设置馈送到机器学习模型中的元数据,以使得能够实现对应偏置。在一些情况下,元数据可以与未学习到的超参数对应,其随后被用于调整或约束学习到的参数(例如,权重)。在一些情况下,元数据被用于定义要应用于由机器学习模型生成的结果的后处理调整。在一些情况下,当与由元件表示的通信规范对应的训练数据相对低时(例如,一般而言和/或与给定的通信阶段相关联),客户端或系统实现朝着给定通信视觉元件的偏置。
在一些情况下,界面可以使客户端能够定义通信决策树的结构和/或——对于每个决策节点——要在节点处执行的机器学习模型的一个或多个超参数。应该注意的是,可以基于一个或多个超参数和一个或多个参数来定义机器学习模型。一个或多个超参数中的每一个包括不经由机器学习模型的训练来学习到的变量,而一个或多个参数包括经由机器学习模型的训练来学习到的一个或多个变量。因此,界面可以被配置为允许客户端指定超参数,其指示(例如)分支节点的数量、与连接到每个分支节点的每个分支对应的动作、其它节点间连接、在执行个体机器学习模型期间要观察的一个或多个约束等等。
图6图示了用于定义通信决策树的示例性界面600。具体而言,界面包括画布605,在画布605上可以定位和连接各种节点的表示。界面600可以包括图标的集合,图标可以被选择并定位在画布605上以表示具体的顺序操作。图标的集合可以包括表示通信决策树的开始的开始图标610。开始图标610可以与可以接收如下条件的定义的配置逻辑相关联,该条件在被满足时指示将要发起通过通信决策树的轨迹。
图标的集合还可以包括结束图标615。可以定义通信决策树以指示在到达结束图标615后给定轨迹是完整的。然后,客户端可以在定位的开始图标610和定位的结束图标615之间连接动作定义图标和/或事件检测图标,以表示在轨迹观察期间要执行的各种操作和评估。
包括在图标集合中的动作定义图标可以是开关图标620。开关图标620与分支节点对应,在该分支节点处选择或“切换到”分支。可以使用配置的机器学习模型和简档数据进行选择。在许多情况下,开关图标620连接到多条潜在路径。潜在路径可以与另一个图标(例如,通信图标、事件检测图标、其它开关图标和/或结束图标)相交。
示例性通信图标包括指示要将电子邮件发送到用户设备的电子邮件图标625、指示要将文本或SMS消息发送到用户设备的文本消息图标630,以及指示将经由安装在用户设备上的app指示警报的app消息图标635。在一些情况下,潜在路径指示不采取任何动作(经由缺少通信图标)。在所描绘的画布中,定位的开关图标连接到三条路径:两条电子邮件路径(例如,与不同的内容和/或传输时间相关联)和一条无动作路径。
包括在图标集合中的事件检测图标可以包括目标检测图标637,其表示已经检测到与针对一种或多种机器学习技术的目标结果对应的事件。目标检测图标637和/或另一个事件检测图标可以指示(例如)通知已被打开、通知中包括的目标链接已被激活、与轨迹相关联的用户设备已发起与网站的会话、产品(例如,任何产品或具体产品)已经在网站上被购买、与轨迹对应的附加简档信息已经被提供等等。
界面600可以包括连接工具640,其可以被用于以有向方式连接多个图标。每个连接可以指示通信决策树被配置为允许轨迹在指示的方向上跨连接的节点而延伸。但是,每个连接可以与条件相关联,使得轨迹仅在满足条件时才跨连接延伸。例如,可以配置连接,使得当在(在连接的一端处连接的)分支节点做出确定以执行由(在连接的另一个端处连接的)通信图标表示的动作时满足条件。作为另一个示例,可以将条件被配置为在检测到与关联于轨迹的用户设备相关联的特定类型的交互后满足。
每个动作定义图标可以与一个或多个动作参数相关联,该动作参数定义当轨迹已到达图标时要执行的详细动作。例如,参数定义界面可以在点击图标后呈现为界面600的一部分和/或参数定义界面可以在右键单击和/或双击图标时在弹出窗口中打开。
在一些情况下,每个动作定义图标和/或事件检测图标与可以被独立执行的小组件或代码段对应。画布605可以用作通信结构,使得由一个小组件产生的结果(例如,来自与开关图标对应的机器学习模型的将根据特定通信规范发送通信的指示)可以被用于另一个小组件(例如,与和特定通信规范对应的通信图标对应的小组件)。因此,画布605可以响应于小组件结果而延伸轨迹并且编排通信交换的各个方面。
虽然未在图6中示出,但是应该认识到的是,在一些情况下,多个开关图标620可以定位在画布605上。每个开关图标620可以与可以分开配置和操作的机器学习模型的分开实例对应。
图7图示了用于开关图标的示例性参数定义界面700。参数定义界面700包括用于接受文本输入的阶段标签的字段。随后可以在界面中的相关联图标旁边显示文本输入,用于定义通信决策树。还可以经由文本输入来输入描述,该文本输入可以(例如)在界面中显示,用于响应于检测到与图标相关联的单击或双击而定义通信决策树。
对于被配置为识别选择或动作规范和/或被配置为实现机器学习模型的开关图标,参数定义界面700可以包括用于定义目标结果的字段。例如,下拉菜单可以识别正被跟踪并且可用于识别作为目标结果的事件集合。目标结果可以包括在用户设备处发起的动作、系统发起的通知等。例如,目标结果可以包括检测到用户设备利用的通信内的链接被点击、用户设备利用的通信被打开、通信导致与用户设备相关联地进行购买(即,转换)、聊天会话被发起、表单已完成等。
对于被配置为识别选择或动作规范和/或被配置为实现机器学习模型的开关图标,参数定义界面700还可以包括指示要识别的潜在结果的一个或多个字段。例如,界面700包括与从图标延伸的三条路径或分支对应的字段。在这种情况下,为每条路径识别另一个动作定义图标的阶段标签名称。在一些情况下,在检测到开关连接到界面处的一个或多个其它图标以定义通信决策树后,在参数定义界面700处自动更新路径信息。还应该认识到的是,参数定义界面700可以包括添加附加路径,移除路径等的选项。
在一些情况下,可以将路径之一识别为默认路径。然后一般而言可以将轨迹路由到默认路径,除非(例如)机器学习模型预测出另一条路径将至少具有导致目标结果的更大概率的阈值程度、遍历另一条路径将产生用于路径的具有阈值的附加数据(例如,如后续预测的置信度的预测改善所指示的)等。在一些情况下,是否选择默认路径取决于与目标结果发生的概率相关联的置信度(例如,除非预测出另一条路径具有导致目标结果的至少60%的概率并且概率具有至少50%的置信度)。
在一些情况下,开关图标可以被配置为选择路径和/或下一个动作(或缺少这些)和将路径延伸到下一个图标的时间(例如,并执行任何下一个动作)。可以从多个时间当中和/或沿着开放或闭合的连续体选择时间。在所描绘的实例中,参数定义界面700包括轨迹被延伸到下一个动作定义图标的最大时间。因此,这里,轨迹将在轨迹到达开关图标之后不迟于一天延伸,除非与开关图标相关联地执行的决定逻辑指示另一个时间段足够更有利(例如,由于导致目标结果的更高概率和/或增加训练数据)。
机器学习技术和/或其它选择技术可以被配置为从多条潜在路径当中识别与导致目标结果的最高概率相关联的路径。在一些情况下,该技术进一步引入一定程度的噪声和/或可变性,使得偶尔选择被认为是次优的路径以促进对底层模型的继续训练。
在一些情况下,客户可能有理由朝着或反对特定路径的选择引入偏置。例如,特定路径相对于另一条路径的使用可能是昂贵的(例如,在计算上和/或经济上)。作为另一个示例,特定路径可以相对于另一条路径具有高可用性。作为又一个示例,客户端可以期望快速获得关于给定路径的功效的信息,以便通知后续的资源分配决策。
因此,参数定义界面700可以包括一个或多个选项以实现朝着或反对个体路径的偏置。在所描绘的实例中,为每条路径提供滑块。当滑块朝着右边“促进”侧定位时,可以调整路径选择技术以朝着对应的路径偏置。当滑块朝着左边“约束”侧定位时,可以调整路径选择技术以反对对应的路径偏置。这种促进和/或约束选项可以具有强加的限制,使得(例如)将滑块移动到最左侧约束位置的效果不是阻止选择对应的路径。这样的限制可以允许机器学习模型继续收集与各种选项有关的数据并且继续通过学习来修改一个或多个参数。当只有两个选项时,可以提供单个界面组件来识别朝着一个选项相对于另一个选项的相对偏置。同时,当有多于两个选项时,特定于选项的促进/约束选项可以提供更直观的控制。
图8示出了另一个参数定义界面800,其包括实现朝着或反对表示通信中的各种内容的偏置的选项。在所描绘的实例中,表示了九个内容项(每个内容项表示对应的产品)。与每个内容项的表示可视关联地提供滑块。当滑块朝着右边“促进”侧定位时,可以调整内容选择(例如,其可以与表示不同内容的多条路径之间的选择对应或者可以与在识别通信通道之后选择内容对应)以朝着对应的内容项偏置。当滑块朝着左边“约束”侧定位时,可以调整路径选择技术以反对对应的项目偏置。
在所描绘的实例中,滑块定位在最左侧位置。这会触发“从不供应”选项。在一些情况下,如果未选择“从不供应”选项,则至少偶尔仍可选择第一内容项。
基于由滑块指示的相对偏差和历史通信计数,系统可以预测在给定日期内将被表示的个体内容项的次数。因此,当客户端移动一个或多个滑块时,界面800可以在给定滑块位置的情况下自动更新关于个体内容项将被呈现(例如,每天)的次数的估计计数。
将认识到的是,还可以识别和实现不同类型的偏置。例如,可以提供一个或多个滑块以指示与发送通信的时间相关的偏置。例如,滑块可以指示把决策朝着立即传输(和/或朝着另一个时间传输,诸如在有上限的时间)偏置的程度。
实现偏置(例如,朝着或反对一种类型的通信通道、朝着或反对表示特定类型的内容、朝着或反对在特定时间发送通信等)可以包括(例如)修改机器学习模型中的一个或多个权重和/或一个或多个阈值。在一些情况下,实现偏置包括执行后处理(例如,重新分发结果的一部分以改善通信属性的分布与基于(一个或多个)偏置所指示的目标分布匹配的程度。
图9示出了又一个参数定义界面900,其包括朝着或反对使用各种通信渠道来发送通信来实现偏置的选项。在所描绘的实例中,表示三个通信通道:电子邮件、基于app的通知和SMS消息。与每个通道的表示可视关联地提供滑块。当滑块朝着右边“促进”侧定位时,可以调整内容传输以朝着使用对应类型的通道偏置。当滑块朝着左边“约束”侧定位时,可以调整路径选择技术以反对对应的通道偏置。
界面900还示出了时间序列表示,其指示在最近时间段内使用每个通道已发送的通信的数量,并且还指示在跨即将到来的时间段使用每个通道调度用于发送的通信的数量。当前时间由垂直线表示。可以根据在多个潜在传输时间之间进行选择的选择技术来调度通信(例如,相对于选择通信通道的技术,其可以包括在相同或不同的机器学习模型中)。因此,客户端可以查看跨各种通道的调度的负载,并确定是否调整针对或反对通道而设置的任何偏置。
图10示出了根据本发明一些实施例的用于使用机器学习来指引通过通信决策树的轨迹的过程1000的流程图。过程1000开始于方框1005,其中访问表示通信决策树的数据结构。通信决策树可以被配置为使用机器学习技术动态地定义通过通信决策树的各条轨迹,以指示一系列通信规范。更具体而言,通信决策树可以包括节点的集合。响应于检测到指示将发生这种延伸的事件,给定轨迹可以跨节点延伸。事件可以包括(例如)从用户事件检测特定类型的动作或通信,或者可以包括在轨迹管理系统或机器学习数据平台处识别特定决策(与节点识别对应)。节点的集合可以包括分支节点的集合。分支节点的集合中的每个分支节点可以与动作点对应,动作点被配置为识别给定轨迹的方向和/或识别要在轨迹管理系统或机器学习数据平台处发起的特定动作。分支节点可以被配置为使用配置的机器学习模型来识别方向或动作。
在方框1010处,检测到(与特定用户和/或特定用户设备相关联的)轨迹已经延伸到到达通信决策树的分支节点。特定用户可以是包括在通信接收者的目标组或目标观众组中的用户集合中的一个用户(例如,每个用户与由客户端识别出的一个或多个预定义的属性相关联)。通信接收者的目标组或目标观众不需要(虽然可能)静态定义。例如,它可以表示与——在各个时间点——表示一个或多个预定义的属性中的每一个的简档对应的动态集合。作为检测到在用户设备处发起的特定类型的事件的结果(例如,指示用户设备参与客户端相关联的网站处的会话的通信、指示用户已完成简档表单提交的通信等)和/或作为完成特定系统发起的动作的结果,轨迹可以已经延伸到分支节点。
在方框1015处,检索通过处理其它用户数据而生成的学习到的数据。其它用户数据可以与和目标观众和/或通信接收者的目标组的至少一部分相关联的数据对应。学习到的数据可以包括在训练机器学习技术时生成的数据。将认识到的是,训练可以在相对于使用机器学习技术来指引一条或多条轨迹的分开时间期间发生,或者可以并发地执行机器学习技术的训练和利用。其它用户数据可以包括与通过相同或不同的通信决策树的一条或多条轨迹相关联的轨迹数据。例如,其它用户数据可以指示为通信接收者的目标组的至少一部分中的哪一个,对应轨迹到达如预定义轨迹目标中所指定的通信决策树中的目标节点(例如,指示工作流的成功)。目标节点可以表示(例如)与内容交互、转换或对通信响应。作为另一个替代或附加示例,其它用户数据可以指示为目标组的至少一部分中的哪一个,对应轨迹到达表示不期望的结果的预先识别出的节点(例如,缺乏对通信的响应、缺乏转换或缺乏与内容的交互)。其它用户数据可以指示与一个或多个用户对应的简档数据和/或属性,并且还可以指示与各条轨迹相关联地检测和/或发起的各种事件。因此,例如,当存在各种情形时,其它用户数据可以指示检测特定类型的事件(例如,由客户端识别为目标结果)的概率。
在方框1020处,检索与和轨迹(被检测为延伸到分支节点)对应的用户相关联的一个或多个用户属性。(一个或多个)用户属性可以包括(例如)用户设备的类型;用户设备的地理位置;用户设备处使用的浏览器的类型;在用户设备处使用的操作系统;用户设备与特定网站之间的交互的部分或完整历史;用户设备与一个或多个其它网站之间的交互;与用户设备相关联的cookie数据;指示在用户设备处打开的通知类型(例如,电子邮件、文本消息和/或app消息的类型)的历史数据,其导致激活所包括的链接等。可以在本地收集和/或检索和/或从远程源请求并接收一个或多个特定用户属性。
在方框1025处,基于学习到的数据和一个或多个用户属性识别一个或多个通信规范。例如,学习到的数据可以包括机器学习模型(例如,回归模型)的一个或多个参数。还可以基于一个或多个超参数来定义机器学习模型。然后,机器学习模型可以被配置为使用(一个或多个)参数、(一个或多个)超参数和/或底层结构来处理(一个或多个)用户属性。模型的实现的结果可以从多个可用选项中识别出被预测为在实现目标结果方面最成功的选择。多个可用选项可以与(例如)要使用的不同类型的通信通道、要发送的不同类型的内容、和/或不同的传输定时对应。在一些情况下,多个可用选项共享一个或多个其它通信规范。
在方框1030处,触发向与轨迹相关联的用户设备的内容的传输。内容传输根据一个或多个通信规范来执行。
在方框1035处,确定轨迹是否已延伸到到达通信决策树内的另一个分支节点。该确定可以包括确定(例如)自从上次通信被发送到特定用户(或对应设备)以来是否已经过了阈值时间量;特定用户与发送到特定用户(或对应设备)的上次通信交互和/或特定用户与目标内容交互,而不管与目标内容的这种交互是否是发送到特定用户(或对应设备)的上次通信的结果。在一些情况下,这些确定中的两个或更多个中的每一个与不同分支节点的标准相关联。方框1035可以包括识别轨迹已经延伸到哪个其它分支节点。
如果确定轨迹已经延伸到到达另一个分支节点,那么过程1000返回到方框1015并且重复方框1015-1035。但是,方框1015的重复迭代可以包括检索通过处理其它用户数据而生成的不同的学习到的数据(例如,可能但不一定与至少一些用户数据组合)。可以已经使用机器学习技术的相同或不同配置来生成不同的学习到的数据(例如,具有相同或不同值和/或相同或不同类型的参数和/或超参数)。方框1020的重复迭代可以包括检索至少一个其它用户属性。方框1025的重复迭代可以包括基于不同的学习到的数据和至少一个其它用户属性来识别至少一个其它通信规范(和/或从不同的潜在通信规范集合中)。可以使用相同或不同类型的底层模型来识别至少一个其它通信规范。并且方框1030的重复迭代可以包括根据至少一个其它通信规范来触发其它内容的另一次传输。
当确定轨迹尚未延伸到到达另一个分支节点时,过程1000前进到方框1040以确定轨迹是否完整。可以通过确定轨迹的当前末端是否与缺少延伸连接的轨迹相关联来做出确定。如果确定轨迹完成,那么可以终止轨迹的处理。如果确定轨迹未完成,那么过程1000可以返回到方框1035以等待确定轨迹已到达另一个分支节点(例如,作为用户发起的动作或外部事件的结果)。
因此,过程1000促进重复使用不同配置的机器学习模型来识别与通信交换中的不同阶段对应的规范。在不同阶段,模型可以使用不同的简档数据(例如,不同字段的值或者在时间上已经改变的值)和/或不同的模型参数(例如,基于与模型有关的不同输入和/或输出学习到的和/或基于暂时改变学习到的)。机器学习模型的这种迭代应用促进动态地指引个体用户的通信交换。
图11示出了用于使用支持可定位视觉元件的界面来定义基于机器学习的通信决策树的过程1100的流程图。过程1100开始于方框1105,其中包括视觉元件集合和用于元件定位的画布的界面是有用的。视觉元件集合中的每个视觉元件集合可以在画布上可定位。例如,界面可以被配置为允许用户点击视觉元件的表示,并且——在维持点击的同时——将光标拖动到画布上的另一个位置以将视觉元件落在该另一个位置。作为另一个示例,可以选择表示(例如,经由点击或双击),并且当光标位于另一个位置时接收的另一个输入(例如,另一次点击或双击)可以使视觉元件定位在该另一个位置。
视觉元件集合可以包括动作定义视觉元件集合。动作定义视觉元件集合的每个动作定义视觉元件可以是当给定轨迹已延伸到该动作定义视觉元件时要执行的特定动作。动作定义视觉元件集合可以包括开关视觉元件,其表示使用机器学习技术识别通信规范的决策动作(例如,使用机器学习模型做出)。动作定义视觉元件集合还可以包括通信视觉元件集合。通信视觉元件集合中的每个通信视觉元件可以表示特定通信规范(例如,通信通道的类型、具体内容、传输时间等)。视觉元件集合还可以包括连接视觉元件,其被配置为定向地连接多个定位的视觉元件。多个定位的视觉元件中的每个定位的视觉元件可以与动作定义视觉元件集合中的动作定义视觉元件对应。定向连接可以指示由多个定位的视觉元件表示的特定动作将发生的次序。
在方框1110处,检测对画布的更新。更新后的画布可以包括位于画布内的第一位置处的开关视觉元件、位于画布内的第二位置处的通信视觉元件集合的第一通信视觉元件、以及位于画布内的第三位置处的通信视觉元件集合的第二通信视觉元件。第一通信视觉元件可以表示第一特定通信规范,并且第二通信视觉元件可以表示第二特定通信规范。
更新后的画布还可以包括连接视觉元件集合。连接视觉元件集合中的每个连接视觉元件可以包括连接视觉元件的实例。可以定位连接视觉元件集合的第一连接以将开关视觉元件连接到第一通信视觉元件。可以定位连接视觉元件集合的第二连接以将开关视觉元件连接到第二通信视觉元件。连接视觉元件集合可以指示在开关视觉元件处执行机器学习技术的潜在结果包括,触发具有第一特定通信规范的通信传输的第一结果和触发具有第二特定通信规范的通信传输的第二结果。
在方框1115处,基于更新后的画布来定义特定通信决策树。在方框1120处,检测到与特定简档数据相关联的给定轨迹已延伸到由开关视觉元件表示的特定决策动作。响应于检测,在方框1125处,机器学习技术(用学习到的参数数据和/或静态数据配置)被用于处理特定简档数据以产生机器学习结果。学习到的参数数据可以包括基于与其他用户相关联和/或与相同或不同的通信决策树相关联的轨迹集合在机器学习模型的分开或正在进行的训练期间学习到的数据。使用机器学习技术处理特定简档数据可以指示第一和第二特定通信规范中的哪一个将被应用于内容传输。
因此,在方框1130处,将内容发送到与轨迹相关联的用户设备。如机器学习结果中所指示的,根据第一和第二特定通信规范之一执行传输。例如,第一和第二通信视觉元件可以与不同类型的通信通道对应。然后,方框1125可以包括识别两种类型的通信通道中的一种,并且可以经由识别出的通道发送内容。
因此,画布促进定义通信决策树的配置。但是,客户端不需要定义应用于所有用户的通信交换和/或仅包括一个或多个确定性规则的通信交换。更确切地说,界面一般支持识别各种通信规范的选项、通信事件的次序和/或约束。然后可以使用机器学习技术自动且动态地生成规范通信规范。这种方法可以促进配置通信系统以遵守客户端优先级,但是可以允许通信系统动态地适应特定用户的特性、资源负载、最近的交互模式等。
将认识到的是,可以预期所公开的技术的变化。例如,分支节点可以使用不是机器学习模型的另一类型的人工智能模型来选择要用于通信的通信规范。作为另一个示例,界面可以被配置为接受与开关元件对应的轨迹阶段要使用的特定类型或更一般类型的人工智能模型的选择。作为又一个示例,界面可以被配置为允许指示什么数据(例如,就与一个或多个通信决策树、一个或多个时间段和/或一个或多个用户群体段对应而言)将用于训练与位于画布上的一个、多个或所有开关元件对应的机器学习模型。
将认识到的是,本文公开的技术可以用于支持各种类型的决策树。例如,树中的节点和/或在画布上表示的视觉元件可以(在一些情况下)对应于一般与评估是否满足给定条件(例如,检测到特定类型的设备间通信、非客户端相关联的应用指示已执行动作、特定时间已经过去)的逻辑相关联的元件,并且,在检测到满足后,执行特定动作。对于节点和/或视觉元件的子集,有条件的特定动作可以包括基于简档数据执行机器学习模型,以从连接的节点(或视觉元件)集合中进行选择以继续,使得与所选择的节点(或视觉元件)相关联的另一个特定动作可以被执行。例如,可以将基于机器学习的轨迹路径选择集成到If ThisThen That(如果就)环境中。分支可以(例如)识别用于存储数据的不同应用,而不是将分支节点连接到识别通信规范的节点。因此,可以建立决策框架,以使人工智能小程序和/或插件能够与一个或多个其它小程序通信或通过画布返回。
在一些情况下,技术可以涉及识别要向其发送对执行特定工作(job)的请求的工人。技术还可以或可替代地包括(例如)识别将要向其做出对参与询问过程的请求的工人和/或用于请求的一个或多个配置(例如,执行特定的工作和/或参与询问过程)。
在一些情况下,可以在与通过决策树进行的迭代对应的期间进行识别。决策树不需要在每个决策节点处包括有限和/或一致的潜在决策。例如,决策树可以包括渐进过滤决策树,使得在两个或更多个决策节点中的每个决策节点处迭代地减少工人集合。潜在决策的集合可以与和给定决策对应的所有潜在减少的工人子集对应。特定决策节点可以但不必约束或定义将被包括在减少的工人子集中的工人数量(例如,指示集合将被减少到包括5个工人的子集、将被减少80%、或将被减少到2至9个工人之间)。决策树的最终输出可以包括(例如)单个工人的标识、定义的工人数量和/或可以不受数字限制。
决策树可以包括一个或多个机会节点,其可以反映(例如)从一个或多个工人接收的响应。例如,在执行决策节点之后,可以将请求发送给工人,并且响应(或缺乏响应)可以指示工人是否接受了该请求。在一些情况下,如果工人拒绝和/或不接受请求(例如,在预定的持续时间内),那么从正在考虑的当前工人池中过滤出该工人。
在一些情况下,决策树表示与工作录用(job offer)(例如,接受与特定职位和/或职业对应和/或针对特定雇主的雇佣的录用)对应的决策。工作录用可以涉及描述工作、理想候选人、决策时间线、薪酬、位置等的一个或多个文档、文件或数据集。每个工人可以包括与提交简历和/或申请以申请一个或多个特定工作、一个或多个指定类型的工作和/或一般工作的人对应的标识符。一个或多个第一决策节点可以与涉及关于哪个(哪些)工人被邀请到与雇主、招聘人员等进行的询问过程(例如,亲自、电话或webex面试)的决策有关。一个或多个第二决策节点可以与涉及关于向哪个(哪些)工人提供工作录用(例如,对执行工作的请求)的决策有关。一个或多个第三决策节点可以与涉及识别执行工作的请求配置(例如,薪酬、假期、位置和/或其它工作录用细节)有关。如关于特定示例,第一决策节点可以被配置为输出跨工人集合的排名,其与被提供工作的面试的概率对应,并且第二决策节点可以被配置为输出跨工人集合(或其子集)的排名,其与被提供工作的概率对应。作为另一个特定示例,第一决策节点可以被配置为生成与工人将接受工作录用的可能性对应的输出(例如,相对于不接受录用而不管任何可能的录用配置),并且第二决策节点可以被配置为将需要什么套装(例如,定义薪酬、奖金和/或补偿细节)来吸引工人。决策节点输出可以并发或同时或在分开时间呈现或发送。
将认识到的是,关于给定轨迹的进展,可以但不是必须在每个决策节点处自动做出决策。例如,不是将工人集合(或其子集)过滤到减少的集合,而是自动化的处理(例如,依赖于机器学习模型的执行)可以输出工人的评级和/或每个工人的得分。(一个或多个)输出可以(例如,向用户设备)呈现和/或发送,以促进由用户做出的指示实际要发生的过滤和/或选择的决策。可以传送过滤和/或选择(例如,经由在门户界面处提供的用户输入)以进一步调整决策树轨迹。
过滤、评级和/或得分可以基于一个或多个优化变量,其可以在决策树中的多个或所有决策中一致地使用,或者可以针对每个决策节点专门定义(例如,并且在一些或全部决策节点中不同)。优化变量可以与以下有关:工人做出的决策(例如,工人将接受对参与询问过程的请求的概率和/或工人将接受对执行工作的请求的概率)、关于后续请求做出的决策(例如,将发送对参与询问过程的请求的概率和/或将发送对执行工作的请求的概率)和/或表现(例如,工人将在预定义时间间隔内继续执行工作的概率、实现对工人表现的高度第三方评估的概率、和/或基于工作表现获得高股票奖励或奖金的概率)。
在一些情况下,基于表现数据执行工人的评级(例如,初始工人集合的经过滤的子集)。例如,可以基于包括工人属性和表现数据的训练数据来训练机器学习模型。因此,来自多个工人中的每个工人的属性(例如,在初始工人集合的经过滤的子集中表示)和工作数据可以输入到模型中,并且输出可以基于多个工人中每个工人的预测的表现评估(例如,如果将工人指派给工作,那么与预测的表现评估对应的预测表现)来指示多个工人的评级。(一个或多个)输出可以包括(例如)数字评级(例如,为每个工人指派数字)、排序(例如,包括工人的有序标识)、每个工人的数字或分类得分(例如,使得能够基于得分对工人进行排序)等。对模型进行训练可以导致(例如)学习将各种工人属性与表现预测相关联的一个或多个权重。在一些情况下,对模型进行训练,使得除了工人属性之外还基于工作规范来制约表现预测。
用于对模型进行训练的表现数据可以包括(例如)数字、分类和/或文本数据。在一些情况下,表现数据可以包括和/或可以被处理以产生沿着标度的度量。可以在一个或多个时间(例如,以规律的时间(诸如每年)、响应于拉取请求,或作为推送报告)从一个/或多个工作所有者(例如,雇主或审阅者)接收表现数据。训练数据可以包括在(或大约在)工作(正在针对该工作评估表现)被指派给工人的时间与工人相关联的属性和/或工人的当前属性(例如,就进行表现评估的时间而言是当前)。可以基于当时可用于工人的规范数据集来确定给定时间的属性。在一些情况下,可以基于时间的推移来更新存储的规范数据集,以导出用于训练的属性。例如,如果规范数据集包括年限经验属性并且该属性在时间t减去x被最初存储或最后更新,那么可以更新这个属性以将x添加到该属性(例如,如果假设工人在x时间期间执行相关工作)。在一些情况下,如果(例如)在预定义的时间段内更新了一个或多个相关联的工人属性,那么表现数据仅包括在训练数据集中。
图12示出了根据本发明一些实施例的示例性渐进过滤决策树1200。决策树可以评估与特定工作相关的工人集合。在一些情况下,评估包括评估工人文件集合(每个工人文件表示和/或与特定工人对应)和/或工作文件(例如,表示工作和/或工作录用)。工人文件可以表示和/或包括工人规范数据结构(例如,简历数据)。工作文件可以表示和/或包括工作规范数据结构(例如,工作发布数据)。
在决策节点1205处,做出关于将哪些工人包括在工人集合中的确定。可以基于与工人集合对应的文件或数据表示的集合以及与工作对应的文件或数据表示的评估来做出确定。具体而言,可以处理每个文件或数据表示(与工人或工作对应)并将其变换成特征数据集。例如,特征数据集可以包括在每个元素处包括值的阵列、矩阵或向量。值可以表示对应文件或数据表示匹配、识别或以其它方式与给定特征对应的程度。
在一些情况下,每个特征被定义为词空间内的特定空间。作为简单示例,特征可以表示词的集群(例如,其可以包括同义词和/或其它对应的词),并且可以(但不需要)将权重指派给每个词。作为另一个示例,特征可以表示分布。可以基于(例如)它们与其它词的语义相似性和/或它们在与一个或多个其它词中的每个词相同的文档、文件、段落、字段值和/或句子内出现的概率,来跨多维词空间来定位词。可以对于一个、多个或全部维度中的每个维度(例如)通过中心或质心以及权重(和/或倾斜)来定义分布。
可以使用来自规范数据结构的数据来生成特征数据集,该规范数据结构可以包括非结构化数据(例如,在字符或词计数方面可变长度的词集合)。可以处理数据以识别可以被进一步处理的不同词。例如,该进一步处理可以包括将每个词转换成词干(例如,移除诸如“ing”、“ed”等的结尾)。另外,可以从词集合中移除各种词(例如,停用词冠词、介词、连词等)。
可以将该(例如,经处理的)词集合输入到机器学习模型或其它人工智能模型,以识别特征数据集。作为一个示例,可以使用包括神经网络语言模型的机器学习模型来计算特征数据集。在一些情况下,对应工人规范数据结构中的词的相对排序影响特征指派。示例性类型的机器学习模型包括在Le,Quoc.“Distributed Representations of Sentencesand Documents”Proceedings of the 31st International Conference on MachineLearning,中国北京,2014。JMLR:W&CP第32卷中识别出的那些,其可从以下网址获得:https://cs.stanford.edu/~quocle/paragraph_vector.pdf,其通过引用整体并入本文用于所有目的。例如,doc2vec可以用于将包括词集合的文本输入变换成特征数据集。
作为另一个示例,可以通过(例如)基于特征的特定空间为经处理的词集合中的每个词生成权重并对权重进行平均来计算特征的值。作为又一个示例,可以通过计数来自规范数据结构的数据内的任何特征相关联的词组的出现次数(例如,并且基于其它计数或数据中词的总数对计数进行归一化)来计算特征的值。
可以存储个体特征数据集(例如,针对个体工人或个体工作)。每个特征数据集可以与工人或工作的标识符和/或其它信息(例如,来自对应规范数据结构的一个或多个键值对、来自对应规范数据结构的其它信息、来自对应规范数据结构的原始数据)相关联地存储。在一些情况下,(一个或多个)特征数据集和相关联的信息可以存储在Solr数据库中。
确定哪些工人要包括在工人集合中可以包括将每个工人的特征数据集(例如,包括在多个工人中的)与工作的特征数据集进行比较(例如,并且基于比较来选择多个工人的子集)。多个工人可以包括(例如)被识别为可用于可能接受工作的工人(例如,经由提交规范数据结构)。多个工人可以是动态的,因为可以从多个工人中动态地移除工人(例如,响应于已经向工人指派了工作或者接收到移除请求)和/或可以动态地将工人添加到多个工人(例如,响应于接收到新的工人规范数据结构)。
执行工人的特征数据集与工作的特征数据集之间的比较可以包括基于特征数据集生成比较度量。度量可以包括(例如)角度、点积、相关系数等。工人子集可以被定义为与和超过绝对阈值或相对阈值的点积或相关系数(或其它比较度量)相关联的每个工人对应。相对阈值可以被配置为识别包括特定数量或特定百分比的工人的子集。
在决策节点1210处,经由机器学习模型、特征数据集和附加信息的迭代对工人集合进行评级。即,可以执行机器学习模型以处理与工人特征数据集、工作特征数据集和附加信息对应和/或包括前述的输入。附加信息可以包括来自工人规范数据集的一个或多个键值对(例如,表示或指示经验年限、教育水平等)。在一些情况下,附加信息(进一步地或可替代地)包括来自工作规范数据集的一个或多个键值对。
因此,在一些情况下,在早期阶段使用的机器学习模型不接收和/或处理在后期阶段由机器学习模型接收和/或处理的一些工人数据。例如,各种工人的一个或多个键值对可以由后期阶段机器学习模型而不是早期阶段机器学习模型接收和/或处理。反过来也可以是真的。例如,早期阶段的机器可以接收和/或处理原始文本,而后期阶段机器学习模型可以接收和/或处理原始文本的经处理的版本而不是原始文本本身。
使用不同类型的机器学习模型、跨决策树迭代的不同阶段的不同类型的输入和/或不同的优化变量可以提供技术优势。在一些情况下,使用不同类型的输入促进高效处理。例如,在后期阶段使用工人数据的经处理的版本代替原始数据可以利用先前的数据处理和学习,其可以被执行以强调或选择有用(或可能有用)的信息而不是重复处理。另外,因为早期阶段处理可以(但不需要)从更大和/或更多样化的数据集中学习,所以当依赖于早期阶段学习时,所学习到的维度减少处理相对于后期阶段学习可以更加稳健。
在一些情况下,在后期阶段中选择性地使用一些数据可以提供利用富工人数据集的平衡,同时还促进高效处理和资源消耗。例如,大型工人群体可以与数万或数百万个键值对相关联。当考虑每个附加类别的键值对时,潜在工人属性的空间的体量呈指数增长。同时,潜在工作池的大小可以跨阶段减小,使得在后期阶段包括一个或多个键值对的绝对影响小于在早期阶段包括的影响。即,在一些情况下,与后期阶段计算相比,早期阶段计算可以被设计得相对简单,以提高由计算机执行这些步骤的效率和实际可能性。
机器学习模型可以包括被配置为输出各种输入的评级的模型(给定工作特征数据集的参考工作规范数据结构)。例如,机器学习模型可以使用学习来对算法进行评级。
可以实现机器学习模型以使用监督、半监督或强化学习。作为一个示例,机器学习模型可以使用LambdaRank(例如,使用xgboost实现)。可以使用与各种工人数据(例如,工人规范数据结构)与各种工作数据(例如,工作规范数据结构)对应的程度的表示对应的通信来训练机器学习模型。将认识到的是,可以使用不输出各个工人的评级的其它类型的机器学习模型。例如,机器学习模型可以被配置为生成输出,该输出针对一些或全部工人集合中的每一个指示表示工人数据(例如,工人特征数据集和/或工人相关联的附加信息)与工作数据(例如,工作特征数据集和/或工作相关联的附加信息)之间的匹配程度的匹配得分。
在一些情况下,还可以处理机器学习模型的执行的输出。例如,后处理可以包括识别与低于预定评级阈值的评级相关联的工人子集和/或识别与高于预定得分阈值的匹配得分相关联的工人子集。
在决策节点1215处,识别工人集合的子集。该识别可以包括基于来自决策节点1210的评级(或其它结果)过滤工人集合,以识别要向其发送对参与询问过程的请求的工人。
在一些情况下,识别是自动执行的。例如,规则可以指示具有最低(最佳)评级的预定数量的集合将被包括在子集中,或者与超过预定义阈值的得分相关联的每个工人将被包括在子集中。
在一些情况下,基于与要包括在子集中的工人的识别对应的通信的接收来执行识别。可以基于并响应于在用户设备(例如,招聘人员的设备)处接收的输入来已经生成通信。例如,在已经在节点1210处识别出评级后,可以生成指示与对应工人相关联的评级的通信。通信可以被配置为使得界面被更新和/或生成并且还被呈现在用户设备处,其中界面包括一些或所有评级。界面还可以包括和/或利用关于被评级的工人的信息。例如,界面可以与每个评级空间关联地包括链接,以查看显示工人的规范数据集的文件或屏幕。界面可以包括一个或多个输入选项(例如,(一个或多个)复选框、(一个或多个)下拉菜单、(一个或多个)链接、(一个或多个)拖放界面、(一个或多个)(一个或多个)单选按钮等)。可以自动检测与(一个或多个)选项的交互并将其翻译成特定工人的标识以包括在子集中。
作为一个图示,界面可以包括表格,每行表示不同的工人。一列可以指示工人的评级,而其它列可以包括关于工人的其它信息(例如,字段值对、工人标识符等)。分割元素(例如,粗线,其也可以是可移动的)可以用于指示要包括在子集中的工人(例如,仅作为分割元素上方的那些),并且界面可以接受拖放元素移动并对行进行重新排序。作为另一个图示,界面可以包括识别特定于工人的信息和工人的评级的视觉对象(例如,小盒子)。每个视觉对象可以包括或可以在空间上与复选框相关联。被选中的复选框可以指示工人将包括在子集中。
在一些情况下,对参与询问过程的请求被自动发送(例如,发电子邮件或在工人到工作指派系统的门户中指示)到子集中的每个工人。在一些情况下,显示或发送子集中的工人的标识(例如,与识别子集中的工人的联系信息的键值信息一起,诸如电子邮件地址或电话号码)以促进对参与询问过程的请求的外部通信。请求可以包括(例如)工作信息(例如,职位和雇主)、与询问过程相关联的位置(例如,街道地址),以及询问过程的时间(或时间选项)。
在一些情况下,跟踪对请求的响应。例如,当请求作为电子邮件或经由工人门户发送时,可以提供一个或多个响应选项以指示工人是否接受请求和/或工人是否拒绝该请求。作为另一个示例,可以从用户接收指示与子集中的每个工人相关联的响应的通信。在一些情况下,确定在预定义时间段(例如,在发送请求的时间开始)内没有从给定工人接收到响应可以导致生成请求被拒绝的虚拟响应。还可以过滤子集以移除拒绝了请求的(一个或多个)工人的标识。
在一些情况下,决策节点1210不包括在决策树1200中。可以使用机器学习模型的迭代来执行要包括在子集中的工人的识别。机器学习模型可以处理工人规范数据结构(例如,与工人集合对应)、工作规范数据结构和附加信息(例如,与工人集合相关联的键值对和/或与工作相关联的键值对)。机器学习模型可以被配置为(例如)输出评级、得分或二进制标识符(与是否包括在子集中对应)。
在决策节点1220处,针对工作请求识别一个或多个工作配置,并且在决策节点1225处,做出关于向哪个(哪些)工人发送对执行工作的请求的决策。在各种情况下,在节点1220和1225处做出的决策是并发做出的;在节点1225处做出决策之前,在节点1220处做出决策;或者在节点1225处做出决策之后在节点1220处做出决策。在一些情况下,使用机器学习模型做出在方框1220和方框1225做出的决策中的一个或两者。
关于方框1220,机器学习模型被配置为对于工人子集中的一个、一些或全部中的每一个输出被预测为足够(和/或最小)导致工人接受工作(具有该(一个或多个)配置)的一个或多个工作配置。模型还可以被配置为在适当的时候输出指示预测工人将不接受工作而不管(一个或多个)配置如何的结果。
关于方框1225,(相同或不同的)机器学习模型被配置为生成与请求执行工作的一个或多个工人的选择相关的输出。输出可以包括(例如并且作为一个或多个输出值)与录用将被接受的可能性、预测的工作表现值和/或预测的保留概率或持续时间有关的评级、得分和/或估计。可以自动地进行和/或基于反映由远程系统和/或用户生成的标识的通信进行关于向哪个(哪些)工人发送对执行工作的请求的识别。例如,各种数据(例如,评级、得分、最小规范数据)可以在界面上呈现,该界面接受对请求将被利用的工人子集的一个或多个工人的选择。每个请求可以(但不需要)用在方框1220中识别出的对应配置信息来配置。在一些情况下,(一个或多个)请求用默认(或一致的,诸如最小或最大)配置来进行配置。
因此,决策树1200提供关于如何使用多个决策节点来迭代地精炼工人池以进行工作指派的说明。在一些情况下,跟踪对工作请求的响应(例如,如上面关于用于跟踪针对对参与工作询问过程的请求的响应的潜在技术所描述的)。如果一个、多个或所有工作请求被拒绝(例如,和/或在默认时间段内不被接受),那么可以重复与方框1215、1220和1225相关联的一个或两个决策,但是同时从所考虑的(一个或多个)工人中消除先前选择的(一个或多个)工人。
图13示出了根据本发明一些实施例的在渐进过滤决策树的实现期间发生的数据处理的示例性表示。
在所示的实例中,在第一决策节点处,变换器1305(例如,被配置为将一个或多个输入数据对象变换为其经处理的版本的代码块)接收工人文件1310的集合和一个或多个工作文件1315。每个工人文件1310可以包括工人规范数据结构,其包括工人规范集合,并且每个工作文件1315可以包括工作规范数据结构,其包括工作规范集合。将认识到的是,在一些情况下,变换器1305不需要接收工人文件和/或工作文件,而是可以代替地识别要被变换的工人规范数据和/或工作规范数据。例如,可以在响应于检测到输入(例如,与在线表单输入对应)而从个体工人设备和/或其它设备生成和发送的一个或多个通信中接收规范数据。
变换器1305可以被配置为将每个工人文件1310变换成工人特征数据集1320并且将每个工作文件1315变换成工作特征数据集1325。每个工人特征数据集1320和工作特征数据集1325可以对于特征集中的每个特征包括指示在对应(工作或工人)文件中表示特征的程度的值。每个特征可以与语义空间1330的一部分对应。在一些情况下,机器学习模型可以使用训练数据集(例如,包括非结构化数据)来定义每个特征。机器学习模型可以经由无监督学习进行训练,并且可以包括(例如)doc2vec。可以基于词和/或短语的共现并且基于结构分析(例如,检测词分组、句子和/或段落)来定义特征。在一些情况下,在训练期间使用(以识别特征集)的优化变量可以包括特征之间的正交性度量。即,可以定义特征集以便最大化每个个体特征与每个其它特征正交和/或独立的程度。
比较元件1335可以将每个工人特征数据集1320与每个工作特征数据集1325进行比较,以生成每个成对组合的比较输出。在一些情况下,比较输出包括特征数据集之间的余弦角。在一些情况下,比较包括生成特征数据集之间的相关系数、基于集合之间的每个特征差异生成差异度量(例如,平均值、中值、最大值或最小值)等等。
第一过滤器1335可以处理比较输出以针对每个工作特征数据集1325识别工人特征数据集1320的集合的子集1340。例如,该处理可以包括基于为工人集合生成的比较输出从该工人集合中识别预定义数量的工人。为了说明,过滤可以包括选择与100个最高比较输出对应的100个工人特征数据集(其中高值指示强相似性,但是替代地,当比较输出被配置为使得低值指示强相似性时,可以识别100个最低比较输出)。在一些情况下,过滤包括选择与高于(或在输出的替代配置中,低于)预定义阈值的比较输出相关联的每个工人特征数据集。
在第二决策节点处,机器学习模型1345还可以处理工人特征数据集1320的集合的子集1340和个体工作特征数据集1325。机器学习模型1345可以被配置为经由受监督的学习来训练。机器学习模型1345可以被配置为处理(例如,预先识别出的格式和/或大小的)结构化数据大小。机器学习模型1345可以被配置为针对工人特征数据集的集合的每个子集1340输出指示与工作特征数据集1325相关联的工作的对应关系的值(例如,评级或得分)。因此,输出可以对于一个、一些或全部子集1340中的每个工人包括工人的评级1350。机器学习模型可以包括学习到评级模型。在一些情况下,基于与从用户接收的输入对应的优化变量来训练机器学习模型1345。输入可以识别先前决策(例如,识别——关于一个或多个特定工人——是否录用和/或接受面试、录用和/或接受工作和/或识别工作表现的评估)。
除了特征数据集,机器学习模型1345还可以处理来自与子集1340对应的工人文件1310和和/或与工作特征数据集1325对应的工作文件1315的数据。其它数据可以包括(例如)键值数据和/或个体表单条目,并且可以经由第二过滤器1355的实现来识别。在一些情况下,给定工人(或工作)的其它数据可以与对应的工人特征数据集1340(或工作特征数据集1325)聚合(例如,级联),并且可以将级联的数据输入到模型。
可以在第三决策节点1355处理评级1350,其可以(例如)进一步过滤并减少工人集合的子集1340(例如,到预定义的大小)。在一些情况下,进一步过滤包括识别与最低评级值相关联的预定义数量的工人。在一些情况下,还可以考虑其它信息(例如,特征数据集、键值对等)。在一些情况下,评级被呈现给用户,并且该进一步过滤与经由来自用户设备的一个或多个通信所指示的一个或多个工人的选择对应。在一些情况下,该进一步过滤由机器学习模型执行(例如,使用过去的对请求询问过程参与的工人选择、过去的工人接受参与询问过程、过去的对工作执行的工人选择、过去的工人接受工作和/或过去的成功的工作执行,作为优化变量)。进一步过滤的工人子集可以包括(例如)要向其传送对参与询问过程的请求的工人。如果这样的请求被拒绝或没有应答,那么第三决策节点1355可以被配置为识别要包括在进一步过滤的子集中的另一个工人。
在第四决策节点1360处,可以评估来自询问过程的结果,以甚至进一步过滤工人子集(例如,为了识别针对工作的预定义数量的工人,诸如单个工人)。可以使用机器学习模型来做出决策(例如,使用过去的针对工作执行的工人选择、过去的工人接受工作和/或过去的成功的工作执行,作为优化变量)。更进一步过滤的工人子集可以包括(例如)要向其传送对执行工作的请求的工人。如果这样的请求被拒绝或没有应答,那么第四决策节点1355可以被配置为识别要包括在更进一步过滤的子集中的另一个工人。
在第五决策节点1365处,可以基于每个工人来确定工作规范信息。例如,关于一个或多个工人中的每个工人,可以识别一个或多个工作规范,其与预测的较低阈值或被预测为足以让工人接受工作的值对应。在一些情况下,合并决策节点1360和1365。例如,可以为每个工人识别阈值规范数据并将其传送给用户设备,用户设备可以用要包括在更进一步过滤的子集中的(一个或多个)工人的选择来响应。
在第三、第四和第五决策节点1355、1360和1365处做出的每个决策可以被反馈回机器学习模型1345。附加反馈1370可以指示(例如)个体工人是否接受对参与询问过程的请求和/或接受对执行工作的请求和/或与工人相关联的工作的执行质量的指示。
图14示出了根据本发明一些实施例的用于使用机器学习模型迭代来推进通过决策树的轨迹的过程1400的流程图。
过程1400开始于方框1405,其中访问表示用于指派工作的决策树的数据结构(例如,数据文件或数据集)。决策树的一个或多个第一决策节点可以与关于要如何处理工人信息和/或工作信息中的非结构化数据以将其转换成有意义的结构化数据的决策对应。可以使用被训练为检测(例如)词之间的各种关系和结构、然后定义用于随后表征非结构化(例如,文本)数据的特征集的无监督机器学习模型来执行转换。
在方框1410处,使用机器学习模型生成工作特征数据集。工作特征数据集可以包括指示工作的特性的数值集合(经由指示各种特征被识别为在工作信息中表示的程度)。可以经由处理(例如)经由在线门户接收的工作信息(例如,工作录用数据)来生成工作特征数据集。
在方框1415处,使用机器学习模型对于工人集合中的每个工人,生成工人规范数据集。工人特征数据集可以包括指示工人的特性的数值的集合。可以经由处理(例如)经由在线门户接收的工人信息(例如,简历数据)来生成工人特征数据集。可以通过执行工人信息的语义分析来生成工作特征数据集。
生成规范数据集(针对个体工人和/或针对工作)可以在单个决策节点处执行,或者工人和工作规范数据集可以在分开的决策节点处生成(例如,并且可能依赖于不同的学习到的参数)。
在方框1420处,检测到与决策树的迭代对应的轨迹已到达另一个决策节点。另一个决策节点可以与关于(例如)如何过滤(或进一步过滤)工人集合和/或如何配置要发送给工人的请求的决策对应。另一个决策节点可以被配置为基于使用机器学习模型(例如,与用于识别特征数据集的特征的模型相比,不同类型的模型)处理输入数据来做出决策。机器学习模型可以包括(例如)神经网络模型。
在方框1425处,检索与节点对应的学习到的参数。学习到的参数可以包括神经网络的一个或多个权重。学习到的参数可以已经在训练过程期间生成。
在方框1430处,执行机器学习模型的迭代。可以用特定于节点的学习到的参数来配置机器学习模型。执行可以包括将与工作相关联的特征数据集以及一个、多个或全部与工人相关联的特征数据集输入到机器学习模型。在一些情况下,每个与工人相关联的特征数据集和与工作相关联的特征数据集但不和与其它工人相关联的特征数据集(其可以和与工作相关联的特征数据集分开处理)一起处理。在一些情况下,在模型的给定执行中处理所有与工人相关联的特征数据集和与工作相关联的特征数据集。模型的结果可以包括(例如)过滤工人集合、对工人集合进行评级、为工人集合的每个工人指派得分等等。
在决策树包括使用机器学习模型来做出或促进决策的附加决策节点的情况下,过程1400可以返回到方框1420。模型可以是跨决策节点的相同或不同的类型。
在方框1435处,触发一个或多个通信动作,其表示使用在一个或多个决策节点处产生的机器学习结果而生成的一个或多个结果。例如,通信可以包括发送到工人对参与询问过程或接受工作的请求。作为另一个示例,通信可以包括在决策节点处生成的工人子集中包括的一个或多个工人的标识。作为又一个示例,对于一个或多个工人中的每个工人,通信可以包括使用机器学习模型生成的评级或得分,其表示预测(例如)工人的规范与工作规范对应、工人将接受对参与询问过程的请求、工人将接受对执行工作的请求或者工人将成功执行工作的程度。
在以上描述中给出了具体细节以提供对实施例的透彻理解。但是,应该理解的是,可以在没有这些具体细节的情况下实践这些实施例。例如,电路可以以框图示出,以免用不必要的细节模糊实施例。在其它情况下,可以在没有不必要的细节的情况下示出众所周知的电路、过程、算法、结构和技术,以避免模糊实施例。
可以以各种方式完成上述技术、方框、步骤和手段的实现。例如,这些技术、方框、步骤和手段可以用硬件、软件或其组合来实现。对于硬件实现,处理单元可以在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计用于执行上述功能的其它电子单元和/或其组合内实现。
而且,应该注意的是,实施例可以被描述为被描绘为流图、流程图、数据流程图、结构图或框图的过程。虽然流程图可以将操作描述为顺序过程,但是许多操作可以并行或并发地执行。此外,可以重新布置操作的次序。过程在其操作完成时终止,但可以具有未包括在图中的附加步骤。过程可以与方法、函数、过程、子例程、子程序等对应。当过程与函数对应时,它的终止与函数返回到调用函数或主函数对应。
此外,实施例可以通过硬件、软件、脚本语言、固件、中间件、微代码、硬件描述语言和/或其任何组合来实现。当以软件、固件、中间件、脚本语言和/或微代码实现时,执行必要任务的程序代码或代码段可以存储在诸如存储介质之类的机器可读介质中。代码段或机器可执行指令可以表示过程、函数、子程序、程序、例程、子例程、模块、软件包、脚本、类,或指令、数据结构和/或程序语句的任何组合。代码段可以通过传递和/或接收信息、数据、参量、参数和/或存储器内容而耦合到另一个代码段或硬件电路。信息、参量、参数、数据等可以经由任何合适的手段(包括存储器共享、消息传递、票传递、网络传输等)传递、转发或发送。
对于固件和/或软件实现,可以用执行本文描述的功能的模块(例如,过程、函数等)来实现方法。有形地实施指令的任何机器可读介质可以用于实现本文描述的方法。例如,软件代码可以存储在存储器中。存储器可以在处理器内或处理器外部实现。如本文所使用的,术语“存储器”是指任何类型的长期、短期、易失性、非易失性或其它存储介质,并且不限于存储器的任何特定类型或存储器的数量、或者其上存储存储器的介质的类型。
而且,如本文所公开的,术语“存储介质”可以表示用于存储数据的一个或多个存储器,包括只读存储器(ROM)、随机存取存储器(RAM)、磁RAM、核心存储器、磁盘存储介质、光学存储介质、闪存设备和/或用于存储信息的其它机器可读介质。术语“机器可读介质”包括但不限于便携式或固定存储设备、光学存储设备、无线信道和/或能够存储包含或携带(一个或多个)指令和/或数据的各种其它存储介质。
虽然以上结合具体装置和方法描述了本公开的原理,但是应该清楚地理解,本描述仅通过示例的方式进行,而不是限制本公开的范围。

Claims (20)

1.一种计算机实现的方法,包括:
访问表示用于指派工作的决策树的数据结构,其中决策树包括有序决策节点集合并且被配置为执行与工人的渐进过滤对应的迭代决策,并且其中,对于有序决策节点集合的每个决策节点,延伸到该决策节点的一条或多条轨迹中的每条轨迹触发与配置对执行工作的工人请求有关的中间决策或最终决策;
发起决策树的轨迹,该轨迹与工人集合相关联,用于工作的潜在指派;
检测到轨迹已到达决策树中的有序决策节点集合的第一决策节点;
检索通过用第一训练数据集训练第一机器学习模型而生成的特定于节点的学习到的参数的第一集合,其中特定于节点的学习到的参数的第一集合定义如何将非结构化数据变换成结构化特征数据;
访问多个与工人相关联的非结构化数据集,所述多个与工人相关联的非结构化数据集中的每个与工人相关联的非结构化数据集与工人集合中的工人对应并且包括非结构化数据;以及
执行用特定于节点的学习到的参数的第一集合配置并使用所述多个与工人相关联的非结构化数据集的第一机器学习模型的一次或多次第一迭代,其中执行第一机器学习模型的一次或多次第一迭代生成包括多个工人特征数据集的第一结果,所述多个工人特征数据集中的每个工人特征数据集与工人集合中的工人对应并指示与工人对应的与工人相关联的非结构化数据集表示特征集中的每个特征的程度,其中所述多个工人特征数据集中的每个工人特征数据集是结构化数据,并且其中基于特定于节点的学习到的参数的第一集合来定义特征集;
基于所述多个工人特征数据集来识别工人集合的子集,用于继续对工作的评估;
检测到轨迹已到达决策树中的有序决策节点集合的第二决策节点;
检索通过用第二训练数据集训练第二机器学习模型而生成的特定于节点的学习到的参数的第二集合,其中特定于节点的学习到的参数的第二集合定义结构化数据如何被变换;
执行用特定于节点的学习到的参数的第二集合配置并使用所述多个工人特征数据集的子集的第二机器学习模型的一次或多次第二迭代,其中所述多个工人特征数据集的每个子集与工人集合的子集中的工人对应,并且其中第二机器学习模型的一次或多次第二迭代的执行生成第二结果,该第二结果对于工人集合的至少一个子集中的每个工人指示工作与工人之间的对应关系的估计的绝对程度或相对程度;以及
触发表示第二结果的通信动作。
2.如权利要求1所述的方法,还包括:
识别多个键值对,其中所述多个键值对中的每个键值对与工人集合的子集中的工人对应;
其中第二机器学习模型的一次或多次第二迭代的执行还使用所述多个键值对,并且其中第一机器学习模型的一次或多次第一迭代的执行不使用所述多个键值对。
3.如权利要求1所述的方法,还包括:
使用无监督学习过程学习特定于节点的学习到的参数的第一集合;以及
使用受监督的学习过程学习特定于节点的学习到的参数的第二集合。
4.如权利要求1所述的方法,其中所述多个工人特征数据集中的每个工人特征数据集包括向量、矩阵或阵列,并且其中向量、矩阵或阵列具有预定义的维度。
5.如权利要求1所述的方法,还包括:
访问与工作对应的工作非结构化数据集;
执行用特定于节点的学习到的参数的第一集合配置并使用工作非结构化数据集的第一机器学习模型的另一迭代,其中第一机器学习模型的另一迭代的执行生成指示工作非结构化数据集表示特征集中的每个特征的程度的工作特征数据集;以及
对于工人集合中的每个工人,基于与工人对应的工人特征数据集和工作特征数据集,生成工作比较度量,其中基于为工人集合生成的工作比较度量来识别工人集合的子集。
6.如权利要求1所述的方法,还包括利用第一训练数据集来训练第一机器学习模型以学习特定于节点的学习到的参数的第一集合,其中第一训练数据集包括其它非结构化数据,并且其中特定于节点的学习到的参数的第一集合将特定语义特性与经验水平、技能或工作特性相关联。
7.如权利要求1所述的方法,还包括:
检测到轨迹已到达决策树中的有序决策节点集合的第三决策节点;以及
执行用特定于节点的学习到的参数的第三集合配置并使用所述多个工人特征数据集中的至少一个工人特征数据集的第三机器学习模型的第三迭代,其中第三机器学习模型的第三迭代的执行的第三结果表示被预测为导致接受子集的特定工人执行工作的请求的一个或多个请求配置,该请求用所述一个或多个请求配置来配置。
8.如权利要求1所述的方法,其中触发通信动作包括向用户设备传送包括第二结果的通信。
9.如权利要求1所述的方法,其中,基于第二结果,识别来自工人集合中的一个或多个工人,用于请求参与询问过程,并且其中该方法还包括:
对于所述一个或多个工人中的每个工人,向与该工人相关联的设备传送对参与询问过程的请求。
10.如权利要求1所述的方法,其中,对于工人集合的子集中的每个工人,第二结果包括工人的评级或工人的得分。
11.如权利要求1所述的方法,还包括:
检测到轨迹已到达决策树中的有序决策节点集合的第二决策节点;
识别要向其提供对执行工作的请求的特定工人;以及
触发识别该特定工人或被传送到该特定工人的另一通信。
12.一种有形地实施在非瞬态机器可读存储介质中的计算机程序产品,包括被配置为使一个或多个数据处理器执行动作的指令,所述动作包括:
访问表示用于指派工作的决策树的数据结构,其中决策树包括有序决策节点集合并且被配置为执行与工人的渐进过滤对应的迭代决策,并且其中,对于有序决策节点集合的每个决策节点,延伸到该决策节点的一条或多条轨迹中的每条轨迹触发与配置对执行工作的工人请求有关的中间决策或最终决策;
发起决策树的轨迹,该轨迹与工人集合相关联,用于工作的潜在指派;
检测到轨迹已到达决策树中的有序决策节点集合的第一决策节点;
检索通过用第一训练数据集训练第一机器学习模型而生成的特定于节点的学习到的参数的第一集合,其中特定于节点的学习到的参数的第一集合定义如何将非结构化数据变换成结构化特征数据;
访问多个与工人相关联的非结构化数据集,所述多个与工人相关联的非结构化数据集中的每个与工人相关联的非结构化数据集与工人集合中的工人对应并且包括非结构化数据;以及
执行用特定于节点的学习到的参数的第一集合配置并使用所述多个与工人相关联的非结构化数据集的第一机器学习模型的一次或多次第一迭代,其中执行第一机器学习模型的一次或多次第一迭代生成包括多个工人特征数据集的第一结果,所述多个工人特征数据集中的每个工人特征数据集与工人集合中的工人对应并指示与工人对应的与工人相关联的非结构化数据集表示特征集中的每个特征的程度,其中所述多个工人特征数据集中的每个工人特征数据集是结构化数据,并且其中基于特定于节点的学习到的参数的第一集合来定义特征集;
基于所述多个工人特征数据集来识别工人集合的子集,用于继续对工作的评估;
检测到轨迹已到达决策树中的有序决策节点集合的第二决策节点;
检索通过用第二训练数据集训练第二机器学习模型而生成的特定于节点的学习到的参数的第二集合,其中特定于节点的学习到的参数的第二集合定义结构化数据如何被变换;
执行用特定于节点的学习到的参数的第二集合配置并使用所述多个工人特征数据集的子集的第二机器学习模型的一次或多次第二迭代,其中所述多个工人特征数据集的每个子集与工人集合的子集中的工人对应,并且其中第二机器学习模型的一次或多次第二迭代的执行生成第二结果,该第二结果对于工人集合的至少一个子集中的每个工人指示工作与工人之间的对应关系的估计的绝对程度或相对程度;以及
触发表示第二结果的通信动作。
13.如权利要求12所述的计算机程序产品,其中所述动作还包括:
识别多个键值对,其中所述多个键值对中的每个键值对与工人集合的子集中的工人对应;
其中第二机器学习模型的一次或多次第二迭代的执行还使用所述多个键值对,并且其中第一机器学习模型的一次或多次第一迭代的执行不使用所述多个键值对。
14.如权利要求12所述的计算机程序产品,其中所述动作还包括:
使用无监督学习过程学习特定于节点的学习到的参数的第一集合;以及
使用受监督的学习过程学习特定于节点的学习到的参数的第二集合。
15.如权利要求12所述的计算机程序产品,其中所述多个工人特征数据集中的每个工人特征数据集包括向量、矩阵或阵列,并且其中向量、矩阵或阵列具有预定义的维度。
16.如权利要求12所述的计算机程序产品,其中所述动作还包括:
访问与工作对应的工作非结构化数据集;
执行用特定于节点的学习到的参数的第一集合配置并使用工作非结构化数据集的第一机器学习模型的另一迭代,其中第一机器学习模型的另一迭代的执行生成指示工作非结构化数据集表示特征集中的每个特征的程度的工作特征数据集;以及
对于工人集合中的每个工人,基于与工人对应的工人特征数据集和工作特征数据集,生成工作比较度量,其中基于为工人集合生成的工作比较度量来识别工人集合的子集。
17.如权利要求12所述的计算机程序产品,其中所述动作还包括利用第一训练数据集来训练第一机器学习模型以学习特定于节点的学习到的参数的第一集合,其中第一训练数据集包括其它非结构化数据,并且其中特定于节点的学习到的参数的第一集合将特定语义特性与经验水平、技能或工作特性相关联。
18.如权利要求12所述的计算机程序产品,其中所述动作还包括:
检测到轨迹已到达决策树中的有序决策节点集合的第三决策节点;以及
执行用特定于节点的学习到的参数的第三集合配置并使用所述多个工人特征数据集中的至少一个工人特征数据集的第三机器学习模型的第三迭代,其中第三机器学习模型的第三迭代的执行的第三结果表示被预测为导致接受子集的特定工人执行工作的请求的一个或多个请求配置,该请求用所述一个或多个请求配置来配置。
19.如权利要求12所述的计算机程序产品,其中触发通信动作包括向用户设备传送包括第二结果的通信。
20.一种系统,包括:
一个或多个数据处理器;以及
包含指令的非瞬态计算机可读存储介质,所述指令在所述一个或多个数据处理器上执行时使所述一个或多个数据处理器执行动作,所述动作包括:
访问表示用于指派工作的决策树的数据结构,其中决策树包括有序决策节点集合并且被配置为执行与工人的渐进过滤对应的迭代决策,并且其中,对于有序决策节点集合的每个决策节点,延伸到该决策节点的一条或多条轨迹中的每条轨迹触发与配置对执行工作的工人请求有关的中间决策或最终决策;
发起决策树的轨迹,该轨迹与工人集合相关联,用于工作的潜在指派;
检测到轨迹已到达决策树中的有序决策节点集合的第一决策节点;
检索通过用第一训练数据集训练第一机器学习模型而生成的特定于节点的学习到的参数的第一集合,其中特定于节点的学习到的参数的第一集合定义如何将非结构化数据变换成结构化特征数据;
访问多个与工人相关联的非结构化数据集,所述多个与工人相关联的非结构化数据集中的每个与工人相关联的非结构化数据集与工人集合中的工人对应并且包括非结构化数据;以及
执行用特定于节点的学习到的参数的第一集合配置并使用所述多个与工人相关联的非结构化数据集的第一机器学习模型的一次或多次第一迭代,其中执行第一机器学习模型的一次或多次第一迭代生成包括多个工人特征数据集的第一结果,所述多个工人特征数据集中的每个工人特征数据集与工人集合中的工人对应并指示与工人对应的与工人相关联的非结构化数据集表示特征集中的每个特征的程度,其中所述多个工人特征数据集中的每个工人特征数据集是结构化数据,并且其中基于特定于节点的学习到的参数的第一集合来定义特征集;
基于所述多个工人特征数据集来识别工人集合的子集,用于继续对工作的评估;
检测到轨迹已到达决策树中的有序决策节点集合的第二决策节点;
检索通过用第二训练数据集训练第二机器学习模型所生成的特定于节点的学习到的参数的第二集合,其中特定于节点的学习到的参数的第二集合定义结构化数据如何被变换;
执行用特定于节点的学习到的参数的第二集合配置并使用所述多个工人特征数据集的子集的第二机器学习模型的一次或多次第二迭代,其中所述多个工人特征数据集的每个子集与工人集合的子集中的工人对应,并且其中第二机器学习模型的一次或多次第二迭代的执行生成第二结果,该第二结果对于工人集合的至少一个子集中的每个工人指示工作与工人之间的对应关系的估计的绝对程度或相对程度;以及
触发表示第二结果的通信动作。
CN201910925016.6A 2018-09-28 2019-09-27 使用迭代人工智能通过通信决策树的有向轨迹 Pending CN110969184A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/146,678 US11321614B2 (en) 2017-09-29 2018-09-28 Directed trajectories through communication decision tree using iterative artificial intelligence
US16/146,678 2018-09-28

Publications (1)

Publication Number Publication Date
CN110969184A true CN110969184A (zh) 2020-04-07

Family

ID=70029617

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910925016.6A Pending CN110969184A (zh) 2018-09-28 2019-09-27 使用迭代人工智能通过通信决策树的有向轨迹

Country Status (2)

Country Link
JP (2) JP7350590B2 (zh)
CN (1) CN110969184A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112861005A (zh) * 2021-02-22 2021-05-28 上海风秩科技有限公司 用于信息推送的方法及装置、设备
CN113641433A (zh) * 2021-08-10 2021-11-12 广州鲁邦通智能科技有限公司 基于i18n技术的前端国际化多语言文件的多语言页面转换方法和单元
CN115858111A (zh) * 2022-11-16 2023-03-28 上海自然而然信息科技有限公司 一种基于动态场景的智能调度方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6945909B1 (ja) * 2021-06-04 2021-10-06 株式会社アクリート メッセージ伝達シナリオ生成装置、メッセージ伝達シナリオ生成方法、及びメッセージ伝達シナリオ生成プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010001792A1 (ja) 2008-07-01 2010-01-07 コニカミノルタエムジー株式会社 データベースシステム
JP5394959B2 (ja) 2010-03-23 2014-01-22 富士フイルム株式会社 判別器生成装置および方法並びにプログラム
US9626654B2 (en) 2015-06-30 2017-04-18 Linkedin Corporation Learning a ranking model using interactions of a user with a jobs list
KR20180118611A (ko) 2015-12-23 2018-10-31 파이메트릭스, 인크. 인재의 데이터 기반 식별을 위한 시스템 및 방법
CN105787639A (zh) 2016-02-03 2016-07-20 北京云太科技有限公司 基于人工智能的人才大数据量化精确匹配方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112861005A (zh) * 2021-02-22 2021-05-28 上海风秩科技有限公司 用于信息推送的方法及装置、设备
CN113641433A (zh) * 2021-08-10 2021-11-12 广州鲁邦通智能科技有限公司 基于i18n技术的前端国际化多语言文件的多语言页面转换方法和单元
CN115858111A (zh) * 2022-11-16 2023-03-28 上海自然而然信息科技有限公司 一种基于动态场景的智能调度方法
CN115858111B (zh) * 2022-11-16 2023-11-28 上海自然而然信息科技有限公司 一种基于动态场景的智能调度方法

Also Published As

Publication number Publication date
JP2023168364A (ja) 2023-11-24
JP7350590B2 (ja) 2023-09-26
JP2020057386A (ja) 2020-04-09

Similar Documents

Publication Publication Date Title
US11775843B2 (en) Directed trajectories through communication decision tree using iterative artificial intelligence
JP7465802B2 (ja) 反復人工知能を使用する通信決定ツリーを通る方向付けされたトラジェクトリ
US20230351265A1 (en) Customized predictive analytical model training
US11663409B2 (en) Systems and methods for training machine learning models using active learning
US10726427B2 (en) Method and apparatus for building a user profile, for personalization using interaction data, and for generating, identifying, and capturing user data across interactions using unique user identification
US8843427B1 (en) Predictive modeling accuracy
US20190180196A1 (en) Systems and methods for generating and updating machine hybrid deep learning models
US20170250930A1 (en) Interactive content recommendation personalization assistant
US9082084B2 (en) Facilitating machine learning in an online social network
US20190179903A1 (en) Systems and methods for multi language automated action response
CN110969184A (zh) 使用迭代人工智能通过通信决策树的有向轨迹
US20220405485A1 (en) Natural language analysis of user sentiment based on data obtained during user workflow

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