CN103353870B - 一种应用聚类方法和装置 - Google Patents
一种应用聚类方法和装置 Download PDFInfo
- Publication number
- CN103353870B CN103353870B CN201310211411.0A CN201310211411A CN103353870B CN 103353870 B CN103353870 B CN 103353870B CN 201310211411 A CN201310211411 A CN 201310211411A CN 103353870 B CN103353870 B CN 103353870B
- Authority
- CN
- China
- Prior art keywords
- application
- parsed
- cluster
- title
- external name
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种应用聚类方法,该方法包括以下步骤:初始化所需的信息资源,获取应用外部名称;基于已初始化的信息,下载应用并对其进行解析,获取所解析的应用名称;对所获取的应用外部名称以及所解析的应用名称分别进行预处理;根据预处理结果,确定应用聚类的方式并进行应用聚类。相应地还提供了一种应用聚类装置。本发明提供的应用聚类方案可以提升应用聚类的效率和用户的搜索体验。
Description
技术领域
本发明涉及互联网技术,尤其涉及一种应用聚类方法和装置。
背景技术
互联网上的应用资源数量庞大,而且不断地得到更新、扩充。而用户面对这些纷繁复杂的应用资源时,如何方便、准确地找到目标类型的应用资源是当前面对的现实问题,而解决该问题的关键在于有效聚类同款应用。
现有技术中,通常采用以下方法聚类同一款应用:
抓取具有相同名称的应用;
简单地去除应用中可以识别的版本信息;
根据相同的应用名称聚类所述应用。
但是,这种方法的缺陷在于,同一款应用通常在不同站点所抓取的名称差别很大,由此导致很多相同应用并没有被合理地识别为同一款应用,导致用户无法一次性获取所需的应用资源。另外,有些应用虽然在不同站点所抓取的名称相同或相似,但是实质内容存在很大区别,导致用户下载某些应用资源后,得到的并不是与应用名称相符的资源。
发明内容
本发明的目的是提供一种应用聚类方法和装置,可以有效聚类相同应用。
根据本发明的一个方面,提供了一种应用聚类方法,该方法包括以下步骤:
初始化所需的信息资源,获取待聚类的多个应用外部名称;
基于已初始化的信息,下载应用并对其进行解析,获取所解析的应用内部名称;
对所获取的应用外部名称以及所解析的应用内部名称分别进行预处理;
根据预处理结果,确定应用聚类的方式并进行应用聚类。
根据本发明的另一个方面,还提供了一种应用聚类装置,包括:
信息初始化模块,用于初始化所需的信息资源,获取待聚类的多个应用外部名称;
应用获取模块,基于已初始化的信息,下载应用并对其进行解析,获取所解析的应用内部名称;
名称预处理模块,用于对所获取的应用外部名称以及所解析的应用内部名称分别进行预处理;
应用聚类模块,根据预处理结果,确定应用聚类的方式并进行应用聚类。
与现有技术相比,本发明具有以下优点:
1)本发明可以有效聚类相同的应用,可以在有限的终端(如手机、pad)屏幕上展示更丰富的信息,优化应用搜索结果,尤其是游戏类应用的搜索结果;
2)本发明提供的聚类方法可以集合更多应用相关信息,进而可以抽取出信息量更高的数据,提高检索相关性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为根据本发明一个优选实施例的应用聚类方法流程图;
图2为根据本发明另一个优选实施例的应用聚类装置的示意性框图。
具体实施方式
下面结合附图对本发明作进一步详细描述。
根据本发明的一个方面,提供了一种应用聚类方法。
请参考图1,图1为根据本发明一个优选实施例的应用聚类方法流程图。
如图1所示,本发明所提供的应用聚类方法包括以下步骤:
步骤S101,初始化所需的信息资源,获取待聚类的多个应用外部名称。
具体地,所述信息资源包括诸如同义词表、应用信息列表、名称映射表以及结果存储表等类型的数据。所述初始化的步骤包括:
a)加载同义词表;
其中,所述同义词表是指其中包含有相同或相似含义的词表数据库,该数据库可以由本实施例创建,也可以从第三方获取。
b)加载应用信息列表,包括应用外部名称和应用下载链接;
其中,所述应用信息列表通常由第三方提供(例如根据第三方提供的应用信息抓取相应的数据),包括应用外部名称(如新浪微博v1.0、新浪微博绿色版、sinaweibo等)、应用下载链接信息等。其中,所述应用外部名称在此不作约束,在实际情况中,所述第三方提供的外部名称可能与应用信息列表所来自的站点描述不一致。
c)初始化所述应用外部名称和所解析的应用名称的映射表;
其中,所述解析的应用名称如下文所述,在未得到所解析的应用名称前,初始化所述应用外部名称和将要得到的解析后应用名称的映射表。通常,所述应用外部名称和所解析的应用名称是不一样的,前者一般更具有描述性、内容更丰富,后者一般比较精简。
d)初始化应用聚类结果存储表,并将该存储表命名为cluster_map。
步骤S102,基于已初始化的信息,下载所述应用并对其进行解析,获取所解析的应用名称。
具体地,从已初始化的信息中,获取应用信息列表并从中取出一个应用条目,根据应用信息列表中的应用下载链接下载该应用对应的应用包。进一步地,对该应用包进行解析,从中获取所述应用解析后的内部名称,在本实施例中,对应用包进行解析的方式以及所使用的解析工具不做限定。
步骤S103,对所获取的应用外部名称以及所解析的应用名称分别进行预处理。
具体地,所述预处理具体包括:
Ⅰ)分别过滤所述应用外部名称以及所解析的应用名称的版本信息;
通常,所述由第三方提供的应用外部名称含有版本信息,如v1.0等。在本实施例中,无论是应用外部名称还是解析得到的应用名称,都对其进行版本信息的过滤操作。过滤操作的方式包括但不限于利用模式匹配,查找并去除所述名称中特定的版本信息(或特定字符串),如v1.0。
Ⅱ)对所述已过滤的应用外部名称以及所解析的应用名称进行切词、去除停用词或/和字词替换处理。
其中,在本实施例中,切词的方法在此不作限制。切词后,对其中的停用词/无用词做去除处理。例如,去掉其中含“版”的词,如去除词语“绿色版”。进一步地,对于名称中的某些词,还需要进行替换处理,例如,将名称为“sinaweibo”的字符串替换成中文名称“新浪微博”。
Ⅲ)对所述经过切词处理并过滤的结果进行散列计算,分别将经过散列计算的结果命名为组id(组名称标识)和内部id(内部名称标识)。
具体地,对经过上述步骤Ⅱ)处理过的结果进行散列计算,在本实施例中,对散列计算的方式在此不予限定,包括但不限于采用MD2、MD4、MD5或SHA-1散列算法。进一步地,分别将经过上述散列计算后的应用外部名称以及所解析的应用名称所对应的结果命名为组id和内部id。
步骤S104,根据预处理结果,确定应用聚类的方式并进行应用聚类。
具体地,根据所述应用外部名称对所述多个应用进行聚类,以获得第一聚类结果;然后,根据第一聚类结果中的所解析的应用名称,对所述第一聚类结果中的各类进行合并,以获得第二聚类结果。其中,所述聚类的方式包括但不限于:如果两个类中的应用具有相同的所解析的应用名称,则对这两个类进行聚类。即,根据组id聚类应用,并将所有组id相同的数据标记为同一类,并将其保存在所述映射表中。由此,多个不同的内部id对应同一组id,即组id值相同的应用被标记为同一组;进一步根据内部id聚类应用,对于内部id相同而对应的组id不同的应用,将其合并成一类应用。
进一步地,本发明所述的方法还包括:遍历所有的应用列表,进行步骤S101到步骤S104的操作,以完成对所有应用列表中的应用的聚类。
当然,所述领域的技术人员可以明白,本发明的上述方法或系统可以应用于各类应用的聚类。作为优选的实施例,可以将上述方法或系统应用于游戏应用的聚类。
与现有技术相比,本发明所提供的应用聚类方法具有以下优点:
1)本发明可以有效针对不同类型的应用进行有效地聚类,尤其是针对游戏类的应用聚类,效果更明显;
2)本发明通过对应用进行聚类,可以提升用户的检索和下载体验。
根据本发明的另一个方面,还提供了一种应用聚类装置。
请参考图2所示,图2为根据本发明一个优选实施例的应用聚类装置示意图。如图2所示,该装置包括:
信息初始化模块201,用于初始化所需的信息资源,获取待聚类的多个应用外部名称;
应用获取模块202,基于已初始化的信息,下载应用并对其进行解析,获取所解析的应用名称;
名称预处理模块203,用于对所获取的应用外部名称以及所解析的应用名称分别进行预处理;
应用聚类模块204,根据预处理结果,确定应用聚类的方式并进行应用聚类。
下面,将对本发明所提供的各模块的具体工作过程进行详细说明。
其中,所述信息初始化模块201初始化的信息资源包括诸如同义词表、应用信息列表、名称映射表以及结果存储表等类型的数据。
所述初始化的步骤包括:
a)加载同义词表;
其中,所述同义词表是指其中包含有相同或相似含义的词表数据库,该数据库可以由本实施例创建,也可以从第三方获取。
b)加载应用信息列表,包括应用外部名称和应用下载链接;
其中,所述应用信息列表通常由第三方提供(例如根据第三方提供的应用信息抓取相应的数据),包括应用外部名称(如新浪微博v1.0、新浪微博绿色版、sinaweibo等)、应用下载链接信息等。其中,所述应用外部名称在此不作约束,在实际情况中,所述第三方提供的外部名称可能与应用信息列表所来自的站点描述不一致。
c)初始化所述应用外部名称和所解析的应用名称的映射表;
其中,所述解析的应用名称如下文所述,在未得到所解析的应用名称前,初始化所述应用外部名称和将要得到的解析后应用名称的映射表。通常,所述应用外部名称和所解析的应用名称是不一样的,前者一般更具有描述性、内容更丰富,后者一般比较精简。
d)初始化应用聚类结果存储表,并将该存储表命名为cluster_map。
其中,所述应用获取模块202从已初始化的信息中,获取应用信息列表并从中取出一个应用条目,根据应用信息列表中的应用下载链接下载该应用对应的应用包。进一步地,所述应用获取模块202对该应用包进行解析,从中获取所述应用解析后的内部名称,在本实施例中,对应用包进行解析的方式以及所使用的解析工具不做限定。
其中,所述名称预处理模块203进行的预处理操作具体包括:
Ⅰ)分别过滤所述应用外部名称以及所解析的应用名称的版本信息;
通常,所述由第三方提供的应用外部名称含有版本信息,如v1.0等。在本实施例中,无论是应用外部名称还是解析得到的应用名称,都对其进行版本信息的过滤操作。过滤操作的方式包括但不限于利用模式匹配,查找并去除所述名称中特定的版本信息(或特定字符串),如v1.0。
Ⅱ)对所述已过滤的应用外部名称以及所解析的应用名称进行切词、去除停用词或/和字词替换处理。
其中,在本实施例中,切词的方法在此不作限制。切词后,对其中的停用词/无用词做去除处理。例如,去掉其中含“版”的词,如去除词语“绿色版”。进一步地,对于名称中的某些词,还需要进行替换处理,例如,将名称为“sinaweibo”的字符串替换成中文名称“新浪微博”。
Ⅲ)对所述经过切词处理并过滤的结果进行散列计算,分别将经过散列计算的结果命名为组id(组名称标识)和内部id(内部名称标识)。
具体地,对经过上述步骤Ⅱ)处理过的结果进行散列计算,在本实施例中,对散列计算的方式在此不予限定,包括但不限于采用MD2、MD4、MD5或SHA-1散列算法。进一步地,分别将经过上述散列计算后的应用外部名称以及所解析的应用名称所对应的结果命名为组id和内部id。
其中,所述应用聚类模块204根据所述应用外部名称对所述多个应用进行聚类,以获得第一聚类结果;然后,根据第一聚类结果中的所解析的应用名称,对所述第一聚类结果中的各类进行合并,以获得第二聚类结果。其中,所述聚类的方式包括但不限于:如果两个类中的应用具有相同的所解析的应用名称,则对这两个类进行聚类。即,根据组id聚类应用,并将所有组id相同的数据标记为同一类,并将其保存在所述映射表中。由此,多个不同的内部id对应同一组id,即组id值相同的应用被标记为同一组;进一步根据内部id聚类应用,对于内部id相同而对应的组id不同的应用,将其合并成一类应用。
进一步地,本发明提供的装置还包括应用遍历模块,用于遍历所有的应用列表。通过所述应用遍历模块对所有应用列表的遍历,并通过上述其他各模块的操作,可以完成所有应用列表中的应用聚类。
本发明所提供的应用聚类装置具有以下优点:本发明提供的方案不依赖于应用资源在不同站点所抓取的名称,客观聚类,满足了应用搜索结果的统一性,确保应用资源的高效聚类,根据用户的需求,得到准确的聚类结果,提升搜索效率。
以上所揭露的仅为本发明的较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (8)
1.一种应用聚类方法,该方法包括以下步骤:
a)初始化所需的信息资源,获取待聚类的多个应用外部名称;
b)基于已初始化的信息,下载应用并对其进行解析,获取所解析的应用内部名称;
c)对所获取的应用外部名称以及所解析的应用内部名称分别进行预处理;
d)根据预处理结果,确定应用聚类的方式并进行应用聚类;
其中,步骤d)具体包括:
根据所述应用外部名称对所述多个应用进行聚类,以获得第一聚类结果;
根据第一聚类结果中的所解析的应用内部名称,对所述第一聚类结果中的各类进行合并,以获得第二聚类结果。
2.根据权利要求1所述的方法,其中,所述初始化包括:
加载同义词表;
加载应用信息列表,包括应用名称和应用下载链接;
初始化所述应用外部名称和所解析的应用内部名称的映射表;
初始化应用聚类结果存储表。
3.根据权利要求1或2所述的方法,其中,所述预处理具体包括:
分别过滤所述应用外部名称以及所解析的应用内部名称的版本信息;
对已过滤的应用外部名称以及所解析的应用内部名称进行切词、去除停用词或/和字词替换处理;
对经过切词处理并过滤的结果进行散列计算。
4.根据权利要求1或2所述的方法,还包括:
遍历所有应用列表,依次进行步骤a)、b)、c)和d)的操作。
5.一种应用聚类装置,包括:
信息初始化模块,用于初始化所需的信息资源,获取待聚类的多个应用外部名称;
应用获取模块,基于已初始化的信息,下载应用并对其进行解析,获取所解析的应用内部名称;
名称预处理模块,用于对所获取的应用外部名称以及所解析的应用内部名称分别进行预处理;
应用聚类模块,根据预处理结果,确定应用聚类的方式并进行应用聚类;
其中,所述应用聚类模块的工作过程具体包括:
根据所述应用外部名称对所述多个应用进行聚类,以获得第一聚类结果;
根据第一聚类结果中的所解析的应用内部名称,对所述第一聚类结果中的各类进行合并,以获得第二聚类结果。
6.根据权利要求5所述的装置,其中,所述信息初始化模块的初始化过程包括:
加载同义词表;
加载应用信息列表,包括应用名称和应用下载链接;
初始化所述应用外部名称和所解析的应用内部名称的映射表;
初始化应用聚类结果存储表。
7.根据权利要求5或6所述的装置,其中,所述预处理具体包括:
分别过滤所述应用外部名称以及所解析的应用内部名称的版本信息;
对已过滤的应用外部名称以及所解析的应用内部名称进行切词、去除停用词或/和字词替换处理;
对经过切词处理并过滤的结果进行散列计算。
8.根据权利要求5或6所述的装置,还包括:应用遍历模块,用于遍历所有的应用列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310211411.0A CN103353870B (zh) | 2013-05-31 | 2013-05-31 | 一种应用聚类方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310211411.0A CN103353870B (zh) | 2013-05-31 | 2013-05-31 | 一种应用聚类方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103353870A CN103353870A (zh) | 2013-10-16 |
CN103353870B true CN103353870B (zh) | 2017-02-15 |
Family
ID=49310243
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310211411.0A Active CN103353870B (zh) | 2013-05-31 | 2013-05-31 | 一种应用聚类方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103353870B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1808426A (zh) * | 2005-01-17 | 2006-07-26 | 马岩 | 一种通用的文件搜索系统及方法 |
CN101771993A (zh) * | 2008-12-31 | 2010-07-07 | 中国移动通信集团公司 | 基于移动网络实现聚合应用的系统及其方法 |
CN102761623A (zh) * | 2012-07-26 | 2012-10-31 | 北京奇虎科技有限公司 | 资源自适配下载方法、系统、数据存储服务器、以及通信系统 |
-
2013
- 2013-05-31 CN CN201310211411.0A patent/CN103353870B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1808426A (zh) * | 2005-01-17 | 2006-07-26 | 马岩 | 一种通用的文件搜索系统及方法 |
CN101771993A (zh) * | 2008-12-31 | 2010-07-07 | 中国移动通信集团公司 | 基于移动网络实现聚合应用的系统及其方法 |
CN102761623A (zh) * | 2012-07-26 | 2012-10-31 | 北京奇虎科技有限公司 | 资源自适配下载方法、系统、数据存储服务器、以及通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103353870A (zh) | 2013-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110704411B (zh) | 适用于艺术领域的知识图谱搭建方法及装置、电子设备 | |
US20160328650A1 (en) | Mining Forums for Solutions to Questions | |
CN112199375A (zh) | 跨模态的数据处理方法、装置、存储介质以及电子装置 | |
US20180159928A1 (en) | Network-Based File Cloud Synchronization Method | |
CN109408821B (zh) | 一种语料生成方法、装置、计算设备及存储介质 | |
CN106484774B (zh) | 一种多源视频元数据的关联方法及系统 | |
CN111008321A (zh) | 基于逻辑回归推荐方法、装置、计算设备、可读存储介质 | |
CN104915426B (zh) | 信息排序方法、用于生成信息排序模型的方法及装置 | |
CN109492081B (zh) | 文本信息搜索和信息交互方法、装置、设备及存储介质 | |
CN108228657B (zh) | 一种关键字检索的实现方法及装置 | |
CN104750704A (zh) | 一种网页url地址分类识别方法及装置 | |
US20210326599A1 (en) | System and method for automatically detecting and marking logical scenes in media content | |
CN104036187A (zh) | 计算机病毒类型确定方法及其系统 | |
CN107193870B (zh) | 网页内容的提取方法和系统 | |
CN112822121A (zh) | 流量识别方法、流量确定方法、知识图谱建立方法 | |
CN112364014A (zh) | 数据查询方法、装置、服务器及存储介质 | |
CN106372231A (zh) | 一种搜索方法及装置 | |
CN111538903A (zh) | 搜索推荐词确定方法、装置、电子设备及计算机可读介质 | |
CN107590233B (zh) | 一种文件管理方法及装置 | |
CN112364051B (zh) | 一种数据查询方法及装置 | |
CN103353870B (zh) | 一种应用聚类方法和装置 | |
CN110442614B (zh) | 元数据的搜索方法及装置、电子设备、存储介质 | |
CN104363237A (zh) | 一种互联网媒体资源元数据的处理方法及其系统 | |
CN113806647A (zh) | 识别开发框架的方法及相关设备 | |
CN105653540B (zh) | 文件属性信息的处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |