टेंसरफ्लो का उपयोग 'fit' मेथड का उपयोग करके डेटा को मॉडल में फिट करने के लिए किया जा सकता है।
और पढ़ें: टेंसरफ्लो क्या है और केरस टेंसरफ्लो के साथ न्यूरल नेटवर्क बनाने में कैसे काम करता है?
एक न्यूरल नेटवर्क जिसमें कम से कम एक लेयर होती है, कन्वोल्यूशनल लेयर के रूप में जानी जाती है। हम कन्वोल्यूशनल न्यूरल नेटवर्क का उपयोग लर्निंग मॉडल बनाने के लिए कर सकते हैं।
इमेज क्लासिफिकेशन के लिए ट्रांसफर लर्निंग के पीछे अंतर्ज्ञान यह है कि यदि कोई मॉडल बड़े और सामान्य डेटासेट पर प्रशिक्षित है, तो यह मॉडल दृश्य दुनिया के लिए एक सामान्य मॉडल के रूप में प्रभावी ढंग से काम कर सकता है। इसने फीचर मैप सीखे होंगे, जिसका अर्थ है कि उपयोगकर्ता को बड़े डेटासेट पर बड़े मॉडल को प्रशिक्षित करके स्क्रैच से शुरू नहीं करना पड़ेगा।
टेंसरफ्लो हब एक रिपॉजिटरी है जिसमें प्री-ट्रेंड टेंसरफ्लो मॉडल होते हैं। टेंसरफ्लो का उपयोग लर्निंग मॉडल को फाइन-ट्यून करने के लिए किया जा सकता है। हम समझेंगे कि tf.keras के साथ टेंसरफ्लो हब से मॉडल का उपयोग कैसे करें, टेंसरफ्लो हब से एक इमेज क्लासिफिकेशन मॉडल का उपयोग करें। एक बार यह हो जाने के बाद, कस्टमाइज़्ड इमेज क्लास के लिए मॉडल को फाइन-ट्यून करने के लिए ट्रांसफर लर्निंग किया जा सकता है। यह एक प्री-ट्रेंड क्लासिफायर मॉडल का उपयोग करके एक इमेज लेता है और भविष्यवाणी करता है कि यह क्या है। यह बिना किसी प्रशिक्षण की आवश्यकता के किया जा सकता है।
हम नीचे दिए गए कोड को चलाने के लिए Google Colaboratory का उपयोग कर रहे हैं। Google Colab या कोलेबोरेटरी ब्राउज़र पर पायथन कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफिकल प्रोसेसिंग यूनिट्स) तक मुफ्त पहुंच की आवश्यकता होती है। कोलेबोरेटरी को जुपिटर नोटबुक के शीर्ष पर बनाया गया है।
उदाहरण
print("केवल 2 एपोक के लिए ट्रेनिंग")
class CollectBatchStats(tf.keras.callbacks.Callback):
def __init__(self):
self.batch_losses = []
self.batch_acc = []
def on_train_batch_end(self, batch, logs=None):
self.batch_losses.append(logs['loss'])
self.batch_acc.append(logs['acc'])
self.model.reset_metrics()
batch_stats_callback = CollectBatchStats()
print("fit मेथड कॉल किया गया")
history = model.fit(train_ds, epochs=2, callbacks=[batch_stats_callback])
कोड क्रेडिट - https://www.tensorflow.org/tutorials/images/transfer_learning_with_hub
आउटपुट
केवल 2 एपोक के लिए ट्रेनिंग fit मेथड कॉल किया गया Epoch 1/2 92/92 [==============================] - 88s 919ms/step - loss: 0.7155 - acc: 0.7460 Epoch 2/2 92/92 [==============================] - 85s 922ms/step - loss: 0.3694 - acc: 0.8754
व्याख्या
.fit मेथड का उपयोग मॉडल को प्रशिक्षित करने के लिए किया जाता है।
ट्रेनिंग को छोटा रखा गया है, इसलिए प्रशिक्षण के लिए केवल 2 एपोक का उपयोग किया जाता है।
डेटा विज़ुअलाइज़ करने के लिए एक कस्टम कॉलबैक का उपयोग किया जाता है, ताकि प्रत्येक बैच के लॉस और सटीकता को व्यक्तिगत रूप से लॉग किया जा सके।