使用朴素贝叶斯分类来标识一个Twitter用户的性别[关闭](Using Naive Bayes C

2019-10-18 12:08发布

我已经成为学校的一个项目,已经有很多的乐趣至今的一部分,它只是有一点点更有趣。 我有大约60万的鸣叫在我身上(每包含屏幕名称,地理位置,文字等),我的目标是尽量给每个用户归类为男性或女性。 现在,使用Twitter4J我能得到什么样的用户的全名,朋友,重新鸣叫数量等,所以我在想,如果看一个用户名,并且也做文本分析的结合将是一个可能的答案。 我本来想我可以让这个喜欢以规则为基础的分类,我可以先看看用户的名称,然后分析他们的文本并试图达到M或F的结论,我猜我会使用的东西,如遇到麻烦朴素贝叶斯因为我没有真正的真值?

也有名字,我会检查某种字典的解释名称是否是男性还是女性。 我知道有这样的情况很难说,但是这就是为什么我会在自己的推特文章寻找为好。 我还忘了说; 这些600000鸣叫,我在每个用户提供给我至少两个鸣叫。

对用户的性别分类的任何意见或输入将不胜感激! 我没有这方面的一吨的经验,我想学习什么我可以得到我的手。

Answer 1:

我猜我会使用的东西有问题,如朴素贝叶斯,因为我没有真正的真值?

任何监督学习算法,如朴素贝叶斯,需要准备训练集。 如果没有对一些数据的实际性别你不能建立这样一个模型。 在另一方面,如果你拿出一些规则库系统(比如基于用户的名称之一),你可以尝试半监督方法。 使用您的规则为基础的系统,您可以创建数据的一些标签,可以说,你的基于规则的分类是RC ,可以回答“男”,“女”,“不知道”,您可以创建数据的标注X使用RC以自然的方式:

X_m = { x in X : RC(x)="Male" }
X_f = { x in X : RC(x)="Female" }

一旦你做到了,你可以使用除了用于创建一个所有数据创建监督学习模型的训练集RC在这种情况下如此- -用户的姓名(我假设,即RC回答‘男’或‘女’当且仅当它完全是“肯定”这件事)。 其结果是,你会训练一个分类,它会试图从所有其他数据概括性别的概念(如使用的话,位置等)。 让我们把它称为SC 。 在此之后,你可以简单地创建一个“复杂”的分类:

C(x) = "Male" iff RC(x)= Male" or 
                  (RC(x)="Do not know" && SC(x)="Male")
       "Female" iff RC(x)= Female" or 
                    (RC(x)="Do not know" && SC(x)="Female")

这样你可以一方面使用基于规则的方法最有价值的信息(用户名),而在同一时间开发的“疑难案件”监督学习的能力,同时没有摆在首位的“地面实况” 。



Answer 2:

  • 你需要制定一个词汇联系起来的名字和性别。
  • 然后,你必须定义每个鸣叫功能。
  • Finaly你可以使用秧鸡(JAVA),MATLAB,Python来构建性学习的集合。

主要问题:

  1. 你的语言? 为了确定从名字性爱是很容易在意大利(-a女,-o男性[安德烈除外,卢卡])或到这里的眼睛有谁知道一个好的库映射一个人的名字,以他或她的性别?
  2. 第二个问题是有点复杂,你需要一个语义词典或您面包车分析鸣叫(q若要)或URL或图像存在的唯一目的


文章来源: Using Naive Bayes Classification to Identity a Twitter User's Gender [closed]