سلام
یه مسئله ی دو کلاسه دارم میخوام کلاس یک رو یا نگه یا میگه درست بگه !(کلاس دو رو یک بگه مهم نیست)
برای اینکار معیار هدف رو میخوام precisionقرار بدم
1- آیا قرار دادن این معیار به عنوان Loss یا ... کار درستی هست و من رو به هدفم میرسونه ؟!
2- تابع precision که دستی نوشتم رو به صورت زیر بدم به کراس درسته ؟ یا باید 1-precision بدم ؟
3- به چه شکل باید باشه چون خطا میده که none داری خروجی میده
model.compile(loss=precision,
optimizer= "adam",
metrics=[auc])
import keras.backend as K
def precision(y_true, y_pred):
"""Precision metric.
Only computes a batch-wise average of precision.
Computes the precision, a metric for multi-label classification of
how many selected items are relevant.
"""
true_positives = K.sum(K.round(K.clip(y_true * y_pred, 0, 1)))
predicted_positives = K.sum(K.round(K.clip(y_pred, 0, 1)))
precision = true_positives / (predicted_positives + K.epsilon())
return precision