当前位置: 首页 > 专利查询>贵州商学院专利>正文

一种基于Hadoop平台的改进并行KNN网络舆情分类算法制造技术

技术编号:17779866 阅读:49 留言:0更新日期:2018-04-22 08:27
本发明专利技术公开了一种基于Hadoop平台的改进并行KNN网络舆情分类算法,利用Hadoop分布式存储特性和设计并行kNN的MapReduce程序来解决处理大批量数据时存在的问题,对并行kNN算法进行分类能力和分类效率进行测试验证,实验结果表明,基于Hadoop平台的并行kNN网络舆情分类算法在处理大批量网络舆情数据时,能够快速、高效和准确对网络舆情数据进行分类。

【技术实现步骤摘要】
一种基于Hadoop平台的改进并行KNN网络舆情分类算法
本专利技术涉及网络大数据运算
,特别涉及一种基于Hadoop平台的改进并行KNN网络舆情分类算法。
技术介绍
随着移动互联网、移动终端和社交平台的快速发展,微博、博客等网络媒体逐渐成为人们获取信息的重要媒介,同时也是人们发布信息的重要渠道,因此网络上每天的数据量正在成几何数量增长。网络舆情已经成为影响社会发展和稳定的重要因素,因此对海量网络舆情进行监控和及时处理网络上的敏感信息,对不同主题的信息进行分类、分析、预警、引导具有现实意义。由于网络舆情数据具有数据量大、非结构化、分散性等特点,使得用于处理文本分类的传统算法很难快速、高效的对网络舆情数据进行分类。
技术实现思路
本专利技术的目的在于提供一种基于Hadoop平台的改进并行KNN网络舆情分类算法,利用Hadoop分布式存储特性和设计并行kNN的MapReduce程序来解决处理大批量数据时存在的问题,能够快速、高效和准确对网络舆情数据进行分类,以解决上述
技术介绍
中提出的问题。为实现上述目的,本专利技术提供如下技术方案:一种基于Hadoop平台的改进并行KNN网络舆情分类算法,包括如下步骤:S1:将测试集和调练集数据上传至HDFS集群中;S2:HDFS集群通过MAP函数输出以<key,value>键值形式存在的结果;S3:将步骤S2中输出的结果输入至shuffle函数中重新筛选,再上传至Reduce函数中;S4:Reduce函数读取MAP函数输出结果,并计算确定测试向量所属类别即输出测试数据的分类结果。优选的,所述步骤S2中的MAP函数计算步骤如下:S2.1:读取测试集和调练集数据中的各Node节点数据;S2.2:对数据进行预处理;S2.3:计算测试集和训练集之间的相似度;S2.4:输出结果以<key,value>键值形式。优选的,所述MAP函数在舆情分类算法中设置有多组,可进行同步计算。优选的,所述MAP函数中key值为测试数据集的行号即偏移量,Value代表该行对应的训练集数据,数据集中包括相应的属性字段和类别标示。优选的,所述步骤S4中的Reduce函数计算步骤如下:S4.1:读取MAP函数计算结果;S4.2:根据相似度计算结果选取K个具有最大相似度的特征向量;S4.3:确定测试向量所属类别;S4.4:输出分类结果。与现有技术相比,本专利技术的有益效果是:本基于Hadoop平台的改进并行KNN网络舆情分类算法,针对网络舆情数据存在数据量大、分散度高、数据非结构化等特点,而常用的文本分类算法难以实现对网络舆情快速、准确分类的问题,本专利技术利用Hadoop分布式存储特性和设计并行kNN的MapReduce程序来解决处理大批量数据时存在的问题,对并行kNN算法进行分类能力和分类效率进行测试验证,实验结果表明,基于Hadoop平台的并行kNN网络舆情分类算法在处理大批量网络舆情数据时,能够快速、高效和准确对网络舆情数据进行分类。附图说明图1为本专利技术的整体流程图;图2为本专利技术实施例不同数量测试数据集分类时间图;图3为本专利技术实施例不同K值运行时间图;图4为本专利技术实施例分类算法结果对比图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,一种基于Hadoop平台的改进并行KNN网络舆情分类算法,包括如下步骤:第一步:将测试集和调练集数据上传至HDFS集群中;第二步:HDFS集群通过MAP函数输出以<key,value>键值形式存在的结果,MAP函数中key值为测试数据集的行号即偏移量,Value代表该行对应的训练集数据,数据集中包括相应的属性字段和类别标示;具体步骤包括首先读取测试集和调练集数据中的各Node节点数据,对数据进行预处理,再计算测试集和训练集之间的相似度,输出结果以<key,value>键值形式第三步:将步骤二中输出的结果输入至shuffle函数中重新筛选,再上传至Reduce函数中;第四步:Reduce函数读取MAP函数输出结果,并计算确定测试向量所属类别即输出测试数据的分类结果,Reduce函数计算步骤首先读取MAP函数计算结果,再根据相似度计算结果选取K个具有最大相似度的特征向量,确定测试向量所属类别,输出分类结果。基于上述算法,提供如下实施例:一、KNN并行化MapReduce网络舆情分类算法实现函数如下:1、Map函数:Input:训练数据集和测试数据集、设定的值一般取奇数、给出训练数据集的类别;Output:键值对<Key1,Value1>,其中Key1表示测试数据集索引值,Value1由字符串相似度和类别标签组成:1.1:Methodmap(Key,Value,Key1,Value1);1.2:{;1.3:foreachlineinValuedo,将line中的数据分解成<id,x,y>的形式;计算相似度表示测试向量;表示训练向量;Emit(Key1,Value1);1.4:};2、Reduce函数:Input:map函数的输出结果<Key1,Value1>;Output:<Key2,Value2>,其中Key2为Key1的值,Value2表示分类结果;2.1:Methodreduce(Key1,Value1,Key2,Value2)2.2:{;2.3:Collectionsem=newArrayList();//声明一个集合sem用于存放测试数据;//集与训练数//据集的相似度;2.4:Collectionclassify=newArrayList();//声明一个集合classify用于存放分类标签;2.5:foreachvinValue1do;构建键值对,其中为相似度,为类别标签;将的值加入到集合sem中,添加到集合classify中;2.6:将集合sem中的值进行排序,确定个最近领集合同时得到集合sem数据所对应的类别;2.7:把Key1的值赋值给Key2;2.8:Emit(Key2,Value2);2.9:};通过将KNN算法构造成MapReduce程序实现算法的并行化处理网络舆情分类,其中Map函数中key值为测试数据集的行号即偏移量,Value代表该行对应的训练集数据,数据集中包括相应的属性字段和类别标示;Map阶段的输出Key1表示测试数据集的行号,Value1表示计算出的相似度和类别标签;在Reduce阶段Key2表示测试数据集的行号,Value2代表计算出的分类结果。二、对上述实施例的算法测试和性能评估:第一步:实验数据通过网络爬虫工具主要爬取互联网网页和微博数据,对爬取到的数据进行前期预处理:过滤网页和微博数据中的@符号、网络地址、图片、广告、视频、语音等;第二步:采用中国科学院NLPIR汉语分词系统对预本文档来自技高网...
一种基于Hadoop平台的改进并行KNN网络舆情分类算法

【技术保护点】
一种基于Hadoop平台的改进并行KNN网络舆情分类算法,其特征在于,包括如下步骤:S1:将测试集和调练集数据上传至HDFS集群中;S2:HDFS集群通过MAP函数输出以<key,value>键值形式存在的结果;S3:将步骤S2中输出的结果输入至shuffle函数中重新筛选,再上传至Reduce函数中;S4:Reduce函数读取MAP函数输出结果,并计算确定测试向量所属类别即输出测试数据的分类结果。

【技术特征摘要】
1.一种基于Hadoop平台的改进并行KNN网络舆情分类算法,其特征在于,包括如下步骤:S1:将测试集和调练集数据上传至HDFS集群中;S2:HDFS集群通过MAP函数输出以&lt;key,value&gt;键值形式存在的结果;S3:将步骤S2中输出的结果输入至shuffle函数中重新筛选,再上传至Reduce函数中;S4:Reduce函数读取MAP函数输出结果,并计算确定测试向量所属类别即输出测试数据的分类结果。2.如权利要求1所述的一种基于Hadoop平台的改进并行KNN网络舆情分类算法,其特征在于,所述步骤S2中的MAP函数计算步骤如下:S2.1:读取测试集和调练集数据中的各Node节点数据;S2.2:对数据进行预处理;S2.3:计算测试集和训练集之间的相似度;S2.4:输出结果以&...

【专利技术属性】
技术研发人员:杜少波何文华杨露李静陈显祥
申请(专利权)人:贵州商学院
类型:发明
国别省市:贵州,52

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1