用于管理应用程序的装置和方法与流程

专利2022-05-09  35


本公开涉及数据管理领域。更具体地,本公开涉及用于管理设备中的应用程序的存储、执行等的装置和方法,其中在所述设备上安装了各种类型的应用程序。



背景技术:

随着诸如智能手机的移动设备的发展,应用程序的类型呈指数级增长。用户可以在其智能手机上安装用于提供各种相应服务的各种类型的应用程序。

当许多应用程序安装在设备上时,可能会消耗设备的辅助存储设备和主存储设备的存储容量。虽然用于提供类似功能的公共模块可以存在于用于提供不同服务的应用程序中,但是所有的应用程序都单独安装在设备上并存储在设备中,这可能不必要地浪费辅助存储设备和主存储设备的存储容量。



技术实现要素:

技术问题

根据本公开的实施例,用于管理应用程序的装置和方法的目的是减小存储在设备中的应用程序的数据大小。

此外,根据本公开的实施例,用于管理应用程序的装置和方法的目的是减小加载到主存储设备中以执行应用程序的数据的大小。

附加方面部分将在下面的描述中阐述,并且部分将从描述中变得明显,或者可以通过实践本公开的所呈现的实施例来获知。

技术解决方案

根据本公开的实施例,提供了一种用于管理应用程序的装置(包括存储器和中央处理设备),该中央处理设备被配置为:将安装在该装置上的第一应用程序的第一神经网络和安装在该装置上的第二应用程序的第二神经网络进行比较;基于将第一神经网络和第二神经网络进行比较的结果,确定在结构上与第一神经网络和第二神经网络相对应的公共神经网络;将公共神经网络存储在存储器中;以及当执行第一应用程序或第二应用程序时,加载公共神经网络并利用公共神经网络处理第一应用程序或第二应用程序的数据。

附图说明

提供每个附图的简要描述是为了更全面地理解本说明书中引用的附图。

从以下结合附图的描述中,本公开的某些实施例的上述和其他方面、特征和优点将变得更加明显,其中:

图1是示出根据本公开实施例的用于管理应用程序的装置的配置的框图;

图2是示出构成存储在辅助存储设备中的应用程序的文件的框图;

图3是根据本公开的实施例的用于描述管理应用程序的方法的流程图;

图4是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图5是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图6是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图7是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图8是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图9是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图10是用于描述确定第一神经网络和第二神经网络在结构上是否彼此对应的方法的示意图;

图11是描述存储第二神经网络的第二内部参数的方法的流程图;

图12是描述存储第二神经网络的第二内部参数的方法的流程图;

图13是用于描述获得公共参数和第二内部参数之间的差异信息的方法的示意图;

图14是用于描述获得公共参数和第二内部参数之间的差异信息的方法的示意图;

图15是描述更新第一应用程序的方法的流程图;

图16是描述更新第一应用程序的方法的流程图;

图17是示出与更新第一应用程序的方法相关的公共神经网络、公共参数、基于更新文件获得的神经网络、和基于更新文件获得的内部参数的框图;并且

图18是示出根据本公开的另一实施例的管理应用程序的方法的流程图。

具体实施方式

根据本公开的实施例,提供了一种用于管理应用程序的装置,包括存储器和中央处理设备,该中央处理设备被配置为:将安装在该装置上的第一应用程序的第一神经网络和安装在该装置上的第二应用程序的第二神经网络进行比较;基于将第一神经网络和第二神经网络进行比较的结果,确定在结构上与第一神经网络和第二神经网络相对应的公共神经网络;将公共神经网络存储在存储器中;以及当执行第一应用程序或第二应用程序时,加载公共神经网络并利用公共神经网络处理第一应用程序或第二应用程序的数据。

装置还可以包括辅助存储设备,该辅助存储设备存储构成第一应用程序的第一文件、构成第二应用程序的第二文件、和与公共神经网络相对应的一个或多个文件。

中央处理设备还可以被配置为:使用公共神经网络生成指示第一应用程序和第二应用程序的映射信息,并将映射信息存储在辅助存储设备中。

中央处理设备还可以被配置为:从包括在第一应用程序中的第一元文件获得第一神经网络的第一结构信息;从包括在第二应用程序中的第二元文件获得第二神经网络的第二结构信息;和通过将第一神经网络的第一结构信息和第二神经网络的第二结构信息进行比较来确定公共神经网络。

第一结构信息可以包括包含在第一神经网络中的第一类型的第一层和第一层之间的第一连接关系,并且第二结构信息可以包括包含在第二神经网络中的第二类型的第二层和第二层之间的第二连接关系。

第一结构信息可以包括包含在第一神经网络中的第一层的第一输入数据和第一输出数据的第一大小,并且第二结构信息可以包括包含在第二神经网络中的第二层的第二输入数据和第二输出数据的第二大小。

第一结构信息可以包括包含在第一神经网络的第一完全连接层中的每层的第一数量的节点,并且第二结构信息可以包括包含在第二神经网络的第二完全连接层中的每层的第二数量的节点。

第一结构信息可以包括第一神经网络的第一卷积层和第一数量的第一滤波器核、第一神经网络的第一滤波器核的第一大小、第一神经网络的第一卷积层的第一步长,并且第二结构信息可以包括第二神经网络的第二卷积层和第二数量的第二滤波器核、第二神经网络的第二滤波器核的第二大小、和第二神经网络的第二卷积层的第二步长。

第一结构信息可以包括第一神经网络的第一池化层和第一滤波器核的第一大小、和第一神经网络的第一池化层的第一步长,并且第二结构信息可以包括第二神经网络的第二池化层和第二滤波器核的第二大小、和第二神经网络的第二池化层的第二步长。

中央处理设备还可以被配置为:将用于在第一神经网络中处理输入数据的第一内部参数作为公共参数存储在辅助存储设备中;确定公共参数与用于在第二神经网络中处理输入数据的第二内部参数不同;确定公共参数和第二内部参数之间的差异信息;和将差异信息存储在辅助存储设备中。

中央处理设备还可以被配置为恢复第二内部参数,确定添加到公共参数的残差参数、与公共参数相乘的变换参数、或用于选择公共参数的一部分的作为差异信息的选择参数中的至少一者。

中央处理设备还可以被配置为:根据多种计算方法确定公共参数和第二内部参数之间的多条差异信息;和将多条差异信息中具有最小数据大小的差异信息存储在辅助存储设备中。

