সুচিপত্র[লুকান][দেখান]
গভীর শিক্ষার সবচেয়ে সহজ কিন্তু সবচেয়ে কৌতূহলজনক ধারণাগুলির মধ্যে একটি হল বস্তু সনাক্তকরণ। মৌলিক ধারণা হল প্রতিটি আইটেমকে ধারাবাহিক শ্রেণীতে ভাগ করা যা তুলনামূলক বৈশিষ্ট্যগুলিকে উপস্থাপন করে এবং তারপরে এটির চারপাশে একটি বাক্স আঁকুন।
এই স্বতন্ত্র বৈশিষ্ট্যগুলি ফর্ম বা রঙের মতোই সহজ হতে পারে, যা আমাদের তাদের শ্রেণীবদ্ধ করার ক্ষমতাকে সহায়তা করে।
এর অ্যাপ্লিকেশন বস্তু সনাক্তকরণ চিকিৎসা বিজ্ঞান, স্বায়ত্তশাসিত ড্রাইভিং, প্রতিরক্ষা এবং সামরিক, পাবলিক অ্যাডমিনিস্ট্রেশন এবং কম্পিউটার ভিশন এবং ইমেজ প্রসেসিং-এ উল্লেখযোগ্য উন্নতির জন্য ধন্যবাদ অন্যান্য অনেক ক্ষেত্রে ব্যাপকভাবে নিযুক্ত।
এখানে আমাদের MMDetection আছে, Pytorch-এ নির্মিত একটি চমত্কার ওপেন-সোর্স অবজেক্ট ডিটেকশন টুলসেট। এই নিবন্ধে, আমরা MMDetection বিস্তারিতভাবে পরীক্ষা করব, এটির সাথে হাত মিলিয়ে দেখব, এর বৈশিষ্ট্যগুলি নিয়ে আলোচনা করব এবং আরও অনেক কিছু।
এমএমডিটেকশন?
সার্জারির এমএমডিটেকশন টুলবক্স একটি পাইথন কোডবেস হিসাবে বিশেষভাবে অবজেক্ট সনাক্তকরণ এবং ইনস্ট্যান্স সেগমেন্টেশন সম্পর্কিত সমস্যার জন্য তৈরি করা হয়েছিল।
PyTorch বাস্তবায়ন ব্যবহার করা হয়, এবং এটি একটি মডুলার ফ্যাশনে তৈরি করা হয়। অবজেক্ট রিকগনিশন এবং ইনস্ট্যান্স সেগমেন্টেশনের জন্য, কার্যকরী মডেলের বিস্তৃত পরিসর বিভিন্ন পদ্ধতিতে কম্পাইল করা হয়েছে।
এটি কার্যকর অনুমান এবং দ্রুত প্রশিক্ষণের অনুমতি দেয়। অন্যদিকে, টুলবক্সে 200 টিরও বেশি প্রাক-প্রশিক্ষিত নেটওয়ার্কের জন্য ওজন অন্তর্ভুক্ত করা হয়েছে, এটি বস্তু সনাক্তকরণ ক্ষেত্রে দ্রুত সমাধান করে।
বর্তমান কৌশলগুলিকে মানিয়ে নেওয়ার বা উপলব্ধ মডিউলগুলি ব্যবহার করে একটি নতুন আবিষ্কারক তৈরি করার ক্ষমতা সহ, MMDetection ফাংশন একটি বেঞ্চমার্ক হিসাবে কাজ করে।
টুলবক্সের মূল বৈশিষ্ট্য হল সাধারণ থেকে সরল, মডুলার অংশগুলি অন্তর্ভুক্ত করা অবজেক্ট সনাক্তকরণ ফ্রেমওয়ার্ক যা অনন্য পাইপলাইন বা অনন্য মডেল তৈরি করতে ব্যবহার করা যেতে পারে।
এই টুলকিটের বেঞ্চমার্কিং ক্ষমতা বিদ্যমান ফ্রেমওয়ার্কের উপরে একটি নতুন ডিটেক্টর ফ্রেমওয়ার্ক তৈরি করা এবং এর কর্মক্ষমতা তুলনা করা সহজ করে তোলে।
বৈশিষ্ট্য
- জনপ্রিয় এবং আধুনিক সনাক্তকরণ ফ্রেমওয়ার্ক, যেমন দ্রুত RCNN, মাস্ক RCNN, RetinaNet, ইত্যাদি, সরাসরি টুলকিট দ্বারা সমর্থিত।
- ফাইন-টিউনিং (বা নতুন করে প্রশিক্ষণ) এর জন্য 360+ প্রাক-প্রশিক্ষিত মডেলের ব্যবহার।
- COCO, Cityscapes, LVIS, এবং PASCAL VOC সহ সুপরিচিত দৃষ্টি ডেটাসেটের জন্য।
- GPU-তে, সমস্ত মৌলিক bbox এবং মুখোশ অপারেশন চালানো হয়। অন্যান্য কোডবেস, যেমন Detectron2, maskrcnn-বেঞ্চমার্ক, এবং SimpleDet, এর চেয়ে দ্রুত হারে বা এর সাথে সমানভাবে প্রশিক্ষিত হতে পারে।
- গবেষকরা ভেঙে পড়েন অবজেক্ট সনাক্তকরণ ফ্রেমওয়ার্ককে বেশ কয়েকটি মডিউলে বিভক্ত করে, যা পরে একটি অনন্য বস্তু সনাক্তকরণ সিস্টেম তৈরি করতে একত্রিত হতে পারে।
এমএমডিটেকশন আর্কিটেকচার
MMDetection একটি জেনেরিক ডিজাইন নির্দিষ্ট করে যা যেকোনো মডেলে প্রয়োগ করা যেতে পারে কারণ এটি একটি টুলবক্স যা বিভিন্ন ধরনের পূর্ব-নির্মিত মডেল রয়েছে, যার প্রত্যেকটির নিজস্ব আর্কিটেকচার রয়েছে। নিম্নলিখিত উপাদানগুলি এই সামগ্রিক স্থাপত্য তৈরি করে:
- দাঁড়া: ব্যাকবোন, যেমন একটি ResNet-50 চূড়ান্তভাবে সংযুক্ত স্তর ছাড়াই, এমন একটি উপাদান যা একটি চিত্রকে বৈশিষ্ট্য মানচিত্রে রূপান্তর করে।
- ঘাড়: ঘাড় হল সেই অংশ যা মেরুদণ্ডকে মাথার সাথে সংযুক্ত করে। ব্যাকবোনের কাঁচা বৈশিষ্ট্য মানচিত্রে, এটি নির্দিষ্ট সমন্বয় বা পুনর্বিন্যাস করে। বৈশিষ্ট্য পিরামিড নেটওয়ার্ক হল একটি উদাহরণ (FPN)।
- ঘন মাথা (অ্যাঙ্করহেড/অ্যাঙ্করফ্রিহেড): এটি এমন একটি উপাদান যা বৈশিষ্ট্য মানচিত্রের ঘন এলাকায় কাজ করে, যেমন অ্যাঙ্করহেড এবং অ্যাঙ্করফ্রিহেড, যেমন RPNHead, RetinaHead এবং FCOSHead।
- RoIExtractor: RoIPooling-এর মতো অপারেটরগুলির ব্যবহারের সাথে, এটি এমন একটি বিভাগ যা RoIwise বৈশিষ্ট্যগুলিকে একক বা বৈশিষ্ট্য মানচিত্রের একটি সংগ্রহ থেকে টেনে আনে৷ SingleRoIExtractor নমুনা ফিচার পিরামিডের মিলিত স্তর থেকে RoI বৈশিষ্ট্যগুলি বের করে।
- RoIHead (BBoxHead/MaskHead): এটি সিস্টেমের একটি অংশ যা RoI বৈশিষ্ট্যগুলিকে একটি ইনপুট হিসাবে ব্যবহার করে এবং RoI-ভিত্তিক টাস্ক-নির্দিষ্ট ভবিষ্যদ্বাণী তৈরি করে, যেমন বাউন্ডিং বক্স শ্রেণীবিভাগ/রিগ্রেশন এবং মাস্ক পূর্বাভাস।
একক-পর্যায় এবং দ্বি-পর্যায় ডিটেক্টরের নির্মাণ পূর্বোক্ত ধারণাগুলি ব্যবহার করে চিত্রিত করা হয়েছে। আমরা কেবলমাত্র কয়েকটি নতুন অংশ তৈরি করে এবং কিছু বিদ্যমান অংশগুলিকে একত্রিত করে আমাদের নিজস্ব পদ্ধতিগুলি বিকাশ করতে পারি।
MMDetection-এ অন্তর্ভুক্ত মডেলের তালিকা
MMDetection বেশ কয়েকটি সুপরিচিত মডেল এবং টাস্ক-ওরিয়েন্টেড মডিউলগুলির জন্য শীর্ষস্থানীয় কোডবেস সরবরাহ করে। যে মডেলগুলি আগে তৈরি করা হয়েছে এবং অভিযোজনযোগ্য পদ্ধতি যা MMDetection টুলবক্সের সাথে ব্যবহার করা যেতে পারে নীচে তালিকাভুক্ত করা হয়েছে। আরও মডেল এবং পদ্ধতি যুক্ত হওয়ার সাথে সাথে তালিকাটি বাড়তে থাকে।
- দ্রুত আর-সিএনএন
- দ্রুত আর-সিএনএন
- মাস্ক আর-সিএনএন
- রেটিনানেট
- DCN
- DCNv2
- ক্যাসকেড আর-সিএনএন
- M2Det
- জিএইচএম
- ScratchDet
- ডাবল-হেড আর-সিএনএন
- গ্রিড আর-সিএনএন
- FSAF
- Libra R-CNN
- জিসিনেট
- এইচআরনেট
- মাস্ক স্কোরিং আর-সিএনএন
- FCOS
- এসএসডি
- আর-এফসিএন
- মিশ্র যথার্থ প্রশিক্ষণ
- ওজন মানককরণ
- হাইব্রিড টাস্ক ক্যাসকেড
- গাইডেড অ্যাঙ্করিং
- সাধারণ মনোযোগ
MMDetection ব্যবহার করে অবজেক্ট ডিটেকশন মডেল তৈরি করা
এই টিউটোরিয়ালে, আমরা হব গুগল কোলাব নোটবুক কারণ এটি সেট করা এবং ব্যবহার করা সহজ।
স্থাপন
আমাদের প্রয়োজনীয় সবকিছু ইনস্টল করার জন্য, আমরা প্রথমে প্রয়োজনীয় লাইব্রেরিগুলি ইনস্টল করব এবং MMdetection GitHub প্রকল্পটি ক্লোন করব।
এনভ আমদানি করা হচ্ছে
আমাদের প্রকল্পের পরিবেশ এখন সংগ্রহস্থল থেকে আমদানি করা হবে।
লাইব্রেরি এবং MM সনাক্তকরণ আমদানি করা হচ্ছে
আমরা এখন অবশ্যই MM সনাক্তকরণ সহ প্রয়োজনীয় লাইব্রেরিগুলি আমদানি করব৷
প্রাক-প্রশিক্ষিত চেকপয়েন্ট ডাউনলোড করুন
MMdetection থেকে প্রাক-প্রশিক্ষিত মডেল চেকপয়েন্টগুলি এখন আরও সমন্বয় এবং অনুমানের জন্য ডাউনলোড করা উচিত।
বিল্ডিং মডেল
আমরা এখন মডেলটি তৈরি করব এবং ডেটাসেটে চেকপয়েন্ট প্রয়োগ করব।
আবিষ্কারক অনুমান
এখন মডেলটি সঠিকভাবে তৈরি এবং লোড করা হয়েছে, আসুন এটি কতটা চমৎকার তা পরীক্ষা করে দেখি। আমরা MMDetection-এর উচ্চ-স্তরের API ইনফারেন্স ডিটেক্টর ব্যবহার করি। এই APIটি অনুমান প্রক্রিয়াটিকে সহজ করার জন্য ডিজাইন করা হয়েছিল।
ফল
এর ফলাফল এক নজর আছে.
উপসংহার
উপসংহারে, MMDetection টুলবক্স সম্প্রতি প্রকাশিত কোডবেস যেমন SimpleDet, Detectron, এবং Maskrcnn-বেঞ্চমার্ককে ছাড়িয়ে গেছে। একটি বড় মডেল সংগ্রহ সহ,
MMDetection এখন অত্যাধুনিক প্রযুক্তি। MMDetection দক্ষতা এবং কর্মক্ষমতার দিক থেকে অন্য সমস্ত কোডবেসকে ছাড়িয়ে যায়।
MMdetection সম্পর্কে সবচেয়ে সুন্দর জিনিসগুলির মধ্যে একটি হল আপনি এখন শুধুমাত্র একটি ভিন্ন কনফিগারেশন ফাইলের দিকে নির্দেশ করতে পারেন, একটি ভিন্ন চেকপয়েন্ট ডাউনলোড করতে পারেন এবং আপনি যদি মডেলগুলি পরিবর্তন করতে চান তাহলে একই কোড চালাতে পারেন৷
আমি তাদের দেখার পরামর্শ দিই নির্দেশাবলী আপনি যদি কোন পর্যায়ে সমস্যায় পড়েন বা সেগুলির কয়েকটিকে ভিন্নভাবে সম্পাদন করতে চান।
নির্দেশিকা সমন্ধে মতামত দিন