预测移动应用程序页面性能的方法、装置及电子设备与流程

文档序号:12364577阅读:141来源:国知局
预测移动应用程序页面性能的方法、装置及电子设备与流程

本申请涉及程序性能测试领域,具体涉及一种预测移动应用程序页面性能的方法、装置及电子设备。本申请同时涉及一种发布移动应用程序页面的方法、装置及电子设备。



背景技术:

随着Android、iPhone等智能手机的流行,智能手机的第三方应用程序APP处于高速增长阶段,并受到越来越多消费者的追捧。在实际应用中,消费者的需求会快速的发生变化,APP的页面风格也随之发生变化。在开发APP的过程中,如果采用硬编码程序页面的方式,则当APP的页面风格发生变化时,将会导致需要颠覆性地修改有关程序页面的代码,以及功能和性能测试等问题。因此,对于硬编码程序页面的APP,其开发和维护测试的成本是巨大的。

基于页面模板的APP程序页面开发方法,能够解决上述需求变化带来的巨大开发和维护测试成本的问题。在实际应用中,根据消费者的使用习惯、喜好等,将产生丰富多彩的页面模板。例如,对于一个淘宝店而言,店主可以根据销售商品的类别及其个人喜好的风格等方面,选择符合其要求的商品详情页面模板。面对消费者需求的日趋个性化特点,为了提高用户体验,页面模板的开发从只面向专业开发人员,发展到能够面向非专业开发人员,例如,对于一个淘宝店而言,商品详情页面模板的开发既可以为业务方,还可以是页面设计师以及卖家。

在实际应用中,在个人电脑中可以正常打开的程序页面,在智能手机不一定能够正常打开,原因在于:智能手机的硬件配置和底层架构与个人电脑均不可比拟,例如:与硬件配置相关的屏幕尺寸、内存、CPU等方面均会影响程序的性能。为了保证新开发的页面模板在智能手机中具有良好的实际使用性能,需要对页面模板在智能手机中运行的性能进行测试。当前业界的做法包括以下两阶段测试:1)在正式发布新页面模板之前,单机手工进行性能测试,检测其性能是否达到发布标准;2)在正式发布新页面模板之后,通过线上采集数据的方式,采集新页面模板的性能结果,以及时监控其性能值,即事后测性能测试。 总之,需要对新页面模板在智能手机中的性能进行完整、详细的测试工作,例如,对内存、流量、响应时间、流畅度和CPU占用等性能进行测试。上述对页面模板的性能测试工作通常是由专业开发人员完成的。

然而,该方案前期的单机性能测试环境与实际运行场景有着很大的区别,测试场景较实际场景通常更为简单,因此获取的测试结果准确性较差;发版后线上采集的性能数据,严重滞后于发版节奏,只能在一个版本发布后去检测当前版本的性能改动结果。同时,每一次的人工性能测试耗时耗力,发现问题和解决问题的成本较大,性能采样率较低。此外,为了保证新开发的页面模板具有实用性,通常预设一些限制条件对用户编辑的页面模板进行限制,例如,限制页面模板中包括的图片的规格,从而确保用户编辑的页面模板具有实用性。以上三种方式效果都不尽如人意,既浪费时间占用资源,还不能很好的控制各方接入。特别的,当页面模板的开发者为非专业开发人员时,例如,页面模板的开发者为设计师或卖家,由于非专业开发人员的软件技术基础通常为零,因此,上述对页面模板的性能测试工作对于非专业开发人员来说是极度复杂和不适用的。

实际上,无论是专业开发人员,还是非专业开发人员,均更关心新的页面模板哪里有问题和怎么改的问题。因此,对页面模板的性能预估相当重要。通过预估页面模板的性能,能够判断页面模板的发布会不会对程序性能产成影响,甚至能够让任何人在编辑发布页面模板的同时,就可以预知性能影响从而指导如何改进。

综上所述,现有技术存在无法对移动应用程序的页面性能进行预估的问题。



技术实现要素:

本申请提供一种预测移动应用程序页面性能的方法、装置及电子设备,以解决现有技术存在无法对移动应用程序的页面性能进行预估的问题。本申请另外提供一种发布移动应用程序页面的方法、装置及电子设备。

本申请提供一种预测移动应用程序页面性能的方法,包括:

获取对待预测页面的性能产生影响的特征数据;

根据所述对待预测页面的性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

可选的,所述预测模型采用如下方式生成:

获取对各个待训练页面的性能产生影响的历史特征数据,以及与其对应的性能指标项的实际值,作为训练集;

通过机器学习算法,从所述训练集中学习获得所述预测模型。

可选的,所述性能指标项的实际值采用如下方式生成:

接收移动终端发送的与所述性能指标项的实际值有关的性能数据,作为原始性能数据;

