প্রকল্প সম্পর্কে

NEAT-AI হলো একটি নিউরোইভোলিউশন লাইব্রেরি যা Deno/TypeScript-এ লেখা এবং ২০০২ সালে Stanley ও Miikkulainen-এর প্রকাশিত NEAT (নিউরোইভোলিউশন অফ অগমেন্টিং টপোলজিস) অ্যালগরিদম বাস্তবায়ন ও সম্প্রসারিত করে। প্রকল্পটি একটি হাইব্রিড ইভোলিউশনারি এবং গ্রেডিয়েন্ট-ভিত্তিক সিস্টেমে পরিণত হয়েছে যা ক্লাসিক NEAT পদ্ধতির উপর আধুনিক গবেষণা কৌশল স্তরিত করে। মূল আর্কিটেকচার "ক্রিয়েচার"-এর উপর কেন্দ্রীভূত — জিনোম যা TypeScript-এ মিউটেট ও ব্রিড করে, ফরোয়ার্ড পাস একটি ভেন্ডরড WebAssembly (WASM) মডিউলের ভিতরে সম্পাদিত হয়। একটি ঐচ্ছিক Rust এক্সটেনশন (NEAT-AI-Discovery) Deno FFI-এর মাধ্যমে GPU-ত্বরিত কাঠামোগত বিশ্লেষণ প্রদান করে, ত্রুটি-নির্দেশিত বিশ্লেষণের ভিত্তিতে নতুন সিন্যাপস প্রস্তাব করে। মূল বৈশিষ্ট্যগুলির মধ্যে রয়েছে: ১. **সম্প্রসারণযোগ্য পর্যবেক্ষণ**: ইনপুট এবং আউটপুট বৈশিষ্ট্যগুলি অবস্থানগত সূচকের পরিবর্তে স্থিতিশীল UUID দ্বারা চিহ্নিত করা হয়, যা ইভোলিউশন পুনরায় শুরু না করেই নতুন পর্যবেক্ষণ যোগ করতে এবং মাল্টি-মেশিন পুনঃসংযোজন সক্ষম করে। ২. **বিতরণকৃত প্রশিক্ষণ**: প্রশিক্ষণ এবং ইভোলিউশন একাধিক স্বাধীন নোডে চলতে পারে, সেরা-অফ-ব্রিড ক্রিয়েচার একটি কেন্দ্রীয় কন্ট্রোলারে একত্রিত হয়, যা ইভোলিউশনারি অ্যালগরিদমের দ্বীপ মডেল প্রতিফলিত করে। ৩. **আজীবন শিক্ষা**: পরিবর্তনশীল পরিবেশে ক্রমাগত শিক্ষার জন্য ডিজাইন করা হয়েছে, সপ্তাহ বা মাস ধরে নতুন ডেটা আসার সাথে সাথে ক্রমাগত শিক্ষা সমর্থন করে। ৪. **WASM অ্যাক্টিভেশন**: লাইব্রেরি স্বয়ংক্রিয়ভাবে WASM ব্যাকএন্ড শুরু করে; কলাররা একটি একক ফরোয়ার্ড পাসের জন্য কেবল `activate()` কল করে। ৫. **অনন্য স্কোয়াশ ফাংশন**: স্ট্যান্ডার্ড বিকল্পগুলির বাইরে IF, MAX এবং MIN-এর মতো অ্যাক্টিভেশন ফাংশন সমর্থন করে। ৬. **নিউরন প্রুনিং**: প্রশিক্ষণের সময় যাদের অ্যাক্টিভেশন পরিবর্তিত হয় না এমন নিউরন সরিয়ে দেয়, একটি জিরোথ-অর্ডার স্যালিয়েন্সি মানদণ্ড ব্যবহার করে। ৭. **CRISPR**: ইভোলিউশনের সময় জনসংখ্যায় হাতে-তৈরি জিন (নিউরন এবং সিন্যাপস) ইনজেকশনের অনুমতি দেয়, জনসংখ্যা সিডিংয়ের জন্য জীববিজ্ঞানের সংক্ষিপ্ত রূপ ধার করে। ৮. **গ্রাফটিং**: জিনগতভাবে অসঙ্গত পিতামাতার মধ্যে ক্রস-দ্বীপ আন্তঃপ্রজনন সক্ষম করে, বৈচিত্র্য সংরক্ষণ করে। ৯. **মেমেটিক ইভোলিউশন**: ভবিষ্যত প্রজন্মকে সূক্ষ্ম-সুর করার জন্য সবচেয়ে উপযুক্ত ক্রিয়েচারের বায়াস এবং ওজন রেকর্ড ও ব্যবহার করে, শেখা ওজন জিনোমে ফিরে লেখে (লামার্কিয়ান পদ্ধতি)। ১০. **ত্রুটি-নির্দেশিত কাঠামোগত ইভোলিউশন (আবিষ্কার)**: নিউরন অ্যাক্টিভেশন এবং ত্রুটি বিশ্লেষণ করে গতিশীলভাবে নতুন সিন্যাপস চিহ্নিত ও তৈরি করে। Rust এক্সটেনশন GPU-ত্বরিত বিশ্লেষণ সম্পাদন করে এবং FFI-এর উপর কাঠামোগত প্রার্থী প্রস্তাব করে। ১১. **অভিযোজিত মিউটেশন হার**: ক্রিয়েচারের আকার এবং ফিটনেস অগ্রগতির ভিত্তিতে মিউটেশন কৌশল স্বয়ংক্রিয়ভাবে সামঞ্জস্য করে, অনুসন্ধান এবং শোষণের ভারসাম্য বজায় রাখে। ১২. **ট্রান্সফার লার্নিং**: প্রশিক্ষিত ক্রিয়েচার মেটাডেটা সহ চেকপয়েন্ট হিসাবে রপ্তানি করুন, UUID ম্যাপিং সহ নতুন কাজে আমদানি করুন এবং প্রাক-প্রশিক্ষিত ক্রিয়েচার দিয়ে জনসংখ্যা সিড করুন। ১৩. **ONNX রপ্তানি**: স্ট্যান্ডার্ড ML ইনফারেন্স পাইপলাইনে স্থাপনের জন্য প্রশিক্ষিত ক্রিয়েচার ONNX ফরম্যাটে রপ্তানি করুন। ১৪. **MCMC মিউটেশন গ্রহণ**: মিউটেশন গ্রহণের জন্য Metropolis-Hastings মানদণ্ড ব্যবহার করে, ~২৩.৪% গ্রহণের হারের দিকে অভিযোজিত তাপমাত্রা টিউনিং সহ। ১৫. **উন্নত ব্রিডিং কৌশল**: জিনগতভাবে অসঙ্গত ক্রিয়েচারের জন্য একাধিক কৌশল, যার মধ্যে ইনপুট-ওজন কোসাইন সাদৃশ্য, সাবগ্রাফ ট্রান্সপ্লান্টেশন এবং বৈচিত্র্য-চালিত ব্রিডিং অন্তর্ভুক্ত। ১৬. **সিন্থেটিক সিন্যাপস প্রশিক্ষণ**: ব্যাকপ্রোপাগেশনের সময় অস্থায়ীভাবে ইন্টার-লেয়ার সংযোগ ঘন করে, তারপর প্রশিক্ষণের পরে শূন্যের কাছাকাছি সিন্যাপস প্রুন করে। ১৭. **র্যান্ডম ইমিগ্র্যান্ট**: জনসংখ্যা স্থবির হলে, নতুন জেনেটিক উপাদান প্রবর্তনের জন্য দুর্বলতম অ-এলিট ক্রিয়েচারকে সদ্য সিড করা জিনোম দিয়ে প্রতিস্থাপন করে। প্রকল্পটি জাভাস্ক্রিপ্ট রেজিস্ট্রি (JSR)-তে প্রকাশিত এবং কোনো ইনস্টলেশনের প্রয়োজন নেই — WASM ব্যাকএন্ড প্রথম ব্যবহারে নিজেকে শুরু করে। এটি NEAT-AI-core (ভাগ করা Rust কম্পিউটেশন ক্রেট), NEAT-AI-Discovery (GPU-ত্বরিত কাঠামোগত বিশ্লেষণের জন্য Rust FFI এক্সটেনশন), NEAT-AI-scorer (Rust স্কোরিং অ্যাপ্লিকেশন), NEAT-AI-Backpropagation (নেটিভ Rust ব্যাকপ্রোপাগেশন), NEAT-AI-Lamarck (পরীক্ষামূলক Rust অপ্টিমাইজার), NEAT-AI-Explore (TypeScript ভিজ্যুয়ালাইজেশন টুল) এবং অন্যান্য বেশ কয়েকটি পরীক্ষামূলক অপ্টিমাইজার ও টুল সহ রিপোজিটরির একটি পরিবারের অংশ। লাইব্রেরিটি DenoJS পরিবেশে ব্যবহারের জন্য ডিজাইন করা হয়েছে এবং মৌলিক ক্রিয়েচার তৈরি ও অ্যাক্টিভেশন থেকে শুরু করে উন্নত বিতরণকৃত প্রশিক্ষণ, কাঠামোগত আবিষ্কার এবং ONNX রপ্তানির মাধ্যমে উৎপাদন স্থাপনা পর্যন্ত নিউরোইভোলিউশনের জন্য একটি ব্যাপক টুলকিট প্রদান করে।