2017-09-16 11 views
1

私はモデルとは異なる方法でパフォーマンスを計算しようとしています。グリッド検索からモデルのcross_validation_holdout_predictions()を取得する

クロスバリデーション中に生の予測にアクセスしたいので、自分でパフォーマンスを計算できます。

g = h2o.get_grid(grid_id) 
for m in g.models: 
    print "Model %s" % m.model_id 
    rrc[m.model_id] = m.cross_validation_holdout_predictions() 

私はちょうど私のデータセットのモデルで予測を実行することができますが、私はモデルが前にこのデータを見て、またはしていないため、このテストはバイアスされるかもしれないと思いますか?同じデータセットに対して新しい予測を行い、それを使用してパフォーマンスを計算することはできますか?

答えて

2

クロスバリデーション中に生の予測にアクセスしたいので、自分でパフォーマンスを計算できます。

あなたが交差検定予測でカスタムメトリックを計算したい場合は、keep_cross_validation_predictions = Trueを設定すると、あなたが上記のように持っている.cross_validation_holdout_predictions()方法を使用して、生の予測値にアクセスすることができます。

同じデータセットに対して新しい予測を行い、それを使用してパフォーマンスを計算することはできますか?

モデルのパフォーマンスを評価するためにトレーニングデータのみを使用できるかどうか聞いているようですが、はい、クロスバリデーションを使用します。 nfolds > 1を設定した場合、H2Oはクロスバリデーションを行い、クロスバリデーションされたパフォーマンスメトリックを計算します。また、相互検証された予測を保存するようH2Oに指示する場合は、独自の「相互検証された指標」を計算できます。

+1

ありがとう、エリン、もう一度!見逃した。どういうわけか、私はこれらの2つのオプションがグリッド検索ではないと思っていました。私は交差検証オプションを選択しなかったので、彼らはそこにいなかったと思う。私の悪い。ありがとうございました! –

+0

問題ありません!任意のアルゴリズム引数( 'keep_cross_validation_predictions'を含む)を' H2OGrid'に渡すことができます。これはデフォルト以外の設定を使うようにアルゴリズムを変更する方法です(モデルのハイパーパラメータについても同じです)。ここの例:https://github.com/h2oai/h2o-tutorials/blob/master/h2o-open-tour-2016/chicago/grid-search-model-selection.ipynb –

関連する問題