首页 / 专利库 / 软件 / 网络抓取 / 基于大数据的行业分类方法、装置、设备及存储介质

基于大数据的行业分类方法、装置、设备及存储介质

阅读:212发布:2020-05-12

专利汇可以提供基于大数据的行业分类方法、装置、设备及存储介质专利检索,专利查询,专利分析的服务。并且本 发明 涉及 大数据 技术领域,公开了一种基于大数据的行业分类方法,包括以下步骤:通过分布式爬虫技术抓取第一网页数据;对所述数学模型进行训练,生成行业分类模型;若模型分类结果不满足预置条件,则抓取第二网页数据,判断分类结果是否满足第一预置召回率,若是,则通过业分类模型对待分类数据进行分类,否则通过分布式爬虫技术抓取第三网页数据,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。本发明还公开了一种基于大数据的行业分类装置、设备及计算机可读存储介质。本发明提供的基于大数据的行业分类方法解决了 现有技术 中由训练样本不足而造成的行业类型分类召回率低的技术问题。,下面是基于大数据的行业分类方法、装置、设备及存储介质专利的具体信息内容。

1.一种基于大数据的行业分类方法,其特征在于,所述基于大数据的行业分类方法包括以下步骤:
通过分布式爬虫技术抓取第一网页数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围;
判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件;
若是,则将所述第一网页数据作为训练样本数据,若否,则通过分布式爬虫技术抓取第二网页数据,其中,所述训练样本数据包括第一训练样本数据和第二训练样本数据;
对第一训练样本数据中的企业名称、企业法定经营范围、企业实际业务经营范围分别进行中文分词,得到对应的分词数据;
对所述分词数据进行数据清洗,得到多个词组数据,其中,所述数据清洗包括:去除词长度小于1的词、去除停用词以及去除重复词;
将所有词组数据映射成向量,得到待训练的词向量;
构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型;
将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果;
判断所述第一分类结果是否大于或等于第一预置召回率;
若是,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果,若否,通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
2.如权利要求1所述的基于大数据的行业分类方法,其特征在于,所述判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件包括以下步骤:
判断抓取到的第一网页数据的数量是否满足预设阈值
若是,则停止抓取所述第一网页数据,将抓取到的数据作为训练样本数据;
若否,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长;
若超过抓取数据的预设时长,则将所述第一网页数据作为训练样本数据,若未超过抓取数据的预设时长,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长。
3.如权利要求1或2所述的基于大数据的行业分类方法,其特征在于,在所述将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果的步骤之前,还包括以下步骤:
将第三训练样本输入行业分类模型进行处理,得到多个第二分类结果;
根据预置行业分类结果,通过召回率公式计算所述第二分类结果的召回率;
判断所述第二分类结果的召回率是否满足第二预置召回率;
若是,则将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果,若否,则构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型。
4.如权利要求1所述的基于大数据的行业分类方法,其特征在于,所述构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型包括以下步骤:
构建基于单隐层前馈神经网络的数学模型,并初始化所述数学模型的各参数,所述参数包括:输入层样本参数、隐含层输入参数、隐含层输出参数、输出层输入参数、输出层输出参数、输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值、神经元激活函数;
以所述词向量为单隐层前馈神经网络输入层的训练样本,将所述词向量输入所述数学模型进行计算,得到所述样本标签的估计值;
计算所述样本标签的估计值与实际值之间的误差,并将所述误差从输出层经隐含层反向传播至输入层,以及根据所述误差,更新单隐层前馈神经网络中的待优化参数值,其中,所述待优化参数值包括:输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值;
基于更新后的所述待优化参数值,重新计算所述样本标签的估计值与实际值之间的误差,若所述误差小于预置误差,则停止模型训练,得到所述行业分类模型;否则继续更新单隐层前馈神经网络中的待优化参数值直至所述误差小于预置误差。
5.一种基于大数据的行业分类装置,其特征在于,所述基于大数据的行业分类装置包括:
第一抓取模,用于通过分布式爬虫技术抓取第一网页数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围;
第一判断模块,用于判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件;
第二抓取模块,用于若当前抓取到的所述第一网页数据的数量和抓取所述第一网页数据的预设时长满足预置条件,则将所述第一网页数据作为训练样本数据,若当前抓取到的所述第一网页数据的数量和抓取所述第一网页数据的预设时长不满足预置条件,则用于通过分布式爬虫技术根据所述数据检索请求抓取第二网页数据;
分词模块,用于从所述数据库中获取预先标注好基于大数据的行业分类标签的第一待训练样本数据,对第一待训练样本数据中的企业名称、企业法定经营范围、企业实际业务经营范围分别进行中文分词,得到对应的分词数据;
清洗模块,用于对所述分词数据进行数据清洗,得到多个词组数据,其中,所述数据清洗包括:去除词长度小于1的词、去除停用词以及去除重复词;
映射模块,用于将所有词组数据映射成向量,得到待训练的词向量;
训练模块,用于构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以所述样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成基于大数据的行业分类向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型;
第一分类模块,用于将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果;
第二判断模块,用于判断所述第一分类结果是否大于或等于第一预置召回率;
第二分类模块,用于若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果;
第三抓取模块,用于若所述第一分类结果小于第一预置召回率,则通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
6.如权利要求5所述的基于大数据的行业分类装置,其特征在于,所述基于大数据的行业分类装置还包括以下模块:
第三判断模块,用于判断抓取到的第一网页数据的数量是否满足预设阈值;
第四抓取模块,用于若抓取到的所述第一网页数据的数量满足预设阈值,则停止抓取所述第一网页数据,将抓取到的数据作为训练样本数据;
第四判断模块,用于若抓取到的所述第一网页数据的数量未满足预设阈值,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长;
第五判断模块,用于若超过抓取数据的预设时长,则将所述第一网页数据作为训练样本数据,若未超过抓取数据的预设时长,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长。
7.如权利要求5所述的基于大数据的行业分类装置,其特征在于,所述基于大数据的行业分类装置还包括以下模块:
第三分类模块,用于将第三训练样本输入行业分类模型进行处理,得到多个第二分类结果;
计算模块,用于根据预置行业分类结果,通过召回率公式计算所述第二分类结果的召回率;
第六判断模块,用于判断所述第二分类结果的召回率是否满足第二预置召回率;
第二训练模块,用于若所述第二分类结果的召回率满足第二预置召回率,则将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果,否则构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型。
8.如权利要求5所述的基于大数据的行业分类装置,其特征在于,所述第一训练模块包括以下单元:
构建单元,用于构建基于单隐层前馈神经网络的数学模型,并初始化所述数学模型的各参数,所述参数包括:输入层样本参数、隐含层输入参数、隐含层输出参数、输出层输入参数、输出层输出参数、输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值、神经元激活函数;
第一计算单元,用于以所述词向量为单隐层前馈神经网络输入层的训练样本,将所述词向量输入所述数学模型进行计算,得到所述样本标签的估计值;
第二计算单元,用于计算所述样本标签的估计值与实际值之间的误差,并将所述误差从输出层经隐含层反向传播至输入层,以及根据所述误差,更新单隐层前馈神经网络中的待优化参数值,其中,所述待优化参数值包括:输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值;
第三计算单元,用于基于更新后的所述待优化参数值,重新计算所述样本标签的估计值与实际值之间的误差,若所述误差小于预置误差,则停止模型训练,得到所述行业分类模型;否则继续更新单隐层前馈神经网络中的待优化参数值直至所述误差小于预置误差。
9.一种基于大数据的行业分类设备,其特征在于,所述基于大数据的行业分类设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的基于大数据的行业分类程序,所述基于大数据的行业分类程序被所述处理器执行时实现如权利要求1-4中任一项所述的基于大数据的行业分类方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于大数据的行业分类程序,所述基于大数据的行业分类程序被处理器执行时实现如权利要求1-
4中任一项所述的基于大数据的行业分类方法的步骤。

