গ্রেডিয়েন্ট বংশোদ্ভূত কেন প্রয়োজনীয়?


10

যখন আমরা ব্যয় কার্যের পার্থক্য করতে পারি এবং প্রতিটি প্যারামিটারের সাথে সম্মতভাবে আংশিক পার্থক্যের মাধ্যমে প্রাপ্ত সমীকরণগুলি সমাধান করে প্যারামিটারগুলি সন্ধান করতে পারি এবং ব্যয়টির কাজটি সর্বনিম্ন কিনা তা খুঁজে বের করতে পারি। এছাড়াও আমি মনে করি যে ডেরাইভেটিভগুলি শূন্য এমন একাধিক জায়গা সন্ধান করা সম্ভব, এর মাধ্যমে আমরা এই জাতীয় সমস্ত জায়গাগুলি পরীক্ষা করতে পারি এবং বিশ্বব্যাপী মিনিমা খুঁজে পেতে পারি

পরিবর্তে গ্রেডিয়েন্ট বংশোদ্ভূত সঞ্চালিত হয় কেন?


2
কোনও কাজের জন্য কীভাবে সাধারণভাবে ডেরিভেটিভগুলি 0 তে সেট করা যায়? গ্রেডিয়েন্ট বংশোদ্ভূত হিসাবে অ্যালগরিদম সহ।
ক্লিফ এবি

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



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

উত্তর:


8

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

উদাহরণস্বরূপ, আমরা লিনিয়ার রিগ্রেশন বিবেচনা করি, সুস্পষ্ট সমাধানের জন্য একটি ম্যাট্রিক্সকে ইনভার্ট করা দরকার যা জটিলতা । বড় ডেটার প্রসঙ্গে এটি নিষিদ্ধ হয়ে যায়।O(N3)

এছাড়াও, মেশিন লার্নিংয়ে প্রচুর সমস্যা উত্তল, সুতরাং গ্রেডিয়েন্টগুলি ব্যবহার করে আমরা নিশ্চিত হয়েছি যে আমরা চূড়ান্তভাবে পৌঁছে যাব।

ইতিমধ্যে নির্দেশিত হিসাবে, এখনও স্নায়ুবহুল নেটওয়ার্কগুলির মতো প্রাসঙ্গিক অ-উত্তল সমস্যা রয়েছে যেখানে গ্রেডিয়েন্ট পদ্ধতি (ব্যাকপ্রোপেশন) একটি কার্যকর দ্রাবক সরবরাহ করে। আবার এটি গভীর শিক্ষার ক্ষেত্রে বিশেষভাবে প্রাসঙ্গিক।


2
আংশিক পাইভোটিংয়ের সাথে কিউআর পচন আরও সঠিক এবং দ্রুত হওয়ায় এখানে একটি ম্যাট্রিক্সকে বিভক্ত করা কিছুটা স্ট্রোম্যান হিসাবে বিভক্ত, তবে হ্যাঁ, কিউআর এখনও । আমি সম্মত হই যে পর্যাপ্ত পরিমাণে বৃহত সিস্টেমে (যেমন, 10,000 ভেরিয়েবল) যা সমস্যা হয়ে উঠতে পারে। আধুনিক, উচ্চ প্রযুক্তির পদ্ধতির পরে পুনরাবৃত্তিমূলক ক্রিলোভ সাবস্পেস পদ্ধতিগুলি (যেমন, কনজুগেট গ্রেডিয়েন্ট, জিএমআরইএস) এর সমাধানটি প্রায় অনুমান করা যায়। O(n3)
ম্যাথু গন

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

12

গ্রেডিয়েন্ট বংশোদ্ভূত প্রয়োজন হয় না। এটি গ্রেডিয়েন্ট বংশদ্ভুত প্রায়শই একটি ভয়াবহভাবে অদক্ষ অপ্টিমাইজেশন অ্যালগরিদম হয়! পুনরাবৃত্তিমূলক পদ্ধতির জন্য, গ্রেডিয়েন্ট যেখানে সবচেয়ে খাড়া হয় তার চেয়ে অনেক সময় চলার জন্য আরও ভাল দিকনির্দেশ পাওয়া সম্ভব।

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

  • চতুর্ভুজীয় অপ্টিমাইজেশান সমস্যার জন্য, প্রথম ক্রমের শর্তটি লিনিয়ার সমীকরণগুলির একটি সিস্টেম এবং আমরা প্রায় সরাসরি সমাধানে যেতে পারি কারণ লিনিয়ার সিস্টেমগুলি দক্ষতার সাথে সমাধান করা যায়! আমরা প্রথম অর্ডার শর্তাদি ব্যবহার করি এবং সিস্টেমটি সমাধান করি (উদাঃ কিউআর পচন সহ, নীচে ক্যাভ্যাট)।
  • আরও সাধারণভাবে যদিও, প্রথম ক্রমের শর্তগুলি সমীকরণের একটি অ-রৈখিক সিস্টেম সংজ্ঞায়িত করে এবং একটি অ-লিনিয়ার সিস্টেম সমাধান করা বেশ কঠিন হতে পারে! প্রকৃতপক্ষে, আপনি যেভাবে প্রায়শই অ-রৈখিক সমীকরণের সিস্টেমকে সংখ্যাসূচকভাবে সমাধান করেন তা হ'ল আপনি কী এটি একটি অপ্টিমাইজেশন সমস্যা হিসাবে সংশোধন করছেন ...
  • জন্য অত্যন্ত বড় রৈখিক সিস্টেম, কিউ পচানি এবং আংশিক অন্য pivoting সাথে সরাসরি সিস্টেম সমাধানে infeasible হয়ে যায়। মানুষ কি করবেন?! আইট্রেটিভ পদ্ধতি! (উদাঃ পুনরাবৃত্তিযোগ্য ক্রিলোভ সাবস্পেস পদ্ধতি ...)