中央处理设备还可以被配置为:将用于在第一神经网络中处理输入数据的第一内部参数作为公共参数存储在辅助存储设备中;确定公共参数与用于在第二神经网络中处理输入数据的第二内部参数不同;确定公共参数和第二内部参数之间的差异信息;和基于通过将差异信息的大小与第二内部参数的大小进行比较而获得的结果,确定是否将差异信息存储在辅助存储设备中。

中央处理设备还可以被配置为:当执行利用第二神经网络的应用时,基于差异信息从公共参数恢复第二内部参数;和将第二内部参数加载到存储器中。

中央处理设备还可以被配置为:获取与第一应用程序的第一神经网络相关的更新数据;获得对应于更新数据的神经网络;确定该神经网络和该公共神经网络在结构上不彼此对应;和将该神经网络作为第一应用程序的单独的神经网络存储在辅助存储设备中。

中央处理设备还可以被配置为:确定神经网络和公共神经网络在结构上彼此对应,确定公共参数和基于该更新数据获得的内部参数不相同,并且将该公共参数和该内部参数之间的差异信息存储在辅助存储设备中。

中央处理设备还可以被配置为:当神经网络和公共神经网络在结构上彼此对应时,不将神经网络存储在辅助存储设备中。

根据本公开的实施例,提供了一种用于管理应用程序的装置,包括存储器和中央处理设备,该中央处理设备被配置为:将安装在该装置上的第一应用程序中包括的第一神经网络的第一层和安装在该装置上的第二应用程序中包括的第二神经网络的第二层进行比较;基于将第一神经网络的第一层和第二神经网络的第二层进行比较的结果,确定在结构上与第一神经网络和第二神经网络相对应的公共神经网络;将公共神经网络存储在存储器中;和当执行第一应用程序或第二应用程序时,加载公共神经网络并利用公共神经网络处理第一应用程序或第二应用程序的数据。

根据本公开的另一实施例,提供了一种由用于管理应用程序的装置执行的管理应用程序的方法,包括:将安装在该装置上的第一应用程序中包括的第一神经网络和安装在该装置上的第二应用程序中包括的第二神经网络进行比较;基于比较的结果,确定在结构上与第一神经网络和第二神经网络相对应的公共神经网络;将公共神经网络存储在存储器中;和当执行第一应用程序或第二应用程序时,加载公共神经网络并利用公共神经网络处理第一应用程序或第二应用程序的数据。

发明模式

由于本公开允许各种变化及其众多实施例,所以本公开的实施例将在附图中示出并在书面描述中详细描述。然而,这并不旨在将本公开限于特定的实践模式,并且应当理解,不脱离本公开的精神和技术范围的所有变化、等同物和替代物都包含在本公开中。

在本公开的实施例的描述中,当相关技术的某些详细解释被认为不必要地模糊了本公开的本质时,这些详细解释被省略。同样,在本公开的实施例的描述中使用的数字(例如,第一和第二)旨在仅将一个组件与另一个组件区分开来。

当一个组件被称为“连接”到任何其他组件或由任何其他组件“访问”时,应该理解,该组件可以直接连接到其他组件或由其他组件访问,但是另一个新组件也可以插入它们之间,除非另外特别指出。

关于具有诸如“单元”或“模块”的后缀的元件,两个或更多个元件可以组合成一个元件,或者一个元件可以根据功能分成两个或更多个元件。此外,除了每个组件负责的主要功能之外,下面将要描述的各个组件中的每一个可以另外执行其他组件负责的功能中的一些或所有功能,并且各个组件负责的主要功能中的一些功能可以由其他组件专门执行。

在整个公开内容中,表述“a、b或c中的至少一个”表示:仅a、仅b、仅c;a和b、a和c、b和c;a、b和c的全部;或其变体。

另外,在说明书中,当“将a(例如,文件、神经网络或内部参数)存储在辅助存储设备中”,这可能意味着没有被存储在辅助存储设备中的a被新存储在辅助存储设备中,或者可能意味着保持a已经被存储在辅助存储设备中的状态。此外,当“a未被存储在辅助存储设备中”时,这可能意味着未被存储在辅助存储设备中的a未被存储在辅助存储设备中,或者可能意味着已经存储在辅助存储设备中的a从辅助存储设备中被移除。

此外,本文使用的术语“应用程序”是指被设计成执行特定功能的程序,并且可以包括安装在计算机、智能手机等上的各种类型的程序中的任何一种。“应用程序”的示例可以包括智能手机应用、个人计算机(pc)应用、机顶盒(stb)应用、网络应用、即时应用、和车辆应用。

现在将详细描述本公开的实施例。

图1是示出根据本公开实施例的用于管理应用程序的装置100的配置的框图。

设备100可以是各种设备中的任何一种。例如,装置100可以是用于安装和执行应用程序的各种设备中的任何一种,诸如台式pc、笔记本电脑、平板pc、智能手机、可穿戴设备、导航设备、车辆、或tv。

参考图1,装置100可以包括辅助存储设备110、主存储设备130、和中央处理设备150。

辅助存储设备110存储至少一个应用程序140。用于补充主存储设备130的有限容量的辅助存储设备110的示例可以包括但不限于硬盘驱动器(hdd)、固态驱动器(ssd)、通用串行总线(usb)、软盘、磁带、和光盘(例如,光盘(cd)、数字多功能光盘(dvd)、或蓝光光盘)。存储在辅助存储设备110中的应用程序140可以包括被设计成实现人工智能(ai)技术的程序。应用程序140可以包括神经网络和内部参数,可以根据内部参数处理输入到神经网络的数据,并且可以输出处理结果。

主存储设备130在中央处理设备150的控制下加载执行应用程序140所需的数据。主存储设备130的示例可以包括但不限于只读存储器(rom)、掩蔽rom、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、和静态随机存取存储器(sram)。

中央处理设备150控制辅助存储设备110和主存储设备130的操作。中央处理设备150可以包括中央处理单元(cpu)、图形处理单元(gpu)、或人工智能(ai)处理器中的至少一者。

中央处理设备150可以从安装在辅助存储设备110上的应用程序确定公共神经网络和公共参数,可以获得内部参数之间的差异信息,并且可以将差异信息存储在辅助存储设备110中。此外,中央处理设备150可以通过不在辅助存储设备110中存储构成应用程序的文件中的一些来减小存储在辅助存储设备110中的应用程序的大小。此外,中央处理设备150可以通过将由多个应用程序共享的公共神经网络和公共参数加载到主存储设备130来减小加载到主存储设备130中的数据的大小。

图2是示出构成存储在辅助存储设备110中的应用程序140的文件的框图,并且应用程序140包括多个文件。文件可以包括执行应用程序140所需的各种类型的文件,诸如可执行文件、源文件、二进制文件、数据库文件、图像文件、和视频文件。根据本公开的装置100可以通过使用包括神经网络文件145的应用程序140来优化辅助存储设备110和主存储设备130的存储容量。

神经网络文件145是实施机器学习的神经网络的文件,并且神经网络包括至少一层,并且接收输入数据,根据内部参数处理输入数据,并且然后提供输出数据作为处理的结果。当存储神经网络时,作为实施神经网络的文件的神经网络文件存储在存储器中,并且当移除神经网络时,作为实施神经网络的文件的神经网络文件从存储器中移除。

神经网络可以是用于实现ai技术的网络。随着应用ai技术的应用程序被使用,ai技术的识别率提高,并且更准确地理解用户的口味。因此,ai技术可以用基于深度学习的ai程序来代替基于规则的智能系统。

ai技术包括机器学习(例如,深度学习)和使用机器学习的元素技术。机器学习是一种对输入数据特征进行自分类和学习的算法技术,并且元素技术是使用机器学习算法(诸如深度学习)来模拟人脑功能(诸如识别和决策)的技术,并且包括诸如语言理解、视觉理解、推理/预测、知识表示、和运动控制的技术领域。

ai技术应用到的各个领域如下。语言理解是用于识别和应用/处理人类语言/字符的技术,并且包括自然语言处理、机器翻译、对话系统、问答、和语音识别/合成。视觉理解是用于以人类视觉系统的方式识别和处理对象的技术,并且包括对象识别、对象跟踪、图像搜索、人物识别、场景理解、空间理解、和图像增强。推理/预测是用于判断信息并对其进行逻辑推理和预测的技术,并且包括基于知识/概率的推理、优化预测、基于偏好的计划、和推荐。知识表示是将人类经验信息合并到知识数据中的自动化技术,并且包括知识构建(例如,数据生成/分类)和知识管理(例如,数据利用)。运动控制是用于控制自主车辆的自动驾驶和机器人的运动的技术,并且包括移动控制(例如,导航、碰撞避免、或驾驶)和操纵控制(例如,行为控制)。

在图2中,应用程序140可以包括元文件146,元文件146可以包括与神经网络相关的信息。例如,元文件146可以包括关于构成神经网络的至少一层的类型、操作方法等的信息。如下描述的,中央处理设备150可以通过使用元文件来确定是否提取公共神经网络。

作为在构成神经网络的至少一层中的每一层的操作中使用的值的内部参数可以包括例如用于将输入值应用于算术操作的权重值和/或输入值和输出值之间的映射值(例如,单词嵌入的嵌入矩阵)。此外,内部参数可以包括权重矩阵和/或映射值矩阵。内部参数是要被训练的值,并且神经网络可以基于训练数据优化内部参数。在本公开的实施例中,内部参数可以存储在神经网络文件145中,或者可以作为元文件146或单独的参数文件被包括应用程序140中。

现在将参考图3详细描述管理装置100的应用程序的方法。

在操作s310中,中央处理设备150确定第一应用程序的第一神经网络和第二应用程序的第二神经网络在结构上是否彼此对应。当第一神经网络和第二神经网络在结构上彼此对应时,这可能意味着构成神经网络的层的类型和/或层之间的连接关系彼此对应。

在安装文件从应用分发服务器发送到装置100之后,可以通过执行安装文件将第一应用程序和/或第二应用程序安装在装置100上。或者,在通过usb等将安装文件发送到装置100之后,可以通过执行安装文件将第一应用程序和/或第二应用程序安装在装置100上。

可以首先安装第一应用程序,并且然后安装第二应用程序,或者可以首先安装第二应用程序,并且然后安装第一应用程序。

中央处理设备150可以基于构成神经网络的层的类型和连接关系来确定第一神经网络和第二神经网络在结构上是否彼此对应,并且将参考图4-10详细描述具体的确定方法。

当在操作s320-yes中第一神经网络和第二神经网络在结构上彼此对应时,在操作s330中,中央处理设备150可以将构成第二应用程序的文件中的除第二神经网络之外的文件存储在辅助存储设备110中。中央处理设备150可以不在辅助存储设备110中存储构成第二应用程序的文件中的第二神经网络文件。在本公开的实施例中,当将第二神经网络的第二内部参数存储在第二神经网络文件中时,第二内部参数与参考图11和12描述的第一神经网络的第一内部参数不同,并且差异信息的存储是不必要的,中央处理设备150可以不将第二神经网络文件存储在辅助存储设备110中,并且可以将存储在第二神经网络文件中的第二内部参数作为单独文件存储在辅助存储设备110中。

在操作s340中,中央处理设备150可以将构成第一应用程序的文件存储在辅助存储设备110中,并且可以将第一神经网络作为公共神经网络存储在辅助存储设备110中。

尽管在图3中操作s340是在操作s330之后执行的,这仅仅是示例,并且操作s340和操作s330可以同时执行,或者操作s340可以在操作s330之前执行。

在操作s350中,当执行第一应用程序或第二应用程序并且需要执行第一神经网络或第二神经网络时,中央处理设备150可以将公共神经网络(即,第一神经网络)加载到主存储设备130中,并且然后可以执行第一应用或第二应用来利用公共神经网络。中央处理设备150可以向加载到主存储设备130中的公共神经网络提供输入数据,并且可以从公共神经网络获得作为处理输入数据的结果而输出的输出数据。例如,当执行第一应用程序时,中央处理设备150可以将根据执行第一应用程序(例如,拍摄照片的拍摄应用)的预定功能(例如,拍摄功能或照片选择功能)而获得的输入数据(例如,照片),作为输入数据提供给公共神经网络,并且可以从公共神经网络获得输出数据,作为处理输入数据的结果。中央处理设备150可以使用从公共神经网络输出的数据作为用于执行第一应用程序的预定功能(例如,显示功能)的输入数据。

在本公开的实施例中,当执行第一应用程序时,公共神经网络位于主存储设备130,并且然后第一应用程序结束,中央处理设备150可以从主存储设备130卸载公共神经网络。然而,当第一应用程序结束,但是使用公共神经网络的第二应用程序正在执行时,中央处理设备150可以使公共神经网络保持加载到主存储设备130中。