根据所述原始性能数据,生成所述性能指标项的实际值。

可选的,所述与所述性能指标项的实际值有关的性能数据,采用如下方式采集:

通过在所述待训练页面中的预设埋点,采集所述与所述性能指标项的实际值有关的性能数据。

可选的,所述根据所述原始性能数据,生成所述性能指标项的实际值,采用如下方式:

采用预设算法对所述原始性能数据进行处理,生成所述性能指标项的实际值。

可选的,所述预设算法包括:对原始性能数据进行分类的处理算法、对异常数据的处理算法、对空缺值的处理算法、将定性数据转换为定量数据的处理算法、函数变换处理算法、平滑滤波处理算法、频域分解处理算法和归一化处理算法的至少一者。

可选的,所述机器学习算法包括:决策树算法、贝叶斯算法、遗传算法或人工神经网络算法。

可选的,对页面的性能产生影响的特征数据包括:页面的特征数据、显示页面的移动设备的资源使用状态数据、显示页面的移动设备的资源配置数据和存储页面的服务器的资源配置数据的至少一者。

可选的,所述页面的特征数据采用如下方式生成:

读取并解析所述页面,获取所述页面的特征数据。

可选的,所述页面的特征数据包括:所述页面中图片的数量、所述页面中图片的尺寸、所述页面中图片的分辨率、所述页面中文本的数量和所述页面中文本的字号的至少一者。

可选的,所述显示页面的移动设备的资源使用状态数据包括:CPU使用率、内存使用率和存储空间使用率的至少一者。

可选的,所述显示页面的移动设备的资源配置数据包括CPU核数、内存和主频的至少一者;所述存储页面的服务器的资源配置数据包括:CPU核数和主频的至少一者。

可选的,所述显示页面的移动设备的资源配置数据,采用如下方式获取:

根据所述显示页面的移动设备的型号,获取所述显示页面的移动设备的资源配置数据。

可选的,还包括:

将所述性能指标项的预测值输出到指定设备。

可选的,所述待预测页面包括页面模板。

可选的,所述性能指标项包括:页面的响应时间、占用的CPU资源、占用的内存空间、消耗的网络流量和页面显示的流畅度的至少一者。

可选的,还包括:

获取在指定的移动设备中显示所述待预测页面后,所采集到的所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据;

根据所述对待预测页面的性能产生影响的特征数据和所述待预测页面的性能指标项的实际值,更新所述预测模型。

可选的,还包括:

根据所述待预测页面的性能指标项的预测值,以及指定页面的性能指标项的实际值或预测值,计算所述待预测页面相对于所述指定页面的性能指标项的比值。

相应的,本申请还提供一种预测移动应用程序页面性能的装置,包括:

获取单元,用于获取对待预测页面的性能产生影响的特征数据;

预测单元,用于根据所述对待预测页面的性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

可选的,还包括:

训练单元,用于生成所述预测模型。

可选的,所述训练单元包括:

获取子单元,用于获取对各个待训练页面的性能产生影响的历史特征数据,以及与其对应的性能指标项的实际值,作为训练集;

学习子单元,用于通过机器学习算法,从所述训练集中学习获得所述预测模型。

可选的,还包括:

整理单元,用于生成所述性能指标项的实际值。

可选的,所述整理单元包括:

接收子单元,用于接收移动终端发送的与所述性能指标项的实际值有关的性能数据,作为原始性能数据;

整理子单元,用于根据所述原始性能数据,生成所述性能指标项的实际值。

可选的,还包括:

输出单元,用于将所述性能指标项的预测值输出到指定设备。

可选的,还包括:

更新单元,用于更新所述预测模型。

可选的,所述更新单元包括:

获取子单元,用于获取在指定的移动设备中显示所述待预测页面后,所采集到的所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据;

更新子单元,用于根据所述对待预测页面的性能产生影响的特征数据和所述待预测页面的性能指标项的实际值,更新所述预测模型。

可选的,还包括:

计算单元,根据所述待预测页面的性能指标项的预测值,以及指定页面的性能指标项的实际值或预测值,计算所述待预测页面相对于所述指定页面的性能指标项的比值。

相应的,本申请还提供一种电子设备,包括:

显示器;

处理器;以及

存储器,所述存储器被配置成存储预测移动应用程序页面性能的装置,所述预测移动应用程序页面性能的装置被所述处理器执行时,包括如下步骤:获取对待预测页面的性能产生影响的特征数据;根据所述对待预测页面的性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

此外,本申请还提供一种发布移动应用程序页面的方法,包括:

获取待发布页面以及对其性能产生影响的特征数据;

根据所述特征数据和预先生成的预测模型,生成所述待发布页面的性能指标项的预测值;

若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面。

可选的,还包括:

若所述待发布页面的性能指标项的预测值不符合预设的发布标准,则重新编辑所述待发布页面。

