2016-10-29 9 views
1

Naive Bayesクラシファイアhereの良い例が見つかりました。ステップを理解できません。感情分析のための機械学習アルゴリズムの作業

from nltk.classify import SklearnClassifier 
from sklearn.naive_bayes import BernoulliNB 
from sklearn.svm import SVC 
train_data = [({"a": 4, "b": 1, "c": 0}, "ham"), 
     ({"a": 5, "b": 2, "c": 1}, "ham"), 
     ({"a": 0, "b": 3, "c": 4}, "spam"), 
      ({"a": 5, "b": 1, "c": 1}, "ham"), 
      ({"a": 1, "b": 4, "c": 3}, "spam")] 
classif = SklearnClassifier(BernoulliNB()).train(train_data) 
test_data = [{"a": 3, "b": 2, "c": 1}, 
      {"a": 0, "b": 3, "c": 7}] 
classif.classify_many(test_data) 
['ham', 'spam'] 
classif = SklearnClassifier(SVC(), sparse=False).train(train_data) 
classif.classify_many(test_data) 
['ham', 'spam'] 

どのようなものです:上記のコードで

  1. 特長?
  2. 感情の実際のデータですか?
  3. "a":4、 "b":1、 "c":0?
  4. ハム、スパム?

基本的な目的は、MLアルゴリズムの仕組みを理解することです。 私は感情分析に初心者です。誰かが助けてくれることを祈る。

答えて

1

投稿したコードサンプルは、ナンセンスデータを使用してクラシファイアをトレーニングします。

どのようなものです:上記のコードで

  1. 特長?
  2. "a":4、 "b":1、 "c":0?
  3. ハム、スパム?

配列train_dataは、 "A"、 "B"、および "C" という名前の機能が含まれています。 分類カテゴリは「ハム」と「スパム」です。感情分析は、カテゴリー「陽性」および「陰性」を使用することができる。

  1. 感情の実際のデータですか?

このデモでは実際の感想データはありません。

このスニペットから学習アルゴリズムの仕組みについては何も学ばないことに注意してください。クラシファイアを訓練するブラックボックスにAPIを表示するだけです。機械学習について学ぶには、トレーニングの仕組みをお読みください。分類子を訓練する方法を学ぶには(NLTKの訓練の仕組みを知らずに)、NLTK本のChapter 6から始めてください。

+0

@alixis '({" a ":4、" b ":1、" c ":0}、" ham ")の' 4'、 '1'、' 0'とは何か ' – Amar

+1

ナンセンスフィーチャのナンセンス値 – alexis

+0

ああ、ナンセンスの人にはいいですね。 :) – Amar

関連する問題