লংশর্ট টার্ম মেমরি (সোর্স উইকিপিডিয়া)

লং শর্ট টার্ম মেমরি(এলএসটিএম)পরিচিতি

--

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

আরএনএন (রিকারেন্ট নিউরাল নেটওয়ার্ক)

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

আরএনএন

এখানে,

এলএসটিএম

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

সেল স্টেট

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

সেল স্টেট

ইনপুট গেট

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

ইনপুট গেট

ফরগেট

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

ফরগেট

আউটপুট গেট

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

আউটপুট গেট

ফরগেট গেটটি পূর্ব পদক্ষেপগুলি থেকে কী প্রাসঙ্গিক তা স্থির করে। ইনপুট গেটটি সিদ্ধান্ত নেয় যে বর্তমান পদক্ষেপ থেকে কোন তথ্য যুক্ত করতে প্রাসঙ্গিক। আউটপুট গেটটি নির্ধারণ করে যে পরবর্তী লুকানো অবস্থাটি কী হবে।

--

--