हम फ्लावर्स डेटासेट का उपयोग करेंगे, जिसमें फूलों की कई हजार छवियां हैं। इसमें 5 सब-डायरेक्टरी हैं, और प्रत्येक क्लास के लिए एक सब-डायरेक्टरी है। एक बार फ्लावर डेटासेट 'get_file' मेथड का उपयोग करके डाउनलोड हो जाने के बाद, इसे वातावरण में लोड किया जाएगा ताकि इसके साथ काम किया जा सके।
फ्लावर डेटा को मॉडल में एक नॉर्मलाइज़ेशन लेयर पेश करके मानकीकृत किया जा सकता है। इस लेयर को 'Rescaling' लेयर कहा जाता है, जिसे 'map' मेथड का उपयोग करके पूरे डेटासेट पर लागू किया जाता है।
और पढ़ें: TensorFlow क्या है और केरस (Keras) TensorFlow के साथ कैसे काम करता है न्यूरल नेटवर्क बनाने के लिए?
हम नीचे दिए गए कोड को चलाने के लिए Google Colaboratory का उपयोग कर रहे हैं। Google Colab या Colaboratory ब्राउज़र पर Python कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफिकल प्रोसेसिंग यूनिट्स) तक मुफ्त पहुंच की आवश्यकता होती है। Colaboratory को Jupyter Notebook के शीर्ष पर बनाया गया है।
print("Normalization layer is created ") normalization_layer = layers.experimental.preprocessing.Rescaling(1./255) print("This layer is applied to dataset using map function ") normalized_ds = train_ds.map(lambda x, y: (normalization_layer(x), y)) image_batch, labels_batch = next(iter(normalized_ds)) first_image = image_batch[0] print(np.min(first_image), np.max(first_image))
कोड क्रेडिट: https://www.tensorflow.org/tutorials/images/classification
आउटपुट
Normalization layer is created This layer is applied to dataset using map function 0.0 1.0
व्याख्या
- RGB चैनल मान [0, 255] रेंज में हैं।
- यह एक न्यूरल नेटवर्क के लिए आदर्श नहीं माना जाता है।
- एक नियम के रूप में, सुनिश्चित करें कि इनपुट मान छोटे हैं।
- इसलिए, हम मानों को [0, 1] रेंज में मानकीकृत कर सकते हैं।
- यह Rescaling लेयर का उपयोग करके किया जाता है।
- इसे मैप फंक्शन को कॉल करके डेटासेट पर लेयर लागू करके किया जा सकता है।
- इसे करने का दूसरा तरीका मॉडल परिभाषा के भीतर लेयर को शामिल करना है।
- यह डिप्लॉयमेंट प्रक्रिया को सरल बनाएगा।