PyTorch এ মডেল লেয়ারের ওজন কিভাবে পাওয়া যায়?

Pytorch E Madela Leyarera Ojana Kibhabe Pa Oya Yaya



PyTorch ফ্রেমওয়ার্কে তৈরি নিউরাল নেটওয়ার্ক মডেলগুলি মডেল স্তরগুলির শিখনযোগ্য পরামিতিগুলির উপর ভিত্তি করে তৈরি করা হয়েছে৷ এইগুলো ' ওজন ” আউটপুটে ফলাফল তৈরি করার জন্য ডেটা ইনপুট প্রক্রিয়াকরণ সংজ্ঞায়িত করার মূল বিষয়। মডেলের প্রতিটি পুনরাবৃত্তি আউটপুটের গুণমান উন্নত করতে এবং আরও ভাল অনুমান প্রদানের জন্য বিদ্যমান ওজনগুলিকে আপডেট করে।

এই ব্লগে, PyTorch-এ একটি মডেল স্তরের ওজন কিভাবে প্রাপ্ত করা যায় তার উপর ফোকাস করা হবে।

PyTorch এ একটি মডেল স্তরের ওজন কি?

' ওজন ' এবং ' পক্ষপাতিত্ব ” উভয়ই নিউরাল নেটওয়ার্ক মডেলের অপরিহার্য বৈশিষ্ট্য। এগুলি উভয়ই শেখার যোগ্য পরামিতি যা মডেলের প্রতিটি ফরোয়ার্ড পাসের সাথে প্রশিক্ষণ লুপের সময় নিয়মিত আপডেট করা হয়। এই নিয়মিত আপডেটটি অ্যাডাম অপ্টিমাইজারের মতো একটি সমন্বিত অপ্টিমাইজারের কারণে। নিউরাল নেটওয়ার্ক মডেলগুলির উদ্দেশ্য হল ইনপুট ডেটার উপর ভিত্তি করে সঠিক ভবিষ্যদ্বাণী করা এবং ক্ষতি কমাতে এই ফলাফলগুলি সামঞ্জস্য করতে ওজন এবং পক্ষপাতগুলি ব্যবহার করা হয়।







PyTorch এ মডেল লেয়ারের ওজন কিভাবে পাওয়া যায়?

দ্য ' ওজন একটি স্তরের 'পাইথন অভিধানে সংরক্ষণ করা হয় এবং সিনট্যাক্স ব্যবহার করে' state_dict() ” অভিধানটি নীচের ধাপগুলি ব্যবহার করে ওজন কল করতে ব্যবহৃত হয়:



ধাপ 1: Colab IDE খুলুন

এই টিউটোরিয়ালটি প্রকল্পের জন্য IDE পছন্দের সাথে শুরু হবে। কোলাবোরেটরিতে যান ওয়েবসাইট এবং একটি শুরু করুন ' নতুন নোটবুক 'কাজ শুরু করতে:







ধাপ 2: লাইব্রেরি ইনস্টল এবং আমদানি করুন

Colab নোটবুক সেট আপ করার পর, “ ইনস্টল ' এবং ' আমদানি লাইব্রেরিগুলি যেগুলি প্রকল্পের সমস্ত প্রয়োজনীয় কার্যকারিতাগুলিকে কভার করে:

! পিপ ইন্সটল টর্চ

আমদানি টর্চ

আমদানি টর্চভিশন মডেল

উপরের কোডটি নিম্নরূপ কাজ করে:



  • দ্য ' পিপ 'পাইথন থেকে প্যাকেজ ইনস্টলার প্রয়োজনীয় ইনস্টল করার জন্য ব্যবহৃত হয়' টর্চ 'লাইব্রেরি।
  • পরবর্তী, ' আমদানি ” কমান্ডটি প্রকল্পে আমদানি করতে ব্যবহৃত হয়।
  • সবশেষে, ' torchvision.models ডিপ লার্নিং মডেলের অতিরিক্ত কার্যকারিতার জন্য প্যাকেজটিও আমদানি করা হয়:

ধাপ 3: ResNet মডেল আমদানি করুন

এই টিউটোরিয়ালে, ' ResNet50 টর্চভিশন লাইব্রেরির মধ্যে থাকা 50টি স্তর সহ নিউরাল নেটওয়ার্ক মডেলটি প্রদর্শনের জন্য ব্যবহৃত হয়। দেখানো হিসাবে প্রাক-প্রশিক্ষিত মডেল আমদানি করুন:

নমুনা_মডেল = টর্চভিশন মডেল . গুরুতর50 ( প্রশিক্ষিত = সত্য )

ধাপ 4: মডেল লেয়ার সংজ্ঞায়িত করুন

মডেল স্তরের নাম সংজ্ঞায়িত করুন এবং ' state_dict() দেখানো হিসাবে এর ওজন প্রাপ্ত করার পদ্ধতি:

নমুনা_স্তরের_নাম = 'layer2.0.conv1'

নমুনা_স্তরের_ওজন = নমুনা_মডেল state_dict ( ) [ নমুনা_স্তরের_নাম + '.ওজন' ]

ছাপা ( 'স্তরের ওজন: \n ' , নমুনা_স্তরের_ওজন। আকৃতি )

উপরের কোডটি নিম্নরূপ কাজ করে:

  • ResNet50 মডেলের দ্বিতীয় জটিল স্তরটি 'কে বরাদ্দ করা হয়েছে নমুনা_স্তরের_নাম ' পরিবর্তনশীল।
  • এরপর ' state_dict() 'পদ্ধতি ব্যবহার করা হয় 'এর সাথে নমুনা_মডেল ' পরিবর্তনশীল এবং সেগুলি 'কে বরাদ্দ করা হয়েছে নমুনা_স্তরের_ওজন ' পরিবর্তনশীল।
  • দ্য ' নমুনা_স্তরের_নাম ' এবং ' .ওজন ' এর আর্গুমেন্ট হিসাবে যোগ করা হয় ' state_dict() ওজন প্রাপ্ত করার জন্য পদ্ধতি।
  • অবশেষে, ব্যবহার করুন ' ছাপা() আউটপুট হিসাবে স্তর ওজন প্রদর্শন করার পদ্ধতি:

নীচের আউটপুট দেখায় যে আমরা পাইটর্চে মডেল স্তরের ওজন পেয়েছি:

বিঃদ্রঃ : আপনি এখানে আমাদের Colab নোটবুক অ্যাক্সেস করতে পারেন লিঙ্ক .

প্রো-টিপ

PyTorch-এর মধ্যে একটি মডেল স্তরের ওজন প্রশিক্ষণ লুপের অগ্রগতি প্রদর্শন করে। এই ওজনগুলি মডেলের বৃদ্ধি নিশ্চিত করতে ব্যবহৃত হয় কারণ এটি আউটপুট ফলাফল এবং ভবিষ্যদ্বাণীগুলিতে ইনপুট ডেটা প্রক্রিয়া করে। একটি স্তরের ওজন প্রাপ্ত করা ফলাফলের গুণমান মূল্যায়ন এবং কোন উন্নতি করা হবে কিনা তা পরীক্ষা করার জন্য গুরুত্বপূর্ণ।

সফলতার ! আমরা দেখিয়েছি কিভাবে একটি PyTorch মডেলের একটি স্তরের ওজন পাওয়া যায়।

উপসংহার

PyTorch ব্যবহার করে একটি মডেল স্তরের ওজন প্রাপ্ত করুন 'state_dict() টর্চভিশন থেকে একটি মডেল আমদানি করার পরে বা একটি কাস্টম ব্যবহার করার পরে পদ্ধতি৷ একটি মডেল স্তরের ওজন হল শেখার যোগ্য প্যারামিটার যা প্রশিক্ষণের সময় ক্রমাগত আপডেট করা হয় এবং এর অগ্রগতি ক্যাটালগ করে। এই নিবন্ধে, আমরা দেখিয়েছি কিভাবে টর্চভিশন থেকে ResNet50 মডেলটি আমদানি করা যায় এবং এর দ্বিতীয় জটিল স্তরের ওজন পাওয়া যায়।