CN116795628B - 终端设备的功耗处理方法、终端设备以及可读存储介质 - Google Patents

终端设备的功耗处理方法、终端设备以及可读存储介质 Download PDF

Info

Publication number
CN116795628B
CN116795628B CN202310598030.6A CN202310598030A CN116795628B CN 116795628 B CN116795628 B CN 116795628B CN 202310598030 A CN202310598030 A CN 202310598030A CN 116795628 B CN116795628 B CN 116795628B
Authority
CN
China
Prior art keywords
power consumption
application
terminal device
feature
threshold
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
Application number
CN202310598030.6A
Other languages
English (en)
Other versions
CN116795628A (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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202310598030.6A priority Critical patent/CN116795628B/zh
Publication of CN116795628A publication Critical patent/CN116795628A/zh
Application granted granted Critical
Publication of CN116795628B publication Critical patent/CN116795628B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3438Recording 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 monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Sources (AREA)

Abstract

本申请实施例提供一种终端设备的功耗处理方法、终端设备以及可读存储介质。该方法包括:终端设备采集终端设备的功耗数据,功耗数据包括第一应用的功耗数据;根据第一应用的功耗模型,确定终端设备对应的用户所属的用户群体,以及用户群体对应的主特征的阈值;根据主特征的阈值,以及第一应用的功耗数据中主特征的数值,检测第一应用的功耗是否异常,得到第一应用的功耗检测结果;根据第一应用的功耗检测结果,执行对应的操作。这样,终端设备可以针对用户使用终端设备的习惯,确定用户所属的群体,进而采用对应的主特征的阈值检测功耗,灵活性高。

Description

终端设备的功耗处理方法、终端设备以及可读存储介质
技术领域
本申请涉及终端技术领域,尤其涉及一种终端设备的功耗处理方法、终端设备以及可读存储介质。
背景技术
随着终端设备的快速发展,终端设备上安装的应用越来越多。用户可以同时打开多个应用,应用的运行会增加终端设备的功耗,因此有必要对应用的功耗进行检测和管理,以延长终端设备的续航。
目前,可以设置功耗阈值,且终端设备可以检测运行在后台的应用的功耗。当运行在后台的应用的功耗大于该功耗阈值时,终端设备可以杀掉该应用,以减少终端设备的功耗。
目前终端设备的功耗的处理方法虽然能够减少终端设备的功耗,但不同用户群体对终端设备的使用习惯不同,针对所有用户群体采用同一方法处理终端设备的功耗,灵活性差。
发明内容
本申请实施例提供一种终端设备的功耗处理方法、终端设备以及可读存储介质,应用于终端技术领域,可以针对用户对终端设备的使用习惯,适应性处理终端设备的功耗,灵活性高。
第一方面,本申请实施例提出一种终端设备的功耗处理方法,执行该方法的执行主体可以为终端设备或终端设备中的芯片,下述以终端设备为例进行说明。该方法包括:终端设备可以采集所述终端设备的功耗数据,所述功耗数据包括第一应用的功耗数据。第一应用的功耗数据为第一应用运行时,使用终端设备中各器件的功耗。
终端设备中可以存储第一应用的功耗模型,终端设备可以根据所述第一应用的功耗模型,确定所述终端设备对应的用户所属的用户群体,以及所述用户群体对应的主特征的阈值。终端设备可以根据所述主特征的阈值,以及所述第一应用的功耗数据中所述主特征的数值,检测所述第一应用的功耗是否异常,得到所述第一应用的功耗检测结果。终端设备可以根据所述第一应用的功耗检测结果,执行对应的操作,如降低第一应用的功耗。
本申请实施例中,不同应用可以对应不同的功耗模型,功耗模型的准确性高。另外,本申请实施例中,可以根据功耗数据,确定用户所属的用户群体,即可以根据用户使用终端设备的习惯或特征,以用户对应的主特征的阈值,检测第一应用的功耗是否异常。本申请实施例中,针对不同的用户群体,可以使用不同的主特征的阈值,检测第一应用的功耗是否异常,灵活性高,且更加匹配用户的习惯或特征,可以提高用户体验。
在一种可能的实现方式中,所述第一应用的功耗模型包括:辅特征条件,以及至少一个用户群体对应的主特征的阈值,所述辅特征条件用于确定用户所属的用户群体,至少一个用户群体为基于所述辅特征条件确定的用户群体。
终端设备可以根据所述辅特征条件,以及所述第一应用的功耗数据中辅特征的数值,确定所述终端设备对应的用户所属的用户群体。终端设备可以根据所述至少一个用户群体对应的主特征的阈值,以及所述终端设备对应的用户所属的用户群体,确定所述终端设备对应的用户所属的用户群体对应的主特征的阈值。
在该实现方式中,终端设备可以根据第一应用的功耗模型,确定用户所属的用户群体,以及该用户群体对应的主特征的阈值,以便可以采用该用户群体适配的主特征的阈值,检测第一应用的功耗是否异常。
在一种可能的实现方式中,所述第一应用的功耗模型具体为第一产品系列的第一应用的功耗模型,所述终端设备属于所述第一产品系列。
在该实现方式中,终端设备可以根据第一产品系列的第一应用的功耗模型,确定所述终端设备对应的用户所属的用户群体,以及所述用户群体对应的主特征的阈值,进而基于该用户群体对应的主特征的阈值,检测第一应用的功耗是否异常。
在该实现方式中,因为不同产品系列的终端设备,使用的器件不同,因此在相同时间内第一应用运行时,器件的功耗不同,本申请实施例针对不同的产品系列,可以获取不同产品系列的不同应用的功耗模型,使得功耗模型的准确性更高,且更加适配终端设备,可以提高功耗处理的准确性。
在一种可能的实现方式中,当所述主特征的数值大于或等于所述主特征的阈值时,终端设备确定所述第一应用的功耗异常,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常。当所述主特征的数值小于所述主特征的阈值时,终端设备确定所述第一应用的功耗正常,所述第一应用的功耗检测结果用于指示所述第一应用的功耗正常。
在一种可能的实现方式中,终端设备不仅可以确定第一应用的功耗是否异常,还可以在第一应用的功耗异常时,确定异常等级。示例性的,所述主特征的阈值包括:第一阈值、第二阈值,以及第三阈值,所述第一阈值小于所述第二阈值,且所述第二阈值小于所述第三阈值。
其中,当所述主特征的数值大于或等于所述第一阈值,且小于所述第二阈值时,确定所述第一应用的功耗异常为第一异常等级,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常的等级为所述第一异常等级。当所述主特征的数值大于或等于所述第二阈值,且小于所述第三阈值时,确定所述第一应用的功耗异常为第二异常等级,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常的等级为所述第二异常等级。当所述主特征的数值大于或等于所述第三阈值时,确定所述第一应用的功耗异常为第三异常等级,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常的等级为所述第三异常等级。当所述主特征的数值小于所述第一阈值时,确定所述第一应用的功耗正常,所述第一应用的功耗检测结果用于指示所述第一应用的功耗正常。
在一种可能的实现方式中,所述第一应用的功耗异常等级不同,所述终端设备执行的对应的操作不同。
在该实现方式中,终端设备可以基于第一应用的功耗异常等级,采用与异常等级对应的操作进行处理,灵活性高。
在一种可能的实现方式中,终端设备可以向云端发送功耗模型获取请求,以接收来自所述云端的所述第一应用的功耗模型。
在一些实施例中,终端设备可以接收来自云端的至少一个应用的功耗模型,该至少一个应用可以包括第一应用。或者,终端设备可以接收来自云端的至少一个系列的至少一个应用的功耗模型,该至少一个应用可以包括第一应用。
在一种可能的实现方式中,终端设备还可以向数据平台发送所述终端设备的功耗数据,以便云端可以基于终端设备的功耗数据,训练得到功耗模型,可以参照第二方面的描述。
第二方面,本申请实施例提出一种终端设备的功耗处理方法,执行该方法的执行主体可以为云端或云端中的芯片,下述以云端为例进行说明。该方法包括:云端可以从数据平台获取至少一个终端设备的功耗数据,且根据所述至少一个终端设备的功耗数据,训练得到功耗模型。当云端接收来自终端设备的功耗模型获取请求时,可以向所述终端设备发送所述功耗模型。
功耗模型可以包括至少一个应用的功耗模型,所述第一应用包含于所述至少一个应用中。相应的,每个终端设备的功耗数据可以包括所述至少一个应用的功耗数据。本申请实施例中,云端训练功耗模型,可以包括云端训练得到第一应用的功耗模型。下述以云端训练第一应用的功耗模型为例,说明云端训练功耗模型的过程。其中,云端可以根据预设时间段内所述第一应用的功耗数据,训练得到所述第一应用的功耗数据。
在一种可能的实现方式中,所述第一应用的功耗模型具体为第一产品系列的第一应用的功耗模型,所述第一产品系列的第一应用的功耗模型是基于所述预设时间段内所述第一产品系列的终端设备的所述第一应用的功耗数据训练得到的。
下面具体以云端根据预设时间段内所述第一产品系列的终端设备的所述第一应用的功耗数据,训练得到第一产品系列的第一应用的功耗模型为例说明功耗模型的训练过程:
云端可以根据所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,获取主特征与其他每个特征的相关系数,且根据所述主特征与其他每个特征的相关系数,确定辅特征。云端在确定辅特征后,可以根据所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,以及所述辅特征,获取辅特征条件,所述辅特征条件用于确定用户所属的用户群体。云端可以根据所述辅特征条件,以及所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,将所述至少一个终端设备对应的用户划分为至少两个用户群体。
云端可以根据每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据,确定每个用户群体对应的主特征的阈值,所述主特征的阈值用于检测所述第一应用的功耗是否异常。云端根据所述辅特征条件,以及每个用户群体对应的主特征的阈值,生成所述第一产品系列的第一应用的功耗模型。其中,第一产品系列的第一应用的功耗模型可以包括:所述辅特征条件,以及至少一个用户群体对应的主特征的阈值。
在一种可能的实现方式中,所述主特征与其他每个特征的相关系数包括皮尔逊Pearson相关系数和斯皮尔曼Spearman相关系数。所述根据所述主特征与其他每个特征的相关系数,确定辅特征,包括:将大于或等于Pearson相关系数阈值,且大于或等于Spearman相关系数阈值的特征作为第一候选辅特征;根据所述第一候选辅特征,确定所述辅特征。
在一种可能的实现方式中,可以将所述第一候选辅特征,作为所述辅特征。
在一种可能的实现方式中,所述根据所述第一候选辅特征,确定所述辅特征,包括:
步骤A,获取每个第一候选辅特征与其他第一候选辅特征的方差膨胀系数VIF;
步骤B,针对最大VIF对应的第一候选辅特征,若所述最大VIF大于VIF阈值,且第一候选辅特征的数量大于数量阈值,执行步骤C;若所述最大VIF大于VIF阈值且第一候选辅特征的数量小于或等于所述数量阈值,或者,所述最大VIF小于或等于所述VIF阈值,则将所有的第一候选辅特征作为第二候选辅特征,且根据所述第二候选辅特征,确定所述辅特征;
步骤C,删除所述最大VIF对应的第一候选辅特征,且返回执行步骤A-步骤B,直至最大VIF小于或等于所述VIF阈值,或者剩余的第一候选辅特征的数量小于或等于所述数量阈值,且将剩余的第一候选辅特征作为第二候选辅特征,且根据所述第二候选辅特征,确定所述辅特征。
在一种可能的实现方式中,可以将所述第二候选辅特征,作为所述辅特征。
在一种可能的实现方式中,所述根据所述第二候选辅特征,确定所述辅特征,包括:根据最小绝对收缩和选择模型,获取每个第二候选辅特征的重要性值;将排序在前N的第二候选辅特征作为所述辅特征,所述N等于所述数量阈值。
在一种可能的实现方式中,所述根据所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,以及所述辅特征,获取辅特征条件,包括:根据所述辅特征,以及所述预设时间段内第一产品系列的终端设备的第一应用的功耗数据,训练分类与回归树CART;将所述CART中的叶子节点作为所述辅特征条件。
在一种可能的实现方式中,所述根据每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据,确定每个用户群体对应的主特征的阈值,包括:在所述每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据中,根据所述主特征的数值,以及第一预设比例,确定所述每个用户群体对应的主特征的阈值。
在一种可能的实现方式中,基于所述第一预设比例确定的所述每个用户群体对应的主特征的阈值为第一阈值。所述方法还包括:在所述每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据中,根据所述主特征的数值,以及第二预设比例,确定所述每个用户群体对应的主特征的第二阈值;在所述每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据中,根据所述主特征的数值,以及第三预设比例,确定所述每个用户群体对应的主特征的第三阈值,所述第一预设比例小于所述第二预设比例,所述第二预设比例小于所述第三预设比例,所述第一阈值、所述第二阈值,以及所述第三阈值用于确定所述第一应用的功耗异常的等级。
第三方面,本申请实施例提供一种终端设备,终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。
该终端设备包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行如第一方面的方法。
第四方面,本申请实施例提供一种电子设备,该电子设备可以为第二方面的云端。该电子设备包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得电子设备执行如第二方面的方法。
第五方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现如第一方面、第二方面的方法。
第六方面,本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面、第二方面的方法。
第七方面,本申请实施例提供了一种芯片,芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行如第一方面、第二方面所述的方法。
应当理解的是,本申请的第三方面至第七方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1为本申请实施例提供的终端设备的功耗处理方法适用的***架构一种示意图;
图2A为本申请实施例提供的终端设备的功耗处理方法适用的***架构另一种示意图;
图2B为本申请实施例提供的终端设备的功耗处理方法的一种流程示意图;
图3为本申请实施例提供的功耗模型的获取流程示意图;
图4为本申请实施例提供的CART的一种示意图;
图5A为本申请实施例提供的筛选辅特征的一种示意图;
图5B为本申请实施例提供的确定主特征的阈值的一种示意图;
图6为本申请实施例提供的终端设备的功耗处理方法的另一实施例的流程示意图;
图7为本申请实施例提供的终端设备的功耗处理方法的另一实施例的流程示意图;
图8为本申请实施例提供的终端设备的功耗处理方法的另一实施例的流程示意图;
图9为本申请实施例提供的电子设备的一种结构示意图。
具体实施方式
为了便于清楚地描述本申请实施例的技术方案,本申请实施例中,“示例性的”或者“例如”或者“如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
需要说明的是,本申请实施例中的“在……时”或“当……时”,可以为在某种情况发生的瞬时,也可以为在某种情况发生后的一段时间内,本申请实施例对此不作具体限定。此外,本申请实施例提供的显示界面仅作为示例,显示界面还可以包括更多或更少的内容。
随着终端设备的快速发展,终端设备上安装的应用越来越多。用户可以同时打开多个应用,应用的运行会增加终端设备的功耗,因此有必要对应用的功耗进行检测和管理,以延长终端设备的续航。
在一些实施例中,相较于终端设备中前台运行的应用,用户对后台运行的应用的关注度低。因此目前可以设置功耗阈值,如功耗阈值可以为应用的中央处理器(centralprocessing unit,CPU)后台功耗的阈值,CPU后台功耗的阈值可以理解为应用在后台运行时使用CPU产生的功耗。终端设备可以检测运行在后台的应用的CPU功耗,当运行在后台的应用的CPU功耗大于该功耗阈值时,终端设备可以杀掉(kill)该应用,以减少终端设备的功耗。或者,终端设备会输出提示信息,以提示用户该后台应用的功耗大。当运行在后台的应用的CPU功耗小于或等于该功耗阈值时,该应用可以继续运行在后台,如终端设备可以不做处理。
目前终端设备的功耗的处理方法虽然能够减少终端设备的功耗,但不同用户群体对终端设备的使用习惯不同,针对所有用户群体采用同一方法(如采用相同的功耗阈值)处理终端设备的功耗,灵活性差。
示例性的,用户A喜欢听音乐,每天听音乐的时长较长,用户B不喜欢听音乐,每天几乎不听音乐,但是当用户A和用户B均打开音频播放类应用,且将音频播放类应用退至后台运行时,音频播放类应用可以播放音乐。对于用户A和用户B,若终端设备按照相同的处理逻辑,当音频播放类应用的CPU后台功耗大于功耗阈值时,终端设备会输出提示信息,提示用户该应用的功耗大,则对于喜欢音乐的用户A来说音频播放类应用一退至后台,就会收到提示信息,甚至不断收到提示信息,对用户的打扰过多,用户体验差。
基于目前的问题,本申请实施例提供一种终端设备的功耗处理方法,可以针对用户使用应用的习惯或特征,确定用户所属的用户群体,不同的用户群体可以对应不同的功耗处理逻辑,以便针对不同的用户,终端设备可以适应性地调整功耗的处理方法,灵活性高,且功耗处理逻辑适配于用户的习惯或特征,可以提高用户体验。
示例性的,以音频播放类应用为例,且以CPU后台功耗为检测条件为例,如用户A喜欢听音乐,每天听音乐的时长较长,用户B不喜欢听音乐,每天几乎不听音乐。其中,用户A对应的功耗阈值可以为第一功耗阈值,用户B对应的功耗阈值可以为第二功耗阈值,第一功耗阈值大于第二功耗阈值。如当用户A和用户B均打开音频播放类应用,且将音频播放类应用退至后台运行时,用户A的终端设备可以比较音频播放类应用的CPU后台功耗和第一功耗阈值,如当音频播放类应用的CPU后台功耗大于该第一功耗阈值时,用户A的终端设备可以输出提示信息。用户B的终端设备可以比较音频播放类应用的CPU后台功耗和第二功耗阈值,如当音频播放类应用的CPU后台功耗大于该第二功耗阈值时,用户B的终端设备可以输出提示信息。
这样,对于喜欢音乐的用户A来说,音频播放类应用退至后台后,因为第一功耗阈值较大,因此用户A不会频繁收到提示信息。对于不喜欢音乐的用户B来说,音频播放类应用退至后台后,因为第二功耗阈值较小,用户B的终端设备会及时提醒用户B音频播放类应用较大,以便用户B可以及时了解终端设备中的应用的功耗。
在介绍本申请实施例提供的终端设备的功耗处理方法之前,首先介绍本申请实施例提供的终端设备的功耗处理方法适用的***架构。图1为本申请实施例提供的终端设备的功耗处理方法适用的***架构示意图。参照图1,该***架构可以包括:至少一个终端设备、云端,以及数据平台。图1中以服务器表示云端、数据平台,本申请实施例对云端和数据平台的形态不做限制。应理解,图1中以1个终端设备为例。
终端设备,可以向数据平台上报终端设备的功耗数据。在一些实施例中,终端设备可以周期性地向数据平台上报终端设备的功耗数据,如终端设备可以每隔三天可以向数据平台上报一次终端设备的功耗数据。在一些实施例中,终端设备可以定时向数据平台上报终端设备的功耗数据,如终端设备可以在每天的6点向数据平台上报终端设备的功耗数据。
终端设备的功耗数据可以包括:终端设备的每个应用的功耗数据。每个应用运行时,会使用终端设备中的不同器件,可以将应用运行时使用的器件称为应用对应的器件。每个应用的功耗数据可以包括:每个应用对应的器件的功耗数据。
器件可以包括但不限于:CPU、图形处理器(graphics processing unit,GPU)、全球导航卫星***(global navigation satellite system GNSS)、屏幕、传感器、相机、闪光灯、音频模块、蓝牙模块、调制解调器(modem)、Wi-Fi模块。示例性的,蓝牙模块如可以为蓝牙芯片,Wi-Fi模块如可以为Wi-Fi芯片,本申请实施例对此不作显示。其中,终端设备可以通过蓝牙模块实现蓝牙通信,终端设备可以通过Wi-Fi模块实现Wi-Fi通信。
终端设备中的传感器可以包括但不限于:压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器。
终端设备中的音频模块可以包括但不限于:扬声器,受话器,麦克风等。示例性的,终端设备可以通过音频模块播放音乐、采集声音等。
本申请实施例中对终端设备中包括的器件不做限制,且对终端设备中器件的划分方式不做限制。示例性的,在一些实施例中,可以将蓝牙模块、modem以及Wi-Fi模块划分成一个模块,如可以称为通信模块。在一些实施例中,如还可以将器件划分为更细粒度或者更粗粒度的器件,本申请实施例对此不作限制。
终端设备可以周期性地统计终端设备的每个应用的功耗数据,且周期性地向数据平台上报终端设备的功耗数据。
示例性的,以“一天”统计一次应用的功耗数据为例,一天中每个应用的功耗数据可以包括如下至少一项:应用对应的器件的前台使用时长、前台功耗、后台使用时长、后台功耗、前台总流量,以及后台总流量。
应理解,不同的器件对应的功耗数据可以不同。示例性的,如通信模块,如终端设备通过modem以及Wi-Fi模块实现通信,会使用终端设备的流量,因此modem以及Wi-Fi模块的功耗数据可以包括:前台总流量,以及后台总流量。示例性的,如屏幕的状态包括亮屏和熄屏,屏幕不会运行在后台,因此屏幕的功耗数据可以包括:屏幕亮屏功耗、屏幕亮屏使用时长、屏幕前台功耗以及屏幕前台使用时长。示例性的,应用无论运行在前台或者后台,均会使用CPU的资源,因此CPU的功耗数据可以包括:CPU前台功耗、CPU前台使用时长、CPU后台功耗,以及CPU后台使用时长。
示例性的,以终端设备“一星期”向数据平台上报一次终端设备的功耗数据为例。终端设备可以每隔一星期向数据平台上报一次终端设备的功耗数据,该功耗数据可以包括终端设备7天的功耗数据。
表一为终端设备的功耗数据中包括的内容,以及内容的含义的一种示例图。应理解,终端设备的数据功耗可以以文本形式、表格形式等方式上报至数据平台,本申请实施例对功耗数据的数据形式不做限制。
表一
表一中,FG表征前台(foreground),BG表征后台(background),trfc表征流量(traffic)。
在一些实施例中,因为终端设备的功耗数据可以包括终端设备的每个应用的功耗数据,因此为了便于区域终端设备的不同应用的功耗数据,终端设备的功耗数据还可以包括应用信息。示例性的,如应用信息可以包括应用名和应用版本。在一些实施例中,应用名还可以替换为应用编号、应用图标等可以区分不同应用的信息。
在一些实施例中,终端设备的功耗数据还可以包括:设备信息。示例性的,如设备信息可以包括终端设备的名称(产品名)、终端型号(产品版本),以及序列号(serialnumber,SN)。在一些实施例中,产品名还可以替换为产品编号等可以区分不同产品的信息。
在一些实施例中,终端设备的功耗数据还可以包括:时间戳。时间戳表示终端设备向数据平台上报终端设备的功耗数据的时间。
应注意的是,表一中还将终端设备的功耗数据进行分类,展示了功耗数据对应的特征。示例性的,设备信息可以表征产品相关特征,应用信息可以表征应用特征,屏幕亮屏功耗、屏幕亮屏使用时长、屏幕前台功耗以及屏幕前台使用时长可以表征屏幕相关特征。终端设备的其他相关特征可以参照表一所示。
应理解的是,因为至少一个终端设备可以向数据平台上报终端设备的功耗数据,因此数据平台可以存储至少一个终端设备的功耗数据。
示例性的,表二中展示了数据平台接收到的多个终端设备在一天内的应用1的功耗数据。应理解,表二中以应用1的功耗数据包括应用1对应的器件的前台功耗为例。
表二
示例性的,本申请实施例涉及的功耗的单位可以为毫安时(mAh)。
应理解,表1中展示了产品1的不同序列号的终端设备,且展示了终端设备在同一天(2023/5/15)中应用1对应的器件的前台功耗。应理解,终端设备不同,终端设备的产品名可以相同或不同。示例性的,当终端设备属于同一产品系列时,终端设备的产品名相同,当终端设备不属于同一产品系列时,终端设备的产品名不同。终端设备不同,终端设备的SN不同,可以以SN区分不同的终端设备。
云端可以从数据平台获取终端设备的功耗数据,且基于终端设备的功耗数据训练功耗模型。在一些实施例中,云端可以周期性的从数据平台获取终端设备的功耗数据,或者,云端可以定时从数据平台获取终端设备的功耗数据。功耗模型可以用于确定终端设备对应的用户所属的用户群体,以及用户群体对应的功耗处理逻辑。
应注意的是,云端可以周期性更新功耗模型。示例性的,以1天为例,云端可以每隔1天,根据前一天从数据平台获取的终端设备的功耗数据,更新功耗模型,以保证功耗模型的准确性和实时性。
云端训练得到功耗模型,或者云端更新功耗模型后,可以向终端设备下发功耗模型。
终端设备可以存储功耗模型。终端设备在运行过程中,可以实时采集终端设备的功耗数据,且基于该功耗模型,得到终端设备对应的用户所属的用户群体,以及用户群体对应的功耗处理逻辑。终端设备可以按照用户群体对应的功耗处理逻辑,处理终端设备的功耗,终端设备的处理逻辑可以参照图6、图7中的相关描述。
在一些实施例中,参照图2A,终端设备可以包括计算引擎和功耗处理模块。
功耗处理模块,用于实时采集终端设备的功耗数据,且向计算引擎发送终端设备的功耗数据。
计算引擎,用于存储功耗模型,且将来自功耗处理模块的终端设备的功耗数据输入至功耗模型,得到终端设备对应的用户所属的用户群体,以及用户群体对应的功耗处理逻辑。计算引擎可以按照用户群体对应的功耗处理逻辑,处理终端设备的功耗。
在一些实施例中,计算引擎可以按照用户群体对应的功耗处理逻辑,检测终端设备的功耗是否异常,具体可以检测终端设备的应用的功耗是否异常,且向功耗处理模块发送功耗检测结果。功耗检测结果可以包括但不限于:功耗正常、功耗异常。
相应的,功耗处理模块,响应于来自计算引擎的功耗检测结果,可以基于功耗检测结果,执行相应的操作,以对终端设备的应用的功耗进行管控。
在一些实施例中,计算引擎可以包括功耗业务模块。功耗业务模块可以包括:功耗接口、功耗模型调用单元,以及功耗模型存储单元。
其中,功耗接口,用于传输来自功耗处理模块的终端设备的功耗数据,以及功耗检测结果。
功耗模型存储单元,用于存储功耗模型。功耗模型调用单元,用于调用功耗模型存储单元中的功耗模型,以检测终端设备的功耗是否异常。
在一些实施例中,功耗处理模块可以包括:功耗处理进程和功耗响应单元。在一些实施例中,功耗处理进程和功耗相应单元可以单独设置,如终端设备可以包括计算引擎、功耗处理进程,以及功耗响应单元。在一些实施例中,功耗处理进程和功耗相应单元可以集成一体设置,图2A中以功耗处理进程和功耗响应单元包含于功耗处理模块中为例。
其中,功耗处理进程,用于采集终端设备的功耗数据,且向数据平台上报终端设备的功耗数据。功耗处理进程,还用于实时采集终端设备的功耗数据,且通过功耗接口向计算引擎发送终端设备的功耗数据,以及接收来自计算引擎的功耗检测结果。
功耗处理进程,可以基于根据功耗检测结果,指示功耗响应单元执行相应的操作,以对应用的功耗进行管控。
图2B为本申请实施例提供的终端设备的功耗处理方法的一种流程示意图。图2B中以一个终端设备为例,说明终端设备和云端、数据平台的交互过程。参照图2B,本申请实施例提供的终端设备的功耗处理方法可以包括:
S201,功耗处理进程采集终端设备的功耗数据。
示例性的,功耗处理进程可以每隔10min钟采集一次终端设备的功耗数据。
S202,功耗处理进程向数据平台上报终端设备的功耗数据。
示例性的,以“一天”上报一次终端设备的功耗数据为例,功耗处理进程每隔10min钟采集一次终端设备的功耗数据后,可以每天对该“一天”中采集的终端设备的功耗数据进行统计,且一天向数据平台上报一次终端设备的功耗数据。
S203,数据平台存储至少一个终端设备的功耗数据。
S204,云端从数据平台获取至少一个终端设备的功耗数据。
S205,云端根据至少一个终端设备的功耗数据,训练功耗模型。
在一些实施例中,不同应用的功耗数据不同,每个应用可以对应一个功耗模型。对于一个应用的功耗模型来说,云端可以根据至少一个终端设备的该应用的功耗数据,训练得到该应用的功耗模型。在该实施例中,云端可以训练得到每个应用对应的功耗模型。
在该实施例中,云端训练得到的功耗模型可以包括:应用的标识,以及应用的功耗模型。
在一些实施例中,不同产品系列的终端设备,其中布局的器件的型号不同,因此在相同的时间内,同一应用使用同一器件时,该器件的功耗不同。示例性的,如产品系列1的终端设备使用蓝牙芯片1,产品系列2的终端设备使用蓝牙芯片2,在相同的时间内,产品系列1的终端设备和产品系列2的终端设备中的同一应用使用各自的蓝牙芯片分别进行通信,蓝牙芯片1和蓝牙芯片2的功耗不同。在该实施例中,针对不同的产品系列,云端可以根据不同产品系列的终端设备的功耗数据,训练得到每个产品系列的终端设备的功耗模型。
应理解,在同一产品系列中,云端可以根据该产品系列中不同应用的功耗数据,训练得到该产品系列中每个应用的功耗模型。在该实施例中,云端训练得到的功耗模型可以包括:产品系列的标识、应用的标识,以及产品系列下应用的功耗模型。
其中,S205的具体训练过程可以参照图3中的描述。
S206,计算引擎从云端获取功耗模型。
在一些实施例中,计算引擎可以周期性地或定时地从云端获取功耗模型。示例性的,计算引擎可以每天向云端发送一次功耗模型获取请求,该功耗模型获取请求用于请求最新的功耗模型。
其中,终端设备第一次开机时,计算引擎中未存储功耗模型。计算引擎可以向云端发送功耗模型获取请求,云端响应于该向功耗模型获取请求,可以向计算引擎发送云端中最新的功耗模型。
因为云端可以更新功耗模型,本申请实施例中,为了便于区分不同版本的功耗模型,可以对功耗模型进行版本标识或者编号标识。以版本标识为例,当终端设备第一次开机时,因为计算引擎中未存储功耗模型,因此计算引擎发送的功耗模型获取请求中可以不包括功耗模型的版本标识,或者该功耗模型获取请求中可以包括用于指示计算引擎还未请求过功耗模型的标识。
在一些实施例中,计算引擎在向云端发送功耗模型获取请求时,该功耗模型获取请求中可以包括计算引擎中存储的功耗模型的版本标识。这样,云端响应于来自计算引擎的功耗模型获取请求,可以确定计算引擎中已存储的功耗模型的版本,当云端存储有最新的功耗模型时,云端可以向计算引擎发送该最新的功耗模型。当云端存储的功耗模型的版本与计算引擎的功耗模型的版本相同时,即云端还未更新功耗模型,则云端可以向计算引擎反馈“未更新功耗模型”的响应消息。
S207,功耗处理进程通过功耗接口向计算引擎发送终端设备的功耗数据。
应理解,S207与S202可以同时执行,没有先后顺序的区分。
示例性的,功耗处理进程可以每隔10min钟采集一次终端设备的功耗数据,功耗处理进程可以每隔10min钟通过功耗接口向计算引擎发送一次终端设备的功耗数据。
S208,计算引擎调用功耗模型,且将终端设备的功耗数据输入至功耗模型,得到功耗检测结果。
S209,计算引擎向功耗处理进程发送功耗检测结果。
S210,功耗处理进程根据功耗检测结果,指示功耗响应单元执行对应的操作。
S208-S210可以参照图6、图7中的相关描述。
图3以一个产品系列的终端设备的一个应用为例,说明云端获取功耗模型的过程。应理解,对于其他产品系列,以及其他应用的功耗模型的获取过程,可以参照图3中的描述。
图3为本申请实施例提供的功耗模型的获取流程示意图。参照图3,本申请实施例提供的终端设备的功耗处理方法可以包括:
S301,云端确定目标应用,目标应用为待训练功耗模型的应用。
在一些实施例中,S301为可选步骤。在一些实施例中,针对每个应用,云端可以训练每隔应用的功耗模型。其中,目标应用可以包括终端设备的每个应用。
在一些实施例中,目标应用可以为预设的应用。在一些实施例中,目标应用可以为热门应用。在一些实施例中,目标应用可以为研发人员自定义的应用。
在一些实施例中,云端可以根据至少一个终端设备的功耗数据,基于应用的功耗数据的数据量,确定目标应用。以终端设备一天统计1次应用的功耗数据为例,参照表二,表二中的一行数据可以作为应用1的1条功耗数据。其中,使用应用的用户越多,越多的终端设备上报该应用的功耗数据,则该应用的功耗数据的数据量越多。
示例性的,云端可以按照从多到少的顺序,对所有应用的功耗数据的数据量进行排序,云端可以选取排序前150的应用作为目标应用。应理解,150为示例说明,该数值可以自定义修改。在一些实施例中,排序前150的应用可以简称为top150应用。
在一些实施例中,因为终端设备的一些应用是常驻应用,该常驻应用不运行会引发终端设备出现故障(bug)。示例性的,常驻应用可以为***应用,可以包括但不限于:桌面应用、锁屏应用等。
本申请实施例中,云端可以按照从多到少的顺序,对所有应用的功耗数据的数据量进行排序后,可以删除常驻应用,再选取top150应用作为目标应用。
在一些实施例中,对于不同产品系列,以及不同应用来说,功耗数据的数据量不同。示例性的,以应用为例,如社交类应用、娱乐类应用等具有大量用户,一天内应用的功耗数据的数据量可以达到上百万条,而对于一些办公类应用等具有少量用户,一天内应用的功耗数据的数据量较少。
本申请实施例中,为了避免预设时间段内第一产品系列的终端设备的第一应用的功耗数据的数据量过多,造成训练资源的浪费的问题,以及为了避免数据量过少,造成功耗模型的准确性低等问题,可以预先设置第一数据量阈值和第二数据量阈值,第一数据量阈值大于第二数据量阈值。示例性的,第一数量阈值可以为100万条,第二数据量阈值可以为10万条。
其中,当预设时间段内第一产品系列的终端设备的第一应用的功耗数据的数据量大于100万条(第一数据量阈值)时,云端可以在预设时间段内第一产品系列的终端设备的第一应用的功耗数据的数据量中,随机抽取100万条功耗数据作为训练数据。其中,当预设时间段内第一产品系列的终端设备的第一应用的功耗数据的数据量小于或等于100万条(第一数据量阈值)且大于或等于10万条(第二数据量阈值)时,云端可以将预设时间段内第一产品系列的终端设备的第一应用的功耗数据,作为训练数据。当预设时间段内第一产品系列的终端设备的第一应用的功耗数据的数据量小于10万条(第二数据量阈值)时,云端可以不训练功耗模型,因为数据量少会导致功耗模型的准确性低。
S302,云端对预设时间段内第一产品系列的终端设备的第一应用的功耗数据进行预处理。
在一些实施例中,S302为可选步骤。在一些实施例中,云端可以不对预设时间段内第一产品系列的终端设备的第一应用的功耗数据进行预处理,而是直接根据预设时间段内第一产品系列的终端设备的第一应用的功耗数据进行训练,得到功耗模型。
应理解,第一产品系列可以表示每个产品系列,第一应用可以表示目标应用中的每个应用。本申请实施例中,云端可以按照产品系列,以及应用对所有的功耗数据进行划分,得到第一产品系列的终端设备的第一应用的功耗数据。可以理解的是,同一产品系列中可以包括多个机型的终端设备。
在一些实施例中,预设时间段如可以为一天、一周或一个月等,本申请实施例对此不作限制。示例性的,以预设时间段为30天为例,云端可以获取最近30天内第一产品系列的终端设备的第一应用的功耗数据。换句话说,云端可以获取最近30天内每个产品系列的终端设备的每个应用的功耗数据,以根据每个产品系列的终端设备的每个应用的功耗数据,获取每个产品系列的终端设备的每个应用的功耗模型,可以参照“第一产品系列的终端设备的第一应用”的相关描述。
下面对预处理过程进行说明:
其一,在一些实施例中,因为网络不稳定等原因,终端设备上报的功耗数据中可能会缺失一些特征的数据,本申请实施例中,云端可以删除缺失特征的数据的功耗数据。示例性的,参照表二,如有一条功耗数据中缺少屏幕前台功耗的数据,则云端可以删除该条功耗数据。
在一些实施例中,终端设备上报至数据平台的功耗数据还可能存储重复的问题,如一天内终端设备的一个应用存在多条功耗数据,该种情况下,云端可以做去重处理,保留该终端设备的一个应用的一条功耗数据。示例性的,如云端可以保留CPU后台功耗最大的那条功耗数据,本申请实施例对此不作限制。
其二,因为不同应用运行时,使用的器件不同,器件的功耗数值的数量级存在差异。示例性的,如表二所示,产品系列1、SN1的终端设备中,应用1的Wi-Fi模块前台功耗仅有0.29,但产品系列1、SN2的终端设备中,应用1的屏幕前台功耗有780.33,后者是前者的7000倍,功耗数值的数量级的差异较大。若云端直接使用数量级差异大的功耗数据,则数值较大的特征,在功耗模型中的作用就会显得较为突出和重要,而数值较小的特征,在功耗模型中的作用会显得微不足道,导致功耗模型的准确性低。
因此,为了统一比较的标准,保证功耗模型的准确性,云端可以对功耗数据进行标准化处理,以便预设时间段内第一产品系列的终端设备的第一应用中,各器件的功耗数值,处于同一数量级,以消除不同特征之间因数量级不同而带来的影响。示例性的,云端可以对预设时间段内第一产品系列的终端设备的第一应用的功耗数据,进行Z-Score标准化处理。在一些实施例中,如云端还可以使用极差标准化法、或者线性比例标准化法等方法对功耗数据进行标准化处理。
本申请实施例中,云端对预设时间段内第一产品系列的终端设备的第一应用的功耗数据,进行Z-Score标准化处理后,功耗数据之间的均值可以为0,标准差可以为1。
S303,云端根据预设时间段内第一产品系列的终端设备的第一应用的功耗数据,获取功耗数据中每个特征与主特征的相关系数。
应注意的是,S303中使用的功耗数据为经过预处理的功耗数据。
预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,可以包括至少一个特征的数据。参照表一,如该至少一个特征可以包括但不限于:屏幕相关特征、CPU相关特征、GNSS相关特征、传感器相关特征、GPU相关特征、相机相关特征、闪光灯相关特征、音频相关特征、蓝牙相关特征、modem相关特征,以及Wi-Fi相关特征。应用特征、时间特征,以及产品相关特征不参与S303中与主特征的相关系数的计算。
主特征用于检测第一应用的功耗是否异常。在一些实施例中,主特征可以为预先设定好的。
示例性的,如主特征可以为CPU后台功耗。示例性的,以主特征为CPU后台功耗为例,针对每条功耗数据,云端可以获取每条功耗数据中,每个特征与CPU后台功耗的相关系数。参照表一,针对产品1(第一产品系列)、SN1的终端设备,在2023/5/15时应用1的功耗数据来说,云端可以获取屏幕亮屏功耗与CPU后台功耗的相关系数,屏幕亮屏使用时长与CPU后台功耗的相关系数,屏幕前台功耗与CPU后台功耗的相关系数,……,以及Wi-Fi模块后台总流量与CPU后台功耗的相关系数。
在一些实施例中,针对每条功耗数据,云端可以获取每个特征与主特征的皮尔逊相关系数(pearson correlation coefficient),简称Pearson相关系数。云端可以将Pearson相关系数作为每个特征与主特征的相关系数。其中,Pearson相关系数用于描述两个特征之间的线性关系,Pearson相关系数的取值可以在[-1,1]之间。
两个特征之间的线性关系越强,Pearson相关系数就会越接近-1或1,两个特征之间的线性关系越弱,Pearson相关系数越接近于0。云端可以采用如下公式1-公式4,计算每个特征和主特征的Pearson相关系数:
其中,Y可以表示主特征,如CPU后台功耗。X可以表示功耗数据中的每个特征,该每个特征可以包括主特征或者不包括主特征。公式1用于计算预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,主特征的标准差σY,公式2用于计算预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,每个特征的标准差σX
其中,i表示预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,任意一条功耗数据,n表示功耗数据的数据量。Yi表示该任意一条功耗数据中主特征的数值,μY表示预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,主特征的均值。同理的,以每个特征中包括第一特征为例,Xi表示该任意一条功耗数据中第一特征的数值,μX表示预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,第一特征的均值。
其中,公式3用于计算每个特征和主特征之间的协方差cov(X,Y)。
其中,公式4用于计算每个特征和主特征之间的Pearson相关系数ρ(X,Y)。
在一些实施例中,针对每条功耗数据,云端可以获取每个特征与主特征的斯皮尔曼Spearman相关系数,且将Spearman相关系数作为每个特征与主特征的相关系数。Spearman相关系数可以表示两个特征之间的单调性关系,Spearman相关系数的取值也在[-1,1]之间。
在一些实施例中,针对每条功耗数据,云端可以获取每个特征与主特征的Pearson相关系数,以及每个特征与主特征的Spearman相关系数,每个特征与主特征的相关系数可以包括:每个特征与主特征的Pearson相关系数,以及每个特征与主特征的Spearman相关系数。
S304,云端根据每个特征与主特征的相关系数,确定辅特征。
在一些实施例中,可以预先设置Pearson相关系数阈值以及Spearman相关系数阈值。Pearson相关系数阈值以及Spearman相关系数阈值可以相等或不等。示例性的,如Pearson相关系数阈值可以为0.3,Spearman相关系数阈值可以为0.3。
其中,当云端获取每个特征与主特征的Pearson相关系数时,云端可以将大于或等于Pearson相关系数阈值的特征作为辅特征。当云端获取每个特征与主特征的Spearman相关系数时,云端可以将大于或等于Spearman相关系数阈值的特征作为辅特征。当云端获取每个特征与主特征的Pearson相关系数,以及每个特征与主特征的Spearman相关系数时,云端可以将大于或等于Pearson相关系数阈值,且大于或等于Spearman相关系数阈值的特征作为辅特征。
在一些实施例中,以云端获取每个特征与主特征的Pearson相关系数,以及每个特征与主特征的Spearman相关系数为例,云端可以将大于或等于Pearson相关系数阈值,且大于或等于Spearman相关系数阈值的特征作为第一候选辅特征。云端可以在第一候选辅特征中进行筛选,得到辅特征。
在一些实施例中,一些第一候选辅特征之间会存在多重共线性,即第一候选辅特征不是互相独立的,一个第一候选辅特征可能是其他一个或几个第一候选辅特征的线性组合。示例性的,以导航应用为例,用户使用导航应用时,屏幕可以处于亮屏状态,则屏幕前台使用时长和屏幕亮屏使用时长,以及屏幕亮屏功耗存在多重共线性。该种情况下,若将该几个存在多重共线性的第一候选辅特征作为辅特征训练功耗模型,则该几个第一候选辅特征之间会相互影响,不利于功耗模型输出正确的功耗检测结果。
在一些实施例中,方差膨胀系数(variance inflation factor,VIF)可以衡量第一候选辅特征之间的共线性,VIF值越大,特征之间共线性的问题越明显。在一些实施例中,可以预先设置第一VIF阈值和第二VIF阈值。示例性的,第一VIF阈值可以为100,第二VIF阈值可以为10。
其中,当第一候选辅特征之间的VIF大于或等于100时,表示第一候选辅特征之间存在严重的多重共线性,当第一候选辅特征之间的VIF小于10时,表示第一候选辅特征之间不存在共线性,当第一候选辅特征之间的VIF大于或等于10且小于100时,表示第一候选辅特征之间存在较强的多重共线性。
因此,本申请实施例中,云端可以执行如下步骤:
步骤A、以任意一个第一候选辅特征作为因变量,以其他每个第一候选辅特征作为自变量,且对该第一候选辅特征和其他第一候选辅特征进行线性回归处理,可以参照如下公式5-1:
其中,X表征第一候选辅特征,第一候选辅特征的数量为p个。Xj表示任意一个第一候选辅特征,β0,β1,……,βj表示线性回归处理的系数。表示Xj经线性回归处理后的值。
云端可以采用如下公式5-2和公式6计算该第一候选辅特征和其他第一候选辅特征之间的VIF:
其中,i表示功耗数据中的任意一条功耗数据,n表示功耗数据的总条数,即功耗数据的数据量。Xji表示任意一条功耗数据中任意一个第一候选辅特征的数值,表示任意一条功耗数据中任意一个第一候选辅特征经线性回归处理后的值,/>表示n条功耗数据中该任意一个第一候选辅特征的均值。Rj 2表示该任意一个第一候选辅特征对应的决定系数。VIFj表示该任意一个第一候选辅特征的VIF。
其中,Rj 2是线性回归处理模型里的决定系数,可以度量有多少因变量的变化能被自变量解释,Rj 2越大,VIFj越大,模型解释性越好,自变量和因变量间存在的线性关系越强,越可能存在多重共线性。
示例性的,假设第一候选辅特征有10个,分别为第一候选辅特征1、第一候选辅特征2,……,以及第一候选辅特征10。云端可以采用公式5-1、公式5-2,以及公式6,计算第一候选辅特征1的VIF。
步骤B、重复步骤A,依次将其他每个第一候选辅特征作为因变量,计算该其他每个第一候选辅特征的VIF。
示例性的,云端还可以计算第一候选辅特征2的VIF,第一候选辅特征3的VIF,……,以及第一候选辅特征10的VIF。
在一些实施例中,步骤B和步骤A可以合并为一个步骤,即云端获取每个第一候选辅特征与其他第一候选辅特征的方差膨胀系数VIF。
步骤C、针对最大VIF对应的第一候选辅特征,若最大VIF大于10,且第一候选辅特征大于3个,则删除该最大VIF对应的第一候选辅特征,且执行步骤D。若所有的第一候选辅特征的VIF均小于或等于10,或者最大VIF大于10且第一候选辅特征小于或等于3个,则将所有的第一候选辅特征作为第二候选辅特征。应理解,3个为示例说明,还可以替换为其他数值,3可以称为数量阈值。在一些实施例中,10(第二VIF阈值)可以作为VIF阈值。
示例性的,如最大VIF对应的第一候选辅特征为第一候选辅特征1,且第一候选辅特征1的VIF大于10,且第一候选辅特征的数量为10个,第一候选辅特征的数量大于3个,则删除该第一候选辅特征1。若第一候选辅特征1的VIF(最大VIF)小于或等于10,则将第一候选辅特征1、第一候选辅特征2,……,以及第一候选辅特征10均作为第二候选辅特征。或者,最大VIF大于10,且第一候选辅特征的数量小于或等于3,如第一候选辅特征1的VIF大于10,但第一候选辅特征只有第一候选辅特征1、第一候选辅特征2以及第一候选辅特征3这三个,因此可以将第一候选辅特征1、第一候选辅特征2以及第一候选辅特征3作为第二候选辅特征。
步骤D、对于删除最大VIF对应的第一候选辅特征后的其他第一候选辅特征,重复执行步骤A-步骤C,直至最大VIF小于或等于10,或者剩余的第一候选辅特征的数量小于或等于数量阈值(如3个),且将剩余的第一候选辅特征作为第二候选辅特征。
示例性的,如删除最大VIF对应的第一候选辅特征为第一候选辅特征1后,还剩余9个第一候选辅特征,针对该9个第一候选辅特征,可以重新执行步骤A-步骤C,直至最大VIF小于或等于10,或者剩余的第一候选辅特征的数量小于或等于数量阈值,云端可以将最后剩余的第一候选辅特征作为第二候选辅特征。
在一些实施例中,云端可以将第二候选辅特征作为辅特征。
在一些实施例中,云端还可以在第二候选辅特征中进行筛选,得到辅特征。示例性的,云端可以采用最小绝对收缩和选择(least absolute shrinkage and selectionoperator,LASSO)模型,在第二候选辅特征中进行筛选,得到辅特征。
LASSO模型的本质上也是一种线性回归模型,但区别与传统的线性模型,它加入了L1正则化的惩罚函数,因此LASSO模型拥如下两个特点:
1、压缩一些回归系数,即强制系数的绝对值之和小于某个固定值。
2、使得一些回归系数为零,形成稀疏的结果,有利于筛选出重要特征。
在预设时间段内第一产品系列的终端设备的第一应用的功耗数据中,云端可以获取主特征的数值,以及第二候选辅特征的数值,云端可以将主特征的数值,以及第二候选辅特征的数值输入至LASSO模型,得到每个第二候选辅特征的重要性值。
本申请实施例中,云端可以将最大的3个重要性值对应的第二候选辅特征作为辅特征。3个为示例说明,还可以替换为其他数值。
在一些实施例中,LASSO模型可以如公式7所示:
其中,P表示第二辅特征的数量,j表示任一一个第二辅特征。λ为超参数,可以是预设值。β0是常数。Yi表示n条功耗数据中任一条功耗数据中的主特征的数值,Xji表示n条功耗数据中任一条功耗数据中的任一第二辅特征的数值。
本申请实施例中,云端可以将主特征的数值,以及第二候选辅特征的数值输入至LASSO模型后,可以得到任一第二辅特征的βj,云端对βj取绝对值,βj的绝对值可以表示第二候选辅特征的重要性。βj的绝对值越大,第二候选辅特征的重要性值越大。
图5A为本申请实施例提供的筛选辅特征的一种示意图。图5A中的a展示的为功耗数据中所有的特征。在进行Pearson相关系数和Spearman相关系数的计算后,筛选出第一候选辅特征。参照图5A中的b,如第一候选辅特征可以包括:相机前台功耗、相机前台使用时长、modem前台功耗、modem后台功耗、Wi-Fi模块前台功耗、Wi-Fi模块前台总流量,以及Wi-Fi模块后台功耗。在进行VIF计算筛选后,可以得到第二候选辅特征。参照图5A中的c,第二候选辅特征可以包括:相机前台使用时长、modem后台功耗、Wi-Fi模块前台功耗、Wi-Fi模块前台总流量,以及Wi-Fi模块后台功耗。在进行LASSO模型处理后,可以得到辅特征。参照图5A中的d,如辅特征可以包括:modem后台功耗、Wi-Fi模块前台总流量,以及Wi-Fi模块后台功耗。
S305,云端获取辅特征条件,辅特征条件用于确定用户所属的用户群体。
本申请实施例中,云端在确定辅特征后,还可以获取辅特征条件。辅特征条件用于确定用户所属的用户群体。
在一些实施例中,云端可以基于辅特征,以及预设时间段内第一产品系列的终端设备的第一应用的功耗数据,训练一个分类与回归树(classification and regressiontree,CART),且将CART中的叶子节点作为辅特征条件。应理解,每个叶子节点中用户群体的习惯是相似的。应理解,S305-S307中使用的预设时间段内第一产品系列的终端设备的第一应用的功耗数据为未经Z-Score标准化处理的数据。
在一些实施例中,为了防止CART发生过拟合,并保证每个叶子节点都有足够的数据量,本申请实施例中在训练CART时,可以设置如下超参数:
1、损失函数为均方误差。
2、最大深度为3。其中,根节点可以作为第0层。
3、最多叶子节点数为8。
4、叶子节点最小数据量为5000条。
图4为本申请实施例提供的CART的一种示意图。图4中以CART中包括4个叶子节点为例,参照图4,辅特征条件可以包括:“Wi-Fi模块后台功耗小于或等于5.732,且modem后台功耗小于或等于0.942”,以及,“Wi-Fi模块后台功耗小于或等于5.732,且modem后台功耗大于0.942”,以及,“Wi-Fi模块后台功耗大于5.732,且modem后台功耗小于或等于24186.737”,以及,“Wi-Fi模块后台功耗大于5.732,且modem后台功耗大于24186.737”。
S306,云端根据辅特征条件,以及预设时间段内第一产品系列的终端设备的第一应用的功耗数据,将终端设备对应的用户划分为至少两个用户群体。
示例性的,采用图4中的辅特征条件,可以将用户划分为4类用户群体,分别为用户群体1、用户群体2、用户群体3以及用户群体4。如用户群体1对应的终端设备的功耗数据满足“Wi-Fi模块后台功耗小于或等于5.732,且modem后台功耗小于或等于0.942”,用户群体1对应的终端设备的功耗数据满足“Wi-Fi模块后台功耗小于或等于5.732,且modem后台功耗大于0.942”,用户群体3对应的终端设备的功耗数据满足“Wi-Fi模块后台功耗大于5.732,且modem后台功耗小于或等于24186.737”,以及用户群体4对应的终端设备的功耗数据满足“Wi-Fi模块后台功耗大于5.732,且modem后台功耗大于24186.737”。
S307,云端根据每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据,确定每个用户群体对应的主特征的阈值,主特征的阈值用于检测第一应用的功耗是否异常。
云端在基于辅特征条件划分用户群体后,云端可以根据每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据(简称为功耗数据),确定每个用户群体对应的主特征的阈值。主特征的阈值用于检测第一应用的功耗是否异常。示例性的,如主特征为CPU后台功耗,则云端可以根据每个用户群体的功耗数据,确定每个用户群体对应的CPU后台功耗的阈值,每个用户群体对应的CPU后台功耗的阈值,用于检测该用户群体的功耗数据中的CPU后台功耗是否异常,CPU后台功耗可以表示第一应用的功耗异常。
在一些实施例中,可以预先设置第一预设比例,第一预设比例用于确定主特征的阈值。以主特征为CPU后台功耗为例,针对每个用户群体的功耗数据中的CPU后台功耗的数值,云端可以按照大小顺序进行排序,且将大于或等于90%的CPU后台功耗的数值的第一值,作为CPU后台功耗的阈值。
示例性的,以用户群体1为例,如第一预设比例为90%,图5B中的a以矩形框表征用户群体1对应的功耗数据中的CPU后台功耗的数值的大小分布,在用户群体1对应的功耗数据中的CPU后台功耗的数值中,云端可以将大于或等于90%的CPU后台功耗的数值的第一值作为CPU后台功耗的阈值。示例性的,如用户群体1对应的100条功耗数据,按照CPU后台功耗的数值从小到大的顺序进行排布,将大于或等于第90条功耗数据中CPU后台功耗的数值的第一值,作为CPU后台功耗的阈值。示例性的,第90条功耗数据中CPU后台功耗的数值为A,第91条功耗数据中CPU后台功耗的数值为B,则可以将A和B中任一值作为第一值,或者可以将A或B作为第一值,即CPU后台功耗的阈值。
CPU后台功耗的阈值,用于检测第一应用的功耗是否异常。其中,当第一应用的功耗数据中CPU后台功耗的数值大于或等于该CPU后台功耗的阈值,则可以确定第一应用的功耗异常,当第一应用的功耗数据中CPU后台功耗的数值小于该CPU后台功耗的阈值,则可以确定第一应用的功耗正常。
在一些实施例中,云端还可以划分异常等级。本申请实施例中,还可以预先设置第二预设比例和第三预设比例。示例性的,如第二预设比例可以为98%,第三预设比例可以为99.5%。参照图5B中的b,图5B中的b以矩形框表征用户群体1对应的功耗数据中的CPU后台功耗的数值分布,云端可以计算大于或等于第二预设比例(98%)的CPU后台功耗的数值的第二值,以及大于或等于第三预设比例(99.5%)的CPU后台功耗的数值的第三值。
在该实施例中,云端可以将第一值作为异常时CPU后台功耗的第一阈值,将第二值作为超异常时CPU后台功耗的第二阈值,将第三值作为极端异常时CPU后台功耗的第三阈值。
在一些实施例中,CPU后台功耗的阈值可以包括:用于检测第一应用的功耗是否异常的CPU后台功耗的第一阈值、用于检测第一应用的功耗是否超异常的CPU后台功耗的第二阈值,以及用于检测第一应用的功耗是否极端异常的CPU后台功耗的第三阈值。其中,当第一应用的功耗数据中CPU后台功耗的数值大于或等于第一阈值,且小于第二阈值时,可以确定第一应用的功耗异常,当第一应用的功耗数据中CPU后台功耗的数值大于或等于第二阈值且小于第三阈值时,可以确定第一应用的功耗超异常,当第一应用的功耗数据中CPU后台功耗的数值大于或等于第三阈值时,可以确定第一应用的功耗极端异常。
在一些实施例中,可以分别将“异常、超异常以及极端异常”分别作为第一应用的功耗异常的三个异常等级。示例性的,当第一应用的功耗数据中CPU后台功耗的数值大于或等于第一阈值且小于第二阈值时,第一应用的功耗异常属于第一异常等级,当第一应用的功耗数据中CPU后台功耗的数值大于或等于第二阈值且小于第三阈值时,第一应用的功耗异常属于第二异常等级,当第一应用的功耗数据中CPU后台功耗的数值大于或等于第三阈值时,第一应用的功耗异常属于第三异常等级。其中,第一异常等级的异常程度小于第二异常等级的异常程度,且第二异常等级的异常程度小于第三异常等级的异常程度。
在一些实施例中,针对数据量较多的应用,主特征的数值的分布较为密集,会出现不同异常等级对应的阈值相差较小的问题。本申请实施例中,云端可以对第二阈值和第三阈值进行调整,以便基于调整后的第二阈值和调整后的第三阈值,可以明显区分第一应用的异常等级。
针对第二阈值,云端的调整规则如下:
云端可以采用如下公式8获取第二阈值的正态分布Z值,以检测第二阈值是否需要调整:
其中,Q0.98表示第二阈值,μ表示每个用户群体对应的CPU后台功耗的数值的均值,σ表示每个用户群体对应的CPU后台功耗的数值的标准差。
其中,基于公式8,若得到的正态分布Z值小于预设Z值时,云端可以增大第二阈值。云端采用增大后的第二阈值,重新采用公式8计算,得到的正态分布Z值等于预设Z值。示例性的,如预设Z值可以为3。
其中,调整后的第二阈值可以为原第二阈值和增大后的第二阈值中的最大值,如调整后的第二阈值可以为max(Q0.98,3σ+μ)。
针对第三阈值,云端的调整规则如下:
云端可以采用如下公式9获取第三阈值的正态分布Z值,以检测第三阈值是否需要调整:
其中,Q0.995表示第三阈值。基于公式9,若得到的正态分布Z值小于预设Z值时,云端可以增大第三阈值。云端采用增大后的第三阈值,重新采用公式9计算,得到的正态分布Z值等于预设Z值。示例性的,该增大后的第三阈值可以称为第一候选第三阈值。
另外,调整后第三阈值还需要大于箱型图的异常值outlier,箱型图的异常值outlier可以采用如下公式10计算得到:
outlier=Q0.75+1.5(Q0.75-Q0.25) 公式10
其中,Q0.75表示在用户群体对应的功耗数据中的CPU后台功耗的数值中,大于或等于75%的CPU后台功耗的数值的值,Q0.25表示在用户群体对应的功耗数据中的CPU后台功耗的数值中,大于或等于25%的CPU后台功耗的数值的值。示例性的,该调整后的第三阈值,即大于箱型图的异常值outlier的第三阈值,可以称为第二候选第三阈值。
可以理解的是,本申请实施例中,调整后的第三阈值可以为原第三阈值,第一候选第三阈值,以及第二候选第三阈值中的最大值。如调整后的第三阈值可以为max(Q0.995,3σ+μ,outlier)。
S308,云端根据辅特征条件,以及每个用户群体对应的主特征的阈值,生成第一产品系列的终端设备的第一应用的功耗模型。
在一些实施例中,第一产品系列的终端设备的第一应用的功耗模型可以简称为第一产品系列的第一应用的功耗模型。第一产品系列的第一应用的功耗模型可以包括:划分用户群体的辅特征条件,以及每个用户群体对应的主特征的阈值。在一些实施例中,主特征的阈值可以包括第一阈值。在一些实施例中,主特征的阈值可以包括:第一阈值、第二阈值以及第三阈值。在一些实施例中,主特征的阈值中的第二阈值可以为调整后的第二阈值,主特征中的第三阈值可以为调整后的第三阈值。
每个用户群体对应的主特征的阈值,用于检测第一应用的功耗是否异常,以及检测第一应用的功耗的异常等级。在一些实施例中,可以将每个用户群体对应的主特征的阈值可以称为第一应用的功耗的处理逻辑。
在一些实施例中,云端可以以表格形式、文本形式等存储第一产品系列的第一应用的功耗模型,本申请实施例对功耗模型的形式不做限制。表三中以表格的形式展示了储第一产品系列的第一应用的功耗模型。
表三
表三中的inf表示正无穷(infinity)。
本申请实施例中,云端可以基于最新的终端设备的功耗数据,生成以及更新功耗模型,功耗模型的实时性和准确性高。另外,针对不同产品系列,以及针对不同应用,可以分别生成不同产品系列以及针对不同应用的功耗模型,粒度更细、精度更高。
云端生成功耗模型或更新功耗模型后,可以下发至终端设备,下发方式可以参照上述实施例中的相关描述。在一些实施例中,终端设备可以使用功耗模型,检测终端设备的应用的功耗是否异常,以及异常等级,进而执行相应的操作,以减少应用的功耗。
图6为本申请实施例提供的终端设备的功耗处理方法的另一实施例的流程示意图。参照图6,本申请实施例提供的终端设备的功耗处理方法可以包括:
S601,终端设备采集终端设备的功耗数据,终端设备的功耗数据包括第一应用的功耗数据,终端设备属于第一产品系列。
应理解,本申请实施例以终端设备属于第一产品系列为例,说明终端设备采用第一产品系列的第一应用的功耗模型,以及第一应用的功耗数据,得到第一应用的功耗检测结果的过程。在一些实施例中,第一应用可以为终端设备前台运行的应用,和/或,后台运行的应用。
本申请实施例中,终端设备可以采集终端设备的功耗数据,终端设备的功耗数据可以包括第一应用的功耗数据。
应理解的是,当云端下发的功耗模型为不同应用的功耗模型,并未区分产品系列时,终端设备可以使用第一应用的功耗模型,检测第一应用的功耗是否异常,可以参照第一产品系列的第一应用的功耗模型的相关描述。
S602,终端设备根据第一产品系列的第一应用的功耗模型,以及第一应用的功耗数据,确定用户所属的用户群体,以及用户群体对应的主特征的阈值。
终端设备根据第一应用的功耗数据,以及第一产品系列的第一应用的功耗模型中辅特征条件,可以确定用户所属的用户群体,以及该用户群体对应的主特征的阈值。用户可以理解为终端设备对应的用户。
示例性的,第一应用的功耗数据中,Wi-Fi模块后台功耗为6,modem后台功耗为20,则终端设备基于表三的功耗模型,可以确定用户属于用户群体3,用户群体3对应的主特征的阈值包括:第一阈值(90.83),第二阈值(146.64),以及第三阈值(203.57)。
S603,终端设备根据用户群体对应的主特征的阈值,以及第一应用的功耗数据,获取第一应用的功耗检测结果。
第一应用的功耗数据可以包括主特征的数值。示例性的,如主特征为CPU后台功耗,第一应用的功耗数据中可以包括CPU后台功耗的数值。在一些实施例中,第一应用的功耗检测结果用于指示第一应用的功耗是否异常。其中,当第一应用的功耗数据主特征的数值大于或等于用户群体对应的主特征的阈值时,可以确定第一应用的功耗异常,当第一应用的功耗数据主特征的数值小于用户群体对应的主特征的阈值时,可以确定第一应用的功耗正常。
在一些实施例中,当功耗模型中主特征的阈值包括不同等级的异常阈值时,终端设备可以根据用户群体对应的主特征的阈值,以及第一应用的功耗数据,检测第一应用的功耗是否异常,且可以确定第一应用的功耗的异常等级。在该实施例中,第一应用的功耗检测结果用于指示第一应用的功耗是否异常,以及第一应用的功耗的异常等级。
示例性的,如用户属于用户群体3,参照表三,用户群体3对应的主特征的阈值包括:第一阈值(90.83),第二阈值(146.64),以及第三阈值(203.57)。如第一应用的功耗数据中,CPU后台功耗的数值为100,云端根据主特征的阈值,可以确定CPU后台功耗的数值大于第一阈值,且小于第二阈值,可以确定第一应用的功耗异常,且第一应用的功耗异常为第一异常等级。
S604,当第一应用的功耗异常时,终端设备执行对应的操作。
本申请实施例中,当第一应用的功耗是否异常时,终端设备执行对应的操作。示例性的,终端设备可以输出提示信息,该提示信息用于提示第一应用的功耗异常。
在一些实施例中,当第一应用的功耗异常,且终端设备可以确定第一应用的功耗的异常等级时,终端设备可以根据第一应用的功耗的异常等级,执行对应的操作。其中,不同的异常等级,终端设备执行的操作可以不同。
示例性的,当第一应用的功耗的异常等级为第一异常等级时,终端设备可以降低第一应用使用的CPU的频率至第一频率。当第一应用的功耗的异常等级为第二异常等级时,终端设备可以降低第一应用使用的CPU的频率至第二频率。当第一应用的功耗的异常等级为第三异常等级时,终端设备可以降低第一应用使用的CPU的频率至第三频率。其中,第一频率大于第二频率,且第二频率大于第三频率。也就是说,第一应用的功耗的异常等级越严重或越高,则CPU频率下降的越多。
本申请实施例中对不同的异常等级对应的终端设备的操作不做限制。
本申请实施例中,终端设备不是基于一个固定的功耗阈值对所有的终端设备的功耗进行管理,而是针对不同的用户,可以确定用户所属的用户群体,不同的用户群体对应的主特征的阈值可以不同。终端设备可以根据用户所属的用户群体对应的主特征的阈值,处理终端设备的功耗,以便终端设备可以基于用户的特征或使用习惯,灵活地管控终端设备的功耗。另外,当终端设备的功耗异常时,终端设备还可以确定异常等级,针对不同的异常等级,终端设备可以执行不同的响应操作,灵活性高。
下面以终端设备中的模块交互的角度,说明本申请实施例提供的终端设备的功耗处理方法。图7为本申请实施例提供的终端设备的功耗处理方法的另一实施例的流程示意图。参照图7,本申请实施例提供的终端设备的功耗处理方法可以包括:
S701,功耗处理进程采集终端设备的功耗数据,终端设备的功耗数据包括第一应用的功耗数据,终端设备属于第一产品系列。
S701可以参照图2B中S201中的描述。
S702,功耗处理进程通过功耗接口向计算引擎发送终端设备的功耗数据。
S703,计算引擎调用第一产品系列的第一应用的功耗模型,且根据第一应用的功耗数据,确定用户所属的用户群体,以及用户群体对应的主特征的阈值。
S704,计算引擎根据用户群体对应的主特征的阈值,以及第一应用的功耗数据,获取第一应用的功耗检测结果。
S703-S704可以参照S602-S603中的描述。
S705,计算引擎向功耗处理进程发送第一应用的功耗检测结果。
S706,功耗处理进程根据第一应用的功耗检测结果,当确定第一应用的功耗异常时,向功耗响应单元发送控制指令,控制指令用于指示功耗响应单元执行对应的操作。
S707,功耗响应单元响应于控制指令,执行对应的操作。
S707可以参照S604中的描述。
本申请实施例中提供的终端设备的功耗处理方法,与图6所示的实施例具有相同的技术原理和技术效果,可以参照上述实施例中的相关描述。
图8为本申请实施例提供的终端设备的功耗处理方法的另一实施例的流程示意图。图8结合了图2B、图3,以及图6、图7中的步骤。参照图8,本申请实施例提供的终端设备的功耗处理方法可以包括:
S801,云端根据至少一个终端设备的功耗数据,确定top150应用作为目标应用。
S802,云端删除常驻应用。
S803,云端获取最近30天,不同产品系列的终端设备的top150应用的功耗数据。
S804,云端对功耗数据的数据量进行判断。
S801-S804可以参照S301中的相关描述。
S805,云端对功耗数据进行预处理。
S805可以参照S302中的相关描述。
S806,云端筛选辅特征。
S806可以参照S303-S304中的描述。
S807,云端基于辅特征,对功耗数据进行数据分解。
云端对功耗数据进行数据分解,可以理解为:云端获取辅特征条件,可以参照S305中的描述。
S808,云端获取每个用户群体对应的主特征的阈值。
S808可以参照S306-S307中的描述。
在一些实施例中,云端还可以对主特征的阈值中的第二阈值、第三阈值进行调整,可以参照S307中的相关描述。
S809,云端输出功耗模型。
S810,终端设备根据功耗模型,对终端设备的功耗进行处理。
S810可以参照图6、图7所示的实施例中的描述。
应理解,图8中以实线线条划分了云端的步骤和终端设备的步骤,用虚线线条划分了云端执行的不同的步骤。
本申请实施例中提供的终端设备的功耗处理方法,与图2B、图3,以及图6、图7所示的实施例具有相同的技术原理和技术效果,可以参照上述实施例中的相关描述。
本领域技术人员可以理解,本申请实施例中***架构和终端设备的功耗处理方法可以相互结合和引用,本申请实施例提供的***架构可以执行上述终端设备的功耗处理方法中的步骤。
需要说明的是,本申请所涉及的功耗数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
本申请实施例提供的终端设备的功耗处理方法,可以应用在具备通信功能的电子设备中。电子设备包括终端设备,终端设备的具体设备形态等可以参照上述相关说明,此处不再赘述。
本申请实施例提供一种终端设备,该终端设备包括:包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行上述方法。
本申请实施例还提供一种电子设备,该电子设备可以为上述实施例中所述的终端设备、云端。参照图9,该电子设备中可以包括:处理器901(例如CPU)、存储器902。存储器902可能包含高速随机存取存储器(random-access memory,RAM),也可能还包括非易失性存储器(non-volatile memory,NVM),例如至少一个磁盘存储器,存储器902中可以存储各种指令,以用于完成各种处理功能以及实现本申请的方法步骤。
可选的,本申请涉及的电子设备还可以包括:电源903、通信总线904以及通信端口905。上述通信端口905用于实现电子设备与其他外设之间进行连接通信。在本申请实施例中,存储器902用于存储计算机可执行程序代码,程序代码包括指令;当处理器901执行指令时,指令使电子设备的处理器901执行上述方法实施例中的动作,其实现原理和技术效果类似,在此不再赘述。
本申请实施例提供一种芯片。芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行上述实施例中的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质。计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现上述方法。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
一种可能的实现方式中,计算机可读介质可以包括RAM,ROM,只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储器,磁盘存储器或其它磁存储设备,或目标于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(Digital Subscriber Line,DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘,激光盘,光盘,数字通用光盘(Digital Versatile Disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行上述方法。
本申请实施例是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (17)

1.一种终端设备的功耗处理方法,其特征在于,应用于终端设备,所述方法包括:
采集所述终端设备的功耗数据,所述功耗数据包括第一应用的功耗数据;
根据所述第一应用的功耗模型,确定所述终端设备对应的用户所属的用户群体,以及所述用户群体对应的主特征的阈值;
根据所述主特征的阈值,以及所述第一应用的功耗数据中所述主特征的数值,检测所述第一应用的功耗是否异常,得到所述第一应用的功耗检测结果;
根据所述第一应用的功耗检测结果,执行对应的操作;
所述第一应用的功耗模型包括:辅特征条件,以及至少一个用户群体对应的主特征的阈值,所述辅特征条件用于确定用户所属的用户群体;
所述根据所述第一应用的功耗模型,确定所述终端设备对应的用户所属的用户群体,以及所述用户群体对应的主特征的阈值,包括:
根据所述辅特征条件,以及所述第一应用的功耗数据中辅特征的数值,确定所述终端设备对应的用户所属的用户群体;
根据所述至少一个用户群体对应的主特征的阈值,以及所述终端设备对应的用户所属的用户群体,确定所述终端设备对应的用户所属的用户群体对应的主特征的阈值。
2.根据权利要求1所述的方法,其特征在于,所述第一应用的功耗模型具体为第一产品系列的第一应用的功耗模型,所述终端设备属于所述第一产品系列。
3.根据权利要求1所述的方法,其特征在于,所述根据所述主特征的阈值,以及所述第一应用的功耗数据中所述主特征的数值,检测所述第一应用的功耗是否异常,得到所述第一应用的功耗检测结果,包括:
当所述主特征的数值大于或等于所述主特征的阈值时,确定所述第一应用的功耗异常,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常;
当所述主特征的数值小于所述主特征的阈值时,确定所述第一应用的功耗正常,所述第一应用的功耗检测结果用于指示所述第一应用的功耗正常。
4.根据权利要求1所述的方法,其特征在于,所述主特征的阈值包括:第一阈值、第二阈值,以及第三阈值,所述第一阈值小于所述第二阈值,且所述第二阈值小于所述第三阈值;
所述根据所述主特征的阈值,以及所述第一应用的功耗数据中所述主特征的数值,检测所述第一应用的功耗是否异常,得到所述第一应用的功耗检测结果,包括:
当所述主特征的数值大于或等于所述第一阈值,且小于所述第二阈值时,确定所述第一应用的功耗异常为第一异常等级,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常的等级为所述第一异常等级;
当所述主特征的数值大于或等于所述第二阈值,且小于所述第三阈值时,确定所述第一应用的功耗异常为第二异常等级,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常的等级为所述第二异常等级;
当所述主特征的数值大于或等于所述第三阈值时,确定所述第一应用的功耗异常为第三异常等级,所述第一应用的功耗检测结果用于指示所述第一应用的功耗异常的等级为所述第三异常等级;
当所述主特征的数值小于所述第一阈值时,确定所述第一应用的功耗正常,所述第一应用的功耗检测结果用于指示所述第一应用的功耗正常。
5.根据权利要求4所述的方法,其特征在于,所述第一应用的功耗异常等级不同,所述终端设备执行的对应的操作不同。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述方法还包括:
向云端发送功耗模型获取请求;
接收来自所述云端的所述第一应用的功耗模型。
7.根据权利要求1-5中任一项所述的方法,其特征在于,所述采集所述终端设备的功耗数据之后,还包括:
向数据平台发送所述终端设备的功耗数据。
8.一种终端设备的功耗处理方法,其特征在于,应用于云端,所述方法包括:
从数据平台获取至少一个终端设备的功耗数据;所述功耗数据包括至少一个应用的功耗数据,第一应用包含于所述至少一个应用中,功耗模型包括所述第一应用的功耗模型;所述第一应用的功耗模型具体为第一产品系列的第一应用的功耗模型;
根据所述至少一个终端设备的功耗数据,训练得到功耗模型;
接收来自终端设备的功耗模型获取请求;
向所述终端设备发送所述功耗模型;
训练得到所述第一产品系列的第一应用的功耗模型,包括:
根据预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,获取主特征与其他每个特征的相关系数;
根据所述主特征与其他每个特征的相关系数,确定辅特征;
根据所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,以及所述辅特征,获取辅特征条件,所述辅特征条件用于确定用户所属的用户群体;
根据所述辅特征条件,以及所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,将所述至少一个终端设备对应的用户划分为至少两个用户群体;
根据每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据,确定每个用户群体对应的主特征的阈值,所述主特征的阈值用于检测所述第一应用的功耗是否异常;
根据所述辅特征条件,以及每个用户群体对应的主特征的阈值,生成所述第一产品系列的第一应用的功耗模型。
9.根据权利要求8所述的方法,其特征在于,所述主特征与其他每个特征的相关系数包括皮尔逊Pearson相关系数和斯皮尔曼Spearman相关系数;
所述根据所述主特征与其他每个特征的相关系数,确定辅特征,包括:
将大于或等于Pearson相关系数阈值,且大于或等于Spearman相关系数阈值的特征作为第一候选辅特征;
根据所述第一候选辅特征,确定所述辅特征。
10.根据权利要求9所述的方法,其特征在于,所述根据所述第一候选辅特征,确定所述辅特征,包括:
步骤A,获取每个第一候选辅特征与其他第一候选辅特征的方差膨胀系数VIF;
步骤B,针对最大VIF对应的第一候选辅特征,若所述最大VIF大于VIF阈值,且第一候选辅特征的数量大于数量阈值,执行步骤C;若所述最大VIF大于VIF阈值且第一候选辅特征的数量小于或等于所述数量阈值,或者,所述最大VIF小于或等于所述VIF阈值,则将所有的第一候选辅特征作为第二候选辅特征,且根据所述第二候选辅特征,确定所述辅特征;
步骤C,删除所述最大VIF对应的第一候选辅特征,且返回执行步骤A-步骤B,直至最大VIF小于或等于所述VIF阈值,或者剩余的第一候选辅特征的数量小于或等于所述数量阈值,且将剩余的第一候选辅特征作为第二候选辅特征,且根据所述第二候选辅特征,确定所述辅特征。
11.根据权利要求10所述的方法,其特征在于,所述根据所述第二候选辅特征,确定所述辅特征,包括:
根据最小绝对收缩和选择模型,获取每个第二候选辅特征的重要性值;
将排序在前N的第二候选辅特征作为所述辅特征,所述N等于所述数量阈值。
12.根据权利要求8-11中任一项所述的方法,其特征在于,所述根据所述预设时间段内所述第一产品系列的终端设备的第一应用的功耗数据,以及所述辅特征,获取辅特征条件,包括:
根据所述辅特征,以及所述预设时间段内第一产品系列的终端设备的第一应用的功耗数据,训练分类与回归树CART;
将所述CART中的叶子节点作为所述辅特征条件。
13.根据权利要求8-11中任一项所述的方法,其特征在于,所述根据每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据,确定每个用户群体对应的主特征的阈值,包括:
在所述每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据中,根据所述主特征的数值,以及第一预设比例,确定所述每个用户群体对应的主特征的阈值。
14.根据权利要求13所述的方法,其特征在于,基于所述第一预设比例确定的所述每个用户群体对应的主特征的阈值为第一阈值;所述方法还包括:
在所述每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据中,根据所述主特征的数值,以及第二预设比例,确定所述每个用户群体对应的主特征的第二阈值;
在所述每个用户群体的预设时间内第一产品系列的终端设备的第一应用的功耗数据中,根据所述主特征的数值,以及第三预设比例,确定所述每个用户群体对应的主特征的第三阈值,所述第一预设比例小于所述第二预设比例,所述第二预设比例小于所述第三预设比例,所述第一阈值、所述第二阈值,以及所述第三阈值用于确定所述第一应用的功耗异常的等级。
15.一种终端设备,其特征在于,包括:处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述终端设备执行如权利要求1-7中任一项所述的方法。
16.一种电子设备,其特征在于,包括:处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述电子设备执行如权利要求8-14中任一项所述的方法。
17.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-14中任一项所述的方法。
CN202310598030.6A 2023-05-24 2023-05-24 终端设备的功耗处理方法、终端设备以及可读存储介质 Active CN116795628B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310598030.6A CN116795628B (zh) 2023-05-24 2023-05-24 终端设备的功耗处理方法、终端设备以及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310598030.6A CN116795628B (zh) 2023-05-24 2023-05-24 终端设备的功耗处理方法、终端设备以及可读存储介质

Publications (2)

Publication Number Publication Date
CN116795628A CN116795628A (zh) 2023-09-22
CN116795628B true CN116795628B (zh) 2024-05-14

Family

ID=88048895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310598030.6A Active CN116795628B (zh) 2023-05-24 2023-05-24 终端设备的功耗处理方法、终端设备以及可读存储介质

Country Status (1)

Country Link
CN (1) CN116795628B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116804960B (zh) * 2023-05-24 2024-06-04 荣耀终端有限公司 终端设备的功耗处理方法和***

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012063917A (ja) * 2010-09-15 2012-03-29 Ntt Docomo Inc アプリケーションの消費電力を評価する装置、配信サーバ及び方法
CN108337358A (zh) * 2017-09-30 2018-07-27 广东欧珀移动通信有限公司 应用清理方法、装置、存储介质及电子设备
CN111045507A (zh) * 2019-11-27 2020-04-21 RealMe重庆移动通信有限公司 名单管控方法、装置、移动终端及存储介质
CN111242808A (zh) * 2020-04-26 2020-06-05 广东电网有限责任公司东莞供电局 一种电力用户分类方法、电子设备和存储介质
CN111316199A (zh) * 2018-10-16 2020-06-19 华为技术有限公司 一种信息处理方法及电子设备
CN111722693A (zh) * 2020-05-29 2020-09-29 北京小米松果电子有限公司 功耗调节方法、装置、存储介质、服务器和终端
CN113050782A (zh) * 2019-12-27 2021-06-29 Oppo广东移动通信有限公司 画像构建方法、装置、终端及存储介质
CN113055984A (zh) * 2019-12-26 2021-06-29 Oppo广东移动通信有限公司 终端控制方法、装置、移动终端及存储介质
CN113055423A (zh) * 2019-12-27 2021-06-29 Oppo广东移动通信有限公司 策略的推送方法、策略的执行方法、装置、设备及介质
CN114417733A (zh) * 2022-01-29 2022-04-29 龙芯中科技术股份有限公司 构建功耗预测模型的方法、装置、电子设备及存储介质
CN114595546A (zh) * 2020-12-03 2022-06-07 Oppo广东移动通信有限公司 功耗模型建模方法、功耗计算方法、装置、介质及设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9495272B2 (en) * 2009-06-11 2016-11-15 Oracle America, Inc. Method and system for generating a power consumption model of at least one server
US8458116B2 (en) * 2009-11-05 2013-06-04 Qualcomm Incorporated Generating a power model for an electronic device
WO2017183029A1 (en) * 2016-04-19 2017-10-26 Grid4C Method and system for energy consumption prediction
JP7424807B2 (ja) * 2019-11-28 2024-01-30 ファナック株式会社 機械学習装置、消費電力予測装置、及び制御装置
CN111708427B (zh) * 2020-05-29 2022-07-22 广州三星通信技术研究有限公司 管理终端的方法和终端

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012063917A (ja) * 2010-09-15 2012-03-29 Ntt Docomo Inc アプリケーションの消費電力を評価する装置、配信サーバ及び方法
CN108337358A (zh) * 2017-09-30 2018-07-27 广东欧珀移动通信有限公司 应用清理方法、装置、存储介质及电子设备
CN111316199A (zh) * 2018-10-16 2020-06-19 华为技术有限公司 一种信息处理方法及电子设备
CN111045507A (zh) * 2019-11-27 2020-04-21 RealMe重庆移动通信有限公司 名单管控方法、装置、移动终端及存储介质
CN113055984A (zh) * 2019-12-26 2021-06-29 Oppo广东移动通信有限公司 终端控制方法、装置、移动终端及存储介质
CN113050782A (zh) * 2019-12-27 2021-06-29 Oppo广东移动通信有限公司 画像构建方法、装置、终端及存储介质
CN113055423A (zh) * 2019-12-27 2021-06-29 Oppo广东移动通信有限公司 策略的推送方法、策略的执行方法、装置、设备及介质
CN111242808A (zh) * 2020-04-26 2020-06-05 广东电网有限责任公司东莞供电局 一种电力用户分类方法、电子设备和存储介质
CN111722693A (zh) * 2020-05-29 2020-09-29 北京小米松果电子有限公司 功耗调节方法、装置、存储介质、服务器和终端
CN114595546A (zh) * 2020-12-03 2022-06-07 Oppo广东移动通信有限公司 功耗模型建模方法、功耗计算方法、装置、介质及设备
CN114417733A (zh) * 2022-01-29 2022-04-29 龙芯中科技术股份有限公司 构建功耗预测模型的方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN116795628A (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
CN110049372B (zh) 主播稳定留存率的预测方法、装置、设备及存储介质
CN106649509B (zh) 用户特征提取方法及装置
CN116795628B (zh) 终端设备的功耗处理方法、终端设备以及可读存储介质
CN109862013B (zh) 一种直播间推荐方法、存储介质、电子设备及***
US11727419B2 (en) Realtime busyness for places
CN111797752A (zh) 违规视频检测方法、装置、设备及存储介质
CN105590240A (zh) 一种品牌广告效果优化的离散计算方法
CN108366012B (zh) 一种社交关系建立方法、装置及电子设备
CN112182295B (zh) 基于行为预测的业务处理方法、装置及电子设备
CN111459783A (zh) 应用程序优化方法、装置、电子设备及存储介质
WO2016165414A1 (zh) 一种推送信息的方法和装置
CN114245185B (zh) 视频推荐方法、模型训练方法、装置、电子设备及介质
CN112925899B (zh) 排序模型建立方法、案件线索推荐方法、装置及介质
CN112115382B (zh) 数据处理方法及装置、存储介质、电子装置
CN113852510A (zh) 一种网络安全态势预测方法和装置、电子设备、存储介质
CN110210884B (zh) 确定用户特征数据的方法、装置、计算机设备及存储介质
KR101568800B1 (ko) 실시간 이슈 검색어 선별 방법 및 시스템
CN113626705B (zh) 用户留存分析方法、装置、电子设备和存储介质
CN116980281A (zh) 节点选取方法、装置、第一节点、存储介质及程序产品
CN116804960B (zh) 终端设备的功耗处理方法和***
US20210256037A1 (en) Method for real-time cohort creation based on entity attributes derived from partially observable location data
CN110442572B (zh) 用户特征值的确定方法及装置
CN111382626B (zh) 视频中违规图像的检测方法、装置、设备及存储介质
CN109600639B (zh) 基于用户偏好的用户相似度计算方法、装置、设备及介质
CN113835905A (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