可选的,在所述若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面之前,还包括:

判断所述待发布页面的性能指标项的预测值符合所述预设的发布标准。

相应的,本申请还提供一种发布移动应用程序页面的装置,包括:

获取单元,用于获取待发布页面以及对其性能产生影响的特征数据;

预测单元,用于根据所述特征数据和预先生成的预测模型,生成所述待发布页面的性能指标项的预测值;

发布单元,用于若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面。

可选的,还包括:

判断单元,用于判断所述待发布页面的性能指标项的预测值符合所述预设的发布标准。

相应的,本申请还提供一种电子设备,包括:

显示器;

处理器;以及

存储器,所述存储器被配置成存储发布移动应用程序页面的装置,所述发布移动应用程序页面的装置被所述处理器执行时,包括如下步骤:获取待发布页面以及对其性能产生影响的特征数据;根据所述特征数据和预先生成的预测模型,生成所述待发布页面的性能指标项的预测值;若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面。

与现有技术相比,本申请具有以下优点:

本申请实施例提供的预测移动应用程序页面性能的方法、装置及电子设备,通过获取对待预测页面的性能产生影响的特征数据,并根据所述对性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。采用本申请提供的方法,根据预先生成的预测模型对移动应用程序的页面性能进行预测,使得模板编辑者能够实时获取页面性能的预测数据,从而达到提高用户体验的效果。

附图说明

图1是本申请的预测移动应用程序页面性能的方法实施例的流程图;

图2是本申请的预测移动应用程序页面性能的方法实施例生成预测模型的流程图;

图3是本申请的预测移动应用程序页面性能的方法实施例生成性能指标项的实际值的流程图;

图4是本申请的预测移动应用程序页面性能的方法实施例采集的原始性能数据的示意图;

图5是本申请的预测移动应用程序页面性能的方法实施例性能指标项的实际值的示意图;

图6是本申请的预测移动应用程序页面性能的装置实施例的示意图;

图7是本申请的预测移动应用程序页面性能的装置实施例的具体示意图;

图8是本申请的预测移动应用程序页面性能的装置实施例的又一具体示意图;

图9是本申请的电子设备实施例的示意图;

图10是本申请的发布移动应用程序页面的方法实施例的流程图;

图11是本申请的发布移动应用程序页面的装置实施例的示意图;

图12是本申请的又一电子设备实施例的示意图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

在本申请中,提供了一种预测移动应用程序页面性能的方法、装置及电子设备,以及一种发布移动应用程序页面的方法、装置及电子设备。在下面的实施例中逐一进行详细说明。

请参考图1,其为本申请的预测移动应用程序页面性能的方法实施例的流程图。所述方法包括如下步骤:

步骤S101:获取对待预测页面的性能产生影响的特征数据。

本申请实施例所述的移动应用程序,是指运行在移动设备中的应用程序(简称:移动APP)。移动设备包括但不限于移动通讯设备,即:通常所说的手机或者智能手机,还包括PAD、iPad等终端设备。所述的待预测页面是指在移动应用程序中打开的页面。在实际应用中,待预测页面包括移动应用程序的具体页面或页面模板。

本申请实施例所述的对页面的性能产生影响的特征数据,包括:页面的特征数据、显示页面的移动设备的资源使用状态数据、显示页面的移动设备的资源配置数据和存储页面的服务器的资源配置数据的至少一者。上述不同的特征数据对性能指标项的预测值的影响力是不相同的,其中有些特征数据对性能指标项的预测值产生较为主要的影响,而另一些特征数据对性能指标项的预测值产生较为次要的影响。下面列举出本实施例中所采用的特征数据。

1)页面的特征数据

本申请实施例所述的页面的特征数据包括:所述页面中包括的图片数量、所述页面中图片的尺寸、所述页面中图片的分辨率、所述页面中文本的数量和所述页面中文本的字号的至少一者。上述列举的各项数据,均会对页面性能产生影响。

具体的,所述页面的特征数据采用如下方式生成:读取并解析所述页面,获取所述页面的特征数据。在实际应用中,通常是在编辑完页面后,实际开始预测其性能时,首先读取并解析页面,实时统计获取上述页面特征数据。具体 的,是在服务器端向客户端下发页面时,由服务器端解析页面,获取页面的特征数据,以供性能预测模块用。此外,当在移动设备中显示页面时,通过页面中的预设埋点,获取页面的特征数据,并将其上传至服务器,以更新训练数据集。

2)显示页面的移动设备的资源使用状态数据

本申请实施例所述的显示页面的移动设备的资源使用状态数据包括:CPU使用率、内存使用率和存储空间使用率的至少一者。由于最终预测的是页面在移动设备中显示的性能,因此,除了上述页面的特征数据之外,显示页面的移动设备的资源使用状态也会影响页面的显示性能。通过将移动设备的资源使用状态数据,作为对页面性能产生影响的特征数据,能够有效提高页面性能预测值的准确度。

3)显示页面的移动设备的资源配置数据,以及存储页面的服务器的资源配置数据

本申请实施例所述的显示页面的移动设备的资源配置数据包括CPU核数、内存和主频的至少一者;所述存储页面的服务器的资源配置数据包括:CPU核数和主频的至少一者。

在实际应用中,显示页面的移动设备的资源配置也会影响页面的性能。例如,iPhone6的资源配置高于iPhone4,因此,同一页面运行在iPhone6或iPhone4上的页面性能预测值也会不同。通过将移动设备的资源配置数据,作为对页面的性能产生影响的特征数据,能够有效提高页面性能预测值的准确度。此外,由于安装在移动设备中的移动应用程序通常需要与服务器互相配合运行,因此,存储页面的服务器的资源配置也会影响页面的性能。

本申请实施例提供的方法,可以预测页面在指定移动设备中的性能指标项的预测值。具体的,所述显示页面的移动设备的资源配置数据,采用如下方式获取:根据显示页面的移动设备的型号,获取所述显示页面的移动设备的资源配置数据。在本实施例中,服务器端预先存储移动设备的型号与其资源配置数据的对应关系。当需要获取与移动设备的型号相对应的资源配置数据时,以移动设备的型号为检索依据,在预先存储的移动设备的型号与其资源配置数据的对应关系中进行检索,获取与移动设备的型号相对应的资源配置数据。需要说明的是,本申请实施例提供的方法,既可以预测页面在指定移动设备中的性能 指标项的预测值,还可以预测页面在各种移动设备中的性能指标项的预测值。

要实施本申请提供的方法,首先需要获取对待预测页面的性能产生影响的特征数据,将其作为预测用的多维度特征数据。本申请实施例所述的对待预测页面的性能产生影响的特征数据,即可以是预先生成并存储好的特征数据,还可以是根据待预测页面及相关设备,实时生成的特征数据。

上面列举的都只是一些具体的特征数据,在实际应用中,还可以选择其他形式的特征数据,不同的特征数据都只是具体形式的变更,都不偏离本申请的核心,因此都在本申请的保护范围之内。

通过步骤S101获取到对待预测页面的性能产生影响的特征数据后,就可以进入步骤S103,根据所述特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

步骤S103:根据所述对待预测页面的性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

本申请实施例所述的性能指标项包括:页面的响应时间、占用的CPU资源、占用的内存空间、消耗的网络流量和页面显示的流畅度的至少一者。在实际应用中,对于移动应用程序的页面性能的关注点,既可以包括上面五点所列的性能指标项,还可以包括其它性能指标项。不同的性能指标项都只是具体实施方式的变更,都不偏离本申请的核心,因此都在本申请的保护范围之内。下面对本申请实施例所述的性能指标项逐一进行详细说明。

1)页面的响应时间

页面的响应时间,是指发出显示页面的操作指令直至页面显示完成的间隔时间。如果发出显示页面的操作指令后,页面显示不成功,或者要等很久才能成功显示页面,则页面的响应时间是不合格的,需要对页面进行优化处理。快速响应操作指令,是对一个程序最基本的要求。

2)占用的CPU资源

程序占用的CPU资源,即:CPU利用率,表示移动设备在某个时间点的运行程序的情况。设备的耗电量与CPU的占用时间和利用率密切相关,当CPU占比较低时,整机的电流较小,而高的CPU占比则相反。因此,应该优化页面,使其尽可能减小对CPU资源的长时间占用,从而达到节约用电的效果。

3)占用的内存空间

移动应用程序都是在移动设备的内存中运行的,程序页面对内存空间的占用对移动设备的影响巨大。移动应用程序占用的内存空间过高会造成系统崩溃,从而影响用户体验。例如,Android设备出厂以后,Java虚拟机对单个应用程序的最大内存分配就确定下来了,如果单个应用程序所占用的内存空间超出预先分配的内存,则将出现内存溢出的现象,导致移动应用程序被强制终止。

4)消耗的网络流量

对于移动设备而言,网络和流量是必不可少的。目前,很多地方都有WiFi热点覆盖,在WiFi环境下无需考虑流量问题。然而,并非所有的地点都有WiFi,此外也不是所有人都用几十个G的流量套餐,仍然有一大部分人的流量套餐只有10M或50M,较低的流量套餐不足以支撑大量的网络流量消耗。移动设备存在的偷流量问题,很大程度上是由于移动应用程序的数据更新导致的。通过优化页面,能够有效降低网络流量的消耗。为了防止偷流量问题,还需要考虑在不同的网络下何时更新数据以及更新数据的频率。

