微博用户多维度画像方法研究毕业论文
2020-02-23 18:18:38
摘 要
用户画像,最早由Alan Cooper提出的persona概念。是通过一定的调查、研究,通过用户统计学信息、社交关系、偏好、社交行为等信息得出的用户的社会属性,从而给用户贴上各种标签。其中,有部分标签是根据用户的信息直接得到,剩余的通过对用户的各种数据进行挖掘而得到。用户画像在现如今有着很高的价值,普遍被应用于精准营销、用户统计、效果评估、判断用户流失等方向,通过以上几个方面可以降低企业成本,扩大用户规模,提高服务水平等。用户画像主要有性别、年龄、地域等属性的分类。本文主要使用给定的新浪微博数据集,通过使用微博博文与用户的标签数据进行监督学习,从而完成用户地域的分类。
目前,用户画像中地域分类主要的问题是样本不均衡导致分类的准确率有限,本文通过使用过采样的方法,有效的缓解了样本不均衡带来的问题。 本文主要的工作如下:
- 完成数据预处理,通过使用pandas选取有效数据,通过使用正则表达式去除文本中无效内容,使用jieba分词完成了对无标签博文文本的分词,训练word2vec模型并利用其得到词向量与文档向量,完成数据的预处理工作。
- 通过使用svm算法与xgboost进行了对比实验,通过准确率很低发现样本不均衡的问题,之后分别通过调节svm样本权重和使用smote算法对数据进行过抽样处理,实验结果表明在样本不均衡的时候通过使用人造数据进行数据过采样对模型的准确率的提升有明显的效果,准确率由33%提升至56.6%。
关键词:用户画像;标签;分类;样本
Abstract
User profile, the persona concept originally proposed by Alan Cooper. Through certain surveys and researches, social attributes of users are obtained through information such as user statistical information, social relationships, preferences, and social behaviors, thereby giving users various labels. Among them, some of the tags are obtained directly from the user's information, and the rest are obtained by mining various data of the user. The user portrait has high value nowadays, and it is generally applied in the direction of precision marketing, user statistics, effect evaluation, and judgment of user churn. Through the above several aspects, it can reduce the cost of enterprises, expand the scale of users, and improve service levels. This article mainly uses the given Sina Weibo data set to perform supervised learning by using the microblog post and the user's tag data to complete the user's geographic classification.
Currently, the industry has two major problems in this respect: 1. If the goal is to infer the specific attributes of the target user through the training data set, then only the data of the user with that attribute will be used in data selection. 2. The unbalanced sample results in limited accuracy.
The main work of this thesis is as follows:
1. Complete data preprocessing, select valid data by using pandas, remove invalid content in text by using regular expressions, complete segmentation of unlabeled post text using jieba word segmentation, train word2vec model and use it to obtain word vector and document vector Complete the data pre-processing work.
2. By using svm algorithm and xgboost to conduct comparison experiments, the problem of unbalanced samples was discovered through low accuracy, and then the data was sampled by adjusting the svm sample weights and using the smote algorithm. The experimental results showed that the samples were not balanced. At the same time, the use of artificial data for data oversampling has a significant effect on improving the accuracy of the model. The accuracy rate has been increased from 33% to 56.6%.
Key words: user profile; label; classification; sample
目录
摘要 I
Abstract II
第1章 绪论 1
1.1研究背景及国内外研究现状 1
1.2研究目的及意义 2
1.3研究内容及目标 2
1.4论文组织结构 2
第2章 微博数据预处理 4
2.1数据说明及示例 4
2.2微博数据的特点分析 7
2.3数据的选择及清理 8
2.4文本分词 9
2.5文本向量化 10
2.5.1训练词向量 10
2.5.2文档向量 11
2.6本章小结 12
第3章 微博用户地域分类 13
3.1 分类模型 13
3.1.1 SVM 13
3.1.2 xgboost 15
3.3 实验结果 16
3.3 非均衡数据集的处理 16
3.4 结果对比 18
3.5 本章小结 18
第4章 工作总结与展望 19
4.1工作总结 19
4.2展望 19
参考文献 21
致谢 23
第1章 绪论
1.1研究背景及国内外研究现状
微博作为一种新型的在线社交网络,不仅具有传统的社交网络[1]的功能,更具有新媒体的功能,例如互动性[14]。通过微博,用户不仅能分享自己的信息,更能与他人互动、了解社会时事等。目前国内外对此类在线社交网络的研究方向主要有:(1)用户属性;(2)用户流失[7];(3)用户行为[9];(4)用户潜在兴趣推荐[8];(5)用户信息检索;(6)信用属性[10];(7)用户隐私;(8)社交图表;(9)情感分析[3]等。
在国内,社交网络中,用户往往有一个包含了自己公开的信息的页面或者数据,例如性别、年龄、关注的人、好友等等。同时,用户也有其未公开的属性,我们称之为私人属性。用户画像就是基于已有的公开的信息,对于用户未公开信息的推测,从而对用户进行不同纬度的刻画,例如年龄、爱好、职业等等。通过这些信息,用户画像往往可以被用于搜索引擎、广告的个性化定向推送,甚至于垃圾短信、垃圾邮件的发送,从而进行精准营销[6]。
在国外,研究主要集中在使用用户在如facebook[19]、Twitter[18]等社交网络中的公共数据,通过机器学习的方法[2]来推断用户的隐私,例如所在地、性取向、爱好、政治倾向等等,其中最先进的方法是利用用户的好友和公开的信息,例如在脸谱网中喜欢的页面,在谷歌应用商店评论的应用程序等等,去推断用户的隐私。国外在这方面的应用相对国内要多,甚至影响到了总统大选。然而这些方法受到了两个关键因素的限制[13]:1)假设我们的目的是通过训练数据集去推断目标用户的特定的属性,他们只会利用有那个属性标签用户的数据,然而忽略了没有目标属性标签用户的实验数据;2)效率低[15],因为一个一个的推断目标用户的属性。总而言之,他们在现实世界社交网络中的适用性和准确性方面有局限。
同时,对于用户不同属性的分类,一般有两种:二元属性和多值属性。顾名思义,二元属性即属性有两个可能值,用户只能有一个。多值属性是有两个以上的属性值,但是一个用户也只能有其中一个属性,例如居住地。对于属性推测,二元属性比多值属性更好建模与推测,所以可以将多值属性转化为多个二元属性,具体来说,每个属性值,都设定为“是”和“否”。
1.2研究目的及意义
用户画像(user profiling)是利用已有的信息,利用统计学原理,通过使用数据挖掘等技术对用户的行为、兴趣以及其他重要或者需要的属性进行推断。有利于企业或者行业对用户定制个性化服务,减少企业运营成本,增加社会效率,在广告、安全等领域具有良好的推动性作用。
微博用户画像是指利用微博用户公开的信息(发表、转发的微博、评论)、行为(点赞、收藏)、社交行为(关注、粉丝)等,对用户的不同维度的属性(性别[11]、地域等)进行推测,因为多数用户不会完全公开自己的一些信息,微博用户画像对于补全微博用户的基本信息、研究用户行为、分析用户流失、根据用户进行精准推送都有着重要的意义,虽然已经有很多基于微博用户的数据挖掘工作,但是他们的研究方向不完全相同,可以根据自身的需求,有针对性的对微博用户进行画像。
1.3研究内容及目标
本次研究的基本内容是根据SMP 2016微博用户画像大赛指定的新浪微博数据集(包括用户个人信息、用户微博文本以及用户粉丝列表),进行用户画像。
具体的任务是根据给定的数据集进行用户的地域推测(共9个标签:东北/华北/华中/华东/西北/西南/华南/境外/unknown)。主要工作是利用已有的数据建立模型,通过使用word2vec[16-17]来进行文档向量化,根据模型给不同的用户打上地域标签,在此基础上通过处理数据或者模型来提高准确率。
1.4论文组织结构
本文共分为五章,各章节内容介绍如下:
第一章:绪论。主要阐述了目前国内外对用户画像研究背景及研究现状、意义,说明本次研究内容和目标,给出论文组织结构。
第二章:微博数据预处理。本章主要介绍了给定的数据集的特点,并结合实际情况详细介绍了所用数据的选取,并对于所选取的数据进行预处理,包括分词、去停用词、向量化等。
第三章:分类模型对比分析。主要使用了两种分类器,SVM和xgboost。针对不同的模型,进行了不同的实验,由于数据极其不均衡,导致准确率都很差。
第四章:非均衡数据集的处理与结果。针对数据的不均衡,使用了SVM权重调节以及smote算法进行调整,实验表明在数据极其不均衡时,由于样本过少导致SVM权重基本无效,但是smote算法取得了很好的结果,准确率由原本的33.2%提高到56.6%,证明人造数据有效的提高了准确率。
第五章:总结与展望。对于本次研究的一个总结,分析了各个方面的不足和缺点,对进一步的工作提出了展望。
第2章 微博数据预处理
微博用户画像问题涉及到用户的各种标签,包括性别、地域等,可以使用的数据还包括了微博博文数据,评论转发数,用户的社交网络等等。微博数据预处理方面还涉及到中文文本分词、文本向量化。
2.1数据说明及示例
本次研究所使用的数据为SMP 2016微博用户画像大赛指定的新浪微博数据集。
数据集包含训练集、验证集、测试集和无标签的链接和博文(用于训练),其中训练集、验证集、测试集都包含了四种信息:
- 用户的基本信息:即用户ID,用户名,头像图片地址,分别用||隔开。如表2.1所示。
例如:1001434124||李仝de围脖||http://tp1.sinaimg.cn/1001434124/180/5615175876/1
1004042417||大熊--唐||http://tp2.sinaimg.cn/1004042417/180/5606398742/1
1013292372||下贱的技术宅||http://tp1.sinaimg.cn/1013292372/180/5601946516/1
用户ID | 用户名 | 头像图片地址 |
1001434124 | 李仝de围脖 | http://tp1.sinaimg.cn/1001434124/180/5615175876/1 |
1004042417 | 大熊--唐 | http://tp2.sinaimg.cn/1004042417/180/5606398742/1 |
1013292372 | 下贱的技术宅 | http://tp1.sinaimg.cn/1013292372/180/5601946516/1 |
表2.1 用户基本信息
- 用户的社交关系:即每个用户的关注所形成的社交网络,如图2.1所示。
图2.1 用户的社交关系
- 用户的标签信息:即用户ID,性别,年龄(出生年份),地域三个标签信息,分别用||隔开。如表2.2所示。
例如:1832205887||m||1990||四川 None
1737245804||m||1982||吉林 长春
2157991124||m||1976||四川 成都
2758890931||f||1983||黑龙江 哈尔滨
用户ID | 性别 | 年龄 | 地域 |
1832205887 | m | 1990 | 四川 None |
1737245804 | m | 1982 | 吉林 长春 |
2157991124 | m | 1976 | 四川 成都 |
2758890931 | f | 1983 | 黑龙江 哈尔滨 |
表2.2用户的标签信息
- 用户的微博博文信息:即用户ID、该微博转发数、评论数、微博来源、发表时间、微博博文,分别用英文逗号隔开。如表2.3和图2.2所示。
图2.2 微博博文信息
用户ID | 转发数 | 评论数 | 微博来源 | 发表时间 | 微博博文 |
1103763581 | 3 | 1 | Lumia 520T | 2015-03-04 10:02:39 | 都 说 ABS 打印 模型 会 桥边 , 故意 来 个 特写。 耗时 34 小时 打印 的 城堡 模型 ,@北京太尔 时代 科技 有限公司@北京太尔 时代 科技 有限公司 华南办 @太尔时 |
1103763581 | 4 | 1 | Lumia 520T | 2015-03-03 13:56:54 | 新 出炉 的 列兵 [ 组图 共 5 张 ] 原 图 |
1103763581 | 0 | 0 | 分享按钮 | 2015-01-21 23:17:03 | 一个 清华 理工 男 , 放弃 了 名企高薪 ,选择 了 自幼 喜欢 的 绿植 成为 他 的 事业 伙伴 , 做 个 自己 心灵 的 主人 。走 进 他 的 故事 |
表2.3 微博博文信息
2.2微博数据的特点分析
微博数据有如下的一些特性:
- 碎片性
微博中的信息比较简短,除了长微博外上限均为140字。但是由于微博大多数为具体某件事情或者某一时刻对一些信息的描述,或者仅仅是一些想法,导致大多数的微博内容十分简短,仅有十几字到数十字。字数太少会对训练模型造成困扰,会丢失很多信息,并且在某些维度上无信息,无法判断本条微博的思想,信息,也就无法对此微博打上有效的、准确的标签。
- 随意性
微博博文,任何人在何时何地以任何形式都可以发布任何信息,这就导致了微博博文的随意性和不规范性。随着网络的飞速发展,一些网络用语、表情、颜文字已经成为组成微博博文的一部分。此外,还有一些类似谐音、暗示、火星文等等表达,也充斥着整个微博,虽然与传统的表达形式不同,但是很多情况下具有共通的意思,甚至有些情况会包含更深层的意义,这样就给处理微博数据造成了很大的影响,无法正确的判断上下文的相关程度,无法判断当前微博是否有效,并且,由于与传统文字的不同,给微博的分词造成了困扰,导致进一步影响到后面的工作。
- 微博用户的复杂性
据统计,微博活跃用户中,男用户占比超过5成,人数略多于女性用户,并且拥有高等学历的用户数量远远超于其他用户,占比77.8%,同时30岁以下用户超过八成。
与此同时,微博用户中,存在着许多以推送广告,发送垃圾信息为目的的账号,以推广、营销为目的的企业账号、专门增加粉丝的“僵尸号”、每天转发、评论参与抽奖的个人账号。由于用户发表的微博量与其关注数量有关[4],这些账号经常转发其他用户、组织、明星的微博,导致博文数据有一定的重复,产生了许多无用数据。无论是企业账号,还是僵尸号,他们都不具备明确的个人属性,例如性别、地域等。他们为了一定的目的,发送微博,对这样的博文数据进行推测是毫无意义的,需要通过一定的方法,对其进行筛选。