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

पायथन का उपयोग करके परतों के ग्राफ में नोड्स को निकालने और पुन:उपयोग करने के लिए केरस का उपयोग कैसे किया जा सकता है?

केरस को प्रोजेक्ट ONEIROS (ओपन-एंडेड न्यूरो-इलेक्ट्रॉनिक इंटेलिजेंट रोबोट ऑपरेटिंग सिस्टम) के लिए अनुसंधान के एक भाग के रूप में विकसित किया गया था। केरस एक डीप लर्निंग एपीआई है, जिसे पायथन में लिखा गया है। यह एक उच्च-स्तरीय एपीआई है जिसमें एक उत्पादक इंटरफ़ेस है जो मशीन सीखने की समस्याओं को हल करने में मदद करता है। यह Tensorflow ढांचे के शीर्ष पर चलता है। इसे त्वरित तरीके से प्रयोग में मदद करने के लिए बनाया गया था। यह आवश्यक सार तत्व और बिल्डिंग ब्लॉक्स प्रदान करता है जो मशीन लर्निंग सॉल्यूशंस को विकसित करने और इनकैप्सुलेट करने के लिए आवश्यक हैं।

यह अत्यधिक स्केलेबल है, और क्रॉस-प्लेटफ़ॉर्म क्षमताओं के साथ आता है। इसका मतलब है कि केरस को टीपीयू या जीपीयू के क्लस्टर पर चलाया जा सकता है। केरस मॉडल को वेब ब्राउज़र या मोबाइल फोन में भी चलाने के लिए निर्यात किया जा सकता है।

केरस पहले से ही Tensorflow पैकेज में मौजूद है। इसे कोड की नीचे दी गई लाइन का उपयोग करके एक्सेस किया जा सकता है।

import tensorflow
from tensorflow import keras

केरस कार्यात्मक एपीआई ऐसे मॉडल बनाने में मदद करता है जो अनुक्रमिक एपीआई का उपयोग करके बनाए गए मॉडल की तुलना में अधिक लचीले होते हैं। कार्यात्मक एपीआई उन मॉडलों के साथ काम कर सकता है जिनमें गैर-रेखीय टोपोलॉजी है, परतों को साझा कर सकते हैं और कई इनपुट और आउटपुट के साथ काम कर सकते हैं। एक गहन शिक्षण मॉडल आमतौर पर एक निर्देशित चक्रीय ग्राफ (DAG) होता है जिसमें कई परतें होती हैं। कार्यात्मक एपीआई परतों का ग्राफ बनाने में मदद करता है।

हम नीचे दिए गए कोड को चलाने के लिए Google सहयोग का उपयोग कर रहे हैं। Google Colab या Colaboratory ब्राउज़र पर पायथन कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफ़िकल प्रोसेसिंग यूनिट) तक मुफ्त पहुंच की आवश्यकता होती है। जुपिटर नोटबुक के ऊपर कोलैबोरेटरी बनाई गई है। निम्नलिखित कोड स्निपेट है जिसमें केरा का उपयोग परतों के ग्राफ में नोड्स को निकालने और पुन:उपयोग करने के लिए किया जाता है -

उदाहरण

print("VGG19 model with pre-trained weights")
vgg19 = tf.keras.applications.VGG19()
features_list = [layer.output for layer in vgg19.layers]
feat_extraction_model = keras.Model(inputs=vgg19.input, outputs=features_list)

img = np.random.random((1, 224, 224, 3)).astype("float32")
print("Create feature-extraction model")
extracted_features = feat_extraction_model(img)

कोड क्रेडिट - https://www.tensorflow.org/guide/keras/functional

आउटपुट

VGG19 model with pre-trained weights
Downloading data from https://storage.googleapis.com/tensorflow/kerasapplications/vgg19/vgg19_weights_tf_dim_ordering_tf_kernels.h5
574717952/574710816 [==============================] - 6s 0us/step
Create feature-extraction model

स्पष्टीकरण

  • चूंकि परतों का ग्राफ एक स्थिर डेटा संरचना है, इसलिए इसे एक्सेस किया जा सकता है।

  • यही कारण है कि कार्यात्मक मॉडल को छवियों के रूप में प्लॉट किया जा सकता है।

  • मध्यवर्ती परतों (नोड्स) की सक्रियता को भी एक्सेस और पुन:उपयोग किया जा सकता है।

  • यह सुविधा निष्कर्षण उद्देश्यों के लिए बहुत उपयोगी है।

  • हम VGG19 मॉडल का उपयोग करेंगे, जिसमें इमेजनेट की मदद से पूर्व-प्रशिक्षित भार हैं।

  • इन मध्यवर्ती सक्रियणों को ग्राफ़ डेटा संरचना को क्वेरी करके प्राप्त किया जा सकता है।

  • इन सुविधाओं का उपयोग एक नया फीचर-निष्कर्षण मॉडल बनाने के लिए किया जा सकता है जो मध्यवर्ती परत सक्रियण के मान लौटाता है।


  1. पायथन प्रोग्राम का उपयोग करके मॉडल को प्लॉट करने के लिए केरस का उपयोग कैसे किया जा सकता है?

    ग्रीक में केरस का अर्थ सींग होता है। केरस को प्रोजेक्ट ONEIROS (ओपन एंडेड न्यूरो-इलेक्ट्रॉनिक इंटेलिजेंट रोबोट ऑपरेटिंग सिस्टम) के लिए अनुसंधान के एक भाग के रूप में विकसित किया गया था। केरस एक डीप लर्निंग एपीआई है, जिसे पायथन में लिखा गया है। यह एक उच्च-स्तरीय एपीआई है जिसमें एक उत्पादक इंटरफ़ेस है

  1. पायथन का उपयोग करके मॉडल को प्लॉट करने के लिए केरस का उपयोग कैसे किया जा सकता है?

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

  1. केरस का उपयोग मॉडल को ग्राफ के रूप में प्लॉट करने और पायथन का उपयोग करके इनपुट और आउटपुट आकृतियों को प्रदर्शित करने के लिए कैसे किया जा सकता है?

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