5)页面显示的流畅度

本申请实施例所述的流畅度是以帧率界定的,表示图形处理器处理时每秒钟能够更新的页面数量。在移动应用程序运行过程中,如果流畅度过低将出现卡顿现象,从而影响用户体验。通常,对游戏的要求是60FPS,50~60FPS较流畅,而低于30FPS人眼就会感知到明显的卡顿。

在实际应用中,页面性能的关注点不仅仅如上述五点所列,但是作为最直接影响用户体验的五大点,是每一个移动应用程序的开发者必须关注的内容。

本申请实施例所述的预测模型是根据历史特征数据和与其对应的性能指标项的实际值学习出来的,因此生成预测模型的过程是一次机器学习的过程,并且本申请实施例的机器学习是有监督的机器学习。要进行有监督的机器学习,可以采用的学习算法包括回归算法。回归算法属于归纳学习的范畴,所谓归纳学习是指根据某概念的一些实例,通过归纳推理得出该概念的一般描述。对于预测页面的性能指标项的应用而言,能够采用的回归算法包括线性回归算法、回归决策树算法、迭代决策树算法、贝叶斯算法、遗传算法、人工神经网络算法,或者预设回归算法的加权线性组合等算法。不同算法生成的预测值的准确度不同,不同算法的计算复杂度也不相同,在实际应用中,根据具体应用需求,可以选择任意一种回归算法对页面的性能指标项进行预测。

要实施本申请提供的方法,首先需要根据训练数据生成预测模型。请参考图2,其为本申请的预测移动应用程序页面性能的方法实施例生成预测模型的流程图。在本实施例中,生成所述预测模型包括:

步骤S201:获取对各个待训练页面的性能产生影响的历史特征数据,以及与其对应的性能指标项的实际值,作为训练集。

为了能够准确的生成预测模型,需要获取大量的训练数据,即:对已有页面的性能产生影响的历史特征数据和与历史特征数据相对应的性能指标项的实际值。在实际应用中,既要减少训练阶段的计算量,同时又要保证依据的训练数据足够多。为此,通常需要从所有训练数据中随机选取部分样本作为训练数据。例如,所有训练数据100万条,即有100万条记录,每条记录里的信息记录了某页面的对应特征,以及所对应的性能指标项的实际值,随机选取其中的10万条记录作为训练数据。

本申请实施例所述的性能指标项的实际值,是指在移动设备中实际显示页面时所产生的性能指标项的实际数据。请参考图3,其为本申请的预测移动应用程序页面性能的方法实施例生成性能指标项的实际值的流程图。在本实施例中,生成性能指标项的实际值,包括如下步骤:

步骤S301:接收移动终端发送的与所述性能指标项的实际值有关的性能数据,作为原始性能数据。

本申请实施例提供的方法是在服务器端执行的,相应的,训练数据存储在服务器端。要生成性能指标项的实际值,首先需要接收移动终端发送的与所述性能指标项的实际值有关的性能数据,作为原始性能数据。请参考图4,其为本申请的预测移动应用程序页面性能的方法实施例采集的原始性能数据的示意图。在本实施例中,与性能指标项的实际值有关的性能数据,采用如下方式采集:通过在所述待训练页面中的预设埋点,采集所述与所述性能指标项的实际值有关的性能数据。

在本实施例中,当待训练页面中的预设埋点采集到与性能指标项的实际值有关的性能数据后,将其上传到服务器端存储,形成上述训练集中性能指标项的实际值的原始性能数据。

步骤S303:根据所述原始性能数据,生成所述性能指标项的实际值。

在获取到原始性能数据后,根据原始性能数据,生成性能指标项的实际值。 在本实施例中,步骤S303采用如下方式实现:采用预设算法对所述原始性能数据进行处理,生成所述性能指标项的实际值。

具体的,所述预设算法包括:对原始性能数据进行分类的处理算法、对异常数据的处理算法、对空缺值的处理算法、将定性数据转换为定量数据的处理算法、函数变换处理算法、平滑滤波处理算法、频域分解处理算法和归一化处理算法的至少一者。下面对本申请实施例所述的预设算法逐一进行详细说明。

1)对原始性能数据进行分类的处理算法

移动终端采集的各个与性能指标项的实际值有关的性能数据通常是混合在一起的,例如,图4中显示的是混合存储的原始性能数据。为了便于生成性能指标项的实际值,需要预先对混合存储的原始性能数据进行分类,具体类别包括:与内存指标有关的原始性能数据、与CPU指标有关的原始性能数据、与流量指标有关的原始性能数据、与响应时间指标有关的原始性能数据、与流畅度指标有关的原始性能数据帧率。

2)对异常数据的处理算法