7

101 ক্যালকুলাসে আমরা "বিশ্লেষণাত্মক পদ্ধতি" ব্যবহার করে কোনও ফাংশনকে কীভাবে অনুকূল করতে হবে তা শিখেছি: আমাদের কেবল ব্যয় ফাংশনের ডেরাইভেটিভ পেতে হবে এবং ডেরিভেটিভ 0 তে সেট করতে হবে তবে সমীকরণটি সমাধান করুন। এটি সত্যিই একটি খেলনা সমস্যা এবং বাস্তব বিশ্বে প্রায় কখনও ঘটবে না।

বাস্তব বিশ্বে, অনেক ব্যয় ক্রিয়াকলাপ সর্বত্র ডেরাইভেটিভ হয় না (আরও পরে, ব্যয় ফাংশনটি পৃথক হতে পারে এবং কোনওরূপে ডেরাইভেটিভ নাও থাকতে পারে)। এছাড়াও, আপনি ডেরাইভেটিভ গণনা করতে পারেন, আপনি কেবল সমীকরণটি বিশ্লেষণ করে সমাধান করতে পারবেন না (উদাহরণস্বরূপ, কীভাবে সমাধান করবেন সে সম্পর্কে চিন্তাভাবনা করুন বিশ্লেষণাত্মকভাবে? আমি আপনাকে সংখ্যার উত্তরটি পারি, তবে বিশ্লেষণাত্মক সমাধান জানি না)। আমাদের অবশ্যই কয়েকটি সংখ্যক পদ্ধতি ব্যবহার করতে হবে (কেন বহুতোষ ক্ষেত্রে আবেল রাফিন উপপাদ্য তা এখানে দেখুন )।x7+x352+ex+log(x+x2)+1/x=0এক্স=1,4786

Iterative পদ্ধতি ব্যবহার করার জন্য দুর্দান্ত, এবং বুঝতে খুব স্বজ্ঞাত। ধরুন আপনি কোনও সমীকরণ সমাধান করার পরিবর্তে একটি কার্যকারিতা অনুকূল করতে চান এবং উত্তর পেতে চান, যথেষ্ট পুনরাবৃত্তির পরে পুনরাবৃত্তি / পদক্ষেপের দ্বারা আপনার উত্তরটি উন্নত করার চেষ্টা করছেন, আপনি উত্তরটি "সত্য উত্তর" এর কাছাকাছি পাবেন। যদি আপনি কমান ক্যালকুলাস ব্যবহার বলুন , আপনি সরাসরি পেতে , কিন্তু সংখ্যাগত একটা পদ্ধতি ব্যবহার করার মাধ্যমে আপনি পেতে পারেন ।(এক্স)=এক্স2এক্স=0এক্স=1,1234×10-20

এখন, এই পুনরাবৃত্ত পদ্ধতিগুলি কীভাবে কাজ করে তা বোঝা গুরুত্বপূর্ণ। কী ধারণাটি আরও ভাল সমাধান পেতে আপনার ইনপুট প্যারামিটারগুলি কীভাবে আপডেট করবেন তা জানা। ধরুন আপনি(নোট করুন যে এই ব্যয়টি ফাংশনটি সর্বত্র পৃথক নয়, তবে "বেশিরভাগ জায়গায়" আমাদের পক্ষে যথেষ্ট, যেহেতু "বেশিরভাগ জায়গায়" কীভাবে আপডেট করা যায় তা আমরা জানি)), বর্তমানে আপনি এ রয়েছেন , এবং , এখন আপনি অবজেক্টিভ ফাংশনটি আরও ছোট করতে আপডেট করতে চান । আপনি এটা কিভাবে করবেন? আপনি বলতে পারেন যে আমি উভয়ই হ্রাস করতে চাই , তবে কেন? প্রকৃতপক্ষে আপনি ব্যবহারের অন্তর্নিহিত(এক্স1,এক্স2)=এক্স12+ +এক্স22+ +|এক্স1+ +এক্স2|(1,1)4.0(এক্স1,এক্স2)এক্স1 এক্স2গ্রেডিয়েন্টের ধারণা "ক্ষুদ্র পরিমাণের পরিবর্তন করা , কি হবে "। এক্সY। ইন , মৌলিক হয় , তাই নেতিবাচক গ্রেডিয়েন্ট বার একটি শেখার হার বলে হয় , তাই আমরা থেকে আমাদের সমাধান আপডেট থেকে যার আরও ভাল ব্যয় রয়েছে।(1,1)(3,3)α=0.001(-0,003,-0,003)1,1(0,997,0,997)



4

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

এমনকি লিনিয়ার সমীকরণের জন্য, আমি বিশাল মৈত্রিক সমীকরণের সেট দ্বারা দেওয়া ম্যাট্রিকের আকার এবং মেমরির প্রয়োজনীয়তা সীমাবদ্ধ করা শক্ত হতে পারে।

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