"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > पायथन में एक बेसिक कन्वोल्यूशनल न्यूरल नेटवर्क (सीएनएन) का निर्माण

पायथन में एक बेसिक कन्वोल्यूशनल न्यूरल नेटवर्क (सीएनएन) का निर्माण

2024-11-01 को प्रकाशित
ब्राउज़ करें:976

Building a Basic Convolutional Neural Network (CNN) in Python

कन्वेल्यूशनल न्यूरल नेटवर्क (सीएनएन) छवि प्रसंस्करण और पहचान कार्यों के लिए शक्तिशाली उपकरण हैं। वे बैकप्रॉपैगेशन के माध्यम से सुविधाओं के स्थानिक पदानुक्रम को स्वचालित रूप से और अनुकूल रूप से सीखने के लिए डिज़ाइन किए गए हैं। आइए Python और TensorFlow/Keras का उपयोग करके एक बुनियादी CNN के निर्माण में गोता लगाएँ।

? आवश्यक शर्तें

शुरू करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित लाइब्रेरी स्थापित हैं:

pip install tensorflow numpy matplotlib

?️ चरण 1: आवश्यक पुस्तकालय आयात करें

आवश्यक पुस्तकालयों को आयात करके प्रारंभ करें:

import tensorflow as tf
from tensorflow.keras import layers, models
import matplotlib.pyplot as plt

?️ चरण 2: डेटासेट को लोड और प्रीप्रोसेस करें

इस उदाहरण के लिए, हम CIFAR-10 डेटासेट का उपयोग करेंगे, जिसमें 10 कक्षाओं में 60,000 32x32 रंगीन छवियां शामिल हैं।

# Load the CIFAR-10 dataset
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.cifar10.load_data()

# Normalize the pixel values to be between 0 and 1
x_train, x_test = x_train / 255.0, x_test / 255.0

? चरण 3: सीएनएन मॉडल बनाएं

अब, आइए सीएनएन मॉडल का निर्माण करें। इस मॉडल में प्रमुख परतें शामिल होंगी: कन्वोल्यूशनल, पूलिंग और सघन परतें।

model = models.Sequential()

# First Convolutional Layer
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))

# Second Convolutional Layer
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))

# Third Convolutional Layer
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

# Flatten the output and add Dense layers
model.add(layers.Flatten())
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10, activation='softmax'))

? चरण 4: मॉडल संकलित करें

मॉडल को संकलित करने में प्रशिक्षण के दौरान निगरानी करने के लिए ऑप्टिमाइज़र, हानि फ़ंक्शन और मेट्रिक्स को निर्दिष्ट करना शामिल है।

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

? चरण 5: मॉडल को प्रशिक्षित करें

कुछ युगों के लिए प्रशिक्षण डेटा पर सीएनएन मॉडल को प्रशिक्षित करें।

history = model.fit(x_train, y_train, epochs=10, 
                    validation_data=(x_test, y_test))

? चरण 6: मॉडल का मूल्यांकन करें

प्रशिक्षण के बाद, परीक्षण डेटा पर मॉडल का मूल्यांकन करें कि यह कितना अच्छा प्रदर्शन करता है।

test_loss, test_acc = model.evaluate(x_test, y_test, verbose=2)
print(f'\nTest accuracy: {test_acc}')

?️ चरण 7: प्रशिक्षण परिणामों की कल्पना करें

अंत में, आइए प्रशिक्षण युगों में सटीकता और हानि की कल्पना करें।

plt.plot(history.history['accuracy'], label='accuracy')
plt.plot(history.history['val_accuracy'], label = 'val_accuracy')
plt.xlabel('Epoch')
plt.ylabel('Accuracy')
plt.ylim([0, 1])
plt.legend(loc='lower right')
plt.show()

? निष्कर्ष

यह बुनियादी सीएनएन मॉडल छवि वर्गीकरण कार्यों से निपटने के लिए एक बेहतरीन शुरुआती बिंदु के रूप में कार्य करता है। इस मॉडल को समझकर और संशोधित करके, आप अपने मॉडल के प्रदर्शन को बढ़ाने के लिए विभिन्न आर्किटेक्चर और तकनीकों के साथ प्रयोग कर सकते हैं। और भी अधिक शक्तिशाली तंत्रिका नेटवर्क बनाने के लिए परतों की खोज और उनमें बदलाव करते रहें! ?


इस कोड को पालन करने और संशोधित करने में आसान बनाने के लिए डिज़ाइन किया गया है, जो इसे शुरुआती लोगों और पायथन में सीएनएन के साथ शुरुआत करने वालों के लिए उपयुक्त बनाता है।

सीएनएन आर्किटेक्चर के लिए ब्लॉग लिंक:https://dev.to/ABHINOwww/demystifying-cnn-neural-network-layers-a-dep-dive-into-ai-architecture-12d2

विज्ञप्ति वक्तव्य यह लेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/ABHINOwww/building-a-basic-convolutional-neural-network-cnn-in-python-3bab?1 यदि कोई उल्लंघन है, तो कृपया स्टडी_गोलंग@163.com पर संपर्क करें। इसे हटाने के लिए
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3