সুচিপত্র:

এনভিআইডিআইএ জেটবট দিয়ে ট্রান্সফার লার্নিং - ট্রাফিক কনস দিয়ে মজা: 6 টি ধাপ
এনভিআইডিআইএ জেটবট দিয়ে ট্রান্সফার লার্নিং - ট্রাফিক কনস দিয়ে মজা: 6 টি ধাপ

ভিডিও: এনভিআইডিআইএ জেটবট দিয়ে ট্রান্সফার লার্নিং - ট্রাফিক কনস দিয়ে মজা: 6 টি ধাপ

ভিডিও: এনভিআইডিআইএ জেটবট দিয়ে ট্রান্সফার লার্নিং - ট্রাফিক কনস দিয়ে মজা: 6 টি ধাপ
ভিডিও: How To Stop Windows 10 Auto Update Permanently | Disable Auto Update For Lifetime | part-1 2024, নভেম্বর
Anonim

আমার গিথুব সম্পর্কে অনুসরণ করুন: আমি এআই এবং মেশিন লার্নিং অ্যাপ্লিকেশন পছন্দ করি, বিশেষ করে রোবোটিক্সে ডিভিলভাল্ড সম্পর্কে আরও »

আপনার রোবটকে ক্যামেরা এবং অত্যাধুনিক গভীর শিক্ষার মডেল ব্যবহার করে ট্রাফিক শঙ্কুর গোলকধাঁধায় পথ খুঁজে পেতে শেখান।

সরবরাহ

  • এনভিআইডিআইএ জেটবট

    NVIDIA JetBot উইকির বিল অফ ম্যাটেরিয়ালস পেজে জনপ্রিয় বিক্রেতাদের কাছ থেকে লিংক ক্রয়ের সাথে সাথে জেটবট তৈরির জন্য আপনার প্রয়োজনীয় সবকিছু তালিকাভুক্ত করা হয়েছে।

  • NVIDIA GPU সহ কম্পিউটার

    মডেল প্রশিক্ষণ প্রয়োজন

  • ব্লুডট ট্রেডিং 4”আরসি রেসিং অ্যাগিলিটি কনস, কমলা - 20 এর সেট

ধাপ 1: প্রেরণা

Image
Image

যখনই আমি সংকোচন এলাকায় গাড়ি চালাই তখন আমি ভাবি যে ট্রাফিক শঙ্কু দিয়ে চলাচল করা একটি স্ব-ড্রাইভিং গাড়ির জন্য কতটা চ্যালেঞ্জিং হবে। দেখা যাচ্ছে নতুন এনভিআইডিআইএর জেটবোটের সাথে এটি এতটা কঠিন নয়-মাত্র কয়েকশো চিত্রের সাহায্যে, আপনি আপনার রোবটকে খেলনা ট্র্যাফিক শঙ্কুগুলির একটি গোলকধাঁধায় কীভাবে পথ খুঁজে পেতে হয় তা শেখানোর জন্য একটি অত্যাধুনিক গভীর শিক্ষণ মডেল প্রশিক্ষণ দিতে পারেন। শুধুমাত্র অনবোর্ড ক্যামেরা ব্যবহার করে এবং অন্য কোন সেন্সর নেই।

ধাপ 2: NVIDIA JetBot এবং প্রকল্প ওভারভিউ

NVIDIA JetBot এবং প্রকল্প ওভারভিউ
NVIDIA JetBot এবং প্রকল্প ওভারভিউ

JetBot হল NVIDIA Jetson Nano kit এর উপর ভিত্তি করে একটি ওপেন সোর্স রোবট। আপনি কিভাবে এটি নির্মাণ করবেন এবং সেট আপ করবেন তার বিস্তারিত নির্দেশনা এখানে পাবেন।

এই প্রকল্পটি NVIDIA JetBot উইকির একটি পরিবর্তিত সংঘর্ষ এড়ানোর উদাহরণ। এটি তিনটি প্রধান ধাপ নিয়ে গঠিত, প্রতিটি পৃথক Jupyter নোটবুকে বর্ণিত:

  • JetBot- এ তথ্য সংগ্রহ করুন - নোটবুক data_collection_cones.ipynb
  • অন্যান্য GPU মেশিনে ট্রেনের মডেল - নোটবুক train_model_cones.ipynb
  • JetBot - নোটবুক live_demo_cones.ipynb- এ লাইভ ডেমো চালান

আপনি এই তিনটি Jupyter নোটবুক খুঁজে পেতে পারেন এখানে

ধাপ 3: জেটবট তৈরি করুন এবং জুপিটার নোটবুক আপলোড করুন

  1. এখানে ব্যাখ্যা হিসাবে JetBot তৈরি এবং সেটআপ করুন
  2. Http: //: 8888 এ নেভিগেট করে আপনার রোবটের সাথে সংযোগ করুন ডিফল্ট পাসওয়ার্ড জেটবট দিয়ে প্রবেশ করুন
  3. কার্নেল নির্বাচন করে অন্য সব চলমান নোটবুক বন্ধ করুন -> সব কার্নেল বন্ধ করুন …
  4. Note/নোটবুক/এ নেভিগেট করুন
  5. নতুন সাবফোল্ডার তৈরি করুন Note/নোটবুক/ট্রাফিক_কনস_ড্রাইভিং/
  6. Data_collection_cones.ipynb এবং live_demo_cones.ipynb আপলোড করুন ~/নোটবুক/ট্রাফিক_কনস_ড্রাইভিং/

গুরুত্বপূর্ণ: এই নির্দেশাবলীতে উল্লেখ করা Jupyter নোটবুক data_collection_cones.ipynb এবং live_demo_cones.ipynb JetBot এ চালানো উচিত যখন train_model_cones.ipynb - GPU সহ কম্পিউটারে।

অতএব আমাদের JetBot এ data_collection_cones.ipynb এবং live_demo_cones.ipynb আপলোড করতে হবে এবং সেগুলিকে ~/নোটবুক/ট্রাফিক_কনস_ড্রাইভিং/এ রাখতে হবে

ধাপ 4: JetBot এ প্রশিক্ষণ তথ্য সংগ্রহ করা

আমরা একটি ইমেজ ক্লাসিফিকেশন ডেটাসেট সংগ্রহ করব যা জেটবটকে ট্র্যাফিক কোনের গোলকধাঁধায় কাজ করতে সাহায্য করবে। জেটবট শিখবে কিভাবে চারটি পরিস্থিতিতে (ক্লাস) সম্ভাব্যতা অনুমান করতে হয়:

  • মুক্ত - যখন এগিয়ে যাওয়া নিরাপদ
  • অবরুদ্ধ - যখন রোবটের সামনে বাধা থাকে
  • বাম - যখন রোবটটি বাম দিকে ঘুরবে
  • ডান - যখন রোবটটি ডানদিকে ঘুরবে

JetBot এ প্রশিক্ষণ তথ্য সংগ্রহ করার জন্য আমরা Jupyter নোটবুক data_collection_cones.ipynb ব্যবহার করব যাতে এটি কিভাবে করতে হবে তার বিস্তারিত নির্দেশাবলী রয়েছে। JetBot এ এই নোটবুকটি চালানোর জন্য, পরবর্তী পদক্ষেপগুলি অনুসরণ করুন:

  1. Http: //: jetbot-ip-address:: 8888 এ নেভিগেট করে আপনার রোবটের সাথে সংযোগ স্থাপন করুন
  2. ডিফল্ট পাসওয়ার্ড জেটবট দিয়ে সাইন ইন করুন
  3. কার্নেল নির্বাচন করে অন্য সব চলমান নোটবুক বন্ধ করুন -> সব কার্নেল বন্ধ করুন …
  4. Note/নোটবুক/traffic_cones_driving/এ নেভিগেট করুন
  5. Data_collection_cones.ipynb নোটবুক খুলুন এবং অনুসরণ করুন

