基于机器学习的微博用户性别识别方法概述
2018-10-21闻谊余艳霞
闻谊 余艳霞
摘 要 性别是微博用户的一个最基本的特征,获取微博用户的性别信息,可以帮助商家了解不同性别用户的消费习惯和产品喜好,为用户提供个性化服务。本文基于微博文本和用户名,构建一个识别模型对数据进行预处理和特征提取,设计了两个分类器,基于微博用户名和基于微博文本内容,然后将两个分类器进行组合,设计出综合微博用户名和微博文本内容对微博用户性别进行识别的分类器。
关键词 微博;性别分类;特征提取
前言
随着信息技术的高速发展和互联网的普及,人们越来越能够享受到互联网的便利。微博作为一项以网络为基础的社交应用,方便快捷、传播速度块、社交能力强是它的特点,因此,微博已经成为人们实时分享,获取和传播信息,与他人进行交流,表达自己看法的重要平台和工具。正是因为微博用户规模很大、信息传播速度快、传播范围广等特点,广告媒体等急切需要对微博里的数据内容进行分析挖掘,以获取可用的信息。
性别是微博用户的一个最基本的特征,对用户性别区分方法的研究也有着众多意义和应用领域。获取微博用户的性别信息,可以帮助商家了解不同性别用户的消费习惯和产品喜好,制作有针对性的广告和产品,更好地满足用户的商品需求,为用户提供个性化服务。
本文主要基于微博用户的用户名和微博文本内容,提取出性格差异比较明显的特征,并设计算法进行分类和识别。
1 数据的获取和预处理
1.1 数据的获取
因为本文研究的是微博用户的性别识别,所以有性别信息的微博用户的用户名和所发布的微博文本内容是我们要获取的数据。获取数据的步骤如下:
第一步,随机在微博平台上获取有性别信息的用户。特别要注意的是,获取数据时一定要保证样本的随机性,这样对于微博用户性别的识别才具有普遍适用性,且能提高准确率。对于用户资料的获取,我们借助了微博提供的API接口,随机地获取了20000个用户的个人信息以及他们近期的微博内容。通过我们的观察发现,从API平台获取的用户的个人信息中包含的属性主要有用户的UID、昵称、性别、生日等。但我们发现当我们访问别人的微博时,对于一些没有填写自己性別标签的用户,我们无法得知他的信息。因此,我们需要人工标注来过滤掉一些无效的样本。
对于个人信息里没有性别信息的用户,我们选择直接剔除,对于个人信息里有性别信息的用户,我们要做接下来的判断:第一,他所填写的性别信息与他的简介或者微博内容有明显的矛盾,比如性别信息填写为“女”,但是在微博内容里表示自己为男生;第二,非个人用户,比如说一些媒体的官博,一些企业的微博,对于我们的研究没有意义。第三,垃圾用户,微博发布内容过少,或者微博内容全是广告。对于以上几种情况的微博用户,我们也选择丢弃。
通过上面的筛选,最终,我们得到了3197个有性别信息的用户。并且在标记过程中统计出男性用户有2417人,女性用户有780人将这些用户的UID和性别信息进行存储。
第二步,对于上面我们已经获取的含有性别信息的微博用户,通过他们的UID,来获取他们的用户名昵称和近期发布的微博文本内容。
1.2 数据的预处理
样本数据的预处理分为以下几个方面:一个是微博文本内容的预处理,另一个是用户个人资料的预处理。
微博文本内容的预处理:从微博的API接口获取的微博文本内容,里边含有许多无效信息,甚至有干扰的信息,这些信息对于特征提取基本没有作用,因此,我们要把这些无意义的信息从微博文本里清除。对微博数据的预处理流程如下:第一步,删除微博文本内容里的非用户数据;第二步,删除微博文本内容中的乱码;第三步,对微博文本内容进行分词。
用户个人资料的预处理:因为本文研究的微博用户性别识别,综合了微博文本内容和微博用户的用户名昵称,因此,除了对微博文本内容进行预处理,也要对用户个人资料进行预处理,整理比较琐碎的信息。步骤如下:第一步,根据UID,在从API获取的用户数据里找到对应的微博用户,获取个人资料;第二步,从个人资料中提取用户名昵称和性别信息;第三步,将用户名昵称与用户的性别相关联,为后边的研究做准备[1]。
2 用户性别特征的提取
在经过上面的数据获取和预处理后,我们得到了3197个用户的数据,包括他们的用户名昵称,和处理过的微博文本数据。在进行微博用户性别识别时,我们要分别从用户名昵称和微博文本中提取特征。
2.1 微博文本中特征的提取
微博的用户规模的极速扩大,就意味着海量的微博数据,那么针对微博数据的研究就越来越多。在社交网络方面,可以进行微博情感分析,以及用户行为分析。在社会语言和自然语言处理方面,很多社会语言家认为语言是一种资源,任何一个人叙述一件事,总是会传递出自己的个人信息。也就是说微博用户的个人信息,以及他们发表的文字,总是能体现出他的年龄、性别、性格等一系列属性。本文要研究的就是从微博内容中提取特征,识别用户的性别。本文采取互信息的方法对微博文本内容进行特征提取。
首先,在预处理里,我们已经对微博文本内容进行了分词,例如对“明天我一定会按时起床”进行分词,得到“明天、我、一定、会、按时、起床”。由于一些词的使用率过低(这里取低于20次),对特征的提取没有太大所用,因此我们选择把它删掉,最终的词表数量为138876。如果我们将138876个词全部加入特征空间,那么特征空间的维度过大,需要进行降维操作。
2.2 用户名特征的提取
通过我们对于3197个样本数据里微博用户名的分析,可以发现用户名中可以体现较强的性别信息,女性的用户名通常含有偏女性化的字眼,例如“樱樱萌萌”中的“樱”和“萌”,而含有“国”、“强”、“鹏”等字的用户名通常为男性。
我们将用户名进行按字切分后,得到了一个含有1065个字特征的词表,因为用户名中包含的信息相对于微博文本内容来说,比较少,因此我们直接把1065个特征词直接加入用户名的特征空间[2]。
3 用户性别分类
3.1 基于用户名的性别分类
在通过用户名对微博用户的性别进行识别时,我们选择了朴素贝叶斯分类器,原因一是我们在用户名提取特征时,并没有对特征进行筛选,而是直接将所有特征加入了特征空间,所以在特征空间里存在一些对于性别识别没有作用的特征,而朴素贝叶斯分类器有一个特点就是对于噪声不敏感。 二是我们在处理聚类问题时,通常会采用k近邻分类器,但是在本文中,我们的重点是分类问题。三是朴素贝叶斯分类器,比较简单,耗时较少。
该算法具体的步骤第一步,根据特征提取中对训练样本按字切分的结果,计算P(wordi|cj),i=1,2,···,n,j=1,2;第二步,对于待分类的用户名w,将它按字切分为twordi;第三步,分别计算P1=P(c1|w)和P2=P(c2|w);第四步,比较P1和P2的大小,P1大则w属于c1,P2大则w属于c2类。
3.2 基于微博文本的性别分类
在通过微博文本内容对微博用户的性别进行识别时,我们选择了最大熵模型分类器,原因一是我们在对微博文本内容进行分词后,通过互信息的特征提取方法对词特征进行了一定程度的筛选,因此相对于朴素贝叶斯分类器来说,最大熵模型分类的准确率更高一点;二是最大熵模型分类器中可以设定约束条件,这样我们可以通过调节约束条件来使准确率更高。
套用最大熵模型分类算法,我们可以知道类别集合为C={“男性”,“女性”},将每一个微博用户的微博文本内容进行分词后,得到word1,word2···wordn,则微博文本内容W={word1,word2…wordn}。然后对于每一个用户的每一个wordi进行训练,得出P(wordi|C),然后计算出P(C|wordi),进而计算出H(C|wordi),同时设立一个约束条件,就可以对对应的用户名进行分类[3]。
4 特征提取结果分析
因为在对用户名进行特征提取时得到的字特征数目不是特别多,所以直接加入特征空间,而对微博文本内容的特征进行提取时,由于特征空间维度过大,所以需要采用特征提取方法进行降维,图1是互信息与文档频率两种特征提取方法结果对比分析图。
由图1可以看出,互信息特征提取法与文档频率相比,准确率比较稳定,并且准确率始终高于文档频率表。说明了利用互信息提取特征,既能够达到降维的目的,同时还能保证分类的准确性。因此我们选择了互信息的方法来提取特征[4]。
5 结束语
本文按照数据的获取和预处理、样本特征的提取和对样本进行分类的步骤来对微博用户性别识别进行研究并取得了一定成果。首先,我们研究了海量微博数据的自动抓取,利用新浪微博提供的开放API接口收集用户数据,使用中文分词工具ICTCLAS对微博文本进行处理。其次,对于分词后的微博文本信息和用户名,我们采用向量空间模型,将这些文本内容用向量的形式来表示,向量的每一个维度表示一个特征,从而把文本内容中的文字和标点符号转化为计算机内部可以识别的结构。最后,我们采取降维处理,经过实验验证分析,互信息特征提取既能达到降维的目的,又能保证分类的准确率。下一步我们将探索怎么把性别识别运用到实际中去,体现研究的价值。
参考文献
[1] Chikersal P,Poria S,Cambria E,et al. Modelling Public Sentiment in Twitter: Using Linguistic Patterns to Enhance Supervised Learning[C].International Conference on Intelligent Text Processing and Computational Linguistics. Springer,Cham,2015:49-65.
[2] Mukherjee S,Bala P K. Gender classification of microblog text based on authorial style[J]. Information Systems and e-Business Management,2017,15(1):1-22.
[3] Yang M,Chow K P. Authorship Attribution for Forensic Investigation with Thousands of Authors[M]. ICT Systems Security and Privacy Protection. Springer Berlin Heidelberg,2014:339-350.
[4] 宗成慶.统计自然语言处理[M].北京:清华大学出版社,2013:199.
作者简介
闻谊(1976-),男,硕士,助教,研究方向:计算机应用。
余艳霞(1974-),女,硕士,讲师,研究方向:计算机应用,通讯作者。