我该如何对双字母进行分类?

时间:2014-01-28 23:55:09

标签: ruby sentiment-analysis text-classification

我目前正在使用Classifier gem成功分类文本。我按照“Bayes Classification in Ruby”教程进行操作,一切正常。我有两个文件,一个叫做“positive_tweets.yml”,有这样的推文:

  • “你好,有什么事。我很好”
  • “我是一个积极的推文”

和“negative_tweet.yml”

  • “今天天气真的很糟糕”
  • “我刚发生车祸”

要分类“我今天很好”,我首先训练分类器:

positive = YAML.load_file('positive_tweets.yml')
negative = YAML.load_file('negative_tweets.yml')

classifier = Classifier::Bayes.new('Positive', 'Negative')

positive.each { |p| classifier.train_positive p }
negative.each { |n| classifier.train_negative n }

然后我将文字“我今天很好”分类如下:

classifier.classify "I'm good today"  # which returns positive

据我了解,这基本上是在unigram级别工作。我想把它提升到一个新的水平,即可能对bigrams和n-gram进行分类。

我已经使用以下方法创建了文本的二元组数组:

text.split(' ').each_cons(2).to_a

但是,由于classify方法不接受数组,因此我不确定如何从此处继续。它需要一个字符串。

0 个答案:

没有答案