ধাপ 5: GPU মেশিনে নিউরাল নেটওয়ার্ক প্রশিক্ষণ দিন

এরপরে, আমরা সংগৃহীত ডেটা ব্যবহার করব GPU মেশিনে (হোস্ট) গভীর প্রশিক্ষণ মডেল অ্যালেক্সনেটকে প্রশিক্ষণের জন্য train_model_cones.ipynb দিয়ে।

উল্লেখ্য যে train_model_cones.ipynb এই টিউটোরিয়ালে একমাত্র Jupyter নোটবুক যা JetBot এ চালানো হয় না।

  1. PyTorch ইনস্টল এবং একটি Jupyter ল্যাব সার্ভার চলমান একটি GPU মেশিনের সাথে সংযোগ স্থাপন করুন
  2. Train_model_cones.ipynb নোটবুক এবং এই মেশিনে আপলোড করুন
  3. Data_collection_cones.ipynb নোটবুকে আপনার তৈরি করা dataset_cones.zip ফাইলটি আপলোড করুন এবং এই ডেটাসেটটি বের করুন। (এই ধাপের পরে আপনার ফাইল ব্রাউজারে dataset_cones নামে একটি ফোল্ডার দেখা উচিত।)
  4. Train_model_cones.ipynb নোটবুক খুলুন এবং অনুসরণ করুন। এই ধাপের শেষে, আপনি একটি মডেল তৈরি করবেন - ফাইল best_model_cones.pth যা তারপর লাইভ ডেমো চালানোর জন্য JetBot এ আপলোড করতে হবে।

ধাপ 6: জেটবটে লাইভ ডেমো চালান

জেটবটে লাইভ ডেমো চালান
জেটবটে লাইভ ডেমো চালান

এই চূড়ান্ত ধাপ হল জেটবটে মডেল best_model_cones.pth আপলোড করা এবং এটি চালানো।

  1. ইউএসবি ব্যাটারি প্যাক থেকে আপনার রোবটকে শক্তি দিন
  2. Http: //: jetbot-ip-address:: 8888 এ নেভিগেট করে আপনার রোবটের সাথে আবার সংযোগ করুন
  3. ডিফল্ট পাসওয়ার্ড জেটবট দিয়ে সাইন ইন করুন
  4. কার্নেল নির্বাচন করে অন্য সব চলমান নোটবুক বন্ধ করুন -> সব কার্নেল বন্ধ করুন …
  5. ~/নোটবুক/traffic_cones_driving এ নেভিগেট করুন
  6. Live_demo_cones.ipynb নোটবুকটি খুলুন এবং অনুসরণ করুন

সতর্কতা অবলম্বন করুন এবং জেটবটকে ঘুরে বেড়ানোর জন্য পর্যাপ্ত জায়গা দিন। বিভিন্ন শঙ্কু কনফিগারেশন ব্যবহার করে দেখুন এবং রোবটটি বিভিন্ন পরিবেশে, আলো ইত্যাদিতে কতটা ভাল কাজ করে তা দেখুন।

নোটবুকটিও ব্যাখ্যা করে যে কিভাবে মডেল দ্বারা পূর্বাভাস দেওয়া বিনামূল্যে/বাম/ডান/অবরুদ্ধ সম্ভাবনার সাথে রোবট মুভের ইতিহাস সংরক্ষণ করা যায় এবং কিভাবে দুটি FPV (ফার্স্ট পার্সন ভিউ) ভিডিও তৈরি করা যায় (1 fps এবং 15 fps হারে) জেটবট অ্যাকশন ডেটা। এগুলি ডিবাগিং, পিআইডি নিয়ামক টিউনিং এবং মডেল উন্নতির জন্য দরকারী।

মজা করুন এবং আপনার কোন প্রশ্ন থাকলে আমাকে জানান!:-)

Github এ কোড পাওয়া যায়

প্রস্তাবিত: