一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用状态空间模型估计用户界面更改的处理影响的制作方法

2022-03-23 01:39:14 来源:中国专利 TAG:

使用状态空间模型估计用户界面更改的处理影响


背景技术:

1.本公开涉及用于计算机的用户界面,并且更具体地涉及测量用户界面的更改的影响。
2.用户界面的设计者可以寻求包括用户可能与之交互并且执行预期动作的特征。设计者可以接收来自测试组或最终用户的轶事反馈。这种反馈可以提供一些指导,但范围有限。此外,用户与用户界面的交互可以跨不同的组而变化,并且会随着时间而变化。此外,由于影响用户与用户界面的交互的因素众多,可能难以确定一个更改对更改后的用户活动负责的程度。因此,用户界面设计者可能没有可靠的系统来提供相关于用户界面更改的数据驱动决策。
3.因此,本领域需要用户界面中的改进。特别地,需要用于评估用户界面的更改的系统和方法。


技术实现要素:

4.以下呈现了本公开的一个或多个实现的简化概述以便提供对这种实现的基本理解。该概述不是所有预期实现的广泛概述,并且既不旨在标识所有实现的关键或必要元素,也不旨在勾画任何或所有实现的范围。其唯一目的是以简化的形式呈现本公开的一个或多个实现的一些概念,作为稍后呈现的更详细描述的前奏。
5.在一个示例中,本公开提供了一种用于评估用户界面的计算机设备。该计算机设备可以包括存储器和处理系统,该处理系统包括与该存储器通信耦合的至少一个处理器。处理系统可以在用户界面的更改之前和之后监视与用户界面的用户交互,该监视包括收集每个用户的结果度量数据作为时间序列。处理系统可以将用户划分为在更改之后参与与用户界面的元素的特定交互的处理群组和没有参与特定交互的对照群组。处理系统可以基于结果度量数据生成针对处理群组的结果度量时间序列。处理系统可以基于结果度量数据生成针对对照群组的分区结果度量时间序列。处理系统可以基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列,使用贝叶斯机器学习模型估计结果度量的条件分布和反事实行为。处理系统可以基于条件分布和反事实行为确定用户界面的更改在结果度量数据上的处理影响。处理系统可以基于更改的处理影响更新用户界面,以保留或移除用户界面的更改。
6.在另一示例中,本公开提供了一种由于用户界面增强而对用户行为中的更改进行估计的方法。该方法可以包括在用户界面的更改之前和之后监视与用户界面的用户交互,该监视包括收集每个用户的结果度量数据作为时间序列。该方法可以包括将用户划分为在更改之后参与与用户界面的元素的特定交互的处理群组和没有参与特定交互的对照群组。该方法可以包括基于结果度量数据生成针对处理群组的结果度量时间序列。该方法可以包括基于结果度量数据生成针对对照群组的分区结果度量时间序列。该方法可以包括基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列,使用贝叶斯机器学习模型估计结果度量的条件分布和反事实行为。该方法可以包括基于条件分布和反事
实行为确定用户界面的更改在结果度量数据上的处理影响。
7.作为另一示例,本公开提供一种存储用于评估用户界面的更改的计算机可执行代码的计算机可读介质。计算机可读介质可以包括用于在用户界面的更改之前和之后监视与用户界面的用户交互的代码,该监视包括收集每个用户的结果度量数据作为时间序列。计算机可读介质可以包括用于将用户划分为在更改之后参与与用户界面的元素的特定交互的处理群组和没有参与特定交互的对照群组的代码。计算机可读介质可以包括用于基于结果度量数据生成针对处理群组的结果度量时间序列的代码。计算机可读介质可以包括用于基于结果度量数据生成针对对照群组的分区结果度量时间序列的代码。计算机可读介质可以包括用于基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列使用贝叶斯机器学习模型,估计结果度量的条件分布和反事实行为的代码。计算机可读介质可以包括用于基于条件分布和反事实行为确定用户界面的更改在结果度量数据上的处理影响的代码。
8.与本公开的实现相关的附加优点和新颖特征将部分地在以下描述中阐述,并且部分地将在检查以下内容或通过其实践学习后对本领域技术人员变得更加明显。
附图说明
9.在附图中:
10.图1是根据本公开的实现的用于提供和评估用户界面的示例计算机系统的图;
11.图2是图示了根据本公开的实现的由于用户界面中的更改而导致的用户行为的示例更改的图表;
12.图3是图示了根据本公开的实现的由于用户界面中的更改而导致的用户行为的另一示例更改的另一图表;
13.图4是根据本公开的实现的第一示例机器学习模型的概念图;
14.图5是根据本公开的实现的第二示例机器学习模型的概念图;
15.图6是根据本公开的实现的用于评估用户界面的示例方法的流程图;
16.图7是根据本公开的实现的训练机器学习模型的示例方法的流程图,以及
17.图8是根据本公开的实现的示例计算机设备的示意框图。
具体实施方式
18.本公开提供了用于估计用户界面更改的处理影响的系统和方法。本公开提供了允许计算机系统提供商(例如,网站运营商)利用客户数据来测量用户界面的更改对用户行为的影响的技术。结果度量可以指用户行为的测量的属性,诸如花费、观看时间、观看次数、点击次数、参与次数或其他预期的活动。
19.关于用户界面和用户行为的随机对照试验可能难以实施。例如,用户可能意识到用户界面更改,这可能会影响他们的行为。此外,将不同的用户界面部署到对照群组和实验群组可以造成后勤和客户关系问题。相反,关于用户界面更改的数据可以仅在用户界面更改之前的相对较短的时间段内以及在用户界面更改之后的时间段内可用。因此,可以预期,基于可用数据来测量用户界面更改的影响。
20.在一个示例中,本公开提供了一种用于由于用户界面增强而对用户行为中的更改
进行估计的系统和方法。系统在用户界面的更改之前和之后监视与用户界面的用户交互。特别地,系统在每个用户的基础上收集交互细节和结果度量。然后,系统针对与用户界面的新特征交互的处理群组和没有与新特征交互的对照群组聚合收集的信息。系统针对每个群组或其分区生成结果度量的时间序列。然后,系统基于结果度量的时间序列来训练贝叶斯机器学习模型,以估计结果度量的条件分布和反事实行为。如果没有发生更改,则反事实行为可以表示在用户界面的更改的时间处之后的处理群组的预测的行为。然后,系统基于结果群组的时间序列和反事实行为估计用户界面的更改的影响。
21.现在参考图1,示例用户界面系统100包括中央计算机设备110和多个用户设备170。中央计算机设备110可以是例如任何移动或固定计算机设备,包括但不限于计算机服务器、台式或膝上型或平板计算机、蜂窝电话、个人数字助理(pda)、手持设备、具有与一个或多个其他设备的有线和/或无线连接能力的任何其他计算机设备或者能够处理用户界面数据的任何其他类型的计算机化设备。
22.计算机设备110可以包括执行存储在存储器116中的指令的中央处理单元(cpu)114。例如,cpu 114可以执行操作系统140和一个或多个应用130,应用130可以包括用户界面评估应用150。计算机设备110还可以包括用于经由网络与外部设备通信的网络接口120。例如,计算机设备110可以与多个用户设备170通信。
23.计算机设备110可以包括显示器122。显示器122可以是例如计算机监视器或触摸屏。显示器122可以向操作员提供信息并且允许操作员配置计算机设备110。
24.存储器116可以被配置用于存储定义操作系统140和/或应用130和/或与操作系统140和/或应用130相关联的数据和/或计算机可执行指令,并且cpu 114可以执行操作系统140和/或应用130。存储器116可以表示计算机设备110可访问的一个或多个硬件存储器设备。存储器116的示例可以包括但不限于计算机可用的一种类型的存储器,诸如随机存取存储器(ram)、只读存储器(rom)、磁带、磁盘、光盘、易失性存储器、非易失性存储器,及其任意组合。存储器116可以存储由cpu 114执行的应用的本地版本。在一个实现中,存储器116可以包括存储设备,其可以是非易失性存储器。
25.cpu 114可以包括用于执行指令的一个或多个处理器。cpu 114的示例可以包括但不限于如本文所述专门编程的任何处理器,包括控制器、微控制器、专用集成电路(asic)、现场可编程门阵列(fpga)、片上系统(soc),或其他可编程逻辑或状态机。cpu 114可以包括其他处理组件,诸如算术逻辑单元(alu)、寄存器和控制单元。cpu 114可以包括多个核心并且可以能够使用多个核心来同时处理不同指令集和/或数据以执行多个线程。
26.操作系统140可以包括存储在存储器116中并且由cpu 114可执行的指令(诸如,应用130)。应用130可以包括用户界面评估应用150,用户界面评估应用150被配置为评估用户界面的更改在用户行为上的影响。用户界面评估应用150可以发表用户界面152,或者可以与所发表的用户界面152通信或以其他方式结合所发表的用户界面152进行操作。用户界面152可以是最终用户可以与之交互的任何用户界面。例如,用户界面152可以是在用户设备170上运行的应用或操作系统。用户界面评估应用150可以与在线商店或更新服务相关联或与其通信。因此,用户界面评估应用150可以间或发表用户界面152的更新版本,更新版本可以包括用户界面152的更改。作为另一示例,用户界面152可以是通过在用户设备170上执行的浏览器应用访问的网页。通过加载网页,浏览器应用可以有效地作为在计算机设备110上
执行的应用(例如,在网络服务器的情况下)的用户界面进行操作。
27.在一个实现中,用户界面152可以包括用于监视与用户界面152的用户交互的监视仪器154。监视仪器154可以收集关于用户交互的数据并且将所收集的数据提供给用户界面评估应用150。例如,监视仪器154可以跟踪用户何时被暴露给用户界面152的更改的特征以及与新特征或响应于新特征的任何用户交互(例如,点击、悬停、滚动)。监视仪器154还可以确定针对每个用户交互的日期和交互量。交互量可以是响应度量的测量。例如,在被配置用于促进销售的用户界面152上,交互量可以是采购量或更一般地,是收入。其他可能的交互量包括点击次数、交互时间、交易或显示的通知、促销、公告或广告的数目。
28.在一个方面中,例如在用户界面152是网站的情况下,监视仪器154可以作为软件开发工具包(sdk)而被提供,以用于提供可以被添加到网站的工具。运营商可以在一个或多个企业服务器或云服务器(例如,计算机设备110)上托管网站和监视仪器154。监视仪器154可以向网站提供监视客户与网站的交互并且针对导致交易的会话(例如,与网站的用户交互)生成交易上下文数据的能力。在实现中,交易上下文数据可以包括标识被用于进行交易的硬件设备(或虚拟设备)的设备指纹。设备指纹可以是可以跨多个会话和属性(例如,网站)可适用的用户设备的模糊标识。模糊标识可以不需要任何特定标识的片段,而是替代的可以基于可用信息集。可以根据定义的算法对可用信息进行哈希化以生成设备指纹,以使得当可用信息集被用于另一交易时,设备可以被标识。例如,设备指纹可以被用作用户标识符来唯一地标识用户。
29.用户界面评估应用150可以包括界面优化模块160,界面优化模块160确定用户界面的更改的影响并且可以基于所确定的影响来确定是保留还是移除更改。界面优化模块160可以包括群组组件162,群组组件162基于与用户界面的特征的交互将用户或与用户相关联的数据划分为对照群组和处理群组。界面优化模块160可以包括时间序列组件164,时间序列组件164为用于对照群组和处理群组生成一个或多个结果度量的时间序列。时间序列组件164还可以应用过滤器以排除结果度量的各种异常值。界面优化模块160可以包括机器学习模型组件166,机器学习模型组件166可以基于结果度量的时间序列来训练机器学习模型并且使用经训练的机器学习模型来针对处理群组估计结果度量的条件分布和反事实行为。界面优化模块160可以包括影响量化组件168,影响量化组件168可以确定用户界面的更改的处理影响。处理影响可以基于条件分布和反事实行为。界面优化模块160还可以基于处理影响来确定是保留还是移除用户界面的更改。例如,界面优化模块160可以保留导致正面处理影响的更改并且移除导致负面处理影响的更改。
30.图2是包括用于针对对照群组和处理群组的用户响应度量的示例时间序列的图表200。在所图示的示例中,用户界面中的更改可以产生积极影响(即,逐点提升)。针对处理群组210的时间序列被图示为实线,同时针对对照群组220的时间序列被图示为虚线。阴影区域222可以表示针对对照群组220的时间序列的范围。通常,针对处理群组210的时间序列和针对对照群组220的时间序列可以在用户界面中的更改或与更改的用户界面的交互之前遵循相似的模式。例如,第一次点击的时间230可以指示处理群组中的用户何时与用户界面的更改进行交互。在更改之后,针对处理群组210的时间序列可以指示观察的结果度量(例如,实际收入240)。针对对照群组220的时间序列可以被用于预测(例如,使用机器学习模型组件166)处理群组的反事实行为(例如,反事实收入250)。如果没有发生更改,则反事实行为
可以表示在用户界面的更改的时间之后处理群组的预测的行为。观察的结果度量和反事实行为之间的差异可以被称为处理影响或逐点提升260。
31.图3是包括针对处理群组和合成对照的用户响应度量的示例时间序列的另一图表。在所图示的示例中,用户界面中的更改可以产生积极影响(即,逐点提升)。针对处理群组310的时间序列被图示为实线。针对合成对照320、322的时间序列被图示为虚线。针对合成对照320、322的时间序列可以基于与针对处理群组310的时间序列的相似性而被选择。如下文进一步详细讨论的,对照群组的分区可以被使用来生成合成对照。可以基于针对处理群组310和合成对照的时间序列来训练回归或其他机器学习模型以预测反事实行为350,这可以与在界面的更改的时间330之后的处理时间序列340进行比较以确定处理影响。
32.转向图4,示例模型400示出了可以影响用户界面的处理影响的输入。模型400可以是潜状态模型。模型400可以假设针对结果度量的所有时间序列420a-420n映射到潜状态z 410。也可以假设针对处理群组的处理后(post-treatment)结果y 450映射到潜状态z 410。因此,模型400可以从已知时间序列420a-420n(例如,处理群组时间序列和分区对照群组时间序列)推断潜状态z 410。潜状态z 410可以被训练以正确预测处理后结果y 450。另外,季节性组件430可以对处理后结果y 450有贡献。最后,处理影响e 440可以对处理后结果y 450有贡献。在实现中,还可以假设处理影响e 440对处理后结果y是缓慢变化的。因此,通过对模型400进行训练以正确预测y(基于已知的处理后结果),经训练的模型400可以提供处理影响e 440。例如,可以使用蒙特卡罗马尔可夫链(mcmc)采样对模型400进行采样来估计参数以获取后验预测分布。
33.转向图5,更详细的示例模型500示出了如何假设若干因素对慢波模式中的因果影响有贡献。以下假设可以形成针对模型500的基础。
34.y(t)=βy*z(t) βs*s(t) ∈y(t) b其中t≤t并且g(t)=1y(t)=βy*z(t) βs*s(t) e(t) ∈y(t) b其中t>t并且g(t)=1
35.p(y(t))=α
noise
其中g(t)=0
36.x(t)=β
x
*z(t) ∈
x
(t)
37.e(t)=e(t-1) ∈e(t)其中t>t
[0038][0039]
u(t)=u(t-1) ∈u(t)
[0040]
其中
[0041]