由于移动网络连接质量等原因,服务器端接收到的原始性能数据中,不可避免的会出现缺失数据、噪声数据和不一致数据等不规范的数据。例如,CPU使用率的最大值只能是100%,而接收到的原始性能数据可能包括200%这样的数据。异常数据,也称为脏数据或者噪音数据。基于上述原因,在服务器端接收到与所述性能指标项的实际值有关的性能数据之后,采用对异常数据的处理算法,剔除上述脏数据,即消除噪音数据。

3)对空缺值的处理算法

服务器端在存储原始性能数据过程中,可能存在某些异常,从而导致原始性能数据写入失败。基于上述原因,服务器端存储的原始性能数据可能包括空缺值。在本实施例中,对于空缺值的处理方法是,直接把整个tab的整列数据全部删除。

4)将定性数据转换为定量数据的处理算法

例如,在实际应用中,不同移动设备可以分配的内存是不同的,当前占用的内存空间也是不同的。通过计算占用内存和分配内存的比值,使得不同移动设备能够基于统一的基准对相关数据进行比对,将这种处理算法称为将定性数据转换为定量数据的处理算法。

5)函数变换处理算法

例如,系统采集到的有关帧率的数据的测量单位为FPS(Frames per Second,每秒显示的帧数),而实际所需要的是每一帧的绘制时间,因此,通过函数变换处理算法,能够将FPS单位的数据转换为每一帧绘制时间单位的数据。此外,还可以包括差分算法,获取抖动范围,计算出差分值。

6)平滑滤波处理算法

采用平滑滤波处理算法,也能够达到去除噪声的效果。

7)频域分解处理算法

该方法在保留PP法简单快速优点的基础上,已能够识别近频乃至重频模态,目前在工程界应用很多。

8)归一化处理算法

对原始数据进行归一化处理(即:数据标准化)是数据挖掘的一项基础工作。不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化的处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。

在获取到与性能指标项有关的各项原始性能数据后,通过采用上述一种或多种预设算法对原始性能数据进行处理,生成性能指标项的实际值。请参考图5,其为本申请的预测移动应用程序页面性能的方法实施例性能指标项的实际值的示意图。相比较图4中的原始性能数据而言,图5中包括的是性能指标项的实际值,也可以称为规范化的性能数据。

步骤S203:通过机器学习算法,从所述训练集中学习获得所述预测模型。

在实际应用中,根据训练集生成预测模型,可以采用多种具体训练算法,包括线性回归算法、RDT(Regression Decision Tree,回归决策树)算法或GBDT(Gradient Boosting Decision Tree,迭代决策树)算法等。通过上述各种算法,生成用于预测页面性能的预测模型。上述各种不同的训练算法都只是具体实施方式的变更,都不偏离本申请的核心,因此都在本申请的保护范围之内。

通过上述各种不同的训练算法生成的预测值的准确度是不同的。本申请实施例提供的方法,特征数据较多,甚至高达几十个特征数据,因而特征数据与预测值之间的关系可能是非线性的,而线性回归算法适用于线性的情况,因此 采用线性回归算法生成的预测值的准确度较差。RDT算法有着很多良好的特性,例如,训练时间复杂度较低、预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等。但是,单决策树可能出现过拟合的问题,虽然通过一些方法,如剪枝可以减少这种情况,但是还是不够的。过拟合是指为了让训练集精度更高,学到了很多“仅在训练集上成立的规律”,导致换一个数据集当前规律就不适用了。其实只要允许一棵树的叶子节点足够多,训练集总是能训练到100%准确率的。在训练精度和实际精度(或测试精度)之间,后者才是真正需要达到的目标。

GBDT又叫MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案。它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法。GBDT几乎可用于所有回归问题(线性/非线性),相对logistic regression仅能用于线性回归,GBDT的适用面非常广。GBDT的核心就在于,每一棵树学的是之前所有树结论和的残差,这个残差就是一个加预测值后能得到真实值的累加量。GBDT算法最终的结果是生成N(在本实施例中,实际会有几百棵以上)棵树,这样可以大大的减少单决策树带来的缺点,虽然这几百棵决策树中的每一棵都很简单(相对于C4.5这种单决策树来说),但是他们组合起来确是很强大。

在实际应用中,本申请实施例提供的预测移动应用程序页面性能的方法,主要用于对页面模板的性能进行预测。通常,页面模板的数量是有限的,并且各种移动设备的型号也是有限的,因此本申请实施例的训练集属于小规模的数据。由于贝叶斯算法对小规模的数据表现很好,适合多分类任务,适合增量式训练,因而本申请实施例采用贝叶斯算法生成预测模型。

通过上述步骤S201和步骤S203生成了预测模型,该预测模型供预测阶段使用。在预测阶段,根据步骤S101获取到的预测用特征数据和上述采用机器学习算法预先生成的预测模型,对所述待预测页面的性能指标项进行预测。

