2017-07-11 16 views
1

次回の更新のためにモデル結果を後でTextBlobで保持する方法は?

ドキュメントの参照は、ここでhttps://github.com/sloria/TextBlobPython TextBlobのモデルを永続化する方法は?

を見つけることができる私は、トレーニングデータを更新する方法を指定された文書に気づいたが、私は最後のセッションからのデータを保存するための方法や方法を見ていません。私はテキストの分類を参照しています。特に https://textblob.readthedocs.io/en/dev/classifiers.html#updating-classifiers-with-new-data

:どのように更新する

。私は、この特定のトピックでは愚かであると感じています。なぜなら、AIの例では、これらのトレーニングセッションがどこに残っているのかを常に知ることが難しいからです。

もう一度すべてを実行したくないですか?あなたは途方もないところから始めて、それを繰り返し改良し続けたいと思っています。過去のトレーニングの結果が存在する

  1. 場合は、モデルに
  2. 更新し、それらをロードしたり、後で
  3. 保存のトレーニングセッション
  4. 繰り返しを新しいトレーニングセッションを実行します。

    私はこれをしたいです必要に応じて

+1

私は答えを知っているが、tensorflowではありません。以前に復元 'tf.train.Saver.restoreは()'変数を救いました。 – user1767754

+0

ええ、私はほとんどそれを使いたいと思っていますが、このライブラリは簡単ではありません。 –

答えて

1

モデルとトレーニングは、酸洗およびを無効化

>>> from textblob.classifiers import NaiveBayesClassifier 
>>> train = [('love the weather','pos'),('love the world','pos'),('horrible place','neg')] 
>>> cl = NaiveBayesClassifier(train) 
>>> [cl.prob_classify("love food").prob('pos'),cl.prob_classify("love food").prob('neg')] 
[0.8590880780051973, 0.14091192199480246] 
>>> import cPickle 
>>> save_training = open('/tmp/save_training.pickle','wb') 
>>> cPickle.dump(cl,save_training) # SAVE TRAINED CLASSIFIER 
>>> save_training.close() 
>>> 
>>> load_training = open('/tmp/save_training.pickle','rb') 
>>> new_cl = cPickle.load(load_training) # LOAD TRAINED CLASSIFIER 
>>> [new_cl.prob_classify("love food").prob('pos'),new_cl.prob_classify("love food").prob('neg')] 
[0.8590880780051973, 0.14091192199480246] 
+1

ありがとう@DhruvPathak!あなたの担当者は保証されています。 –

+0

このライブラリは2つの分類を超えて分類するのに十分だと思いますか? –

+0

@JasonSebring NaiveBayesを使用するので、NaiveBayesクラシファイアを使用する場合は、任意の数のラベルで十分です。 NaiveBayesを含む他の分類子の場合。テキストがどのように処理されるかをよりよく制御することは、scikit-learnをお勧めします。 – DhruvPathak

関連する問題