Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में टेंसरफ्लो का उपयोग करके डेटा को मॉडल में फिट कैसे करें?


टेंसरफ्लो का उपयोग '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 एपोक का उपयोग किया जाता है।

  • डेटा विज़ुअलाइज़ करने के लिए एक कस्टम कॉलबैक का उपयोग किया जाता है, ताकि प्रत्येक बैच के लॉस और सटीकता को व्यक्तिगत रूप से लॉग किया जा सके।

  1. केरस (Keras) में रिस्टोर्ड मॉडल का मूल्यांकन (evaluate) करना केरस (Keras) में रिस्टोर्ड मॉडल का मूल्यांकन (evaluate) करना

    रिस्टोर्ड मॉडल का मूल्यांकन सेव किए गए मॉडल को लोड करने के बाद, evaluate() से टेस्ट डेटा पर लॉस और एक्यूरेसी मापें। पूर्ण वर्कफ़्लो import tensorflow as tf from tensorflow import keras from tensorflow.keras import layers # डेटा मान लें (MNIST उदाहरण) (train_images, train_labels), (test_images, tes

  1. केरस (Keras) में संपूर्ण मॉडल सेव करना (SavedModel फॉर्मेट) केरस (Keras) में संपूर्ण मॉडल सेव करना (SavedModel फॉर्मेट)

    पूरा मॉडल सेव करना: SavedModel फॉर्मेट TensorFlow 2.x में model.save() डिफ़ॉल्ट रूप से SavedModel फॉर्मेट (डायरेक्टरी) में सेव करता है, जिसमें आर्किटेक्चर, वेट्स, ऑप्टिमाइज़र, और कंपाइलेशन जानकारी शामिल होती है। कोड उदाहरण import tensorflow as tf from tensorflow import keras from tensorflow.keras i

  1. Python का उपयोग करके Keras से मॉडल कैसे प्लॉट करें? Python का उपयोग करके Keras से मॉडल कैसे प्लॉट करें?

    Tensorflow Google द्वारा प्रदान किया गया एक मशीन लर्निंग फ्रेमवर्क है। यह एक ओपन-सोर्स फ्रेमवर्क है जिसे Python के साथ संयोजन में एल्गोरिदम, डीप लर्निंग एप्लिकेशन और बहुत कुछ लागू करने के लिए उपयोग किया जाता है। इसका उपयोग शोध और उत्पादन उद्देश्यों के लिए किया जाता है। इसमें ऑप्टिमाइज़ेशन तकनीकें है