本申请实施例提供的预测移动应用程序页面性能的方法,应用机器学习思想对与页面性能有关的数据进行分析,使用机器学习算法建立预测模型并使用其进行预测,带回验证表明预测模型具有较高精度。在机器已习得数据规律后,利用预测模型,对习得知识后的模型进行知识获取的分析,得出由机器学习过程获得的有意义的页面性能指标项的预测值,为决策提供客观依据,具有很强的实用性。

本申请实施例提供的预测移动应用程序页面性能的方法,还包括:将所述性能指标项的预测值输出到指定设备。例如,通过网页形式将性能指标项的预测值显示在屏幕中,以便用户能够直接浏览性能指标项的预测值。在实际应用中,还可以将性能指标项的预测值存储到预设的存储空间,以便后期对预测数据进行分析。

此外,通过预测模型获取到待预测页面的性能指标项预测值后,本申请提供的方法还包括:1)获取在指定的移动设备中显示所述待预测页面后,所采集到的所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据;2)根据所述对待预测页面的性能产生影响的特征数据和所述待预测页面的性能指标项的实际值,更新所述预测模型。

1)获取在指定的移动设备中显示所述待预测页面后,所采集到的所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据。

性能指标项的实际值与显示其的移动设备相关,并且性能指标项的实际值是在实际显示页面后获取的。在本实施例中,所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据,采用如下方式采集:通过在所述待预测页面中的预设埋点,采集所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据。当采集到所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据之后,指定的移动设备将这些数据上传到服务器端,服务器端获取到这些数据。

2)根据所述对待预测页面的性能产生影响的特征数据和所述待预测页面的性能指标项的实际值,更新所述预测模型。

当服务器端获取到所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据之后,将其作为新增的训练数据,更新训练数据集。然后,根据更新后的训练集更新预测模型。更新预测模型的处理过程,也就是根据更新后的训练集,重新学习预测模型的过程,详见上述步骤S203的相关说明,此处不再赘述。

在本实施例中,本申请提供的方法还包括:根据所述待预测页面的性能指标项的预测值,以及指定页面的性能指标项的实际值或预测值,计算所述待预 测页面相对于所述指定页面的性能指标项的比值。通过该步骤,能够获取待预测页面相对于任意一个指定页面的性能指标项的比值,从而达到提高用户体验的效果。

此外,还可以将待预测页面的性能指标项的预测值和其对应的移动设备的性能基线进行比较,对于不合格的性能情况给出修改意见,例如:图片过多、尺寸过大、可以适当降低图片分辨率来提高性能等。上述各种不同的性能指标项预测值的不同形式,都只是具体实施方式的变更,都不偏离本申请的核心,因此都在本申请的保护范围之内。

在上述的实施例中,提供了一种预测移动应用程序页面性能的方法,与之相对应的,本申请还提供一种预测移动应用程序页面性能的装置。该装置是与上述方法的实施例相对应。

请参看图6,其为本申请的预测移动应用程序页面性能的装置实施例的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。

本实施例的一种预测移动应用程序页面性能的装置,包括:

获取单元101,用于获取对待预测页面的性能产生影响的特征数据;

预测单元103,用于根据所述对待预测页面的性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

请参看图7,其为本申请的预测移动应用程序页面性能的装置实施例的具体示意图。可选的,还包括:

训练单元201,用于生成所述预测模型。

可选的,所述训练单元201包括:

获取子单元2011,用于获取对各个待训练页面的性能产生影响的历史特征数据,以及与其对应的性能指标项的实际值,作为训练集;

学习子单元2013,用于通过机器学习算法,从所述训练集中学习获得所述预测模型。

请参看图8,其为本申请的预测移动应用程序页面性能的装置实施例的又一具体示意图。可选的,还包括:

整理单元203,用于生成所述性能指标项的实际值。

可选的,所述整理单元203包括:

接收子单元2031,用于接收移动终端发送的与所述性能指标项的实际值有关的性能数据,作为原始性能数据;

整理子单元2033,用于根据所述原始性能数据,生成所述性能指标项的实际值。

可选的,还包括:

输出单元,用于将所述性能指标项的预测值输出到指定设备。

可选的,还包括:

更新单元,用于更新所述预测模型。

可选的,所述更新单元包括:

获取子单元,用于获取在指定的移动设备中显示所述待预测页面后,所采集到的所述待预测页面的性能指标项的实际值,以及所述对待预测页面的性能产生影响的特征数据;

更新子单元,用于根据所述对待预测页面的性能产生影响的特征数据和所述待预测页面的性能指标项的实际值,更新所述预测模型。

可选的,还包括:

计算单元,根据所述待预测页面的性能指标项的预测值,以及指定页面的性能指标项的实际值或预测值,计算所述待预测页面相对于所述指定页面的性能指标项的比值。