说明书全文

基于大数据的行业分类方法、装置、设备及存储介质

技术领域

[0001] 本发明涉及大数据技术领域,尤其涉及一种基于大数据的行业分类方法、装置、设备及计算机可读存储介质。

背景技术

[0002] 行业类型是分析企业情况的一项重要指标,行业类型不同,意味着分析这个企业的标准也要区分对待,由于有些企业存在超越法定经营范围进行经营的行为,若不对企业所属的行业进行全面分类,则不利于市场监管,现有的分类模型一般只注重于分类的正确率,而在整个大数据场景下很难无遗漏地进行全面分类,因此,如何在整个大数据场景下无遗漏地进行分类,是本领域技术人员亟待解决的技术问题。

发明内容

[0003] 本发明的主要目的在于提供一种基于大数据的行业分类方法、装置、设备及计算机可读存储介质,旨在解决现有技术中由训练样本不足而造成的行业类型分类召回率低的技术问题。
[0004] 为实现上述目的,本发明提供一种基于大数据的行业分类方法,所述基于大数据的行业分类方法包括以下步骤:
[0005] 通过分布式爬虫技术抓取第一网页数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围;
[0006] 判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件;
[0007] 若当前的抓取满足预置条件,则将所述第一网页数据作为训练样本数据,若当前的抓取未满足预置条件,则通过分布式爬虫技术所述第一网页数据,其中,所述训练样本数据包括第一训练样本数据和第二训练样本数据;
[0008] 对第一待训练样本数据中的企业名称、企业法定经营范围、企业实际业务经营范围分别进行中文分词,得到对应的分词数据;
[0009] 对所述分词数据进行数据清洗,得到多个词组数据,其中,所述数据清洗包括:去除词长度小于1的词、去除停用词以及去除重复词;
[0010] 将所有词组数据映射成向量,得到待训练的词向量;
[0011] 构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型;
[0012] 将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果;
[0013] 判断所述第一分类结果是否大于或等于第一预置召回率;
[0014] 若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果,若所述第一分类结果小于第一预置召回率,通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
[0015] 可选地,所述判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件包括以下步骤:
[0016] 判断抓取到的第一网页数据的数量是否满足预设阈值
[0017] 若抓取到的所述第一网页数据的数量满足预设阈值,则停止抓取所述第一网页数据,将抓取到的数据作为训练样本数据;
[0018] 若抓取到的第一网页数据的数量未满足预设阈值,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长;
[0019] 若超过抓取数据的预设时长,则将所述第一网页数据作为训练样本数据,若未超过抓取数据的预设时长,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长。
[0020] 可选地,在所述将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果的步骤之前,还包括以下步骤:
[0021] 将第三训练样本输入行业分类模型进行处理,得到多个第二分类结果;
[0022] 根据预置行业分类结果,通过召回率公式计算所述第二分类结果的召回率;
[0023] 判断所述第二分类结果的召回率是否满足第二预置召回率;
[0024] 若所述第二分类结果的召回率满足第二预置召回率,则将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果,否则构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型。
[0025] 可选地,所述构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型包括以下步骤:
[0026] 构建基于单隐层前馈神经网络的数学模型,并初始化所述数学模型的各参数,所述参数包括:输入层样本参数、隐含层输入参数、隐含层输出参数、输出层输入参数、输出层输出参数、输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值、神经元激活函数;
[0027] 以所述词向量为单隐层前馈神经网络输入层的训练样本,将所述词向量输入所述数学模型进行计算,得到所述样本标签的估计值;
[0028] 计算所述样本标签的估计值与实际值之间的误差,并将所述误差从输出层经隐含层反向传播至输入层,以及根据所述误差,更新单隐层前馈神经网络中的待优化参数值,其中,所述待优化参数值包括:输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值;
[0029] 基于更新后的所述待优化参数值,重新计算所述样本标签的估计值与实际值之间的误差,若所述误差小于预置误差,则停止模型训练,得到所述行业分类模型;否则继续更新单隐层前馈神经网络中的待优化参数值直至所述误差小于预置误差。
[0030] 进一步地,为实现上述目的,本发明还提供一种基于大数据的行业分类装置,所述基于大数据的行业分类装置包括以下模
[0031] 第一抓取模块,用于通过分布式爬虫技术抓取第一网页数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围;
[0032] 第一判断模块,用于判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件;
[0033] 第二抓取模块,用于若当前抓取到的所述第一网页数据的数量和抓取所述第一网页数据的预设时长满足预置条件,则将所述第一网页数据作为训练样本数据,若当前抓取到的所述第一网页数据的数量和抓取所述第一网页数据的预设时长不满足预置条件,则通过分布式爬虫技术根据所述数据检索请求抓取第二网页数据;
[0034] 分词模块,用于从所述数据库中获取预先标注好基于大数据的行业分类标签的第一待训练样本数据,对第一待训练样本数据中的企业名称、企业法定经营范围、企业实际业务经营范围分别进行中文分词,得到对应的分词数据;
[0035] 清洗模块,用于对所述分词数据进行数据清洗,得到多个词组数据,其中,所述数据清洗包括:去除词长度小于1的词、去除停用词以及去除重复词;
[0036] 映射模块,用于将所有词组数据映射成向量,得到待训练的词向量;
[0037] 第一训练模块,用于构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以所述样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成基于大数据的行业分类向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型;
[0038] 第一分类模块,用于将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果;
[0039] 第二判断模块,用于判断所述第一分类结果是否大于或等于第一预置召回率;
[0040] 第二分类模块,用于若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果;
[0041] 第三抓取模块,用于若所述第一分类结果小于第一预置召回率,则通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
[0042] 可选地,所述基于大数据的行业分类装置还包括以下模块:
[0043] 第三判断模块,用于判断抓取到的第一网页数据的数量是否满足预设阈值;
[0044] 第四抓取模块,用于若抓取到的所述第一网页数据的数量满足预设阈值,则停止抓取所述第一网页数据,将抓取到的数据作为训练样本数据;
[0045] 第四判断模块,用于若抓取到的所述第一网页数据的数量未满足预设阈值,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长;
[0046] 第五判断模块,用于若超过抓取数据的预设时长,则将所述第一网页数据作为训练样本数据,若未超过抓取数据的预设时长,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长。
[0047] 可选地,所述基于大数据的行业分类装置还包括以下模块:
[0048] 第三分类模块,用于将第三训练样本输入行业分类模型进行处理,得到多个第二分类结果;
[0049] 计算模块,用于根据预置行业分类结果,通过召回率公式计算所述第二分类结果的召回率;
[0050] 第六判断模块,用于判断所述第二分类结果的召回率是否满足第二预置召回率;
[0051] 第二训练模块,用于若所述第二分类结果的召回率满足第二预置召回率,则将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果,否则构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型。
[0052] 可选地,所述第一训练模块包括以下单元:
[0053] 构建单元,用于构建基于单隐层前馈神经网络的数学模型,并初始化所述数学模型的各参数,所述参数包括:输入层样本参数、隐含层输入参数、隐含层输出参数、输出层输入参数、输出层输出参数、输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值、神经元激活函数;
[0054] 第一计算单元,用于以所述词向量为单隐层前馈神经网络输入层的训练样本,将所述词向量输入所述数学模型进行计算,得到所述样本标签的估计值;
[0055] 第二计算单元,用于计算所述样本标签的估计值与实际值之间的误差,并将所述误差从输出层经隐含层反向传播至输入层,以及根据所述误差,更新单隐层前馈神经网络中的待优化参数值,其中,所述待优化参数值包括:输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值;
[0056] 第三计算单元,用于基于更新后的所述待优化参数值,重新计算所述样本标签的估计值与实际值之间的误差,若所述误差小于预置误差,则停止模型训练,得到所述行业分类模型;否则继续更新单隐层前馈神经网络中的待优化参数值直至所述误差小于预置误差。
[0057] 进一步地,为实现上述目的,本发明还提供一种基于大数据的行业分类方法设备,所述基于大数据的行业分类方法设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的基于大数据的行业分类方法程序,所述基于大数据的行业分类方法程序被所述处理器执行时实现如上述任一项所述的基于大数据的行业分类方法方法的步骤。
[0058] 进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于大数据的行业分类方法程序,所述基于大数据的行业分类方法程序被处理器执行时实现如上述任一项所述的基于大数据的行业分类方法方法的步骤。
[0059] 本发明通过分布式爬虫技术抓取数据,可以提高样本数据的覆盖面,因此可以得到更多的训练样本数据,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据,可以反复将相关度高的数据输入到模型中,可实现对模型的不断优化,提高模型分类的准确度,通过更多的训练样本训练模型,可提高模型分类的召回率。附图说明
[0060] 图1为本发明实施例方案涉及的基于大数据的行业分类设备运行环境的结构示意图;
[0061] 图2为本发明基于大数据的行业分类方法一实施例的流程示意图;
[0062] 图3为图2中步骤S20的细化流程示意图;
[0063] 图4为本发明基于大数据的行业分类方法第二实施例的流程示意图;
[0064] 图5为图2中步骤S80的细化流程示意图;
[0065] 图6为本发明基于大数据的行业分类装置一实施例的功能模块示意图。
[0066] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0067] 应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0068] 本发明提供一种基于大数据的行业分类设备。
[0069] 参照图1,图1为本发明实施例方案涉及的基于大数据的行业分类设备运行环境的结构示意图。
[0070] 如图1所示,该基于大数据的行业分类设备包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volati le memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0071] 本领域技术人员可以理解,图1中示出的基于大数据的行业分类设备的硬件结构并不构成对基于大数据的行业分类设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0072] 如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于大数据的行业分类程序。其中,操作系统是管理和控制基于大数据的行业分类设备和软件资源的程序,支持基于大数据的行业分类程序以及其它软件和程序的运行。
[0073] 在图1所示的基于大数据的行业分类设备的硬件结构中,网络接口1004主要用于接入网络;用户接口1003主要用于侦测确认指令和编辑指令等。而处理器1001可以用于调用存储器1005中存储的基于大数据的行业分类程序,并执行以下基于大数据的行业分类方法的各实施例的操作。
[0074] 基于上述基于大数据的行业分类设备硬件结构,提出本发明基于大数据的行业分类方法的各个实施例。
[0075] 参照图2,图2为本发明基于大数据的行业分类方法第一实施例的流程示意图。本实施例中,所述基于大数据的行业分类方法包括以下步骤:
[0076] 步骤S10,通过分布式爬虫技术抓取第一网页数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围;
[0077] 本实施例中,通过分布式爬虫技术抓取所述第一网页上的数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围,通过源节点发送一个检索请求给它所有的邻居节点,这些邻居节点再分别将检索请求给它的所有邻居节点,按以此种形式一直检索下去。
[0078] 步骤S20,判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件;
[0079] 本实施例中,判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件,预置条件指的是停止抓取数据的约束条件,例如,直至找到期望数量的检索数据或者达到网络允许的最大检索条数后停止检索。
[0080] 步骤S30,若当前的抓取满足预置条件,则将所述第一网页数据作为训练样本数据;
[0081] 步骤S40,若当前的抓取未满足预置条件,则通过分布式爬虫技术抓取第二网页数据,其中,所述训练样本数据包括第一训练样本数据和第二训练样本数据;
[0082] 本实施例中,若当前的抓取满足预置条件,则将所述第一网页数据作为训练样本数据,若当前的抓取未满足预置条件,则通过分布式爬虫技术根据所述数据检索请求抓取第二网页数据。
[0083] 步骤S50,对第一待训练样本数据中的企业名称、企业法定经营范围、企业实际业务经营范围分别进行中文分词,得到对应的分词数据;
[0084] 本实施例中,现有的模型中,模型在对数据进行分类时,往往准确率很高,而召回率很低,其根本原因在于训练样本数据不足。准确率是最常见的评价指标,即被分对的样本数除以所有的样本数,召回率是覆盖面的度量,即度量有多个正例被分为正例。若准确率高,而召回率低,则会由于标注标签的训练样本不足,会遗漏掉一些企业信息,例如企业名称、企业经营范围,从而使分类出的行业分类名称不完善。
[0085] 为能够更精准实现行业分类,因此训练样本需要尽可能地覆盖所有的国民经济的行业分类。
[0086] 本实施例中,样本数据具体包括:企业名称和企业经营范围,其中,企业经营范围是指国家允许企业生产和经营的商品类别、品种及服务项目,是企业的业务活动内容和生产经营方向的描述。企业经营范围的描述内容具体与国民经济行业分类内容存在较大相关性。
[0087] 步骤S60,对所述分词数据进行数据清洗,得到多个词组数据,其中,所述数据清洗包括:去除词长度小于1的词、去除停用词以及去除重复词;
[0088] 本实施例中,为提升基于大数据的行业分类的准确率,在进行模型训练之前,需要对所有分词数据进行数据清洗,具体包括:
[0089] (1)去除词长度小于1的词
[0090] 考虑到中文中很多单个的词并没有太多的实际意义,比如语气词、连接词、助词等,如果在模型训练中引入了该类词则可能影响模型识别的准确率,因此需要预先从训练样本集中剔除该类词,也即分词后的词组长度小于1的词。
[0091] (2)去除停用词
[0092] 停用词是指在文本中出现频率很高,但实际意义又不大的词。这一类主要包括了语气助词、副词、介词、连词等,通常自身并无明确意义,只有将其放入一个完整的句子中才有一定作用的词语。如常见的“的”、“在”、“和”、“接着”之类
[0093] (3)去除重复词
[0094] 通常一个文本中会出现多个相同的词,虽然重复出现能让人更好地理解,但对于机器来说,重复的词会增加机器学习的处理量,同时也会影响机器学习的效果。因此需要去除重复的词。
[0095] 步骤S70,将所有词组数据映射成向量,得到待训练的词向量;
[0096] 本实施例中,词向量(Word embedding)是指将来自词汇表的单词或短语映射到实数的一种向量表示方式。通常字词都是自然语言形式,但在机器学习技术中并不能直接处理自然语言,而需要将自然语言的字词转换为可处理的数学结构,也即空间向量形式,任何的字词都可以在空间中表示为不同的向量。例如,将所有单词排序成一个长字符串,排序之后每个单词就会对应一个位置,然后用一个与单词数量等长的数组来表示某个单词,该单词所在的位置数组值就为1,而其他单词所有位置值都为0,从而可将单词映射为词向量。
[0097] 由于词组是用向量表示,而且用较好的训练算法得到的词向量的向量一般是有空间上的意义的,也就是说,将所有这些向量放在一起形成一个词向量空间,而每一向量则为该空间中的一个点,在这个空间上的词向量之间的距离度量也可以表示对应的两个词之间的″距离”,可用于衡量这两个词在语法、语义上的相似性。
[0098] 步骤S80,构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型;
[0099] 本实施例中,单隐层前馈神经网络是前馈神经网络的一种特殊形式。前馈神经网络是人工神经网络的一种。在此种神经网络中,各神经元从输入层开始,接收前一级输入,并输出到下一级,直至输出层。前馈神经网络采用一种单向多层结构。其中每一层包含若干个神经元,同一层的神经元之间没有互相连接,层间信息的传送只沿一个方向进行。其中第一层称为输入层。最后一层为输出层,中间为隐层。隐层可以是一层,也可以是多层。
[0100] 本实施例中,单隐层前馈神经网络包含有:第一层:输入层(input layer),第二层:隐层(hidden layer),第三层:输出层(output layer),其中,输入层以样本数据对应的词向量为训练样本,输出层以样本数据对应的样本标签为训练样本。
[0101] 本实施例中,输入层的神经元个数取决于样本属性的个数及表示方式,输出层神经元的个数取决于样本类别的个数,隐层的神经元个数及层数取决于所需要的神经网络模型的复杂性。通过对构建的基于单隐层前馈神经网络的数学模型进行反复训练,通过不断调整输入层神经元到隐层神经元的权值、隐层神经元的阈值、隐层神经元到输出层神经元的权值,以保证模型输出与期望输出误差在可接受范围内,进而完成模型训练而得到可对样本数据进行分类的行业分类模型。
[0102] 步骤S90,将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果;
[0103] 本实施例中,在完成行业分类模型的训练后即可部署在不同的应用环境中,用户只需导入需要分类的公司名称、经营范围即可输出对应的行业类别名称,从而实现快速识别海量企业信息的行业类别,降低识别成本,提升识别准确率。
[0104] 本实施例中,对比之前使用规则和人工分类的方法,使用通过机器学习得到的行业分类模型,远比之前消耗大量人去确定分类规则或是人工分类的成本更低、速度更快、结果更准确。另外,行业分类模型的扩展性比较强,当未来基于大数据的行业分类标准发生改动时,只需要加入新的训练数据即可扩展模型,完成新增行业的分类。
[0105] 步骤S100,判断所述第一分类结果是否大于或等于第一预置召回率;
[0106] 本实施例中,召回率的计算方式为将分类出的正的样本数量除以所有样本数据中正的样本数据总量。如果召回率比较低的话,可能是由以下三个原因造成的,一是模型训练的轮数太少,没有得到满足分类要求的模型,二是训练样品不足,三是训练样本充足,但与目标数据的关联度不大。
[0107] 步骤S110,若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果;
[0108] 本实施例中,若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果。
[0109] 步骤S120,若所述第一分类结果小于第一预置召回率,通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
[0110] 本实施例中,若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果,若所述第一分类结果小于第一预置召回率,通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
[0111] 参照图3,图3为图2中步骤S20的细化流程示意图。本实施例中,所述步骤S20包括以下步骤:
[0112] 步骤S201,判断抓取到的第一网页数据的数量是否满足预设阈值;
[0113] 本实施例中,考虑到有些企业在网上的曝光率较高,若事无巨细地将所有涉及此类企业的信息全部抓取到,则将消耗较多的抓取时长,同时也会一定程度上增加分类模型训练的时长,因此,在本实施例中设置了预设阈值。
[0114] 步骤S202,若抓取到的所述第一网页数据的数量满足预设阈值,则停止抓取所述第一网页数据,将抓取到的数据作为训练样本数据;
[0115] 本实施例中,若抓取到的网页数据的数量满足预设阈值,则停止抓取所述第一网页数据,将抓取到的数据作为训练样本数据,本实施例中,若所述数据数量满足预设阈值,则将停止抓取数据,其目的是,在数据量比较庞大的时候,可以减少后续分类模型的计算量。
[0116] 步骤S203,若抓取到的所述第一网页数据的数量未满足预设阈值,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长;
[0117] 本实施例中,若所述数据数量未满足预设阈值,则判断抓取所述第一网页数据所消耗的时长是否超过预设时长,有些公司例如初创公司,网上关于此类初创公司的信息一般都比较少,因为我们需要预设一个时长,一旦超过这个时长,就停止检索信息,这样可以防止耽误较多的时间。
[0118] 步骤S204,若超过抓取数据的预设时长,将抓取到的数据作为训练样本数据,若未超过抓取数据的预设时长,则返回步骤S203。
[0119] 本实施例中,若超过抓取数据的预设时长,则将抓取到的数据作为第一待训练样本数据存储于数据库,若未超过抓取数据的预设时长,则判断抓取所述网页数据所消耗的时长是否超过预设时长,按照这样的方式抓取数据,既可以保证数据的数量,又可以避免在抓取数据时消耗不必要的时间。
[0120] 参照图4,图4为本发明基于大数据的行业分类方法第二实施例的流程示意图。本实施例中,在所述步骤S90之前,所述基于大数据的行业分类方法还包括以下步骤:
[0121] 步骤S130,将第三训练样本输入行业分类模型进行处理,得到多个第二分类结果;
[0122] 本实施例中,由于对现有的数据分类正确并不能证明该模型已经可以对整个国民经济行业进行分类,因此,将第三训练样本输入行业分类模型进行处理,得到多个第二分类结果,第三训练样本指的是预先标注好行业标签的训练样本集合,第三训练样本有别于第一训练样本和第二训练样本,第一训练样本主要的为了训练得到满足预置分类准确率的分类模型,第二训练样本主要是为了检验训练完成的分类模型是否满足第一预置召回率,第三训练样本在使用第二训练样本训练分类模型之前用到的,其目的是为了训练模型以得到满足第二预置召回率的分类模型。要注意的是,第三训练样本是预先准备好的,且样本是有限的,因此仍然存在无法尽可能多地将不同的行业类型分类出来的不足,为了弥补这个不足,在使用训练完成的分类模型对第二训练样本分类时,若存在不满足第一预置召回率的情况,则抓取第三网页数据,这样可以不断扩大样本数据的覆盖面,使模型不断得到优化。
[0123] 步骤S140,判断所述第二分类结果的召回率是否满足第二预置召回率;
[0124] 本实施例中,判断所述第二分类结果的召回率是否满足第二预置召回率,例如,第二预置召回率为97%。
[0125] 步骤S150,若所述第二分类结果的召回率满足第二预置召回率,则进入步骤S90,若所述第二分类结果的召回率不满足第二预置召回率,则进入步骤S80。
[0126] 本实施例中,若所述第二分类结果的召回率满足第二预置召回率,则将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果,若所述第二分类结果的召回率不满足预置召回率,则构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型。
[0127] 参照图5,图5为图2中步骤S80的细化流程示意图。本实施例中,所述步骤S80包括以下步骤:
[0128] 步骤S801,构建基于单隐层前馈神经网络的数学模型,并初始化所述数学模型的各参数,所述参数包括:输入层样本参数、隐含层输入参数、隐含层输出参数、输出层输入参数、输出层输出参数、输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值、神经元激活函数;
[0129] 本实施例中,预先构建基于单隐层前馈神经网络的数学模型,并初始化该数学模型的各参数,以便进行模型训练。
[0130] 单隐层前馈神经网络拥有d个输入神经元,L个输出神经元,q个隐层神经元,对于训练样本(xk,yk),单隐层前馈神经网络的输出为 即 θj表示输出层第j个神经元的阈值,βj表示输出层第j个神经元的输入, bh表示第h各隐含层神经元的输出,whj表示隐含层第h个神经元与输出层第j个神经元的权值;bh=f(αh-γh),αh表示第h个隐含层神经元的输入, vih表示输入层第i个神经元与隐含层第h个神经元的权值,γh表示隐含层第h个神经元的阈值;f(x)表示激活函数。
[0131] 步骤S802,以所述词向量为单隐层前馈神经网络输入层的训练样本,将所述词向量输入所述数学模型进行计算,得到所述样本标签的估计值;
[0132] 本实施例中,激活函数优选 由上述公式 可以计算出各输入词向量对应的样本标签的输出估计值。其中,在激活函数值(0,1)范围内随机初始化神经网络的输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值。
[0133] 步骤S803,计算所述样本标签的估计值与实际值之间的误差,并将所述误差从输出层经隐含层反向传播至输入层,以及根据所述误差,更新单隐层前馈神经网络中的待优化参数值,其中,所述待优化参数值包括:输出层神经元阈值、隐含层神经元阈值、输入层与隐含层权值、隐含层与输出层权值;
[0134] 本实施例中,使用均方差度量神经网络的输出值与与训练数据实例的差距,也即样本标签的估计值与实际值之间的误差。单个样本数据的均方差的计算公式如下:也即单个样本数据损失函数,使用梯度下降法更新权值和阈值,使均方
误差(损失函数)不断下降而使得模型收敛。假设有m个训练样例,模型训练需要最小化的是训练集上的累积误差:
[0135] 本实施例中具体对如下参数进行更新:
[0136] (1)输出层神经元阈值θj,更新公式如下:
[0137] (2)隐含层与输出层权值whj,更新公式如下:
[0138] (3)隐含层神经元阈值γh,更新公式如下:
[0139] (4)输入层与隐含层权值vih,更新公式如下:
[0140] η表示迭代步长,取(0,1)中任意值,表示权值的梯度变化值, 表示阈值的梯度变化值。
[0141]
[0142] 步骤S804,基于更新后的所述待优化参数值,重新计算所述样本标签的估计值与实际值之间的误差,若所述误差小于预置误差,则停止模型训练,得到所述行业分类模型;否则继续更新单隐层前馈神经网络中的待优化参数值直至所述误差小于预置误差。
[0143] 本实施例中,先在(0,1)范围内初始化神经网络的权值和阈值,然后再根据神经网络模型计算出输出值,之后再和真实值计算出差值,继而再对差值求权值和阈值的偏导,根据偏导来更新权值和阈值,通过连续多次迭代,直到误差在可接受范围内时停止更新。
[0144] 参照图6,图6为本发明基于大数据的行业分类装置一实施例的功能模块示意图。本实施例中,所述行业分类装置包括:
[0145] 第一抓取模块10,用于通过分布式爬虫技术抓取第一网页数据,其中,所述数据包括企业名称、企业法定经营范围、企业实际业务经营范围;
[0146] 第一判断模块20,用于判断抓取到的所述第一网页数据的数量和抓取所述第一网页数据所消耗的时长是否满足预置条件;
[0147] 第二抓取模块30,用于若当前抓取到的所述第一网页数据的数量和抓取所述第一网页数据的预设时长满足预置条件,则将所述第一网页数据作为训练样本数据,若当前抓取到的所述第一网页数据的数量和抓取所述第一网页数据的预设时长不满足预置条件,则用于通过分布式爬虫技术根据所述数据检索请求抓取第二网页数据;
[0148] 分词模块40,用于从所述数据库中获取预先标注好基于大数据的行业分类标签的第一待训练样本数据,对第一待训练样本数据中的企业名称、企业法定经营范围、企业实际业务经营范围分别进行中文分词,得到对应的分词数据;
[0149] 清洗模块50,用于对所述分词数据进行数据清洗,得到多个词组数据,其中,所述数据清洗包括:去除词长度小于1的词、去除停用词以及去除重复词;
[0150] 映射模块60,用于将所有词组数据映射成向量,得到待训练的词向量;
[0151] 训练模块70,用于构建基于单隐层前馈神经网络的数学模型,并以所述词向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成基于大数据的行业分类向量为单隐层前馈神经网络输入层的训练样本,以样本标签为单隐层前馈神经网络输出层的训练样本,对所述数学模型进行训练,生成行业分类模型;
[0152] 第一分类模块80,用于将第二训练样本数据输入所述行业分类模型进行处理,得到第一分类结果;
[0153] 第二判断模块90,用于判断所述第一分类结果是否大于或等于第一预置召回率;
[0154] 第二分类模块100,用于若所述第一分类结果大于或等于第一预置召回率,则通过所述业分类模型对待分类数据进行分类,得到行业分类结果;
[0155] 第三抓取模块110,用于若所述第一分类结果小于第一预置召回率,则通过分布式爬虫技术抓取第三网页数据,以及将所述第三网页数据转化为矩阵的形式,通过计算余弦相似度来确定与目标数据的关度程度最高的网页数据。
[0156] 本实施例中,通过本装置中的抓取模块可以得到范围更大的样本数据,通过本装置可以提高分类的召回率,防止在大数据场景下对国民经济的行业分类有所遗漏。
[0157] 本发明还提供一种计算机可读存储介质。
[0158] 本实施例中,所述计算机可读存储介质上存储有基于大数据的行业分类程序,所述基于大数据的行业分类程序被处理器执行时实现如上述任一项实施例中所述的基于大数据的行业分类方法的步骤。
[0159] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
[0160] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