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

टेंसरफ्लो: मॉडल टेस्ट, रीसेट, और नवीनतम चेकपॉइंट लोड करना

चेकपॉइंट कॉलबैक से नवीनतम वेट्स लोड करना

प्रशिक्षण के दौरान ModelCheckpoint कॉलबैक से सेव किए गए चेकपॉइंट्स में से नवीनतम (latest) को लोड करके मॉडल रीसेट करें।

कोड उदाहरण

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
from tensorflow.keras.callbacks import ModelCheckpoint

def create_model():
    model = keras.Sequential([
        layers.Dense(64, activation='relu', input_shape=(784,)),
        layers.Dense(10, activation='softmax')
    ])
    model.compile(optimizer='adam',
                  loss='sparse_categorical_crossentropy',
                  metrics=['accuracy'])
    return model

# चेकपॉइंट कॉलबैक सेटअप
checkpoint_dir = './checkpoints'
checkpoint_path = os.path.join(checkpoint_dir, 'cp-{epoch:04d}.ckpt')
cp_callback = ModelCheckpoint(
    filepath=checkpoint_path,
    save_weights_only=True,
    verbose=1,
    save_freq='epoch'  # हर एपोक पर सेव
)

# मान लें प्रशिक्षण हो चुका है और चेकपॉइंट्स मौजूद हैं
# नवीनतम चेकपॉइंट खोजें
latest = tf.train.latest_checkpoint(checkpoint_dir)
print(f"नवीनतम चेकपॉइंट: {latest}")

# नया मॉडल इंस्टेंस बनाएं
model = create_model()

# नवीनतम वेट्स लोड करें
model.load_weights(latest)
print("पहले से सेव किए गए वेट्स लोड किए गए")

# पुनः मूल्यांकन करें
loss, acc = model.evaluate(test_images, test_labels, verbose=2)
print(f"रिस्टोर्ड मॉडल एक्यूरेसी: {100 * acc:.3f}%")

आउटपुट

नवीनतम चेकपॉइंट: ./checkpoints/cp-0010.ckpt
पहले से सेव किए गए वेट्स लोड किए गए
पुनः मूल्यांकन:
32/32 - 0s - loss: 0.4828 - sparse_categorical_accuracy: 0.8770
रिस्टोर्ड मॉडल एक्यूरेसी: 87.700%

मुख्य फ़ंक्शन्स

  • tf.train.latest_checkpoint(dir) — डायरेक्टरी में सबसे नई चेकपॉइंट फाइल का पथ लौटाता है।
  • model.load_weights(path) — निर्दिष्ट चेकपॉइंट से वेट्स लोड करता है।
  • model.evaluate() — टेस्ट डेटा पर प्रदर्शन मापता है।

चेकपॉइंट नामकरण

# {epoch:04d} → 4 अंकों का एपोक नंबर
checkpoint_path = "training/cp-{epoch:04d}.ckpt"
# cp-0001.ckpt, cp-0002.ckpt, ...

# save_freq विकल्प
save_freq='epoch'        # हर एपोक
save_freq=100            # हर 100 बैच
save_freq=5*batch_size   # हर 5 एपोक (बैच-आधारित)

वर्कफ़्लो सारांश

  1. नया मॉडल इंस्टेंस बनाएं (create_model())।
  2. latest_checkpoint() से नवीनतम चेकपॉइंट पथ प्राप्त करें।
  3. load_weights() से वेट्स लोड करें।
  4. evaluate() से प्रदर्शन जांचें।
  1. पायथन में टेंसरफ्लो और प्री-ट्रेंड मॉडल का उपयोग करके डेटा कैसे विज़ुअलाइज़ करें? पायथन में टेंसरफ्लो और प्री-ट्रेंड मॉडल का उपयोग करके डेटा कैसे विज़ुअलाइज़ करें?

    टेंसरफ्लो और प्री-ट्रेंड मॉडल का उपयोग matplotlib लाइब्रेरी का उपयोग करके डेटा विज़ुअलाइज़ करने के लिए किया जा सकता है। plot मेथड का उपयोग कंसोल पर डेटा प्लॉट करने के लिए किया जाता है। और पढ़ें: टेंसरफ्लो क्या है और केरस टेंसरफ्लो के साथ न्यूरल नेटवर्क बनाने में कैसे काम करता है? एक न्यूरल नेटवर्

  1. पायथन का उपयोग करके TensorFlow से मॉडल को कैसे प्रशिक्षित किया जा सकता है? पायथन का उपयोग करके TensorFlow से मॉडल को कैसे प्रशिक्षित किया जा सकता है?

    मॉडल को TensorFlow में train विधि का उपयोग करके प्रशिक्षित किया जा सकता है, जहां ईपॉक्स (डेटा को मॉडल को फिट करने के लिए प्रशिक्षित करने की संख्या) और प्रशिक्षण डेटा निर्दिष्ट हैं। और पढ़ें: TensorFlow क्या है और केरस TensorFlow के साथ न्यूरल नेटवर्क बनाने के लिए कैसे काम करता है? हम नीचे दिए गए को

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

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