Tensorflow और पूर्व-प्रशिक्षित मॉडल का उपयोग 'matplotlib' लाइब्रेरी का उपयोग करके डेटा की कल्पना करने के लिए किया जा सकता है। कंसोल पर डेटा को प्लॉट करने के लिए 'प्लॉट' पद्धति का उपयोग किया जाता है।
और पढ़ें: TensorFlow क्या है और Keras कैसे तंत्रिका नेटवर्क बनाने के लिए TensorFlow के साथ काम करता है?
एक तंत्रिका नेटवर्क जिसमें कम से कम एक परत होती है, एक दृढ़ परत के रूप में जानी जाती है। हम लर्निंग मॉडल बनाने के लिए कन्वेन्शनल न्यूरल नेटवर्क का उपयोग कर सकते हैं।
हम समझेंगे कि पूर्व-प्रशिक्षित नेटवर्क से स्थानांतरण सीखने की सहायता से बिल्लियों और कुत्तों की छवियों को कैसे वर्गीकृत किया जाए। छवि वर्गीकरण के लिए स्थानांतरण सीखने के पीछे अंतर्ज्ञान यह है कि यदि किसी मॉडल को बड़े और सामान्य डेटासेट पर प्रशिक्षित किया जाता है, तो इस मॉडल का उपयोग दृश्य दुनिया के लिए एक सामान्य मॉडल के रूप में प्रभावी ढंग से काम करने के लिए किया जा सकता है। इसने फीचर मैप्स सीख लिए होंगे, जिसका अर्थ है कि उपयोगकर्ता को बड़े डेटासेट पर बड़े मॉडल को प्रशिक्षित करके शुरू से शुरू नहीं करना पड़ेगा।
और पढ़ें: अनुकूलित मॉडल को पूर्व-प्रशिक्षित कैसे किया जा सकता है?
हम नीचे दिए गए कोड को चलाने के लिए Google सहयोग का उपयोग कर रहे हैं। Google Colab या Colaboratory ब्राउज़र पर पायथन कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफ़िकल प्रोसेसिंग यूनिट) तक मुफ्त पहुंच की आवश्यकता होती है। जुपिटर नोटबुक के ऊपर कोलैबोरेटरी बनाई गई है।
उदाहरण
print("Visualizing the data") plt.figure(figsize=(8, 8)) plt.subplot(2, 1, 1) plt.plot(acc, label='Training Accuracy') plt.plot(val_acc, label='Validation Accuracy') plt.ylim([0.8, 1]) plt.plot([initial_epochs-1,initial_epochs-1], plt.ylim(), label='Start Fine Tuning') plt.legend(loc='lower right') plt.title('Training and Validation Accuracy') plt.subplot(2, 1, 2) plt.plot(loss, label='Training Loss') plt.plot(val_loss, label='Validation Loss') plt.ylim([0, 1.0]) plt.plot([initial_epochs-1,initial_epochs-1], plt.ylim(), label='Start Fine Tuning') plt.legend(loc='upper right') plt.title('Training and Validation Loss') plt.xlabel('epoch') plt.show()
कोड क्रेडिट -https://www.tensorflow.org/tutorials/images/transfer_learning
आउटपुट
स्पष्टीकरण
-
प्रशिक्षण और सत्यापन सटीकता / हानि के सीखने की अवस्था की कल्पना की जाती है।
-
यह फ़ाइन-ट्यूनिंग किए जाने के बाद किया जाता है।
-
सत्यापन हानि प्रशिक्षण हानि से अधिक है, जिसका अर्थ है कि कुछ ओवरफिटिंग होगी।
-
यह ओवरफिटिंग इस तथ्य के कारण भी हो सकता है कि प्रशिक्षण डेटासेट अपेक्षाकृत छोटा है और मूल MobileNet V2 डेटासेट के समान है।
-
एक बार ठीक ट्यूनिंग हो जाने के बाद, मॉडल सत्यापन सेट पर 98% सटीकता तक पहुंच जाता है।