私は、TF v0.9でskflowに基づいてDNN予測(0または1)モデルを構築しています。 TensorFlowDNNClassifier
のコードはこのようです。私は約26,000件のレコードを訓練し、6,500件をテストします。DNNClassifierはTensorFlowDNNClassifierと比較して不安定ですか?
classifier = learn.TensorFlowDNNClassifier(hidden_units=[64, 128, 64], n_classes=2)
classifier.fit(features, labels, steps=50000)
test_pred = classifier.predict(test_features)
print(classification_report(test_labels, test_pred))
約1分で結果が得られます。
precision recall f1-score support
0 0.77 0.92 0.84 4265
1 0.75 0.47 0.58 2231
avg/total 0.76 0.76 0.75 6496
しかし、私は
WARNING:tensorflow:TensorFlowDNNClassifier class is deprecated.
Please consider using DNNClassifier as an alternative.
だから私は単にDNNClassifier
で自分のコードを更新しました。
でもうまくいきます。しかし結果は同じではありませんでした。
precision recall f1-score support
0 0.77 0.96 0.86 4265
1 0.86 0.45 0.59 2231
avg/total 0.80 0.79 0.76 6496
1
の精度がを向上させることができます。 もちろん、これは私にとっては良いことですが、なぜ改善されていますか? そして約2時間かかります。 これは、前の例より約120倍遅いです。
私は間違っていますか?またはいくつかのパラメータを逃した? またはDNNClassifier
がTF v0.9で不安定ですか?