论文部分内容阅读
在互联网高速发展的今天,社交网络中无时不刻不在产生大量的数据,仅仅是新浪微博每天就会产生超过一亿条数据。在这样一个海量数据的背景下,单机的处理能力根本无法满足对信息处理能力的要求,大数据技术因此顺势而生。同样,机器学习在大数据场景中也面临需要学习的样本数据量过大的问题,所以机器学习算法也需要进行大规模并行化。本文基于BDAS软件架构提出并实现了以Spark为核心的社交网络大数据分析平台,该平台以Spark为核心构建相关模块,包含数据获取、数据处理、数据挖掘和数据可视化功能,具有良好的开放性、扩展性和通用性。同时为了验证平台可扩展性和挖掘数据更多的价值,本文进一步对微博用户转发行为预测算法进行研究和实现。针对社交网络大数据分析平台,按照模块可以划分为四个部分:第一,数据抓取使用分布式通信框架Akka实现了分布式新浪微博爬虫系统,为上层数据挖掘与分析模块和数据可视化模块提了可用的海量微博数据;第二,数据预处理与存储通过搭建Hadoop分布式文件系统(HDFS)为抓取到的海量微博数据提供分布式存储服务,保证了海量数据的存储、访问和容错;第三,数据挖掘与分析通过运用Spark快速分布式计算的能力、Spark提供的MLlib、GraphX等模块和本文实现的功能模块对平台存储系统中的海量微博数据进行快速处理,快速分析和挖掘;第四,数据可视化通过Tomcat服务器和Redis缓存从大数据平台底层获取数据细节和算法分析结果,并通过D3.js可视化工具实现了相关数据的可视化。作为社交网络大数据分析平台的算法应用,本文提出了微博用户转发行为预测算法。算法中引入了多任务学习框架,避免了传统预测模型同质性导致的无法对用户进行差异性分析问题。在完成对微博用户转发行为数据的特征筛选和提取后,本文在社交网络大数据分析平台上对提出的微博用户转发行为预测算法进行了实现,同时将逻辑回归(LR)、支持向量机(SVM)以及Passive-Aggressive算法(PA)作为对照算法对数据集上进行训练,验证了该算法的性能和社交网络大数据分析平台的可扩展性。本文提出的以Spark为核心的社交网络大数据分析平台的设计实现方案和对微博用户转发行为预测算法的研究。在理论上,对数据分析平台设计和微博用户行为进行研究具有参考价值;在实践上,对数据分析平台与用户行为预测算法进行实现具有探索意义。