2016-07-14 15 views
6

申し訳ありませんが、タイトルを台無しにすると、これをどのようにフレーズするのか分かりませんでした。とにかく、私はテンソルの値を持っていますが、テンソル内のすべての要素に0〜255の範囲があることを確認したいと思います(0〜1も同様です)。しかし、私はすべての値をsoftmaxのように1または255まで加算したくないので、値をスケールダウンしたいだけです。テンソルフローのテンソルのスケールを変更する

これを行う方法はありますか?

ありがとうございます!

答えて

11

データを正規化しようとしています。古典的な正規化式は、このいずれかになります。

normalize_value = (value − min_value)/(max_value − min_value) 

tensorflowの実装は次のようになります。

tensor = tf.div(
    tf.subtract(
     tensor, 
     tf.reduce_min(tensor) 
    ), 
    tf.subtract(
     tf.reduce_max(tensor), 
     tf.reduce_min(tensor) 
    ) 
) 

テンソルのすべての値が0と1

重要にbetweetnされます:テンソルが浮動小数点または二重の値を持っていることを確認するか、出力テンソルはちょうどゼロと1を持ちます。整数のテンソルがある場合は、最初に

tensor = tf.to_float(tensor) 
2

sigmoid(tensor) * 255とする必要があります。

関連する問題