ব্যাকপ্রপাগেশন নিউরাল নেটওয়ার্কে কেন একটি ননলাইনার অ্যাক্টিভেশন ফাংশন ব্যবহার করা উচিত?


139

আমি নিউরাল নেটওয়ার্কগুলিতে কিছু জিনিস পড়ছি এবং আমি একটি একক স্তর নিউরাল নেটওয়ার্কের সাধারণ নীতিটি বুঝতে পারি। আমি অ্যাডিশনাল স্তরগুলির প্রয়োজনীয়তাটি বুঝতে পারি, তবে কেন ননলাইনার অ্যাক্টিভেশন ফাংশন ব্যবহার করা হয়?

এই প্রশ্নটির পরে এই প্রশ্নটি অনুসরণ করা হয়: ব্যাকপ্রসারণের জন্য ব্যবহৃত অ্যাক্টিভেশন ফাংশনের ডেরিভেটিভ কী?


উত্তর:


167

অ্যাক্টিভেশন ফাংশনটির উদ্দেশ্যটি হল নেটওয়ার্কে অ-লিনিয়ারিটি প্রবর্তন করা

পরিবর্তে, এটি আপনাকে একটি প্রতিক্রিয়ার ভেরিয়েবল (ওরফে টার্গেট ভেরিয়েবল, ক্লাস লেবেল, বা স্কোর) মডেল করতে দেয় যা তার ব্যাখ্যামূলক ভেরিয়েবলের সাথে অ-রৈখিকভাবে পরিবর্তিত হয়

অ-রৈখিক মানে আউটপুট ইনপুটগুলির একটি রৈখিক সংমিশ্রণ থেকে পুনরুত্পাদন করা যাবে না (যা আউটপুট হিসাবে একই নয় যা একটি সরলরেখায় রেন্ডার করে - এর জন্য শব্দটি অ্যাফাইন হয় )।

এটি ভাবার আরেকটি উপায়: নেটওয়ার্কে অ-রৈখিক অ্যাক্টিভেশন ফাংশন ব্যতীত, একটি এনএন, এটি যত স্তর রাখুক না কেন, একটি একক-স্তর পারসেপ্ট্রনের মতো আচরণ করবে, কারণ এই স্তরগুলির সংমিশ্রণ আপনাকে আরও একটি লিনিয়ার ফাংশন দেবে because (ঠিক উপরে উপরে সংজ্ঞা দেখুন)।

>>> in_vec = NP.random.rand(10)
>>> in_vec
  array([ 0.94,  0.61,  0.65,  0.  ,  0.77,  0.99,  0.35,  0.81,  0.46,  0.59])

>>> # common activation function, hyperbolic tangent
>>> out_vec = NP.tanh(in_vec)
>>> out_vec
 array([ 0.74,  0.54,  0.57,  0.  ,  0.65,  0.76,  0.34,  0.67,  0.43,  0.53])

ব্যাকপ্রপতে ব্যবহৃত একটি সাধারণ অ্যাক্টিভেশন ফাংশন ( হাইপারবোলিক ট্যানজেন্ট ) -2 থেকে 2 পর্যন্ত মূল্যায়ন করা হয়:

এখানে চিত্র বর্ণনা লিখুন


15
আমরা কেন রৈখিকতা দূর করতে চাই?
কোরাজা 10

17
আমরা যে মডেলটি মডেল করতে চাই তা যদি অ-রৈখিক হয় তবে আমাদের মডেলটিতে আমাদের এটির প্রয়োজন।
10-10

38
এক বাক্যে উত্তর: << কোন ব্যাপার কত স্তর কেবলমাত্র একটি perceptron মত আচরণ করবে (কারণ রৈখিক ফাংশন একসঙ্গে যোগ শুধু আপনার একটি রৈখিক ফাংশন দিন) >>। । নিস!
স্বায়ত্তশাসিত

12
এটি সামান্য বিভ্রান্তিকর - যেমন এসকি উল্লেখ করা হয়েছে, সংশোধিত লিনিয়ার অ্যাক্টিভেশন ফাংশনগুলি অত্যন্ত সফল এবং যদি আমাদের লক্ষ্যটি কেবল মডেল / আনুমানিক ফাংশনগুলি হয়, তবে সমস্ত পদক্ষেপে অ-লিনিয়ারিটি অপসারণ করা সঠিকভাবে সঠিক উত্তর নয়। পর্যাপ্ত রৈখিক টুকরা দিয়ে, আপনি প্রায় কোনও অ-রৈখিক ক্রিয়াকলাপ উচ্চতর ডিগ্রি যথাযথ করতে পারেন। : আমি এই কেন ইউনিট রৈখিক শায়েস্তা একটি ভাল ব্যাখ্যা পাওয়া কাজ stats.stackexchange.com/questions/141960/...
টিগন