请参考图9,其为本申请的电子设备实施例的示意图。由于设备实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的设备实施例仅仅是示意性的。

本实施例的一种电子设备,该电子设备包括:显示器901;处理器902;以及存储器903,所述存储器被配置成存储预测移动应用程序页面性能的装置,所述预测移动应用程序页面性能的装置被所述处理器执行时,包括如下步骤:获取对待预测页面的性能产生影响的特征数据;根据所述对待预测页面的性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。

本申请实施例提供的预测移动应用程序页面性能的方法、装置及电子设备, 通过获取对待预测页面的性能产生影响的特征数据,并根据所述对性能产生影响的特征数据和预先生成的预测模型,生成所述待预测页面的性能指标项的预测值。采用本申请提供的方法,根据预先生成的预测模型对移动应用程序的页面性能进行预测,使得模板编辑者能够实时获取页面性能的预测数据,从而达到提高用户体验的效果。

与上述的预测移动应用程序页面性能的方法相对应,本申请还提供一种发布移动应用程序页面的方法。请参考图10,其为本申请提供的一种发布移动应用程序页面的方法的实施例的流程示意图,本实施例与第一实施例内容相同的部分不再赘述,请参见实施例一中的相应部分。本申请提供的一种发布移动应用程序页面的方法,所述方法包括:

步骤S1001:获取待发布页面以及对其性能产生影响的特征数据。

本申请实施例所述的待发布页面以及特征数据,分别为与上述实施例一中所述的待预测页面和特征数据相对应的概念,相关说明详见实施例一中的解释,此处不再赘述。

步骤S1003:根据所述特征数据和预先生成的预测模型,生成所述待发布页面的性能指标项的预测值。

在实际应用中,既可以直接生成待发布页面在指定移动设备上的性能指标项的预测值,还可以生成待发布页面相对于指定页面在同一指定移动设备上的性能指标项的预测比值。在实际应用中,通常将旧版本页面作为指定页面,将更新后的新版本页面作为待发布页面,通过计算新版本页面相对于旧版本页面在同一指定移动设备上的性能指标项的预测比值,能够获取新版本页面相对于旧版本的性能改进点,从而达到提高用户体验的效果。

步骤S1005:若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面。

当对页面性能进行预测之后,获取的每一个性能指标项的预测值都可以作为待发布页面好坏的判断标准。在实际应用中,结合页面在移动设备客户端中的性能指标项的实际值数据和大量的测试结果,能够确定不影响移动应用程序使用基础上的页面性能指标项的最大容忍度值,即:预设的发布标准。将上述最大容忍度值作为实际业务方接入标准,将其与待发布页面的性能指标项的预测值进行比较,就可以的确定待发布页面性能的好坏、需注意点和修改意见等 信息,从而达到指引用户去优化页面的效果。如果对待发布页面的性能预测结果满意,则可以选择正式发布待发布页面,系统可以输出评分和最终的性能报告。

具体的,在所述若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面之前,还包括:判断所述待发布页面的性能指标项的预测值符合所述预设的发布标准。

需要说明的是,若所述待发布页面的性能指标项的预测值不符合预设的发布标准,则需要重新编辑所述待发布页面,以避免性能较低的页面被正式发布。此外,即使待发布页面的性能指标项的预测值达到发布标准,用户也自行决定页面的可优化点是否需要优化,如果决定优化,则进入到重新编辑页面的流程。

在上述的实施例中,提供了一种发布移动应用程序页面的方法,与之相对应的,本申请还提供一种发布移动应用程序页面的装置。该装置是与上述方法的实施例相对应。

请参看图11,其为本申请的发布移动应用程序页面的装置实施例的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。

本实施例的一种发布移动应用程序页面的装置,包括:

获取单元1101,用于获取待发布页面以及对其性能产生影响的特征数据;

预测单元1103,用于根据所述特征数据和预先生成的预测模型,生成所述待发布页面的性能指标项的预测值;

发布单元1105,用于若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面。

可选的,还包括:

判断单元,用于判断所述待发布页面的性能指标项的预测值符合所述预设的发布标准。

请参考图12,其为本申请的又一电子设备实施例的示意图。由于设备实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的设备实施例仅仅是示意性的。

本实施例的一种电子设备,该电子设备包括:显示器1201;处理器1202;以及存储器1203,所述存储器被配置成存储发布移动应用程序页面的装置,所 述发布移动应用程序页面的装置被所述处理器执行时,包括如下步骤:获取待发布页面以及对其性能产生影响的特征数据;根据所述特征数据和预先生成的预测模型,生成所述待发布页面的性能指标项的预测值;若所述待发布页面的性能指标项的预测值符合预设的发布标准,则发布所述待发布页面。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1