केरस Tensorflow पैकेज में मौजूद है। इसे कोड की नीचे दी गई लाइन का उपयोग करके एक्सेस किया जा सकता है।
टेंसरफ़्लो इंपोर्ट केरस से टेंसरफ़्लो इंपोर्ट करें
केरस कार्यात्मक एपीआई ऐसे मॉडल बनाने में मदद करता है जो अनुक्रमिक एपीआई का उपयोग करके बनाए गए मॉडल की तुलना में अधिक लचीले होते हैं। कार्यात्मक एपीआई उन मॉडलों के साथ काम कर सकता है जिनमें गैर-रेखीय टोपोलॉजी है, परतों को साझा कर सकते हैं और कई इनपुट और आउटपुट के साथ काम कर सकते हैं। एक गहन शिक्षण मॉडल आमतौर पर एक निर्देशित चक्रीय ग्राफ (DAG) होता है जिसमें कई परतें होती हैं। कार्यात्मक एपीआई परतों का ग्राफ बनाने में मदद करता है।
हम नीचे दिए गए कोड को चलाने के लिए Google सहयोग का उपयोग कर रहे हैं। Google Colab या Colaboratory ब्राउज़र पर पायथन कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफ़िकल प्रोसेसिंग यूनिट) तक मुफ्त पहुंच की आवश्यकता होती है। जुपिटर नोटबुक के ऊपर कोलैबोरेटरी बनाई गई है। निम्नलिखित कोड स्निपेट है;
उदाहरण
प्रिंट("CIFAR10 के लिए टॉय रेसनेट मॉडल") प्रिंट ("मॉडल के लिए लेयर जनरेट") इनपुट =केरस। इनपुट (आकार =(32, 32, 3), नाम ="img") x =लेयर्स। Conv2D ( 32, 3, सक्रियण ="relu") (इनपुट) x =परतें। Conv2D (64, 3, सक्रियण ="relu") (x) ब्लॉक_1_आउटपुट =परतें। MaxPooling2D (3) (x) x =परतें। Conv2D (64) , 3, सक्रियण ="relu", पैडिंग ="समान") (ब्लॉक_1_आउटपुट) x =परतें। Conv2D (64, 3, सक्रियण ="relu", पैडिंग ="समान") (x) ब्लॉक_2_आउटपुट =परतें। जोड़ें ([ x, ब्लॉक_1_आउटपुट])x =परतें। Conv2D (64, 3, सक्रियण ="relu", पैडिंग ="समान") (ब्लॉक_2_आउटपुट) x =परतें। Conv2D (64, 3, सक्रियण ="relu", पैडिंग ="समान" ")(x)block_3_output =Layers.add([x, block_2_output])x =Layers.Conv2D(64, 3, Activate="relu")(block_3_output)x =Layers.GlobalAveragePooling2D()(x)x =लेयर्स। Dense(256, एक्टिवेशन ="relu") (x) x =लेयर्स। ड्रॉपआउट (0.5) (x) आउटपुट =लेयर्स। डेंस (10) (x) मॉडल =केरस। मॉडल (इनपुट, आउटपुट, नाम ="toy_resnet" )प्रिंट("मॉडल के बारे में अधिक जानकारी")model.summary()
कोड क्रेडिट - https://www.tensorflow.org/guide/keras/functional
आउटपुट
सीआईएफएआर10 के लिए टॉय रेसनेट मॉडलमॉडल के लिए तैयार की गई परतेंमॉडल के बारे में अधिक जानकारी:"toy_resnet"______________________________________________________________________________________________ परत (प्रकार) आउटपुट आकार परम # से जुड़ा है=========================================================================================img (इनपुटलेयर) [(कोई नहीं, 32, 32, 3)] , 30, 32) 896 आईएमजी [0] [0] __________________________ 0][0]_________________________________________________________________________ _____________________________conv2d_34 (रूपांतरण 2D) (कोई नहीं, 9, 9, 64) 36928 max_pooling2d_8[0][0]_______________________________________________________________________________________________________conv2d_35 (रूपांतरण 2D) (कोई नहीं, 9, 9, 64) 36928 (None, 9, 9, 9, 64) जोड़ें) , 9, 64) 0 conv2d_35[0][0] max_pooling2d_8[0][0]___________________________________________________________________________________________conv2d_36 (Conv2D) (कोई नहीं, 9, 9, 64) 36928 add_12[0][0]______________________________________________________________ 9, 64) 36928 conv2d_36[0][0]_______________________________________________________________________________________________________________ जोड़ें_13 (जोड़ें) (कोई नहीं, 9, 9, 64) 0 conv2d_37[0][0] add_12[0][0]___________________________________________________________________________________________conv2d_38 (Conv2D) (कोई नहीं, 7, 7, 64) 36928 add_13[0][0]_______________________________________________________________________________________________________global_average_pooling2d_1 (ग्लो (कोई नहीं, 64_) 0 conv2d_38 [0] _____________________________________________________________________________________________घना_40 (घना) (कोई नहीं, 256) 16640 वैश्विक_औसत_पूलिंग2d_1[0][0]_______________________________________________________________________________________________________ ड्रॉपआउट_2 (छोड़ने वाला) (कोई नहीं, 256) 0 सघन_40[0][0]__________________________________________ 0][0]============================================================================================कुल पैरा:223,242 प्रशिक्षण योग्य पैरा:223,242 अप्रशिक्षित पैरा:0.स्पष्टीकरण
-
मॉडल में कई इनपुट और आउटपुट हैं।
-
कार्यात्मक एपीआई गैर-रैखिक कनेक्टिविटी टोपोलॉजी के साथ काम करना आसान बनाता है।
-
परतों वाला यह मॉडल क्रमिक रूप से जुड़ा नहीं है, इसलिए 'अनुक्रमिक' API इसके साथ काम नहीं कर सकता है।
-
यह वह जगह है जहां अवशिष्ट कनेक्शन तस्वीर में आते हैं।
-
इसे प्रदर्शित करने के लिए CIFAR10 का उपयोग करते हुए एक नमूना ResNet मॉडल बनाया गया है।