CN108228270A - 启动资源加载方法及装置 - Google Patents

启动资源加载方法及装置 Download PDF

Info

Publication number
CN108228270A
CN108228270A CN201611184027.6A CN201611184027A CN108228270A CN 108228270 A CN108228270 A CN 108228270A CN 201611184027 A CN201611184027 A CN 201611184027A CN 108228270 A CN108228270 A CN 108228270A
Authority
CN
China
Prior art keywords
context data
historical
similarity
current context
current
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.)
Granted
Application number
CN201611184027.6A
Other languages
English (en)
Other versions
CN108228270B (zh
Inventor
付柳强
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201611184027.6A priority Critical patent/CN108228270B/zh
Priority to PCT/CN2017/107457 priority patent/WO2018113409A1/zh
Publication of CN108228270A publication Critical patent/CN108228270A/zh
Priority to US16/368,451 priority patent/US11169827B2/en
Application granted granted Critical
Publication of CN108228270B publication Critical patent/CN108228270B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种启动资源加载方法及装置,属于移动终端领域。该方法包括:获取当前情境对应的当前情境数据组,获取多个历史情境对应的历史情境数据组,将当前情境数据组和每个历史情境数据组输入相似度模型,计算得到当前情境和每个历史情境之间的相似度;根据相似度最大的N个历史情境对应的历史应用程序确定当前情境对应的预测应用程序,将预测应用程序的启动资源预加载至内存中;由于移动终端会对即将启动的预测应用程序进行预测,并预先加载预测应用程序启动时所需的启动资源至内存,当移动终端接收到用户的点击操作时,移动终端可以直接使用预先加载好的启动资源来启动该预测应用程序,减少了移动终端启动应用程序所耗费的时间。

Description

启动资源加载方法及装置
技术领域
本发明实施例涉及移动终端领域,特别涉及一种启动资源加载方法及装置。
背景技术
随着移动终端的普及和发展,移动终端中的应用程序的数量和种类越来越丰富,用户可以通过移动终端安装和使用各种应用程序。
用户在使用应用程序时,需要触发移动终端启动该应用程序。现有技术中,用户在移动终端中点击应用程序的图标,移动终端接收到用户的点击操作后,开始加载应用程序启动时所需的启动资源以启动该应用程序。其中,启动资源包括:该应用程序的代码、该应用程序在运行时所需要的UI(User Interface,用户界面)素材、该应用程序在运行时需要处理的数据等。
对于游戏类应用程序、画图类应用程序、邮箱类应用程序等应用程序来讲,由于启动时需要加载的启动资源较多,移动终端在接收到用户的点击操作至该应用程序完全启动需要耗费较多的时间。
发明内容
为了解决移动终端在接收到用户的点击操作至应用程序完全启动耗费的时间较多的问题,本发明实施例提供了一种启动资源加载方法及装置。所述技术方案如下:
第一方面,提供了一种启动资源加载方法,该方法包括:
获取当前情境对应的当前情境数据组,当前情境数据组包括用于描述当前运行情境下的至少一个当前情境数据;
获取多个历史情境对应的历史情境数据组,历史情境数据组包括用于描述历史运行情境的至少一个历史情境数据;
将当前情境数据组和每个历史情境数据组输入相似度模型,计算得到当前情境和每个历史情境之间的相似度;
根据相似度最大的N个历史情境对应的历史应用程序确定当前情境对应的预测应用程序,历史应用程序是在历史情境下运行的应用程序,N为正整数;
将预测应用程序的启动资源预加载至内存中,启动资源是启动预测应用程序时所需的资源。
第二方面,提供了一种启动资源加载装置,该装置包括:
第一获取模块,用于获取当前情境对应的当前情境数据组,当前情境数据组包括用于描述当前运行情境下的至少一个当前情境数据;
第二获取模块,用于获取多个历史情境对应的历史情境数据组,历史情境数据组包括用于描述历史运行情境的至少一个历史情境数据;
计算模块,用于将当前情境数据组和每个历史情境数据组输入相似度模型,计算得到当前情境和每个历史情境之间的相似度;
确定模块,用于根据相似度最大的N个历史情境对应的历史应用程序确定当前情境对应的预测应用程序,历史应用程序是在历史情境下运行的应用程序,N为正整数;
加载模块,用于将预测应用程序的启动资源预加载至内存中,启动资源是启动预测应用程序时所需的资源。
本发明实施例提供的技术方案带来的有益效果是:
通过移动终端根据相似度模型计算当前情境与各个历史情境之间的相似度,由于移动终端在处于相似的情境下时有较大的概率会启动相同的应用程序,则移动终端将相似度较高的历史情境对应的历史应用程序预测为移动终端即将启动的预测应用程序,并预先加载预测应用程序启动时所需的启动资源至内存,当移动终端接收到用户的点击操作时,移动终端可以直接使用预先加载好的启动资源来启动该预测应用程序,从而减少了移动终端启动应用程序所耗费的时间。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明各个实施例涉及的一种实施环境的结构示意图;
图2是本发明一示例性实施例示出的一种启动资源加载方法的流程图;
图3是本发明另一示例性实施例示出的一种启动资源加载方法的流程图;
图4是本发明另一示例性实施例示出的一种启动资源加载方法的流程图;
图5是本发明另一示例性实施例示出的一种启动资源加载方法的流程图;
图6是本发明另一示例性实施例示出的一种启动资源加载方法的流程图;
图7是本发明另一示例性实施例示出的一种启动资源加载方法的流程图;
图8是本发明一示例性实施例示出的一种启动资源加载装置的框图;
图9是本发明一示例性实施例示出的一种移动终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明各个实施例提供的启动资源加载方法,可以由诸如智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器和MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)之类的移动终端来实现,移动终端中安装有应用程序。
本发明各个实施例涉及的一种启动资源加载方法的实施环境还可以如图1所示,该实施环境中包括:移动终端120和服务器140。
移动终端120通过无线网络与服务器140相连。
服务器140可以是一台服务器、多台服务器组成的服务器集群或云计算中心,服务器140具有模型训练功能。
可选地,上述的无线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(MetropolitanArea Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(HyperText Mark-up Language,HTML)、可扩展标记语言(Extensible Markup Language,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(SecureSocket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet Protocol Security,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
图2是本公开的一个示例性实施例示出的启动资源加载方法的流程图。本实施例以该方法用于上述移动终端中来举例说明。该方法包括:
步骤201,获取当前情境对应的当前情境数据组,当前情境数据组包括用于描述当前运行情境下的至少一个当前情境数据。
可选的,当前情境数据包括用户情境数据、环境情境数据和终端情境数据中的至少一种。用户情境数据用于描述在移动终端当前运行时使用移动终端的用户的信息,用户情境数据包括用户的姓名、性别、年龄、职业、心情和教育背景中的至少一种。环境情境数据用于描述移动终端当前运行时所处的环境,环境情境数据包括时间、位置、天气情况、温度、光照、声音和交通情况中的至少一种。终端情境数据用于描述移动终端,终端情境数据包括移动终端的终端标识、网络信息和设备类型中的至少一种。
比如,一组示意性的当前情境数据组可以以集合的形式表示为:{终端标识,时间,性别,年龄,位置,温度}。
可选的,当前情境数据采用量化值的形式和/或文本形式进行表示。比如,当当前情境数据包括性别时,当前情境数据可以是“男”;当当前情境数据包括温度时,当前情境数据可以是“20℃”。可选的,当一个当前情境数据采用量化值的形式进行表示时,该当前情境数据具体采用数值、区间和坐标中的任意一种形式进行表示。比如,当前情境数据中包括的用户的年龄以数值的形式进行表示,则当前情境数据包括年龄“18”;再比如,当前情境数据包括的温度以区间的形式进行表示,则当前情境数据包括温度“18℃-25℃”;再比如,当前情境数据包括的位置以坐标形式进行标识,则当前情境数据包括位置“(40°N,116°E)”。
步骤202,获取多个历史情境对应的历史情境数据组,历史情境数据组包括用于描述历史运行情境的至少一个历史情境数据。
其中,历史情境数据的情境数据类型和表示形式均可以结合参考上述步骤201中的当前情境数据,本实施例对此不再赘述。
可选的,移动终端内的数据库中存储有各个历史情境对应的历史情境数据组。可选的,移动终端获取数据库中的各个历史情境对应的历史情境数据组,或者,获取数据库中的部分历史情境对应的历史情境数据组。
当移动终端获取数据库中的部分历史情境对应的历史情境数据组时,可选的,移动终端获取数据库中最近的M个历史情境对应的历史情境数据组,或者,移动终端随机获取M个历史情境对应的历史情境数据组,M为正整数。
在实际实现时,步骤202和步骤201没有特定的先后顺序,且通常是同时执行的。
步骤203,将当前情境数据组和每个历史情境数据组输入相似度模型,计算得到当前情境和每个历史情境之间的相似度。
其中,相似度模型是移动终端和/或服务器预先根据至少一组历史情境样本训练得到的模型,每组历史情境样本包括两个历史情境各自对应的历史情境数据,以及两个历史情境之间的情境相似度分值,情境相似度分值是根据两个历史情境对应的历史应用程序之间的相似度标定的。
步骤204,根据相似度最大的N个历史情境对应的历史应用程序确定当前情境对应的预测应用程序,N为正整数。
其中,历史应用程序是在历史情境下运行的应用程序,数据库中除了保存有历史情境对应的历史情境数据组之外,还保存有历史情境对应的历史应用程序,移动终端从数据库中获取每个历史情境所对应的历史应用程序。
可选的,移动终端确定相似度最大的N个历史情境对应的历史应用程序为预测应用程序,N的取值由系统预设或用户自定义。在其他实现方式中,可选的,移动终端确定与当前情境之间的相似度大于相似度阈值的历史情境,确定该历史情境对应的历史应用程序为预测应用程序,相似度阈值是系统预设值或用户自定义值,本实施例对此不做限定。
在一个示例性的例子中,历史情境1-历史情境5分别与当前情境之间的相似度如下表一所示:
表一
假设N=2,则移动终端确定的预测应用程序包括历史情境1对应的历史应用程序以及历史情境4对应的历史应用程序。再比如,相似度阈值为0.5,则移动终端确定的预测应用程序包括历史情境1对应的历史应用程序、历史情境3对应的历史应用程序,以及历史情境4对应的历史应用程序。
步骤205,将预测应用程序的启动资源预加载至内存中,启动资源是启动预测应用程序时所需的资源。
综上所述,本发明实施例提供的启动资源加载方法,移动终端根据相似度模型计算当前情境与各个历史情境之间的相似度,由于移动终端在处于相似的情境下时有较大的概率会启动相同的应用程序,则移动终端将相似度较高的历史情境对应的历史应用程序预测为移动终端即将启动的预测应用程序,并预先加载预测应用程序启动时所需的启动资源至内存,当移动终端接收到用户的点击操作时,移动终端可以直接使用预先加载好的启动资源来启动该预测应用程序,减少了移动终端启动应用程序所耗费的时间。
可选的,在上述示例性实施例中,移动终端在使用相似度模型计算当前情境与历史情境之间的相似度之前,该方法还包括模型训练的过程,具体包括如下几个步骤,如图3所示:
步骤301,获取至少一组历史情境样本。
其中,每组历史情境样本包括两个历史情境各自对应的历史情境数据,以及两个历史情境之间的情境相似度分值,情境相似度分值是根据两个历史情境对应的历史应用程序之间的相似度标定的,情境相似度分值与历史应用程序之间的相似度之间的关系是系统预设的,且情境相似度分值与历史应用程序之间的相似度成正比。
可选的,两个历史应用程序之间的相似度通过计算两个应用程序对应的标签之间的相似度确定,例如,通过计算两个历史应用程序对应的标签中相同的标签所占的比例确定。
比如,假设相似度分值的取值范围为[0,1],当两个历史情境对应同一个历史应用程序时,则两个历史情境之间的情境相似度分值为1;假设历史情境a对应的历史应用程序a对应的标签包括美食、团购和手机,历史情境b对应的历史应用程序b对应的标签包括手机、服装和KTV,则历史应用程序a与历史应用程序b之间的相似度为1/3=0.33,历史情境a和历史情境b之间的相似度可以等于历史应用程序a与历史应用程序b之间的相似度0.33。
步骤302,根据历史情境样本对初始相似度模型进行训练,得到训练后的相似度模型。
其中,初始相似度模型中包括至少一个情境数据类型以及每个情境数据类型对应的初始权重,其中,初始权重是系统预设或用户自定义的权重。一个可能的实现方式为,每个情境数据类型对应初始权重均相等,当有4个情境数据类型时,每个情境数据类型对应的初始权重均为0.25。
可选的,初始相似度模型是人工神经网络、Adaboost、SVM(Support VectorMachine,支持向量机)、遗传算法和朴素贝叶斯模型中的任意一种模型。可选的,人工神经网络可以是R-CNN(Region-based Convolutional Neural Networks,基于区域候选的深度卷积网络)、Fast R-CNN学习算法或Faster R-CNN学习算法。
当本实施例的实施环境如图1所示时,为了减少移动终端在训练相似度模型时的数据处理量,移动终端将各个历史情境样本发送给具有模型训练能力的服务器,由服务器根据历史情境样本训练得到相似度模型。
需要说明的是,步骤301和步骤302所涉及的模型训练过程,通常是在上述步骤201之前执行的,但在实际实现时,也可以是与步骤201和步骤202同时执行的,本实施例对此不做限定。
在实际实现时,移动终端所处的运行情境包括大量的情境数据,则移动终端获取到的当前情境数据组包括至少两个当前情境数据,移动终端获取到的历史情境数据组中也包括至少两个历史情境数据,则上述步骤203包括如下几个步骤,如图4所示:
步骤401,计算当前情境数据组中的每个当前情境数据对应的子相似度。
其中,当前情境数据对应的子相似度是当前情境数据和历史情境数据组中属于同一个情境数据类型的历史情境数据之间的相似度,情境数据类型的含义可以结合上述步骤201,本实施例对此不再赘述。比如,当前情境数据是位置,则与当前情境数据属于同一个情境数据类型的历史情境数据也为位置,当前情境数据对应的子相似度是当前情境数据“位置”与历史情境数据“位置”之间的相似度。
当当前情境数据以不同的形式进行表示时,移动终端在计算当前情境数据对应的子相似度时使用的方法也不同,如下所示:
在第一种可能的实现方式中,当当前情境数据采用数值进行表示时,则移动终端按照如下公式计算子相似度:
其中,Sim(Si,Sj)是当前情境数据对应的子相似度,Si是当前情境数据组中的第i个当前情境数据,Sj是历史情境数据组中与Si属于同一个情境数据类型的历史情境数据,1≤i≤n,n是当前情境数据组中的当前情境数据的个数。
比如,当前情境数据“温度”为20℃,历史情境数据“温度”为25℃,则移动终端计算当前情境数据“温度”对应的子相似度为1-|20℃-25℃|/25℃=0.8。
在第二种可能的实现方式中,当前情境数据采用区间进行表示时,则移动终端按照如下公式计算子相似度:
其中,Si∈[ri s,ri e]、Sj∈[rj s,rj e],ri s是Si表示的当前情境数据的最小值,ri e是Si表示的当前情境数据的最大值,rj s是Sj表示的历史情境数据的最小值,rj e是Sj表示的历史情境数据的最大值。
比如,当前情境数据“温度”为18℃-25℃,则ri s=18℃,ri e=25℃;历史情境数据“温度”为20℃-30℃,则rj s=20℃,rj e=30℃,移动终端计算当前情境数据“温度”对应的子相似度为1-|18℃-20℃|/2*20℃-|25℃-30℃|/2*30℃≈0.867。
在第三种可能的实现方式中,当前情境数据采用坐标进行表示时,则移动终端按照如下公式计算子相似度:
其中,Si=(xi,yi)、Sj=(xj,yj)。
需要说明的是,当当前情境数据采用文本形式进行表示时,也可以将当前情境数据量化为以量化值的形式进行表示,再计算当前情境数据对应的子相似度。比如,当前情境数据是性别,则可以将“男”量化为1,将“女”量化为0,本实施例对此不做限定,本发明实施例以量化值的形式进行表示的当前情境数据为例进行解释。
步骤402,将每个当前情境数据对应的子相似度按照当前情境数据所属的情境数据类型对应的权重相加,得到当前情境与历史情境之间的相似度。
可选的,移动终端按照如下公式计算相似度:
其中,pi是Si所属的情境数据类型对应的权重,pi的取值是在训练得到相似度模型的过程中训练得到的,Σpi=1,当前情境数据不同时,Sim(Si,Sj)可以是使用上述三种可能的实现方式中的任意一种可能的实现方式计算得到的。
比如,C1和C2分别包括声音、温度和位置,C1={声音1,温度1,位置1},C2={声音2,温度2,位置2},其中,C1和C2中的声音是以数值形式进行表示,温度以区间形式进行表示,位置以坐标形式进行表示,则移动终端使用上述步骤401中的第一种可能的实现方式计算C1中的声音1对应的子相似度Sim(声音),假设Sim(声音)=0.7;使用上述第二种可能的实现方式计算C1中的温度1对应的子相似度Sim(温度),假设Sim(温度)=0.9;使用上述第三种可能的实现方式计算C1中的位置1对应的子相似度Sim(位置),假设Sim(位置)=0.4。具体的计算方式可以结合上述步骤401中的举例,本实施例对此不再赘述。
假设训练得到的相似度模型为Sim(C1,C2)=0.2*Sim(声音)+0.2*Sim(温度)+0.6*Sim(位置)=0.2*0.7+0.2*0.9+0.6*0.4=0.56。
需要说明的是,上述示例性的例子是以当前情境数据组中的每一个当前情境数据都存在与其属于同一个情境数据类型的历史情境数据为例,在实际实现时,对于某一个当前情境数据,历史情境数据组中可能不存在与其属于同一个情境数据类型的历史情境数据,比如在上述示例性的例子中,C2={声音2,温度2},C2中并不包括位置,则移动终端不计算位置这个当前情境数据对应的子相似度。在本发明实施例中,以各个历史情境对应的历史情境数据中包括的数据类型都相同来举例说明,但对此不构成限定。
在实际实现时,移动终端在处于当前情境启动预测应用程序时,可能会因为突发事件的打断而改为启动其他应用程序,比如,移动终端在将要启动播放类应用程序时,在后台运行的即时通信类客户端接收到即时通信消息,则用户可能会在回复即时通信消息的过程中打开图片类应用程序,则可选的,在基于上述各个实施例的其他可选实施例中,移动终端并不是直接将相似度最大的N个历史情境对应的历史应用程序确定为预测应用程序,则上述步骤204包括如下几个步骤,如图5所示:
步骤501,根据N个历史情境各自对应的相似度,确定出历史情境对应的历史应用程序的推荐权重。
其中,推荐权重的取值范围为[0,1],推荐权重与历史情境和当前情境之间的相似度成正比,历史情境与当前情境之间的相似度越大,该历史情境对应的历史应用程序的推荐权重越大,相似度与推荐权重之间的对应关系是系统预设或用户自定义的。为了减少移动终端的数据处理量,移动终端确定与当前情境之间的相似度最大的N个历史情境对应的历史应用程序的推荐权重,在实际实现时,移动终端也可以确定每个历史情境对应的历史应用程序的推荐权重。
步骤502,获取已经处于运行状态的当前应用程序。
其中,处于运行状态的当前应用程序包括在移动终端的前台运行的应用程序和在移动终端的后台运行的应用程序。在实际实现时,步骤502与步骤501没有特定的先后顺序,且这两个步骤通常是同时运行的。
步骤503,确定每个历史应用程序相对于当前应用程序的关联启动概率。
移动终端在运行一个应用程序的过程中,可能会关联启动其他的应用程序,比如,应用程序在运行购物类应用程序的过程中,通常会触发启动支付类应用程序,则购物类应用程序与支付类应用程序有很大的概率会关联启动;移动终端采集应用程序之间互相关联启动的数据作为关联启动样本,根据预定训练算法对关联启动样本训练得到关联启动模型,根据关联启动模型确定每个历史应用程序的关联启动概率,关联启动概率用于表征在当前应用程序的运行过程中,历史应用程序被关联启动的概率,历史应用程序被当前应用程序关联启动的概率越大,该历史应用程序相对于当前应用程序的关联启动概率越大,关联启动概率的取值范围为[0,1]。同理,移动终端确定与当前情境之间的相似度最大的N个历史情境对应的历史应用程序相对于当前应用程序的关联启动概率,或者确定移动终端包括的各个应用程序相对于当前应用程序的关联启动概率,预定训练算法的含义可以结合上述步骤302,本实施例对此不再赘述。
步骤504,在N个历史应用程序中,将推荐权重和对应的关联启动概率的乘积最大的P个历史应用程序确定为预测应用程序,P为大于等于1的整数。
当P=1时,移动终端通过计算确定预测应用程序,其中,Q是N个历史应用程序中使ωii取最大值时的历史应用程序,ωi是推荐权重,λi是关联启动概率。
比如,移动终端确定与当前情境之间的相似度最大的3个历史情境对应的历史应用程序分别为历史应用程序a、历史应用程序b和历史应用程序c,历史应用程序a对应的推荐权重为0.5,历史应用程序b对应的推荐权重为0.3,历史应用程序c对应的推荐权重为0.2。移动终端根据关联启动模型计算得到历史应用程序a的关联启动概率为0.1,历史应用程序b的关联启动概率为0.3,历史应用程序c对应的关联启动概率为0.8。则移动终端计算得到历史应用程序a对应的推荐权重和关联启动概率的乘积为0.05,历史应用程序b对应的推荐权重和关联启动概率的乘积为0.09,历史应用程序c对应的推荐权重和关联启动概率的乘积为0.16,假设P=1,则移动终端最终确定历史应用程序c为预测应用程序。
综上所述,本发明实施例提供的启动资源加载方法,移动终端并不是直接确定与当前情境相似度最高的若干个历史情境对应的历史应用程序为预测应用程序,而是综合分析已经处于运行状态的当前应用程序是否会关联启动其他应用程序,提高了确定得到的预测应用程序的准确性,避免了加载错误的预测应用程序的资源时引起的资源浪费。
可选的,在基于上述实施例的其他可选实施例中,该方法还包括如下几个步骤,如图6所示:
步骤601,确定当前情境下实际启动的应用程序。
步骤602,当实际启动的应用程序与预测应用程序不同时,根据当前情境数据组与实际启动的应用程序更新相似度模型中的各个情境数据类型对应的权重。
综上所述,本发明实施例提供的启动资源加载方法,移动终端在预测的预测应用程序错误时,根据实际运行结果不断更新相似度模型中的权重,提高了确定得到的相似度模型的准确性,提高确定得到的预测应用程序的准确性,避免了加载错误的预测应用程序的资源时引起的资源浪费。
可选的,在上述各个实施例中,移动终端获取到的当前情境数据组中当前情境数据通常是经过数据预处理后的情境数据,则上述步骤201在实现时,包括如下几个步骤,如图7所示:
步骤701,采集当前情境对应的原始情境数据组。
其中,原始情境数据组包括用于描述当前运行情境下的至少一个原始情境数据。可选的,移动终端确定当前运行情境下自身的终端标识、网络信息、设备类型和运行线程等终端信息作为原始情境数据,和/或,记录当前运行情境下用户的浏览记录、下载记录、用户填写的个人信息和用户填写的评分反馈等运行数据作为原始情境数据。
可选的,移动终端通过传感器组件采集当前运行情境下的环境信息作为原始情境数据,传感器组件包括:重力传感器、加速度传感器、磁场传感器、陀螺仪、光线传感器、距离传感器、GPS(Global Positioning System,全球定位系统)、指纹传感器和温度传感器等;比如,移动终端通过GPS采集位置,通过温度传感器采集温度等。
可选的,移动终端从服务器中获取原始情境数据,比如,从服务器中获取温度。
步骤702,使用预定算法对原始情境数据组的原始情境数据进行预处理,生成当前情境对应的当前情境数据组。
其中,预定算法用于对原始情境数据进行数据清理、数据集成、数据规约和数据转换中的至少一种。其中:
预定算法用于对原始情境数据进行平滑噪声数据、填充缺失数据,以及删除错误数据等数据清理。可选的,预定算法包括贝叶斯网络算法。
预定算法用于对移动终端使用多种方法采集到的原始情境数据进行数据集成,移动终端使用不同方法可能会采集到属于同一情境数据类型的多个原始情境数据,该多个原始情境数据相同或者不同,比如,移动终端可以通过温度传感器采集到温度,也可以从服务器中获取到温度,移动终端通过温度传感器采集到的温度与从服务器中获取到的温度的差值可以是在误差范围内,导致原始情境数据的数据冗余;也可能超过误差范围,导致原始情境数据的数据不一致,为了解决数据冗余和数据不一致的问题,可选的,预定算法包括诸如卡方检验、相关系数分析和协方差分析等其他相关分析法。
预定算法用于对原始情境数据进行数据规约以减少原始情境数据的数量。可选的,预定算法包括主成分分析法、小波变换和抽样算法等。
预定算法用于对原始情境数据进行数据转换从而将原始情境数据转换成统一形式的数据,比如,将不同数量级的原始情境数据转换为同一数量级的情境数据,例如将各个原始情境数据都转换为[0,1]之间的情境数据;再比如,转换为同一单位的情境数据,例如将华氏温度数值表示的温度转换为摄氏温度数值表示的温度。
步骤703,使用语义分析方法对原始情境数据组中的原始情境数据进行预处理,生成当前情境对应的当前情境数据组。
可选的,移动终端使用语义分析方法对原始情境数据组中的各个原始情境数据进行预处理后生成的当前情境数据组包括:处理后的原始情境数据和/或逻辑推理生成的情境数据,比如,根据用户播放的音乐类型推理生成用户的心情。
实际实现时,移动终端执行上述步骤702和步骤703中的至少一种,当移动终端既执行上述步骤702又执行上述步骤703时,上述步骤702和步骤703没有特定的先后顺序,且通常情况下是同时执行的。
另外,在上述各个实施例中,移动终端的数据库中存储的历史情境对应的历史情境数据组和历史应用程序是移动终端在历史运行情境下获取到并存储在数据库中的,移动终端获取历史情境对应的历史情境数据组的方法可以结合上述图7所示的实施例,本实施例对此不再赘述。在实际实现时,移动终端会获取到大量历史情境的历史情境数据组,则为了减少移动终端在计算当前情境和历史情境之间的相似度时的运算量,可选的,移动终端先对各个历史情境的历史情境数据组进行聚类,再将每一个历史情境类对应的历史情境数据组存储在数据库中,使用各个历史情境类对应的历史情境数据组训练得到相似度模型,并根据相似度模型计算当前情境与各个历史情境类之间的相似度。具体的,移动终端计算各个历史情境之间的相似度,确定相似度大于预定阈值的历史情境属于与同一个历史情境类,预定阈值是系统预设值或用户自定义值。移动终端计算各个历史情境之间的相似度的方法可以结合上述实施例示出的计算当前情境与历史情境之间的相似度的方法,本实施例对此不再赘述。
比如,移动终端获取到100个历史情境对应的历史情境数据组,若不进行聚类,则移动终端需要分别计算当前情境与这100个历史情境之间的相似度,移动终端对100个历史情境进行聚类,聚类得到10个历史情境类,则移动终端只需当前情境与这10个历史情境类之间的相似度,减少了移动终端的运算处理量。
请参考图8,其示出了本发明一个实施例中提供的启动资源加载装置的结构示意图。该装置可以通过软件、硬件或两者的结合实现成为上述方法实施例中的移动终端。该装置包括:
第一获取模块810,用于执行上述步骤201。
第二获取模块820,用于执行上述步骤202。
计算模块830,用于执行上述步骤203。
确定模块840,用于执行上述步骤204。
加载模块850,用于执行上述步骤205。
可选的,计算模块830还包括如下几个单元:
计算单元,用于执行上述步骤401。
加权单元,用于执行上述步骤402。
可选的,确定模块840还包括如下几个单元:
第一确定单元,用于执行上述步骤501。
获取单元,用于执行上述步骤502。
第二确定单元,用于执行上述步骤503。
第三确定单元,用于执行上述步骤504。
可选的,第一获取模块810还用于执行上述步骤701-步骤703。
可选的,该装置还包括:
第三获取模块,用于执行上述步骤301。
模型训练模块,用于执行上述步骤302。
可选的,该装置还包括:
应用程序确定模块,用于执行上述步骤601。
更新模块,用于执行上述步骤602。
综上所述,本发明实施例提供的启动资源加载装置,移动终端根据相似度模型计算当前情境与各个历史情境之间的相似度,由于移动终端在处于相似的情境下时有较大的概率会启动相同的应用程序,则移动终端将相似度较高的历史情境对应的历史应用程序预测为移动终端即将启动的预测应用程序,并预先加载预测应用程序启动时所需的启动资源至内存,当移动终端接收到用户的点击操作时,移动终端可以直接使用预先加载好的启动资源来启动该预测应用程序,减少了移动终端启动应用程序所耗费的时间。
图9其示出了本发明一个实施例提供的移动终端900的框图,该移动终端可以包括射频(RF,Radio Frequency)电路901、包括有一个或一个以上计算机可读存储介质的存储器902、输入单元903、显示单元904、传感器905、音频电路906、无线保真(WiFi,WirelessFidelity)模块907、包括有一个或者一个以上处理核心的处理器908、以及电源909等部件。本领域技术人员可以理解,图9中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路901可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器908处理;另外,将涉及上行的数据发送给基站。通常,RF电路901包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber IdentityModule)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路901还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器902可用于存储软件程序以及模块,处理器908通过运行存储在存储器902的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器902可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器902还可以包括存储器控制器,以提供处理器908和输入单元903对存储器902的访问。
输入单元903可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元903可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器908,并能接收处理器908发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元903还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元904可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元904可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器908以确定触摸事件的类型,随后处理器908根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图9中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
移动终端还可包括至少一种传感器905,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路906、扬声器,传声器可提供用户与终端之间的音频接口。音频电路906可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路906接收后转换为音频数据,再将音频数据输出处理器908处理后,经RF电路901以发送给比如另一终端,或者将音频数据输出至存储器902以便进一步处理。音频电路906还可能包括耳塞插孔,以提供外设耳机与终端的通信。
WiFi属于短距离无线传输技术,终端通过WiFi模块907可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块907,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器908是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器902内的软件程序和/或模块,以及调用存储在存储器902内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器908可包括一个或多个处理核心;优选的,处理器908可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器908中。
终端还包括给各个部件供电的电源909(比如电池),优选的,电源可以通过电源管理系统与处理器908逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源909还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器908会运行存储在存储器902中的一个或一个以上的程序指令,从而实现上述各个方法实施例中所提供的启动资源加载方法。
需要说明的是:上述实施例提供的启动资源加载装置在进行加载启动资源时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将移动终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的启动资源加载方法和启动资源加载装置实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (22)

1.一种启动资源加载方法,其特征在于,所述方法包括:
获取当前情境对应的当前情境数据组,所述当前情境数据组包括用于描述当前运行情境下的至少一个当前情境数据;
获取多个历史情境对应的历史情境数据组,所述历史情境数据组包括用于描述历史运行情境的至少一个历史情境数据;
将所述当前情境数据组和每个所述历史情境数据组输入相似度模型,计算得到所述当前情境和每个所述历史情境之间的相似度;
根据相似度最大的N个历史情境对应的历史应用程序确定所述当前情境对应的预测应用程序,所述历史应用程序是在所述历史情境下运行的应用程序,N为正整数;
将所述预测应用程序的启动资源预加载至内存中,所述启动资源是启动所述预测应用程序时所需的资源。
2.根据权利要求1所述的方法,其特征在于,所述当前情境数据包括用户情境数据、环境情境数据和终端情境数据中的至少一种;
所述用户情境数据用于描述在所述移动终端当前运行时使用所述移动终端的用户的信息,所述用户情境数据包括所述用户的姓名、性别、年龄、职业、心情和教育背景中的至少一种;
所述环境情境数据用于描述所述移动终端当前运行时所处的环境,所述环境情境数据包括时间、位置、天气情况、温度、光照、声音和交通情况中的至少一种;
所述终端情境数据用于描述所述移动终端,所述终端情境数据包括所述移动终端的终端标识、网络信息和设备类型中的至少一种。
3.根据权利要求1所述的方法,其特征在于,所述当前情境数据组包括至少两个所述当前情境数据,所述历史情境数据组包括至少两个所述历史情境数据;
所述计算得到所述当前情境与每个所述历史情境之间的相似度,包括:
计算所述当前情境数据组中的每个所述当前情境数据对应的子相似度,所述子相似度是所述当前情境数据和所述历史情境数据组中属于同一个情境数据类型的所述历史情境数据之间的相似度;
将每个所述当前情境数据对应的子相似度按照所述当前情境数据所属的情境数据类型对应的权重相加,得到所述当前情境与所述历史情境之间的相似度。
4.根据权利要求3所述的方法,其特征在于,所述将每个所述当前情境数据对应的子相似度按照所述当前情境数据所属的情境数据类型对应的权重相加,得到所述当前情境与所述历史情境之间的相似度,包括:
其中,C1是所述当前情境,C2是所述历史情境,Sim(C1,C2)是所述当前情境和所述历史情境之间的相似度;n是所述当前情境数据组中的当前情境数据的个数,Si是所述当前情境数据组中的第i个所述当前情境数据,pi是Si所属的情境数据类型对应的权重,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据,Sim(Si,Sj)是所述当前情境数据对应的子相似度,n≥2且n为正整数。
5.根据权利要求3所述的方法,其特征在于,所述计算所述当前情境数据组中的每个所述当前情境数据对应的子相似度,包括:
当所述当前情境数据采用数值进行表示时,按照如下公式计算所述子相似度:
其中,Sim(Si,Sj)是所述当前情境数据对应的子相似度,Si是所述当前情境数据组中的第i个所述当前情境数据,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据。
6.根据权利要求3所述的方法,其特征在于,所述计算所述当前情境数据组中的每个所述当前情境数据对应的子相似度,包括:
当所述当前情境数据采用区间进行表示时,按照如下公式计算所述子相似度:
其中,Sim(Si,Sj)是所述当前情境数据对应的子相似度,Si是所述当前情境数据组中的第i个所述当前情境数据,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据,Si∈[ri s,ri e]、Sj∈[rj s,rj e];ri s是Si的最小值,ri e是Si的最大值,rj s是Sj的最小值,rj e是Sj的最大值。
7.根据权利要求3所述的方法,其特征在于,所述计算所述当前情境数据组中的每个所述当前情境数据对应的子相似度,包括:
当所述当前情境数据采用坐标进行表示时,按照如下公式计算所述子相似度:
其中,Sim(Si,Sj)是所述当前情境数据对应的子相似度,Si是所述当前情境数据组中的第i个所述当前情境数据,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据,Si=(xi,yi)、Sj=(xj,yj)。
8.根据权利要求1至7任一所述的方法,其特征在于,所述根据相似度最大的N个历史情境对应的历史应用程序确定所述当前情境对应的预测应用程序,包括:
根据所述N个历史情境各自对应的相似度,确定出所述历史情境对应的所述历史应用程序的推荐权重;
获取已经处于运行状态的当前应用程序;
确定每个所述历史应用程序相对于所述当前应用程序的关联启动概率,所述关联启动概率用于表征在所述当前应用程序的运行过程中,所述历史应用程序被关联启动的概率;
在所述N个历史应用程序中,将所述推荐权重和对应的所述关联启动概率的乘积最大的P个历史应用程序确定为所述预测应用程序,P为大于等于1的整数。
9.根据权利要求1至7任一所述的方法,其特征在于,所述获取当前情境对应的当前情境数据组,还包括:
采集所述当前情境对应的原始情境数据组,所述原始情境数据组包括用于描述当前运行情境下的至少一个原始情境数据;使用预定算法对所述原始情境数据组中的所述原始情境数据进行预处理,生成所述当前情境对应的所述当前情境数据组,所述预定算法用于对所述原始情境数据进行数据清理、数据集成、数据规约和数据转换中的至少一种;
和/或,
采集所述当前情境对应的原始情境数据组,所述原始情境数据组包括用于描述当前运行情境下的至少一个原始情境数据;使用语义分析方法对所述原始情境数据组中的所述原始情境数据进行预处理,生成所述当前情境对应的所述当前情境数据组。
10.根据权利要求1至7任一所述的方法,其特征在于,所述将所述当前情境数据组和每个所述历史情境数据组输入相似度模型之前,还包括:
获取至少一组历史情境样本,每组所述历史情境样本包括两个所述历史情境各自对应的所述历史情境数据,以及两个所述历史情境之间的情境相似度分值,所述情境相似度分值是根据两个所述历史情境对应的历史应用程序之间的相似度标定的;
根据所述历史情境样本对初始相似度模型进行训练,得到训练后的所述相似度模型,所述初始相似度模型中包括至少一个情境数据类型以及每个情境数据类型对应的初始权重。
11.根据权利要求3至7任一所述的方法,其特征在于,所述方法还包括:
确定所述当前情境下实际启动的应用程序;
当所述实际启动的应用程序与所述预测应用程序不同时,根据所述当前情境数据组与所述实际启动的应用程序更新所述相似度模型中的各个情境数据类型对应的所述权重。
12.一种启动资源加载装置,其特征在于,所述装置包括:
第一获取模块,用于获取当前情境对应的当前情境数据组,所述当前情境数据组包括用于描述当前运行情境下的至少一个当前情境数据;
第二获取模块,用于获取多个历史情境对应的历史情境数据组,所述历史情境数据组包括用于描述历史运行情境的至少一个历史情境数据;
计算模块,用于将所述当前情境数据组和每个所述历史情境数据组输入相似度模型,计算得到所述当前情境和每个所述历史情境之间的相似度;
确定模块,用于根据相似度最大的N个历史情境对应的历史应用程序确定所述当前情境对应的预测应用程序,所述历史应用程序是在所述历史情境下运行的应用程序,N为正整数;
加载模块,用于将所述预测应用程序的启动资源预加载至内存中,所述启动资源是启动所述预测应用程序时所需的资源。
13.根据权利要求12所述的装置,其特征在于,所述当前情境数据包括用户情境数据、环境情境数据和终端情境数据中的至少一种;
所述用户情境数据用于描述在所述移动终端当前运行时使用所述移动终端的用户的信息,所述用户情境数据包括所述用户的姓名、性别、年龄、职业、心情和教育背景中的至少一种;
所述环境情境数据用于描述所述移动终端当前运行时所处的环境,所述环境情境数据包括时间、位置、天气情况、温度、光照、声音和交通情况中的至少一种;
所述终端情境数据用于描述所述移动终端,所述终端情境数据包括所述移动终端的终端标识、网络信息和设备类型中的至少一种。
14.根据权利要求12所述的装置,其特征在于,所述当前情境数据组包括至少两个所述当前情境数据,所述历史情境数据组包括至少两个所述历史情境数据;所述计算模块包括:
计算单元,用于计算所述当前情境数据组中的每个所述当前情境数据对应的子相似度,所述子相似度是所述当前情境数据和所述历史情境数据组中属于同一个情境数据类型的所述历史情境数据之间的相似度;
加权单元,用于将每个所述当前情境数据对应的子相似度按照所述当前情境数据所属的情境数据类型对应的权重相加,得到所述当前情境与所述历史情境之间的相似度。
15.根据权利要求14所述的装置,其特征在于,所述加权单元,用于计算:
其中,C1是所述当前情境,C2是所述历史情境,Sim(C1,C2)是所述当前情境和所述历史情境之间的相似度;n是所述当前情境数据组中的当前情境数据的个数,Si是所述当前情境数据组中的第i个所述当前情境数据,pi是Si所属的情境数据类型对应的权重,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据,Sim(Si,Sj)是所述当前情境数据对应的子相似度,n≥2且n为正整数。
16.根据权利要求14所述的装置,其特征在于,所述计算单元,用于当所述当前情境数据采用数值进行表示时,按照如下公式计算所述子相似度:
其中,Sim(Si,Sj)是所述当前情境数据对应的子相似度,Si是所述当前情境数据组中的第i个所述当前情境数据,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据。
17.根据权利要求14所述的装置,其特征在于,所述计算单元,用于当所述当前情境数据采用区间进行表示时,按照如下公式计算所述子相似度:
其中,Sim(Si,Sj)是所述当前情境数据对应的子相似度,Si是所述当前情境数据组中的第i个所述当前情境数据,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据,Si∈[ri s,ri e]、Sj∈[rj s,rj e],ri s是Si的最小值,ri e是Si的最大值,rj s是Sj的最小值,rj e是Sj的最大值。
18.根据权利要求14所述的装置,其特征在于,所述计算单元,用于当所述当前情境数据采用坐标进行表示时,按照如下公式计算所述子相似度:
其中,Sim(Si,Sj)是所述当前情境数据对应的子相似度,Si是所述当前情境数据组中的第i个所述当前情境数据,Sj是所述历史情境数据组中与Si属于同一个情境数据类型的所述历史情境数据,Si=(xi,yi)、Sj=(xj,yj)。
19.根据权利要求12至18任一所述的装置,其特征在于,所述确定模块,包括:
第一确定单元,用于根据所述N个历史情境各自对应的相似度,确定出所述历史情境对应的所述历史应用程序的推荐权重;
获取单元,用于获取已经处于运行状态的当前应用程序;
第二确定单元,用于确定每个所述历史应用程序相对于所述当前应用程序的关联启动概率,所述关联启动概率用于表征在所述当前应用程序的运行过程中,所述历史应用程序被关联启动的概率;
第三确定单元,用于在所述N个历史应用程序中,将所述推荐权重和对应的所述关联启动概率的乘积最大的P个历史应用程序确定为所述预测应用程序,P为大于等于1的整数。
20.根据权利要求12至18任一所述的装置,其特征在于,
所述第一获取模块,还用于采集所述当前情境对应的原始情境数据组,所述原始情境数据组包括用于描述当前运行情境下的至少一个原始情境数据;使用预定算法对所述原始情境数据组中的所述原始情境数据进行预处理,生成所述当前情境对应的所述当前情境数据组,所述预定算法用于对所述原始情境数据进行数据清理、数据集成、数据规约和数据转换中的至少一种;
和/或,
所述第一获取模块,还用于采集所述当前情境对应的原始情境数据组,所述原始情境数据组包括用于描述当前运行情境下的至少一个原始情境数据;使用语义分析方法对所述原始情境数据组中的所述原始情境数据进行预处理,生成所述当前情境对应的所述当前情境数据组。
21.根据权利要求12至18任一所述的装置,其特征在于,所述装置还包括:
第三获取模块,用于获取至少一组历史情境样本,每组所述历史情境样本包括两个所述历史情境各自对应的所述历史情境数据,以及两个所述历史情境之间的情境相似度分值,所述情境相似度分值是根据两个所述历史情境对应的历史应用程序之间的相似度标定的;
模型训练模块,用于根据所述历史情境样本对初始相似度模型进行训练,得到训练后的所述相似度模型,所述初始相似度模型中包括至少一个情境数据类型以及每个情境数据类型对应的初始权重。
22.根据权利要求14至18任一所述的装置,其特征在于,所述装置还包括:
应用程序确定模块,用于确定所述当前情境下实际启动的应用程序;
更新模块,用于当所述实际启动的应用程序与所述预测应用程序不同时,根据所述当前情境数据组与所述实际启动的应用程序更新所述相似度模型中的各个情境数据类型对应的所述权重。
CN201611184027.6A 2016-12-19 2016-12-19 启动资源加载方法及装置 Active CN108228270B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201611184027.6A CN108228270B (zh) 2016-12-19 2016-12-19 启动资源加载方法及装置
PCT/CN2017/107457 WO2018113409A1 (zh) 2016-12-19 2017-10-24 启动资源加载方法及装置
US16/368,451 US11169827B2 (en) 2016-12-19 2019-03-28 Resource loading at application startup using attributes of historical data groups

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611184027.6A CN108228270B (zh) 2016-12-19 2016-12-19 启动资源加载方法及装置

Publications (2)

Publication Number Publication Date
CN108228270A true CN108228270A (zh) 2018-06-29
CN108228270B CN108228270B (zh) 2021-04-16

Family

ID=62624743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611184027.6A Active CN108228270B (zh) 2016-12-19 2016-12-19 启动资源加载方法及装置

Country Status (3)

Country Link
US (1) US11169827B2 (zh)
CN (1) CN108228270B (zh)
WO (1) WO2018113409A1 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989887A (zh) * 2018-07-17 2018-12-11 奇酷互联网络科技(深圳)有限公司 移动终端和推送视频的方法、装置
CN109635199A (zh) * 2018-12-17 2019-04-16 广州大学 基于用户行为的应用列表动态推荐方法及系统
CN109889656A (zh) * 2018-12-29 2019-06-14 深圳豪客互联网有限公司 一种数据读取方法、装置、设备及存储介质
WO2019119994A1 (en) * 2017-12-21 2019-06-27 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and device for preloading application, storage medium, and terminal device
CN110209435A (zh) * 2019-04-28 2019-09-06 北京蓦然认知科技有限公司 一种应用预加载方法、装置
CN110569176A (zh) * 2019-09-17 2019-12-13 北京字节跳动网络技术有限公司 应用预测模型的训练方法及装置、应用控制方法及装置
CN110825818A (zh) * 2019-09-18 2020-02-21 平安科技(深圳)有限公司 多维特征构建方法、装置、电子设备及存储介质
CN111381902A (zh) * 2020-03-10 2020-07-07 中南大学 基于带属性异构网络嵌入的app启动加速方法
CN112162796A (zh) * 2020-10-10 2021-01-01 Oppo广东移动通信有限公司 应用启动的方法、装置、终端设备以及存储介质
CN112631415A (zh) * 2020-12-31 2021-04-09 Oppo(重庆)智能科技有限公司 Cpu频率调整方法、装置、电子设备及存储介质
CN112912832A (zh) * 2018-12-26 2021-06-04 深圳市欢太科技有限公司 应用推送方法、装置、移动终端及存储介质
CN115016855A (zh) * 2021-11-17 2022-09-06 荣耀终端有限公司 应用预加载的方法、设备和存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228270B (zh) * 2016-12-19 2021-04-16 腾讯科技(深圳)有限公司 启动资源加载方法及装置
CN110399213B (zh) * 2019-05-21 2024-05-10 腾讯科技(深圳)有限公司 确定应用程序的资源需求的方法、装置、电子设备及介质
CN110968425B (zh) * 2019-11-22 2022-12-06 中盈优创资讯科技有限公司 一种任务资源动态分配方法及系统
US20220037004A1 (en) * 2020-07-31 2022-02-03 Hennepin Healthcare System, Inc. Healthcare worker burnout detection tool

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102104666A (zh) * 2009-12-17 2011-06-22 深圳富泰宏精密工业有限公司 应用跳转预测系统及方法
CN104168336A (zh) * 2014-09-05 2014-11-26 北京奇虎科技有限公司 数据获取方法、移动设备、计算设备及系统
US20150026415A1 (en) * 2013-07-19 2015-01-22 Samsung Electronics Co., Ltd. Adaptive application caching for mobile devices
CN105431822A (zh) * 2013-06-12 2016-03-23 微软技术许可有限责任公司 应用的预测预启动
CN105677025A (zh) * 2015-12-31 2016-06-15 宇龙计算机通信科技(深圳)有限公司 一种终端应用的启动方法、装置及终端
CN105701108A (zh) * 2014-11-26 2016-06-22 阿里巴巴集团控股有限公司 一种信息推荐方法、装置及服务器
CN105939416A (zh) * 2016-05-30 2016-09-14 努比亚技术有限公司 移动终端及其应用预启动方法
CN106055369A (zh) * 2016-06-08 2016-10-26 维沃移动通信有限公司 一种移动终端应用程序的启动方法及移动终端
CN106228179A (zh) * 2016-07-13 2016-12-14 乐视控股(北京)有限公司 车辆比对的方法和系统

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516114B2 (en) * 2002-03-29 2013-08-20 International Business Machines Corporation Method and apparatus for content pre-fetching and preparation
US9002828B2 (en) * 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
JP2011253511A (ja) * 2010-06-02 2011-12-15 Minoru Yoshida 情報生成システム及びその方法
US8874129B2 (en) * 2010-06-10 2014-10-28 Qualcomm Incorporated Pre-fetching information based on gesture and/or location
US9485640B2 (en) * 2011-03-28 2016-11-01 Google Inc. Smart cache warming
US8706918B2 (en) * 2011-11-15 2014-04-22 International Business Machines Corporation External environment sensitive predictive application and memory initiation
US9189252B2 (en) * 2011-12-30 2015-11-17 Microsoft Technology Licensing, Llc Context-based device action prediction
CN102662690B (zh) * 2012-03-14 2014-06-11 腾讯科技(深圳)有限公司 应用程序启动方法和装置
KR101971715B1 (ko) * 2012-06-21 2019-04-23 삼성전자 주식회사 모바일 단말 사용자의 몰입 위험 판단 장치 및 방법
US20140280131A1 (en) * 2013-03-13 2014-09-18 Motorola Mobility Llc Recommendations for Applications Based on Device Context
CN105335178B (zh) * 2014-07-28 2020-05-12 锐迪科(重庆)微电子科技有限公司 一种启动控制方法,及装置
CN104168670A (zh) * 2014-09-05 2014-11-26 北京奇虎科技有限公司 一种数据获取方法、设备及系统
US10264050B2 (en) * 2016-10-03 2019-04-16 Paypal, Inc. Predictive analysis of computing patterns for preloaded data to reduce processing downtime
CN108228270B (zh) * 2016-12-19 2021-04-16 腾讯科技(深圳)有限公司 启动资源加载方法及装置
US20190042071A1 (en) * 2017-08-07 2019-02-07 Microsoft Technology Licensing, Llc Contextual experience based on location
US10372610B2 (en) * 2017-08-11 2019-08-06 Paypal, Inc. Prefetching data for application usage
US20190087205A1 (en) * 2017-09-18 2019-03-21 Microsoft Technology Licensing, Llc Varying modality of user experiences with a mobile device based on context
US11153285B2 (en) * 2018-11-07 2021-10-19 Citrix Systems, Inc. Systems and methods for application pre-launch

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102104666A (zh) * 2009-12-17 2011-06-22 深圳富泰宏精密工业有限公司 应用跳转预测系统及方法
CN105431822A (zh) * 2013-06-12 2016-03-23 微软技术许可有限责任公司 应用的预测预启动
US20150026415A1 (en) * 2013-07-19 2015-01-22 Samsung Electronics Co., Ltd. Adaptive application caching for mobile devices
CN104168336A (zh) * 2014-09-05 2014-11-26 北京奇虎科技有限公司 数据获取方法、移动设备、计算设备及系统
CN105701108A (zh) * 2014-11-26 2016-06-22 阿里巴巴集团控股有限公司 一种信息推荐方法、装置及服务器
CN105677025A (zh) * 2015-12-31 2016-06-15 宇龙计算机通信科技(深圳)有限公司 一种终端应用的启动方法、装置及终端
CN105939416A (zh) * 2016-05-30 2016-09-14 努比亚技术有限公司 移动终端及其应用预启动方法
CN106055369A (zh) * 2016-06-08 2016-10-26 维沃移动通信有限公司 一种移动终端应用程序的启动方法及移动终端
CN106228179A (zh) * 2016-07-13 2016-12-14 乐视控股(北京)有限公司 车辆比对的方法和系统

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019119994A1 (en) * 2017-12-21 2019-06-27 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and device for preloading application, storage medium, and terminal device
US10891142B2 (en) 2017-12-21 2021-01-12 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and device for preloading application, storage medium, and terminal device
WO2020015657A1 (zh) * 2018-07-17 2020-01-23 奇酷互联网络科技(深圳)有限公司 移动终端和推送视频的方法、装置
CN108989887A (zh) * 2018-07-17 2018-12-11 奇酷互联网络科技(深圳)有限公司 移动终端和推送视频的方法、装置
CN109635199B (zh) * 2018-12-17 2021-06-01 广州大学 基于用户行为的应用列表动态推荐方法及系统
CN109635199A (zh) * 2018-12-17 2019-04-16 广州大学 基于用户行为的应用列表动态推荐方法及系统
CN112912832A (zh) * 2018-12-26 2021-06-04 深圳市欢太科技有限公司 应用推送方法、装置、移动终端及存储介质
CN109889656A (zh) * 2018-12-29 2019-06-14 深圳豪客互联网有限公司 一种数据读取方法、装置、设备及存储介质
CN110209435A (zh) * 2019-04-28 2019-09-06 北京蓦然认知科技有限公司 一种应用预加载方法、装置
CN110569176A (zh) * 2019-09-17 2019-12-13 北京字节跳动网络技术有限公司 应用预测模型的训练方法及装置、应用控制方法及装置
CN110825818A (zh) * 2019-09-18 2020-02-21 平安科技(深圳)有限公司 多维特征构建方法、装置、电子设备及存储介质
CN110825818B (zh) * 2019-09-18 2023-06-27 平安科技(深圳)有限公司 多维特征构建方法、装置、电子设备及存储介质
CN111381902A (zh) * 2020-03-10 2020-07-07 中南大学 基于带属性异构网络嵌入的app启动加速方法
CN111381902B (zh) * 2020-03-10 2021-04-13 中南大学 基于带属性异构网络嵌入的app启动加速方法
CN112162796A (zh) * 2020-10-10 2021-01-01 Oppo广东移动通信有限公司 应用启动的方法、装置、终端设备以及存储介质
CN112631415A (zh) * 2020-12-31 2021-04-09 Oppo(重庆)智能科技有限公司 Cpu频率调整方法、装置、电子设备及存储介质
CN112631415B (zh) * 2020-12-31 2022-09-02 Oppo(重庆)智能科技有限公司 Cpu频率调整方法、装置、电子设备及存储介质
CN115016855A (zh) * 2021-11-17 2022-09-06 荣耀终端有限公司 应用预加载的方法、设备和存储介质

Also Published As

Publication number Publication date
CN108228270B (zh) 2021-04-16
US11169827B2 (en) 2021-11-09
WO2018113409A1 (zh) 2018-06-28
US20190220293A1 (en) 2019-07-18

Similar Documents

Publication Publication Date Title
CN108228270A (zh) 启动资源加载方法及装置
CN104239535B (zh) 一种为文字配图的方法、服务器、终端及系统
CN104850434B (zh) 多媒体资源下载方法及装置
CN108701149A (zh) 一种智能推荐方法和终端
CN106778117B (zh) 权限开启方法、装置及系统
US20140315584A1 (en) Information recommendation method and apparatus
CN107362538A (zh) 一种游戏辅助信息展示方法、装置以及客户端
CN111078556B (zh) 应用测试方法及装置
CN108121803A (zh) 一种确定页面布局的方法和服务器
CN110069715A (zh) 一种信息推荐模型训练的方法、信息推荐的方法及装置
CN109902296A (zh) 自然语言处理方法、训练方法及数据处理设备
CN109032719A (zh) 一种对象推荐方法及终端
CN110058850A (zh) 一种应用的开发方法、装置以及存储介质
CN114357278B (zh) 一种话题推荐方法、装置及设备
CN104699501B (zh) 一种运行应用程序的方法及装置
CN110110045A (zh) 一种检索相似文本的方法、装置以及存储介质
CN110309339A (zh) 图片标签生成方法及装置、终端及存储介质
CN103501487A (zh) 分类器更新方法、装置、终端、服务器及系统
CN108920054A (zh) 一种应用推荐方法及终端
CN111090877B (zh) 数据生成、获取方法及对应的装置、存储介质
CN110196833A (zh) 应用程序的搜索方法、装置、终端及存储介质
CN110019648B (zh) 一种训练数据的方法、装置及存储介质
CN107807940B (zh) 信息推荐方法和装置
CN109815349A (zh) 一种信息获取方法及终端设备
CN108268232A (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
GR01 Patent grant
GR01 Patent grant