在本公开的实施例中,当第一神经网络被存储为公共神经网络,并且然后包括第三神经网络的第三应用程序被安装在装置100上时,中央处理设备150可以确定公共神经网络和第三神经网络在结构上是否彼此对应。当公共神经网络和第三神经网络在结构上彼此对应时,中央处理装置150可以仅存储构成第三应用程序的文件中除第三神经网络之外的文件,并且然后可以在需要执行第三神经网络时将公共神经网络加载到主存储装置130中,或者可以执行预加载的公共神经网络。

当在操作s320-no中第一神经网络和第二神经网络在结构上不彼此对应时,在操作s360中,中央处理设备150将构成第一应用程序和第二应用程序的文件存储在辅助存储设备110中。当第一神经网络和第二神经网络在结构上不彼此对应时,因为可以不提供公共神经网络,所以构成第一应用程序和第二应用程序的所有文件都存储在辅助存储设备110中。

在操作s370中,当执行第一应用程序或第二应用程序并且需要执行第一神经网络或第二神经网络时,中央处理设备150可以将第一神经网络或第二神经网络加载到主存储设备130中。

接下来,当包括第三神经网络的第三应用程序安装在装置100上时,如上所述,装置100可以基于第一神经网络和第三神经网络的结构来确定是否提取公共神经网络,并且可以基于第二神经网络和第三神经网络的结构来确定是否提取公共神经网络。基于第一神经网络和第三神经网络的结构确定是否提取公共神经网络的方法和基于第二神经网络和第三神经网络的结构确定是否提取公共神经网络的方法与参考图3描述的相同,因此省略了对其的多余解释。

当第一神经网络和第三神经网络在结构上彼此对应时,第一神经网络可以被确定为公共神经网络,并且然后当需要执行第一神经网络和/或第三神经网络时,中央处理设备150可以将公共神经网络加载到主存储设备130中。或者,当第一神经网络和第三神经网络在结构上彼此对应时,第三神经网络可以被确定为公共神经网络。此外,当第一神经网络和第三神经网络在结构上彼此对应时,对于第一神经网络和第三神经网络的特征和特性(诸如由第一神经网络和第三神经网络的元文件146指示的那些)是通用的神经网络可以被确定为公共神经网络。此外,当第二神经网络和第三神经网络在结构上彼此对应时,第二神经网络可以被确定为公共神经网络,并且然后当需要执行第二神经网络和/或第三神经网络时,中央处理设备150可以将公共神经网络加载到主存储设备130中。

根据本公开的实施例,当存在结构上彼此对应的多个神经网络时,多个神经网络当中的一个神经网络作为公共神经网络而被存储在辅助存储设备110中,并且剩余的神经网络不被存储在辅助存储设备10中,并且因此不减少辅助存储设备110的可用存储容量。此外,在本公开的实施例中,当包括结构上彼此对应的多个神经网络的多个应用程序被同时执行时,因为只有一个公共神经网络可以被加载到主存储设备130中,所以当多个神经网络被同时加载到主存储设备130中时发生的主存储设备130上的负载可以被降低。

现在将参考图4-10描述确定神经网络在结构上是否彼此对应。

在本公开的实施例中,当包括在第一神经网络和第二神经网络中的层的类型以及层之间的连接关系相同时,中央处理设备150可以确定第一神经网络和第二神经网络在结构上彼此对应。

参考图4,第一神经网络410可以包括卷积层411、池化层412、归一化层413、激励层414、第一完全连接层(fcl)415、和第二fcl416。此外,第二神经网络430可以包括第一卷积层431、池化层432、归一化层433、第二卷积层434、第一fcl435、和第二fcl436。

术语“卷积层”可以指使用卷积操作从数据中提取所需特征的层,并且术语“池化层”可以指用于降低特征图的空间分辨率的层。此外,术语“归一化层”可以指归一化输入数据范围的层,并且术语“激励层”可以指将非线性特性应用于前一层的输出结果的层。此外,术语完全连接层(fcl)可以指包括至少一个节点、处理输入到该至少一个节点的数据、并将数据发送到下一层的层。包括在fcl中的每个节点可以连接到包括在前一fcl或后续fcl中的所有节点。

图4的层的类型和层数仅仅是示例,并且第一神经网络410和第二神经网络430可以包括各种类型和各种数量的层。

参考图4,第一神经网络410和第二神经网络430的第一层(即,411和431)至第三层(即,413和433)、和第五层(即,415和435)、和第六层(即,416和436)的类型是相同的。因为分别是激活层和卷积层的第四层(即,414和434)的类型彼此不同,所以中央处理设备150可以确定第一神经网络410和第二神经网络430在结构上不彼此对应。如下所述,因为第一神经网络410和第二神经网络430的第一层(即,411和431)至第三层(即,413和433)的类型是相同的,所以中央处理设备150可以确定第一层(即,411和431)至第三层(即,413和433)作为公共神经网络,这将参考图10进行描述。或者,因为第一神经网络410和第二神经网络430的第一层(即,411和431)至第三层(即,413和433)、和第五层(即,415和435)、和第六层(即,416和436)的类型是相同的,所以中央处理设备150可以确定第一层(即,411和431)至第三层(即,413和433)、和第五层(即,415和435)、和第六层(即,416和436)为公共神经网络。

在本公开的实施例中,当层的类型相同时,这可能意味着对输入数据执行的操作的类型(例如,卷积操作、池化操作和激励操作)是相同的,并且具体的算术操作方法也是相同的。换句话说,当两个卷积层执行相同类型的操作,但是使用不同的算术操作方法时,可以确定包括两个卷积层的两个神经网络不彼此对应。或者,当两个卷积层执行相同类型的操作,但是使用不同的算术操作方法来获得相同的结果时,可以确定包括这两个卷积层的两个神经网络彼此对应。

参考图5,尽管第一神经网络510和第二神经网络530包括卷积层511和531、池化层512和532、归一化层513和533、激励层514和534、第一fcl515和535、以及第二fcl516和536,但是当第一神经网络510的池化层512执行最大池化操作并且第二神经网络530的池化层532执行平均池化操作时,中央处理设备150可以确定第一神经网络510和第二神经网络530在结构上不彼此对应。

同样,参考图6,尽管第一神经网络610和第二神经网络630包括卷积层611和631、池化层612和632、归一化层613和633、激励层614和634、第一fcl615和635、以及第二fcl616和636,但是当第一神经网络610的卷积层611和第二神经网络630的卷积层631的各自的算术操作方法彼此不同时,中央处理设备150可以确定第一神经网络610和第二神经网络630在结构上不彼此对应。

