CN115373697A - 数据处理方法和数据处理装置 - Google Patents
数据处理方法和数据处理装置 Download PDFInfo
- Publication number
- CN115373697A CN115373697A CN202110538065.1A CN202110538065A CN115373697A CN 115373697 A CN115373697 A CN 115373697A CN 202110538065 A CN202110538065 A CN 202110538065A CN 115373697 A CN115373697 A CN 115373697A
- Authority
- CN
- China
- Prior art keywords
- system platform
- application
- application program
- icon
- data processing
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 57
- 238000003672 processing method Methods 0.000 title claims abstract description 34
- 230000004044 response Effects 0.000 claims abstract description 9
- 238000013507 mapping Methods 0.000 claims description 49
- 230000011218 segmentation Effects 0.000 claims description 32
- 238000012549 training Methods 0.000 claims description 28
- 230000015654 memory Effects 0.000 claims description 27
- 238000009434 installation Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000013515 script Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 description 18
- 239000013598 vector Substances 0.000 description 17
- 238000000034 method Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 238000013473 artificial intelligence Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000012216 screening Methods 0.000 description 6
- 241000282326 Felis catus Species 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 5
- 241000227653 Lycopersicon Species 0.000 description 3
- 235000007688 Lycopersicon esculentum Nutrition 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000007123 defense Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Probability & Statistics with Applications (AREA)
- Stored Programmes (AREA)
Abstract
提供了一种用于电子设备的数据处理方法和数据处理装置。所述数据处理方法可包括:响应于将外部设备的应用程序迁移至所述电子设备的指令,获取所述外部设备中的应用程序信息,其中,所述外部设备具有第一系统平台,所述外部设备的应用程序至少包括第一应用程序,所述电子设备具有第二系统平台,第一系统平台不同于第二系统平台;根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序;下载并安装第二应用程序至所述电子设备中。
Description
技术领域
本公开涉及电子技术领域。更具体地,本公开涉及一种用于操作系统数据迁移的数据处理方法和数据处理装置。
背景技术
用户更换电子设备(诸如手机)时,可能需要将先前使用的设备中安装的应用程序APP迁移到新的设备中,例如,将iOS操作系统的电子设备中的APP迁移到Android操作系统的电子设备。此时,由于无法打包应用程序数据并将其传输到新设备和安装,用户只能查找对应APP后逐一进行下载和安装,效率很低。
发明内容
根据本公开的示例性实施例提供了一种用于操作系统数据迁移的数据处理方法和数据处理装置,以至少解决上述提及的问题。
根据本公开的示例性实施例,提供一种用于电子设备的数据处理方法,所述方法可包括以下步骤:响应于将外部设备的应用程序迁移至所述电子设备的指令,获取所述外部设备中的应用程序信息,其中,所述外部设备具有第一系统平台,所述外部设备的应用程序至少包括第一应用程序,所述电子设备具有第二系统平台,第一系统平台不同于第二系统平台;根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序;下载并安装第二应用程序至所述电子设备中。
可选地,第一应用程序与第二应用程序的图标和/或名称可不同。
可选地,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序的步骤可包括:根据第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系来确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。
可选地,所述映射关系可基于以下操作被建立:获取分别针对第一系统平台和第二系统平台的应用程序的相关信息;根据所述相关信息建立所述映射关系,其中,所述相关信息包括应用程序的文本信息和图标信息中的至少一个。
可选地,所述文本信息可包括标题。
可选地,所述文本信息还可包括短描述、长描述中的至少一个文本信息。
可选地,根据所述相关信息建立所述映射关系的步骤可包括:根据所述文本信息和/或所述图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序;根据第一系统平台的每个应用程序和相应的目标应用程序建立所述映射关系。
可选地,所述条件可包括以下项中的至少一个:应用程序之间的文本相似度超过第一阈值;应用程序之间的图标相似度超过第二阈值;基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。
可选地,根据所述文本信息和/或所述图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序的步骤可包括:对所述文本信息进行分词处理;基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分;根据所述相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的候选应用程序;根据所述文本信息和/或所述图标信息从与第一系统平台的每个应用程序相应的候选应用程序中确定满足所述条件的目标应用程序。
可选地,确定目标应用程序可包括:根据所述文本信息和/或所述图标信息计算第一系统平台的每个应用程序与第二系统平台的应用程序或相应的候选应用程序之间的文本相似度和图标相似度中的至少一个;根据所述文本相似度和所述图标相似度中的至少一个确定第二系统平台的应用程序或相应的候选应用程序中满足所述条件的应用程序作为目标应用程序。
可选地,图标相似度可基于所述图标信息利用ORB模型和SiameseNet模型中的至少一个被获得。
可选地,SiameseNet模型可基于以下训练方式被获得:收集不同应用程序的原始图标以及通过脚本生成或裁剪得到的图标;将属于同一应用程序的图标对的标签设置为相似并且将属于不同应用程序的图标对的标签设置为不相似,以生成训练样本集;利用所述训练样本集对SiameseNet模型进行训练。
可选地,与第一系统平台的每个应用程序相应的目标应用程序可包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。
可选地,下载并安装第二应用程序至所述电子设备中的步骤可包括:当确定的第二应用程序的数量大于1时,向用户显示搜索出的第二应用程序以供用户选择下载和安装。
根据本公开的另一示例性实施例,提供一种用于电子设备的数据处理装置,所述装置可包括:获取模块,被配置为响应于将外部设备的应用程序迁移至所述电子设备的指令,获取所述外部设备中的应用程序信息,其中,所述外部设备具有第一系统平台,所述外部设备的应用程序至少包括第一应用程序,所述电子设备具有第二系统平台,第一系统平台不同于第二系统平台;确定模块,被配置为根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序;安装模块,被配置为下载并安装第二应用程序至所述电子设备中。
可选地,第一应用程序与第二应用程序的图标和/或名称可不同。
可选地,确定模块可被配置为根据第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系来确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。
可选地,所述映射关系可基于以下操作被建立:获取分别针对第一系统平台和第二系统平台的应用程序的相关信息;根据所述相关信息建立所述映射关系,其中,所述相关信息包括应用程序的文本信息和图标信息中的至少一个。
可选地,所述文本信息可包括标题。
可选地,所述文本信息还可包括短描述、长描述中的至少一个文本信息。
可选地,根据所述相关信息建立所述映射关系的步骤可包括:根据所述文本信息和/或所述图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序;根据第一系统平台的每个应用程序和相应的目标应用程序建立所述映射关系。
可选地,所述条件可包括以下项中的至少一个:应用程序之间的文本相似度超过第一阈值;应用程序之间的图标相似度超过第二阈值;基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。
可选地,根据所述文本信息和/或所述图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序的步骤可包括:对所述文本信息进行分词处理;基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分;根据所述相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的候选应用程序;根据所述文本信息和/或所述图标信息从与第一系统平台的每个应用程序相应的候选应用程序中确定满足所述条件的目标应用程序。
可选地,确定目标应用程序可包括:根据所述文本信息和/或所述图标信息计算第一系统平台的每个应用程序与第二系统平台的应用程序或相应的候选应用程序之间的文本相似度和图标相似度中的至少一个;根据所述文本相似度和所述图标相似度中的至少一个确定第二系统平台的应用程序或相应的候选应用程序中满足所述条件的应用程序作为目标应用程序。
可选地,图标相似度可基于所述图标信息利用ORB模型和SiameseNet模型中的至少一个被获得。
可选地,SiameseNet模型可基于以下训练方式被获得:收集不同应用程序的原始图标以及通过脚本生成或裁剪得到的图标;将属于同一应用程序的图标对的标签设置为相似并且将属于不同应用程序的图标对的标签设置为不相似,以生成训练样本集;利用所述训练样本集对SiameseNet模型进行训练。
可选地,与第一系统平台的每个应用程序相应的目标应用程序可包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。
可选地,安装模块可被配置为:当确定的第二应用程序的数量大于1时,向用户显示搜索出的第二应用程序以供用户选择下载和安装。
根据本公开的示例性实施例,提供一种计算机可读存储介质,其上存储有指令,当所述指令被处理器执行时,实现根据本公开的示例性实施例的数据处理方法。
根据本公开的示例性实施例,提供一种计算装置,包括:处理器;存储器,存储有指令,当所述指令被处理器执行时,实现根据本公开的示例性实施例的数据处理方法。
根据本公开的示例性实施例,提供一种计算机程序产品,所述计算机程序产品中的指令被电子装置中的至少一个处理器运行以执行根据本公开的示例性实施例的数据处理方法。
本公开能够能够将先前使用的设备中的应用程序数据快速迁移到新设备中,节省了用户的操作时间,从而提升用户体验。
将在接下来的描述中部分阐述本公开总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本公开总体构思的实施而得知。
附图说明
通过结合附图,从实施例的下面描述中,本公开这些和/或其它方面及优点将会变得清楚,并且更易于理解,其中:
图1示出根据本公开示例性实施例的数据处理方法的流程图;
图2示出根据本公开另一示例性实施例的数据处理方法的流程示意图;
图3示出根据本公开示例性实施例的SiameseNet模型结构的示意图;
图4示出根据本公开示例性实施例的数据处理装置的框图;
图5示出根据本公开示例性实施例的电子设备的结构示意图;
图6示出根据本公开示例性实施例的计算装置的示意图。
具体实施方式
提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本申请的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,并且不限于在此阐述的那些顺序,而是除了必须以特定的顺序发生的操作之外,可如在理解本申请的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,本领域已知的特征的描述可被省略。
在此描述的特征可以以不同的形式来实现,而不应被解释为限于在此描述的示例。相反,已提供在此描述的示例,以仅示出实现在此描述的方法、设备和/或系统的许多可行方式中的一些可行方式,所述许多可行方式在理解本申请的公开之后将是清楚的。
在此使用的术语仅用于描述各种示例,并不将用于限制公开。除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。术语“包含”、“包括”和“具有”说明存在叙述的特征、数量、操作、构件、元件和/或它们的组合,但不排除存在或添加一个或多个其他特征、数量、操作、构件、元件和/或它们的组合。
除非另有定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与由本公开所属领域的普通技术人员在理解本公开之后通常理解的含义相同的含义。除非在此明确地如此定义,否则术语(诸如,在通用词典中定义的术语)应被解释为具有与它们在相关领域的上下文和本公开中的含义一致的含义,并且不应被理想化或过于形式化地解释。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
此外,在示例的描述中,当认为公知的相关结构或功能的详细描述将引起对本公开的模糊解释时,将省略这样的详细描述。
在下文中,将参照附图详细描述实施方式。然而,实施方式可以以各种形式实现,并且不限于在此描述的示例。
图1示出根据本公开示例性实施例的数据处理方法的流程图。图1所示的方法可应用于具有任意系统平台/操作系统的电子设备。电子设备可包括例如但不限于便携式通信装置(例如,智能电话)、计算机装置、便携式多媒体装置、便携式医疗装置、相机、可穿戴装置等。根据本公开的实施例,电子设备不限于以上所述。
下面以将具有第一系统平台的外部设备的应用程序迁移至具有第二系统平台的电子设备为例进行阐述。这里,第一系统平台可不同于第二系统平台,例如,第一系统平台是iOS操作系统平台,第二系统平台是Android操作系统平台。
参照图1,在步骤S101,响应于将外部设备的应用程序迁移至电子设备的指令,获取外部设备中的应用程序信息,其中,外部设备具有第一系统平台,外部设备的应用程序至少包括第一应用程序,电子设备具有第二系统平台,第一系统平台不同于第二系统平台。例如,当用户更换电子设备时想要将先前使用的设备(诸如iOS设备)中的应用程序迁移到新的设备(诸如Android)中时,新设备可首先获取先前使用的设备中的应用程序信息,诸如,先前使用的设备中已安装的应用程序列表。
在步骤S102,根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。步骤S102可在属于第一系统平台的第一应用程序与属于第二系统平台的第二应用程序的图标和/或名称相同或不同的情况下被执行。可针对外部设备中已安装的每个应用程序来执行步骤S102。
根据本公开的实施例,可根据第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系来确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。电子设备可从外部服务器获得映射关系。可选地,电子设备可预先存储相应的映射关系。这里,映射关系可以是映射表的形式,然不限于此。下面将描述如何建立第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系。
作为示例,可获取分别针对第一系统平台和第二系统平台的应用程序的相关信息,根据获取的相关信息建立映射关系,其中,相关信息可包括应用程序的文本信息和图标信息中的至少一个。具体地,可根据文本信息和/或图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序,然后根据第一系统平台的每个应用程序和相应的目标应用程序建立映射关系。这里,所述条件可包括以下项中的至少一个:应用程序之间的文本相似度超过第一阈值;应用程序之间的图标相似度超过第二阈值;基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。第一阈值或第二阈值可根据需求被不同地设置。
在本公开中,文本信息可包括应用程序的标题、短描述、长描述中的至少一个。
例如,可获取第一系统平台的应用程序和第二系统平台的应用程序的文本信息,根据文本信息计算第一系统平台的每个应用程序与第二系统平台的应用程序之间的文本相似度,根据文本相似度确定第二系统平台的应用程序中满足条件的应用程序作为目标应用程序。例如,在获取文本信息时,可分别获取第一系统平台和第二系统平台应用市场APP列表,根据下载量排名各获取前10万个应用程序的文本信息,并将每个APP的文本信息保存在数据库中。例如,可利用文本匹配器算法或自然语言处理方法基于文本信息来计算第一系统平台的应用程序与第二系统平台的应用程序之间的文本相似度。下面将参照图2详细描述如何计算文本相似度。
又例如,可获取第一系统平台的应用程序和和第二系统平台的应用程序的图标信息,根据图标信息计算第一系统平台的每个应用程序和第二系统平台的应用程序之间的图标相似度,根据图标相似度确定第二系统平台的应用程序中满足条件的应用程序作为目标应用程序。例如,在获取图标信息时,可分别获取第一系统平台和第二系统平台应用市场APP列表,根据下载量排名各获取前10万个应用程序的图标信息,并将每个APP的图标信息保存在数据库中。例如,可利用图像匹配器算法和/或SiameseNet模型基于图标信息来计算第一系统平台的应用程序与第二系统平台的应用程序之间的图标相似度。下面将参照图2详细描述如何计算图标相似度。
又例如,可获取第一系统平台的应用程序和和第二系统平台的应用程序的文本信息和图标信息,根据文本信息和图标信息计算第一系统平台的每个应用程序与第二系统平台的应用程序之间的文本相似度和图标相似度,根据文本相似度和图标相似度确定第二系统平台的应用程序中满足条件的应用程序作为目标应用程序。例如,可根据预先设置的规则或者通过加权计算文本相似度和图标相似度得到综合相似度来确定目标应用程序。下面将参照图2详细描述如何确定目标应用程序。
此外,根据本公开的实施例,可首先对文本信息进行分词处理,基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分,根据计算的相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的具有最高相关度评分的候选应用程序,然后根据文本信息和/或图标信息计算第一系统平台的每个应用程序与相应的候选应用程序之间的文本相似度和图标相似度中的至少一个,根据文本相似度和图标相似度中的至少一个确定相应的候选应用程序中满足条件的应用程序作为目标应用程序。例如,可分别对第一系统平台的每个应用程序(例如,根据下载量排名选取的前10万个应用程序中的每个应用程序)通过数据库初步搜索到最多100个第二系统平台的候选应用程序(例如,从根据下载量排名在第二系统平台的APP列表中选取的前10万个应用程序中,针对属于第一系统平台的每个应用程序搜索第一系统平台的各自应用程序的候选应用程序),然后在与第一系统平台的每个应用程序相应的候选应用程序中根据文本相似度和/或图标相似度进一步筛选出属于第二系统平台的目标应用程序。
在获得第一系统平台的每个应用程序和相应的目标应用程序后,可建立第一系统平台与第二系统平台的应用程序之间的映射关系。
在步骤S103,下载并安装确定的第二应用程序至电子设备中。根据本公开的实施例,与第一系统平台的每个应用程序相应的目标应用程序可包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。当确定的第二应用程序的数量大于1时,可向用户显示搜索出的多个第二应用程序以供用户选择下载和安装。也就是说,针对第一系统平台的一个应用程序,根据映射关系可能搜索到多个第二系统平台的第二应用程序,此时,用户可从多个第二应用程序中选择期望的应用程序进行下载并安装。
根据本公开的实施例,能够将先前使用的设备中的应用程序数据迁移到新设备中,节省了用户的操作时间,从而提升用户体验。
图2示出根据本公开另一示例性实施例的数据处理方法的流程示意图。下面以在第一系统平台(iOS操作系统)的应用程序与第二系统平台(Android操作系统)的应用程序之间建立映射关系为例进行阐述。
参照图2,在步骤S201,分别获取第一系统平台的应用程序和第二系统平台的应用程序的相关信息。例如,分别获取iOS应用市场APP列表和Android应用市场APP列表,根据下载量排名各获取前10万个APP,将每个APP的相关信息保存到数据库,以文本匹配的方式,以备筛选。这里,APP相关信息可包括文本信息(诸如APP标题、短描述或长描述)和图标信息等。
在步骤S202,基于获取的相关信息,针对第一系统平台的获取的每个应用程序,从针对第二系统平台的获取的应用程序中初步筛选预定数量的候选应用程序。例如,可针对第一系统平台的每个应用程序初步筛选相应的100个属于第二系统平台的候选应用程序,即第一系统平台的一个应用程序可对应于第一系统平台的100个候选应用程序。例如,加载iOS APP列表,分别针对每个iOS APP通过数据库搜索初步筛选到最多M个候选AndroidAPP。也就是说,最多可为每个iOS APP初步筛选M个候选Android APP,例如,M为100。
作为示例,可对应用程序的文本信息进行分词处理,基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分,然后根据相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的候选应用程序。
可利用应用程序的文本信息(诸如标题、短描述或长描述)进行分析和索引倒排来实现初步筛选。例如,可首先对iOS APP和Android APP的文本信息进行分词处理,然后基于分词结果采用倒排索引的方式为每个iOS APP匹配最多M个候选Android APP。
以APP标题为例来描述如何执行初步筛选。首先对APP标题的字段内容进行分词处理。例如,APP标题为TXT全本免费小说全集,分词结果可以是“TXT”、“全本”、“免费”、“小说全集”。APP标题为七猫免费小说,分词结果可以是“七猫”、“免费小说”。APP标题为番茄免费小说,分词结果可以是“番茄”、“免费小说”。APP标题为微信,分词结果可以是“微信”。然而,上述示例仅是示例性的,本公开不限于此。
在对iOS APP和Android APP中的每个APP的标题进行分词处理后,可将分词进行汇总,建立多条数据与分词映射矩阵,诸如下面的表1所示,使得根据某一个词语即可找到对应的文本ID。
表1
通过对分词建立索引,使得索引对应于分词(诸如“七猫”、“免费小说”),而分词对应于文本ID,文本ID即APP的ID,诸如文本“七猫免费小说”的ID为2。
例如,iOS APP的标题为“七猫免费小说”,在进行分词后得到“七猫”、“免费小说”,其中,“免费小说”在表1中对应于文本ID 2和3,从而可查询到包含“免费小说”的AndroidAPP为“七猫免费小说”和“番茄免费小说”。
此外,除了利用APP标题进行初步筛选之外,还可通过将APP标题与该APP的短描述和/或长描述相结合来构建综合字段,将对该APP的综合字段进行分词的结果作为查询Android APP的关键词,从而找到包含关键词的全部应用程序。例如,iOS APP的标题为“华住会”,短描述为“华住集团官方酒店在线预订平台”,构建该APP的综合字段“华住会-华住集团官方酒店在线预订平台”,对此进行分词后得到该APP的分词结果“华住”、“会”、“华住”、“集团”、“官方”、“酒店”、“在线”、“预订”、“平台”。通过将分词进行汇总,建立多条数据与分词映射矩阵。
针对每个iOS应用,根据相关度评分Score的排序结果,选取出最多前M个作为后续精细匹配算法的输入数据。例如,可使用下面的等式(1)来计算相关度评分:
Score=∑wTFw*IDFw (1)
词频(TF)是指某个单词在目标系统平台的单个APP文档(如APP标题、短描述和/或长描述)中的出现频率,出现频率越高意味着该文档与搜索的相关度也越高。
逆文档频率(IDF)又称反文档频率,是文档频率的倒数,它表示若某个单词在大量的文档都有出现,则这个单词在计算Score时占比要低于那些只在少数文档中出现的单词。
例如,查询关键词“华住”、“会”、“华住”、“集团”、“官方”、“酒店”、“在线”、“预订”、“平台”,其中,“华住酒店(汉庭)”的相关度评分为322.6379,“酒店预订平台”的相关度评分为277.3931。然而,上述示例仅是示例性的,本公开不限于此。
在步骤S203,根据应用程序的文本信息来计算第一系统平台的每个应用程序与第二系统平台的相应的候选应用程序之间的文本相似度。
作为示例,可利用文本匹配器来计算文本相似度。例如,可使用Word2Vec模型作为文本匹配器来计算应用程序之间的文本相似度。
Word2Vec模型是一种深度学习模型,主要分为连续的词袋模型(CBOW)和跳词模型(Skip-gram)两种类型。Word2Vec模型通过对文本数据进行非监督学习训练后,可把文本内容转化为K维向量,并根据向量空间的相似度来表示文本语义上的相似度。下面将以Word2Vec模型为例详细描述如何获得本公开的用于计算文本相似度的文本匹配器。
可首先汇总第一系统平台和第二系统平台的各10万个APP的全部语料,诸如,iOS应用标题和长短描述以及Android应用标题和长短描述。例如,某APP的标题为“腾讯WiFi管家”,短描述为“一键连上安全WiFi”,长描述为“腾讯荣誉出品的一款安全WiFi连接app!秒连亿万优质热点,餐饮、娱乐、候机轻松连风险防御、测速、防蹭网一站式体验”。
可对每个APP的全部语料进行分词处理,然后将每个APP对应的全部语料分词后的结果存储在待训练语料文件(诸如corpus.txt)中。例如,根据上述APP的标题和长短描述获得“腾讯”、“WiFi”、“管家”、“一键”、“安全”、“WiFi”、“腾讯”、“荣誉出品”、“一款”、“安全”、“WiFi”、“连接”、“app”、“秒”、“亿万”、“优质”、“热点”、“餐饮”、“娱乐”、“候机”、“轻松”、“风险”、“防御”、“测速”、“防蹭网”、“一站式”、“体验”,并将这些分词存储到待训练的语料文件中。
按照Word2Vec模型框架进行训练,将每个词汇映射到一个向量。例如,分词“中国移动”的向量为[0.78839236 -2.7319999 0.779313 1.3800718 -2.739812 3.3856115,-0.4546756 3.3876383 -5.031738 -2.363761 -0.5720867 0.9202053,0.153232740.522835 2.2700298 1.8007175 -2.0552135 -4.298568,-2.0884874 1.0599761 -0.4010187 1.2…],分词“中国电信”的向量为[1.0095484 -3.621079 -0.76755853.1832402 -2.380266 2.0256934,-5.5812764 2.1096725 -3.327445 -0.39619142 -0.808845 -1.5955386,-3.1196775 -0.7218589 -0.66389036 1.1921647 -0.11851689 -5.198051,-1.8142316 1.0056998 3.2740514 -0.8 …],然而上述示例仅是示例性的,本公开不限于此。由于具有相似上下文位置的分词的向量也相似,因此可通过该模型找到相似的词汇。
在计算文本相似度时,可将第一系统平台的每个应用程序的文本信息以及第二系统平台的相应的候选应用程序的文本信息输入Word2Vec模型,以得到应用程序之间的文本相似度。例如,输入iOS应用标题和Android应用标题,使用Word2Vec模型计算文本相似度,然后输出计算结果。
例如,iOS应用标题为“广发银行手机银行”,其分词结果为“广发”、“银行”、“手机”、“银行”,Android应用标题为“广发手机银行”,其分词结果为“广发”、“手机”、“银行”,利用Word2Vec模型得到诸如分词“广发”的向量为[-1.2303904 -3.532071 1.76021171.2619283 -1.4360394 -0.22728966,-1.5298668 2.26116 -0.18427272 1.526164 -2.507586 2.1264179,-5.6475306 4.386107 -0.22141048 1.6134557 0.31511828]、“银行”的向量为[-1.5294373 -1.0618939 2.2637882 2.5896416 -1.7539529 3.9206626,-4.7929626 2.6210604 -0.09684382 0.37046662 -0.8689433 1.9183955,1.44422693.580839 -0.65922016 4.067455 -3.095096 -2.3516207]。在得到分词的向量后,通过下面的等式(2)将针对一个应用程序的各分词向量相加以得到该应用程序的向量。例如,对于标题为“广发银行手机银行”的iOS应用,将“广发”、“银行”、“手机”、“银行”四个分词向量相加后得到该iOS应用标题“广发银行手机银行”的向量,同理,计算Android应用标题“广发手机银行”的向量。
通过余弦相似度等式(3)得到iOS和Android两个应用标题之间的相似度:
其中,vec1表示iOS应用标题的向量,vec2表示Android应用标题的向量。例如,iOS应用标题(广发银行手机银行)与Android应用标题(广发手机银行)之间的Similarity=0.9693953。然而,上述示例仅是示例性的,本公开还可使用每个应用程序的短描述和/或长描述来得到应用程序之间的文本相似度。
在步骤S204,根据应用程序的图标信息来计算第一系统平台的每个应用程序与第二系统平台的相应的候选应用程序之间的图标相似度。可使用图标匹配器来计算应用程序之间的图标相似度。例如,可使用ORB(Oriented FAST and Rotated BRIEF)算法和/或SiameseNet模型作为图标匹配器来得到应用程序之间的图标相似度。
作为示例,ORB算法是一种计算机视觉的图像特征点提取算法,其可比较A和B两张图片相似度。具体地,可利用ORB算法分别计算提取图片A和B的特征点描述子。通过特定的匹配算法(例如,暴力算法)来计算图片A和B的特征点描述子之间的距离,若某两个特征点的描述子的距离小于特定阈值,则表示成功匹配,特征点成功匹配的数量越多,表明图片A与B越相似。在本公开中,可对iOS应用图标和Android应用图标应用ORB算法来得到应用程序之间的图标匹配度。
作为另一示例,可使用SiameseNet模型来计算应用程序之间的图标相似度。SiameseNet(即孪生网络)的模型架构如图3所示。参照图3,SiameseNet模型有两个输入,分别是图片X1和图片X2,应用于图片X1和图片X2的卷积网络结构相同,并且它们共享权值。可从各卷积网络输出两个向量,分别是GW(X1)和GW(X2)。可基于GW(X1)和GW(X2)计算欧式距离,例如,使用L1或者L2范式计算欧式距离EW(X1,X2)=||GW(X1)-GW(X2)||。然后,将EW(X1,X2)输出到全连接网络以及Sigmoid模块。最后可得到输出,即判断输入的两张图片是/否相似的概率值。
根据本公开的实施例,可收集不同应用程序的原始图标以及通过脚本生成或裁剪得到的图标,将属于同一应用程序的图标对的标签设置为相似并且将属于不同应用程序的图标对的标签设置为不相似,以生成训练样本集,基于样本集来训练根据本公开的SiameseNet模型。
具体地,首先收集APP图标数据。例如,可从网络上或者应用商店下载原始应用图标,再通过脚本生成或者裁剪出一些新的图标数据。根据不同的APP来定义相应的类别。一个APP对应一个类别,并放在相应的文件夹中。例如,可这样定义:相同文件夹中的图标是相同的类别(即,相似),不同文件夹中的图标为不同的类别(即,不相似)。对收集的APP图标数据进行预处理。例如,可使用脚本对数据进行重设大小、灰度化和重命名等操作。将预处理后的数据划分为训练数据集/验证数据集/测试数据集。建立图标对数据集。例如,随机选择一个文件夹,例如文件夹A,从中随机选择两个图标A1和A2,组成图标对(A1,A2),并将图标对(A1,A2)的标签数据设置为1(即,表示相似),随机选择另外一个文件夹,例如文件夹B,从中随机选择一个图标B1,与图标A1构成另外一个图标对(A1,B1),并将图标对(A1,B1)的标签数据设置为0(即,表示不相似)。这样可得到两条数据,分别为(A1,A2,1)和(A1,B1,0)。通过图标对的建立,可生成模型训练所需要的图标对数据集。SiameseNet模型随机抽取小批量(例如,32对)图标对数据进行训练,并每隔固定步数(例如,500步),计算验证数据集的准确率。重复上述训练验证,直到验证准确率达到阈值(例如,95%)或者最大训练步数(例如,500万步)为止,从而得到本公开的SiameseNet模型。
根据本公开的实施例,可单独地使用ORB算法或SiameseNet模型来得到应用程序的图标相似度,或者可使用ORB算法和SiameseNet模型两者来计算应用程序之间的图标相似度。例如,可对经由ORB算法得到的图标相似度和经由SiameseNet模型得到的图标相似度求取平均值或加权均值作为最终的图标相似度。
在步骤S205,根据文本相似度和图标相似度从与第一系统平台的每个应用程序相应的候选应用程序中确定满足条件的目标应用程序。
假设第一系统平台的一个应用程序具有100个第二系统平台的候选应用程序,可通过利用Word2Vec模型计算第一系统平台的一个应用程序分别与100个第二系统平台的候选应用程序之间的文本相似度,按照文本相似度从大到小的排列顺序进行排序,从中选择前Q个候选应用程序。例如,可选择前5个文本相似度最高的候选应用程序。然后,可使用ORB模型和Siamese模型中的至少一个计算第一系统平台的一个应用程序分别与100个第二系统平台的候选应用程序之间的图标相似度,按照图标相似度从大到小的排列顺序进行排序,从中选择前P个候选应用程序。例如,可选择前5个图标相似度最高的候选应用程序。因此,可基于文本相似度和图标相似度得到针对第一系统平台的一个应用程序的最多(Q+P)个第二系统平台的候选应用程序。这里,由于根据文本相似度得到的Q个候选应用程序与根据图标相似度得到的P个候选应用程序可能存在重复的应用,所以在取并集后可得到小于或等于(Q+P)个第二系统平台的候选应用程序。
接下来,可根据预设规则来选择满足条件的目标应用程序。所述条件可以是例如应用程序之间的文本相似度超过第一阈值,应用程序之间的图标相似度超过第二阈值,或者基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。
作为示例,在第一系统平台的一个应用程序具有(Q+P)个第二系统平台的候选应用程序的情况下,当存在文本相似度超过第一阈值(例如,0.98)的APP时,可直接输出该APP,将其作为目标应用程序;和/或当存在由ORB模型得到的图标相似度超过第二阈值(例如,0.98)的APP,直接输出该APP,将其作为目标应用程序;和/或当存在由ORB模型和Siamese模型得到的图标相似度的均值或加权均值超过第二阈值(例如,0.95)的APP,直接输出该APP,将其作为目标应用程序。在本公开中,根据计算图标相似度时使用的模型的种类和数量,可不同地设置第二阈值。若不满足前述条件,则可基于Word2Vec模型、ORB模型和Siamese模型三者的输出来计算综合相似度,例如,3个模型输出的相似度(包括文本相似度和图标相似度)的均值或加权均值,从(Q+P)个第二系统平台的候选应用程序中选择综合相似度排名前N(例如,3)位的APP列表。在利用ORB算法计算综合相似度时,可将匹配特征点的数量通过线性变换和sigmoid函数映射到[0,1]之间进行归一化,以用于加权计算综合相似度。然而,上述示例仅是为了解释说明,本公开不限于此。
根据本公开的实施例,可基于文本相似度和图标相似度之一来确定目标应用程序,或者可基于文本相似度和图标相似度两者来确定目标应用程序。
在步骤S206,根据第一系统平台的每个应用程序与相应的目标应用程序(第二系统平台的应用程序)来建立映射关系。这里,与第一系统平台的每个应用程序相应的目标应用程序可包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。因此,通过上述步骤可得到第一系统平台的应用程序与第二系统平台的应用程序一一对应或者一对多关系的映射表。
当用户想将先前使用的iOS设备中安装的APP迁移到新的Android设备中时,新设备可通过查询上述映射表得到将要下载的APP列表,然后在Android平台的应用市场下载对应的APP并执行安装。
图4示出根据本公开示例性实施例的数据处理装置的框图。参照图4,数据处理装置400可包括获取模块401、确定模块402和安装模块403。数据处理装置400中的每个模块可由一个或多个模块来实现,并且对应模块的名称可根据模块的类型而变化。在各种实施例中,可省略数据处理装置400中的一些模块,或者还可包括另外的模块。此外,根据本公开的各种实施例的模块/元件可以被组合以形成单个实体,并且因此可等效地执行相应模块/元件在组合之前的功能。
数据处理模400可以是电子设备中的一组件,或者是与电子设备通信连接的外部组件。
响应于将外部设备的应用程序迁移至新的电子设备的指令,获取模块401可获取外部设备中的应用程序信息,其中,外部设备具有第一系统平台,外部设备的应用程序至少包括第一应用程序,电子设备具有第二系统平台,第一系统平台不同于第二系统平台。
确定模块402可根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。
安装模块403可下载并安装第二应用程序至电子设备中。
可选地,第一应用程序与第二应用程序的图标和/或名称可不同。
可选地,确定模块402可根据第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系来确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。
可选地,映射关系可基于以下操作被建立:获取分别针对第一系统平台和第二系统平台的应用程序的相关信息,根据获取的相关信息建立映射关系,其中,相关信息包括应用程序的文本信息和图标信息中的至少一个。
可选地,文本信息可包括标题。
可选地,文本信息还可包括短描述、长描述中的至少一个文本信息。
根据本公开的实施例,确定模块402可从外部获取第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系。或者,确定模块402可基于上述操作来建立映射关系。
作为示例,可根据文本信息和/或图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序,根据第一系统平台的每个应用程序和相应的目标应用程序建立映射关系。
例如,所述条件可包括以下项中的至少一个:应用程序之间的文本相似度超过第一阈值;应用程序之间的图标相似度超过第二阈值;基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。
可选地,可根据文本信息和/或图标信息计算第一系统平台的每个应用程序与第二系统平台的应用程序或相应的候选应用程序之间的文本相似度和图标相似度中的至少一个,可根据文本相似度和图标相似度中的至少一个确定第二系统平台的应用程序中满足条件的应用程序作为目标应用程序。
可选地,可首先对文本信息进行分词处理,基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分,根据计算的相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的候选应用程序,根据文本信息和/或图标信息从与第一系统平台的每个应用程序相应的候选应用程序中确定满足条件的目标应用程序。
可选地,图标相似度可基于图标信息利用ORB模型和SiameseNet模型中的至少一个被获得。
可选地,SiameseNet模型可基于以下训练方式被获得:收集不同应用程序的原始图标以及通过脚本生成或裁剪得到的图标;将属于同一应用程序的图标对的标签设置为相似并且将属于不同应用程序的图标对的标签设置为不相似,以生成训练样本集;利用训练样本集对SiameseNet模型进行训练。
可选地,与第一系统平台的每个应用程序相应的目标应用程序可包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。
可选地,当确定的第二应用程序的数量大于1时,安装模块403可向用户显示搜索出的第二应用程序以供用户选择下载和安装。
图5示出根据本公开示例性实施例的电子设备的结构示意图。图5的电子设备能够快速迁移先前使用的设备中的应用程序数据。在本公开的示例性实施例中,电子设备可包括例如但不限于便携式通信装置(例如,智能电话)、计算机装置、便携式多媒体装置、便携式医疗装置、相机、可穿戴装置等。根据本公开的实施例,电子设备不限于以上所述。
如图5所示,电子设备500可包括:处理组件501、通信总线502、网络接口503、输入输出接口504、存储器505以及电源组件506。其中,通信总线502用于实现这些组件之间的连接通信。输入输出接口504可以包括视频显示器(诸如,液晶显示器)、麦克风和扬声器以及用户交互接口(诸如,键盘、鼠标、触摸输入装置等),可选地,输入输出接口504还可包括标准的有线接口、无线接口。网络接口503可选的可包括标准的有线接口、无线接口(如无线保真接口)。存储器505可以是高速的随机存取存储器,也可以是稳定的非易失性存储器。存储器505可选的还可以是独立于前述处理组件501的存储装置。
本领域技术人员可以理解,图5中示出的结构并不构成对电子设备500的限定,可包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图5所示,作为一种存储介质的存储器505中可包括操作系统(诸如iOS操作系统)、数据存储模块、网络通信模块、用户接口模块、数据处理程序以及数据库。
在图5所示的电子设备500中,网络接口503主要用于与外部设备/终端进行数据通信;输入输出接口504主要用于与用户进行数据交互;电子设备500中的处理组件501、存储器505可被设置在电子设备500中,电子设备500通过处理组件501调用存储器505中存储的程序以及由操作系统提供的各种API,执行本公开实施例提供的数据处理方法或者建立不同系统的应用程序之间的映射关系。
处理组件501可以包括至少一个处理器,存储器505中存储有计算机可以执行指令集合,当计算机可以执行指令集合被至少一个处理器执行时,执行根据本公开实施例的数据处理方法或者建立不同系统的应用程序之间的映射关系。此外,处理组件501可执行编码操作和解码操作等。然而,上述示例仅是示例性的,本公开不限于此。
作为示例,处理组件501可响应于将外部设备的应用程序迁移至电子设备500的指令,获取外部设备中的应用程序信息,其中,外部设备具有第一系统平台,外部设备的应用程序至少包括第一应用程序,电子设备500具有第二系统平台,第一系统平台不同于第二系统平台。
处理组件501可根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序,然后下载并安装第二应用程序至电子设备500中。
可选地,第一应用程序与第二应用程序的图标和/或名称可不同。
电子设备500可经由输入输出接口504接收或输出数据。例如,用户可经由输入输出接口504从外部获取第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系。
处理组件501可根据获取的映射关系来确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。
此外,处理组件501可也建立第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系。例如,处理组件501可获取分别针对第一系统平台和第二系统平台的应用程序的相关信息,根据相关信息建立映射关系,其中,相关信息包括应用程序的文本信息和图标信息中的至少一个。文本信息可包括标题。文本信息还可包括短描述、长描述中的至少一个文本信息。
可选地,处理组件501可根据文本信息和/或图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序,根据第一系统平台的每个应用程序和相应的目标应用程序建立映射关系。
可选地,处理组件501可根据文本信息和/或图标信息计算第一系统平台的每个应用程序与第二系统平台的应用程序之间的文本相似度和图标相似度中的至少一个;根据文本相似度和图标相似度中的至少一个确定第二系统平台的应用程序中满足条件的应用程序作为目标应用程序。
可选地,所述条件可包括以下项中的至少一个:应用程序之间的文本相似度超过第一阈值;应用程序之间的图标相似度超过第二阈值;基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。
可选地,处理组件501可对文本信息进行分词处理,基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分,根据相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的候选应用程序,然后根据文本信息和/或图标信息从与第一系统平台的每个应用程序相应的候选应用程序中确定满足条件的目标应用程序。也就是说,可首先初步筛选出与第一系统平台的每个应用程序相应的候选应用程序,然后根据文本相似度和图标相似度中的至少一个从候选应用程序中进一步筛选出与第一系统平台的每个应用程序相应的目标应用程序。
可选地,图标相似度可基于图标信息利用ORB模型和SiameseNet模型中的至少一个被获得。ORB模型和SiameseNet模型可经由输入输出接口504从外部获取,或者处理组件501可基于图标信息对ORB模型和SiameseNet模型进行训练得到。
可选地,SiameseNet模型可基于以下训练方式被获得:收集不同应用程序的原始图标以及通过脚本生成或裁剪得到的图标,将属于同一应用程序的图标对的标签设置为相似并且将属于不同应用程序的图标对的标签设置为不相似,以生成训练样本集,然后利用训练样本集对SiameseNet模型进行训练。
可选地,与第一系统平台的每个应用程序相应的目标应用程序可包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。
当确定的第二应用程序的数量大于1时,输入输出接口504可向用户显示搜索出的第二应用程序以供用户选择下载和安装。
下面以处理组件501建立iOS和Android系统平台之间的映射关系为例进行阐述。处理组件501可分别获取iOS和Android应用市场APP列表,根据下载量排名各获取前10万个APP的相关信息,将每个APP的相关信息保存到数据库。处理组件501可加载iOS APP列表,分别对每个iOS APP通过数据库初步搜索到最多100个备选Android APP,例如,处理组件501可采用分词与倒排索引结合的搜索策略来实现初步搜索。
针对每个iOS APP,处理组件501可在100个备选Android APP中,针对iOS APP和备选APP都提取APP标题、短描述、长描述这三个域,通过文本匹配器计算iOS与Android APP的文本相似度。此外,针对每个iOS APP,处理组件501可在100个备选Android APP中,通过图像匹配器(诸如ORB算法和SiameseNet模型),计算iOS与Android APP图标的相似度。
接下来,处理组件501可筛选出与iOS APP最为相似的一个或多个Android app作为目标APP。处理组件501可使用预先设置的规则得到与iOS APP的相应的Android目标APP,或者通过加权计算上述文本相似度和图标相似度,得到与iOS APP的综合相似度,再进行排序和选择。重复上述过程得到iOS AOO与目标Android APP一一对应关系的映射表。
例如,当用户换机(诸如从iOS设备换到Android设备)时,根据iOS设备上已安装的APP,处理组件501可通过查询上述映射表,得到要下载的Android APP的列表,从而在Android应用市场进行下载并执行安装。
作为示例,电子设备500可以是PC计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备500并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备500还可以是集成控制系统或系统管理器的一部分,或者可以被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
在电子设备500中,处理组件501可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理组件501还可以包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
处理组件501可运行存储在存储器中的指令或代码,其中,存储器505还可以存储数据。指令和数据还可以经由网络接口503而通过网络被发送和接收,其中,网络接口503可以采用任何已知的传输协议。
存储器505可以与处理组件501集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储器505可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可以使用的其他存储装置。存储器和处理组件501可以在操作上进行耦合,或者可以例如通过I/O端口、网络连接等互相通信,使得处理组件501能够读取存储在存储器505中的数据。
图6示出根据本公开示例性实施例的计算装置的示意图。
参照图6,根据本公开示例性实施例的计算装置600,包括存储器601和处理器602,存储器601上存储有计算机程序,当所述计算机程序被处理器602执行时,实现根据本公开的示例性实施例的数据处理方法或者建立映射关系的方法。
作为示例,当所述计算机程序被处理器602执行时,可实现以下步骤:响应于将外部设备的应用程序迁移至电子设备的指令,获取外部设备中的应用程序信息,其中,外部设备具有第一系统平台,外部设备的应用程序至少包括第一应用程序,电子设备具有第二系统平台,第一系统平台不同于第二系统平台;根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序;下载并安装第二应用程序至所述电子设备中。
此外,当所述计算机程序被处理器602执行时,可实现以下步骤:分别获取旧操作系统(诸如iOS操作系统)和新操作系统(诸如Android操作系统)的应用市场APP信息,根据获取的APP信息分别提取这两个系统平台上APP的文本信息(诸如APP标题、短描述和长描述)和图标信息,根据提取的文本信息,为旧操作系统的每个APP初步筛选新操作系统的多个候选APP,通过文本匹配器以及图像匹配器计算这两个系统平台上APP的文本相似度和图标相似度,筛选出与旧操作系统APP最为相似的一个或多个新操作系统APP作为目标,最终得到新旧操作系统一一对应的映射表。
本公开实施例中的计算装置可以包括但不限于诸如移动电话、笔记本电脑、PDA(个人数字助理)、PAD(平板电脑)、台式计算机等的装置。图6示出的计算装置仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如这里所使用的,术语“模块”可包括以硬件、软件或固件实现的单元,并可与其他术语(例如,“逻辑”、“逻辑块”、“部分”或“电路”)可互换地使用。模块可以是被适配为执行一个或更多个功能的单个集成部件或者是该单个集成部件的最小单元或部分。例如,根据实施例,可以以专用集成电路(ASIC)的形式来实现模块。
可将在此阐述的各种实施例实现为包括存储在存储介质中的可由机器(例如,移动装置)读取的一个或更多个指令的软件。例如,在处理器的控制下,所述机器的处理器可在使用或无需使用一个或更多个其它部件的情况下调用存储在存储介质中的所述一个或更多个指令中的至少一个指令并运行所述至少一个指令。这使得所述机器能够操作用于根据所调用的至少一个指令执行至少一个功能。所述一个或更多个指令可包括由编译器产生的代码或能够由解释器运行的代码。可以以非暂时性存储介质的形式来提供机器可读存储介质。其中,术语“非暂时性”仅意味着所述存储介质是有形装置,并且不包括信号(例如,电磁波),但是该术语并不在数据被半永久性地存储在存储介质中与数据被临时存储在存储介质中之间进行区分。
根据实施例,可在计算机程序产品中包括和提供根据本公开的各种实施例的方法。计算机程序产品可作为产品在销售者和购买者之间进行交易。可以以机器可读存储介质(例如,紧凑盘只读存储器(CD-ROM))的形式来发布计算机程序产品,或者可经由应用商店(例如,Play StoreTM)在线发布(例如,下载或上传)计算机程序产品,或者可直接在两个用户装置(例如,智能电话)之间分发(例如,下载或上传)计算机程序产品。如果是在线发布的,则计算机程序产品中的至少部分可以是临时产生的,或者可将计算机程序产品中的至少部分至少临时存储在机器可读存储介质(诸如制造商的服务器、应用商店的服务器或转发服务器的存储器)中。
根据各种实施例,上述部件中的每个部件(例如,模块或程序)可包括单个实体或多个实体(例如,在图6中,存储器601可包括一个或多个存储器,处理器602可包括一个或多个处理器)。根据各种实施例,可省略上述部件中的一个或更多个部件,或者可添加一个或更多个其它部件。可选择地或者另外地,可将多个部件(例如,模块或程序)集成为单个部件。在这种情况下,根据各种实施例,该集成部件可仍旧按照与所述多个部件中的相应一个部件在集成之前执行一个或更多个功能相同或相似的方式,执行所述多个部件中的每一个部件的所述一个或更多个功能。根据各种实施例,由模块、程序或另一部件所执行的操作可顺序地、并行地、重复地或以启发式方式来执行,或者所述操作中的一个或更多个操作可按照不同的顺序来运行或被省略,或者可添加一个或更多个其它操作。
多个模块中的至少一个可以通过AI模型实现。与AI相关联的功能可以通过非易失性存储器、易失性存储器和处理器来执行。
处理器可以包括一个或多个处理器。此时,一个或多个处理器可以是通用处理器,例如中央处理器(CPU)、应用处理器(AP)等,仅用于图形的处理器(例如图形处理器(GPU)、视觉处理器(VPU)和/或AI专用处理器(例如神经处理单元(NPU))。
一个或多个处理器根据存储在非易失性存储器和易失性存储器中的预定义操作规则或人工智能(AI)模型来控制输入数据的处理。预定义的操作规则或人工智能模型可通过训练或学习提供。这里,通过学习提供意味着,通过将学习算法应用于多个学习数据,形成具有期望特性的预定义操作规则或AI模型。学习可以在根据实施例的执行AI的设备本身中执行,和/或可以通过单独的服务器/设备/系统来实现。
作为示例,人工智能模型可以由多个神经网络层组成。每一层具有多个权重值,并且通过前一层的计算和多个权重值的操作来执行层操作。神经网络的例子包括但不限于卷积神经网络(CNN)、深度神经网络(DNN)、递归神经网络(RNN)、受限玻尔兹曼机(RBM)、深度置信网络(DBN)、双向递归深度神经网络(BRDNN)、生成式对抗网络(GAN)和深度Q网络。
学习算法是使用多个学习数据来训练预定目标设备(例如,机器人)以使得、允许或控制目标设备做出确定或预测的方法。学习算法的例子包括但不限于有监督学习、无监督学习、半监督学习或强化学习。
尽管已经参照其示例性实施例具体显示和描述了本公开,但是本领域的技术人员应该理解,在不脱离权利要求所限定的本公开的精神和范围的情况下,可以对其进行形式和细节上的各种改变。
Claims (16)
1.一种用于电子设备的数据处理方法,其特征在于,所述数据处理方法包括:
响应于将外部设备的应用程序迁移至所述电子设备的指令,获取所述外部设备中的应用程序信息,其中,所述外部设备具有第一系统平台,所述外部设备的应用程序至少包括第一应用程序,所述电子设备具有第二系统平台,第一系统平台不同于第二系统平台;
根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序;
下载并安装第二应用程序至所述电子设备中。
2.如权利要求1所述的数据处理方法,其特征在于,第一应用程序与第二应用程序的图标和/或名称不同。
3.如权利要求1所述的数据处理方法,其特征在于,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序的步骤包括:
根据第一系统平台的应用程序与第二系统平台的应用程序之间的映射关系来确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序。
4.如权利要求3所述的数据处理方法,其特征在于,所述映射关系基于以下操作被建立:
获取分别针对第一系统平台和第二系统平台的应用程序的相关信息;
根据所述相关信息建立所述映射关系,
其中,所述相关信息包括应用程序的文本信息和图标信息中的至少一个。
5.如权利要求4所述的数据处理方法,其特征在于,所述文本信息包括标题。
6.如权利要求5所述的数据处理方法,其特征在于,所述文本信息还包括短描述、长描述中的至少一个文本信息。
7.如权利要求4所述的数据处理方法,其特征在于,根据所述相关信息建立所述映射关系的步骤包括:
根据所述文本信息和/或所述图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序;
根据第一系统平台的每个应用程序和相应的目标应用程序建立所述映射关系。
8.如权利要求7所述的数据处理方法,其特征在于,所述条件包括以下项中的至少一个:
应用程序之间的文本相似度超过第一阈值;
应用程序之间的图标相似度超过第二阈值;
基于文本相似度和图标相似度的综合相似度排名前N位,其中,N为大于等于1的整数。
9.如权利要求7所述的数据处理方法,其特征在于,根据所述文本信息和/或所述图标信息针对第一系统平台的每个应用程序从第二系统平台的应用程序中确定满足条件的目标应用程序的步骤包括:
对所述文本信息进行分词处理;
基于分词结果计算第一系统平台的每个应用程序与第二系统平台的每个应用程序的相关度评分;
根据所述相关度评分从第二系统平台的应用程序中确定分别与第一系统平台的每个应用程序相应的候选应用程序;
根据所述文本信息和/或所述图标信息从与第一系统平台的每个应用程序相应的候选应用程序中确定满足所述条件的目标应用程序。
10.如权利要求7或9所述的数据处理方法,其特征在于,确定目标应用程序包括:
根据所述文本信息和/或所述图标信息计算第一系统平台的每个应用程序与第二系统平台的应用程序或相应的候选应用程序之间的文本相似度和图标相似度中的至少一个;
根据所述文本相似度和所述图标相似度中的至少一个确定第二系统平台的应用程序或相应的候选应用程序中满足所述条件的应用程序作为目标应用程序。
11.如权利要求10所述的数据处理方法,其特征在于,图标相似度基于所述图标信息利用ORB模型和SiameseNet模型中的至少一个被获得,
其中,SiameseNet模型基于以下训练方式被获得:
收集不同应用程序的原始图标以及通过脚本生成或裁剪得到的图标;
将属于同一应用程序的图标对的标签设置为相似并且将属于不同应用程序的图标对的标签设置为不相似,以生成训练样本集;
利用所述训练样本集对SiameseNet模型进行训练。
12.如权利要求7所述的数据处理方法,其特征在于,与第一系统平台的每个应用程序相应的目标应用程序包括一个第二系统平台的应用程序或者多个第二系统平台的应用程序。
13.如权利要求1或12所述的数据处理方法,其特征在于,下载并安装第二应用程序至所述电子设备中的步骤包括:
当确定的第二应用程序的数量大于1时,向用户显示搜索出的第二应用程序以供用户选择下载和安装。
14.一种用于电子设备的数据处理装置,其特征在于,所述数据处理方法包括:
获取模块,被配置为响应于将外部设备的应用程序迁移至所述电子设备的指令,获取所述外部设备中的应用程序信息,其中,所述外部设备具有第一系统平台,所述外部设备的应用程序至少包括第一应用程序,所述电子设备具有第二系统平台,第一系统平台不同于第二系统平台;
确定模块,被配置为根据获取的应用程序信息,确定与第一应用程序对应的能够运行于第二系统平台的第二应用程序;
安装模块,被配置为下载并安装第二应用程序至所述电子设备中。
15.一种存储有计算机程序的计算机可读存储介质,其中,当所述计算机程序被处理器执行时,实现权利要求1至13中任一项所述的数据处理方法。
16.一种计算装置,包括:
处理器;
存储器,存储有计算机程序,当所述计算机程序被处理器执行时,实现权利要求1至13中任一项所述的数据处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110538065.1A CN115373697A (zh) | 2021-05-18 | 2021-05-18 | 数据处理方法和数据处理装置 |
PCT/KR2022/005727 WO2022244997A1 (en) | 2021-05-18 | 2022-04-21 | Method and apparatus for processing data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110538065.1A CN115373697A (zh) | 2021-05-18 | 2021-05-18 | 数据处理方法和数据处理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115373697A true CN115373697A (zh) | 2022-11-22 |
Family
ID=84059445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110538065.1A Pending CN115373697A (zh) | 2021-05-18 | 2021-05-18 | 数据处理方法和数据处理装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115373697A (zh) |
WO (1) | WO2022244997A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117240760A (zh) * | 2023-11-13 | 2023-12-15 | 国网天津市电力公司信息通信公司 | 一种工业物联网协议字段智能检测方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2633487B1 (en) * | 2010-10-29 | 2020-11-25 | Orange | Method and system to recommend applications from an application market place to a new device |
KR101229752B1 (ko) * | 2011-06-01 | 2013-02-05 | 엘지전자 주식회사 | 이동 단말기 및 이동 단말기의 제어 방법 |
US20140282493A1 (en) * | 2013-03-15 | 2014-09-18 | Quixey, Inc | System for replicating apps from an existing device to a new device |
US9369823B2 (en) * | 2013-09-24 | 2016-06-14 | Google Technology Holdings LLC | System and method for transferring software applications and data between two mobile devices with different operating systems |
US9652688B2 (en) * | 2014-11-26 | 2017-05-16 | Captricity, Inc. | Analyzing content of digital images |
-
2021
- 2021-05-18 CN CN202110538065.1A patent/CN115373697A/zh active Pending
-
2022
- 2022-04-21 WO PCT/KR2022/005727 patent/WO2022244997A1/en active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117240760A (zh) * | 2023-11-13 | 2023-12-15 | 国网天津市电力公司信息通信公司 | 一种工业物联网协议字段智能检测方法及系统 |
CN117240760B (zh) * | 2023-11-13 | 2024-01-16 | 国网天津市电力公司信息通信公司 | 一种工业物联网协议字段智能检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2022244997A1 (en) | 2022-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110012356B (zh) | 视频推荐方法、装置和设备及计算机存储介质 | |
US10650102B2 (en) | Method and apparatus for generating parallel text in same language | |
US20180336193A1 (en) | Artificial Intelligence Based Method and Apparatus for Generating Article | |
CN107590255B (zh) | 信息推送方法和装置 | |
TW202139183A (zh) | 基於人工智慧的物體檢測方法、裝置、設備及儲存媒體 | |
CN112559800B (zh) | 用于处理视频的方法、装置、电子设备、介质和产品 | |
CN112287069B (zh) | 基于语音语义的信息检索方法、装置及计算机设备 | |
CN113722438B (zh) | 基于句向量模型的句向量生成方法、装置及计算机设备 | |
WO2020147409A1 (zh) | 一种文本分类方法、装置、计算机设备及存储介质 | |
WO2023138188A1 (zh) | 特征融合模型训练及样本检索方法、装置和计算机设备 | |
CN113407814B (zh) | 文本搜索方法、装置、可读介质及电子设备 | |
CN116303459A (zh) | 处理数据表的方法及系统 | |
CN113204691B (zh) | 一种信息展示方法、装置、设备及介质 | |
CN112052297B (zh) | 信息生成方法、装置、电子设备和计算机可读介质 | |
CN113657087B (zh) | 信息的匹配方法及装置 | |
CN113127672A (zh) | 量化图像检索模型的生成方法、检索方法、介质及终端 | |
CN113435499A (zh) | 标签分类方法、装置、电子设备和存储介质 | |
CN116109732A (zh) | 图像标注方法、装置、处理设备及存储介质 | |
CN111104572A (zh) | 用于模型训练的特征选择方法、装置及电子设备 | |
CN115373697A (zh) | 数据处理方法和数据处理装置 | |
WO2021012691A1 (zh) | 用于检索图像的方法和装置 | |
CN116484220A (zh) | 语义表征模型的训练方法、装置、存储介质及计算机设备 | |
CN111985217B (zh) | 一种关键词提取方法、计算设备及可读存储介质 | |
JP7236501B2 (ja) | 文書類似度学習に基づくディープラーニングモデルの転移学習方法およびコンピュータ装置 | |
US20230004595A1 (en) | Image retrieval method, image retrieval devices, image retrieval system and image display system |
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 |