ক্রিজেভস্কির '12 সিএনএন কীভাবে প্রথম স্তরে 253,440 নিউরন পায়?


24

ইন অ্যালেক্স Krizhevsky, এট অল। গভীর রূপান্তরমূলক নিউরাল নেটওয়ার্কগুলির সাথে চিত্রের শ্রেণিবিন্যাস তারা প্রতিটি স্তরের নিউরনের সংখ্যা গণনা করে (নীচের চিত্রটি দেখুন)।

নেটওয়ার্কের ইনপুটটি 150,528-মাত্রিক, এবং নেটওয়ার্কের অবশিষ্ট স্তরগুলিতে নিউরনের সংখ্যা 253,440–186,624–64,896–64,896–43,264– 4096–4096-1000 দ্বারা দেওয়া হয়েছে।

সিএনএন

একটি 3 ডি ভিউ

প্রথমটির পরে সমস্ত স্তরগুলির জন্য নিউরনের সংখ্যা পরিষ্কার। নিউরনগুলি গণনা করার একটি সহজ উপায় হ'ল সেই স্তরটির তিনটি মাত্রা ( planes X width X height) কেবল গুন করা :

  • স্তর 2: 27x27x128 * 2 = 186,624
  • স্তর 3: 13x13x192 * 2 = 64,896
  • প্রভৃতি

তবে, প্রথম স্তরটি দেখছেন:

  • স্তর 1: 55x55x48 * 2 = 290400

লক্ষ্য করুন যে এটি কাগজে উল্লিখিত নয় 253,440 !

আউটপুট আকার গণনা করুন

একটি কনভ্যুশনের আউটপুট টেনসর গণনা করার অন্যান্য উপায় হ'ল:

যদি ইনপুট চিত্রটি 3 ডি টেনসর হয় nInputPlane x height x widthতবে আউটপুট চিত্রের আকারটি nOutputPlane x owidth x oheightকোথায় থাকবে

owidth = (width - kW) / dW + 1

oheight = (height - kH) / dH + 1

( টর্চ স্প্যাটিয়াল কনভলিউশন ডকুমেন্টেশন থেকে )

ইনপুট চিত্রটি হ'ল:

  • nInputPlane = 3
  • height = 224
  • width = 224

এবং কনভলিউশন স্তরটি হ'ল:

  • nOutputPlane = 96
  • kW = 11
  • kH = 11
  • dW = 4
  • dW = 4

(যেমন কার্নেলের আকার 11, স্ট্রাইড 4)

আমরা যে নম্বরগুলি পাই তা প্লাগিং:

owidth = (224 - 11) / 4 + 1 = 54 oheight = (224 - 11) / 4 + 1 = 54

সুতরাং আমরা 55x55কাগজের সাথে মেলে আমাদের প্রয়োজনীয় মাত্রাগুলির একটি সংক্ষিপ্ত তারা প্যাডিং হতে পারে (তবে cuda-convnet2মডেল স্পষ্টভাবে প্যাডিং 0 তে সেট করে)

যদি আমরা 54আকারের মাত্রা গ্রহণ করি তবে আমরা 96x54x54 = 279,936নিউরন পাই - এখনও অনেক বেশি।

তাই আমার প্রশ্ন হল এটি:

তারা প্রথম সমঝোতার স্তরটির জন্য 253,440 নিউরন কীভাবে পান? আমি কী মিস করছি?


আপনি কি কখনও এই সমাধান করেছেন? কেবল আপনার গণনাগুলির সাথে পেডেন্টিক হওয়ার জন্য: ওউথ এবং উচ্চতা প্রকৃতপক্ষে 54.25 হবে। আমি এটি বের করার চেষ্টা করেছি এবং প্রথম পদক্ষেপ হিসাবে অনুমিত 253440 নিউরনগুলি 96 ফিল্টারগুলির মধ্যে বিভক্ত করেছি, যা ফিল্টার প্রতি 2640 নিউরন দেয়। এটি কোনও বর্গ সংখ্যা নয়। সুতরাং হয় আমাদের দুজনেরই এখানে একটি ভুল বোঝাবুঝি হয়, অথবা লেখকগণের দ্বারা কোনও ভুল হতে পারে ... আপনি কি তাদের সাথে যোগাযোগ করেছেন?
Anderas

আমার সাথে একই, এটি আমাকে খুব বিভ্রান্ত করছে। বিটিডব্লিউ সত্য আছে ইনপুটটি 224x224x3? আমার ধারণা এটি 227x227x3 হওয়া উচিত। আমাদের যদি দেখতে পাওয়া যায় যে আমাদের 227x227 রয়েছে, প্রথম বাম দিকে 5 টি এবং সর্বশেষ ডানদিকে 5 টি সেল 11x11 আকারের কার্নেল কনভ্যুশনের কেন্দ্র হতে পারে না। সুতরাং কার্নেলের প্রথম কেন্দ্রটি সেল (6,6) এবং প্রথম সারিতে কেন্দ্রের কার্নেলের শেষটি সেল (6x222) হয়। স্ট্রাইড -4 দিয়ে আমরা সারি-ষষ্ঠে কার্নেলের কেন্দ্র পেয়ে যাব: কলামে সেল: 6,10,14, ..., 222 এবং কার্নেল-কে কেন্দ্রের জন্য সহজ সূত্রটি কলাম = 6+ (কে-তে রয়েছে) -1) * 4 সুতরাং 222 কলামটি কে-থে সেন্টার = (222-6) / 4 +1 = 55.