例如,参考图7,当第一神经网络610的卷积层611是通过使用滤波器核713对输入数据715中彼此相邻的预定数量的像素值执行卷积的通用卷积层,并且第二神经网络630的卷积层631是对输入数据725中彼此间隔开的预定数量的像素值执行卷积的扩展(dilated)卷积层时,中央处理设备150可以确定第一神经网络610和第二神经网络630在结构上不彼此对应。

同样,参考图8,尽管第一神经网络810和第二神经网络830包括卷积层811和831、池化层812和832、归一化层813和833、激励层814和834、第一fcl815和835、以及第二fcl816和836,但是当第一神经网络810的归一化层813执行批量归一化操作并且第二神经网络830的归一化层833执行层归一化操作时,中央处理设备150可以确定第一神经网络810和第二神经网络830在结构上不彼此对应。

在本公开的实施例中,当包括在第一神经网络和第二神经网络中的层之间的连接关系相同时,中央处理设备150可以确定第一神经网络和第二神经网络在结构上彼此对应。

参考图9,当第一神经网络910和第二神经网络930包括第一卷积层911和931、第二卷积层912和932、以及第三卷积层913和933时,因为第一神经网络910具有跳跃连接结构,其中第一卷积层911的输出同时输入到第二卷积层912和第三卷积层913,而第二神经网络930具有第一卷积层931的输出仅输入到第二卷积层932的结构,所以中央处理设备150可以确定第一神经网络910和第二神经网络930在结构上不彼此对应。

在本公开的实施例中,当包括在第一神经网络和第二神经网络中的层的类型以及层之间的连接关系相同时,中央处理设备150可以通过考虑包括在第一神经网络和第二神经网络中的每一层的输入数据的大小是否相同以及包括在第一神经网络和第二神经网络中的每一层的输出数据的大小是否相同来确定第一神经网络和第二神经网络是否在结构上彼此对应。当输入数据的大小和输出数据的大小相同时,输入数据的维度和输出数据的维度相同,并且对应于维度的数据数量相同。例如,当两条一维数据的数量相同时,两条一维数据的大小相同。此外,当两条二维数据之间的水平数据和垂直数据的数量相同时,两条二维数据的大小相同。此外,当两条三维数据之间的水平数据、垂直数据和深度数据的数量相同时,两条三维数据的大小相同。此外,当两条四维数据之间的水平数据、垂直数据、深度数据和批量的数量相同时,两条四维数据的大小也相同。

例如,当层类型和层间互连相同的第一神经网络和第二神经网络各自包括三层时,当包括在第一神经网络和第二神经网络中的第一层的输入/输出数据的大小、第二层的输入/输出数据的大小、和第三层的输入/输出数据的大小相同时,中央处理设备150可以确定第一神经网络和第二神经网络在结构上彼此对应。

在本公开的实施例中,中央处理设备150可以根据包括在第一神经网络和第二神经网络中的层的类型,根据不同的标准来确定层是否在结构上彼此对应。

例如,当第一神经网络和第二神经网络共同包括fcl并且fcl中包括的节点数量相同时,中央处理设备150可以确定第一神经网络和第二神经网络在结构上彼此对应。例如,在图10中,因为作为第一神经网络1010的第六层的第二fcl1016包括三个节点,而第二神经网络1030的第二fcl1036包括四个节点,中央处理设备150可以确定第一神经网络1010和第二神经网络1030在结构上不彼此对应。

此外,例如,当第一神经网络和第二神经网络共同地包括卷积层,并且卷积层的滤波器核的数量、滤波器核的大小、步长、以及填充大小相同时,中央处理设备150可以确定第一神经网络和第二神经网络在结构上彼此对应。术语“滤波器核”可以指用于寻找图像特征的参数,并且术语“步长”可以指滤波器核针对输入数据移动的距离。此外,术语“填充”可以指通过向输入数据外部分配预设像素值(例如,0)来增加输入数据的大小,并且术语“填充大小”可以对应于被添加到输入数据外部的像素行数。例如,当沿着输入数据的上侧、右侧、下侧和左侧添加一行像素时,填充大小可以对应于1。

此外,例如,当第一神经网络和第二神经网络共同地包括池化层,并且池化层的滤波器核的大小、步长和填充大小相同时,中央处理设备150可以确定第一神经网络和第二神经网络在结构上彼此对应。术语“滤波器核”可以指指定用于降低输入数据的空间分辨率的一些输入数据的滤波器,并且术语“步长”可以指滤波器核移动的距离。此外,术语“填充”可以指通过向输入数据外部分配预设像素值来增加输入数据的大小,并且术语“填充大小”可以对应于被添加到输入数据外部的像素行数。

在本公开的实施例中,当第一神经网络和第二神经网络中包括的层中只有一些层彼此对应时,中央处理设备150可以仅将在结构上彼此对应的那些匹配层确定为公共神经网络,并且可以将第一神经网络的剩余层和第二神经网络的剩余层作为单独的神经网络、组件或层存储在辅助存储设备110中。例如,当第一神经网络的一些层在结构上对应于第二神经网络的一些层时,中央处理设备150可以将第一神经网络文件划分成包括对应层的第一子文件和包括剩余层的第二子文件,可以将第一子文件作为公共神经网络存储在辅助存储设备110中,并且可以将第二子文件作为单独的神经网络存储在辅助存储设备110中。接下来,尽管被确定为公共神经网络的第一子文件通常用于执行第一应用程序和第二应用程序,但是第二子文件可以仅在执行第一应用程序时被加载到主存储设备130中。此外,中央处理设备150可以将第二神经网络文件划分成包括对应层的第一子文件和包括剩余层的第二子文件,并且可以从辅助存储设备110移除第一子文件,并且可以将第二子文件作为单独的神经网络存储在辅助存储设备110中。只有当第二应用程序被执行时,第二子文件才可以被加载到主存储设备130中。

参考图10,因为第一神经网络1010和第二神经网络1030的第一层(即,1011和1031)至第五层(即,1015和1035)在结构上彼此对应,中央处理设备150可以确定第一层(即,1011和1031)至第五层(即,1015和1035)作为公共神经网络。中央处理设备150可以将第一神经网络1010的第六层(即,1016)作为第一应用程序的单独的神经网络存储在辅助存储设备110中,并且可以将第二神经网络1030的第六层(即,1036)作为第二应用程序的单独的神经网络存储在辅助存储设备110中。