x
(t)~n(0,is
x-1
),∈y(t)~n(0,s
y-1
),∈u(t)~n(0,s
u-1
),∈e(t)~n(0,s
e-1
),∈z(t)~n(0,i),
[0042]sx
~g(k
x
,v
x
),sy~g(ky,vy),su~g(ku,vu),se~g(ke,ve),
[0043]
β
x
~n(0,1),βy~n(0,1),βs~n(0,s
s-1
),
[0044]ss
~g(ks,vs),并且b~n(0,1)
[0045]
使用mcmc采样,处理影响的条件分布可以被估计为p(e_(t:t_all)|y_(1:t_all),x(1:t_all))。特别地,机器学习模型组件166可以对处理前数据和处理后数据进行采样以估计基于潜状态z(t)预测x(t)和y(t)的线性回归模型的系数。机器学习模型组件166可以在处理(t)之后直接将处理影响分量540添加到模型500以考虑对观察响应y的处理影响。
[0046]
如图5所描绘的,状态分量z(t)生成x(t),参考时间序列520;以及y(t),处理群组
的观察响应550。此外,z(t)的先验偏差570可以被建模为随机游走过程u(t)。模型500的重要分量是平均处理影响e(t)分量540,分量540被建模为从处理开始的随机游走。门信号g(t)560被应用。
[0047]
如果g(t)=1:
[0048]
y(t)=βy*z(t) βs*s(t) ∈y(t) b其中t≤t
[0049]
y(t)=βy*z(t) βs*s(t) e(t) ∈y(t) b其中t>t
[0050]
x(t)=β
x
*z(t) ∈
x
(t)
[0051]
如果g(t)=0:
[0052]
p(y(t))=α
noise
[0053]
e(t)=e(t-1) ∈e(t)其中t>t
[0054][0055]
u(t)=u(t-1) ∈u(t)
[0056]

