এনপি সমস্যা সমাধানের জন্য কৃত্রিম নিউরাল নেটওয়ার্ক বিকশিত করা


10

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

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

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

সুতরাং মূলত আমার প্রশ্নটি হ'ল: প্রতিটি এনপি সমস্যা সমাধানের জন্য আমরা জেনেটিক অ্যালগোরিদম + নিউরাল নেটওয়ার্কগুলি ব্যবহার করতে পারি না? আমরা কেবল সঠিক বিবর্তনীয় প্রসঙ্গ তৈরি করি এবং "প্রকৃতি" কে একটি সমাধান খুঁজে বের করি।

ইনসেপশনিজম: নিউরাল নেটওয়ার্কগুলির আরও গভীরভাবে যাওয়া

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

ধারণা


1
আমাদের দরকার নেই। আমরা কেবল নিষ্ঠুর শক্তি ব্যবহার করতে পারি। আপনার লক্ষ্য ঠিক কি?
পাল জিডি

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

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

আমার বক্তব্যটি হ'ল: একটি অ্যাপ্রোপিয়েট মিউটেশন রেট এবং পর্যাপ্ত সময় ব্যবহার করে আমরা সর্বোত্তম সমাধানটি খুঁজে পেতে পারি। (বা কমপক্ষে একটি স্থানীয় সর্বাধিক) চিত্র: ধারণা
এনএমও

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

উত্তর:


21

না। এই দিকটি দুটি কারণে কার্যকর হওয়ার সম্ভাবনা নেই:

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

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

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


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

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

9

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


4

নিউরাল নেটওয়ার্কগুলি আসলে এনপি-সম্পূর্ণ সমস্যাগুলি সমাধান করে না। তারা কি কি করতে Do যা সাতিশয় দ্বারা NP-সম্পূর্ণ সমস্যার কাছাকাছি সমস্যার সমাধানের হয়।

নিউরাল নেটওয়ার্কগুলির একটি বড় বৈশিষ্ট্য হ'ল তারা প্রতিবার "সঠিক" উত্তর খুঁজতে বাধ্য নয়। তাদের "ভুল" হতে দেওয়া হয়। উদাহরণস্বরূপ, আপনি হয়ত একটি দ্বি-প্যাকিং সমস্যা সমাধান করছেন এবং এমন একটি সমাধানে এসেছেন যা আদর্শ সমাধানের 1% ছাড়াই এবং সেই উত্তরে সম্পূর্ণ সন্তুষ্ট থাক।

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

এটি যেমন ঘটে থাকে, আমরা যখন বাস্তব জীবনে এনপি-সম্পূর্ণ সমীকরণগুলি ব্যবহার করার চেষ্টা করি তখন আমাদের প্রায়শই আসল উত্তরের প্রয়োজন হয় না । আমরা "ঘনিষ্ঠ" উত্তরের সাথে প্রায়শই খুব স্বাচ্ছন্দ্য বোধ করি, যদিও আমরা প্রায়শই কী "ক্লোজ" মেট্রিক ব্যবহার করছি তা ব্যাখ্যা করার জন্য কোনও শব্দ নেই। এগুলি এমন পরিস্থিতিতে যেখানে নিউরাল নেটওয়ার্কটি আপনাকে জিজ্ঞাসা করতে চাওয়া প্রকৃত প্রশ্নের উত্তর দিতে পারে, পরিবর্তে আপনি যে এনপি-সম্পূর্ণ সমস্যাটি চেয়েছিলেন তা সমাধান করার পরিবর্তে।


1

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

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

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


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

ঠিক আছে কিছু সম্পাদনা আমাকে যে কোনও জায়গায় আরও গভীরতার মধ্যে যেতে হবে কিনা সে সম্পর্কে আমাকে জানতে দিন
নিক করুন

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

এই উত্তরের এনপি-সম্পূর্ণতার সংজ্ঞা সম্পর্কে কিছু বিভ্রান্তি রয়েছে। কি আপনি দাবি পক্ষান্তরে যদি আমরা একটি দ্বারা NP-সম্পূর্ণ সমস্যা সমাধানের, আমরা করতে পারেন পরীক্ষা কিনা আমরা সঠিক সমাধান আছে। একটি এনপি-সম্পূর্ণ অনুসন্ধান সমস্যা এবং একটি এনপি-হার্ড অপ্টিমাইজেশান সমস্যার মধ্যে পার্থক্য রয়েছে; প্রাক্তনদের জন্য, সমাধানটি সঠিক কিনা তা আমরা কার্যকরীভাবে পরীক্ষা করতে পারি, তবে পরবর্তীকালের জন্য আমরা নাও পারব।
ডিডাব্লিউ

আমি যোগ্যতা অর্জন করেছি যে আমরা সত্যিকারের সর্বোত্তম সমাধানটি প্রথমে জোর করে জঞ্জাল না করেই এটি সর্বোত্তম সমাধানটি যাচাই করতে পারিনি, এটি কি সঠিক নয়? আমি আমার যুক্তির পক্ষে যুক্তি দিয়েছি যে স্নায়ুবিভাজনটি ঝরঝরে অ্যালগরিদম এবং ভাগ করে নেওয়া ফিটনেসের রেফারেন্সযুক্ত লিঙ্কের সাথে স্থানীয় অপ্টিমগুলিতে আটকা পড়ার পক্ষে কম, তবে আমি মনে করি যে স্থানীয় আচ্ছাদনগুলিতে আটকা পড়ার ধীরে ধীরে উত্থানের সংবেদনশীলতা বরং স্বতঃস্ফূর্ত, এবং হাইপারপ্যারমিটারের সুরের ক্ষেত্রে কাঠামো এটিকে হ্রাস করতে সহায়তা করতে পারে আমি এটিকে ঘৃণা করব না যে এ্যাডভারসন হিসাবে এসএইচডি আটকে যাওয়ার জন্য।
নিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.