3

私は tensorflow 0.8.0 と skflow (または今は Learn として知られています) を使用しています。私のモデルはこの例に非常に似ていますが、最後のレイヤーとして dnn があります (最小の例と同様です)。何も特別なことはしていませんが、モデルはそれ自体でかなりうまく機能します。テキスト入力は、最大 200 文字と 3 つのクラスです。

私が見ている問題は、モデルを読み込んで多くの予測 (通常は約 200 以上の予測) を行おうとすると、結果が変化し始めることです。

たとえば、私のモデルは既にトレーニングされており、それをロードしてデータを調べて予測を行います。

char_processor = skflow.preprocessing.ByteProcessor(200)
classifier = skflow.TensorFlowEstimator.restore('/path/to/model')

for item in dataset:
    # each item is an array of strings, ex: ['foo', 'bar', 'hello', 'world']
    line_data = np.array(list(char_processor.transform(item)))
    res = classifier.predict_proba(line_data)

分類子をロードし、予測する項目を 1 つだけ指定して終了すると、完全に機能します。予測を続けていると、おかしなことが見えてきます。

ここで何が欠けているのでしょうか? 私のモデルは常に同じデータに対して同じ結果を返すべきではありませんか?

4

0 に答える 0