【问题标题】:Implementing Naive Bayes for Twitter data为 Twitter 数据实现朴素贝叶斯
【发布时间】:2015-04-17 23:20:48
【问题描述】:

我有一个推文数据集,其中包含与疫苗认知相关的关键字。这些包括像

这样的词

[jab, shot, measles, MMR, vaccine, autism,...].

我希望能够将新推文分类为赞成疫苗、反对疫苗或两者都不是。我知道朴素贝叶斯是一种方法。

我宁愿使用 SKlearns 库来实现分类算法,因为这些算法比我能写的更强大。

如何实现朴素贝叶斯?从 Sklearn 的网站上,我的选择似乎是多项式和高斯的,但我不确定使用哪个。

【问题讨论】:

  • 您可以对这个问题使用多项朴素贝叶斯。首先,您必须手动创建一个训练集,其中包含推文及其相应的标签(赞成疫苗、反疫苗或两者都不是)并训练分类器。之后,您可以从经过训练的分类器中创建一个实例,并对未知推文进行分类并找到它们的标签。
  • 先生,您觉得我的回答有用吗?
  • 好的,谢谢。我将在接下来的几周内尝试实施它。感谢您的宝贵时间。

标签: python scikit-learn


【解决方案1】:

下面是一个分类器的简单实现,可以对5种疾病进行分类。

它有两个文件:

  1. 训练文件(train.txt)

  2. 测试文件(test.txt)

基本上,根据您的问题,您应该在火车文件中包含您的推文。以及您要在测试文件中分类的推文。

[注意:您也可以使用 CSV 或 JSON 表示来加载数据集,为简单起见,我使用了文本文件。]

火车文件内容:[train.txt]

A highly contagious virus spread by coughing, sneezing or direct contact with skin lesions.
A contagious liver disease often caused by consuming contaminated food or water. It is the most common vaccine-preventable travel disease.
A serious liver disease spread through contact with blood or body fluids. The hepatitis B virus can cause liver cancer and possible death.
A group of over 100 viruses that spreads through sexual contact. HPV strains may cause genital warts and lead to cervical cancer.
A potentially fatal bacterial infection that strikes an average of 1,500 Americans annually.

测试文件内容:[test.txt]

died due to liver cancer.

分类代码:[classifier.py]

import codecs
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
trainfile = 'train.txt'
testfile = 'test.txt'
word_vectorizer = CountVectorizer(analyzer='word')
trainset = word_vectorizer.fit_transform(codecs.open(trainfile,'r','utf8'))
tags = ['CHICKEN POX','HEPATITIS A','HEPATITIS B','Human papillomavirus','MENINGITIS']
mnb = MultinomialNB()
mnb.fit(trainset, tags)
codecs.open(testfile,'r','utf8')
testset = word_vectorizer.transform(codecs.open(testfile,'r','utf8'))
results = mnb.predict(testset)
print results

【讨论】:

    猜你喜欢
    • 2012-04-09
    • 2015-09-16
    • 2018-12-07
    • 2021-04-09
    • 2012-02-21
    • 2011-12-28
    • 2017-11-14
    • 2013-09-09
    • 2015-01-03
    相关资源
    最近更新 更多