আমার নিউরাল নেটওয়ার্ক এমনকি ইউক্লিডিয়ান দূরত্ব শিখতে পারে না


9

তাই আমি নিজেকে স্নায়বিক নেটওয়ার্কগুলি শেখানোর চেষ্টা করছি (বিড়ালের ছবি শ্রেণিবদ্ধ না করে রিগ্রেশন অ্যাপ্লিকেশনগুলির জন্য)।

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

সুতরাং আমি দেখতে চেয়েছিলাম আমি কোনও যুক্ত abs()করতে পারি এবং এটি প্রশস্ততা বর্ণালী শিখতে পারি কিনা । প্রথমে আমি লুকিয়ে থাকা স্তরে এটির জন্য কতগুলি নোডের প্রয়োজন হবে তা ভেবেছিলাম এবং বুঝতে পেরেছিলাম যে 3 টি আরএলইউ একটি ক্রুড অনুমানের জন্য যথেষ্ট abs(x+jy) = sqrt(x² + y²), তাই আমি নিজেই সেই ক্রিয়াকলাপটি নিঃসঙ্গ জটিল সংখ্যায় পরীক্ষা করেছিলাম (2 ইনপুটস Re 3 রেলু নোডের গোপন স্তর → 1 আউটপুট)। মাঝে মাঝে এটি কাজ করে:

3 রিলিজ ইউক্লিডিয়ান দূরত্বকে ইনভার্টেড হেক্সাগোনাল পিরামিড হিসাবে প্রয়োগ করে

তবে বেশিরভাগ সময় আমি চেষ্টা করে দেখি, এটি স্থানীয় সর্বনিম্নে আটকে যায় এবং সঠিক আকারটি পেতে ব্যর্থ হয়:

উপত্যকার আকৃতির নেটওয়ার্ক গঠন 3 রিলিজ ইউনিয়ন

ক্ষতি বনাম যুগ

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


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

@ সাইকোরাক্স এগুলি একই জিনিসটির পুনরাবৃত্তি ট্রায়াল। কখনও কখনও এটি একটি ষড়ভুজ পিরামিড সমাধান সন্ধান করে, তবে সাধারণত এটি হয় না।
এন্ডোলিথ

অ্যাক্টিভেশন ফাংশন হিসাবে আপনি দুটি লুকানো স্তর এবং একটি তান দিয়ে চেষ্টা করেছেন?
কেতন

@ কেতনন না, কেন? আমি এখানে একটি সহজ প্রকরণ পোস্ট করেছি: stats.stackexchange.com/q/379884/11633
এন্ডোলিথ

আপনি এই এক দেখতে চাইবেন। stats.stackexchange.com/q/375655/27556 । তবে আপনি কী ব্যাখ্যা করতে পারেন যে আপনি কেবল 3 টি রিলাসের প্রয়োজন কেন? 'প্রাকৃতিক' পচন হ'ল রিলাসের সাথে স্কোয়ারিং আনুমানিককরণের জন্য একটি গোপন স্তর এবং বর্গমূল করতে অন্য স্তরটি হবে - মূলত রিলাসটি টুকরোজ লিনিয়ার আনুমানিকতা করছে।
seanv507

উত্তর:


6

আউটপুটটি দৃ strongly়ভাবে প্রস্তাব দেয় যে আপনার এক বা একাধিক নিউরন মারা গেছে (বা সম্ভবত আপনার দুটি নিউরনের ওজনের হাইপারপ্লেন একত্রী হয়ে গেছে)। আপনি দেখতে পাচ্ছেন যে 3 টি রিলু'র সাহায্যে আপনি আরও যুক্তিসঙ্গত সমাধানে রূপান্তর করলে আপনি মাঝখানে 3 টি ছায়াময় বিভক্ত হন। আপনার নমুনার বেশিরভাগ অংশের জন্য এটি মৃত অবস্থায় রয়েছে কিনা তা দেখার জন্য প্রতিটি নিউরনের আউটপুট মানগুলি পরীক্ষা করে আপনি সহজেই যাচাই করতে পারেন। বিকল্পভাবে, আপনি দুটি নিউরন একই জোড়া ওজনে পতিত হয় কিনা তা দেখতে তাদের নিজ নিজ নিউরনের দ্বারা গোষ্ঠীযুক্ত সমস্ত 2x3 = 6 নিউরন ওজন প্লট করতে পারেন।

আমি সন্দেহ করি যে এর সম্ভাব্য কারণ হ'ল কখন x+iy একটি স্থানাঙ্কের দিকে তির্যক করা হয়, যেমন xy, সেক্ষেত্রে আপনি সেই পরিচয়টি পুনরুত্পাদন করার চেষ্টা করছেন abs(x+iy)x। এর প্রতিকারের জন্য এখানে আপনি করতে পারেন এমন অনেক কিছুই নেই। একটি বিকল্প হ'ল আপনার চেষ্টা করার সাথে সাথে আরও নিউরন যুক্ত করা। দ্বিতীয় বিকল্পটি হ'ল সিগময়েডের মতো একটি অবিচ্ছিন্ন অ্যাক্টিভেশন চেষ্টা করা বা কোনও ঘৃণ্যর মতো অবিরাম কিছু। আপনি ড্রপআউটও চেষ্টা করে দেখতে পারেন (10% সম্ভাব্যতা সহ)। আপনি কেরাসে নিয়মিত ড্রপআউট বাস্তবায়ন ব্যবহার করতে পারেন যা আপনার 3 টি নিউরোন বাদ পড়ে যখন পরিস্থিতি উপেক্ষা করার জন্য যথেষ্ট স্মার্ট।


1
+1, প্রায় অবশ্যই এটি। আপনি যখন খুব কম সংখ্যক ওজন মরা নিউরনগুলি প্রায় সবসময় খেলায় আসেন সাথে রিলু ব্যবহার করেন।
kbrose

1
এটি আরএলইউর ক্ষেত্রে একটি প্রশংসনীয় অনুমান। তবে ওপি লিখেছেন যে তারা কয়েকটি আলাদা রিলু বৈকল্পের চেষ্টা করেছে - মৃত নিউরনগুলি কি ইএলইউ বা লিকি রেলু বা PReLU এর মতো রূপগুলিতে ঘটে?
সাইকোরাক্স মনিকাকে

3 shadowy splits in the center when you converge to the more reasonable solution.হ্যাঁ, এটাই আমার অর্থের অপরিশোধিত অনুমান; একটি উল্টানো ষড়ভুজ পিরামিড id or perhaps something unbounded like an exponential আমি এলু এবং সেলু চেষ্টা করেছিলাম, যা এর চেয়ে ভাল কাজ করে না। two neurons collapse to the same pair of weightsআহ, আমি এটা ভেবে দেখিনি; আমি কেবল ধরে নিয়েছিলাম যে তারা মারা গেছে।
এন্ডোলিথ

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

1
@endolith ড্রপআউট সুস্পষ্টভাবে স্বাধীন নিউরনগুলি তৈরির জন্য ডিজাইন করা হয়েছে। ELUs কখনই "মরা" না, তবে তাদের বাম দিকে গ্রেডিয়েন্ট বিলুপ্ত হয়।
সাইকোরাক্স মনিকাকে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.