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

ধারণাটি যে আমরা যদি যথেষ্ট বড় হয়ে আমাদের নতুন সর্বশেষ কনফার লেয়ারটি চয়ন করি তবে এই স্থানীয়করণ প্রভাবটি আমাদের ইনপুট চিত্র আকারের আকারে বাড়বে।
সাধারণ সিএনএন থেকে FCN রূপান্তর
শ্রেণীকরণের জন্য ব্যবহৃত একটি সাধারণ সিএনএন রূপান্তরিত করা হল, এখানে: অ্যালেক্সনেটকে বিভাজন জন্য ব্যবহৃত একটি এফসিএন থেকে।
শুধু আমাদের মনে করিয়ে দিতে এইভাবে অ্যালেক্সেট কেমন দেখাচ্ছে:

নীচে AlexNet এ প্রতিটি স্তরের জন্য পরামিতি দেখায়

অ্যালেক্সেটে ইনপুটগুলি ২২4x224 হতে স্থির করা হয়েছে, তাই সমস্ত পুলিং প্রভাব 224x224 থেকে 55x55, 27x27, 13x13, এবং অবশেষে FC স্তরগুলিতে একটিও সারি ভেক্টর থেকে চিত্রটিকে স্কেল করবে।

এখন রূপান্তর করতে প্রয়োজনীয় পদক্ষেপ তাকান।
1) আমরা শ্রেণীবিভাগ সঙ্গে একটি স্বাভাবিক সিএনএন দিয়ে শুরু


2) দ্বিতীয় ধাপে সমস্ত FC স্তরকে কনভোলিউশন লেয়ার 1x1 রূপান্তর করা হয়, এই মুহুর্তে ওজনগুলিও পরিবর্তন করতে হবে না। (এটি ইতিমধ্যে একটি সম্পূর্ণ convolutional স্নায়ু নেটওয়ার্ক)। এফসিএন নেটওয়ার্কগুলির চমৎকার সম্পত্তি এখন আমরা যেকোনো চিত্র আকার ব্যবহার করতে পারি।

এখানে লক্ষ্য করুন যে একটি এফসিএন দিয়ে আমরা একটি ভিন্ন আকার এইচ এক্স এন ব্যবহার করতে পারি। চিত্রটি দেখায় কিভাবে একটি ভিন্ন আকার প্রদর্শিত হবে।

3) চূড়ান্ত পদক্ষেপ ইমেজ আকার সম্পর্কিত অর্থপূর্ণ কিছু অ্যাক্টিভেশন পজিশন পুনরুদ্ধারের জন্য একটি "ডিকনভ বা ট্রান্সজোড কনভোলিউশন" স্তর ব্যবহার করা। কল্পনা করুন যে আমরা ঠিক একই আকারের অ্যাক্টিভেশন মাপকে স্কেল করছি।
এই শেষ "upsampling" স্তর এছাড়াও কিছু lernable পরামিতি আছে।
এই শেষ "upsampling" স্তর এছাড়াও কিছু lernable পরামিতি আছে।

এখন এই কাঠামোর সাথে আমাদের কিছু "গ্রাউন্ড সত্য" খুঁজে বের করতে হবে এবং শেষ শিক্ষার শেষ হতে হবে, একটি প্রাক ট্র্যাডিন্ড নেটওয়ার্ক থেকে শুরু করা হয় যেমন: ইম্যাগনেট।
এই পদ্ধতির সমস্যাটি হ'ল আমরা এই কাজটি করে কিছু সমাধান হারাতে পারি কারণ অ্যাক্টিভেশনগুলি অনেকগুলি পদক্ষেপে কমিয়ে আনা হয়েছে।

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


নীচে আমরা এই "এড়িয়ে যাওয়া" প্রক্রিয়ার প্রভাবগুলি দেখান, লক্ষ্য করুন যে বিভাজনগুলির রেজোলিউশন কিছু "skips" এর পরে কীভাবে উন্নতি করে


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

এটির খারাপ নাম রয়েছে কারণ আপসিং এগিয়ে প্রচারণা হচ্ছে কনভোলিউশন ব্যাকপোপ্যাগেশন এবং আপাম্পলিং ব্যাকপোপ্যাগেশন হল কনভোলিউশন ফরওয়ার্ড প্রচার।
এছাড়াও ক্যাফের সোর্স কোডে এটি ভুলভাবে "deconvolution" বলা হয়
চরম বিভাজন
আরেকটি জিনিস যা আমরা সেগুলিকে "এড়িয়ে যাওয়া" পদক্ষেপগুলি এড়ানোর জন্য এবং আরও ভাল বিভাগ দেওয়ার জন্য করতে পারি। Deconvnet এছাড়াও বিভিন্ন মাপ বস্তুর জন্য ভাল প্রতিক্রিয়া আছে।

এই আর্কিটেকচারটিকে "ডিকনভনেট" বলা হয় যা মূলত অন্য নেটওয়ার্ক তবে এখন সমস্ত কনভোলিউশন এবং পুলিং লেয়ার বিপরীত। আপনি এই ভারী হিসাবে সন্দেহ করতে পারে, এটি একটি TitanX প্রশিক্ষণের জন্য 6 দিন লাগে। কিন্তু ফলাফল সত্যিই ভাল।
আরেকটি সমস্যা হল যে ট্রেনিং 2 পর্যায়ে তৈরি করা হয়।
আরেকটি সমস্যা হল যে ট্রেনিং 2 পর্যায়ে তৈরি করা হয়।
দৃশ্যটিতে ছোট বস্তু থাকলে Deconvnets FCN এর চেয়েও কম।
Deconvolution নেটওয়ার্ক ইনপুট হিসাবে একই আকার সঙ্গে একটি সম্ভাবনা মানচিত্র আউটপুট।

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



প্রশিক্ষণ
আমার জন্য deconvnets সম্পর্কে প্রধান সমস্যা, তারা 2-পর্যায়ে প্রশিক্ষিত করা প্রয়োজন
- সহজ উদাহরণ সঙ্গে প্রথম পর্যায়ে (একক বস্তু কেন্দ্রীয়)
- কঠিন উদাহরণ সঙ্গে সূক্ষ্ম সুর।