केरस में कस्टम लॉस फ़ंक्शन कार्यान्वयन
केरस में, विशिष्ट प्रशिक्षण आवश्यकताओं को पूरा करने के लिए कस्टम लॉस फ़ंक्शन लागू किया जा सकता है। ऐसा ही एक फ़ंक्शन पासा त्रुटि गुणांक है, जो जमीनी सच्चाई और अनुमानित लेबल के बीच ओवरलैप को मापता है।
केरस में एक कस्टम लॉस फ़ंक्शन बनाने के लिए, इन चरणों का पालन करें:
1. गुणांक फ़ंक्शन को कार्यान्वित करें
पासा त्रुटि गुणांक इस प्रकार लिखा जा सकता है:
dice coefficient = (2 * intersection) / (sum(ground_truth) sum(predictions))
केरस बैकएंड फ़ंक्शंस का उपयोग करके, आप गुणांक फ़ंक्शन को कार्यान्वित कर सकते हैं:
import keras.backend as K
def dice_coef(y_true, y_pred, smooth, thresh):
y_pred = y_pred > thresh
y_true_f = K.flatten(y_true)
y_pred_f = K.flatten(y_pred)
intersection = K.sum(y_true_f * y_pred_f)
return (2. * intersection smooth) / (K.sum(y_true_f) K.sum(y_pred_f) smooth)
2. फ़ंक्शन को हानि फ़ंक्शन के रूप में लपेटें
केरस हानि फ़ंक्शन केवल (y_true, y_pred) को इनपुट के रूप में स्वीकार करते हैं। इसलिए, गुणांक फ़ंक्शन को ऐसे फ़ंक्शन में लपेटें जो हानि लौटाता है:
def dice_loss(smooth, thresh):
def dice(y_true, y_pred):
return -dice_coef(y_true, y_pred, smooth, thresh)
return dice
3. मॉडल संकलित करें
अंत में, कस्टम लॉस फ़ंक्शन का उपयोग करके मॉडल संकलित करें:
# build model
model = my_model()
# get the loss function
model_dice = dice_loss(smooth=1e-5, thresh=0.5)
# compile model
model.compile(loss=model_dice)
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3