मॉडल सेव करना: HDF5 (.h5) फॉर्मेट
Keras मॉडल को HDF5 फॉर्मेट में सेव करने से आर्किटेक्चर, वेट्स, ऑप्टिमाइज़र स्टेट, और कंपाइलेशन जानकारी एक ही फ़ाइल में संग्रहीत होती है।
कोड उदाहरण
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
# सरल मॉडल बनाएं
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()
# मॉडल को HDF5 में सेव करें
print("मॉडल HDF5 फॉर्मेट में सेव किया जा रहा है...")
model.save('my_model.h5')
# समान वेट्स और ऑप्टिमाइज़र के साथ पुनः लोड करें
print("समान वेट्स और ऑप्टिमाइज़र के साथ मॉडल पुनः बनाया जा रहा है...")
new_model = tf.keras.models.load_model('my_model.h5')
print("मॉडल आर्किटेक्चर:")
new_model.summary()
आउटपुट (सारांश)
Model: "sequential" _________________________________________________________________ Layer (type) Output Shape Param # ================================================================= dense (Dense) (None, 64) 50240 dense_1 (Dense) (None, 10) 650 ================================================================= Total params: 50,890 Trainable params: 50,890 Non-trainable params: 0 _________________________________________________________________
HDF5 सेव में क्या शामिल होता है?
- मॉडल आर्किटेक्चर (कॉन्फ़िगरेशन JSON/YAML)।
- सभी वेट्स (weights)।
- ऑप्टिमाइज़र स्टेट (learning rate, momentum, आदि)।
- कंपाइलेशन जानकारी (loss, metrics)।
लोड करने के बाद
new_model.predict()तुरंत काम करता है।new_model.fit()ऑप्टिमाइज़र स्टेट से जारी रखता है।new_model.summary()आर्किटेक्चर दिखाता है।
नोट
TensorFlow 2.x में SavedModel फॉर्मेट (डायरेक्टरी) डिफ़ॉल्ट और सुझावित है। HDF5 लीगेसी/इंटरऑपरेबिलिटी के लिए है।