নিউরাল নেটওয়ার্কগুলির বিপরীতে জেনেটিক অ্যালগরিদমগুলি কখন ব্যবহার করা উচিত? [বন্ধ]


139

কোনও সমস্যা সমাধানের জন্য নিউরাল নেটওয়ার্কগুলির বিপরীতে জেনেটিক অ্যালগরিদম (এবং তদ্বিপরীত) কখন ব্যবহার করবেন তা নির্ধারণ করার জন্য কি থাম্বের নিয়ম (বা উদাহরণগুলির সেট) রয়েছে?

আমি জানি যে কয়েকটি ক্ষেত্রে আপনার উভয় পদ্ধতি মিশ্রিত থাকতে পারে তবে আমি দুটি পদ্ধতির মধ্যে একটি উচ্চ-স্তরের তুলনা খুঁজছি।


3
এটি দুটি ধরণের নিউরাল নেটওয়ার্ক রয়েছে - এটি তদারকি করা এবং নিরীক্ষণযোগ্য poin তত্ত্বাবধানে একটি মানবিক, নিরীক্ষণযুক্ত প্রতিক্রিয়া থেকে তাদের মধ্যে প্রশিক্ষণের ডেটা পান এবং সে ক্ষেত্রে আরও জিএ এর মতো।
ক্রিস এস

3
আমি এটি "লিস্ট-ওয়াই" মোটেও ভাবি না। উত্তর দুটি পদ্ধতির তুলনা করে এবং কখন একটির তুলনায় অন্যটি ব্যবহার করতে হয় তা পরিষ্কার করে।
নিল এন

সংক্ষিপ্ত উত্তর: মডেল থেকে ফাংশনটি অবিচ্ছিন্ন / পৃথক বা ডেটাসেটটি যখন জ্যোতির্বিজ্ঞানের ভিত্তিতে উচ্চ-মাত্রিক হয় তখন জিএ ব্যবহার করুন। আপনাকে সর্বোত্তম ফলাফল কী দেয় তার উপর নির্ভর করে বিশ্রামের জন্য নিউরাল নেটওয়ার্ক বা জিএ (বা অন্য কোনও মডেল) ব্যবহার করুন। : আরও infos জন্য, এখানে আমার উত্তর দেখুন stackoverflow.com/a/49684833/1121352
gaborous

উত্তর:


130

উইকিপিডিয়া থেকে:

একটি জেনেটিক আলগোরিদিম (GA) হল কম্পিউটিং ব্যবহৃত একটি সার্চ কৌশল খুঁজে সঠিক বা আনুমানিক সমাধান অপ্টিমাইজেশান এবং অনুসন্ধান করুন সমস্যা।

এবং:

নিউরাল নেটওয়ার্কগুলি অ-লিনিয়ার স্ট্যাটিস্টিকাল ডেটা মডেলিং সরঞ্জাম। এগুলি ইনপুট এবং আউটপুটগুলির মধ্যে জটিল সম্পর্ক মডেল করতে বা ডেটাতে নিদর্শনগুলি খুঁজে পেতে ব্যবহার করা যেতে পারে ।

আপনি একটি সমস্যা যেখানে আপনি একটি সমাধান মূল্য পরিমাণ নির্ণয় পারেন, তাহলে একটি জেনেটিক আলগোরিদিম একটি সম্পাদন করতে পারবেন নির্দেশ অনুসন্ধান সমাধান স্থান। (যেমন দুটি পয়েন্টের মধ্যে সংক্ষিপ্ততম পথটি সন্ধান করুন)

যখন আপনার বিভিন্ন ক্লাসে বেশ কয়েকটি আইটেম থাকে, তখন একটি নিউরাল নেটওয়ার্ক এর আগে দেখা যায়নি এমন আইটেমগুলিকে শ্রেণিবদ্ধ করতে "শিখতে" পারে । (যেমন মুখের স্বীকৃতি, ভয়েস স্বীকৃতি)

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


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

44

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

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

এগুলি দুটি মূলত পৃথক সত্তা, তবে কখনও কখনও যে সমস্যাগুলি তারা ওভারল্যাপ সমাধান করতে সক্ষম হয় solving


22
নিউরাল নেটওয়ার্কগুলি আসলে একটি অন্তঃসঞ্চালনের কৌশল। :)
ডন রেবা

3
জেনেটিক অ্যালগোরিদম (অপ্টিমাইজেশান) এবং নিউরাল নেটওয়ার্কগুলির জন্য তত্ত্বাবধানের জন্য +1 (তত্ত্বাবধানে শেখা) প্রায় কোনও মিল নেই।
আলফা

2
একমাত্র সাধারণ উপাদানটি হ'ল তারা লক্ষ্যে পৌঁছানোর সাথে সাথে তারা গতিশীলভাবে নিজেকে পুনর্বিন্যাস করে।
lfalin

1
সত্যিই কোনও ওভারল্যাপ আছে তা আমি নিশ্চিত নই। নিউরাল নেটওয়ার্ক একটি কস্ট ফাংশন সহ একটি মডেল, জিএ একটি অপ্টিমাইজেশন কৌশল যা এই ব্যয় কার্যকারিতাটি হ্রাস করতে ব্যবহার করা যেতে পারে, যেমন @ জেনা বলেছিল।
ম্যাথিউ ব্রুচার

