CN112988532B - 埋点事件的上报方法、装置、服务器及存储介质 - Google Patents
埋点事件的上报方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN112988532B CN112988532B CN202110112967.9A CN202110112967A CN112988532B CN 112988532 B CN112988532 B CN 112988532B CN 202110112967 A CN202110112967 A CN 202110112967A CN 112988532 B CN112988532 B CN 112988532B
- Authority
- CN
- China
- Prior art keywords
- page
- point
- buried point
- buried
- embedded
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Document Processing Apparatus (AREA)
Abstract
本申请实施例公开了一种埋点事件的上报方法、装置、服务器及存储介质,属于埋点技术领域。方法包括:响应于对埋点页面中第一页面元素的触发操作,获取第一页面元素的第一元素特征信息;响应于埋点页面的埋点配置中不包含第一页面元素,基于第一元素特征信息从埋点配置中确定第二页面元素,埋点配置包括埋点页面元素与埋点事件的对应关系,第二页面元素的第二元素特征信息与第一元素特征信息满足相似条件;从埋点配置中获取第二页面元素对应的埋点事件,并向埋点平台上报埋点事件。本申请实施例中,埋点页面元素的位置发生微调时,能够基于页面元素的元素特征信息识别出埋点页面元素,提高了埋点页面元素识别的容错空间以及埋点事件上报准确率。
Description
技术领域
本申请实施例涉及埋点技术领域,特别涉及一种埋点事件的上报方法、装置、服务器及存储介质。
背景技术
埋点是一种收集用户操作页面中特定元素时产生的数据,从而通过对数据进行分析确定页面功能使用情况的技术。常用的埋点方式包括代码埋点、可视化埋点和全埋点。
相较于代码埋点和全埋点,可视化埋点具有埋点设置过程可视化以及埋点更新流程简单等优势,因此得到了广泛应用。进行可视化埋点时,业务人员只需要通过埋点平台打开待埋点页面,框选页面中需要设置埋点的页面元素,并为框选的页面元素设置埋点事件即可。完成埋点后,当用户点击页面上的页面元素时,若该页面元素的元素坐标与埋点页面元素的元素坐标一致,则触发向埋点平台上报埋点事件。
然而,基于元素坐标实现埋点事件上报时,若页面结构经过微调或者页面元素位置发生微调,则原先设置的埋点事件将无法触发,影响埋点事件上报的准确率。
发明内容
本申请实施例提供了一种埋点事件的上报方法、装置、服务器及存储介质,在页面结构经过微调或页面元素位置发生微调的情况下,也能保证预设埋点事件的正常触发,有助于提高埋点事件上报的准确率,该技术方案如下:
一方面,本申请实施例提供了一种埋点事件的上报方法,所述方法包括:
响应于对埋点页面中第一页面元素的触发操作,获取所述第一页面元素的第一元素特征信息,其中,同一页面中不同页面元素对应不同元素特征信息;
响应于所述埋点页面的埋点配置中不包含所述第一页面元素,基于所述第一元素特征信息从所述埋点配置中确定第二页面元素,所述埋点配置包括埋点页面元素与埋点事件的对应关系,所述第二页面元素的第二元素特征信息与所述第一元素特征信息满足相似条件;
从所述埋点配置中获取所述第二页面元素对应的埋点事件,并向埋点平台上报所述埋点事件。
另一方面,本申请实施例提供了一种埋点事件的上报装置,所述装置包括:
获取模块,用于响应于对埋点页面中第一页面元素的触发操作,获取所述第一页面元素的第一元素特征信息,其中,同一页面中不同页面元素对应不同元素特征信息;
确定模块,用于响应于所述埋点页面的埋点配置中不包含所述第一页面元素,基于所述第一元素特征信息从所述埋点配置中确定第二页面元素,所述埋点配置包括埋点页面元素与埋点事件的对应关系,所述第二页面元素的第二元素特征信息与所述第一元素特征信息满足相似条件;
第一上报模块,用于从所述埋点配置中获取所述第二页面元素对应的埋点事件,并向埋点平台上报所述埋点事件。
另一方面,本申请实施例提供了一种服务器,所述服务器包含处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上述方面所述的埋点事件的上报方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上述方面所述的埋点事件的上报方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。服务器的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该服务器执行上述方面的各种可选实现方式中提供的埋点事件的上报方法。
本申请提供的技术方案可以包括以下有益效果:
采用本申请实施例提供的方案,当接收到对埋点页面中第一页面元素的触发操作时,若埋点配置中不包含第一页面元素,则进一步基于第一页面元素的元素特征信息,从埋点配置中确定出与第一页面元素满足相似条件的第二页面元素,从而对第二页面元素对应的埋点事件进行上报;不同于相关技术中基于埋点页面元素的元素坐标实现埋点事件上报,本申请实施例中,即便埋点页面元素的位置发生微调(即埋点页面元素的元素坐标发生变化),也能够基于页面元素的元素特征信息识别出埋点页面元素,并进行埋点事件上报,提高了埋点页面元素识别的容错空间,进而提高了埋点事件上报的准确率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1示出了本申请一个示例性实施例提供的实施环境的示意图;
图2示出了本申请一个示例性实施例示出的埋点事件的上报方法的流程图;
图3是本申请一个示例性实施例示出的埋点页面的界面示意图;
图4示出了本申请另一个示例性实施例示出的埋点事件的上报方法的流程图;
图5是本申请一个示例性实施例示出的元素特征值确定过程的实施示意图;
图6是本申请一个示例性实施例示出的系统架构的示意图;
图7示出了本申请一个示例性实施例提供的埋点事件设置过程的流程图;
图8是本申请一个示例性实施例示出的埋点事件设置过程的界面示意图;
图9示出了本申请另一个示例性实施例提供的埋点事件设置过程的流程图;
图10是本申请另一个示例性实施例示出的埋点事件设置过程的界面示意图;
图11是本申请一个示例性实施例示出的埋点平台进行模型训练以及利用模型确定元素特征值过程的实施示意图;
图12是本申请一个示例性实施例示出的埋点事件设置过程的交互时序图;
图13示出了本申请一个示例性实施例示出的埋点事件的上报装置的结构方框图;
图14示出了本申请一个示例性实施例提供的服务器的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
本申请实施例提供的埋点事件的上报方法即机器学习在埋点技术领域的应用。相关技术中,采用可视化埋点方式设置埋点时,服务器基于元素坐标定位识别埋点页面元素,然而,当埋点页面元素的在页面中的位置发生微调时,由于埋点页面元素的元素坐标发生改变,因此在无人为干预的情况下,基于原始的元素坐标将无法准备识别埋点页面元素,导致埋点事件无法上报,进而影响埋点数据的统计准确性。
而采用本申请实施例提供的方案,基于元素特征信息识别埋点页面中的埋点页面元素,即使埋点页面元素在页面中的位置发生微调,服务器也能够基于元素特征信息,通过机器学习方式识别出位置微调后的埋点页面元素(因为虽然位置发生微调,但是页面元素的特征还是保持高度相似性),从而完成埋点事件上报。并且,在进行可视化埋点过程中,服务器也能够基于元素特征信息以及用户设置的埋点页面元素,对关联页面元素进行推荐,提高可视化埋点的埋点全面性;同时,服务器能够基于元素特征信息和埋点页面的埋点配置,提示用户为埋点页面中发生微调的埋点页面元素进行埋点事件迁移,提高可视化埋点时埋点调整的效率。
本申请实施例提供的埋点事件的上报方法,适用于应用程序、网页或系统等需要对用户操作数据进行统计的应用场景。
当应用于应用程序时,可以采用本申请实施例提供的方法,为应用程序中的页面或应用功能设置埋点事件,当用户通过操作切换页面或者使用应用功能时,即可向埋点平台上报对应的埋点事件,以便埋点平台对埋点事件进行统计,为应用程序的开发方向提供依据。
当应用于网页时,可以采用本申请实施例提供的方法,为网页中的按钮、超链接、表格、图片等网页页面元素设置埋点事件,当用户对网页上的网页页面元素进行操作时,即触发向埋点平台上报埋点事件,以便埋点平台基于埋点事件分析各个网页页面元素的点击率,为网页页面元素的布局方式提供依据。
当应用于系统时,可以采用本申请实施例提供的方法,为系统中的功能模块设置埋点事件,当用户使用系统中特定的功能模块时,即将用户信息以及触发的埋点事件上报至埋点平台,以便埋点平台基于上报的数据分析不同用户常用的系统功能,为系统功能模块的开发以及功能权限设置提供依据。
需要说明的是,本申请实施例仅以上述几种可能的应用场景为例进行示意性说明,本申请实施例提供的方法还可以用于其他具有可视化埋点以及埋点事件上报需求的应用场景,本实施例对此并不构成限定。
由于本申请实施例提供的方法通过机器学习方式识别埋点页面元素,因此将本申请实施例提供的方法应用于网页等页面结构或者页面元素位置调整频率较高的对象时,能够明显提高埋点事件上报的准确率。下面以埋点事件的上报方法应用于网页为例进行说明。
请参考图1,其示出了本申请一个示例性实施例提供的实施环境的示意图,该实施环境中包括网站服务器110以及埋点服务器120。
网站服务器110是埋点网页对应的后台服务器,埋点网页即设置有埋点事件,并进行埋点事件上报的网页。本申请实施例中,埋点服务器120用于为埋点网页提供埋点事件设置以及埋点事件上报服务。
网站服务器110通过有线或无线网络与埋点服务器120相连。
埋点服务器120是用于提供埋点服务的埋点平台的后台服务器。其中,该埋点服务包括埋点事件设置以及埋点事件上报服务,且埋点平台提供的埋点服务为可视化埋点服务,即可以通过可视化界面在网页中设置埋点。埋点服务器120可以是一台服务器,若干台服务器构成的服务器集群或云计算中心。
在一种可能的场景下,如图1所示,当网站服务器110需要对网页上的用户操作行为进行统计时,网站服务器110首先通过埋点平台,向埋点服务器120申请获取埋点服务。申请通过后,埋点服务器120向网站服务器110提供埋点服务软件开发工具包(SoftwareDevelopment Kit,SDK),网站服务器110即将埋点服务SDK嵌入自身系统中,从而通过埋点服务SDK接入埋点平台。
完成埋点平台接入后,业务人员可以通过埋点平台访问待埋点的网页,并通过埋点平台提供的埋点服务,通过可视化方式为网页中为特定的网页元素设置埋点事件。完成埋点设置后,埋点配置即存储在埋点服务SDK中。
当用户使用终端130访问网站服务器110中的埋点网页,并触发网页页面元素时,网站服务器110中的埋点服务SDK检测该网页页面元素是否属于埋点配置,若不属于埋点配置,为了进一步确定该网页页面元素是否为位置微调后的埋点页面元素,埋点服务SDK进一步基于该网页页面元素的元素特征信息,以及埋点配置中其他埋点页面元素的元素特征信息,通过机器学习方式查找与该网页页面元素满足相似条件的埋点页面元素。若查找到满足相似条件的埋点页面元素,埋点服务SDK确定用户触发的网页页面元素为位置偏移后的埋点页面元素,从而向埋点服务器120上报埋点页面元素对应的埋点事件。
可选的,业务人员可以通过访问埋点平台,查询埋点网页对应的历史埋点事件上报结果,从而得到埋点网页上的用户操作行为的统计结果。
显然,在网页中埋点页面元素的位置发生微调的情况下,即便未进行人为干预(即人为触发更新埋点配置中的埋点页面元素),埋点服务SDK也能识别出对位置调整后埋点页面元素的触发操作,进而进行埋点事件上报。相较于基于元素坐标触发埋点事件上报,采用本申请实施例提供的方案能够显著提高埋点事件上报的准确率。
请参考图2,其示出了本申请一个示例性实施例示出的埋点事件的上报方法的流程图,本申请实施例以该方法应用于图1所示的网站服务器为例进行说明,该方法包括:
步骤201,响应于对埋点页面中第一页面元素的触发操作,获取第一页面元素的第一元素特征信息,其中,同一页面中不同页面元素对应不同元素特征信息。
其中,埋点页面为经过埋点设置的页面,该页面可以为网页页面、应用程序页面或者系统页面等等,本实施例对此不作限定。为了方便表述,下述各个实施例以埋点页面为网页页面为例进行说明。
当埋点页面为网页页面时,其中包含的页面元素可以为超链接、按钮、表单图片等等,本申请实施例并不对埋点页面中页面元素的具体类型进行限定。
相关技术中,对于经过埋点设置的埋点页面,当接收到对埋点页面中页面元素的触发操作时,服务器获取页面元素对应的元素坐标,从而基于该元素坐标确定该页面元素是否为埋点页面元素。其中,当页面元素的元素坐标与埋点页面元素的元素坐标相同时,确定该页面元素为埋点页面元素。
然而,当埋点页面中埋点页面元素的位置发生微调后,若未人为对埋点页面元素的元素坐标进行更新,位置微调后的埋点页面元素将无法触发埋点事件上报。
本申请实施例中,为了在埋点页面元素的位置发生微调,且无人为干预的情况下,也能够触发埋点事件的正常上报,当接收到对埋点页面中页面元素的触发操作时,服务器获取页面元素的元素特征信息。
其中,元素特征信息用于从多个维度表征页面元素的元素特点,因此同一页面中不同页面元素对应的元素特征信息不完全相同(部分相同或完全不同)。
可选的,该元素特征信息中包含元素类型(比如超链接、按钮、表单等等)、元素属性(比如元素尺寸、元素包含的字符串等等)以及元素位置(比如在页面中的绝对位置坐标或者相对位置坐标)。当然,除了上述几种维度的信息外,其他可以用于表征页面元素特点的信息(或用于区分不同页面元素的信息)都可以作为元素特征信息,本实施例对此并不进行限定。
在一个示意性的例子中,如图3所示,当接收到对网页31中按钮32的点击操作时,服务器从网页31的HTML文件中获取该按钮32的元素特征信息包括:元素类型“button”、按钮颜色“浅蓝色”、按钮文字“注册”、按钮尺寸“100px×50px”以及按钮坐标“(50px,1200px)”。
步骤202,响应于埋点页面的埋点配置中不包含第一页面元素,基于第一元素特征信息从埋点配置中确定第二页面元素,埋点配置包括埋点页面元素与埋点事件的对应关系,第二页面元素的第二元素特征信息与第一元素特征信息满足相似条件。
对于经过埋点设置的埋点页面,服务器存储有该埋点页面对应的埋点配置。可选的,该埋点配置存储在服务器的埋点服务SDK中,该埋点服务SDK由埋点平台提供。
本申请实施例中,埋点配置中包含埋点元素特征信息与埋点事件之间的对应关系,相应的,服务器检测埋点配置中是否包含第一元素特征信息。若包含,则确定该第一页面元素为埋点页面元素,并向埋点平台上报埋点配置中第一页面元素对应埋点事件。若不包含,则进一步确定埋点配置中是否包含与第一页面元素满足相似条件的第二页面元素。
在一种可能的实施方式中,当埋点配置中存在与第一元素特征信息相同的埋点元素特征信息时,服务器确定埋点配置中包含第一页面元素;当埋点配置中不存在与第一元素特征信息相同的埋点元素特征信息时,服务器确定埋点配置中不包含第一页面元素。
当埋点配置中不包含第一页面元素时,该第一页面元素可能并非预先设置的埋点页面元素,或者,第一页面元素可能是经过微调(比如位置微调、属性微调)的埋点页面元素。为了进一步确定第一页面元素是否为经过微调的埋点页面元素,服务器进一步基于第一元素特征信息确定埋点配置中是否存在满足相似条件的第二页面元素。若存在,则确定第一页面元素是经过微调的埋点页面元素,若不存在,则确定第一页面元素并非埋点页面元素。
可选的,服务器确定第一元素特征信息与埋点元素特征信息之间的特征相似度,当特征相似度大于相似度阈值时,确定满足相似条件。其中,服务器可以采用深度学习方式确定元素特征信息间的特征相似度,或者,服务器可以采用协同过滤或线性回归的方式确定元素特征信息间的特征相似度,本实施例对此不作限定。
示意性的,如图3所示,当埋点配置中不包含用户点击的按钮32时,服务器基于该按钮32的元素特征信息,由于埋点配置中注册按钮33(虚线表示的按钮)对应的元素特征信息元素类型“button”、按钮颜色“浅蓝色”、按钮文字“注册”、按钮尺寸“110px×60px”以及按钮坐标“(100px,1200px)”满足相似条件,因此服务器确定用户点击的按钮32为经过尺寸以及位置微调的注册按钮33。
步骤203,从埋点配置中获取第二页面元素对应的埋点事件,并向埋点平台上报埋点事件。
从埋点配置中确定第二页面元素后,服务器进一步获取第二页面元素对应的埋点事件,并向埋点平台上报该埋点事件。如图3所示,服务器将注册按钮33对应的埋点事件上报至埋点平台。
显然,若采用相关技术中基于元素绝对坐标识别埋点页面元素,当用户点击图3中的按钮32将无法触发上报埋点事件,而采用本申请实施例提供的方案后,服务器能够识别出按钮32为经过微调的注册按钮33,进而上报埋点事件,提高了埋点事件上报的准确性。
综上所述,采用本申请实施例提供的方案,当接收到对埋点页面中第一页面元素的触发操作时,若埋点配置中不包含第一页面元素,则进一步基于第一页面元素的元素特征信息,从埋点配置中确定出与第一页面元素满足相似条件的第二页面元素,从而对第二页面元素对应的埋点事件进行上报;不同于相关技术中基于埋点页面元素的元素坐标实现埋点事件上报,本申请实施例中,即便埋点页面元素的位置发生微调(即埋点页面元素的元素坐标发生变化),也能够基于页面元素的元素特征信息识别出埋点页面元素,并进行埋点事件上报,提高了埋点页面元素识别的容错空间,进而提高了埋点事件上报的准确率。
在一种可能的实施方式中,服务器可以采用深度学习方式,基于元素特征信息确定页面元素对应的元素特征值,从而基于元素特征值进行埋点页面元素识别以及相似页面元素匹配。下面采用示例性的实施例进行说明。
请参考图4,其示出了本申请另一个示例性实施例示出的埋点事件的上报方法的流程图,本申请实施例以该方法应用于图1所示的网站服务器为例进行说明,该方法包括:
步骤401,响应于对埋点页面中第一页面元素的触发操作,获取第一页面元素的第一元素特征信息。
本步骤的实施方式可以参考上述步骤201,本实施例在此不再赘述。
步骤402,基于第一元素特征信息确定第一页面元素的第一元素特征值。
在一种可能的实施方式中,服务器在本地设置有基于机器学习训练得到的神经网络模型(可以设置在埋点功能SDK中),从而在本地通过神经网络模型确定元素特征值。或者,服务器通过向埋点平台发送(可以通过埋点功能SDK发送)请求,请求埋点平台反馈元素特征值(埋点平台通过神经网络模型确定元素特征值)。
以服务器通过本地的神经网络模型确定元素特征值为例,本步骤可以包括如下步骤。
一、响应于第一页面元素由单一页面子元素构成,将第一元素特征信息输入元素识别模型,得到元素识别模型输出的第一元素特征值。
在一种可能的实施方式中,针对不同类型的页面元素,埋点平台预先训练有对应的元素识别模型,该元素识别模型可以是卷积神经网路(Convolutional NeuralNetworks,CNN)模型或深度神经网络(Deep Neural Networks,DNN)模型,且元素识别模型的输入为页面元素的元素特征信息,输出为页面元素的元素特征值。埋点平台将训练得到的元素识别模型下发给服务器,由服务器对元素识别模型进行存储。
以网页页面为例,埋点平台基于网页页面中标签的标签类型,训练得到a标签识别模型、div标签识别模型、button标签识别模型、span标签识别模型、ul标签识别模型、li标签识别模型、svg标签识别模型、canvas标签识别模型、img标签识别模型、form标签识别模型、i标签识别模型等等。
可选的,接服务器对页面元素的元素特征信息进行数值化处理(比如可以通过词袋模型对元素特征信息进行数值化),并确定页面元素对应的元素识别模型,从而将数值化后的元素特征信息输入元素识别模型,得到模型输出的元素特征值。其中,同一页面中不同页面元素对应不同的元素特征值。
当第一页面元素由单一页面子元素构成时,第一元素特征信息中仅包含该页面子元素的子元素特征信息,因此服务器将第一元素特征信息输入元素识别模型后即可得到第一页面元素的第一元素特征值。
二、响应于第一页面元素由至少两个页面子元素构成,将第一元素特征信息中各个页面子元素的子元素特征信息输入元素识别模型,得到各个页面子元素的子元素特征值。
在实际页面中,页面元素中可能并非由单一页面子元素构成,而是由若干页面子元素组合构成,对于由若干页面子元素组合构成的页面元素,页面元素对应的元素特征值不仅与页面子元素各自对应的元素特征值相关,还与页面子元素之间的组合关系相关。因此,当第一页面元素由至少两个页面子元素构成时,服务器首先需要通过元素识别模型确定各个页面子元素对应的子元素特征值,然后基于各个子元素特征值以及页面子元素之间的组合关系,进一步确定第一页面元素的第一元素特征值。
在一个示意性的例子中,如图5所示,第一页面元素由A、B、C、D四个页面子元素构成,当接收到对第一页面元素的触发操作时,服务器获取页面子元素A对应的第一元素识别模型、页面子元素B对应的第二元素识别模型、页面子元素C对应的第三元素识别模型以及页面子元素D对应的第四元素识别模型,分别将页面子元素的子元素特征信息输入元素识别模型,得到页面子元素A的第一元素子特征值、页面子元素B的第二元素子特征值、页面子元素C的第三元素子特征值、页面子元素D的第四元素子特征值。
三、基于各个页面子元素之间的组合关系,确定目标元素嵌套组合模型,组合关系包括垂直嵌套组合和水平嵌套组合中的至少一种,且不同组合关系对应不同元素嵌套组合模型。
通常情况下,页面子元素之间的组合关系包括垂直嵌套组合和水平嵌套组合,因此埋点平台基于上述组合关系,预先训练元素垂直嵌套组合模型和元素水平嵌套组合模型。
确定出各个页面子元素的元素子特征值后,服务器基于页面子元素之间的组合关系,确定对应的目标元素嵌套组合模型。
示意性的,如图5所示,页面子元素A与页面子元素B之间垂直嵌套组合,页面子元素C与页面子元素D之间垂直嵌套组合,因此服务器将元素垂直嵌套组合模型确定为目标元素嵌套组合模型;由页面子元素A和页面子元素B嵌套组合形成的页面子元素与由页面子元素C和页面子元素D嵌套组合形成的页面子元素之间水平嵌套组合,因此服务器将元素水平嵌套组合模型确定为目标元素嵌套组合模型。
四、将子元素特征值输入目标元素嵌套组合模型,得到目标元素嵌套组合模型输出的第一元素特征值。
进一步的,服务器将页面子元素的子元素特征值作为目标元素嵌套组合模型的输入,得到嵌套后页面子元素的元素特征值,并最终得到第一页面元素的第一元素特征值。
示意性的,如图5所示,服务器将第一元素子特征值和第二元素子特征值输入元素垂直嵌套组合模型,得到页面子元素A与页面子元素B垂直嵌套组合得到组合元素的第一组合元素特征值;将第三元素子特征值和第四元素子特征值输入元素垂直嵌套组合模型,得到页面子元素C与页面子元素D垂直嵌套组合得到组合元素的第二组合元素特征值。进一步的,服务器将第一组合元素特征值和第二组合元素特征值输入元素水平嵌套组合模型,得到第一页面元素的第一元素特征值。
需要说明的是,上述实施例仅以页面元素由多个页面子元素通过垂直嵌套、水平嵌套组合而成,在实际应用中,页面元素可以仅经过垂直嵌套组合,或者仅经过水平嵌套组合,本实施例对此并不构成限定。
以服务器通过埋点平台确定元素特征值为例,本步骤可以包括如下步骤。
一、基于第一元素特征信息向埋点平台发送特征值获取请求,埋点平台用于基于第一元素特征信息确定第一元素特征值。
在一种可能的实施方式中,埋点平台中设置有元素识别模型以及元素嵌套组合模型,服务器接收到对第一页面元素的触发操作后,将第一页面元素的第一元素特征信息发送至埋点平台,请求埋点平台通过元素识别模型以及元素嵌套组合模型,确定第一页面元素的第一元素特征值。其中,埋点平台确定元素特征值的方式可以参考上述步骤,本实施例在此不再赘述。
二、接收埋点平台反馈的第一元素特征值。
进一步的,服务器接收埋点平台反馈的第一元素特征值。通过埋点平台确定元素特征值,服务器侧无需存储运行元素识别模型以及元素嵌套组合模型,同时避免将模型分发至服务器造成的模型参数泄露。
步骤403,响应于第一元素特征值与埋点配置中各个埋点页面元素对应的元素特征值均不相同,确定埋点配置中不包含第一页面元素。
本实施例中,埋点配置中包含埋点页面元素对应的埋点元素特征值以及埋点事件。在确定埋点配置中是否包含第一页面元素时,服务器即将埋点配置中各个埋点页面元素对应的埋点元素特征值与第一元素特征值进行比对。若存在与第一元素特征值相同的埋点元素特征值,则确定第一页面元素为埋点页面元素;若不存在与第一元素特征值相同的埋点元素特征值,则确定埋点配置中不包含第一页面元素。
在一个示意性的例子中,埋点页面的埋点配置如表一所示。
表一
埋点页面元素 | 埋点元素特征值 | 埋点事件 |
A | 1.368 | 事件1 |
B | 4.519 | 事件2 |
C | 9.134 | 事件3 |
D | 2.562 | 事件4 |
E | 6.100 | 事件5 |
当第一页面元素的第一元素特征值为1.380时,服务器确定埋点配置中不包含第一页面元素。
步骤404,确定各个埋点页面元素对应的元素特征值与第一元素特征值之间的特征相似度。
当第一页面元素并非埋点页面元素时,第一页面元素与埋点页面元素的特征差异较大,而当第二页面元素为微调后的埋点页面元素时,第一页面元素与原始埋点页面元素的特征差异极小。因此为了进一步确定第一页面元素是否为发生微调的埋点页面元素,在一种可能的实施方式中,服务器计算第一元素特征值与各个埋点页面元素对应元素特征值之间的特征相似度。
可选的,该特征相似度可以为第一元素特征值与埋点元素特征值的特征值比值(小于1)。
结合上述步骤中的示例,服务器计算得到第一页面元素与埋点页面元素A的特征相似度为99.13%、与埋点页面元素B的特征相似度为30.54%、与埋点页面元素C的特征相似度为15.11%、与埋点页面元素D的特征相似度为53.86%、与埋点页面元素E的特征相似度为22.62%。
步骤405,响应于存在特征相似度大于相似度阈值的埋点页面元素,将最大特征相似度阈值对应的埋点页面元素确定为第二页面元素。
当特征相似度小于相似度阈值时,表明第一页面元素不属于埋点页面元素,无需进行埋点事件上报;而当特征相似度大于相似度阈值时,表明第一页面元素为发生微调(元素属性或元素位置发生微调)的埋点页面元素。其中,当存在至少两个特征相似度大于相似度阈值的埋点页面元素时,服务器将最大特征相似度阈值对应的埋点页面元素确定为第二页面元素(即第一页面元素微调前的埋点页面元素)。
其中,该相似度阈值可以为85%、90%、98%等等,本实施例对此不作限定。
结合上述步骤中的示例,由于埋点页面元素A与第一页面元素的特征相似度大于相似度阈值98%,因此服务器将埋点页面元素A确定为第二页面元素。
步骤406,从埋点配置中获取第二页面元素对应的埋点事件,并向埋点平台上报埋点事件。
本步骤的实施方式可以参考上述步骤203,本实施例在此不再赘述。
本实施例中,通过训练基于元素特征信息确定元素特征值的神经网络模型,并利用神经网络模型确定用户触发的页面元素以及埋点页面元素的元素特征值,从而基于元素特征值确定用户触发的页面元素是否为发生微调的埋点页面元素,提高了微调后埋点页面元素的识别效率以及识别准确性。
此外,通过训练元素嵌套组合模型,提高多层嵌套页面元素对应元素特征值的准确性,进一步提高了埋点页面元素的识别效率以及识别准确性。
在上述实施例中,当由服务器通过本地存储的模型确定页面元素的元素特征值时,为了提高确定出的元素特征值的准确性,进而提高埋点事件上报的准确性,在一种可能的实施方式中,埋点平台会对模型进行更新训练,并将更新后的模型下发至对应的服务器,以便服务器进行模型更新。
可选的,服务器接收埋点平台下发的模型(比如埋点平台按照预设时间间隔对模型进行更新训练),该模型用于基于元素特征信息确定页面元素的元素特征值,并基于模型进行本地模型更新。并且,由于埋点配置中埋点页面元素对应的元素特征值是采用未更新前的模型确定得到,因此为了避免仅更新模型导致后续识别异常,服务器通过更新后的模型,更新埋点配置中各个埋点页面元素对应的元素特征值。
其中,埋点平台下发的模型包括元素识别模型以及元素嵌套组合模型。并且,埋点配置中还可以包括埋点页面元素对应的元素特征信息,以便服务器将埋点页面元素对应的元素特征信息输入更新后的模型,得到更新后的埋点元素特征值。
在一个示意性的例子中,实现埋点事件下发的系统架构如图6所示。该系统结构中包括SDK 61、数据中间件62以及基础服务层63。
SDK 61是接入埋点平台时服务器嵌入的埋点服务SDK。SDK 61包含的元素定位器611以及元素纠正模块612用于查找埋点也买你元素,并对埋点页面元素进行纠正,自动识别发生位置偏移的元素;网络适配器613和配置分发器614用于动态下发埋点配置、神经网络模型以及上报埋点事件;缓存适配器615和机型兼容适配器616则用于去除不同运行平台的差异性,实现多平台识别以及数据存储的高兼容性。
数据中间件62是埋点平台实现可视化埋点以及埋点事件上报的核心组件。数据中间件62中的访问人员识别模块621用于识别用户身份,从而将用户身份与上报的埋点事件相关联,用于后续不同用户操作行为的分析(比如构建用户画像);数据存储模块622用于存储接收到的埋点事件,并存储至数据仓库进行数据聚合分析;数据队列623前置与数据存储模块622,用于减轻高并发情况下海量数据涌入对数据存储模块622造成的冲击,保证系统的高可用性;模型训练模块624用于基于海量埋点数据进行元素识别模型以及元素嵌套组合模型训练;模型分发模块625则用于将训练得到的模型分发至各个服务器,以便服务器根据接收到模型对SDK 61中的模型进行更新。
基础服务层63用于为可视化埋点提供底层支持,包括数据存储支持、日志记录支持等等。如图6所示,数据存储支持由REDIS缓存服务631、KAFKA消息队列632、分布式定时任务调度服务633、ES集群服务635以及Spark/Hive 636提供;日志记录支持则由日志分析服务634提供。
上述实施例对埋点设置完成后埋点事件的上报过程进行了详细说明,下面采用实施例对埋点事件的设置过程进行说明。
请参考图7,其示出了本申请一个示例性实施例提供的埋点事件设置过程的流程图,该方法包括:
步骤701,响应于对埋点页面中目标页面元素的埋点操作,获取目标页面元素的目标元素特征信息。
在一种可能的实施方式中,当需要对页面进行埋点设置时,业务人员访问埋点平台并在埋点功能下输入埋点页面的链接,即可开始埋点设置。
在一些实施例中,埋点设置过程中,业务人员可以根据需求,通过框选等方式选择埋点页面中待埋点的目标页面元素,并为目标页面元素设置埋点事件。相应的,当接收到对目标页面元素的框选操作,且接收到对事件设置操作,服务器确定接收到对目标页面元素的埋点操作。
示意性的,如图8所示,当接收到对第一查看控件81的选择操作时,埋点页面显示事件设置弹窗82,提示用户为第一查看控件81设置埋点事件的事件名称。完成事件名称设置后,埋点信息栏83中显示对应的埋点事件。
通常情况下,页面中除了包含静态页面元素外,还包含动态生成的页面元素。比如,网页页面中除了包含按钮、超链接、图片等静态页面元素外,还包含动态生成的列表。并且,同一页面中不同动态页面元素之间通常用于实现相同或者相似的功能。比如,如图8所示,动态生成的列表中不同数据行对应一个查看控件均用于实现查看功能。
为了提高用户的埋点设置效率,为目标页面元素设置埋点事件时,服务器获取目标页面元素的目标元素特征信息,以便后续基于目标元素特征信息识别埋点页面中与目标页面元素具有相同或相似功能的其他页面元素。
步骤702,基于目标元素特征信息,确定埋点页面中目标页面元素对应的关联页面元素,目标元素特征值与关联页面元素的元素特征信息满足相似条件。
在一种可能的实施方式中,在进行埋点设置前,服务器获取埋点页面中各个页面元素的元素特征信息;在确定是否存在与目标页面元素相似的其他页面元素时,服务器即确定是否存在与目标元素特征信息满足相似条件的元素特征信息。
可选的,服务器可以采用协同过滤或者线性回归方式确定满足相似条件的元素特征信息,或者,服务器也可以基于元素特征信息确定元素特征值,从而基于元素特征值之间的特征相似度确定出满足相似条件的元素特征信息(可以参考上述实施例),本实施例对此不作限定。
示意性的,如图8所示,服务器基于元素特征信息,将第二查看控件84确定为第一查看控件81对应的关联页面元素。
步骤703,将埋点页面中的关联页面元素突出显示。
为了提醒用户为关联页面元素设置埋点事件,服务器将埋点页面中的关联页面元素突出显示,其中,突出显示方式可以包括高亮显示、框选显示、蒙层显示等等,本实施例对此不作限定。
示意性的,如图8所示,识别出的第二查看控件84被虚线框框选,提示第二查看控件与第一查看控件关联。
步骤704,响应于对关联页面元素的选择操作,为关联页面元素设置与目标页面元素相同的埋点事件。
进一步的,业务人员可以根据实际需求确定是否选择关联页面元素。若接收到对关联页面元素的选择操作,服务器则为关联页面元素设置与目标页面元素相同的埋点事件,即同一埋点事件对应多个页面元素。
示意性的,如图8所示,当接收到对第二查看控件84的选择操作时,服务器将第一查看控件81以及第二查看控件84的埋点事件均设置为“查看事件”。
由于将多个关联的页面元素与同一埋点事件进行绑定,因此后续接收到对其中任一页面元素的触发操作均可正常上报埋点事件。并且,当关联页面元素为动态生成的页面元素时,由于埋点配置中除了包含目标页面元素对应的元素特征信息外,还包含关联页面元素对应的元素特征信息,因此即便后续动态生成更多页面元素(比如实际应用中列表中包含10个查看控件),服务器也能够基于元素特征信息准确识别出对该页面元素的触发操作,提高了动态页面元素对应埋点事件上报的准确性。
步骤705,向埋点平台上报目标页面元素以及关联页面元素的元素特征信息,埋点平台用于基于目标页面元素以及关联页面元素的元素特征信息进行模型训练,其中,训练的模型用于基于元素特征信息确定页面元素的元素特征值。
可选的,当服务器基于元素特征值识别相似的页面元素时,为了进一步提高确定出的元素特征值的准确性,当接收到对关联页面元素的选择操作时,服务器将目标页面元素以及关联页面元素的元素特征信息作为训练样本(正样本),上报至埋点平台,由埋点平台根据目标页面元素以及关联页面元素的元素特征信息对模型进行更新训练,并将更新后的模型下发至对应的服务器。
其中,埋点平台以关联页面元素的元素特征值趋近于目标页面元素为训练目标进行模型训练。
在其他可能的实施方式中,若未接收到对关联页面元素的选择操作,服务器也可以将目标页面元素以及关联页面元素的元素特征信息作为训练样本(负样本),上报至埋点平台,为模型训练提供数据基础,本实施例对此不作限定。
本实施例中,在为目标页面元素设置埋点事件过程中,基于目标页面元素的目标元素特征信息,确定埋点页面中与目标页面元素相似的关联页面元素,并对关联页面元素进行突出显示,以便业务任务为关联页面元素设置与目标页面元素相同的埋点事件,一方面提高了埋点设置的效率以及全面性,另一方面有助于提高动态页面元素对应埋点事件的上报准确率。
此外,服务器通过向埋点平台上报对关联页面元素的选择情况,为埋点平台后续模型更新训练提供数据基础,提高了模型质量,进而提高了关联页面元素的识别准确率。
对于已经经过埋点设置的埋点页面,开发人员可以在埋点页面的页面结构发生调整后重新进行埋点设置。为了提高重新埋点设置的效率,服务器可以基于原始的埋点配置,沿用未发生微调的埋点页面元素,并更新发生微调的埋点页面元素。如图9所示,上述步骤701之前还可以包括如下步骤。
步骤901,基于埋点页面的埋点配置以及埋点页面中各个页面元素的元素特征信息,确定埋点配置中的偏移页面元素,偏移页面元素的偏移元素特征信息不同于埋点页面中各个页面元素的元素特征信息。
在一种可能的实施方式中,进行埋点配置时,服务器检测埋点页面是否包含对应的埋点配置,若包含,则获取埋点配置中各个埋点页面元素对应的元素特征信息,并获取当前埋点页面中各个页面元素的元素特征信息。
进一步的,服务器通过比对埋点配置以及埋点页面中各个页面元素的元素特征信息,确定埋点配置中的偏移页面元素以及未偏移页面元素。其中,该偏移指示元素属性偏移或者位置偏移中的至少一种。
可选的,若埋点页面元素与埋点页面中页面元素的元素特征信息一致,服务器则确定该埋点页面元素为未偏移页面元素;若埋点页面元素与埋点页面中任意页面元素的元素特征信息均不同,服务器则确定该埋点页面元素为偏移页面元素,或者,服务器可以基于元素特征信息确定元素特征值,从而基于元素特征值确定出偏移页面元素,本实施例对此不作限定。
在一些实施例中,服务器在埋点页面中标记出未偏移页面元素。示意性的,如图10所示,服务器识别出埋点配置中的导航按钮1001、登录按钮1002以及注册按钮1003为未偏移页面元素,从而在埋点页面中对上述按钮进行框选显示,并在埋点信息栏1004中显示上述按钮对应的埋点事件。
步骤902,基于偏移元素特征信息,从埋点页面中确定纠正页面元素,纠正页面元素的元素特征信息与偏移元素特征信息满足相似条件。
进一步的,服务器基于偏移页面元素的偏移元素特征信息,确定埋点页面中是否存在偏移后的纠正页面元素。其中,纠正页面元素为位置微调或者属性微调后的偏移页面元素。
在一种可能的实施方式中,服务器可以采用协同过滤或者线性回归方式确定满足相似条件的纠正页面元素,或者,服务器也可以基于元素特征信息确定元素特征值,从而基于元素特征值之间的特征相似度确定出满足相似条件的纠正页面(可以参考上述实施例),本实施例对此不作限定。
示意性的,如10所示,服务器基于偏移页面元素的偏移元素特征信息,确定偏移页面元素的偏移元素特征值,并计算该偏移元素特征值与埋点配置中各个埋点页面元素对应埋点元素特征值之间的特征相似度,从而将推送按钮1005确定为纠正页面元素。
步骤903,将埋点页面中的纠正页面元素突出显示。
为了提醒用户原先设置的埋点页面元素发生微调,服务器将埋点页面中的纠正页面元素突出显示,其中,突出显示方式可以包括高亮显示、框选显示、蒙层显示等等,本实施例对此不作限定。
示意性的,如图10所示,识别出的推送按钮1005上层显示蒙层,以此提示用户确定该推送按钮1005是否为经过微调埋点页面元素。
步骤904,响应于对纠正页面元素的选择操作,将偏移页面元素对应的埋点事件迁移至纠正页面元素。
进一步的,业务人员可以根据实际需求确定是否选择该纠正页面元素。若接收到对纠正页面元素的选择操作,服务器则纠正页面元素是偏移页面元素经过微调得到,从而将偏移页面元素对应的埋点事件迁移至纠正页面元素,免去业务人员重新设置埋点事件。
示意性的,如图10所示,在推送按钮1005上层显示蒙层的同时,显示确认弹窗1006,提示业务人员推送按钮1005是否继续使用对应偏移页面元素的埋点事件。若接收到确认操作,服务器即将埋点事件“推送”与推送按钮1005进行绑定,并在埋点信息栏1004中显示推送按钮1005按钮对应的埋点事件。
步骤905,向埋点平台上报偏移页面元素以及纠正页面元素的元素特征信息,埋点平台用于基于偏移页面元素以及纠正页面元素的元素特征信息进行模型训练,其中,训练的模型用于基于元素特征信息确定页面元素的元素特征值。
可选的,当服务器基于元素特征值识别相似的页面元素时,为了进一步提高确定出的元素特征值的准确性,当接收到对纠正页面元素的选择操作时,服务器将偏移页面元素以及纠正页面元素的元素特征信息作为训练样本(正样本),上报至埋点平台,由埋点平台根据偏移页面元素以及纠正页面元素的元素特征信息对模型进行更新训练,并将更新后的模型下发至对应的服务器。
其中,埋点平台以偏移页面元素的元素特征值趋近于纠正页面元素为训练目标进行模型训练。
在其他可能的实施方式中,若未接收到对纠正页面元素的选择操作,服务器也可以将偏移页面元素以及纠正页面元素的元素特征信息作为训练样本(负样本),上报至埋点平台,为模型训练提供数据基础,本实施例对此不作限定。
本实施例中,基于埋点配置中埋点页面元素对应的元素特征信息,以及埋点页面中当前页面元素对应的元素特征信息,识别埋点页面中未发生微调以及发生微调的埋点页面元素,并进一步确定发生微调的埋点页面元素在埋点页面中所处的当前位置,进而进行提示,提高业务人员调整埋点设置的效率。
此外,服务器通过向埋点平台上报对纠正页面元素的选择情况,为埋点平台后续模型更新训练提供数据基础,提高了模型质量,进而提高了页面元素的识别准确率。
在一个示意性的例子中,以埋点平台进行模型训练,利用模型确定页面元素的元素特征值的过程如图11所示。埋点平台基于历史数据集1101生成数据索引1102,该数据索引1102中包含埋点纠正数据索引1103(对微调页面元素进行纠正所产生的数据)、用户行为数据索引1104(用户手动选择页面元素所产生的数据)以及页面元素数据索引1105。
进一步的,埋点平台基于数据索引1102从数据仓库中获取数据,以埋点纠正数据1106、用户行为数据1107以及页面元素数据1108为训练数据,采用CNN或DNN训练得到元素识别模型1109以及元素嵌套组合模型1110。
确定元素特征值的过程中,埋点平台首先对页面元素数据源1111(比如网页数据)进行元素特征信息清洗提取,得到页面元素的元素类型1112、元素属性1113以及元素位置1114。基于得到的元素类型1112,埋点平台通过多类型决策森林,确定出采用的目标元素识别模型(a标签识别模型、div标签识别模型、button标签识别模型、span标签识别模型、ul标签识别模型、li标签识别模型、svg标签识别模型、canvas标签识别模型、img标签识别模型、form标签识别模型、i标签识别模型等等),从而利用目标元素识别模型确定出页面元素中各个页面子元素(页面元素由多个页面子元素嵌套组合而成)的子元素特征值。进一步的,埋点平台进一步进行嵌套拟合评估,基于页面子元素之间的嵌套组合关系,采用元素垂直嵌套组合模型1115和/或元素水平嵌套组合模型1116,确定页面元素的元素特征值1117。
下面采用示例性的实施例对埋点事件设置的交互过程进行说明。
步骤1201,埋点平台的模型训练服务通过定时任务,从数据存储仓库中获取页面元素数据。
步骤1202,埋点平台的模型训练服务基于页面元素数据定时更新训练元素识别模型。
步骤1203,用户通过埋点平台打开埋点页面。
步骤1204,服务器中的SDK进行初始化,向埋点平台发送埋点页面的页面元素列表。
步骤1205,埋点平台的数据预测服务从数据存储仓库中拉取对应的元素识别模型。
步骤1206,数据存储仓库向埋点平台的数据预测服务返回元素识别模型。
步骤1207,埋点平台的数据预测服务计算埋点页面中各个页面元素的元素特征值。
步骤1208,埋点平台的数据预测服务将元素特征值反馈至服务器的SDK。
步骤1209,用户在埋点页面中选择待埋点的目标页面元素。
步骤1210,服务器的SDK基于元素特征值识别目标页面元素的关联页面元素。
步骤1211,服务器的SDK通过埋点页面展示关联页面元素。
步骤1212,用户确定是否选中关联页面元素。
步骤1213,服务器的SDK根据用户选择确定是否为关联页面元素设置埋点事件。
步骤1214,服务器的SDK反馈埋点完成。
步骤1215,服务器的SDK向埋点平台的模型训练服务发送用户选择目标页面元素以及关联页面元素。
步骤1216,埋点平台的模型训练服务将接收到的数据写入数据存储仓库,作为训练数据。
请参考图13,其示出了本申请一个示例性实施例示出的埋点事件的上报装置的结构方框图。该装置可以包括:
获取模块1301,用于响应于对埋点页面中第一页面元素的触发操作,获取所述第一页面元素的第一元素特征信息,其中,同一页面中不同页面元素对应不同元素特征信息;
确定模块1302,用于响应于所述埋点页面的埋点配置中不包含所述第一页面元素,基于所述第一元素特征信息从所述埋点配置中确定第二页面元素,所述埋点配置包括埋点页面元素与埋点事件的对应关系,所述第二页面元素的第二元素特征信息与所述第一元素特征信息满足相似条件;
第一上报模块1303,用于从所述埋点配置中获取所述第二页面元素对应的埋点事件,并向埋点平台上报所述埋点事件。
可选的,确定模块1302,包括:
特征值确定单元,用于基于所述第一元素特征信息确定所述第一页面元素的第一元素特征值;
第一确定单元,用于响应于所述第一元素特征值与所述埋点配置中各个所述埋点页面元素对应的元素特征值均不相同,确定所述埋点配置中不包含所述第一页面元素;
相似度确定单元,用于确定各个所述埋点页面元素对应的元素特征值与所述第一元素特征值之间的特征相似度;
第二确定单元,用于响应于存在所述特征相似度大于相似度阈值的所述埋点页面元素,将最大特征相似度阈值对应的所述埋点页面元素确定为所述第二页面元素。
可选的,所述特征值确定单元,用于:
响应于所述第一页面元素由单一页面子元素构成,将所述第一元素特征信息输入元素识别模型,得到所述元素识别模型输出的所述第一元素特征值。
可选的,所述特征值确定单元,用于:
响应于所述第一页面元素由至少两个页面子元素构成,将所述第一元素特征信息中各个所述页面子元素的子元素特征信息输入所述元素识别模型,得到各个所述页面子元素的子元素特征值;
基于各个所述页面子元素之间的组合关系,确定目标元素嵌套组合模型,所述组合关系包括垂直嵌套组合和水平嵌套组合中的至少一种,且不同组合关系对应不同元素嵌套组合模型;
将所述子元素特征值输入所述目标元素嵌套组合模型,得到所述目标元素嵌套组合模型输出的所述第一元素特征值。
可选的,所述特征值确定单元,用于:
基于所述第一元素特征信息向所述埋点平台发送特征值获取请求,所述埋点平台用于基于所述第一元素特征信息确定所述第一元素特征值;
接收所述埋点平台反馈的所述第一元素特征值。
可选的,所述装置还包括:
接收模块,用于接收所述埋点平台下发的模型,所述模型用于基于元素特征信息确定页面元素的元素特征值;
模型更新模块,用于基于所述模型进行本地模型更新;
特征值更新模块,用于通过更新后的模型,更新所述埋点配置中各个所述埋点页面元素对应的元素特征值。
可选的,所述装置还包括:
第一埋点模块,用于响应于对所述埋点页面中目标页面元素的埋点操作,获取所述目标页面元素的目标元素特征信息;
关联元素确定模块,用于基于所述目标元素特征信息,确定所述埋点页面中所述目标页面元素对应的关联页面元素,所述目标元素特征值与所述关联页面元素的元素特征信息满足所述相似条件;
第一显示模块,用于将所述埋点页面中的所述关联页面元素突出显示;
第二埋点模块,用于响应于对所述关联页面元素的选择操作,为所述关联页面元素设置与所述目标页面元素相同的埋点事件。
可选的,所述装置还包括:
第二上报模块,用于向所述埋点平台上报所述目标页面元素以及所述关联页面元素的元素特征信息,所述埋点平台用于基于所述目标页面元素以及所述关联页面元素的元素特征信息进行模型训练,其中,训练的模型用于基于元素特征信息确定页面元素的元素特征值。
可选的,所述装置还包括:
偏移元素确定模块,用于基于所述埋点页面的所述埋点配置以及所述埋点页面中各个页面元素的元素特征信息,确定所述埋点配置中的偏移页面元素,所述偏移页面元素的偏移元素特征信息不同于所述埋点页面中各个页面元素的元素特征信息;
纠正元素确定模块,用于基于所述偏移元素特征信息,从所述埋点页面中确定纠正页面元素,所述纠正页面元素的元素特征信息与所述偏移元素特征信息满足所述相似条件;
第二显示模块,用于将所述埋点页面中的所述纠正页面元素突出显示;
埋点迁移模块,用于响应于对所述纠正页面元素的选择操作,将所述偏移页面元素对应的埋点事件迁移至所述纠正页面元素。
可选的,所述装置还包括:
第三上报模块,用于向所述埋点平台上报所述偏移页面元素以及所述纠正页面元素的元素特征信息,所述埋点平台用于基于所述偏移页面元素以及所述纠正页面元素的元素特征信息进行模型训练,其中,训练的模型用于基于元素特征信息确定页面元素的元素特征值。
综上所述,采用本申请实施例提供的方案,当接收到对埋点页面中第一页面元素的触发操作时,若埋点配置中不包含第一页面元素,则进一步基于第一页面元素的元素特征信息,从埋点配置中确定出与第一页面元素满足相似条件的第二页面元素,从而对第二页面元素对应的埋点事件进行上报;不同于相关技术中基于埋点页面元素的元素坐标实现埋点事件上报,本申请实施例中,即便埋点页面元素的位置发生微调(即埋点页面元素的元素坐标发生变化),也能够基于页面元素的元素特征信息识别出埋点页面元素,并进行埋点事件上报,提高了埋点页面元素识别的容错空间,进而提高了埋点事件上报的准确率。
需要说明的是:上述实施例提供的埋点事件的上报装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的埋点事件的上报装置与埋点事件的上报方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图14,其示出了本申请一个示例性实施例提供的服务器的结构框图。具体来讲:
所述服务器1400包括中央处理单元(Central Processing Unit,CPU)1401、包括随机存取存储器(Random Access Memory,RAM)1402和只读存储器(Read-Only Memory,ROM)1403的系统存储器1404,以及连接系统存储器1404和中央处理单元1401的系统总线1405。所述服务器1400还包括帮助服务器内的各个器件之间传输信息的基本输入/输出系统(Input/Output系统,I/O系统)1406,和用于存储操作系统1413、应用程序1414和其他程序模块1415的大容量存储设备1407。
所述基本输入/输出系统1406包括有用于显示信息的显示器1408和用于用户输入信息的诸如鼠标、键盘之类的输入设备1409。其中所述显示器1408和输入设备1409都通过连接到系统总线1405的输入输出控制器1410连接到中央处理单元1401。所述基本输入/输出系统1406还可以包括输入输出控制器1410以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1410还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1407通过连接到系统总线1405的大容量存储控制器(未示出)连接到中央处理单元1401。所述大容量存储设备1407及其相关联的计算机可读存储介质为服务器1400提供非易失性存储。也就是说,所述大容量存储设备1407可以包括诸如硬盘或者只读光盘(Compact Disc Read-Only Memory,CD-ROM)驱动器之类的计算机可读存储介质(未示出)。
不失一般性,所述计算机可读存储介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读存储指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读寄存器(Erasable Programmable Read OnlyMemory,EPROM)、电子抹除式可复写只读存储器(Electrically-Erasable ProgrammableRead-Only Memory,EEPROM)、闪存或其他固态存储其技术,CD-ROM、数字多功能光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1404和大容量存储设备1407可以统称为存储器。
存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1401执行,一个或多个程序包含用于实现上述方法实施例的指令,中央处理单元1401执行该一个或多个程序实现上述各个方法实施例提供的方法。
根据本申请的各种实施例,所述服务器1400还可以通过诸如因特网等网络连接到网络上的远程服务器运行。也即服务器1400可以通过连接在所述系统总线1405上的网络接口单元1411连接到网络1412,或者说,也可以使用网络接口单元1411来连接到其他类型的网络或远程服务器系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的方法中服务器所执行的步骤。
本申请实施例中,还提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上述方面所述的埋点事件的上报方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。服务器的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该服务器执行上述方面的各种可选实现方式中提供的埋点事件的上报方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (11)
1.一种埋点事件的上报方法,其特征在于,所述方法包括:
响应于对埋点页面中第一页面元素的触发操作,获取所述第一页面元素的第一元素特征信息,其中,同一页面中不同页面元素对应不同元素特征信息;
响应于所述第一页面元素由单一页面子元素构成,将所述第一元素特征信息输入元素识别模型,得到所述元素识别模型输出的第一元素特征值;
响应于所述第一元素特征值与所述埋点页面的埋点配置中各个埋点页面元素对应的元素特征值均不相同,确定所述埋点配置中不包含所述第一页面元素,所述埋点配置包括所述埋点页面元素与埋点事件的对应关系;
确定各个所述埋点页面元素对应的元素特征值与所述第一元素特征值之间的特征相似度;
响应于存在所述特征相似度大于相似度阈值的所述埋点页面元素,将最大特征相似度阈值对应的所述埋点页面元素确定为第二页面元素,所述第二页面元素的第二元素特征信息与所述第一元素特征信息满足相似条件;
从所述埋点配置中获取所述第二页面元素对应的埋点事件,并向埋点平台上报所述埋点事件。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述第一页面元素由至少两个页面子元素构成,将所述第一元素特征信息中各个所述页面子元素的子元素特征信息输入所述元素识别模型,得到各个所述页面子元素的子元素特征值;
基于各个所述页面子元素之间的组合关系,确定目标元素嵌套组合模型,所述组合关系包括垂直嵌套组合和水平嵌套组合中的至少一种,且不同组合关系对应不同元素嵌套组合模型;
将所述子元素特征值输入所述目标元素嵌套组合模型,得到所述目标元素嵌套组合模型输出的所述第一元素特征值。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述第一元素特征信息向所述埋点平台发送特征值获取请求,所述埋点平台用于基于所述第一元素特征信息确定所述第一元素特征值;
接收所述埋点平台反馈的所述第一元素特征值。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述埋点平台下发的模型,所述模型用于基于元素特征信息确定页面元素的元素特征值;
基于所述模型进行本地模型更新;
通过更新后的模型,更新所述埋点配置中各个所述埋点页面元素对应的元素特征值。
5.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
响应于对所述埋点页面中目标页面元素的埋点操作,获取所述目标页面元素的目标元素特征信息;
基于所述目标元素特征信息,确定所述埋点页面中所述目标页面元素对应的关联页面元素,所述目标元素特征信息与所述关联页面元素的元素特征信息满足所述相似条件;
将所述埋点页面中的所述关联页面元素突出显示;
响应于对所述关联页面元素的选择操作,为所述关联页面元素设置与所述目标页面元素相同的埋点事件。
6.根据权利要求5所述的方法,其特征在于,所述响应于对所述关联页面元素的选择操作,为所述关联页面元素设置与所述目标页面元素相同的埋点事件之后,所述方法还包括:
向所述埋点平台上报所述目标页面元素以及所述关联页面元素的元素特征信息,所述埋点平台用于基于所述目标页面元素以及所述关联页面元素的元素特征信息进行模型训练,其中,训练的模型用于基于元素特征信息确定页面元素的元素特征值。
7.根据权利要求5所述的方法,其特征在于,所述响应于对所述埋点页面中目标页面元素的埋点操作,获取所述目标页面元素的目标元素特征信息之前,所述方法还包括:
基于所述埋点页面的所述埋点配置以及所述埋点页面中各个页面元素的元素特征信息,确定所述埋点配置中的偏移页面元素,所述偏移页面元素的偏移元素特征信息不同于所述埋点页面中各个页面元素的元素特征信息;
基于所述偏移元素特征信息,从所述埋点页面中确定纠正页面元素,所述纠正页面元素的元素特征信息与所述偏移元素特征信息满足所述相似条件;
将所述埋点页面中的所述纠正页面元素突出显示;
响应于对所述纠正页面元素的选择操作,将所述偏移页面元素对应的埋点事件迁移至所述纠正页面元素。
8.根据权利要求7所述的方法,其特征在于,所述响应于对所述纠正页面元素的选择操作,将所述偏移页面元素对应的埋点事件迁移至所述纠正页面元素之后,所述方法还包括:
向所述埋点平台上报所述偏移页面元素以及所述纠正页面元素的元素特征信息,所述埋点平台用于基于所述偏移页面元素以及所述纠正页面元素的元素特征信息进行模型训练,其中,训练的模型用于基于元素特征信息确定页面元素的元素特征值。
9.一种埋点事件的上报装置,其特征在于,所述装置包括:
获取模块,用于响应于对埋点页面中第一页面元素的触发操作,获取所述第一页面元素的第一元素特征信息,其中,同一页面中不同页面元素对应不同元素特征信息;
特征值确定单元,用于响应于所述第一页面元素由单一页面子元素构成,将所述第一元素特征信息输入元素识别模型,得到所述元素识别模型输出的第一元素特征值;
第一确定单元,用于响应于所述第一元素特征值与所述埋点页面的埋点配置中各个埋点页面元素对应的元素特征值均不相同,确定所述埋点配置中不包含所述第一页面元素,所述埋点配置包括所述埋点页面元素与埋点事件的对应关系;
相似度确定单元,用于确定各个所述埋点页面元素对应的元素特征值与所述第一元素特征值之间的特征相似度;
第二确定单元,用于响应于存在所述特征相似度大于相似度阈值的所述埋点页面元素,将最大特征相似度阈值对应的所述埋点页面元素确定为第二页面元素,所述第二页面元素的第二元素特征信息与所述第一元素特征信息满足相似条件;
第一上报模块,用于从所述埋点配置中获取所述第二页面元素对应的埋点事件,并向埋点平台上报所述埋点事件。
10.一种服务器,其特征在于,所述服务器包含处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至8任一所述的埋点事件的上报方法。
11.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至8任一所述的埋点事件的上报方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110112967.9A CN112988532B (zh) | 2021-01-27 | 2021-01-27 | 埋点事件的上报方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110112967.9A CN112988532B (zh) | 2021-01-27 | 2021-01-27 | 埋点事件的上报方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112988532A CN112988532A (zh) | 2021-06-18 |
CN112988532B true CN112988532B (zh) | 2022-07-29 |
Family
ID=76345516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110112967.9A Active CN112988532B (zh) | 2021-01-27 | 2021-01-27 | 埋点事件的上报方法、装置、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112988532B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004508616A (ja) * | 2000-06-20 | 2004-03-18 | テラスプリング・インコーポレーテッド | 拡張可能コンピューティングシステムの制御方法および装置 |
CN108763053A (zh) * | 2018-04-13 | 2018-11-06 | 平安普惠企业管理有限公司 | 埋点名称的生成方法及终端设备 |
CN111427741A (zh) * | 2020-02-26 | 2020-07-17 | 中国平安人寿保险股份有限公司 | 埋点上报方法及相关产品 |
CN111597422A (zh) * | 2020-05-14 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 埋点映射方法、装置、计算机设备和存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2758897B1 (fr) * | 1997-01-29 | 1999-04-23 | Infovista Sa | Procede et systeme de mesure des performances et de suivi de la qualite de service d'un systeme d'information |
JP4208591B2 (ja) * | 2002-02-07 | 2009-01-14 | パナソニック株式会社 | ブレイクポイント設定装置、ブレイクポイント設定方法及びブレイクポイント設定プログラム |
CN105630512A (zh) * | 2016-02-17 | 2016-06-01 | 北京高绎信息技术有限公司 | 通过软件开发工具包实现移动设备数据跟踪的方法及系统 |
CN106776247B (zh) * | 2016-11-23 | 2020-07-14 | 腾云天宇科技(北京)有限公司 | 一种监控应用中控件的方法、服务器及系统 |
CN107832428B (zh) * | 2017-11-14 | 2018-09-18 | 北京知行锐景科技有限公司 | 基于网站页面的网页状态监控方法及系统 |
CN112148618B (zh) * | 2020-10-10 | 2024-05-28 | 北京达佳互联信息技术有限公司 | 埋点测试方法和埋点测试平台 |
-
2021
- 2021-01-27 CN CN202110112967.9A patent/CN112988532B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004508616A (ja) * | 2000-06-20 | 2004-03-18 | テラスプリング・インコーポレーテッド | 拡張可能コンピューティングシステムの制御方法および装置 |
CN108763053A (zh) * | 2018-04-13 | 2018-11-06 | 平安普惠企业管理有限公司 | 埋点名称的生成方法及终端设备 |
CN111427741A (zh) * | 2020-02-26 | 2020-07-17 | 中国平安人寿保险股份有限公司 | 埋点上报方法及相关产品 |
CN111597422A (zh) * | 2020-05-14 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 埋点映射方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112988532A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11294953B2 (en) | Similar face retrieval method, device and storage medium | |
WO2023061087A1 (zh) | 信息推荐方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
KR20210073569A (ko) | 이미지 시맨틱 세그멘테이션 네트워크를 트레이닝하기 위한 방법, 장치, 디바이스 및 저장 매체 | |
CN110292775B (zh) | 获取差异数据的方法及装置 | |
CN108921221A (zh) | 用户特征的生成方法、装置、设备及存储介质 | |
CN108280051B (zh) | 一种文本数据中错误字符的检测方法、装置和设备 | |
CN106095842B (zh) | 在线课程搜索方法和装置 | |
CN109903087A (zh) | 基于行为特征预测用户属性值的方法、装置及存储介质 | |
CN1533542A (zh) | 建立财经建议应用的系统和方法 | |
US20150161555A1 (en) | Scheduling tasks to operators | |
CN112256537B (zh) | 模型运行状态的展示方法、装置、计算机设备和存储介质 | |
CN112131499B (zh) | 图像标注方法、装置、电子设备及存储介质 | |
US11727082B2 (en) | Machine-learning based personalization | |
CN114722281A (zh) | 基于用户画像及用户选课行为的培训课程配置方法、装置 | |
CN106599291B (zh) | 数据分组方法及装置 | |
CN114385942B (zh) | 基于用户行为的页面元素参数优化方法、装置及设备 | |
DE102019220056A1 (de) | Domänenwissensinjektion in halb-schwarmausgelagerte unstrukturierte datenzusammenfassung für diagnose und reparatur | |
US11810022B2 (en) | Contact center call volume prediction | |
CN117573904A (zh) | 基于识别分析的多媒体教学资源知识图谱生成方法及系统 | |
CN112988532B (zh) | 埋点事件的上报方法、装置、服务器及存储介质 | |
US11568314B2 (en) | Data-driven online score caching for machine learning | |
CN110598127B (zh) | 一种群组推荐方法及装置 | |
CN111813816B (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
JP2017111500A (ja) | 文字認識装置及びプログラム | |
CN112491999B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40046419 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |