নিউরাল নেটওয়ার্ক ওজনের রূপান্তর


10

আমি এমন পরিস্থিতিতে পৌঁছেছি যেখানে আমার নিউরাল নেটওয়ার্কের ওজন 500 পুনরাবৃত্তির পরেও রূপান্তরিত হচ্ছে না। আমার নিউরাল নেটওয়ার্কে 1 ইনপুট স্তর, 1 লুকানো স্তর এবং 1 আউটপুট স্তর রয়েছে। এগুলি ইনপুট স্তরের প্রায় 230 নোড, লুকানো স্তরে 9 নোড এবং আউটপুট স্তরের 1 আউটপুট নোড। আমি জানতে চেয়েছিলাম, যদি আমি শীঘ্রই বন্ধ করার শর্তটি করি (তবে 100 টি পুনরাবৃত্তির পরে আমার নিউরাল নেটওয়ার্ক প্রশিক্ষণ বন্ধ করুন বলুন)। মডেলটির উপর এর কী প্রভাব ফেলবে?

এছাড়াও জানতে চেয়েছিলেন যে যদি নিউরাল নেটওয়ার্কের ওজনগুলি রূপান্তর না করে তবে কাজের শিল্পের মান কী?


আপনার ডেটা কি যথাযথভাবে স্বাভাবিক করা হয়েছে? এটি সাধারণত এ জাতীয় আচরণের কারণ।
সাশকেলো

সাধারণত লুকানো স্তরের নিউরনের সংখ্যা আপনার ইনপুট স্তরের চেয়ে একই আকারের হওয়া উচিত। আমি মনে করি 9 টি নিউরন খুব ছোট is আপনি কি 200-300 নিউরন বাড়ানোর চেষ্টা করেছিলেন?
এই

@ সাশকেলো হ্যাঁ ডেটা সঠিকভাবে স্বাভাবিক করা হয়েছে।
লার্নার

1
@ জুমাপা লুকানো স্তরে 9 টি নোড থাকার কোনও কারণ নেই। আমরা অনুভব করেছি যে লুকানো স্তরে আরও নোড থাকায় নেটওয়ার্কের জটিলতা বাড়বে এবং উপাত্তকে উপভোগ করবে।
শিক্ষানবিশ

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

উত্তর:


13

জিজ্ঞাসা করার জন্য অনেকগুলি প্রশ্ন রয়েছে:

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

মহামারী হিসাবে আপনি কি দিতে পারেন? আপনি কি আমাদের তথ্যের প্রকৃতি সম্পর্কে কিছু বলতে পারেন?

আপনি নিউরাল নেটওয়ার্কগুলির গ্রেডিয়েন্ট বুস্টড ট্রি তৈরি করতে পারেন।

আপনি জিজ্ঞাসা করেছিলেন আপনি তাড়াতাড়ি থামলে কী হয়?

আপনি নিজে চেষ্টা করতে পারেন 300x চালান যেখানে আপনি এলোমেলোভাবে প্রাথমিক ওজন দিয়ে শুরু করেন, এবং তারপরে একটি নির্দিষ্ট সংখ্যক পুনরাবৃত্তি থামিয়ে 100 বলুন that সেই সময়ে আপনার জমায়েত ত্রুটি, আপনার প্রশিক্ষণ-সাবসেট ত্রুটি এবং আপনার পরীক্ষার সেট ত্রুটি গণনা করুন। পদ্ধতি পুনরাবৃত্তি করুন। ত্রুটিটি কী তা বলার জন্য আপনার কাছে 300 মান রয়েছে তার পরে, 100 টি শিখার পুনরাবৃত্তি দেওয়া আপনার ত্রুটি বিতরণ সম্পর্কে একটি ধারণা পেতে পারেন। আপনি যদি পছন্দ করেন তবে আপনি সেই ডিস্ট্রিবিউশনটি শিখার কয়েকটি অন্যান্য মানের নমুনা করতে পারেন। আমি 200, 500 এবং 1000 পুনরাবৃত্তির পরামর্শ দিই। এটি আপনাকে কীভাবে আপনার এসএনআর সময়ের সাথে পরিবর্তন করতে পারে তা ধারণা দেবে। এসএনআর বনাম পুনরাবৃত্তি গণনার একটি প্লট আপনাকে "ক্লিফস" বা "যথেষ্ট ভাল" সম্পর্কে ধারণা দিতে পারে। কখনও কখনও এমন সমস্যা রয়েছে যেখানে ত্রুটি ধসে পড়ে। কখনও কখনও ত্রুটিটি এই সময়ে গ্রহণযোগ্য হয়।

আপনার সিস্টেমে ধারাবাহিকভাবে 100 টি পুনরাবৃত্তির মধ্যে রূপান্তর করতে এটি "তুলনামূলক সহজ" ডেটা বা "বেশ ভাল" ভাগ্য লাগে। উভয়ই পুনরাবৃত্তিযোগ্যতা সম্পর্কে নয় বা সেগুলি সাধারণীকরণযোগ্যও নয়।

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

আপনি ওজনকে একটি স্থান হিসাবে ভাবতে পারেন। এটিতে 3 টিরও বেশি মাত্রা রয়েছে তবে এটি এখনও একটি স্থান। সেই জায়গার "সেন্ট্রয়েড" এ আপনার "সেরা ফিট" অঞ্চল। সেন্ট্রয়েড থেকে দূরে কম ভাল ফিট। আপনি আপনার ওজনের বর্তমান সেটিংটিকে সেই জায়গার একক পয়েন্ট হিসাবে ভাবতে পারেন।

"ভাল" আসলে কোথায় তা আপনি জানেন না। আপনার কাছে যা আছে তা স্থানীয় "opeাল"। আপনার পয়েন্ট এখনই যেখানে দেওয়া আছে আপনি সেখানে স্থানীয় "আরও ভাল" এর দিকে গ্রেডিয়েন্ট ডিসেন্ট সম্পাদন করতে পারেন perform এটি আপনাকে "সার্বজনীন" আরও ভাল বলে না, তবে স্থানীয় কোনও কিছুর চেয়ে ভাল।

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

সুতরাং আপনি কোথায় আছেন যেখানে আপনি "যথেষ্ট ভাল" আছেন তা কীভাবে জানবেন?

আপনি করতে পারেন তা এখানে একটি দ্রুত পরীক্ষা:

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

মধুবী কীভাবে স্কাউটিংয়ের উপর ভিত্তি করে সিদ্ধান্ত নেয় তার ভিত্তিতে তৈরি কণা ঝাঁক অপটিমাইজেশন (রেফারেন্স দেখুন) এর একটি ভিন্নতা।

আপনি জিজ্ঞাসা করেছেন যে ওজন একত্রিত না হলে কী ঘটে।

নিউরাল নেটওয়ার্কগুলি একটি সরঞ্জাম। এগুলি একমাত্র হাতিয়ার নয়। অন্যরাও আছেন। আমি তাদের মধ্যে একটি ব্যবহার তাকান।

আমি তথ্যের মানদণ্ডের ক্ষেত্রে কাজ করি, তাই আমি ওজন (প্যারামিটার গণনা) এবং ত্রুটি উভয়ই দেখি। আপনি তাদের মধ্যে একটি চেষ্টা করতে পারেন।

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

আমি সংবেদনশীল সংবেদনের ধারণাটি আকর্ষণীয় বলে মনে করি। এটি সাধারণীকরণের ক্ষতি না করে কিছু সিস্টেমে র‌্যাডিকাল সাব-স্যাম্পলিংয়ের অনুমতি দিতে পারে। আমি কিছু বুটস্ট্র্যাপ পুনরায় স্যাম্পলড পরিসংখ্যান এবং আপনার ডেটা বিতরণ দেখে নেব এবং প্রশিক্ষণের সেটটি কী কী স্তরে উপ-নমুনা গ্রহণের প্রতিনিধিত্ব করে তা নির্ধারণ করতে। এটি আপনাকে আপনার ডেটার "স্বাস্থ্য" এর কিছু পরিমাপ দেয়।

কখনও কখনও এটি একটি ভাল জিনিস যা তারা রূপান্তর করে না

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

লুপগুলি নিউরাল নেটওয়ার্কগুলিতে গুরুত্বপূর্ণ। প্রতিক্রিয়া। Recursion। এটি এক্সওআর-এর মতো সমস্যাগুলি সমাধান করতে পার্সেপট্রনকে সক্ষম করেছে। এটি লুপগুলি তৈরি করে এবং কখনও কখনও লুপগুলি ভোটদানের প্যারাডক্সের মতো কাজ করতে পারে, যেখানে আপনার যদি অসীম পুনরাবৃত্তি থাকে তবে তারা ওজন পরিবর্তন করতে থাকবে। এগুলি রূপান্তর করতে বোঝানো হয়নি কারণ এটি পৃথক ওজন নয় যা লুপের ওজনের পারস্পরিক ক্রিয়া matters

বিঃদ্রঃ:

কেবল 500 টি পুনরাবৃত্তি ব্যবহার করা সমস্যা হতে পারে। আমার কাছে এনএন রয়েছে যেখানে 10,000 পুনরাবৃত্তি সবে যথেষ্ট ছিল। "পর্যাপ্ত" হওয়ার জন্য পুনরাবৃত্তির সংখ্যা নির্ভরশীল, যেমনটি আমি ইতিমধ্যে ডেটা, এনএন-টপোলজি, নোড-ট্রান্সফার ফাংশন, শেখা / প্রশিক্ষণ ফাংশন এবং এমনকি কম্পিউটার হার্ডওয়্যার হিসাবে ইঙ্গিত করেছি। "যথেষ্ট" বা "অত্যধিক" পুনরাবৃত্তি হয়েছে তা বলার আগে তারা আপনার পুনরাবৃত্তির গণনার সাথে কীভাবে ইন্টারঅ্যাক্ট করে সে সম্পর্কে আপনার ভাল ধারণা থাকতে হবে। সময়, বাজেট এবং আপনি প্রশিক্ষণ সম্পন্ন করার পরে এনএন এর সাথে আপনি কী করতে চান সে সম্পর্কিত অন্যান্য বিষয়গুলিও বিবেচনা করা উচিত।

চেন, আরবি, চ্যাং, এসপি, ওয়াং, ডাব্লু। ও ওং, ডব্লু কে, (২০১১, সেপ্টেম্বর)। কণা ঝাঁক অপটিমাইজেশন পদ্ধতিগুলির (প্রিপ্রিন্ট) মাধ্যমে সর্বোত্তম পরীক্ষামূলক ডিজাইনগুলি, http://www.math.ntu.edu.tw/~mathlib/preprint/2011-03.pdf থেকে ২৫ শে মার্চ, ২০১২ পুনরুদ্ধার করা হয়েছে


2

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

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

ব্যবসায়ের কৌশল এবং কৌশল সম্পর্কে বিস্তারিত ওভারভিউয়ের জন্য, ইয়ান লেকুনের এই (অবশ্যই পড়তে হবে) কাগজটি একবার দেখুন ।


1

নিশ্চিত হয়ে নিন যে আপনার গ্রেডিয়েন্টগুলি সীমা ছাড়িয়ে যাচ্ছে না বা গ্রেডিয়েন্টগুলি শূন্য হয়ে যাচ্ছে এমনটিও সম্ভব। এটি বিস্ফোরিত গ্রেডিয়েন্টস এবং বিলুপ্ত গ্রেডিয়েন্টগুলির সমস্যা হিসাবে জনপ্রিয়।

একটি সম্ভাব্য সমাধান হ'ল অ্যাডাগ্রেড অপ্টিমাইজার যেমন অ্যাডগ্রাড বা অ্যাডাম ব্যবহার করা।

আমি যখন নিউরাল নেটওয়ার্কগুলি শুরু করছিলাম তখন একটি সাধারণ নিউরাল নেটওয়ার্ক প্রশিক্ষণের সময় আমি একই ধরণের সমস্যার মুখোমুখি হয়েছিলাম।

কয়েকটি উল্লেখ: https://en.wikedia.org/wiki/Vishesing_gradient_problem https://www.youtube.com/watch?v=VuamhbEWEWA


0

আমার কাছে অনেকগুলি ডেটা সেট রয়েছে যা ধীরে ধীরে রূপান্তরিত হয়েছিল - সম্ভবত ইনপুটগুলি খুব সংযুক্ত ছিল।

আমি আমার নিজস্ব সি ++ এনএন বিশ্লেষক লিখেছি এবং এটির সাথে আমি প্রতিটি ওজনের জন্য শেখার হারকে পৃথক করতে পারি। প্রতিটি প্রান্তে প্রতিটি ওজনের জন্য আমি দুটি জিনিস করি যা কিছুকে সহায়তা করে।

প্রথমে, আমি প্রতিটি শিক্ষার হারকে [0,1] থেকে অভিন্ন বিতরণ করা এলোমেলো সংখ্যার দ্বারা গুণ করি। আমি অনুমান করছি যে এটি পারস্পরিক সম্পর্ক সমস্যার সাথে সহায়তা করে।

অন্যান্য কৌশলটি হ'ল আমি বর্তমান প্রান্তটিকে প্রতিটি প্রান্তে পূর্ববর্তী গ্রেডিয়েন্টের সাথে তুলনা করি। গ্রেডিয়েন্ট যদি সবেমাত্র শতকরা হারে হ্রাস পায় তবে আমি সেই প্রান্তের জন্য শিক্ষার হারকে 5 পর্যন্ত বাড়িয়ে দেব।

এই কৌশলগুলির কোনওটির জন্যই আমার কোনও বিশেষ ন্যায়সঙ্গততা নেই, তবে তারা বেশ ভালভাবে কাজ করছে বলে মনে হয়।

আশাকরি এটা সাহায্য করবে.

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