11
@tegan রেক্টিফাইড লিনিয়ার অ্যাক্টিভেশন ফাংশন অ-রৈখিক। আমি নিশ্চিত না যে উত্তরটি দিয়ে আপনার মন্তব্যটি কী করবে।
এন্ডোলিথ

49

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

এখানে চিত্র বর্ণনা লিখুন

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


1
+ এক, তারপরে অনুমান করা যায় যে ননলাইনার ফাংশনটি একটি নিখুঁত সীমানা প্রতিষ্ঠার জন্য ব্যবহৃত হয়?
এসআইস্লাম

1
হ্যাঁ অবশ্যই. কেবল 0 বা 1 উত্পাদনের অবিচলায় এটি 0.4 বা 0.78 উত্পাদন করতে পারে, এটি সীমানার সীমার বাইরে অবিচ্ছিন্ন করে তোলে।
চিবোলে

3
একটি নিউরাল নেটওয়ার্ক অবশ্যই ইনফিনিটি থেকে + অসীমে কোনও ইনপুট নিতে সক্ষম হতে পারে তবে এটি এটিকে একটি আউটপুট ম্যাপ করতে সক্ষম হবে যা that 0,1} বা {-1,1} এর মধ্যে থাকে ... এটি আমাকে মনে করিয়ে দেয় রিলু সীমাবদ্ধতা হ'ল এটি কেবলমাত্র একটি নিউরাল নেটওয়ার্ক মডেলের লুকানো স্তরগুলির মধ্যে ব্যবহার করা উচিত।
মেঘ চো

21

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

একই জিনিসটি সেই ক্ষেত্রে ঘটে যেখানে সমস্ত নিউরনের অ্যাফাইন অ্যাক্টিভেশন ফাংশন রয়েছে (যেমন ফর্মের উপর একটি অ্যাক্টিভেশন ফাংশন f(x) = a*x + c, যেখানে aএবং cধ্রুবক রয়েছে, যা লিনিয়ার অ্যাক্টিভেশন ফাংশনগুলির একটি সাধারণীকরণ), যার ফলস্বরূপ কেবল ইনপুট থেকে আউটপুটে অ্যাফাইন রূপান্তর ঘটবে , যা খুব উত্তেজনাপূর্ণ নয়।

নিউরাল নেটওয়ার্কে লিনিয়ার অ্যাক্টিভেশন ফাংশনগুলির সাথে খুব ভাল নিউরন থাকতে পারে যেমন আউটপুট লেয়ারে, তবে এগুলির জন্য নেটওয়ার্কের অন্যান্য অংশে একটি লিনিয়ার অ্যাক্টিভেশন ফাংশন সহ নিউরনের সংস্থার প্রয়োজন হয়।

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


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

প্রকৃতপক্ষে, আমি বিশ্বাস করি যে আপনি এফাইন অ্যাক্টিভেশন ফাংশন সম্পর্কে আপনার বক্তব্যটিতে সঠিক, যার ফলে একটি অ্যাফাইন রূপান্তর ঘটবে, তবে ব্যাকপ্রেগেশন (বা অন্য কোনও উপায়ে) রূপান্তরটি শিখেছে এই সত্যটি যতটা মূল প্রশ্নটির সাথে সম্পর্কিত তা একেবারেই অকেজো করে না।
এসকি

4
@ ইস্কি না, আপনি কেবলমাত্র রৈখিক অ্যাক্টিভেশন ফাংশন সহ উচ্চতর অর্ডার ফাংশনগুলি অনুমান করতে পারবেন না , আপনি কেবলমাত্র রৈখিক মডেল করতে পারেন (বা অ্যাফাইন, যদি আপনার প্রতিটি স্তরের অতিরিক্ত ধ্রুব নোড থাকে তবে) ফাংশন এবং ট্রান্সফরমেশনগুলি আপনি যত স্তর রাখুন না কেন আছে।
হ্যালোগডবাই

অ্যাক্টিভেশন ফাংশনটির মূল উদ্দেশ্যটি নিউরাল নেটওয়ার্কটিকে একটি অ-রৈখিক সিদ্ধান্তের সীমানা উত্পাদন করার অনুমতি দেওয়া বলা কি সঠিক?
stackoverflowuser2010

