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

केरस (Keras) में मॉडल का मूल्यांकन (evaluate) करना

अनप्रशिक्षित मॉडल का मूल्यांकन

नवनिर्मित (अनप्रशिक्षित) मॉडल को टेस्ट डेटा पर evaluate() करके बेसलाइन प्रदर्शन देखें।

कोड उदाहरण

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

print("मॉडल इंस्टेंस बनाया जा रहा है...")
model = create_model()

print("मॉडल मूल्यांकन किया जा रहा है (अनप्रशिक्षित)...")
loss, acc = model.evaluate(test_images, test_labels, verbose=2)

print(f"अनप्रशिक्षित मॉडल एक्यूरेसी: {100 * acc:.3f}%")

आउटपुट

मॉडल इंस्टेंस बनाया जा रहा है...
मॉडल मूल्यांकन किया जा रहा है (अनप्रशिक्षित)...
32/32 - 0s - loss: 2.3026 - sparse_categorical_accuracy: 0.0930
अनप्रशिक्षित मॉडल एक्यूरेसी: 9.300%

व्याख्या

  • यादृच्छिक वेट्स: अनप्रशिक्षित मॉडल के वेट्स यादृच्छिक रूप से प्रारंभ होते हैं।
  • 10 क्लासेस: MNIST में 10 अंक (0-9), यादृच्छिक अनुमान से ~10% एक्यूरेसी अपेक्षित।
  • लॉस ~2.3: क्रॉस-एन्ट्रॉपी लॉस लिए यूनिफॉर्म वितरण (1/10 प्रति क्लास) ≈ -ln(0.1) ≈ 2.3।

evaluate() पैरामीटर्स

पैरामीटरविवरण
x, yटेस्ट डेटा और लेबल
batch_sizeमूल्यांकन बैच आकार (डिफ़ॉल्ट 32)
verbose0=साइलेंट, 1=प्रोग्रेस बार, 2=प्रति एपोक लाइन
sample_weightवैकल्पिक नमूना वजन
return_dictTrue: शब्दकोश लौटाएं (TF 2.6+)

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

  • बेसलाइन स्थापित करना (यादृच्छिक vs प्रशिक्षित)।
  • हाइपरपैरामीटर तुलना।
  • मॉडल चयन/आर्किटेक्चर खोज।
  • प्रशिक्षण के दौरान सत्यापन (validation_data में)।

प्रशिक्षण के बाद

model.fit(train_images, train_labels, epochs=5)
loss, acc = model.evaluate(test_images, test_labels)
print(f"प्रशिक्षित मॉडल एक्यूरेसी: {100*acc:.2f}%")  # ~97-98%
  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) में मैन्युअल रूप से वेट्स सेव और लोड करना

    केवल वेट्स सेव/लोड करना कभी-कभी केवल मॉडल के वेट्स (weights) सेव करना चाहते हैं, पूरी आर्किटेक्चर नहीं। इसके लिए save_weights() और load_weights() उपयोग करें। कोड उदाहरण import tensorflow as tf from tensorflow import keras from tensorflow.keras import layers import os def create_model(): model

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

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