一种基于指数平滑的智能电视应用预启动方法及设备与流程

文档序号:21199849发布日期:2020-06-23 19:11阅读:132来源:国知局
一种基于指数平滑的智能电视应用预启动方法及设备与流程
本申请实施例涉及智能电视领域,特别涉及一种基于指数平滑的智能电视应用预启动方法及设备。
背景技术
:智能电视与智能手机一样,具有全开放式平台,搭载了操作系统,可以由用户自行安装和卸载软件、游戏等第三方服务商提供的程序,通过多种程序不断对电视的功能进行扩充,可以满足不同用户的多种实际需求。应用启动速度是影响智能电视用户体验的重要指标,其主要提升措施除了提升应用自身性能外,通常可采用的主要是基于框架的定制优化,然而,其技术方案实现难度相对较大,并且容易受到android版本迭代的影响,导致现有技术中应用启动速度优化手段缺乏较高的适用性。技术实现要素:本申请提供了一种基于指数平滑的智能电视应用预启动方法,以解决用户在智能电视中打开应用时应用启动缓慢造成的用户体验不佳的问题。第一方面,本申请提供了一种基于指数平滑的智能电视应用预启动方法,包括:获取第一周期内多个用户打开应用的历史数据;对所述历史数据进行分时段采样,得到第一周期内用户使用应用的离散数据;将所述离散数据采用三次指数平滑算法生成预测信息并保存;其中,所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息;根据所述预测信息,在所述第一周期的下一个相同周期内的各个分时段中,后台启动与所述第一应用信息对应的应用。所述对所述历史数据进行分时段采样,得到第一周期内用户使用应用的离散数据的步骤包括:将所述第一周期分为若干个子周期;设置所述子周期的采样时间段;在任一所述采样时间段内每经过一个采样间隔时长进行一次采样过程;记录采样结果及采样个数值,作为第一周期内用户使用应用的离散数据。可选的,所述子周期分为第一子周期和第二子周期,其中第一子周期的周期长度大于第二子周期的周期长度;所述对所述历史数据进行分时段采样,得到第一周期内用户使用应用的离散数据的步骤包括:将所述第一周期分为若干个第一子周期和第二子周期;分别设置所述第一子周期和第二子周期的采样时间段;在所述第一子周期的采样时间段内每经过一个第一采样间隔时长进行一次采样过程;在所述第二子周期的采样时间段内每经过一个第二采样间隔时长进行一次采样过程;其中第一采样间隔时长大于第二采样间隔时长;记录采样结果及采样个数值,作为第一周期内用户使用应用的离散数据。可选的,所述采样过程包括:获取智能电视中预设数量的应用,并根据所述预设数量分别对应用进行编号;检测预设采样时长内,是否存在某一个应用启动时长超过第一预设时长;若存在,则输出启动时长超过第一预设时长的应用对应的编号值作为采样结果;若不存在,则输出“0”作为采样结果。可选的,将所述离散数据采用三次指数平滑算法生成预测信息并保存的步骤包括:将多个用户的离散数据代入公式:si=α(xi-pi-k)+(1-α)(si-1+ti-1);ti=β(si-si-1)+(1-β)ti-1;pi=γ(xi-si)+(1-γ)pi-k;其中,pi是指周期参量;k为采样个数值;α为数据平滑因子;β为趋势平滑因子;γ为季节改变平滑因子;α、β、γ为[0,1]之间的常数;计算当预测值xi+h与实际值误差最小时α、β、γ;其中xi+h=si+hti+pi-k+h;根据计算得到的α、β、γ生成预测信息并保存;所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息。可选的,所述方法还包括:获取所述第一周期的上一个相同周期内多个用户打开应用的历史数据;对所述历史数据进行分时段采样,得到所述第一周期的上一个相同周期内用户使用应用的离散数据;其中,所述预测信息包括在所述第一周期以及所述第一周期的上一个相同周期内的各个分时段中被使用的第一应用信息。可选的,在获取第一周期内多个用户打开应用的历史数据的步骤之前,所述方法还包括:获取用户输入的应用预启动指令。第二方面,本申请提供了一种基于指数平滑的智能电视应用预启动设备,包括:获取单元,被配置用于获取第一周期内多个用户打开应用的历史数据;采样单元,被配置用于对所述历史数据进行分时段采样,得到第一周期内用户使用应用的离散数据;算法单元,被配置用于将所述离散数据采用三次指数平滑算法生成预测信息并保存;其中,所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息;执行单元,被配置用于根据所述预测信息,在所述第一周期的下一个相同周期内的各个分时段中,后台启动与所述第一应用信息对应的应用。所述采样单元包括:划分子单元,被配置用于将所述第一周期分为若干个子周期;设置子单元,被配置用于设置所述子周期的采样时间段;采样子单元,被配置用于在任一所述采样时间段内每经过一个采样间隔时长进行一次采样过程;数据整合子单元,被配置用于记录采样结果及采样个数值,作为第一周期内用户使用应用的离散数据。可选的,所述子周期分为第一子周期和第二子周期,其中第一子周期的周期长度大于第二子周期的周期长度;所述划分子单元,还被配置用于将所述第一周期分为若干个第一子周期和第二子周期;所述设置子单元,还被配置用于分别设置所述第一子周期和第二子周期的采样时间段;所述采样子单元,还被配置用于在所述第一子周期的采样时间段内每经过一个第一采样间隔时长进行一次采样过程;在所述第二子周期的采样时间段内每经过一个第二采样间隔时长进行一次采样过程;其中第一采样间隔时长大于第二采样间隔时长。可选的,所述采样单元还包括:应用提取子单元,被配置用于获取智能电视中预设数量的应用,并根据所述预设数量分别对应用进行编号;采样结果输出子单元,被配置用于检测预设采样时长内,是否存在某一个应用启动时长超过第一预设时长;若存在,则输出启动时长超过第一预设时长的应用对应的编号值作为采样结果;若不存在,则输出“0”作为采样结果。可选的,所述算法单元被配置为:将多个用户的离散数据代入公式:si=α(xi-pi-k)+(1-α)(si-1+ti-1);ti=β(si-si-1)+(1-β)ti-1;pi=γ(xi-si)+(1-γ)pi-k;其中,pi是指周期参量;k为采样个数值;α为数据平滑因子;β为趋势平滑因子;γ为季节改变平滑因子;α、β、γ为[0,1]之间的常数;计算当预测值xi+h与实际值误差最小时α、β、γ;其中xi+h=si+hti+pi-k+h;根据计算得到的α、β、γ生成预测信息并保存;所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息。可选的,所述获取单元,还被配置用于获取所述第一周期的上一个相同周期内多个用户打开应用的历史数据;所述采样单元,还被配置用于对所述历史数据进行分时段采样,得到所述第一周期的上一个相同周期内用户使用应用的离散数据;其中,所述预测信息包括在所述第一周期以及所述第一周期的上一个相同周期内的各个分时段中被使用的第一应用信息。可选的,所述设备还包括:启动单元,被配置用于获取用户输入的应用预启动指令。本申请实施例提供的一种基于指数平滑的智能电视应用预启动方法,通过对用户使用数据的终端信息进行收集,结合应用使用数据特点,并且借助基于时间序列的三次指数平滑算法实现了对用户下一使用周期的应用使用可能性预测,以较小的软件代价预测用户可能使用的应用,并在指定时间段对可能使用的应用实施后台启动,极大地缩短了应用启动时长,优化用户的应用启动体验。附图说明为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请一种基于指数平滑的智能电视应用预启动方法的流程图;图2为图1所示出的方法中步骤s200在一种可行性实施例下的分解步骤图;图3为图1所示出的方法中步骤s200在另一种可行性实施例下的分解步骤图;图4为图1所示出的方法中步骤s240中生成的离散数据示意图;图5为本申请一种基于指数平滑的智能电视应用预启动方法在另一种实施例下的流程图;图6为本申请一种基于指数平滑的智能电视应用预启动设备的构成图;图7为图6所示出的设备中采样单元在一种可行性实施例中的构成图;图8为本申请一种基于指数平滑的智能电视应用预启动设备在另一种实施例下的构成图。具体实施方式本申请提供的方法和设备根据对用户打开应用的数据特征,对用户历史数据进行抽样和后台日志上报分析,进而对历史数据进行加工处理实现对下使用周期应用使用可能性的预测。其中,用户打开应用的数据特征不限于包括:一、在电视终端上,由于用户相对固定,鉴于个人具有偏好性,应用的使用也具有一定的规律性;二、由于电视的使用和应用的使用并不连续,即应用的使用具有离散型的特征;三、用户在不同时间段内使用应用的频次不等,例如可能周末观看时长较长,周中观看时间较短,因此应用使用具有一定的周期性。上述数据特征可与建立的离散时间序列形成相吻合的关联关系,进而可以采用本申请中的方法对用户历史数据进行加工。实施例一参见图1,为本申请一种基于指数平滑的智能电视应用预启动方法的流程图。由图1可知,本申请实施例提供的一种基于指数平滑的智能电视应用预启动方法包括:s100:获取第一周期内多个用户打开应用的历史数据;在本实施例中,获取第一周期内用户打开应用的历史数据,指的是从预设时长的周期内提取用户使用应用的数据信息,即用户在一段时间范围内每个时刻是否使用电视,如果使用电视,具体使用了哪个应用,其数据信息不限于包括使用该应用的时长,开始时间以及结束时间等等;对于第一周期时长的设定,可以是一周、两周、一个月等,应当根据所要预测的时段相应设置,例如想要对接下来的一周用户使用应用情况进行预测,则可以通过获取用户本周历史数据来进行下序计算过程。需要说明的是,虽然越接近要预测时段的历史数据对预测结果影响越紧密,但设置第一周期时长时也可适当地扩大历史数据的获取范围,例如想要对下一周用户使用应用情况进行预测,这时可以同时获取本周以及前一周的历史数据公共作为后序计算的数据基础。本实施例提供的方案是利用大量用户的历史数据来推测某一用户在未来一段时间内预使用应用的情况,因此需要将大量用户的数据值作为参考,应当认为,本实施例中提出的多个用户是指数量级较大的用户量(超过100000个有效数据点)。s200:对所述历史数据进行分时段采样,得到第一周期内用户使用应用的离散数据;在本实施例中,步骤s200的目的是通过对历史数据分时段采样,得到用户各时段中使用应用情况进行抽样汇总,具体的,由图2可知,该步骤可细化为下列步骤:s210:将所述第一周期分为若干个子周期;本实施例以第一周期设定为一周来进行说明,这时可以根据一周由七天组成,将第一周期分为七个子周期,从而对每个子周期分别采样。s220:设置所述子周期的采样时间段;采样时间段主要指应用(电视)可能被使用的时间段,通常可设定为8:00-24:00;s230:在任一所述采样时间段内每经过一个采样间隔时长进行一次采样过程;设置采样间隔可将连续时间段分为若干个采样区间,避免了整段采样浪费系统资源,并且,合理化的设置采样间隔还有利于有效反映应用使用情况,采样间隔可设置为40min、20min或其他任意时长,应当根据采样时间段内用户使用应用的频次相应选取采样间隔,频次越高相应的采样间隔也应越小,可使得到的数据更接近实际。进一步的,上述步骤s210-s230在划分周期及设置采样时间段、采样间隔时,考虑到用户的个人偏好、应用使用的周期性等因素,参见图3,需要对上述步骤相应改进为:s211:将所述第一周期分为若干个第一子周期和第二子周期;其中,第一子周期的周期长度大于第二子周期的周期长度;仍以上述第一周期设置为一周为例,此时,由于周末(周六、日)应用使用的频次要明显高于周一至周五,因此在划分时,可将第一周期划分为第一子周期(时长为一天、分别为周一至周五五个子周期)、第二子周期(时长为半天、分别为周六白天、周六晚上、周日白天、周日晚上四个子周期)。s221:分别设置所述第一子周期和第二子周期的采样时间段;根据上述子周期的划分,相应的设置第二子周期中的采样时间段分为8:00-18:00/18:00-24:00两个时间段。s231:在所述第一子周期的采样时间段内每经过一个第一采样间隔时长进行一次采样过程;在所述第二子周期的采样时间段内每经过一个第二采样间隔时长进行一次采样过程;其中第一采样间隔时长大于第二采样间隔时长。按照上例,可设置第一子周期内的第一采样间隔为40min,第二子周期内的第二采样间隔为20min。在上述约定条件下,第一周期内的所有采样点分布如下表所示:采样点的总数为240。需要说明的是,上述采样点设置条件仅为示例性,在其他实施例中,根据实际需求,可相应设置不同的子周期、采样时间段及采样间隔以得到不同的采样点数量。进一步的,在上述步骤s230和s231中,采样过程可细化为:s2301:获取智能电视中预设数量的应用,并根据所述预设数量分别对应用进行编号;其中,预设数量的应用是指智能电视系统内配置的最影响应用启动速度的应用,以十个为例,分为对每个应用相应编号如下表所示:应用名称编号应用11应用22应用33应用44应用55应用66应用77应用88应用99应用1010s2302:检测预设采样时长内,是否存在某一个应用启动时长超过第一预设时长;其中,采样时长为监测应用使用的总时间,例如可以设置为20min,第一预设时长是指判定应用是否使用的最小时长,例如,当第一预设时长为10min时,表示在20min钟的采样时长内,如果有某一个应用(例如应用7)使用时间超过10min,则认为该应用在该采样点下被使用,这时,则输出启动时长超过第一预设时长的应用对应的编号值(7)作为采样结果;若不存在,则输出“0”作为采样结果,表示该采样点下没有任何一个应用被使用。s240:记录采样结果及采样个数值,作为第一周期内用户使用应用的离散数据。将所有采样结果整合,并由图4所示出的离散数据示意图表示。图中,纵坐标的取值范围为[0,10]的整数,分别表示对应的应用,横坐标的取值范围为[0,240]的整数,分别代表每个采样点。将每个采样点输出的采样结果位于同一坐标系中显示,示出了用户在一周内的使用数据的特征。s300:将所述离散数据采用三次指数平滑算法生成预测信息并保存;其中,所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息;由于本申请中用户的历史数据为离散型、并且具有周期性时间序列特征,因此可以采用三次指数平滑算法进行周期性预测计算。其核心思想为:如果预测下一个季节第n个点的季节分量时,需要指数平滑第考虑当前季节第n个点的季节分量以及上个季节第n个点的季节分量。具体的,步骤s300包括:将多个用户的离散数据代入累加性公式:si=α(xi-pi-k)+(1-α)(si-1+ti-1);ti=β(si-si-1)+(1-β)ti-1;pi=γ(xi-si)+(1-γ)pi-k;其中,pi是指周期参量;k为采样个数值,本实施例中取240;α为数据平滑因子;β为趋势平滑因子;γ为季节改变平滑因子;α、β、γ为[0,1]之间的常数;计算当预测值xi+h与实际值误差最小时α、β、γ;其中xi+h=si+hti+pi-k+h;借助大数据处理(前述的超过100000个有效数据点代入运算),多次试验和最小二乘法来最小化误差,计算出一组数值为α=0.6、β=0.4、γ=0.3,在该场景下,给定测试样本,一个均值周期内预测值与实际值的误差仅在0.227左右。因此,经过步骤s300的运算,可以得出与实际误差最接近的预测值。根据计算得到的α、β、γ生成预测信息并保存;所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息,其中第一应用信息至少包括在预测时间段内某一个分时段中概率最高的被使用应用,该应用可能不存在,即当前时段用户最有可能不使用任何应用,该应用也可能有且只有一个,即当前时段用户最有可能使用该应用。s400:根据所述预测信息,在所述第一周期的下一个相同周期内的各个分时段中,后台启动与所述第一应用信息对应的应用。由于预测信息给出了各个分时段中最有可能被使用的应用,提前实现后台启动,经多次试验结果显示有约77%的概率在预设时间段(例如20min)内遇到用户打开目标应用,对于取样的10个应用,如果后台已经提前启动,此时用户再打开应用,平均会比未后台启动(冷启动)时优化178ms的应用启动时长,极大提高了用户打开应用的速度及体验度。由以上技术方案可知,本申请实施例提供的一种基于指数平滑的智能电视应用预启动方法通过对用户使用数据的终端信息进行收集,结合应用使用数据特点,并且借助基于时间序列的三次指数平滑算法实现了对用户下一使用周期的应用使用可能性预测,以较小的软件代价预测用户可能使用的应用,并在指定时间段对可能使用的应用实施后台启动,极大地缩短了应用启动时长,优化用户的应用启动体验。实施例二本实施例二与前述实施例一的不同之处在于:需要获取到的用户历史数据不仅限于与预测周期相同时长的时间段,还可以包括时间范围更早的周期,由图5所示,相应的方法还包括:s500:获取所述第一周期的上一个相同周期内多个用户打开应用的历史数据;s600:对所述历史数据进行分时段采样,得到所述第一周期的上一个相同周期内用户使用应用的离散数据;其中,所述预测信息包括在所述第一周期以及所述第一周期的上一个相同周期内的各个分时段中被使用的第一应用信息。本实施例中利用了相邻周期间相互影响的特点,即上一个相同周期虽然与预测周期不相邻,但其影响了当前周期的数据,进而也会对预测周期的预测结果产生影响,增加该部分的离散数据,也会相应增加预测的精确度。本实施例中的其它技术特征均实施例一中公开的内容相同,其说明可参见前述实施例,在此不再赘述。实施例三本实施例三是在上述实施例一、二基础上的一种优化实施例,与实施例一或二不同之处在于,在所有方法步骤开始前,所述方法还包括:s001:获取用户输入的应用预启动指令。增加获取应用预启动指令的步骤,使得用户可以采取操作选择是否在整机打开该项功能。这是考虑了用户个人偏好性提出的优化方案,举例来说,某一用户家中的电视平时多为儿童观看,其使用频率较高的应用为教育类、视频播放类或游戏类应用等,此时如果因故改变了常住用户的性质,例如变为老人、成年人居住而没有了儿童,则应用预测方法预启动任何一种应用显然都不能满足当前用户的需求,而预启动应用增加了无谓的资源浪费及系统占用,所以可以通过关闭该功能有效避免了上述问题的发生。具体的,步骤s001的实现方式可以是在android系统中,后台应用启动配置方法时,通过在startactivity时的options中添加maketasklaunchbehindoptions来实现,然后,在设置中添加“应用预测启动”开关决定是否开启该功能。参见图6,为本申请一种基于指数平滑的智能电视应用预启动设备的构成图;由图6可知,本申请还提供了一种与前述方法对应的设备,所述设备包括:获取单元10,被配置用于获取第一周期内多个用户打开应用的历史数据;采样单元20,被配置用于对所述历史数据进行分时段采样,得到第一周期内用户使用应用的离散数据;算法单元30,被配置用于将所述离散数据采用三次指数平滑算法生成预测信息并保存;其中,所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息;执行单元40,被配置用于根据所述预测信息,在所述第一周期的下一个相同周期内的各个分时段中,后台启动与所述第一应用信息对应的应用。进一步的,由图7可知,所述采样单元20包括:划分子单元21,被配置用于将所述第一周期分为若干个子周期;设置子单元22,被配置用于设置所述子周期的采样时间段;采样子单元23,被配置用于在任一所述采样时间段内每经过一个采样间隔时长进行一次采样过程;数据整合子单元24,被配置用于记录采样结果及采样个数值,作为第一周期内用户使用应用的离散数据。进一步的,所述子周期分为第一子周期和第二子周期,其中第一子周期的周期长度大于第二子周期的周期长度;所述划分子单元21,还被配置用于将所述第一周期分为若干个第一子周期和第二子周期;所述设置子单元22,还被配置用于分别设置所述第一子周期和第二子周期的采样时间段;所述采样子单元23,还被配置用于在所述第一子周期的采样时间段内每经过一个第一采样间隔时长进行一次采样过程;在所述第二子周期的采样时间段内每经过一个第二采样间隔时长进行一次采样过程;其中第一采样间隔时长大于第二采样间隔时长。进一步的,所述采样单元20还包括:应用提取子单元25,被配置用于获取智能电视中预设数量的应用,并根据所述预设数量分别对应用进行编号;采样结果输出子单元26,被配置用于检测预设采样时长内,是否存在某一个应用启动时长超过第一预设时长;若存在,则输出启动时长超过第一预设时长的应用对应的编号值作为采样结果;若不存在,则输出“0”作为采样结果。进一步的,所述算法单元30被配置为:将多个用户的离散数据代入公式:si=α(xi-pi-k)+(1-α)(si-1+ti-1);ti=β(si-si-1)+(1-β)ti-1;pi=γ(xi-si)+(1-γ)pi-k;其中,pi是指周期参量;k为采样个数值;α为数据平滑因子;β为趋势平滑因子;γ为季节改变平滑因子;α、β、γ为[0,1]之间的常数;计算当预测值xi+h与实际值误差最小时α、β、γ;其中xi+h=si+hti+pi-k+h;根据计算得到的α、β、γ生成预测信息并保存;所述预测信息包括在所述第一周期内的各个分时段中被使用的第一应用信息。进一步的,所述获取单元10,还被配置用于获取所述第一周期的上一个相同周期内多个用户打开应用的历史数据;所述采样单元20,还被配置用于对所述历史数据进行分时段采样,得到所述第一周期的上一个相同周期内用户使用应用的离散数据;其中,所述预测信息包括在所述第一周期以及所述第一周期的上一个相同周期内的各个分时段中被使用的第一应用信息。进一步的,由图8可知,所述设备还包括:启动单元50,被配置用于获取用户输入的应用预启动指令。本申请提供的设备完全对应于前述各个实施例中的方法,对于设备的各项说明参照上述方法中的说明,在此不再赘述。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1