একটি সাধারণ স্ব-ড্রাইভিং আরসি গাড়িটির জন্য তদারকি করা শিখন বনাম রিইনফোর্সমেন্ট লার্নিং


12

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

তত্ত্বাবধানে শেখার পক্ষে:

  • লার্নিং অ্যালগরিদমের ইনপুটগুলি বেশ সোজা। গাড়িটি ভিডিও ফ্রেম টেনসর এবং সেন্সর দূরত্বের পাঠকে সামনের, পিছনে এবং কৌণিক চাকা স্থানচ্যুতিতে সংযুক্ত করতে শেখে
  • আমি কীভাবে চাই ঠিক তার চেয়ে বেশি গাড়ি চালাতে শিখতে পারি (অবশ্যই অতিরিক্ত চাপ ছাড়াই)
  • আমি এর আগে বেশ কয়েকটি তদারকি শেখার সমস্যাগুলি করেছি এবং এই পদ্ধতিটি আমার বিদ্যমান দক্ষতার সেটটি আরামে ফিট করে

তত্ত্বাবধানে শেখার কনস:

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

শক্তিবৃদ্ধি শেখার পক্ষে:

  • যদি আমি অন্য ব্যক্তির নিজের গাড়ি চালানোর গাড়িগুলির রেসিংয়ের নির্দিষ্ট উদ্দেশ্য নিয়ে আমার গাড়িটি তৈরি করি তবে আমার গাড়িটিকে "যত তাড়াতাড়ি সম্ভব সেখানে পৌঁছানোর" বলার শক্তিবৃদ্ধি শেখা স্বাভাবিক উপায় বলে মনে হচ্ছে
  • আমি পড়েছি যে কখনও কখনও আরএল স্বায়ত্তশাসিত ড্রোনগুলির জন্য ব্যবহৃত হয়, সুতরাং তাত্ত্বিকভাবে গাড়িগুলিতে এটি আরও সহজ হওয়া উচিত কারণ আমাকে উপরে এবং ডাউন সম্পর্কে চিন্তা করতে হবে না I

শক্তিবৃদ্ধি শেখার কনস:

  • আমার মনে হচ্ছে রিইনফোর্সমেন্ট শেখার জন্য প্রচুর অতিরিক্ত সেন্সর লাগবে, এবং সত্যই আমার পাদ-লম্বা গাড়ীর ভিতরে এতটা জায়গা নেই যে এটি বিবেচনা করে যে এটি একটি ব্যাটারি, রাস্পবেরি পাই এবং একটি ব্রেডবোর্ডও ফিট করতে পারে considering

  • গাড়িটি প্রথমে খুব অনিচ্ছাকৃতভাবে আচরণ করবে, যাতে এটি নিজেই ক্ষতিগ্রস্থ হয়। এটি শিখতেও অযৌক্তিক দীর্ঘ সময় নিতে পারে (যেমন, মাস বা বছর)

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

এটি আসলে কোনও উত্তর নয়, আমি একই প্রকল্পটি করছি, কিউ-লার্নিং (আরএল) সহ একটি স্ব-ড্রাইভিং গাড়ি (এখনও শুরুর দিকে), এবং আমি জিজ্ঞাসা করতে চাই যে আপনার প্রকল্পের কোডটি অনলাইনে যেখানে পাওয়া যায়, এটি আমার জন্য খুব সহায়ক হবে। এই মুহুর্তে আমি এই প্রকল্পটি অনুসরণ করছি: मध्यम.com / @harvitronix/… তিনি এনপি সহ আরএলকে গুগল ডিপ কিউ লার্নিং (আতারি পেপার) এর মতো ব্যবহার করেন, তবে তিনি তদারকি শেখা ব্যবহার করেন না। তার কোডটি এখানে পাওয়া যায়: github.com/harvitronix/reinfo
মাহমুদ হোসাম

@ মাহমুদহসাম আপনার কাছে কোডের জন্য কোনও বিকল্প অবস্থান আছে? আপনার দেওয়া লিঙ্কটি মারা গেছে।
হোমম্পুলাস রেটিকুলি

উত্তর:


12

আমি আপনাকে হাইব্রিড পদ্ধতির চেষ্টা করার পরামর্শ দিচ্ছি:

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

ডিপমাইন্ড এমনকি ম্যাথু লাইকেও টানলেন, তার উত্তেজনাপূর্ণ জিরাফ দাবা এনএন ফলাফলগুলি: মাদারবোর্ড.ওয়াইস.
com
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.