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

केरस (Keras) में मैन्युअल रूप से वेट्स सेव और लोड करना

केवल वेट्स सेव/लोड करना

कभी-कभी केवल मॉडल के वेट्स (weights) सेव करना चाहते हैं, पूरी आर्किटेक्चर नहीं। इसके लिए save_weights() और load_weights() उपयोग करें।

कोड उदाहरण

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
import os

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

# मॉडल बनाएं और प्रशिक्षित करें (मान लें)
model = create_model()
model.fit(train_images, train_labels, epochs=5, verbose=0)

# केवल वेट्स सेव करें (चेकपॉइंट फॉर्मेट)
os.makedirs('checkpoints', exist_ok=True)
checkpoint_path = './checkpoints/my_checkpoint'
model.save_weights(checkpoint_path)
print("वेट्स सेव किए गए:", checkpoint_path)

# नया मॉडल इंस्टेंस बनाएं (समान आर्किटेक्चर आवश्यक)
model2 = create_model()

# वेट्स लोड करें
model2.load_weights(checkpoint_path)
print("पुराने मॉडल के वेट्स रिस्टोर किए गए")

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

आउटपुट

वेट्स सेव किए गए: ./checkpoints/my_checkpoint
पुराने मॉडल के वेट्स रिस्टोर किए गए
रिस्टोर्ड मॉडल एक्यूरेसी: 97.40%

वेट्स फॉर्मेट्स

फॉर्मेटएक्सटेंशनविवरण
TensorFlow चेकपॉइंट.ckpt (डिफ़ॉल्ट)बाइनरी, TF नेमस्पेस के साथ
HDF5.h5 / .weights.h5पोर्टेबल, Keras 2.x स्टाइल

निर्दिष्ट फॉर्मेट: model.save_weights('weights.h5', save_format='h5')

महत्वपूर्ण आवश्यकताएं

  • लोड करते समय **समान आर्किटेक्चर** (लेयर क्रम, आकार, नाम) होना चाहिए।
  • आर्किटेक्चर मिसमैच पर ValueError उठता है।
  • आर्किटेक्चर सेव नहीं होता — केवल वेट्स मान।

उपयोग के मामले

  • फाइन-ट्यूनिंग: प्री-ट्रेन्ड वेट्स लोड करें।
  • ट्रांसफर लर्निंग: बैकबोन वेट्स कॉपी करें।
  • चेकपॉइंटिंग: प्रशिक्षण के दौरान आवधिक सेव।
  • हल्का वजन: केवल वेट्स फाइलें (कोई ग्राफ/कॉन्फ़िग नहीं)।
  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. केरस (Keras) में कॉलबैक बनाकर वेट्स सेव करना केरस (Keras) में कॉलबैक बनाकर वेट्स सेव करना

    ModelCheckpoint कॉलबैक बनाना और उपयोग करना प्रशिक्षण के दौरान मॉडल वेट्स को स्वचालित रूप से सेव करने के लिए कॉलबैक कॉन्फ़िगर करें। कोड उदाहरण import tensorflow as tf from tensorflow import keras from tensorflow.keras import layers from tensorflow.keras.callbacks import ModelCheckpoint import os de

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

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