কম্পিউটার

পাইথন ব্যবহার করে স্তরগুলির গ্রাফে নোডগুলি নিষ্কাশন এবং পুনঃব্যবহারের জন্য কীভাবে কেরাস ব্যবহার করা যেতে পারে?


ONEIROS (ওপেন-এন্ডেড নিউরো-ইলেক্ট্রনিক ইন্টেলিজেন্ট রোবট অপারেটিং সিস্টেম) প্রকল্পের গবেষণার অংশ হিসেবে কেরাস তৈরি করা হয়েছিল। কেরাস একটি গভীর শিক্ষার API, যা পাইথনে লেখা। এটি একটি উচ্চ-স্তরের API যার একটি উত্পাদনশীল ইন্টারফেস রয়েছে যা মেশিন লার্নিং সমস্যা সমাধানে সহায়তা করে। এটি টেনসরফ্লো ফ্রেমওয়ার্কের উপরে চলে। এটি একটি দ্রুত পদ্ধতিতে পরীক্ষা সাহায্য করার জন্য নির্মিত হয়েছিল. এটি প্রয়োজনীয় বিমূর্ততা এবং বিল্ডিং ব্লকগুলি প্রদান করে যা মেশিন লার্নিং সমাধানগুলি বিকাশ এবং এনক্যাপসুলেট করার জন্য অপরিহার্য৷

এটি অত্যন্ত মাপযোগ্য, এবং ক্রস-প্ল্যাটফর্ম ক্ষমতার সাথে আসে। এর মানে কেরাস টিপিইউ বা জিপিইউ এর ক্লাস্টারে চালানো যেতে পারে। কেরাস মডেলগুলি একটি ওয়েব ব্রাউজার বা মোবাইল ফোনেও চালানোর জন্য রপ্তানি করা যেতে পারে৷

কেরাস ইতিমধ্যেই টেনসরফ্লো প্যাকেজের মধ্যে উপস্থিত রয়েছে। এটি কোডের নীচের লাইন ব্যবহার করে অ্যাক্সেস করা যেতে পারে।

টেনসরফ্লো আমদানি কেরা থেকে টেনসরফ্লো আমদানি করুন

কেরাস ফাংশনাল এপিআই এমন মডেল তৈরি করতে সাহায্য করে যা ক্রমিক এপিআই ব্যবহার করে তৈরি মডেলের তুলনায় আরও নমনীয়। কার্যকরী API নন-লিনিয়ার টপোলজি রয়েছে এমন মডেলগুলির সাথে কাজ করতে পারে, স্তরগুলি ভাগ করতে পারে এবং একাধিক ইনপুট এবং আউটপুটগুলির সাথে কাজ করতে পারে। একটি গভীর শিক্ষার মডেল সাধারণত একটি নির্দেশিত অ্যাসাইক্লিক গ্রাফ (DAG) যাতে একাধিক স্তর থাকে। কার্যকরী API স্তরগুলির গ্রাফ তৈরি করতে সহায়তা করে৷

আমরা নিচের কোডটি চালানোর জন্য Google Colaboratory ব্যবহার করছি। Google Colab বা Colaboratory ব্রাউজারে Python কোড চালাতে সাহায্য করে এবং এর জন্য শূন্য কনফিগারেশন এবং GPUs (গ্রাফিক্যাল প্রসেসিং ইউনিট) তে বিনামূল্যে অ্যাক্সেস প্রয়োজন। জুপিটার নোটবুকের উপরে কোলাবোরেটরি তৈরি করা হয়েছে। নিম্নলিখিত কোড স্নিপেট যেখানে কেরা স্তরগুলির গ্রাফে নোডগুলি বের করতে এবং পুনরায় ব্যবহার করতে ব্যবহৃত হয় -

উদাহরণ

মুদ্রণ("প্রাক-প্রশিক্ষিত ওজন সহ VGG19 মডেল")vgg19 =tf.keras.applications.VGG19()features_list =[vgg19.layers-এ স্তরের জন্য layer.output]feat_extraction_model =keras.Model(inputs=vgg19.input , outputs=features_list)img =np.random.random((1, 224, 224, 3)).astype("float32")প্রিন্ট("ফিচার-এক্সট্রাকশন মডেল তৈরি করুন")extracted_features =feat_extraction_model(img)

কোড ক্রেডিট - https://www.tensorflow.org/guide/keras/functional

আউটপুট

https://storage.googleapis.com/tensorflow/kerasapplications/vgg19/vgg19_weights_tf_dim_ordering_tf_kernels.h5574717952/574710======================================] - 6s 0us/stepCreate বৈশিষ্ট্য-নিষ্কাশন মডেল

ব্যাখ্যা

  • যেহেতু স্তরগুলির গ্রাফ একটি স্ট্যাটিক ডেটা কাঠামো, তাই এটি অ্যাক্সেস করা যেতে পারে৷

  • এই কারণেই কার্যকরী মডেলগুলিকে চিত্র হিসাবে প্লট করা যেতে পারে৷

  • মধ্যবর্তী স্তরগুলির (নোড) সক্রিয়করণগুলিও অ্যাক্সেস এবং পুনরায় ব্যবহার করা যেতে পারে৷

  • এটি বৈশিষ্ট্য নিষ্কাশন উদ্দেশ্যে খুব দরকারী।

  • আমরা VGG19 মডেলটি ব্যবহার করব যাতে ইমেজনেটের সাহায্যে প্রাক-প্রশিক্ষিত ওজন রয়েছে৷

  • এই মধ্যবর্তী অ্যাক্টিভেশনগুলি গ্রাফ ডেটা স্ট্রাকচার অনুসন্ধান করে প্রাপ্ত করা যেতে পারে।

  • এই বৈশিষ্ট্যগুলি একটি নতুন বৈশিষ্ট্য-নিষ্কাশন মডেল তৈরি করতে ব্যবহার করা যেতে পারে যা মধ্যবর্তী স্তর সক্রিয়করণের মান প্রদান করে৷


  1. পাইথন ব্যবহার করে পুরো মডেলটিকে কীভাবে সংরক্ষণ করতে কেরাস ব্যবহার করা যেতে পারে?

  2. পাইথন প্রোগ্রাম ব্যবহার করে মডেল প্লট করার জন্য কেরাস কীভাবে ব্যবহার করা যেতে পারে?

  3. পাইথন ব্যবহার করে মডেল প্লট করার জন্য কেরাস কীভাবে ব্যবহার করা যেতে পারে?

  4. কিভাবে কেরাস একটি গ্রাফ হিসাবে মডেলটিকে প্লট করতে এবং পাইথন ব্যবহার করে ইনপুট এবং আউটপুট আকারগুলি প্রদর্শন করতে ব্যবহার করা যেতে পারে?