当需要执行第一神经网络1010时,中央处理设备150可以将公共神经网络和第一应用程序的单独的神经网络加载到主存储设备130中。而且,当需要执行第二神经网络1030时,中央处理设备150可以将公共神经网络和第二应用程序的单独的神经网络加载到主存储设备130中。在这种情况下,公共神经网络的输出数据可以用作单独的神经网络的输入数据,或者单独的神经网络的输出数据可以用作公共神经网络的输入数据。

当至少一个公共神经网络存储在辅助存储设备110中时,中央处理设备150可以生成指示哪个应用程序使用每个公共神经网络的映射信息。例如,当公共神经网络a和公共神经网络b存储在辅助存储设备110中时,中央处理设备150可以生成并存储映射信息,该映射信息指示应用程序“a”和应用程序“b”使用公共神经网络a,并且应用程序“c”和应用程序“d”使用公共神经网络b。当需要执行包括在应用程序“a”和应用程序“b”中的神经网络时,中央处理设备150可以基于预先生成的映射信息将公共神经网络a加载到主存储设备130,并且同样地,当需要执行包括在应用程序“c”和应用程序“d”中的神经网络时,中央处理设备150可以基于预先生成的映射信息将公共神经网络b加载到主存储设备130中。

虽然已经描述了根据多个神经网络是否在结构上彼此对应来提取公共神经网络的方法,但是因为即使在提取公共神经网络之后,用于神经网络的内部算术操作的内部参数在神经网络之间也可能不同,所以将描述存储在神经网络中使用的内部参数的方法。

图11和12是描述存储第二神经网络的第二内部参数的方法的流程图。

当第一神经网络和第二神经网络在结构上彼此对应并且第一神经网络作为公共神经网络存储在辅助存储设备110中时,在操作s1110中,中央处理设备150将用于构成第一神经网络的每个层的算术操作的第一内部参数作为公共参数存储在辅助存储设备110中。在本公开的实施例中,第一内部参数可以存储在第一神经网络文件中,或者可以存储在元文件或单独的内部参数文件中。

在操作s1120中,中央处理设备150确定用于构成第二神经网络的每个层的算术操作的第二内部参数和公共参数是否相同。

当公共神经网络和第二神经网络包括多个层时,中央处理设备150可以将每个层中使用的公共参数与每个层中的第二内部参数进行比较,并且可以确定第二内部参数和公共参数是否相同。例如,当公共神经网络和第二神经网络包括三个层时,中央处理设备150可以比较公共神经网络和第二神经网络的第一层中使用的内部参数,可以比较公共神经网络和第二神经网络的第二层中使用的内部参数,并且可以比较公共神经网络和第二神经网络的第三层中使用的内部参数,并且可以确定第二内部参数和公共参数是否相同。

在本公开的实施例中,当包括在公共参数中的值和包括在第二内部参数中的值相同时,中央处理设备150可以确定第二内部参数和公共参数相同。

当在操作s113-yes中公共参数和第二内部参数相同时,在操作s1140中,中央处理设备150不将第二内部参数存储在辅助存储设备110中。中央处理设备150可以从辅助存储设备110移除存储在辅助存储设备110中的第二内部参数。例如,中央处理设备150可以不存储包括关于辅助存储设备110中的第二内部参数的信息的第二内部参数文件(例如,第二神经网络文件、元文件、或单独的内部参数文件),或者可以从辅助存储设备110中移除第二内部参数文件。

在操作s1150中,当需要执行第二神经网络时,中央处理设备150可以将公共神经网络和公共参数加载到主存储设备130中,并且可以使公共神经网络根据公共参数执行内部算术操作。

将参考图12描述在操作s1130-no中公共参数和第二内部参数不相同的情况。

在操作s1210中,中央处理设备150确定公共参数和第二内部参数之间的差异信息。

在本公开的实施例中,中央处理设备150可以根据多种计算方法确定多条差异信息,然后可以从多条差异信息中确定具有最小数据大小的差异信息作为最终差异信息。

多种计算方法中的一种可以是获得通过从公共参数(或第二内部参数)减去第二内部参数(或公共参数)而获得的残差参数作为差异信息的方法。例如,如图13所示,可以获得与通过从公共参数1310中减去第二内部参数1320而获得的结果相对应的残差参数1330作为差异信息。在这种情况下,可以通过从公共参数1310中减去残差参数1330来恢复第二内部参数1320。

另一种方法可以是这样的方法:当第二内部参数被包括在公共参数中时,获得用于从属于公共参数的值中选择属于第二内部参数的值的选择参数,作为差异信息。例如,如图14所示,因为公共参数1410中包括的值中对应于第一行的值和对应于第三行的值被包括在第二内部参数1420中,所以可以获得用于选择公共参数1410中的第一行和第三行的选择参数1430,作为差异信息。

另一种方法可以是如下方法:当第二内部参数可以通过将公共参数乘以变换参数来获得时,获得变换参数作为差异信息。例如,当变换参数是t时,第二内部参数可以是公共参数·t。

另一种方法可以是如下方法:当第二内部参数可以通过将第一变换参数乘以公共参数而获得的结果乘以第二变换参数而导出时,获得第一变换参数和第二变换参数作为差异信息。例如,当第一变换参数是t1且第二变换参数是t2时,第二内部参数可以是t1·公共参数·t2。

另一种方法可以如下方法:当第二内部参数可以通过将第一变换参数乘以公共参数以获得乘法结果,将乘法结果乘以第二变换参数,并且加上残差参数而导出时,获得第一变换参数、第二变换参数、和残差参数作为差异信息。例如,当第一变换参数是t1,第二变换参数是t2,并且残差参数是d时,第二内部参数可以是t1·公共参数·t2 d。

回头参考图12,在操作s1220中,中央处理设备150确定差异信息的数据大小是否小于第二内部参数的数据大小。

当在操作s1220-yes中差异信息的数据大小小于第二内部参数的数据大小时,在操作s1230中,中央处理设备150将差异信息存储在辅助存储设备110中,而不将第二内部参数存储在辅助存储设备110中。差异信息可以作为单独的文件生成,并且可以存储在辅助存储设备110中。

在操作s1240中,当需要执行第二神经网络时,中央处理设备150可以将公共神经网络、公共参数、和差异信息加载到主存储设备130中,并且在操作s1250中,中央处理设备150通过将差异信息应用于公共参数来恢复第二内部参数。因此,公共神经网络可以根据第二内部参数进行工作。