4
মনে রাখবেন যে 48 * 48 * 55 * 2 = 253440, সুতরাং প্রথম স্তরের নিউরনের সংখ্যা গণনা করার সময় তাদের টাইপো থাকতে পারে (55 এর পরিবর্তে 48 দ্বারা গুণিত)।
tsiki

সম্পর্কিত: অঞ্চল 51.stackexchange.com/proposals/93481/…
কেনারব

@ ফায়ারব্যাগ এটি [রেফারেন্স] ট্যাগটির একটি আকর্ষণীয় ব্যবহার। আমি ভেবেছিলাম আমরা এটি কেবলমাত্র এমন প্রশ্নের জন্য ব্যবহার করি যা উল্লেখ জিজ্ঞাসা করে । তবে সম্ভবত আমি ভুল ছিল। আপনি কি এটি অন্যভাবে ব্যবহার করেন?
অ্যামিবা বলছেন মনিকাকে

উত্তর:


8

এনএন-তে স্ট্যানফোর্ডস নোট থেকে:

বাস্তব বিশ্বের উদাহরণ। ক্রিজেভস্কি এট আল। 2012 সালে চিত্রনাট চ্যালেঞ্জ জিতেছে এমন আর্কিটেকচার আকারের চিত্রগুলি [227x227x3] গ্রহণ করেছে। প্রথম কনভোলিউশনাল স্তরটিতে, এটি গ্রহনযোগ্য ক্ষেত্রের আকার F = 11, স্ট্রাইড এস = 4 এবং কোনও শূন্য প্যাডিং পি = 0 সহ নিউরন ব্যবহার করেছিল। যেহেতু (227 - 11) / 4 + 1 = 55, এবং যেহেতু কনভ স্তরটির গভীরতা কে = 96 ছিল, সুতরাং কনভ স্তর আউটপুট ভলিউমের আকার [55x55x96] ছিল। এই ভলিউমের 55 * 55 * 96 নিউরনের প্রত্যেকটি ইনপুট ভলিউমে আকারের [11x11x3] অঞ্চলে সংযুক্ত ছিল। তদুপরি, প্রতিটি গভীরতার কলামে সমস্ত 96 নিউরন ইনপুটটির একই [11x11x3] অঞ্চলে সংযুক্ত থাকে তবে অবশ্যই বিভিন্ন ওজন সহ। মজাদার বিষয়টিকে বাদ দিয়ে, যদি আপনি প্রকৃত কাগজটি পড়েন তবে দাবি করা হয়েছে যে ইনপুট চিত্রগুলি 224x224 ছিল, যা অবশ্যই ভুল কারণ কারণ (224 - 11) / 4 + 1 পুরোপুরি পূর্ণসংখ্যা নয়। এটি কনভনেটসের ইতিহাসে অনেক লোককে বিভ্রান্ত করেছে এবং কী ঘটেছিল সে সম্পর্কে খুব কমই জানা যায়। আমার নিজের সেরা অনুমান যে অ্যালেক্স তিনটি অতিরিক্ত পিক্সেলের জিরো-প্যাডিং ব্যবহার করেছিলেন যা তিনি কাগজে উল্লেখ করেন না।

রেফ: http://cs231n.github.io/convolutional- নেট ওয়ার্কস /

এই নোটগুলি স্ট্যানফোর্ডের সিএস ক্লাস CS231n সহ: ভিজ্যুয়াল স্বীকৃতির জন্য কনভোলিউশনাল নিউরাল নেটওয়ার্কসমূহ। প্রশ্ন / উদ্বেগ / বাগ কার্যকারিতা সম্পর্কিত জাস্টিন জনসন সম্পর্কিত বা বাগের রিপোর্টের জন্য, অথবা কোর্স নোট সম্পর্কিত আন্ড্রেজ কার্পাতির সাথে যোগাযোগ করুন


এই নোটগুলির লেখককে নাম দিয়ে কি creditণ দেওয়া সম্ভব?
সিলভারফিশ 21

লেখকরা নোটগুলিতে স্বতঃস্ফূর্তভাবে স্ব-রেফারেন্স হয়েছেন, দেখুন সিএস 231n.github.io
বেকন

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

0

এই কাগজটি সত্যিই বিভ্রান্তিকর। প্রথমত, চিত্রগুলির ইনপুট আকারটি ভুল হয় 224x224 55 এর আউটপুট দেয় না Those এই নিউরনগুলি কেবল একটিতে গ্রুপযুক্ত পিক্সেলের মতো হয়, সুতরাং আউটপুটটি এলোমেলো মানগুলির (নিউরনের মান) 2D চিত্র। সুতরাং মূলত নিউরনের সংখ্যা = প্রস্থের দৈর্ঘ্য-দৈর্ঘ্য, এটি বের করার মতো কোনও গোপন রহস্য নেই।

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