2016-04-15 12 views
3

シンプルなコードを書き留めておきます.1つの引数 "query_seq"を使用し、さらにメソッドがディスクリプタを計算し、最後に "LogisticRegression"(または機能を備えた他のアルゴリズム)のようなアルゴリズム「0()与えられた場合の負」または「指定された場合に1(陽性)」scikit-learnで予測の信頼スコアを評価する方法

def main_process(query_Seq): 
    LR = LogisticRegression() 
    GNB = GaussianNB() 
    KNB = KNeighborsClassifier() 
    DT = DecisionTreeClassifier() 
    SV = SVC(probability=True) 

    train_x, train_y,train_l = data_gen(p) 
    a = DC_CLASS() 
    test_x = a.main_p(query_Seq) 
    return Prediction(train_x, train_y, test_x,LR) 

我々は、精度のために異なる統計パラメータを計算したクロスバリデーションを行っているがアルゴリズムの推定(特異度、感度、mmcなど)。今私の質問は、テストデータ予測の信頼スコアを推定することができるシキット学習の方法があることです。

+1

メソッドを探すpredict_proba – 404pio

答えて

3

多くの分類器では、predictメソッドの代わりにpredict_probaを呼び出すことで、特定の予測の信頼水準を知ることができます。このメソッドのdocstringを読んで、返されるnumpy配列の内容を理解してください。

ただし、クラシファイアは自信を推定する際に間違いを犯すことがあります。この問題を解決するには、外部較正手順を使用して、保持されたデータ(クロスバリデーションループを使用して)を介してクラシファイアを較正することができます。ドキュメントはあなたのキャリブレーションについての詳細を提供します:

http://scikit-learn.org/stable/modules/calibration.html

は最後にLogisticRegressionがデフォルトで合理的に較正された信頼レベルを与えることに注意してください。ほとんどの他のモデルクラスは、外部キャリブレーションの恩恵を受けます。

+0

なぜdownvoteですか?私はこれが質問に対する正解であると確信しています。 – ogrisel

+1

あなたはあなたの提案に従ってたくさんのことを読んだ後に書いています。これは私が推測する最も適した答えです。 Queの場合は明確にする必要があります。答えが得られるか、少なくともヒントが得られるよう投票が下されている – jax

関連する問題