37

আপনার সংজ্ঞায়িত কাঠামোর মধ্যে জিএগুলি নতুন নিদর্শন তৈরি করে।

NNs আপনার সরবরাহ করে এমন প্রশিক্ষণের ডেটার ভিত্তিতে বিদ্যমান নিদর্শনগুলিকে শ্রেণিবদ্ধ (বা সনাক্ত করুন)।

সমাধানের বৃহত রাজ্য-স্থান দক্ষতার সাথে অনুসন্ধান করতে এবং এক বা একাধিক ভাল সমাধানগুলিতে রূপান্তর করার ক্ষেত্রে জিএগুলি ভাল সম্পাদন করে, তবে 'সেরা' সমাধানের প্রয়োজন হয় না।

এনএনরা (প্রশিক্ষণের মাধ্যমে) নিদর্শনগুলি সনাক্ত করতে শিখতে পারে তবে তারা কী শিখেছে তা অনুধাবন করা, অর্থাৎ একবার প্রশিক্ষিত হয়ে তাদের কাছ থেকে জ্ঞান আহরণ করা এবং অন্য কিছু (নন-এনএন) এ জ্ঞানটি পুনরায় ব্যবহার করা কুখ্যাত কাজ।


26

আপনি এখানে দুটি সম্পূর্ণ ভিন্ন জিনিস তুলনা করছেন।

নিউরাল নেটওয়ার্কগুলি রিগ্রেশন / শ্রেণিবিন্যাসের জন্য ব্যবহৃত হয় - (x, y) উদাহরণের সেট দিয়ে আপনি কিছু প্রদত্ত x এর জন্য অজানা y কে রিগ্রস করতে চান।

জেনেটিক অ্যালগরিদমগুলি একটি অপ্টিমাইজেশন কৌশল। একটি ফাংশন দেওয়া হয়েছে (এক্স), আপনি x নির্ধারণ করতে চান যা f (x) ন্যূনতম / সর্বাধিক করে তোলে।


10
প্রকৃতপক্ষে. তারা সত্যই 'অर्थোগোনাল' কৌশল। নিউরাল নেট ওজন এবং / অথবা আর্কিটেকচারের জন্য আপনি একটি জিএ ব্যবহার করতে পারেন।
redcalx

23

তাদের মধ্যে অনেক মিল রয়েছে, তাই আমি কেবল তাদের পার্থক্যের রূপরেখা দেওয়ার চেষ্টা করব ।

নিউরাল নেটওয়ার্ক

অনলাইন নিদর্শনগুলি (যা সময়ের সাথে পরিবর্তিত হয়) বিশ্লেষণ করতে সক্ষম Are সাধারণত, এটি একটি সময়ের-পরিবর্তিত নমুনা যা মেলানো এবং পূর্বাভাস দেওয়া দরকার।

উদাহরণ :

  • গ্রাফ এক্সট্রোপোলেশন
  • মুখের স্বীকৃতি

জেনেটিক আলগোরিদিম

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

উদাহরণ :

  • নির্ধারিত বিমান / শিপিং
  • লময়সূচি।
  • একটি কৃত্রিম পরিবেশে একটি সাধারণ এজেন্টের জন্য সেরা বৈশিষ্ট্য সন্ধান করা
  • এলোমেলো বহুভুজ সহ একটি চিত্রের প্রায় অনুমান প্রদান end

14

নিউরাল নেটওয়ার্কগুলিতে ওজন আপডেট করার জন্য আপনি ব্যাকপ্রোপেশন অ্যালগরিদমের বিকল্প হিসাবে জেনেটিক অ্যালগরিদম ব্যবহার করতে পারেন । এর উদাহরণের জন্য দেখুন: http://www.ai-junkie.com/ann/evolve/nnt1.html



জাভাস্ক্রিপ্টের জন্য, github.com/wagenaartje/neataptic দেখুন । এটি NEAT পাশাপাশি প্রয়োগ করে।
টমাস ডব্লিউ

8

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

অন্যদিকে নিউরাল নেটওয়ার্কগুলি (সাধারণত) অবিচ্ছিন্ন ডেটা (ভাসমান ইত্যাদি) নিয়ে কাজ করে। এনএনএসের জন্য একটি সাধারণ অ্যাপ্লিকেশন হ'ল ফাংশন আনুমানিকতা, যেখানে আপনি ইনপুটগুলির একটি সেট এক্স এবং সম্পর্কিত আউটপুটগুলির একটি সেট ওয় পেয়েছিলেন, তবে বিশ্লেষণমূলক ফাংশন f: X → Y।

অবশ্যই, উভয়ের হাজার হাজার রূপ রয়েছে, সুতরাং তাদের মধ্যে লাইনটি কিছুটা ঝাপসা হয়ে যায়।


5

থাম্বের কোনও নিয়ম নেই। অনেক ক্ষেত্রে আপনি যে কোনও একটির ব্যবহার করতে আপনার সমস্যা তৈরি করতে পারেন। মেশিন লার্নিং এখনও গবেষণার একটি সক্রিয় ক্ষেত্র এবং কোন লার্নিং মডেলটি ব্যবহার করা উচিত তা বিতর্কযোগ্য হতে পারে।

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

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