当第二神经网络的执行结束时,中央处理设备150可以从主存储设备130卸载第二内部参数,并且当再次执行第二神经网络时,中央处理设备150可以将公共参数和差异信息加载到主存储设备130中,并且然后可以恢复第二内部参数。

当在操作s1220-no中差异信息的数据大小不小于第二内部参数的数据大小,也就是差异信息的数据大小等于或大于第二内部参数的数据大小时,在操作s1260中,中央处理设备150不将差异信息存储在辅助存储设备110中,而是将第二内部参数存储在辅助存储设备110中。当第二神经网络的第二内部参数如上所述存储在第二神经网络文件中时,中央处理设备150可以不将第二神经网络文件存储在辅助存储设备110中,并且可以将存储在第二神经网络文件中的第二内部参数作为单独的文件存储在辅助存储设备110中。当第二内部参数存储在元文件或单独的内部参数文件中时,中央处理设备150可以将元文件或单独的内部参数文件存储在辅助存储设备110中。

在操作s1270中,当需要执行第二神经网络时,中央处理设备150可以将公共神经网络和第二内部参数加载到主存储设备130中,并且可以使公共神经网络根据第二内部参数进行工作。

在许多情况下,安装在包括智能手机在内的移动设备上的应用程序会以短周期更新。根据本公开,因为包括在应用程序中的神经网络可以被提取作为公共神经网络,所以将参考图15-17描述在这种情况下如何更新应用程序。

图15和16是用于描述更新第一应用程序的方法的流程图,并且图17是示出与更新第一应用程序的方法相关的公共神经网络1710、公共参数1730、基于更新文件获得的神经网络1750、以及基于更新文件获得的内部参数1770的框图。

在本公开的实施例中,中央处理设备150可以将更新文件存储在临时文件中,并且可以通过根据存储在临时文件夹中的文件更新公共神经网络1710和公共参数1730来获得神经网络1750和内部参数1770,或者可以从存储在临时文件夹中的神经网络文件获得神经网络1750和内部参数1770。在本公开的实施例中,更新文件可以包括包含指示如何更新第一应用程序的信息(例如,第一应用程序和更新的第一应用程序的差异数据)的文件,并且在这种情况下,中央处理设备150可以通过根据更新文件更新公共神经网络1710和公共参数1730来获得神经网络1750和内部参数1770。在本公开的实施例中,更新文件可以包括要替换第一应用程序的新的第一应用简档,并且在这种情况下,中央处理设备150可以从更新文件中的神经网络文件获得神经网络1750和内部参数1770。

参考图15和17,在操作s1510中,中央处理设备150获得第一应用程序的更新文件。中央处理设备150可以获得从应用分发服务器发送到装置100的更新文件,或者可以获得通过usb等发送到装置100的更新文件。

如上所述,第一应用程序的第一神经网络和第一内部参数作为公共神经网络1710和公共参数1730存储在辅助存储设备110中。

在操作s1520中,中央处理设备150基于更新文件获得神经网络1750。

在操作s1530中,中央处理设备150确定神经网络1750和公共神经网络1710在结构上是否彼此对应。中央处理设备150可以基于例如包括在神经网络1750和公共神经网络1710中的层的类型、层之间的连接关系、以及输入/输出数据的大小来确定神经网络1750和公共神经网络1710是否彼此对应。确定两个神经网络在结构上是否彼此对应已经在上面描述,因此省略了对其的冗余解释。

当在操作s1530-yes中神经网络1750和公共神经网络1710在结构上彼此对应时,在操作s1540中,中央处理设备150不将神经网络1750存储在辅助存储设备110中。可以根据更新文件来更新构成第一应用程序的文件中除了包括公共神经网络1710的神经网络文件之外的文件。在操作s1550中,当需要执行第一神经网络时,中央处理设备150将公共神经网络1710加载到主存储设备130中。

在本公开的实施例中,当只有神经网络1750的一些层在结构上对应于公共神经网络1710时,中央处理设备150可以从辅助存储设备110移除对应于相应层的文件,并且可以将对应于剩余层的文件作为单独的神经网络存储在辅助存储设备110中。接下来,当需要执行第一神经网络时,中央处理设备150可以将公共神经网络1710和单独的神经网络加载到主存储设备130中。

当在操作s1530-no中神经网络1750和公共神经网络1710在结构上不彼此对应时,在操作s1560中,中央处理设备150将神经网络1750作为第一应用程序的单独的神经网络存储在辅助存储设备110中。

在操作s1570中,当需要执行第一神经网络时,中央处理设备150将作为单独的神经网络存储的神经网络1750加载到主存储设备130中。

当公共神经网络1710和神经网络1750在结构上彼此对应时,中央处理设备150可以确定公共参数1730和根据更新文件获得的内部参数1770是否相同,这将参考图16进行描述。

在操作s1610中,中央处理设备150确定基于更新文件获得的内部参数1770和公共参数1730是否相同。

在操作s1620中,当在操作s1610-yes中内部参数1770和公共参数1730相同时,中央处理设备150不将内部参数1770存储在辅助存储设备110中。

在操作s1630中,当需要执行第一神经网络时,中央处理设备150将公共神经网络1710和公共参数1730加载到主存储设备130中。

在操作s1640中,当在操作s1610-no中内部参数1770和公共参数1730彼此不同时,中央处理设备150将内部参数1770和公共参数1730之间的差异信息存储在辅助存储设备110中。如上所述,中央处理设备150可以通过使用各种计算方法来获得差异信息,可以将具有最小数据大小的差异信息与内部参数1770的数据大小进行比较,并且可以确定是否将差异信息存储在辅助存储设备110中。当差异信息的大小不小于内部参数1770的大小时,中央处理设备150可以在辅助存储设备110中存储内部参数1770,而不是差异信息。当内部参数1770存储在包括神经网络1750的文件中时,中央处理设备150可以生成包括内部参数1770的单独文件,并且可以将该单独文件存储在辅助存储设备110中。当差异信息的大小不小于内部参数1770的大小并且因此内部参数1770被存储在辅助存储设备110中时,当需要执行第一神经网络时,中央处理设备150可以将公共神经网络1710和内部参数1770加载到主存储设备130中。

在操作s1650中,在差异信息被存储在辅助存储设备110中之后,当需要执行第一神经网络时,中央处理设备150将公共神经网络1710、公共参数1730、和差异信息加载到主存储设备130中。在操作s1660中,中央处理设备150通过将差异信息应用于公共参数1730来恢复内部参数1770。因此,公共神经网络可以根据第二内部参数1770进行工作。