x
(t)~n(0,i*s
x-1
),s
x
~g(k
x
,v
x
)
[0057]
∈y(t)~n(0,s
y-1
),sy~g(ky,vy)
[0058]
∈u(t)~n(0,s
u-1
),su~g(ku,vu)
[0059]
∈e(t)~n(0,s
e-1
),se~g(ke,ve)
[0060]
∈z(t)~n(0,i)
[0061]
β
x
~n(0,1),βy~n(0,1),βs~n(o,s
s-1
)
[0062]ss
~g(ks,vs),
[0063]
b~n(0,1)
[0064]
为了估计处理影响的后验分布e=[e(t),e(t 1)...e(t
total
)],机器学习模型组件166例如可以使用吉布斯采样(mcmc采样的示例)对所有隐藏分量和模型参数的联合后验分布进行采样,以得到e的边际分布。
[0065]
相关于采样z(t),基于模型500,z(t)仅以u(t)、x(t)和y(t)为条件,对于g(t)=1的所有t,
[0066]
根据共轭:
[0067][0068]
pz(t)=(i β
xt
β
x
*s
x
βytβy*sy*γ
mix
)-1
[0069]mz
(t)=m
uz
(t) m
yz
(t)*γ
mix
m
xz
(t)
[0070]muz
(t)=pz(t)*u(t)
[0071]mxz
(t)=pz(t)*β
xt
*x*s
x
[0072]myz
(t)=pz(t)*β
yt
*yc(t)*sy[0073]
yc(t)=y(t)-βs*s(t)-b其中t≤t
[0074]
yc(t)=y(t)-βs*s(t)-b-e(t)其中t>t
ꢀꢀ
[6]
[0075]
在上述共轭中,γ
mix
控制y(t)的样本如何影响z(t)的后验估计。在正式的贝叶斯推理方程中引入超参数的原因是,如果预测器z(t)受y(t)的影响严重,模型将倾向于使用
来自协变量时间序列x和季节性分量s的较少信息来估计y(t)的反事实响应部分。γ
mix
的经验值为0.05。
[0076]
相关于u(t),机器学习模型组件166可以定义u(t)=[u(0),u(1)...u(t)]并且|z(t)=[z(0),z(1)...z(t)]。机器学习模型组件166可以在给定z(t
total
)和门信号g(t)=[g(0),g(1)...g(t)]的情况下对u(t
total
)进行采样,如下所示:1)使用来自卡尔曼过滤器的结果,得到mu(t|t)、pu(t|t)。
[0077]
对于g(t)=1:
[0078]
s(t)=i pu(t|t-1)
[0079]
k(t)=pu(t|t-1)s(t)-1
[0080]mu
(t|t)=mu(t|t-1) k(t)*(z(t)-mu(t|t-1))
[0081]
pu(t|t)=(i-k(t))pu(t|t-1)
[0082]
pu(t 1|t)=pu(t|t) i*s
u-1
[0083]mu
(t 1|t)=mu(t|t)
[0084]
对于g(t)=0:不从当前数据点校正卡尔曼过滤器:
[0085]
pu(t|t)=pu(t|t-1)
[0086]mu
(t|t)=mu(t|t-1)
[0087]
pu(t 1|t)=pu(t|t) i*s
u-1
[0088]mu
(t 1|t)=mu(t|t)
[0089]
2)采样u(t
total
)~n(mu(t
total
|t
total
,pu(t
total
|t
total
)
[0090]
对于t=t
total-1,...,0:
[0091]
使用mu(t|t)、pu(t|t)来计算
[0092][0093][0094]
采样
[0095]
当g(t)=1时,机器学习模型组件166可以基于样本对回归模型参数β
x
、βy、βs和b进行采样。对于β
x
,机器学习模型组件166可以定义z=[z(0),z(1)...z(t
total
)]、xc=[x(0)-βs*s(0),x(1)-βs*s(1),...x(t
total
)-βs*s(t
total
)]、
[0096]
根据共轭:
[0097][0098]
[0099][0100][0101]
机器学习模型组件166可以通过来标准化zz
t
以避免针对长时段数据的数值溢出,n
normalzied
的值的经验选择是100。
[0102]
对于βy,机器学习模型组件166可以定义z=[z(0),z(1)...z(t
total
)]、y
zc
=[y
zc
(0),y
zc
(1)...y
zc
(t
total
)]、以及y
zc
(t)如下:
[0103]yzc
(t)=y(t)-βs*s(t)-b其中t<t
[0104]yzc
(t)=y(t)-βs*s(t)-b-e(t)其中t≥t
ꢀꢀ
[10]
[0105]
βy的后验条件分布,
[0106]
根据共轭:
[0107][0108][0109][0110][0111]
机器学习模型组件166可以通过n
normalzied
/n
sample
来标准化zz
t
以避免针对长时段数据的数值溢出,n
normalzied
的值的经验选择是100。
[0112]
实践中,在处理的开始时段可以观察到大的响应突发。借助模型500中的影响分量,反事实估计将不太可能受到突发的影响,这将在后面的示例中示出。但是,为了使模型收敛更快,可以忽略在处理之后的数据时段。例如,机器学习模型组件166可以定义zp=[z(0),z(1)...z(t-1),z(t offset),...,z(t
total
)]、
[0113]yzcp
=[y
zc
(0),y
zc
(1)...y
zc
(t-1),y
zc
(t offset),...,y
zc
(t
total
)]、y
zc
(t),其中offset(偏移)是处理开始之后被忽略的数据点数。
[0114]
因此,βy的后验条件分布可以被改写为:
[0115][0116][0117]
[0118][0119]
出于一致性的目的,偏移变量可以被使用在以下方程中。
[0120]
为了对βs进行采样,机器学习模型组件166可以定义sp=[s(0),s(1)...s(t-1),s(t offset),...,s(t
total
)]、
scp
=[y
sc
(0),y
sc
(1)...y
sc
(t-1),y
sc
(t offset),...,y
sc
(t
total
)],
[0121]
其中y
sc
(t)被定义如下:
[0122]ysc
(t)=y(t)-βz*z(t)-b其中t<t
[0123]ysc
(t)=y(t)-βz*z(t)-b-e(t)其中t≥t
ꢀꢀ
[14]
[0124]
βs的后验条件分布被给出如下:
[0125][0126][0127][0128][0129]
为了对b进行采样,机器学习模型组件166可以定义y
bcp
=[y
bc
(0),y
bc
(1)...y
bc
(t-1),y
bc
(t offset),...,y
bc
(t
total
)],
[0130]
其中y
bc
(t)被定义如下:
[0131]ybc
(t)=y(t)-βz*z(t)-βs*s(t)其中t<t
[0132]ybc
(t)=y(t)-βz*z(t)-βs*s(t)-e(t)其中t≥t
[0133]
b的后验条件分布被给出如下:
[0134][0135]
pb=(n
normalzied
*sy 1)-1
[0136][0137]
mb=p
by
*pb*sy[0138]
为了对e(t)进行采样,机器学习模型组件166可以定义e(t)=[e(0),e(1)...e(t)]以及ye(t)=[ye(0),ye(1)...ye(t)],ye(t)如下:
[0139]
ye(t)=y(t t)-βz*z(t t)-βs*s(t t)-b
[0140]
t<=t
total-t
[0141]
给定ye(t
total-t)作为块(block),机器学习模型组件166可以使用卡尔曼平滑器对e(t
total-t)进行采样并且运行卡尔曼过滤器以得到me(t|t)、pe(t|t):
[0142]
对于g(t)=1:
[0143]
s(t)=i*s
y-1
pe(t|t-1)
[0144]
k(t)=pe(t|t-1)s(t)-1
[0145]
me(t|t)=me(t|t-1) k(t)*(ye(t)-me(t|t-1))
[0146]
pe(t|t)=(i-k(t))pe(t|t-1)
[0147]
pe(t 1|t)=pe(t|t) i*s
e-1
[0148]
me(t 1|t)=me(t|t)
[0149]
对于g(t)=0:
[0150]
pe(t|t)=pe(t|t-1)
[0151]
me(t|t)=me(t|t-1)
[0152]
pe(t 1|t)=pe(t|t) i*s
e-1
[0153]
me(t 1|t)=me(t|t)
[0154]
采样e(t
total-t)~n(me(t
total-t|t
total-t),pe(t
total-t|t
total-t)
[0155]
对于t=t
total-t-1,...,0:
[0156]
使用me(t|t)、pe(t|t)来计算
[0157][0158][0159]
采样
[0160]
在实践中,累积影响可以比逐点影响e(t)更重要。机器学习模型组件166可以在对e(t)进行采样之后对累积影ec(t)进行采样:
[0161]
机器学习模型组件166可以根据伽马分布的共轭先验对正态分布的精度进行采样:
[0162]
对s
x
进行采样:
[0163]kx*
=k
x
0.5*n
sample
*n
x
[0164][0165]sx
~g(k
x*
,v
x*
)
[0166]
对sy进行采样:
[0167]ky*
=ky 0.5*(n
sample-offset)
[0168][0169]
sy~g(k
y*
,v
y*
)
[0170]
对su进行采样:
[0171]ku*
=ku 0.5*(n
sample-1)*nu[0172][0173]
su~g(k
u*
,v
u*
)
[0174]
为了对se进行采样:
[0175]ke*
=ke 0.5*((n
sample-t-1))
[0176][0177]
se~g(k
e*
,v
e*
)
[0178]
对ss进行采样:
[0179]ks*
=ks 0.5*ns[0180]vs*
=vs 0.5*||βs||
[0181]ss
~g(k
s*
,v
s*
)
[0182]
为了对g(t)进行采样,机器学习模型组件166可以假设g(t)是马尔可夫链,具有先验分布:p(g(0)=1)=π0和转移矩阵t。为了模型简化,机器学习模型组件166可以假设对称转移矩阵,这意味着:
[0183]
p(g(t)=1|g(t-1)=0)=p(g(t)=0|g(t-1)=1)=α
[0184]
p(g(t)=1|g(t-1)=1)=p(g(t)=0|g(t-1)=0)=1-α
[0185]
当r(t)=p(y(t)|g(t)=0)/p(y(t)|g(t)=1)时,给定y(t)=[y(0)...y(t)]的g(t)的前向后验分布如下:
[0186][0187][0188]
π
t
=p(g(t-1)|y(t-1))*(1-α) (1-p(g(t-1)|y(t-1)))*α
[0189]
给定y(t)的[g(0)...g(t
total
)]的联合后验分布可以以反向的方式被写成:
[0190]
p(g(0),g(1)...g(t
total
)|y(t))=p(g(t
total
)|y(t))*p(g(t
total-1)|y(t),g(t
total
))*...*p((g(0)|y(t),g(1)...g(t
total
)))
[0191]
通过定义表示g(t)=[g(t 1),g(t 2)...g(t
total
)],机器学习模型组件166可以将联合分布重写为:
[0192]
p(g(0),g(1)...g(t
total
)|y(t))=p(g(t
total
)|y(t
total
))*
[0193][0194]
根据贝叶斯网络的d-分离,
[0195]
p(g(t)|y(t
total
),g(t))=p(g(t)|y(t),g(t 1))
[0196]
根据贝叶斯规则,
[0197]
p(g(t)|y(t),g(t 1))=p(g(t)|y(t))*p(g(t 1)|y(t),g(t))/p(g(t 1)|y(t))
[0198]
p(g(t 1)|y(t))=p(g(t)=1|y(t))*p(g(t 1)|y(t),g(t)=1) p(g(t)=0|y(t))*p(g(t 1)|y(t),g(t)=0)
[0199]
根据马尔可夫链属性
[0200]
p(g(t 1)|y(t),g(t)=1)=p(g(t 1)|g(t)=1)
[0201]
=(1-g(t 1))*α g(t 1)*(1-α)
[0202]
p(g(t 1)|y(t),g(t)=0)=p(g(t 1)|g(t)=1)
[0203]
=(1-g(t 1))*(1-α) g(t 1)*α
[0204]
组合以上方程,
[0205][0206]
其中
[0207][0208][0209]
因此,机器学习模型组件166可以以反向顺序对g(t)进行采样:
[0210]
1.首先根据p(g(t
total
)|y(t
total
))对g(t
total
)进行采样
[0211]
2.根据p(g(t)|y(t
total
),g(t))对g(t)进行采样,其中t=t
total-1....0
[0212]
机器学习模型组件166可以计算r(t)。给定g(t)=1的y(t)的似然性被明确定义:
[0213]
其中t<t
[0214]
其中t>=t
[0215]
给定g(t)=0的y(t)的似然性不太直接。由于在时间t处生成噪声g(t)的未知机制的底层分布是未知的,所以该模型不能假设y(t)在不同时间处遵循相同的分布,例如,正态分布。替代的,机器学习模型组件166可以假设每个y(t)遵循以某个点c(t)为中心的具有方差的正态分布。机器学习模型组件166还可以假设因此,给定g(t)=0的y(t)的似然性是常数:
[0216][0217]
因此,r(t)可以被计算为:
[0218]
其中t<t
[0219]
其中t>=t
[0220]
在上面的方程中,λ控制g(t)的后验概率。大的λ意味着模型更有可能接受在时间t处观察的样本,而小的λ意味着模型更有可能拒绝在t处观察的样本。
[0221]
转向图6,示例方法600估计用户界面的更改的处理影响。例如,方法600可以由计算机设备110上的用户界面评估应用150来执行。
[0222]
在框610处,方法600可以包括在用户界面的更改之前和之后监视与用户界面的用户交互。例如,在一个实现中,用户界面152和/或监视仪器154可以在用户界面的更改之前和之后监视与用户界面152或本地用户界面172的用户交互。例如,本地用户界面172的本地仪器174可以向监视仪器154报告本地收集的用户交互。在子框612处,框610可以包括:跟踪更改后的特征的用户暴露以及与更改的特征的用户交互。例如,用户界面152可以经由监测仪器154和/或本地仪器174来跟踪更改的特征的用户暴露以及与更改的特征的用户交互。例如,用户界面152、监测仪器154和/或本地仪器174可以记录用户界面的更改首次被呈现给用户(例如,渲染在用户设备170的显示器上)的时间或日期。用户界面152、监视仪器154和/或本地仪器174还可以记录用户与用户界面的更改进行交互的每个事件(例如,通过点击、悬停或以其他方式参与包括更改的特征)。
[0223]
在框620处,方法600可以包括将用户划分为在更改之后参与与用户界面的元素的特定交互的处理群组和没有参与特定交互的对照群组。例如,在一个实现中,群组组件162可以将用户划分为在更改之后参与与用户界面的元素的特定交互的处理群组和没有参与特定交互的对照群组。例如,群组组件162可以确定每个用户是否参与特定交互。在一个实现中,可以基于用户第一次参与特定交互的时间将群组划分为同类者(cohort)。
[0224]
在框630处,方法600可以包括基于结果度量数据生成针对处理群组的结果度量时间序列。例如,在一个实现中,时间序列组件164可以基于结果度量数据生成针对处理群组的结果度量时间序列(例如,时间序列210、310)。针对处理群组的结果度量数据可以被聚合。时间序列可以包括每天的交互量。交互量可以与一个或多个产品类别相关联。
[0225]
在框640处,方法600可以包括基于结果度量数据来生成针对对照群组的分区结果度量时间序列。在一个实现中,例如,时间序列组件164可以基于结果度量数据生成针对对照群组的分区结果度量时间序列。例如,在子框642中,框640可以包括基于结果度量的百分位间隔来对对照群组进行分区。也就是说,时间序列组件164可以基于结果度量的百分位间隔来对对照群组进行分区。每个百分位间隔可以被称为桶(bucket)。通常,被分入同一个桶的用户可以具有与其他桶中的用户不同的相似消费模式。可以对桶应用过滤器以移除具有异常数据的桶。例如,由若干大型活动日(例如,由于假期、事件或促销)支配的桶可以被视为异常值。例如,在子框644处,框640可以包括从结果度量数据中移除满足过滤标准的用户交互。例如,时间序列组件164可以从结果度量数据中移除满足过滤标准的用户交互。
[0226]
在框650处,方法600可以包括基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列使用贝叶斯机器学习模型,估计结果度量的条件分布和反事
实行为。在一个实现中,例如,机器学习模型组件166可以基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列使用贝叶斯机器学习模型(例如,模型400或模型500),估计结果度量的条件分布和反事实行为(例如,反事实行为350)。基于贝叶斯机器学习模型的反事实行为可以比仅依赖预处理趋势的先前方法更准确。例如,仅依赖于预处理趋势的方法可以就在用户界面的更改之前人为地增加事件的权重,从而基于少量样本来扭曲结果。对照而言,通过基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列来对反事实行为进行建模,反事实行为可以关于更改的用户界面更准确地对用户行为进行建模。在子框652中,框650可以包括基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列来训练潜状态模型。例如,机器学习模型组件166可以基于针对处理群组的结果度量时间序列和针对对照群组的分区结果度量时间序列来训练潜状态模型500。训练潜状态模型的进一步细节在下面关于图7来描述。
[0227]
在框660中,方法600可以包括基于条件分布和反事实行为来确定用户界面的更改在结果度量数据上的处理影响。在一个实现中,例如,影响量化组件168可以基于条件分布和反事实行为确定用户界面的更改在结果度量数据上的处理影响(例如,逐点提升260)。
[0228]
在框670中,方法600可以包括基于更改的处理影响确定是保留还是移除对用户界面的更改。在一个实现中,例如,界面优化模块160可以基于更改的处理影响确定是保留还是移除对用户界面的更改。例如,界面优化模块160可以将更改的处理影响与阈值进行比较。在一个实现中,阈值可以是0,并且界面优化模块160可以保留导致正面处理影响的更改并且移除导致负面处理影响的更改。界面优化模块160可以基于该确定来更新用户界面152和/或本地用户界面172。例如,界面优化模块160可以自动移除导致负面处理影响的特征。例如,界面优化模块160可以恢复到不包括用户界面的更改的用户界面172的先前版本。在一个实现中,界面优化模块160可以向提供用户界面的应用或网页提供更新。
[0229]
现在参考图7,示例方法700训练机器学习模型进行以估计处理影响。例如,方法700可以由计算机设备110上的用户界面评估应用150和/或机器学习模型组件166来执行。方法700可以对应于方法600的子框652。
[0230]
在框710处,方法700可以包括对来自用户界面的更改之前和之后的结果度量数据进行采样。例如,机器学习模型组件166可以从用户界面的更改之前和之后(例如,在时间230或时间330处)对结果度量数据进行采样。在子框712中,框710可以包括根据马尔可夫链蒙特卡罗方法对数据进行采样。例如,机器学习模型组件166可以根据马尔可夫链蒙特卡罗方法对数据进行采样。上面关于图5讨论了根据使用马尔可夫链蒙特卡罗方法的模型500对结果度量数据进行采样的具体技术。
[0231]
在框720处,方法700可以包括基于采样的结果度量数据估计线性回归模型的系数。例如,机器学习模型组件166可以基于采样的结果度量数据估计线性回归模型的系数。线性回归模型可以形成模型400或模型500的一部分。例如,模型400的潜状态z 410、已知时间序列420a-420n和后处理结果y 450可以被认为是线性回归模型。在模型500中,线性回归模型可以包括潜状态z 510、时间序列x 520和结果y 550。
[0232]
在框730处,方法700可以包括向模型添加季节性分量。例如,机器学习模型组件166可以将季节性分量s 430添加到模型400或将季节性分量s(t)添加到模型500。季节性分量s(t)可以被观察。s(t)的回归系数可以使用上述mcmc方法来估计以对βs进行采样。机器
学习模型组件166还可以如上文关于图5描述的对季节性组件进行采样。
[0233]
在框740处,方法700可以包括在用户界面的更改之后将处理影响分量添加到模型中以考虑在用户界面的更改之后,用户界面的更改对结果度量数据的影响。在一个方面中,例如,机器学习模型组件166可以将处理影响分量e 440添加到模型400或将影响分量540添加到模型500。因此,机器学习模型组件166可以对可以被用于估计处理影响的贝叶斯机器学习模型进行训练。
[0234]
现在参考图8,图示了根据实现的示例计算机设备110,与图1相比包括附加的组件细节。在一个示例中,计算机设备110可以包括用于执行与本文描述的一个或多个组件和功能相关联的处理功能的处理器48。处理器48可以包括单个或多个处理器集或多核处理器。此外,处理器48可以被实现为集成处理系统和/或分布式处理系统。在一个实现中,例如,处理器48可以包括cpu 114。
[0235]
在一个示例中,计算机设备110可以包括用于存储指令的存储器50,所述指令由处理器48可执行以用于执行本文描述的功能。在一个实现中,例如,存储器50可以包括存储器116。存储器50可以包括用于执行用户界面评估应用150的指令。
[0236]
此外,计算机设备110可以包括通信组件52,其提供用于使用如本文所述的硬件、软件和服务来建立和维持与一方或多方的通信。通信组件52可以承载计算机设备110上的组件之间以及计算机设备110和外部设备之间的通信,诸如位于跨通信网络的设备和/或串行或本地连接到计算机设备110的设备。例如,通信组件52可以包括一个或多个总线,并且还可以包括分别与发射机和接收机相关联的发射链组件和接收链组件,其可操作用于与外部设备进行接合。
[0237]
此外,计算机设备110可以包括数据存储库54,其可以是硬件和/或软件的任何合适的组合,其提供用于结合本文描述的实现采用的信息、数据库和程序的大容量存储装置。例如,数据存储库54可以是用于操作系统140和/或应用130的数据储存库。数据存储库可以包括存储器116和/或存储设备118。
[0238]
计算机设备110还可以包括用户界面组件56,用户界面组件56可操作以从计算机设备110的用户接收输入并且还可操作以生成用于呈现给用户的输出。用户界面组件56可以包括一个或多个输入设备,包括但不限于键盘、数字键盘、鼠标、触摸感应显示器、数字转换器、导航键、功能键、麦克风、语音识别组件、能够接收来自用户的输入的任何其他机制,或它们的任何组合。此外,用户界面组件56可以包括一个或多个输出设备,包括但不限于显示器、扬声器、触觉反馈机构、打印机、能够向用户呈现输出的任何其他机构,或它们的任何组合。
[0239]
在一个实现中,用户界面组件56可以发射和/或接收与操作系统140和/或应用130的操作相对应的消息。此外,处理器48可以执行操作系统140和/或应用130,并且存储器50或数据存储库54可以存储它们。
[0240]
如在本技术中使用的,术语“组件”、“系统”等旨在包括与计算机相关的实体,例如但不限于硬件、固件、硬件和软件的组合、软件、或正在执行的软件。例如,组件可以是但不限于在处理器上运行的过程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。举例来说,在计算机设备上运行的应用和计算机设备两者都可以是组件。一个或多个组件可以驻留在过程和/或执行的线程中,并且组件可以位于一台计算机上和/或分布在两台或多
台计算机之间。此外,这些组件可以从其上存储有各种数据结构的各种计算机可读介质执行。组件可以通过本地和/或远程进程的方式进行通信,诸如根据具有一个或多个数据分组的信号进行通信,诸如来自一个组件的数据通过该信号与在本地系统、分布式系统中的另一组件交互,和/或跨越诸如互联网的网络与其他系统交互。
[0241]
此外,术语“或”旨在意指包含性的“或”而不是排他性的“或”。也就是说,除非另有说明,或从上下文中清楚地说明,否则短语“x采用a或b”旨在意指任何自然包容性枚举。也就是说,短语“x采用a或b”满足以下任一情况:x采用a;x采用b;或x采用a和b。此外,除非另有说明或从上下文中清楚地指向单数形式,否则本技术和所附权利要求中使用的冠词“一个(a)”和“一个(an)”一般应被解释为意指“一个或多个”。
[0242]
已经根据可以包括多个设备、组件、模块等的系统来呈现各种实现或特征。本领域技术人员应当理解和了解,各种系统可以包括附加设备、组件、模块等和/或可以不包括结合附图讨论的所有设备、组件、模块等。也可以使用这些方法的组合。
[0243]
结合本文所公开的实施例描述的方法的各种说明性逻辑、逻辑块和动作可以利用以下特别编程的之一:通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件,或被设计为执行本文所描述的功能的其任何组合。通用处理器可以是微处理器,但是在备选方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可以被实现为计算机设备的组合,例如dsp和微处理器的组合、多个微处理器、与dsp核结合的一个或多个微处理器,或者任何其他这样的配置。此外,至少一个处理器可以包括可操作来执行上述步骤和/或动作中的一个或多个的一个或多个组件。
[0244]
此外,结合本文所公开的实现来描述的方法或过程的步骤和/或动作可以直接体现在硬件中、在由处理器执行的软件模块中、或者在两者的组合中。软件模块可以驻留在ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移除磁盘、cd-rom或本领域已知的任何其他形式的存储介质中。示例性存储介质可以被耦合到处理器,以使得处理器可以从存储介质读取信息和向存储介质写入信息。在备选方案中,存储介质可以与处理器集成在一起。此外,在一些实现中,处理器和存储介质可以驻留在asic中。另外,asic可以驻留在用户终端中。在备选方案中,处理器和存储介质可以作为分立组件驻留在用户终端中。另外,在一些实现中,方法或过程的步骤和/或动作可以作为一个或任何组合或一组代码和/或指令而驻留于机器可读介质和/或计算机可读介质中,其可以被并入到计算机程序产品中。
[0245]
在一个或多个实现中,所描述的功能可以以硬件、软件、固件或其任何组合来实现。如果以软件实现,则这些功能可以作为一个或多个指令或代码在计算机可读介质上存储或发射。计算机可读介质包括计算机存储介质和通信介质,通信介质包括便于将计算机程序从一个地点传送到另一地点的任何介质。存储介质可以是计算机可以访问的任何可用介质。作为示例而非限制,这种计算机可读介质可以包括ram、rom、eeprom、cd-rom或其他光盘存储装置、磁盘存储装置或其他磁存储设备,或任何其他可以被用来以指令或数据结构的形式携带或存储所需程序代码的并且可以由计算机访问的介质。本文使用的磁盘和光盘包括压缩盘(cd)、激光盘、光盘、数字多功能盘(dvd)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘通常利用激光以光学方式再现数据。上述的组合也应被包括在计
算机可读介质的范围内。
[0246]
虽然已经结合其示例描述了本公开的实现,但是本领域技术人员将理解,可以在不脱离其范围的情况下对上述实现进行变型和修改。根据说明书的考虑或根据本文所公开的示例的实践,其他实现对于本领域技术人员来说将是明显的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献