

タイトル通りkerasでtensorflowのmetricsを使用したいです。  
自分で調べながら関数を作成したところ以下のようなものを作りました。  
しかし実際にnumpyなどで出力された数字とラベルの相関を計算(corrcoef,pearsonr)してみると全然ちがう値が出力されます。  
ご教授いただけたら幸いです。  
ちなみにjupyter notebook + python3.2+ tensorflow １.８でおこなっています。

[code]

    def correlation_coefficient(y_true, y_pred):
        pearson_r, update_op = tf.contrib.metrics.streaming_pearson_correlation(y_pred, y_true)
        # find all variables created for this metric
        metric_vars = [i for i in tf.local_variables() if 'correlation_coefficient' in i.name.split('/')[1]]
    
        # Add metric variables to GLOBAL_VARIABLES collection.
        # They will be initialized for new session.
        for v in metric_vars:
            tf.add_to_collection(tf.GraphKeys.GLOBAL_VARIABLES, v)
    
        # force to update metric values
        with tf.control_dependencies([update_op]):
            pearson_r = tf.identity(pearson_r)
            return pearson_r
    
[/code]


CC BY-SA 4.0
2018-08-01T02:54:35.270
47149
2018-08-01T03:34:15.403
2018-08-01T03:34:15.403
24823
29541
question
python3 tensorflow keras
kerasでtensorflowのmetricsを用いる