尽管如图15和16所示可以获得使用公共神经网络1710的第二应用程序的更新文件,并且第二应用程序可以被更新,但当第二内部参数和公共参数1730之间的原始差异信息被预先存储在辅助存储设备110中时,可能会出现问题。

例如,当第二应用程序的新的第二内部参数被包括在更新文件中并且新的第二内部参数和公共参数1730不相同时,中央处理设备150确定新的第二内部参数和公共参数1730之间的新的差异信息。中央处理设备150可以根据通过比较新的第二内部参数的大小和新的差异信息而获得的比较结果,将新的差异信息存储在辅助存储设备110中。可以从辅助存储设备110中移除第二内部参数和公共参数1730之间的原始差异信息。接下来,当需要执行第二神经网络时,中央处理设备150可以通过将新的差异信息应用于公共参数1730来恢复新的第二内部参数。

此外,当更新文件中仅包括新的第二内部参数和原始第二内部参数之间的差异数据时,中央处理设备150首先通过将公共参数1730和原始第二内部参数之间的原始差异信息应用于公共参数1730来恢复原始第二内部参数。中央处理设备150通过将更新文件中包括的差异数据应用于原始第二内部参数来获得新的第二内部参数。当新的第二内部参数和公共参数1730不相同时,中央处理设备150确定新的第二内部参数和公共参数1730之间的新的差异信息。中央处理设备150可以根据通过将新的第二内部参数的大小与新的差异信息进行比较而获得的比较结果,将新的差异信息存储在辅助存储设备110中。接下来,当需要执行第二神经网络时,中央处理设备150可以通过将新的差异信息应用于公共参数1730来恢复新的第二内部参数。

图18是示出根据本公开实施例的管理应用程序的方法的流程图。

虽然图3示出了第一应用程序和第二应用程序安装在装置100上,然后提取公共神经网络的情况,但图18示出了这样的情况:在公共神经网络被预存储在辅助存储设备110中的状态下,包括第三神经网络的第三应用程序被安装在装置100上。

在操作s1810中,中央处理设备150确定公共神经网络和第三神经网络在结构上是否彼此对应。

中央处理设备150可以基于例如构成神经网络的层的类型和连接关系来确定公共神经网络和第三神经网络在结构上是否彼此对应。

当在操作s1820-yes中公共神经网络和第三神经网络在结构上彼此对应时,在操作s1830中,中央处理设备150可以将构成第三应用程序的文件中的除第三神经网络之外的文件存储在辅助存储设备110中。中央处理设备150可以不在辅助存储设备110中存储构成第三应用程序的文件中的第三神经网络文件。

在操作s1840中,当需要执行第三神经网络并且公共神经网络没有被加载到主存储设备130中时,中央处理设备150可以将公共神经网络加载到主存储设备130中。

当在操作s1820-no中公共神经网络和第三神经网络在结构上不彼此对应时,在操作s1850中,中央处理设备150将构成第三应用程序的文件存储在辅助存储设备110中。当公共神经网络和第三神经网络在结构上不彼此对应时,因为公共神经网络可能不用于执行第三应用程序,所以构成第三应用程序的所有文件都存储在辅助存储设备110中。

在本公开的实施例中,当公共神经网络和第三神经网络在结构上不彼此对应时,在构成第三应用程序的文件被存储在辅助存储设备110中之前,中央处理设备150可以通过比较第三神经网络的结构和预先存储的应用程序(例如,第一应用程序和第二应用程序)的神经网络的结构来确定可以提取新的公共神经网络。通过比较第三神经网络的结构和预先存储的应用程序的神经网络的结构来确定是否提取新的公共神经网络的方法与参考图3描述的方法相同,并且因此省略了对其的冗余解释。当第三神经网络和预先存储的应用程序的神经网络在结构上彼此对应时,可以将预先存储的应用程序的神经网络作为公共神经网络存储在辅助存储设备110中,并且可以将构成第三应用程序的文件中的除第三神经网络之外的文件存储在辅助存储设备110中。

在构成第三应用程序的所有文件都存储在辅助存储设备110中之后,在操作s1860中,当需要执行第三神经网络时,中央处理设备150可以将存储为单独的神经网络的第三神经网络加载到主存储设备130中。

当在操作s1820中确定公共神经网络和第三神经网络在结构上彼此对应时,如上所述,中央处理设备150可以确定公共参数和第三神经网络的第三内部参数是否相同,并且可以确定是否将第三内部参数存储在辅助存储设备110中或者是否将公共参数和第三内部参数之间的差异信息存储在辅助存储设备110中。接下来,当需要执行第三神经网络时,中央处理设备150可以将公共神经网络、公共参数、和差异信息加载到主存储设备130中,或者可以将公共神经网络和第三内部参数加载到主存储设备130中。

本公开的实施例可以实施为计算机可执行程序或指令,并且该程序可以存储在介质或计算机程序产品中。

介质或计算机程序产品可以连续存储计算机可执行程序,或者可以临时存储计算机可执行程序以执行或下载计算机可执行程序。此外,介质或计算机程序产品可以是包括单个硬件或多个硬件的组合的各种记录装置或存储装置中的任何一种,并且可以分布在网络中,而不限于直接连接到计算机系统的介质。介质或计算机程序产品可以被配置为存储程序指令,并且介质的示例可以包括:诸如硬盘、软盘或磁带的磁介质;诸如cd-rom或dvd的光记录介质;诸如光盘、rom、ram和闪存的。介质或计算机程序产品的其他示例可以包括由分发应用的应用商店或提供或分发各种其他软件的站点或服务器管理的记录介质和存储介质。

根据本公开实施例的用于管理应用程序的装置和方法可以减小存储在设备中的应用程序的数据大小。

此外,根据本公开实施例的用于管理应用程序的装置和方法可以减小加载到主存储设备中以执行应用程序的数据的大小。

然而,根据本公开的实施例的用于管理应用程序的装置和方法可以实现的效果不限于此,并且本领域普通技术人员从描述中可以容易地理解其他效果。

尽管已经参照本公开的实施例具体示出和描述了本公开,但是本领域普通技术人员将理解,可以在形式和细节上进行各种改变,而不脱离由所附权利要求限定的本公开的精神和范围。

转载请注明原文地址:https://doc.8miu.com/read-350416.html

最新回复(0)