CN107463935A - 应用分类方法和应用分类装置 - Google Patents
应用分类方法和应用分类装置 Download PDFInfo
- Publication number
- CN107463935A CN107463935A CN201610395414.8A CN201610395414A CN107463935A CN 107463935 A CN107463935 A CN 107463935A CN 201610395414 A CN201610395414 A CN 201610395414A CN 107463935 A CN107463935 A CN 107463935A
- Authority
- CN
- China
- Prior art keywords
- application
- sorted
- data
- training
- bayes classifier
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- 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/35—Clustering; Classification
-
- 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/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种应用分类方法,首先,获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;然后,对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;最后,根据所述多个关键词获得所述待分类应用的分类名称。相较于现有技术,本发明创造性的利用了各大应用商店中对各个应用的应用描述作为分类根据,采用分词技术对所述应用描述分词后获得多个关键词,然后根据关键词判断所述应用的分类,实现了将待分类数据按照预定的分类名称重新分类的目的,从而实现对应用的统一重新分类。
Description
技术领域
本发明涉及应用分类领域,具体的说是一种应用分类方法和一种应用分类装置。
背景技术
随着智能手机、平板电脑等智能终端的迅速普及,基于IOS操作系统、android操作系统和windows操作系统的各种应用程序(英文缩写:App;英文全称:Application)已从社交、购物、交通、服务、医疗、通讯等各个领域深入消费者的生活中,应用程序的总数量呈爆发式增长,目前,基于IOS操作系统的App总数已超过150万,而基于开源的android操作系统的App数量更加庞大,这些App在互联网中的各大应用商店中上架,以供用户下载安装。
由于App发展是互联网发展的重要方面,根据App的规模、分类等情况可以宏观了解互联网科技的发展方向,对政府、企业、个人等均具有重要的指导作用,因此,需要了解市场上所有App整体的分类情况。
目前,国内有几十个应用商店,各个应用商店的规模不同,上架的App千差万别,各个应用商店对App的分类类目各不相同,对各个App的分类也不尽相同,对同一个应用商店的数据尚可以进行分类汇总,但对多个应用商店的数据就无法统一进行分类汇总了,以上现状对统计市场上所有App的整体分类情况造成了阻碍,现有技术中缺少能够对市场上的App进行统一分类的方法。
发明内容
鉴于上述问题,迫切需要一种能够对市场上的App进行统一分类的应用分类方法,以及相应的一种应用分类装置。
本发明采用的技术方案是:
本申请提供一种应用分类方法,包括:
获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;
对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;
根据所述多个关键词获得所述待分类应用的分类名称。
可选的,所述对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述应用的多个关键词的步骤,包括:
对所述待分类数据中的应用名称和应用描述采用ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j中的任一种分词工具进行分词处理,获得所述应用的多个关键词。
可选的,所述根据所述多个关键词获得所述待分类应用的分类名称的步骤具体包括:
获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器;
采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值;
将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,获得所述待分类应用的分类名称。
可选的,所述获取待分类数据的步骤,包括:
采用网络爬取方法从不同应用商店中爬取待分类数据。
可选的,所述采用网络爬取方法从不同应用商店中爬取待分类数据的步骤,包括:
采用nutch爬虫从不同应用商店中爬取待分类数据。
本申请还提供一种应用分类装置,包括:
待分类数据获取模块,用于获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;
待分类数据分词模块,用于对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;
分类模块,用于根据所述多个关键词获得所述待分类应用的分类名称。
可选的,所述待分类数据分词模块包括:
待分类数据分词单元,用于对所述待分类数据中的应用名称和应用描述采用ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j中的任一种分词工具进行分词处理,获得所述应用的多个关键词。
可选的,所述分类模块包括:
训练样本获取单元,用于获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
训练数据分词单元,用于对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
分类器训练单元,用于采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器;
分类器测试单元,用于采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
重复训练单元,用于判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值;
分类单元,用于将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,获得所述待分类应用的分类名称。
可选的,所述待分类数据获取模块包括:
待分类数据爬取单元,用于采用网络爬取方法从不同应用商店中爬取待分类数据。
可选的,所述待分类数据爬取单元包括:
Nutch爬虫子单元,用于采用nutch爬虫从不同应用商店中爬取待分类数据。
与现有技术相比,本发明具有以下优点:
本发明提供的一种应用分类方法,首先,获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;然后,对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;最后,根据所述多个关键词获得所述待分类应用的分类名称。
相较于现有技术,本发明创造性的利用了各大应用商店中对各个应用的应用描述作为分类根据,采用分词技术对所述应用描述分词后获得多个关键词,然后根据关键词判断所述应用的分类,实现了将待分类数据按照预定的分类名称重新分类的目的,从而实现对应用的统一重新分类,解决了目前各大应用市场应用分类不一致导致的不能统计市场上所有App的整体分类情况的问题。由于应用描述一般都会对应用的功能、用途进行详细说明,因此,根据应用描述进行分类具有较高的准确性,目前,根据试验结果,本方法的分类准确性高达96%以上,效果显著。
进一步的,本发明在根据关键词判断所述应用的分类时,采用了朴素贝叶斯分类方法,并对朴素贝叶斯分类器进行重复训练和检验,以保证所述朴素贝叶斯分类器分类的准确性,利用朴素贝叶斯分类器实现应用的自动分类,具有较高的分类效率和准确性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明提供的一种应用分类方法实施例的流程图;
图2是本发明提供的一种应用分类装置实施例的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。用于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到目前各大应用市场应用分类不一致导致的不能统计市场上所有App的整体分类情况的问题,本发明实施例提供了一种能够对市场上的App进行统一分类的应用分类方法,以及相应的一种应用分类装置,下面依次结合附图对本发明的实施例进行详细说明。
请参考图1,其为本发明提供的一种应用分类方法实施例的流程图,所述应用分类方法包括如下步骤:
步骤S101:获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述。
本步骤,获取待分类数据,所述待分类数据可以是直接利用网络爬取方法从各大不同的应用商店中爬取的,也可以是提前爬取完成后再进行整理、修改后获得的,其主要包括待分类应用的应用名称和应用描述。
其中,所述网络爬取方法也称互联网数据采集方法,是一种自动的从互联网中发现并抓取网页,以及在网页中查询获得目标数据的方法,也叫做网络爬虫。从爬取原理来看,网络爬虫一般分为传统爬虫和聚焦爬虫,传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。通俗的讲,也就是通过源码解析来获得想要的内容。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。
一种典型的网络爬取方法是nutch爬虫,nutch爬虫包括crawler(爬虫)和searcher(查询)两部分,其中,Crawler主要用于从网络上抓取网页并为这些网页建立索引,Searcher主要利用这些索引检索用户的查找关键词来产生查找结果即目标数据。利用nutch爬虫即可根据应用商店的url,在所述应用商店内自动打开链接的应用页面,并从所述应用页面中查询获取应用的应用名称、应用编码、应用版本、应用开发者、应用下载量、应用描述等页面内容,即为待分类数据。
以上仅示例性对网络爬虫进行了说明,现有技术中,根据编程语言、应用环境等,还有多种多样的网络爬虫,例如Java爬虫、Python爬虫、C++爬虫、C#爬虫、PHP爬虫、ErLang爬虫和Ruby爬虫等,此均为现有技术中的成熟基础,因此本文不再赘述,其均在本申请的保护范围之内。
需要说明的是,由于同一应用商店中的应用可能重复上架,而不同应用商店中的相同应用可能有不同的应用名称等问题,在从各应用商店中爬取待分类数据后,一般需要对所述待分类数据进行去重、重命名等修改操作,然后再进行统一分类,其也在本申请的保护范围之内。
步骤S102:对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词。
通过步骤S101,已获取待分类数据,接下来,对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词,分词就是将连续的字序列按照一定的规范重新组合成词序列的过程,此步骤可以利用现有的分词工具执行,例如ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j等任一种现有的分词工具。
在本申请提供的一个实施例中,所述对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述应用的多个关键词的步骤,包括:
对所述待分类数据中的应用名称和应用描述采用ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j中的任一种分词工具进行分词处理,获得所述应用的多个关键词。
在本申请提供的一个优选的实施例中,首先将所述待分类数据导入到hive(hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行)中,然后采用ictseg()函数调用ICTCLAS分词系统进行分词。
步骤S103:根据所述多个关键词获得所述待分类应用的分类名称。
通过步骤S102,已对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词,接下来,根据所述多个关键词获得所述待分类应用的分类名称。
本步骤,根据应用描述分词获得的关键词即可判断所述应用的分类,由于应用描述一般都会对应用的功能、用途进行详细说明,因此,根据应用描述进行分类具有较高的准确性,本步骤,可以利用深度学习算法、朴素贝叶斯分类算法、决策树算法或人工神经网络实现。
在本申请提供的一个优选实施例中,采用朴素贝叶斯分类算法进行分类,朴素贝叶斯分类的思想基础是:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。朴素贝叶斯分类的数学计算过程如下:
分类S1、设x={a1,a2,……,am}为一个待分类项,而每个a为x的一个特征属性。
分类S2、有类别集合C={y1,y2,……,yn},其中,y1,y2,……,yn为各个分类名称。
分类S3、计算待分类项x在所述类别集合中的各个分类发生的概率P(y1|x),P(y2|x),……,P(yn|x)。
分类S4、如果P(yk|x)=max{P(y1|x),P(y2|x),……,P(yn|x)},则x∈yk。
其中,要进行上述分类S3步骤的计算,需要预先进行以下训练步骤:
训练S1、找到一个已知分类的待分类项集合,这个集合叫做训练样本集。
训练S2、统计得到在各类别下各个特征属性的条件概率估计。即
P(a1|y1),P(a2|y1),……,P(am|y1);
P(a1|y2),P(a2|y2),……,P(am|y2);
……
P(a1|yn),P(a2|yn),……,P(am|yn)。
训练S3、如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导:
因为分母对于所有类别为常数,因为我们只要将分子最大化即可。又因为各特征属性是条件独立的,所以有:
基于以上数学基础,通过训练和分类过程,即可获得所述待分类项的分类结果。
在本实施例中,所述待分类数据即为待分类项,所述待分类数据中的关键词即为所述待分类项的特征属性。类别集合即为本实施例对应用统一进行分类的分类名称的集合。所述根据所述多个关键词获得所述待分类应用的分类名称的步骤,具体包括:
获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器;
采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值;
将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,获得所述待分类应用的分类名称。
在本申请提供的一个实施例中,本步骤是在Mahout中利用朴素贝叶斯分类器实现的,Mahout是Apache Software Foundation(ASF)旗下的一个开源项目,是基于一个Hadoop的机器学习和数据挖掘的分布式计算框架,提供一些可扩展的机器学习领域经典算法的实现,是一个很强大的数据挖掘工具,是一个分布式机器学习算法的集合。
在使用朴素贝叶斯分类器进行分类前,需要利用训练样本训练朴素贝叶斯分类器,在本申请提供的一个实施例中,朴素贝叶斯分类器的训练步骤包括:
获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器。
考虑到市场上应用数量庞大,进行分类时需要考虑分类的准确问题,因此,在训练所述朴素贝叶斯分类器时,需在训练后进行检验,测试所述朴素贝叶斯分类器的准确度,若准确度不达标,则整理训练样本后重新训练,直至准确度达到预期,在本申请提供的一个实施例中,所述朴素贝叶斯分类器的训练步骤还包括:
采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值。
训练完成后,获得符合预期准确度的训练好的朴素贝叶斯分类器,接下来,将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,即可获得所述待分类应用的分类名称。具体实施时,将所述多个关键词按照朴素贝叶斯分类算法的输入数据格式(segments)输入到预先训练好的朴素贝叶斯分类器进行分类,即可获得所述待分类应用的分类名称,其中,segments表示关键词序列。
对于对批量待分类应用进行分类的情形,由于所述待分类应用的应用名称可能会有重名的情况,为了保证分类信息的可追溯性,会获取所述待分类应用的应用编码作为线索,便于在分类后能够与分类前的数据进行关联、对应,以使用户在发现分类错误时能够人工复查、纠错。具体实施时,将所述待分类应用的应用编码和所述多个关键词按照朴素贝叶斯分类算法的输入数据格式(nid,segments)输入到预先训练好的朴素贝叶斯分类器进行分类,即可获得所述待分类应用的分类名称,其中,nid表示应用编码,segments表示关键词序列。
在本申请提供的一个具体的实施例中,预先准备1万条待分类数据,人工对每条待分类数据进行分类,然后,取其中的8千条训练朴素贝叶斯分类器,训练完成后,将剩余的2千条用训练好的朴素贝叶斯分类器进行分类,检查分类结果与之前人工分类结果是否一致,并计算朴素贝叶斯分类器的准确度,判断其准确度是否达标,如是否达到95%以上,若未达标,则在上述8千条训练数据中删除影响分类结果的数据,重新训练朴素贝叶斯分类器,训练完成后再次检测其准确度,重复以上步骤,直至准确度达标,就得到了训练好的朴素贝叶斯分类器。接下来,就可以利用训练好的朴素贝叶斯分类器进行分类了。
将待分类数据导入到hive中,在hive中利用ictseg()函数调用ICTCLAS分词系统对待分类数据中的应用名称和应用描述进行分词,然后以符合朴素贝叶斯分类器的输入数据格式(nid,segments)从hive输出,接下来在Mahout中利用上述训练好的朴素贝叶斯分类器进行分类,即可得到分类结果,其数据格式为(nid,type),其中nid为应用编码,type为分类名称,结果合并处理时,在hive中创建外部表load此文件,将原待分类数据全量表与该外部表左连接得到增加了分类字段的新的全量表,完成应用的统一分类。
至此,通过步骤S101至步骤S103,完成了应用分类流程。
相较于现有技术,本发明创造性的利用了各大应用商店中对各个应用的应用描述作为分类根据,采用分词技术对所述应用描述分词后获得多个关键词,然后根据关键词判断所述应用的分类,实现了将待分类数据按照预定的分类名称重新分类的目的,从而实现对应用的统一重新分类,解决了目前各大应用市场应用分类不一致导致的不能统计市场上所有App的整体分类情况的问题。由于应用描述一般都会对应用的功能、用途进行详细说明,因此,根据应用描述进行分类具有较高的准确性,目前,根据试验结果,本方法的分类准确性高达96%以上,效果显著。
进一步的,本发明在根据关键词判断所述应用的分类时,采用了朴素贝叶斯分类方法,并对朴素贝叶斯分类器进行重复训练和检验,以保证所述朴素贝叶斯分类器分类的准确性,利用朴素贝叶斯分类器实现应用的自动分类,具有较高的分类效率和准确性。
在上述的实施例中,提供了一种应用分类方法,与之相对应的,本申请还提供一种应用分类装置。请参考图2,其为本发明提供的一种应用分类装置实施例的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
本实施例提供的一种应用分类装置,包括:待分类数据获取模块101,用于获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;待分类数据分词模块102,用于对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;分类模块103,用于根据所述多个关键词获得所述待分类应用的分类名称。
在本申请提供的一个实施例中,所述待分类数据分词模块102包括:
待分类数据分词单元,用于对所述待分类数据中的应用名称和应用描述采用ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j中的任一种分词工具进行分词处理,获得所述应用的多个关键词。
在本申请提供的一个实施例中,所述分类模块103包括:
训练样本获取单元,用于获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
训练数据分词单元,用于对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
分类器训练单元,用于采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器;
分类器测试单元,用于采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
重复训练单元,用于判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值;
分类单元,用于将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,获得所述待分类应用的分类名称。
在本申请提供的一个实施例中,所述待分类数据获取模块101包括:
待分类数据爬取单元,用于采用网络爬取方法从不同应用商店中爬取待分类数据。
在本申请提供的一个实施例中,所述待分类数据爬取单元包括:Nutch爬虫子单元,用于采用nutch爬虫从不同应用商店中爬取待分类数据。
以上,为本发明提供的一种应用分类装置的实施例。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
Claims (10)
1.一种应用分类方法,其特征在于,包括:
获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;
对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;
根据所述多个关键词获得所述待分类应用的分类名称。
2.根据权利要求1所述的应用分类方法,其特征在于,所述对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述应用的多个关键词的步骤,包括:
对所述待分类数据中的应用名称和应用描述采用ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j中的任一种分词工具进行分词处理,获得所述应用的多个关键词。
3.根据权利要求1所述的应用分类方法,其特征在于,所述根据所述多个关键词获得所述待分类应用的分类名称的步骤具体包括:
获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器;
采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值;
将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,获得所述待分类应用的分类名称。
4.根据权利要求1所述的应用分类方法,其特征在于,所述获取待分类数据的步骤,包括:
采用网络爬取方法从不同应用商店中爬取待分类数据。
5.根据权利要求4所述的应用分类方法,其特征在于,所述采用网络爬取方法从不同应用商店中爬取待分类数据的步骤,包括:
采用nutch爬虫从不同应用商店中爬取待分类数据。
6.一种应用分类装置,其特征在于,包括:
待分类数据获取模块,用于获取待分类数据,其中,所述待分类数据包括待分类应用的应用名称和应用描述;
待分类数据分词模块,用于对所述待分类数据中的应用名称和应用描述进行分词处理,获得所述待分类应用的多个关键词;
分类模块,用于根据所述多个关键词获得所述待分类应用的分类名称。
7.根据权利要求6所述的应用分类装置,其特征在于,所述待分类数据分词模块包括:
待分类数据分词单元,用于对所述待分类数据中的应用名称和应用描述采用ICTCLAS、IKAnalyzer、盘古分词、庖丁中文分词、LibMMSeg、PHPCWS、HTTPCWS、mmseg4j、smallseg、CRF、SCWS、FudanNLP和ICTCLAS4j中的任一种分词工具进行分词处理,获得所述应用的多个关键词。
8.根据权利要求6所述的应用分类装置,其特征在于,所述分类模块包括:
训练样本获取单元,用于获取由多条训练数据组成的训练样本,其中,每条所述训练数据包括一个已确定分类的训练应用的应用名称、应用描述和分类名称;
训练数据分词单元,用于对每条所述训练数据中的应用名称和应用描述进行分词处理,获得每个训练应用的多个关键词,所有所述训练应用的关键词和分类名称共同组成朴素贝叶斯分类器的训练样本;
分类器训练单元,用于采用所述训练样本训练朴素贝叶斯分类器,获得训练好的朴素贝叶斯分类器;
分类器测试单元,用于采用测试样本测试所述训练好的朴素贝叶斯分类器的准确度;
重复训练单元,用于判断所述准确度是否达到预期值,若未达到,则按照用户的指令在所述训练样本中删除至少一条训练数据,重新训练朴素贝叶斯分类器并测试训练好的朴素贝叶斯分类器的准确度,重复执行本步骤直至所述准确度达到预期值;
分类单元,用于将所述多个关键词输入训练好的朴素贝叶斯分类器中进行分类,获得所述待分类应用的分类名称。
9.根据权利要求6所述的应用分类装置,其特征在于,所述待分类数据获取模块包括:
待分类数据爬取单元,用于采用网络爬取方法从不同应用商店中爬取待分类数据。
10.根据权利要求9所述的应用分类装置,其特征在于,所述待分类数据爬取单元包括:
Nutch爬虫子单元,用于采用nutch爬虫从不同应用商店中爬取待分类数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610395414.8A CN107463935A (zh) | 2016-06-06 | 2016-06-06 | 应用分类方法和应用分类装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610395414.8A CN107463935A (zh) | 2016-06-06 | 2016-06-06 | 应用分类方法和应用分类装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107463935A true CN107463935A (zh) | 2017-12-12 |
Family
ID=60545394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610395414.8A Pending CN107463935A (zh) | 2016-06-06 | 2016-06-06 | 应用分类方法和应用分类装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107463935A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460014A (zh) * | 2018-02-07 | 2018-08-28 | 百度在线网络技术(北京)有限公司 | 企业实体的识别方法、装置、计算机设备及存储介质 |
CN108874769A (zh) * | 2018-05-16 | 2018-11-23 | 深圳开思时代科技有限公司 | 配件名称标准化方法及装置、电子设备和介质 |
CN109583208A (zh) * | 2018-12-03 | 2019-04-05 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 基于移动应用评论数据的恶意软件识别方法和系统 |
CN109857402A (zh) * | 2019-01-30 | 2019-06-07 | 重庆蓝岸通讯技术有限公司 | 一种app归类整理方法及系统 |
CN110717038A (zh) * | 2019-09-17 | 2020-01-21 | 腾讯科技(深圳)有限公司 | 对象分类方法及装置 |
CN110941638A (zh) * | 2018-09-21 | 2020-03-31 | 武汉安天信息技术有限责任公司 | 应用分类规则库构建方法、应用分类方法及装置 |
CN110941714A (zh) * | 2018-09-21 | 2020-03-31 | 武汉安天信息技术有限责任公司 | 分类规则库构建方法、应用分类方法及装置 |
CN113010671A (zh) * | 2021-02-22 | 2021-06-22 | 杭州西湖数据智能研究院 | 一种app分类系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024045A (zh) * | 2010-12-14 | 2011-04-20 | 成都市华为赛门铁克科技有限公司 | 信息分类处理方法、装置和终端 |
CN102169545A (zh) * | 2011-04-25 | 2011-08-31 | 中国科学院自动化研究所 | 一种高分辨率遥感图像的变化检测方法 |
CN102692456A (zh) * | 2012-05-02 | 2012-09-26 | 江苏大学 | 一种识别金属拉深件成形微裂纹位置的方法 |
-
2016
- 2016-06-06 CN CN201610395414.8A patent/CN107463935A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024045A (zh) * | 2010-12-14 | 2011-04-20 | 成都市华为赛门铁克科技有限公司 | 信息分类处理方法、装置和终端 |
CN102169545A (zh) * | 2011-04-25 | 2011-08-31 | 中国科学院自动化研究所 | 一种高分辨率遥感图像的变化检测方法 |
CN102692456A (zh) * | 2012-05-02 | 2012-09-26 | 江苏大学 | 一种识别金属拉深件成形微裂纹位置的方法 |
Non-Patent Citations (2)
Title |
---|
GIACOMO BERARDI 等: "Multi-Store Metadata-Based Supervised Mobile App Classification", 《SAC "15 PROCEEDINGS OF THE 30TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING》 * |
魏晓宁 等: "结合中文分词的贝叶斯文本分类", 《苏州市职业大学学报》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460014A (zh) * | 2018-02-07 | 2018-08-28 | 百度在线网络技术(北京)有限公司 | 企业实体的识别方法、装置、计算机设备及存储介质 |
CN108460014B (zh) * | 2018-02-07 | 2022-02-25 | 百度在线网络技术(北京)有限公司 | 企业实体的识别方法、装置、计算机设备及存储介质 |
CN108874769A (zh) * | 2018-05-16 | 2018-11-23 | 深圳开思时代科技有限公司 | 配件名称标准化方法及装置、电子设备和介质 |
CN110941638A (zh) * | 2018-09-21 | 2020-03-31 | 武汉安天信息技术有限责任公司 | 应用分类规则库构建方法、应用分类方法及装置 |
CN110941714A (zh) * | 2018-09-21 | 2020-03-31 | 武汉安天信息技术有限责任公司 | 分类规则库构建方法、应用分类方法及装置 |
CN110941638B (zh) * | 2018-09-21 | 2023-09-08 | 武汉安天信息技术有限责任公司 | 应用分类规则库构建方法、应用分类方法及装置 |
CN109583208A (zh) * | 2018-12-03 | 2019-04-05 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 基于移动应用评论数据的恶意软件识别方法和系统 |
CN109857402A (zh) * | 2019-01-30 | 2019-06-07 | 重庆蓝岸通讯技术有限公司 | 一种app归类整理方法及系统 |
CN109857402B (zh) * | 2019-01-30 | 2022-06-24 | 重庆蓝岸科技股份有限公司 | 一种app归类整理方法及系统 |
CN110717038A (zh) * | 2019-09-17 | 2020-01-21 | 腾讯科技(深圳)有限公司 | 对象分类方法及装置 |
CN113010671A (zh) * | 2021-02-22 | 2021-06-22 | 杭州西湖数据智能研究院 | 一种app分类系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107463935A (zh) | 应用分类方法和应用分类装置 | |
US11409642B2 (en) | Automatic parameter value resolution for API evaluation | |
CN105389307A (zh) | 语句意图类别识别方法及装置 | |
CN112749284B (zh) | 知识图谱构建方法、装置、设备及存储介质 | |
CN110825956A (zh) | 一种信息流推荐方法、装置、计算机设备及存储介质 | |
CN110750640A (zh) | 基于神经网络模型的文本数据分类方法、装置及存储介质 | |
EP3665593A2 (en) | Inclusion dependency determination in a large database for establishing primary key-foreign key relationships | |
EP3685243A1 (en) | Content pattern based automatic document classification | |
CN111625715B (zh) | 信息提取方法、装置、电子设备及存储介质 | |
CN111339292A (zh) | 文本分类网络的训练方法、系统、设备及存储介质 | |
CN112015896B (zh) | 基于人工智能的情感分类方法、以及装置 | |
CN113159187B (zh) | 分类模型训练方法及装置、目标文本确定方法及装置 | |
CN110362663A (zh) | 自适应多感知相似度检测和解析 | |
CN111914159A (zh) | 一种信息推荐方法及终端 | |
CN115687647A (zh) | 公证文书生成方法、装置、电子设备及存储介质 | |
CN115358481A (zh) | 一种企业外迁预警识别的方法、系统及装置 | |
CN113868419B (zh) | 基于人工智能的文本分类方法、装置、设备及介质 | |
JP2020098592A (ja) | ウェブページ内容を抽出する方法、装置及び記憶媒体 | |
CN117608650A (zh) | 业务流程图生成方法、处理设备及存储介质 | |
Sheela et al. | A comparative analysis of various classification trees | |
CN117291722A (zh) | 对象管理方法、相关设备及计算机可读介质 | |
CN111126053B (zh) | 一种信息处理方法及相关设备 | |
CN111198949A (zh) | 一种文本标签确定方法和系统 | |
CN105786929B (zh) | 一种信息监测方法及装置 | |
Kumar et al. | An algorithm for automatic text annotation for named entity recognition using Spacy framework |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171212 |
|
RJ01 | Rejection of invention patent application after publication |