@ stackoverflowuser2010 এটি দেখার এক উপায় এটি হবে। তবে এর চেয়ে আরও বেশি অ্যাক্টিভেশন ফাংশন রয়েছে। অ্যাক্টিভেশন ফাংশন সম্পর্কে উইকিপিডিয়ায় নিবন্ধে বেশ কয়েকটি অ্যাক্টিভেশন ফাংশন তালিকাভুক্ত করা হয়েছে, এর সমস্ত (তবে একটি) ননলাইনার এবং একটি অ্যাক্টিভেশন ফাংশনটিতে থাকতে পারে এমন বিভিন্ন গুণাবলীর তুলনা করে ares
হ্যালো গুডবাই 4'16

9

রৈখিক অ্যাক্টিভেশন এবং যে কোনও সংখ্যক গোপন স্তর সহ একটি ফিড-ফরোয়ার্ড নিউরাল নেটওয়ার্ক কোনও গোপন স্তর ছাড়াই কেবল একটি লিনিয়ার নিউরাল নিউরাল নেটওয়ার্কের সমতুল্য। উদাহরণস্বরূপ দুটি লুকানো স্তর এবং কোনও অ্যাক্টিভেশন সহ চিত্রের নিউরাল নেটওয়ার্কটি বিবেচনা করুন এখানে চিত্র বর্ণনা লিখুন

y = h2 * W3 + b3 
  = (h1 * W2 + b2) * W3 + b3
  = h1 * W2 * W3 + b2 * W3 + b3 
  = (x * W1 + b1) * W2 * W3 + b2 * W3 + b3 
  = x * W1 * W2 * W3 + b1 * W2 * W3 + b2 * W3 + b3 
  = x * W' + b'

আমরা শেষ পদক্ষেপটি করতে পারি কারণ বেশ কয়েকটি লিনিয়ার রূপান্তরের সংমিশ্রণটি একটি রূপান্তর দ্বারা প্রতিস্থাপন করা যেতে পারে এবং বেশ কিছু পক্ষপাতের সংমিশ্রণটি কেবল একটি একক পক্ষপাতিত্ব। আমরা কিছু লিনিয়ার সক্রিয়করণ যুক্ত করলেও ফলাফল একই।

সুতরাং আমরা এই স্নায়ু জালকে একটি একক স্তর নিউরাল নেট দিয়ে প্রতিস্থাপন করতে পারি his এটি nস্তরগুলিতে প্রসারিত হতে পারে । এটি স্তরগুলিকে যুক্ত করে ইঙ্গিত দেয় যে কোনও রৈখিক নিউরাল নেট এর অনুমানের শক্তি মোটেও বাড়ায় না। আনুমানিক অ-রৈখিক ক্রিয়াকলাপগুলির জন্য আমাদের অ-রৈখিক অ্যাক্টিভেশন ফাংশন প্রয়োজন এবং বেশিরভাগ বাস্তব বিশ্বের সমস্যাগুলি অত্যন্ত জটিল এবং অ-রৈখিক। বাস্তবে যখন অ্যাক্টিভেশন ফাংশনটি অ-রৈখিক হয়, তখন পর্যাপ্ত পরিমাণ সংখ্যক গোপন ইউনিট সহ একটি দুটি-স্তরীয় নিউরাল নেটওয়ার্ক সর্বজনীন ফাংশন আনুমানিক হিসাবে প্রমাণিত হতে পারে।


5

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

একটি স্কোয়াশিং ফাংশন উদাহরণস্বরূপ একটি ননলাইনার অ্যাক্টিভেশন ফাংশন যা সিগময়েড অ্যাক্টিভেশন ফাংশনের মতো [0,1] এ মানচিত্র করে।


3

এমন সময় আছে যখন খাঁটি লিনিয়ার নেটওয়ার্ক কার্যকর ফলাফল দিতে পারে। বলুন আমাদের কাছে আকার (3,2,3) সহ তিনটি স্তরের একটি নেটওয়ার্ক রয়েছে। মধ্য স্তরটিকে মাত্র দুটি মাত্রায় সীমাবদ্ধ করে আমরা একটি ফল পাই যা মূল তিনটি মাত্রিক জায়গার "সেরা ফিটের বিমান"।

তবে এই ফর্মের লিনিয়ার রূপান্তরগুলি খুঁজে পাওয়ার সহজ উপায় রয়েছে যেমন এনএমএফ, পিসিএ ইত্যাদি However


2

অ-রৈখিক অ্যাক্টিভেশন ফাংশনের পিছনে যুক্তি বুঝতে প্রথমে আপনার বুঝতে হবে কেন অ্যাক্টিভেশন ফাংশন ব্যবহার করা হয়। সাধারণভাবে, বাস্তব বিশ্বের সমস্যাগুলির জন্য অ-রৈখিক সমাধান প্রয়োজন যা তুচ্ছ নয়। সুতরাং অ-রৈখিকতা তৈরি করতে আমাদের কিছু ফাংশন প্রয়োজন। মূলত একটি অ্যাক্টিভেশন ফাংশন যা করে তা হ'ল ইনপুট মানগুলিকে পছন্দসই পরিসরে ম্যাপ করার সময় এই অ-লিনিয়ারিটি তৈরি করা।

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

অবিচ্ছিন্ন পার্থক্য হিসাবে অ্যাক্টিভেশন ফাংশনগুলির জন্য আরও কয়েকটি পছন্দসই বৈশিষ্ট্য রয়েছে । যেহেতু আমরা ব্যাকপ্রোগেশনটি ব্যবহার করছি আমরা যে ফাংশনটি উত্পন্ন করি তা অবশ্যই যে কোনও মুহুর্তে পৃথক হতে হবে। বিষয়টির আরও ভাল বোঝার জন্য এখান থেকে অ্যাক্টিভেশন ফাংশনগুলির জন্য উইকিপিডিয়া পৃষ্ঠাটি পরীক্ষা করার জন্য আমি আপনাকে দৃ adv়ভাবে পরামর্শ দিচ্ছি ।


2

বেশ কয়েকটি ভাল উত্তর এখানে। ক্রিস্টোফার এম বিশপের লেখা "প্যাটার্ন রিকগনিশন এবং মেশিন লার্নিং" বইটি উল্লেখ করা ভাল হবে। এটি বেশ কয়েকটি এমএল সম্পর্কিত ধারণা সম্পর্কে গভীর অন্তর্দৃষ্টি পাওয়ার জন্য উল্লেখযোগ্য একটি বই। 229 পৃষ্ঠা থেকে অংশ (বিভাগ 5.1):

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


1

যেমনটি আমার মনে আছে - সিগময়েড ফাংশনগুলি ব্যবহার করা হয় কারণ বিপি অ্যালগরিদমে ফিট করে তাদের ডেরাইভেটিভ গণনা করা সহজ, এফ (এক্স) (1-এফ (এক্স)) এর মতো সাধারণ কিছু। গণিতটা ঠিক মনে নেই। আসলে ডেরিভেটিভস সহ যে কোনও ফাংশন ব্যবহার করা যেতে পারে।


7
আমার স্মরণ হিসাবে ফাংশনটি এখনও একঘেয়েভাবে বাড়তে চায়। সুতরাং, কোন ফাংশন না ।
নভক

1

বেশ কয়েকটি নিউরনের একটি স্তরযুক্ত এনএন লিনিয়ার অবিচ্ছেদ্য সমস্যাগুলি শিখতে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, এক্সওআর ফাংশনটি স্টেপ অ্যাক্টিভেশন ফাংশন সহ দুটি স্তর সহ পাওয়া যায়।


0

আমি আপনাকে এটি যতটা সম্ভব সহজ ব্যাখ্যা করতে দিই:

প্যাটার্ন স্বীকৃতিতে নিউরাল নেটওয়ার্কগুলি সঠিকভাবে ব্যবহৃত হয়? এবং প্যাটার্ন সন্ধান করা একটি খুব অ-রৈখিক কৌশল।

ধরুন যুক্তিটির স্বার্থে আমরা প্রতি একক নিউরনের জন্য লিনিয়ার অ্যাক্টিভেশন ফাংশন y = wX + b ব্যবহার করি এবং y> 0 -> শ্রেণি 1 অন্য শ্রেণি 0 এর মতো কিছু সেট করি।

এখন আমরা স্কোয়ার ত্রুটির ক্ষতি ব্যবহার করে আমাদের ক্ষতি গণনা করতে পারি এবং এটি আবার প্রচার করতে পারি যাতে মডেলটি ভালভাবে শিখতে পারে, তাই না?

ভুল।

  • শেষ লুকানো স্তরের জন্য, আপডেট হওয়া মানটি w {l} = w {l} - (আলফা) * এক্স হবে।

  • দ্বিতীয় শেষ লুকানো স্তরের জন্য, আপডেট হওয়া মানটি ডাব্লু {l-1} = w। L-1} - (আলফা) * w। L} * এক্স হবে।

  • Ith সর্বশেষ লুকানো স্তরের জন্য, আপডেট হওয়া মানটি হবে w {i {= w {i} - (আলফা) * w {l} ... * w {i + 1} * এক্স।

এটি আমাদের সমস্ত ওজন ম্যাট্রিককে একসাথে গুণিত করায় ফলস্বরূপ সম্ভাবনার ফলস্বরূপ: ক) {i} সবেমাত্র গ্রেডিয়েন্ট বি গায়ে দেওয়ার কারণে পরিবর্তন হয়) ডাব্লু {i dra নাটকীয়ভাবে এবং ভুলভাবে পরিবর্তিত গ্রেডিয়েন্ট সি এর কারণে পরিবর্তন হয়েছে) ডব্লিউ {আই well ভালভাবে পরিবর্তন হয়েছে আমাদের একটি ভাল ফিট স্কোর দিতে যথেষ্ট

যদি সি ঘটে যায় এর অর্থ হল যে আমাদের শ্রেণিবিন্যাস / পূর্বাভাস সমস্যাটি সম্ভবত একটি সাধারণ লিনিয়ার / লজিস্টিক রেজিস্ট্রার ভিত্তিক একটি ছিল এবং এটির জন্য প্রথমে কোনও নিউরাল নেটওয়ার্কের প্রয়োজন হয়নি!

আপনার এনএন যতই শক্তিশালী বা হাইপার টিউন করেছে তা বিবেচনাধীন নয়, আপনি যদি লিনিয়ার অ্যাক্টিভেশন ফাংশনটি ব্যবহার করেন তবে আপনি প্যাটার্ন সনাক্তকরণের জন্য প্রয়োজনীয় অ-লিনিয়ার মোকাবেলা করতে সক্ষম হবেন না


-3

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

আরও তথ্যের জন্য নিম্নলিখিতটি দেখুন: https://www.academia.edu/7826776/ গণিতিক_অনুষ্ঠান_শক্তির জন্য_পরিষ্ঠান_সংশ্লিষ্ট_লাইনার_উন্নিত_ইন_দ্বীপ_সংশ্লিষ্ট_ নেটওয়ার্কস


সম্পাদনা:

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

হ্যাঁ, এটি প্রযুক্তিগতভাবে একটি অ-রৈখিক কার্য কারণ এটি x = 0 বিন্দুতে লিনিয়ার নয়, তবে এটি এখনও অন্য যে সমস্ত বিন্দুতে লিনিয়ার তা বলা সঠিক, সুতরাং আমি এখানে নিটপিকের পক্ষে এটি কার্যকর বলে মনে করি না,

আমি পরিচয় ফাংশনটি বেছে নিতে পারতাম এবং এটি এখনও সত্য হতে পারে, তবে সাম্প্রতিক জনপ্রিয়তার কারণে আমি একটি উদাহরণ হিসাবে রেলুকে বেছে নিয়েছি।


8
সংশোধিত লিনিয়ার অ্যাক্টিভেশন ফাংশনটি অ-রৈখিক (নাম সত্ত্বেও)। এটি ইতিবাচক মানগুলির জন্য কেবল রৈখিক
প্ল্যানকালকাল

4
আপনি প্রযুক্তিগতভাবে সঠিক, এটি পুরো ডোমেন জুড়ে রৈখিক নয়, বিশেষত x = 0 এ (এটি আসলে x <0 এর জন্য লিনিয়ার, যেহেতু f (x) = 0 একটি লিনিয়ার ফাংশন)। এটি পৃথকযোগ্যও নয় সুতরাং গ্রেডিয়েন্ট ফাংশনটি সম্পূর্ণরূপে গণনাযোগ্য নয়, তবে বাস্তবে এই প্রযুক্তিগুলি পরাস্ত করা সহজ।
eski

4
তিনি কেবল প্রযুক্তিগতভাবেই সঠিক নন, তিনি অনুশীলনেও ঠিক (বা এমন কিছু)। এটি আরএলইউর অ-লৈখিকতা যা তাদের দরকারী করে তোলে। যদি তারা লিনিয়ার থাকত তবে ফর্মটিতে তাদের একটি অ্যাক্টিভেশন ফাংশন থাকত f(x) = a*x(কারণ এটি কেবলমাত্র রৈখিক অ্যাক্টিভেশন ফাংশনটিতে রয়েছে) যা অ্যাক্টিভেশন ফাংশন হিসাবে অকেজো (যদি না আপনি এটি অ-লিনিয়ার অ্যাক্টিভেশন ফাংশনগুলির সাথে সংযুক্ত না করেন) )।
হ্যালো গুডবাই

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

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