From 8470d31a8fdc66954e0b2b40b55fe02953ce0538 Mon Sep 17 00:00:00 2001 From: Mahbuba Tasmin Date: Sun, 17 Jan 2021 20:59:39 +0600 Subject: [PATCH 01/35] week-6 lec-1 update --- 06-convnet.ipynb | 6 +- docs/bn/week06/06-1.md | 151 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 154 insertions(+), 3 deletions(-) create mode 100644 docs/bn/week06/06-1.md diff --git a/06-convnet.ipynb b/06-convnet.ipynb index 99ddb18de..292b9b2d3 100644 --- a/06-convnet.ipynb +++ b/06-convnet.ipynb @@ -436,9 +436,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python [conda env:dl-minicourse] *", + "display_name": "Python 3", "language": "python", - "name": "conda-env-dl-minicourse-py" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -450,7 +450,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.3" + "version": "3.7.9" } }, "nbformat": 4, diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md new file mode 100644 index 000000000..d92398679 --- /dev/null +++ b/docs/bn/week06/06-1.md @@ -0,0 +1,151 @@ +--- +lang-ref: ch.06-1 +lecturer: Yann LeCun +title: Applications of Convolutional Network +authors: Shiqing Li, Chenqin Yang, Yakun Wang, Jimin Tan +date: 2 Mar 2020 +lang:bn +translation-date:17 Jan 2020 +translator:Mahbuba Tasmin +--- + + +## [Zip Code Recognition](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=43s) + + + +## জিপ কোড সনাক্তকরণ +পূর্ববর্তী লেকচারে আমরা দেখিয়েছি কনভলিউশন নিউরাল নেটওয়ার্ক কিভাবে সংখ্যা সনাক্ত করতে পারে, তবে প্রশ্ন থেকে যায় কিভাবে মডেলটি প্রতিটি সংখ্যাকে আলাদা করে বাছাই করে এবং পার্শ্ববর্তী সংখ্যাগুলোতে বিচ্ছিন্ন ভুল সনাক্তকরণ থেকে বিরত থাকে। পরবর্তী ধাপে লক্ষ্য থাকবে সমাপতিত/অসমাপতিত কিংবা পৃথক অবজেক্ট সনাক্তকরণ এবং নন-ম্যাক্সিমাম সাপ্রেশন (এন এম এস) এর সাধারণ পন্থা ব্যবহার করা। আলোচনার প্রেক্ষাপট অনুযায়ী যেহেতু ইনপুট হচ্ছে একটি পৃথক সংখ্যা সমূহের ধারা, সংগৃহীত কৌশলটি কয়েকটি কনভলিউশনাল নিউরাল নেটওয়ার্ক ট্রেইনিং এবং পরবর্তীতে কনভলিউশনাল নেটওয়ার্ক কর্তৃক সৃষ্ট অধিকাংশ সঠিক সনাক্তকরণ মত কিংবা সর্বোচ্চ সনাক্তকরণ অঙ্ক অনুযায়ী নিরীক্ষণীয় সংখ্যাটি বাছাই করবে। + + +### Recognition with CNN + + + +## কনভলিউশনাল নিউরাল নেটওয়ার্ক দ্বারা সনাক্তকরণ +এই পর্বে আমরা দেখাব পাঁচটি পৃথক জিপ কোড সনাক্তকরণের কার্যক্রম। আলোচিত পদ্ধতিতে প্রতিটি সংখ্যা আলাদা করে বাছাই করার ব্যাপারে কোন পূর্ববর্তী নির্দেশনা দেয়া হয়নি। এটির লক্ষ্য হচ্ছে পাঁচটি নিরীক্ষণীয় সংখ্যা অবশ্যই নির্ধারণ করা।আলোচ্য কৌশলটি ( চিত্র ১) চারটি বিভিন্ন আকারের কনভলিউশনাল নেটওয়ার্ক দ্বারা গঠিত, প্রতিটি নেটওয়ার্ক থেকে একটি পৃথক আউটপুটের সমষ্টি তৈরি হবে। সংগৃহীত আউটপুট গুলো ম্যাট্রিক্সের মাধ্যমে উপস্থাপিত হয়েছে। বিভিন্ন মডেল থেকে আসা চারটি আউটপুট ম্যাট্রিক্স তৈরি হয়েছে মডেলের শেষ স্তরের বিভিন্ন প্রস্থের কার্নেল থেকে। প্রতিটি আউটপুটে ১০টি সারি রয়েছে, যা ০ থেকে ৯ পর্যন্ত ১০টি শ্রেণীকে উপস্থাপন করছে। প্রতিটি আউটপুট ম্যাট্রিক্সের বৃহত্তর সাদা বর্গটি সম্পর্কিত সংখ্যা শ্রেণীর সর্বোচ্চ অঙ্ক উপস্থাপন করে। এই চারটি আউটপুট সারিতে অবস্থিত কার্নেল সমূহের আনুভূমিক আকৃতি যথাক্রমে ৫,৪,৩ এবং ২ আকারের। কার্নেলের আকৃতির পরিমাপ নির্ধারণ করে ইনপুটের ওপর সংশ্লিষ্ট মডেলের নিরীক্ষণ পরিধির প্রস্থ। পরবর্তীতে মডেলটি উক্ত নিরীক্ষণ পরিধির আওতায় সংখ্যাগরিষ্ঠ ভোটের ভিত্তিতে সর্বোচ্চ ফলাফল অঙ্কের সাথে সংশ্লিষ্ট শ্রেণিটি নির্ধারণ করে। প্রয়োজনীয় তথ্য বের করে আনতে মনে রাখতে হবে যে সব অক্ষরের সংযুক্তি সম্ভবপর নয়। অতএব, ত্রুটি সংশোধন পূর্বক ইনপুটের সীমাবদ্ধতাকে অতিক্রম করে কার্যকর ভাবে নিশ্চিত করে যে আউটপুট গুলো সত্যিকার অর্থে জিপ কোডকে উপস্থাপন করছে। + +
+
+Figure 1: Multiple classifiers on zip code recognition +
+ + + + +অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত। + + +## [Face detection](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) + + + +## মুখাবয়ব সনাক্তকরণ +কনভলিউশনা নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে ৩০ x ৩০ পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি ৩০x৩০ পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ + + + + +##ফলস পজিটিভসঃ +একটি স্থিরচিত্রের টুকরো অংশের মাঝে মুখাবয়বের চেয়ে ভিন্ন কয়েক ধরণের অবজেক্ট প্রতীয়মান হতে পারে। মডেল ট্রেইনিং ধাপে এই সব ধরণের ভিন্ন অবজেক্ট গুলো নিরীক্ষণের আওতার বাইরে থেকে যেতে পারে ( সব ধরণের বলতে অমুখাবয়ব সম্পর্কিত চিত্রের অংশ গুলো দ্বারা গঠিত একটি সম্পূর্ণ সেট)। কাজেই টেস্টিং ধাপে এসে মডেল এর আউটপুট ফলস পজিটিভ দ্বারা অনেকাংশে প্রভাবিত হতে পারে। উদাহরণ স্বরূপ বলা যায় যে, যদি নেটওয়ার্কটি এমন চিত্র সমূহ দ্বারা ট্রেইনড না হয় যেখানে হাতের উপস্থিতি আছে, মডেলটি ত্বকের বর্ণের উপর ভিত্তি করে মুখাবয়ব চিহ্নিত করতে পারে এবং ত্রুটিপূর্ণ শ্রেণীবিভাগের মাধ্যমে চিত্রে হাতের উপস্থিতিকে মুখের সম্যক বলে চিহ্নিত করতে পারে। ভুল চিহ্নিতকরণের মধ্য দিয়ে ফলস পজিটিভস বৃদ্ধি পেতে পারে। + + + +##বিভিন্ন আকারের মুখাবয়বঃ সকল মুখের ছবি ৩০x৩০ পিক্সেলস হতে নাও পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু মাপের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি ৩০x৩০ পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক \sqrt 2 গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে ৩০x৩০ পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক ২০x20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি \sqrt 2 গুণক পরিমাণ ছোট করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। তাহলে সর্বমোট খরচ দাঁড়ায় ১+১/২+১/৪+১/৮+১/১৬... , ২। একটি বহু সংস্করণের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। + +### A multi-scale face detection system + +
+
+Figure 2: Face detection system +
+ + +##বহু-সংস্করণ সংযুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি + +৩ নং চিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি ২০x২০ পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি। + + +
+
+Figure 3: Face detector scores for various scaling factors +
+ + +### Non-maximum suppression + +For each high-scoring region, there is probably a face underneath. If more faces are detected very close to the first, it means that only one should be considered correct and the rest are wrong. With non-maximum suppression, we take the highest-scoring of the overlapping bounding boxes and remove the others. The result will be a single bounding box at the optimum location. + + +### Negative mining + +In the last section, we discussed how the model may run into a large number of false positives at test time as there are many ways for non-face objects to appear similar to a face. No training set will include all the possible non-face objects that look like faces. We can mitigate this problem through negative mining. In negative mining, we create a negative dataset of non-face patches which the model has (erroneously) detected as faces. The data is collected by running the model on inputs that are known to contain no faces. Then we retrain the detector using the negative dataset. We can repeat this process to increase the robustness of our model against false positives. + + +## Semantic segmentation + +Semantic segmentation is the task of assigning a category to every pixel in an input image. + + +### [CNN for Long Range Adaptive Robot Vision](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) + +In this project, the goal was to label regions from input images so that a robot can distinguish between roads and obstacles. In the figure, the green regions are areas the robot can drive on and the red regions are obstacles like tall grass. To train the network for this task, we took a patch from the image and manually label it traversable or not (green or red). We then train the convolutional network on the patches by asking it to predict the color of the patch. Once the system is sufficiently trained, it is applied to the entire image, labeling all the regions of the image as green or red. + +
+
+Figure 4: CNN for Long Range Adaptive Robot Vision (DARPA LAGR program 2005-2008) +
+ +There were five categories for prediction: 1) super green, 2) green, 3) purple: obstacle foot line, 4) red obstacle 5) super red: definitely an obstacle. + + +**Stereo Labels** (Figure 4, Column 2) + Images are captured by the 4 cameras on the robot, which are grouped into 2 stereo vision pairs. Using the known distances between the stereo pair cameras, the positions of every pixel in 3D space are then estimated by measuring the relative distances between the pixels that appear in both the cameras in a stereo pair. This is the same process our brains use to estimate the distance of the objects that we see. Using the estimated position information, a plane is fit to the ground, and pixels are then labeled as green if they are near the ground and red if they are above it. + +* **Limitations & Motivation for ConvNet**: The stereo vision only works up to 10 meters and driving a robot requires long-range vision. A ConvNet however, is capable of detecting objects at much greater distances, if trained correctly. + +
+
+Figure 5: Scale-invariant Pyramid of Distance-normalized Images +
+ +* **Served as Model Inputs**: Important pre-processing includes building a scale-invariant pyramid of distance-normalized images (Figure 5). It is similar to what we have done earlier of this lecture when we tried to detect faces of multiple scales. + +**Model Outputs** (Figure 4, Column 3) + +The model outputs a label for every pixel in the image **up to the horizon**. These are classifier outputs of a multi-scale convolutional network. + +* **How the Model Becomes Adaptive**: The robots have continuous access to the stereo labels, allowing the network to re-train, adapting to the new environment it's in. Please note that only the last layer of the network would be re-trained. The previous layers are trained in the lab and fixed. + +**System Performance** + +When trying to get to a GPS coordinate on the other side of a barrier, the robot "saw" the barrier from far away and planned a route that avoided it. This is thanks to the CNN detecting objects up 50-100m away. + +**Limitation** + +Back in the 2000s, computation resources were restricted. The robot was able to process around 1 frame per second, which means it would not be able to detect a person that walks in its way for a whole second before being able to react. The solution for this limitation is a **Low-Cost Visual Odometry** model. It is not based on neural networks, has a vision of ~2.5m but reacts quickly. + + +### Scene Parsing and Labelling + +In this task, the model outputs an object category (buildings, cars, sky, etc.) for every pixel. The architecture is also multi-scale (Figure 6). + +
+
+Figure 6: Multi-scale CNN for scene parsing +
+ +Notice that if we back project one output of the CNN onto the input, it corresponds to an input window of size $46\times46$ on the original image at the bottom of the Laplacian Pyramid. It means we are **using the context of $46\times46$ pixels to decide the category of the central pixel**. + +However, sometimes this context size is not enough to determine the category for larger objects. + +**The multiscale approach enables a wider vision by providing extra rescaled images as inputs.** The steps are as follows: +1. Take the same image, reduce it by the factor of 2 and a factor of 4, separately. +2. These two extra rescaled images are fed to **the same ConvNet** (same weights, same kernels) and we get another two sets of Level 2 Features. +3. **Upsample** these features so that they have the same size as the Level 2 Features of the original image. +4. **Stack** the three sets of (upsampled) features together and feed them to a classifier. + + +Now the largest effective size of content, which is from the 1/4 resized image, is $184\times 184\, (46\times 4=184)$. + +**Performance**: With no post-processing and running frame-by-frame, the model runs very fast even on standard hardware. It has a rather small size of training data (2k~3k), but the results are still record-breaking. From ea1922616e37257c12223f9e03286df6c2a6fd6b Mon Sep 17 00:00:00 2001 From: Mahbuba Tasmin Date: Sun, 17 Jan 2021 21:58:03 +0600 Subject: [PATCH 02/35] week-6 readme update --- docs/bn/week06/06.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 docs/bn/week06/06.md diff --git a/docs/bn/week06/06.md b/docs/bn/week06/06.md new file mode 100644 index 000000000..f0eb87912 --- /dev/null +++ b/docs/bn/week06/06.md @@ -0,0 +1,28 @@ +--- +lang-ref: ch.06 +title: Week 6 +lang:bn +translation-date:17 Jan 2020 +translator:Mahbuba Tasmin +--- + +## Lecture part A + + +##লেকচার পার্ট A +আমরা কনভলিউশনাল নিউরাল নেটওয়ার্কের তিনটি প্রয়োগ পদ্ধতি আলোচনা করেছি। অঙ্ক সনাক্তকরণ এবং পাঁচ অঙ্কের জিপ কোড সনাক্তকরণ দিয়ে শুরু করেছি । অবজেক্ট ডিটেকশনে আমরা আলোচনা করেছি কিভাবে মুখাবয়ব সনাক্তকরণে বহু-সংস্করণ সংযুক্ত কাঠামো ব্যবহার করা যায়। লেকচারটি শেষ হয়েছে কিভাবে কনভলিউশনাল নেট সেমান্টিক সেগমেন্টেশনে ব্যবহৃত হয়,রোবটিক ভিশন সিস্টেমের সাথে সম্পর্কিত এবং শহুরে পরিবেশে অবজেক্ট সেগমেন্টেশনের বাস্তব উদাহরণ দেখানো হয়েছে + + + +## Lecture part B + + +##লেকচার পার্ট B +এই পর্বে আমরা রিকারেন্ট নিউরাল নেটওয়ার্কস, সম্পর্কিত সমস্যা গুলো এবং সমাধানের সাধারণ কৌশলগুলি অনুসন্ধান করেছি। পরবর্তীতে আমরা কয়েক প্রকারে মডিউল পর্যালোচনা করেছি যেগুলো ব্যবহৃত হয় রিকারেন্ট মডেল সম্পর্কিত সমস্যা গুলো সমাধানে ( এরমধ্যে অন্তর্গত রয়েছে অ্যাটেনশন, জিআরইউ ( গেটেড রিকারেন্ট ইউনিট), এলএসটিএম ( লং শর্ট টার্ম মেমরি) এবং সিকুয়েন্স-টু-সিকুয়েন্স)। + + + +## Practicum + +##ব্যবহারিক পাঠ্যক্রম + +##নন-ম্যাক্সিমাম সাপ্রেশন +প্রতিটি সর্বোচ্চ ফলাফলের ক্ষেত্রের জন্য আশা করা যায় যে সেখানে একটি মুখ আছে সম্ভবত। যদি একাধিক মুখাবয়ব প্রথম চিহ্নিত মুখের খুব কাছের অংশে পাওয়া যায়, এর মানে দাঁড়ায় যে কেবল মাত্র একটি চিহ্নিত অংশ সঠিকভাবে গণ্য করতে হবে এবং বাকি গুলো ভুল চিহ্নিতকরণের ফলাফল। নন-ম্যাক্সিমাম সাপ্রেশন দিয়ে আমরা অধিক্রমিত বাউন্ডিং বক্সের সর্বোচ্চ ফলাফল গ্রহণ করি এবং বাকি গুলো অপসারণ করি। চূড়ান্ত ফলাফল হবে সর্বাপেক্ষা অনুকূল স্থানে অবস্থিত একটি একক বাউন্ডিং বক্স। ### Negative mining -In the last section, we discussed how the model may run into a large number of false positives at test time as there are many ways for non-face objects to appear similar to a face. No training set will include all the possible non-face objects that look like faces. We can mitigate this problem through negative mining. In negative mining, we create a negative dataset of non-face patches which the model has (erroneously) detected as faces. The data is collected by running the model on inputs that are known to contain no faces. Then we retrain the detector using the negative dataset. We can repeat this process to increase the robustness of our model against false positives. + +##নেগেটিভ মাইনিং +শেষ অনুচ্ছেদে আমরা আলোচনা করেছি যে কিভাবে টেস্টিং পিরিয়ডে মডেল অধিক সংখ্যক ফলস পজিটিভস নিরীক্ষার মুখোমুখি হতে পারে, যেহেতু নন-ফেস অবজেক্টের বিভিন্ন প্রকারে মুখাবয়বের সাথে সাদৃশ্য থাকতে পারে। কোন ট্রেইনিং সেট সব রকম সম্ভাবনার নন-ফেস অবজেক্ট অন্তর্ভুক্ত করবেনা যেগুলো দেখতে চেহারার মত। আমরা এই সমস্যা নিরসনে নেগেটিভ মাইনিং ব্যবহার করতে পারি। নেগেটিভ মাইনিং প্রক্রিয়াতে, আমরা নন-ফেস ক্ষুদ্র অংশ গুলোর দ্বারা একটি নেগেটিভ ডেটাসেট প্রস্তুত করি, যেগুলো মডেল ভুলক্রমে মুখাবয়ব হিসেবে চিহ্নিত করেছে। মডেলটিকে এমন সব জ্ঞাত ইনপুটের উপর চালানো হয়েছে যেগুলোতে জ্ঞাতসারে নন-ফেস অংশ আছে এবং ডেটা সংগ্রহে এই পদ্ধতি গ্রহণ করা হয়েছে। এরপর ডিটেক্টরটি পুনরায় ট্রেইন করা হয়েছে নেগেটিভ ডেটাসেট ব্যবহার করে। আমরা এই পদ্ধতি পুনরাবৃত্তি করতে পারি, যাতে করে ফলস পজিটিভের বিপরীতে মডেলের সঠিক নির্ধারণ ক্ষমতা বৃদ্ধি পায়। ## Semantic segmentation From 8d28d1ac9aed18abe125edc9261d4ad6f0768d6e Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Mon, 15 Feb 2021 12:00:07 +0600 Subject: [PATCH 04/35] week-6 lecture 1 completed --- docs/bn/week06/06-1.md | 75 +++++++++++++++++++++++++++++------------- 1 file changed, 53 insertions(+), 22 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 45a93c824..8f8187bec 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -5,7 +5,7 @@ title: Applications of Convolutional Network authors: Shiqing Li, Chenqin Yang, Yakun Wang, Jimin Tan date: 2 Mar 2020 lang:bn -translation-date:17 Jan 2020 +translation-date:15 Feb 2020 translator:Mahbuba Tasmin --- @@ -88,68 +88,99 @@ translator:Mahbuba Tasmin ## Semantic segmentation -Semantic segmentation is the task of assigning a category to every pixel in an input image. - + + সেমান্টিক সেগমেন্টেশন একটি ইনপুট চিত্রের প্রতিটি পিক্সেলে ভিন্ন ভিন্ন শ্রেণী নির্দিষ্ট করে দেয় । ### [CNN for Long Range Adaptive Robot Vision](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) +দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশন -In this project, the goal was to label regions from input images so that a robot can distinguish between roads and obstacles. In the figure, the green regions are areas the robot can drive on and the red regions are obstacles like tall grass. To train the network for this task, we took a patch from the image and manually label it traversable or not (green or red). We then train the convolutional network on the patches by asking it to predict the color of the patch. Once the system is sufficiently trained, it is applied to the entire image, labeling all the regions of the image as green or red. + +এই প্রজেক্টের উদ্দেশ্য ছিল ইনপুট চিত্রের থেকে বিশেষ অংশ গুলো লেবেল করে দেয়া, যাতে করে একটি রোবট রাস্তা এবং প্রতিবন্ধক আলাদা করে চিনতে পারে। নিচের চিত্রে, সবুজ অংশ গুলোতে রোবটটি গাড়ি চালাতে পারবে, এবং লাল অংশের মধ্যে আছে লম্বা ঘাসের ন্যায় প্রতিবন্ধক। এই করণীয় কাজের উদ্দেশ্যে নেটওয়ার্ক ট্রেইন করার জন্য আমরা ইনপুট চিত্রের একটি অংশকে গাড়ি চালনার উপযুক্ত কিনা (সবুজ কিংবা লাল) হাতে করে লেবেল করে দিয়েছি। এরপর আমরা কনভলিউশনাল নেটওয়ার্ক লেবেল করা চিত্রের ওপর ট্রেইন করি এবং নেটওয়ার্কটিকে চিত্রের লেবেল করা অংশের রঙ অনুমান করতে বলি।

Figure 4: CNN for Long Range Adaptive Robot Vision (DARPA LAGR program 2005-2008)
-There were five categories for prediction: 1) super green, 2) green, 3) purple: obstacle foot line, 4) red obstacle 5) super red: definitely an obstacle. + +এখানে অনুমানের জন্য পাঁচটি শ্রেণী রয়েছে ঃ +১ . গাঢ় সবুজ ২. সবুজ ৩. নীল বেগুনি (পার্পল) ঃ পদচিহ্ন অন্তরায় ৪ . লাল প্রতিবন্ধক ৫ . গাঢ় লাল ( অবশ্যম্ভাবী প্রতিবন্ধক) **Stereo Labels** (Figure 4, Column 2) - Images are captured by the 4 cameras on the robot, which are grouped into 2 stereo vision pairs. Using the known distances between the stereo pair cameras, the positions of every pixel in 3D space are then estimated by measuring the relative distances between the pixels that appear in both the cameras in a stereo pair. This is the same process our brains use to estimate the distance of the objects that we see. Using the estimated position information, a plane is fit to the ground, and pixels are then labeled as green if they are near the ground and red if they are above it. + +**স্টেরিও লেবেলগুলো** (চিত্র 4, কলাম 2) চিত্রগুলি রোবোটের ৪টি ক্যামেরার দ্বারা ক্যাপচার করা হয়েছে, যা ২টি স্টেরিও দর্শন জোড়ায় বিভক্ত করা হয়েছে। স্টেরিও জুটির ক্যামেরাগুলির মধ্যে পরিচিত দূরত্বগুলি ব্যবহার করে, ত্রিমাত্রিক স্পেসে প্রতিটি পিক্সেলের অবস্থানগুলি তখন স্টেরিও জোড়ায় উভয় ক্যামেরায় প্রদর্শিত পিক্সেলের মধ্যে আপেক্ষিক দূরত্বগুলি পরিমাপ করে অনুমান করা হয়। আমাদের মস্তিস্কে যে প্রক্রিয়ায় জিনিসগুলি দেখি তার দূরত্ব নির্ধারণ করতে একই প্রক্রিয়া অনুসরণ করা হয় । আনুমানিক অবস্থান তথ্য ব্যবহার করে, একটি সমতল ভূমির সাথে ফিট করে এবং তারপরে পিক্সেলগুলি সবুজ হিসাবে লেবেলযুক্ত হয় যদি তারা মাটির কাছাকাছি থাকে এবং সেগুলি উপরে থাকে তবে লাল হয়। + -* **Limitations & Motivation for ConvNet**: The stereo vision only works up to 10 meters and driving a robot requires long-range vision. A ConvNet however, is capable of detecting objects at much greater distances, if trained correctly. +* **Limitations & Motivation for ConvNet**: The stereo vision only works up to 10 meters and driving a robot requires long-range vision. A ConvNet however, is capable of detecting objects at much greater distances, if trained correctly.--> +* **কনভলিউশনাল নেটের সীমাবদ্ধতা এবং অনুপ্রেরণা**: স্টেরিও ভিশনটি কেবল ১০ মিটার পর্যন্ত কাজ করে এবং একটি রোবট চালনা করার জন্য দীর্ঘ-পরিসরের দৃষ্টি প্রয়োজন। একটি কনভনেট যদিও সঠিকভাবে প্রশিক্ষিত হয় তবে অনেক বেশি দূরত্বে অবজেক্টগুলি সনাক্ত করতে সক্ষম।

Figure 5: Scale-invariant Pyramid of Distance-normalized Images
-* **Served as Model Inputs**: Important pre-processing includes building a scale-invariant pyramid of distance-normalized images (Figure 5). It is similar to what we have done earlier of this lecture when we tried to detect faces of multiple scales. + +* **মডেল ইনপুট হিসাবে পরিবেশন করা**: গুরুত্বপূর্ণ প্রাক-প্রক্রিয়াকরণের মধ্যে দূরত্ব-স্বাভাবিককরণের চিত্রগুলির একটি স্কেল-ইনভেরিয়েন্ট পিরামিড তৈরি করা রয়েছে (চিত্র ৫ )। এটি যখন আমরা একাধিক স্কেলের মুখগুলি সনাক্ত করার চেষ্টা করেছি তখন আমরা এই লেকচারটির আগে যা করেছি তার অনুরূপ। + + + -**Model Outputs** (Figure 4, Column 3) + +**মডেল আউটপুট **(চিত্র ৪ , কলাম 3) +মডেলটি **দিগন্ত পর্যন্ত**s চিত্রটিতে প্রতিটি পিক্সেলের জন্য একটি লেবেল আউটপুট দেয়। এগুলি একটি বহু-স্কেল কনভ্যুশনাল নেটওয়ার্কের শ্রেণিবদ্ধ আউটপুট। -The model outputs a label for every pixel in the image **up to the horizon**. These are classifier outputs of a multi-scale convolutional network. + +* **মডেল কীভাবে অভিযোজিত হয়ে ওঠে**: রোবটগুলির স্টেরিও লেবেলগুলিতে অবিচ্ছিন্ন অ্যাক্সেস রয়েছে যা নেটওয়ার্কটিকে পুনরায় প্রশিক্ষণের অনুমতি দেয় এবং এটির মধ্যে নতুন পরিবেশের সাথে খাপ খায়। দয়া করে নোট করুন যে কেবলমাত্র নেটওয়ার্কের শেষ স্তরটিকে পুনরায় প্রশিক্ষণ দেওয়া হবে। পূর্ববর্তী স্তরগুলি ল্যাবে প্রশিক্ষিত এবং স্থায়ী হয়। + -* **How the Model Becomes Adaptive**: The robots have continuous access to the stereo labels, allowing the network to re-train, adapting to the new environment it's in. Please note that only the last layer of the network would be re-trained. The previous layers are trained in the lab and fixed. + -**System Performance** +**সিস্টেমের কর্মক্ষমতা** +কোনো প্রতিবন্ধকের অন্যপাশে কোনো জিপিএস সমন্বয় পাওয়ার চেষ্টা করার সময়, রোবটটি বেশ দূর থেকে প্রতিবন্ধকটি "দেখেছিল " এবং এটি এড়ানোর জন্য একটি রুটের পরিকল্পনা করেছিল। এটি করার উপায় করে দিয়েছে ৫০-১০০ মিটার দূরে সিএনএন দ্বারা অবজেক্ট সনাক্তকরণ প্রক্রিয়া । -When trying to get to a GPS coordinate on the other side of a barrier, the robot "saw" the barrier from far away and planned a route that avoided it. This is thanks to the CNN detecting objects up 50-100m away. -**Limitation** + -Back in the 2000s, computation resources were restricted. The robot was able to process around 1 frame per second, which means it would not be able to detect a person that walks in its way for a whole second before being able to react. The solution for this limitation is a **Low-Cost Visual Odometry** model. It is not based on neural networks, has a vision of ~2.5m but reacts quickly. + + +**সীমাবদ্ধতা** +২০০০ এর দশকে, গণনার সংস্থানগুলি সীমাবদ্ধ ছিল। রোবট প্রতি সেকেন্ডে প্রায় 1 ফ্রেম প্রক্রিয়া করতে সক্ষম হয়েছিল, যার অর্থ এটি প্রতিক্রিয়া জানাতে সক্ষম হওয়ার আগে পুরো এক সেকেন্ডের জন্য কোনও ব্যক্তিকে সনাক্ত করতে সক্ষম হবে না যিনি পুরো দ্বিতীয় সেকেন্ডে রোবটের পথে চলেছেন । এই সীমাবদ্ধতার সমাধান হল **কম দামের ভিজ্যুয়াল ওডোমেট্রি মডেল**। এটি নিউরাল নেটওয়ার্কগুলির উপর ভিত্তি করে নয়, ~ 2.5 m এর দর্শন রয়েছে তবে দ্রুত প্রতিক্রিয়া দেখায়। ### Scene Parsing and Labelling -In this task, the model outputs an object category (buildings, cars, sky, etc.) for every pixel. The architecture is also multi-scale (Figure 6). + + +##দৃশ্য বিশ্লেষণ এবং লেবেলিং +এই কার্যক্রমে, মডেলটি প্রতিটি পিক্সেলের জন্য একটি বস্তুর বিভাগ (বিল্ডিং, গাড়ি, আকাশ, ইত্যাদি) আউটপুট দেয়। মডেলের কাঠামোটি বহু-স্কেল মাত্রায় গঠিত (চিত্র 6)। +

Figure 6: Multi-scale CNN for scene parsing
-Notice that if we back project one output of the CNN onto the input, it corresponds to an input window of size $46\times46$ on the original image at the bottom of the Laplacian Pyramid. It means we are **using the context of $46\times46$ pixels to decide the category of the central pixel**. + +লক্ষ্য করুন যে আমরা যদি সিএনএন-এর একটি আউটপুট ইনপুটটিতে প্রজেক্ট করি তবে এটি ল্যাপ্লাসিয়ান পিরামিডের নিচে মূল চিত্রের 46x46 আকারের একটি ইনপুট উইন্ডোটির সাথে মিল প্রদর্শন করে । এর অর্থ আমরা **কেন্দ্রীয় পিক্সেলের বিভাগ নির্ধারণ করতে 46 × 46 পিক্সেলের প্রসঙ্গটি ব্যবহার করছি**। + + -However, sometimes this context size is not enough to determine the category for larger objects. + +**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে**। নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় ঃ -**The multiscale approach enables a wider vision by providing extra rescaled images as inputs.** The steps are as follows: 1. Take the same image, reduce it by the factor of 2 and a factor of 4, separately. -2. These two extra rescaled images are fed to **the same ConvNet** (same weights, same kernels) and we get another two sets of Level 2 Features. +2. These two extra rescaled images are fed to **the same ConvNet** (same weights, same kernels) and we get another two sets of Level 2 Features.--> 3. **Upsample** these features so that they have the same size as the Level 2 Features of the original image. 4. **Stack** the three sets of (upsampled) features together and feed them to a classifier. +১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। +২ . এই দুটি অতিরিক্ত পুনরুদ্ধার করা চিত্র **একই কনভনেট**(একই ওজন, একই কার্নেল) যোগান দেয়া হয় এবং আমরা স্তর-২ বৈশিষ্ট্যের আরও দুটি সেট পাই। +৩ .এই বৈশিষ্ট্যগুলিকে **প্রবর্ধন** করুন যাতে তাদের মূল চিত্রের স্তর 2 বৈশিষ্ট্যগুলির সমান আকার থাকে। +৪ . তিনটি সেট (আপস্যাম্পলড) বৈশিষ্ট্য একসাথে **স্ট্যাক** করুন এবং সেগুলোকে একটি শ্রেণি নিরীক্ষণে যোগান দিন । -Now the largest effective size of content, which is from the 1/4 resized image, is $184\times 184\, (46\times 4=184)$. + +এখন কন্টেন্টের বৃহত্তম কার্যকর আকার, যা পুনরায় আকারিত চিত্রের ১/৪ থেকে আসে, তা হচ্ছে ১৮৪ x ১৮৪ (৪৬ x ৪ = ১৮৪ ) । -**Performance**: With no post-processing and running frame-by-frame, the model runs very fast even on standard hardware. It has a rather small size of training data (2k~3k), but the results are still record-breaking. + +**পারফরম্যান্স**: কোনও পোস্ট-প্রসেসিং এবং ফ্রেম-বাই-ফ্রেম চালিত না করে, মডেলটি স্ট্যান্ডার্ড হার্ডওয়্যারেও খুব দ্রুত চলে । এটির পরিবর্তে ছোট আকারের প্রশিক্ষণের ডেটা রয়েছে (2k ~ 3k ), তবে ফলাফল এখনও রেকর্ড-ব্রেকিং। \ No newline at end of file From 0d693d78d48266d5d002ab26d60c8908aed3f745 Mon Sep 17 00:00:00 2001 From: Mahbuba Tasmin Date: Mon, 8 Mar 2021 07:13:52 +0600 Subject: [PATCH 05/35] week 6 lecture 2 translation --- docs/bn/week06/06-1.md | 2 +- docs/bn/week06/06-2.md | 307 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 308 insertions(+), 1 deletion(-) create mode 100644 docs/bn/week06/06-2.md diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 8f8187bec..0f9632463 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -5,7 +5,7 @@ title: Applications of Convolutional Network authors: Shiqing Li, Chenqin Yang, Yakun Wang, Jimin Tan date: 2 Mar 2020 lang:bn -translation-date:15 Feb 2020 +translation-date:15 Feb 2021 translator:Mahbuba Tasmin --- diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md new file mode 100644 index 000000000..4fde0b6a4 --- /dev/null +++ b/docs/bn/week06/06-2.md @@ -0,0 +1,307 @@ +--- +lang-ref: ch.06-2 +lecturer: Yann LeCun +title: RNNs, GRUs, LSTMs, Attention, Seq2Seq, and Memory Networks +authors: Jiayao Liu, Jialing Xu, Zhengyang Bian, Christina Dominguez +date: 2 March 2020 +lang:bn +translation-date:8 Mar 2021 +translator: Mahbuba Tasmin +--- + + +## [Deep Learning Architectures](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) +##ডিপ লার্নিং আর্কিটেকচার +In deep learning, there are different modules to realize different functions. Expertise in deep learning involves designing architectures to complete particular tasks. Similar to writing programs with algorithms to give instructions to a computer in earlier days, deep learning reduces a complex function into a graph of functional modules (possibly dynamic), the functions of which are finalized by learning. +ডিপ লার্নিং এর আওতায় , বিভিন্ন কার্যকারিতা উপলব্ধি করার জন্য বিভিন্ন মডিউল রয়েছে। ডিপ লার্নিং এর দক্ষতার মধ্যে নির্দিষ্ট কাজগুলি সম্পন্ন করার জন্য আর্কিটেকচার ডিজাইন করা জড়িত। আগের দিনগুলিতে কম্পিউটারকে নির্দেশনা দেওয়ার জন্য অ্যালগরিদমের সাথে প্রোগ্রাম লেখার অনুরূপ, ডিপ লার্নিং একটি জটিল ক্রিয়াকে ফাংশনাল মডিউলগুলির (সম্ভবত গতিশীল) একটি গ্রাফের মধ্যে হ্রাস করে, যার ক্রিয়াগুলি মডেলের শেখার মাধ্যমে চূড়ান্ত হয়। +As with what we saw with convolutional networks, network architecture is important. +কনভলিউশনাল নেটওয়ার্কগুলির সাথে আমরা যা দেখেছি, তার মতো নেটওয়ার্ক আর্কিটেকচার গুরুত্বপূর্ণ + +## Recurrent Networks +রিকারেন্ট নেটওয়ার্ক সমূহ +In a Convolutional Neural Network, the graph or interconnections between the modules cannot have loops. There exists at least a partial order among the modules such that the inputs are available when we compute the outputs. +কনভলিউশনাল নিউরাল নেটওয়ার্কে মডিউলগুলির মধ্যে গ্রাফ বা আন্তঃসংযোগগুলির লুপগুলি থাকতে পারে না। মডিউলগুলির মধ্যে কমপক্ষে একটি আংশিক ক্রম বিদ্যমান রয়েছে যেমন আমরা আউটপুটগুলো গণনা করলে ইনপুটগুলি পাওয়া যায়। +As shown in Figure 1, there are loops in Recurrent Neural Networks. +চিত্র ১ -তে দেখানো হয়েছে, রিকারেন্ট নিউরাল নেটওয়ার্কগুলিতে লুপ রয়েছে। +
+
+Figure 1. Recurrent Neural Network with roll +চিত্র ১। রোল সহকারে রিকারেন্ট নিউরাল নেটওয়ার্ক +
+ + - $x(t)$ : input that varies across time + - $x(t)$ : ইনপুট যা সময়ের সাথে সাথে পরিবর্তিত হয় + - $\text{Enc}(x(t))$: encoder that generates a representation of input + - $\text{Enc}(x(t))$: এনকোডার যা ইনপুটটির প্রতিনিধিত্ব করে + - $h(t)$: a representation of the input + - $h(t)$: ইনপুটের একটি প্রতিরুপ + - $w$: trainable parameters + - $w$: প্রশিক্ষণযোগ্য পরামিতি (প্যারামিটার) + - $z(t-1)$: previous hidden state, which is the output of the previous time step + - $z(t-1)$: পূর্ববর্তী হিডেন স্টেট, যা পূর্ববর্তী সময়ের ধাপের আউটপুট + - $z(t)$: current hidden state + - $z(t)$: বর্তমান হিডেন স্টেট + - $g$: function that can be a complicated neural network; one of the inputs is $z(t-1)$ which is the output of the previous time step + - $g$: একটি ফাংশন যা হতে পারে একটি জটিল নিউরাল নেটওয়ার্ক; ইনপুটগুলির মধ্যে একটি হল $ z (t -1) $ যা পূর্ববর্তী সময় ধাপের আউটপুট + - $\text{Dec}(z(t))$: decoder that generates an output + - $\text{Dec}(z(t))$: ডিকোডার যা একটি আউটপুট উত্পন্ন করে + + +## Recurrent Networks: Unroll the loop +##রিকারেন্ট নেটওয়ার্ক: লুপটি আনরোল করুন + +Unroll the loop in time. The input is a sequence $x_1, x_2, \cdots, x_T$. +সময়মতো লুপটি আনরোল করুন। ইনপুটটি একটি ক্রম $x_1, x_2, ..., x_T$ অনুসরণ করে। +
+ " +
+Figure 2. Recurrent Networks with unrolled loop +চিত্র 2. আনরোলড লুপের সাথে রিকারেন্ট নেটওয়ার্কগুলো +
+ +In Figure 2, the input is $x_1, x_2, x_3$. +চিত্র ২ -এ ইনপুটটি $ x_1, x_2, x_3 $ । + +At time t=0, the input $x(0)$ is passed to the encoder and it generates the representation $h(x(0)) = \text{Enc}(x(0))$ and then passes it to G to generate hidden state $z(0) = G(h_0, z', w)$. At $t = 0$, $z'$ in $G$ can be initialized as $0$ or randomly initialized. $z(0)$ is passed to decoder to generate an output and also to the next time step. +সময় t = 0 চলাকালীন সময়, ইনপুট $x(0$) টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w) $উদ্ভূত করতে। সময় $T=0$ এ, $G$ এ $z$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। +As there are no loops in this network, and we can implement backpropagation. +যেহেতু এই নেটওয়ার্কটিতে কোনও লুপ নেই, এবং আমরা ব্যাক প্রোপাগেশন বাস্তবায়ন করতে পারি। +Figure 2 shows a regular network with one particular characteristic: every block shares the same weights. Three encoders, decoders and G functions have same weights respectively across different time steps. +চিত্র-২ এ একটি নির্দিষ্ট বৈশিষ্ট্যযুক্ত একটি নিয়মিত নেটওয়ার্ক দেখায়: প্রতিটি ব্লক একই পরিমাণ গুরুত্ব বহন করে। তিনটি এনকোডার, ডিকোডার এবং G ফাংশনগুলির যথাক্রমে বিভিন্ন সময় ধাপে একই গুরুত্ব বহন করে। +BPTT: Backprop through time. Unfortunately, BPTT doesn't work so well in the naive form of RNN. +BPTT : সময়ের সাথে ব্যাকপ্রপ। দুর্ভাগ্যক্রমে, BPTT naive-RNN এর সাথে এত ভাল কাজ করে না। +Problems with RNNs: +RNN এর সাথে সম্পর্কিত সমস্যাগুলোঃ +1. Vanishing gradients + - In a long sequence, the gradients get multiplied by the weight matrix (transpose) at every time step. If there are small values in the weight matrix, the norm of gradients get smaller and smaller exponentially. +১। বিলীয়মান গ্র্যাডিয়েন্ট + - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। +2. Exploding gradients + - If we have a large weight matrix and the non-linearity in the recurrent layer is not saturating, the gradients will explode. The weights will diverge at the update step. We may have to use a tiny learning rate for the gradient descent to work. +২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট +যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। + + +One reason to use RNNs is for the advantage of remembering information in the past. However, it could fail to memorize the information long ago in a simple RNN without tricks. +RNN ব্যবহার করার একটি কারণ হচ্ছে অতীতের তথ্য মনে রাখার সুবিধা। যাইহোক, সাধারণ একটি RNN কোন কৌশল ছাড়া অনেক আগের তথ্য মুখস্থ করতে ব্যর্থ হতে পারে। + +An example that has vanishing gradient problem: +বিলীয়মান গ্র্যাডিয়েন্ট সমস্যা সম্পর্কিত একটি উদাহরণ: +The input is the characters from a C Program. The system will tell whether it is a syntactically correct program. A syntactically correct program should have a valid number of braces and parentheses. Thus, the network should remember how many open parentheses and braces there are to check, and whether we have closed them all. The network has to store such information in hidden states like a counter. However, because of vanishing gradients, it will fail to preserve such information in a long program. + +ইনপুটটি হল সি প্রোগ্রামের একটি অক্ষর। সিস্টেমটি এটি বলবে যে এটি একটি গঠনগত ভাবে সঠিক প্রোগ্রাম কিনা। একটি সঠিক সংগঠিত প্রোগ্রামে ব্রেসসমূহ (ধনুর্বন্ধনী) এবং বন্ধনীগুলির একটি বৈধ সংখ্যক হওয়া উচিত। সুতরাং, নেটওয়ার্কটিকে মনে রাখতে হবে যে সেখানে পরীক্ষণীয় কতগুলো খালি বন্ধনী এবং ব্রেস আছে এবং আমরা সেসব গুলোকে বন্ধ করেছি কিনা। নেটওয়ার্ককে একটি কাউন্টারের মতো লুকানো স্টেটে এই জাতীয় তথ্য সংরক্ষণ করতে হয়। তবে গ্র্যাডিয়েন্টগুলো বিলীয়মান হওয়ার কারণে নেটওয়ার্কটি একটি দীর্ঘ প্রোগ্রামে এ জাতীয় তথ্য সংরক্ষণ করতে ব্যর্থ হবে। + + +## RNN Tricks +## RNN কৌশলগুলোঃ +- clipping gradients: (avoid exploding gradients) + Squash the gradients when they get too large. + - ক্লিপিং গ্র্যাডিয়েন্ট: (এক্সপ্লোডিং গ্র্যাডিয়েন্ট এড়ানো) + গ্র্যাডিয়েন্টগুলি যখন খুব বড় হয়ে যায় তখন স্কোয়াশ করুন। + +- Initialization (start in right ballpark avoids exploding/vanishing) + Initialize the weight matrices to preserve the norm to some extent. For example, orthogonal initialization initializes the weight matrix as a random orthogonal matrix. + - সূচনা ( ডান বলপার্কে সূচনা করে এক্সপ্লোডিং/বিলীন হওয়া এড়ানো) + মডেলের নর্ম কিছু পরিমাণে অক্ষুণ্ণ রাখতে ওয়েট ম্যাট্রিক্স গুলো সূচনা করুন । উদাহরণস্বরূপ, সমকোণীয় সূচনাটি ওয়েট ম্যাট্রিক্সকে এলোমেলো ধরণের অর্থোগোনাল ম্যাট্রিক্স হিসাবে আরম্ভ করে। + + +## Multiplicative Modules +## গুণক মডিউল +In multiplicative modules rather than only computing a weighted sum of inputs, we compute products of inputs and then compute weighted sum of that. +গুণগত মডিউলগুলিতে কেবল ইনপুটগুলোর একটি ওয়েটেড সাম গণনা করার পরিবর্তে, আমরা ইনপুটগুলির গুণফল গুলো গণনা করি এবং তারপরে ওয়েটেড সাম গণনা করি। + +Suppose $x \in {R}^{n\times1}$, $W \in {R}^{m \times n}$, $U \in {R}^{m \times n \times d}$ and $z \in {R}^{d\times1}$. Here U is a tensor. +ধরুন $x \in {R}^{n\times1}$, $W \in {R}^{m \times n}$, $U \in {R}^{m \times n \times d}$ and $z \in {R}^{d\times1}$. এখানে U একটি টেনসর। + +$$ +w_{ij} = u_{ij}^\top z = +\begin{pmatrix} +u_{ij1} & u_{ij2} & \cdots &u_{ijd}\\ +\end{pmatrix} +\begin{pmatrix} +z_1\\ +z_2\\ +\vdots\\ +z_d\\ +\end{pmatrix} = \sum_ku_{ijk}z_k +$$ + +$$ +s = +\begin{pmatrix} +s_1\\ +s_2\\ +\vdots\\ +s_m\\ +\end{pmatrix} = Wx = \begin{pmatrix} +w_{11} & w_{12} & \cdots &w_{1n}\\ +w_{21} & w_{22} & \cdots &w_{2n}\\ +\vdots\\ +w_{m1} & w_{m2} & \cdots &w_{mn} +\end{pmatrix} +\begin{pmatrix} +x_1\\ +x_2\\ +\vdots\\ +x_n\\ +\end{pmatrix} +$$ + +where $s_i = w_{i}^\top x = \sum_j w_{ij}x_j$. +যেখানে $s_i = w_{i}^\top x = \sum_j w_{ij}x_j$। + +The output of the system is a classic weighted sum of inputs and weights. Weights themselves are also weighted sums of weights and inputs. +সিস্টেমের আউটপুট হল ইনপুট এবং ওয়েটগুলোর একটি সর্বোত্তম ওয়েটেড সামের যোগফল। ওয়েট গুলো স্বয়ং ওয়েট এবং ইনপুটের ওয়েটেড সাম। +Hypernetwork architecture: weights are computed by another network. +হাইপারনেটওয়ার্ক আর্কিটেকচার: ওয়েটগুলো অন্য একটি নেটওয়ার্ক দ্বারা গণনা করা হয়। + +## Attention +অ্যাটেনশন +$x_1$ and $x_2$ are vectors, $w_1$ and $w_2$ are scalars after softmax where $w_1 + w_2 = 1$, and $w_1$ and $w_2$ are between 0 and 1. +$ x_1$ এবং $x_2$ ভেক্টর, $w_1$ এবং $w_2$ সফটম্যাক্সের পরে স্কেলারসমূহ যেখানে $w_1 + w_2 = 1$, এবং $w_1$ এবং $w_2$ রয়েছে 0 এবং 1 এর মধ্যে। +$w_1x_1 + w_2x_2$ is a weighted sum of $x_1$ and $x_2$ weighted by coefficients $w_1$ and $w_2$. +$w_1x_1 + w_2x_2$ হল $x_1 $ এবং $x_2$ এর ওয়েটেড সাম, $w_1$ এবং $w_2$ এর সহগ দ্বারা ওয়েটকৃত। +By changing the relative size of $w_1$ and $w_2$, we can switch the output of $w_1x_1 + w_2x_2$ to $x_1$ or $x_2$ or some linear combinations of $x_1$ and $x_2$. +$W_1$ এবং $w_2$ এর আপেক্ষিক আকার পরিবর্তন করে আমরা $w_1x_1 + w_2x_2$ এর আউটপুট $x_1$ বা $x_2$ অথবা $x_1$ এবং $x_2$ এর কিছু লিনিয়ার সংমিশ্রণে পরিবর্তন করতে পারি। +The inputs can have multiple $x$ vectors (more than $x_1$ and $x_2$). The system will choose an appropriate combination, the choice of which is determined by another variable z. An attention mechanism allows the neural network to focus its attention on particular input(s) and ignore the others. +ইনপুটগুলোতে একাধিক $x$ ভেক্টর থাকতে পারে ($x_1$ এবং $x_2$ এর চেয়ে বেশি)। সিস্টেমটি একটি উপযুক্ত সংমিশ্রণটি চয়ন করবে, যার পছন্দটি অন্য ভেরিয়েবল z দ্বারা নির্ধারিত হবে। একটি অ্যাটেনশন পদ্ধতি নিউরাল নেটওয়ার্কটিকে নির্দিষ্ট ইনপুটগুলোতে মনোযোগ নিবদ্ধ করতে এবং অন্যদের উপেক্ষা করার অনুমতি দেয়। + +Attention is increasingly important in NLP systems that use transformer architectures or other types of attention. +ট্রান্সফরমার আর্কিটেকচার বা অন্যান্য ধরণের অ্যাটেনশন পদ্ধতি ব্যবহার করে এমন NLP প্রক্রিয়াগুলোতে অ্যাটেনশন ক্রমশ গুরুত্বপূর্ণ হয়ে উঠছে। + +The weights are data independent because z is data independent. +ওয়েটসমূহ ডেটা থেকে স্বতন্ত্র কারণ z ডেটা স্বতন্ত্র। + +## [Gated Recurrent Units (GRU)](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=3549s) +গেটেড রিকারেন্ট ইউনিটসমূহ +As mentioned above, RNN suffers from vanishing/exploding gradients and can’t remember states for very long. GRU, [Cho, 2014](https://arxiv.org/abs/1406.1078), is an application of multiplicative modules that attempts to solve these problems. It's an example of recurrent net with memory (another is LSTM). The structure of A GRU unit is shown below: +উপরে উল্লিখিত বর্ণ্নামতে, RNN -এ বিলীয়মান/এক্সপ্লোডিং গ্র্যাডিয়েন্টের সমস্যা বিদ্যমান এবং দীর্ঘ সময় স্টেটসমূহ মনে রাখতে অপারগ। GRU, [Cho, 2014](https://arxiv.org/abs/1406.1078), এই সমস্যাগুলো সমাধান করতে চেষ্টা করা গুণক মডিউলগুলির একটি অ্যাপ্লিকেশন। এটি মেমরির সাথে রিকারেন্ট নেটের একটি উদাহরণ (অন্যটি LSTM)। একটি GRU ইউনিটের কাঠামো নীচে প্রদর্শিত হবে: + +
+
+Figure 3. Gated Recurrent Unit +চিত্র ৩। গেটেড রিকারেন্ট ইউনিট +
+ +$$ +\begin{array}{l} +z_t = \sigma_g(W_zx_t + U_zh_{t-1} + b_z)\\ +r_t = \sigma_g(W_rx_t + U_rh_{t-1} + b_r)\\ +h_t = z_t\odot h_{t-1} + (1- z_t)\odot\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h) +\end{array} +$$ + +where $\odot$ denotes element-wise multiplication(Hadamard product), $x_t$ is the input vector, $h_t$ is the output vector, $z_t$ is the update gate vector, $r_t$ is the reset gate vector, $\phi_h$ is a hyperbolic tanh, and $W$,$U$,$b$ are learnable parameters. +যেখানে $ \odot$ উপাদান অনুসারে গুণ (Hadamard গুণফল) বোঝায়, $x_t$ ইনপুট ভেক্টর, $h_t$ আউটপুট ভেক্টর, $z_t$ আপডেট গেট ভেক্টর, $r_t$ রিসেট গেট ভেক্টর, $\phi_h$ একটি হাইপারবোলিক tanh এবং $W$, $U$, $b$ নেটওয়ার্কের শেখার প্যারামিটার । +To be specific, $z_t$ is a gating vector that determines how much of the past information should be passed along to the future. It applies a sigmoid function to the sum of two linear layers and a bias over the input $x_t$ and the previous state $h_{t-1}$. $z_t$ contains coefficients between 0 and 1 as a result of applying sigmoid. The final output state $h_t$ is a convex combination of $h_{t-1}$ and $\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h)$ via $z_t$. If the coefficient is 1, the current unit output is just a copy of the previous state and ignores the input (which is the default behaviour). If it is less than one, then it takes into account some new information from the input. +সুনির্দিষ্টভাবে বলতে গেলে, $z_t হল একটি গেটিং ভেক্টর যা নির্ধারণ করে যে অতীতের তথ্যগুলির কতটা ভবিষ্যতে পাঠাতে হবে। এটি দুটি লিনিয়ার স্তর এবং একটি ইনপুট $x_t$ এর উপর আপতিত বায়াসের সমষ্টি এবং পূর্ববর্তী স্টেট $h_{ t-1} এর জন্য একটি সিগময়েড ফাংশন প্রয়োগ করে। সিগময়েড প্রয়োগের ফলে $z_t$ এর সহগ 0 এবং 1 এর মধ্যে অবস্থিত। চূড়ান্ত আউটপুট স্টেট $h_t$ হল $h_{t-1}$ এবং $\phi_h(W_hx_t+ U_h(r_t\odot h_{t-1}) + b_h এর উত্তল সংমিশ্রণ $z_t$ এর মাধ্যমে। যদি সহগটি 1 হয়, বর্তমান ইউনিট আউটপুটটি পূর্ববর্তী স্টেটের কেবল একটি অনুলিপি এবং ইনপুটটিকে উপেক্ষা করে (এটি পূর্বনির্ধারিত আচরণ)। যদি এটির চেয়ে কম হয়, তবে এটি ইনপুট থেকে কিছু নতুন তথ্য গ্রহণ করে। +The reset gate $r_t$ is used to decide how much of the past information to forget. In the new memory content $\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h)$, if the coefficient in $r_t$ is 0, then it stores none of the information from the past. If at the same time $z_t$ is 0, then the system is completely reset since $h_t$ would only look at the input. +রিসেট গেট $r_t$ অতীতের তথ্যকে কতটা ভুলে যেতে হবে তার সিদ্ধান্ত নিতে ব্যবহৃত হয়। নতুন মেমরি কনটেন্টে $phi_h(W_hx_t + U_h (r_t \ odot h_ {t-1}) + b_h)$, যদি $r_t$ এর সহগ 0 হয় তবে এটি অতীতের কোনও তথ্যই সঞ্চয় করে না। যদি একই সময়ে $z_t$ এর মাণ 0 হয়, তবে সিস্টেমটি পুরোপুরি পুনরায় সেট করা হয় যেহেতু $h_t$ কেবল ইনপুটকে দেখবে। + +## LSTM (Long Short-Term Memory) +## LSTM (লং শর্ট - টার্ম মেমরি) +GRU is actually a simplified version of LSTM which came out much earlier, [Hochreiter, Schmidhuber, 1997](https://www.bioinf.jku.at/publications/older/2604.pdf). By building up memory cells to preserve past information, LSTMs also aim to solve long term memory loss issues in RNNs. The structure of LSTMs is shown below: +GRU আসলে LSTM এর একটি সরলিকৃত সংস্করণ যা অনেক আগে প্রকাশিত হয়েছিল, [Hochreiter, Schmidhuber, 1997](https://www.bioinf.jku.at/publications/older/2604.pdf)। অতীত তথ্য সংরক্ষণের জন্য মেমরি সেল তৈরি করার পাশাপাশি, LSTM লক্ষ্য করে RNN গুলোতে দীর্ঘমেয়াদী মেমরির হ্রাসের সমস্যাগুলি সমাধান করতে। LSTM এর কাঠামো নিচে প্রদর্শিত হয়েছে: + +
+
+Figure 4. LSTM +চিত্র ৪। LSTM +
+ +$$ +\begin{array}{l} +f_t = \sigma_g(W_fx_t + U_fh_{t-1} + b_f)\\ +i_t = \sigma_g(W_ix_t + U_ih_{t-1} + b_i)\\ +o_t = \sigma_o(W_ox_t + U_oh_{t-1} + b_o)\\ +c_t = f_t\odot c_{t-1} + i_t\odot \tanh(W_cx_t + U_ch_{t-1} + b_c)\\ +h_t = o_t \odot\tanh(c_t) +\end{array} +$$ + +where $\odot$ denotes element-wise multiplication, $x_t\in\mathbb{R}^a$ is an input vector to the LSTM unit, $f_t\in\mathbb{R}^h$ is the forget gate's activation vector, $i_t\in\mathbb{R}^h$ is the input/update gate's activation vector, $o_t\in\mathbb{R}^h$ is the output gate's activation vector, $h_t\in\mathbb{R}^h$ is the hidden state vector (also known as output), $c_t\in\mathbb{R}^h$ is the cell state vector. +যেখানে $\odot$ উপাদান অনুসারে গুণনকে বোঝায়, $\x_t\mathbb{R}^a$ LSTM ইউনিটের একটি ইনপুট ভেক্টর,$f_t\in\mathbb{R}^h$ হল ফরগেট গেটের অ্যাক্টিভেশন ভেক্টর ,$i_t\in\mathbb{R}^h$ হল ইনপুট/আপডেট গেটের অ্যাক্টিভেশন ভেক্টর, $o_t\in\mathbb{R}^h$ আউটপুট গেটের অ্যাক্টিভেশন ভেক্টর, $h_t\in\mathbb{R}^h$ হিডেন স্টেট ভেক্টর (আউটপুট নামেও পরিচিত), $c_t\in\mathbb{R}^h$ হল সেল স্টেট ভেক্টর। + +An LSTM unit uses a cell state $c_t$ to convey the information through the unit. It regulates how information is preserved or removed from the cell state through structures called gates. The forget gate $f_t$ decides how much information we want to keep from the previous cell state $c_{t-1}$ by looking at the current input and previous hidden state, and produces a number between 0 and 1 as the coefficient of $c_{t-1}$. $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ computes a new candidate to update the cell state, and like the forget gate, the input gate $i_t$ decides how much of the update to be applied. Finally, the output $h_t$ will be based on the cell state $c_t$, but will be put through a $\tanh$ then filtered by the output gate $o_t$. +একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_ {t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $ c_ {t-1} $ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । + +Though LSTMs are widely used in NLP, their popularity is decreasing. For example, speech recognition is moving towards using temporal CNN, and NLP is moving towards using transformers. +যদিও LSTM NLPতে ব্যাপকভাবে ব্যবহৃত হয়, তবে তাদের জনপ্রিয়তা হ্রাস পাচ্ছে। উদাহরণস্বরূপ, স্পিচ রিকগনিশন অস্থায়ী সিএনএন ব্যবহারের দিকে এগিয়ে চলেছে, এবং NLP ট্রান্সফর্মারগুলো ব্যবহার করার দিকে এগিয়ে চলেছে। + +## Sequence to Sequence Model +## সিকোয়েন্স -টু - সিকোয়েন্স মডেল +The approach proposed by [Sutskever NIPS 2014](https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) is the first neural machine translation system to have comparable performance to classic approaches. It uses an encoder-decoder architecture where both the encoder and decoder are multi-layered LSTMs. +[Sutskever NIPS 2014] দ্বারা প্রস্তাবিত পদ্ধতিটির কর্মক্ষমতা হচ্ছে ক্লাসিক পদ্ধতির সাথে তুলনাযোগ্য প্রথম নিউরাল মেশিন অনুবাদ সিস্টেম(https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) । এটি একটি এনকোডার-ডিকোডার আর্কিটেকচার ব্যবহার করে যেখানে এনকোডার এবং ডিকোডার উভয়ই বহু-স্তরযুক্ত LSTM । +
+
+Figure 5. Seq2Seq +চিত্র ৫। সিক-টু-সিক +
+ +Each cell in the figure is an LSTM. For the encoder (the part on the left), the number of time steps equals the length of the sentence to be translated. At each step, there is a stack of LSTMs (four layers in the paper) where the hidden state of the previous LSTM is fed into the next one. The last layer of the last time step outputs a vector that represents the meaning of the entire sentence, which is then fed into another multi-layer LSTM (the decoder), that produces words in the target language. In the decoder, the text is generated in a sequential fashion. Each step produces one word, which is fed as an input to the next time step. +চিত্রের প্রতিটি ঘর একটি LSTM। এনকোডার (বাম দিকের অংশ) এর জন্য, সময় পদক্ষেপের সংখ্যা অনুবাদ করা বাক্যটির দৈর্ঘ্যের সমান হয়। প্রতিটি পদক্ষেপে, LSTM এর একটি স্ট্যাক রয়েছে (কাগজের চার স্তর) যেখানে পূর্ববর্তী LSTM এর হিডেন স্টেট পরবর্তী একটিকে দেওয়া হয়। শেষ বারের পদক্ষেপের শেষ স্তরটি একটি ভেক্টর আউটপুট দেয় যা পুরো বাক্যটির অর্থ উপস্থাপন করে, যা পরে অন্য একটি মাল্টি-লেয়ার LSTM(ডিকোডার) এ দেয়া হয়, যা লক্ষ্যকৃত ভাষায় শব্দ তৈরি করে। ডিকোডারে, পাঠ্যটি অনুক্রমিক ফ্যাশনে উত্পন্ন হয়। প্রতিটি পদক্ষেপে একটি শব্দ তৈরি হয়, যা পরের বারের ধাপে ইনপুট হিসাবে দেওয়া হয়। + +This architecture is not satisfying in two ways: First, the entire meaning of the sentence has to be squeezed into the hidden state between the encoder and decoder. Second, LSTMs actually do not preserve information for more than about 20 words. The fix for these issues is called a Bi-LSTM, which runs two LSTMs in opposite directions. In a Bi-LSTM the meaning is encoded in two vectors, one generated by running LSTM from left to right, and another from right to left. This allows doubling the length of the sentence without losing too much information. +এই আর্কিটেকচারটি দুটি উপায়ে পরিপূর্ণ নয়: প্রথমত, বাক্যটির পুরো অর্থ এনকোডার এবং ডিকোডারের মধ্যে হিডেন স্টেটে ছড়িয়ে দিতে হবে। দ্বিতীয়ত, LSTM প্রকৃতপক্ষে প্রায় 20 টিরও বেশি শব্দের জন্য তথ্য সংরক্ষণ করে না। এই সমস্যার সমাধানটিকে Bi-LSTM বলা হয়, যা দুটি LSTM বিপরীত দিকে চালিত করে। Bi-LSTM -এর অর্থ দুটি ভেক্টরগুলোতে এনকোড করা থাকে, একটি বাম থেকে ডানে LSTM চালিয়ে আর অন্যটি ডান থেকে বামে উত্পন্ন হয়। এটি খুব বেশি তথ্য না হারিয়ে বাক্যটির দৈর্ঘ্য দ্বিগুণ করার সুযোগ তৈরি করে। + + +## Seq2seq with Attention +## অ্যাটেনশনের সাথে সিক-টু-সিক + +The success of the approach above was short-lived. Another paper by [Bahdanau, Cho, Bengio](https://arxiv.org/abs/1409.0473) suggested that instead of having a gigantic network that squeezes the meaning of the entire sentence into one vector, it would make more sense if at every time step we only focus the attention on the relevant locations in the original language with equivalent meaning, *i.e.* the attention mechanism. +উপরোক্ত পদ্ধতির সাফল্য স্বল্পস্থায়ী ছিল। [Bahdanau, Cho, Bengio] এর অন্য একটি পেপার (https://arxiv.org/abs/1409.0473) পরামর্শ দিয়েছে যে একটি বিশাল নেটওয়ার্কে পুরো বাক্যটির অর্থ একটি ভেক্টর হিসাবে চেপে রাখার পরিবর্তে এটি আরও অর্থপূর্ণ হবে যদি প্রতিবারের পদক্ষেপে আমরা কেবলমাত্র সমান অর্থের সাথে মূল ভাষার প্রাসঙ্গিক অবস্থানগুলিতে মনোযোগ নিবদ্ধ করি,অর্থাৎ অ্যাটেনশন পদ্ধতি ব্যবহার করি। +
+
+Figure 6. Seq2Seq with Attention +চিত্র ৬। অ্যাটেনশনের সাথে সিক-টু-সিক +
+ +In Attention, to produce the current word at each time step, we first need to decide which hidden representations of words in the input sentence to focus on. Essentially, a network will learn to score how well each encoded input matches the current output of the decoder. These scores are normalized by a softmax, then the coefficients are used to compute a weighted sum of the hidden states in the encoder at different time steps. By adjusting the weights, the system can adjust the area of inputs to focus on. The magic of this mechanism is that the network used to compute the coefficients can be trained through backpropagation. There is no need to build them by hand! +অ্যাটেনশনে, প্রতিটি ধাপে বর্তমান শব্দটি তৈরি করতে, প্রথমে আমাদের সিদ্ধান্ত নেওয়া দরকার যে ইনপুট বাক্যে শব্দের কী কী হিডেন উপস্থাপনাতে গুরুত্ব দেয়া উচিত। মূলত, একটি নেটওয়ার্ক স্কোর করতে শিখবে যে প্রতিটি এনকোডযুক্ত ইনপুট ডিকোডারের বর্তমান আউটপুটটির সাথে কতটা ভাল মেলে। এই স্কোরগুলি একটি সফটম্যাক্স দ্বারা নর্মালাইয করা হয়, তারপরে সহগগুলি বিভিন্ন সময় পদক্ষেপে এনকোডারে লুকানো রাজ্যের একটি ওয়েটেড সাম গণনা করতে ব্যবহৃত হয়। ওয়েট সামঞ্জস্য করার মাধ্যমে, সিস্টেম ফোকাস করার জন্য ইনপুটগুলির ক্ষেত্রটি সমন্বয় করতে করতে পারে। এই প্রক্রিয়াটির বিশেষত্বটি হল সহগ গণ্নার জন্য ব্যবহৃত নেটওয়ার্কটি ব্যাক-প্রোপাগেশনের মাধ্যমে প্রশিক্ষণ দেওয়া যেতে পারে। এগুলি হাতে তৈরি করার দরকার নেই! +Attention mechanisms completely transformed neural machine translation. Later, Google published a paper [*Attention Is All You Need*](https://arxiv.org/abs/1706.03762), and they put forward transformer, where each layer and group of neurons is implementing attention. +অ্যাটেনশন পদ্ধতি সম্পূর্ণরূপে নিউরাল মেশিন অনুবাদকে রূপান্তরিত করে। পরবর্তীতে, গুগল একটি প্রবন্ধ প্রকাশ করেছে [*Attention Is All You Need*](https://arxiv.org/abs/1706.03762), এবং তারা ট্রান্সফর্মার রেখেছিল, যেখানে প্রতিটি স্তর এবং নিউরনের সমষ্টি অ্যাটেনশন প্রয়োগ করেছে। + +## [Memory network](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=4575s) +## মেমরি নেটওয়ার্ক + +Memory networks stem from work at Facebook that was started by [Antoine Bordes](https://arxiv.org/abs/1410.3916) in 2014 and [Sainbayar Sukhbaatar](https://arxiv.org/abs/1503.08895) in 2015. +মেমোরি নেটওয়ার্কগুলি ফেসবুকে এমন কাজ থেকে শুরু হয়েছে যা ২০১৪ সালে [Antoine Bordes](https://arxiv.org/abs/1410.3916) এবং [Sainbayar Sukhbaatar](https://arxiv.org/abs/1503.08895) দ্বারা ২০১৫ সালে শুরু হয়েছিল । +The idea of a memory network is that there are two important parts in your brain: one is the **cortex**, which is where you have long term memory. There is a separate chunk of neurons called the **hippocampus** which sends wires to nearly everywhere in the cortex. The hippocampus is thought to be used for short term memory, remembering things for a relatively short period of time. The prevalent theory is that when you sleep, there is a lot of information transferred from the hippocampus to the cortex to be solidified in long term memory since the hippocampus has limited capacity. +একটি মেমরি নেটওয়ার্কের ধারণাটি হল আপনার মস্তিষ্কে দুটি গুরুত্বপূর্ণ অংশ রয়েছে: একটি হল ** কর্টেক্স **, যেখানে আপনার দীর্ঘমেয়াদী স্মৃতি রয়েছে। ** হিপ্পোক্যাম্পাস ** নামে পরিচিত নিউরনের একটি পৃথক অংশ রয়েছে যা কর্টেক্সের প্রায় সর্বত্র তাড়িত-বার্তাবহ প্রেরণ করে। হিপ্পোক্যাম্পাসটি স্বল্পমেয়াদী মেমরির জন্য ব্যবহার করা হয় বলে মনে করা হয়, তুলনামূলকভাবে স্বল্প সময়ের জন্য জিনিসগুলি স্মরণে রাখে । প্রচলিত তত্ত্বটি হ'ল আপনি যখন ঘুমাবেন, হিপ্পোক্যাম্পাসের সীমিত ক্ষমতা থাকার কারণে হিপ্পোক্যাম্পাস থেকে কর্টেক্সে প্রচুর পরিমাণে স্থানান্তরিত হয় দীর্ঘমেয়াদী স্মৃতিতে দৃঢ়তর হওয়ার জন্য। +For a memory network, there is an input to the network, $x$ (think of it as an address of the memory), and compare this $x$ with vectors $k_1, k_2, k_3, \cdots$ ("keys") through a dot product. Put them through a softmax, what you get are an array of numbers which sum to one. And there are a set of other vectors $v_1, v_2, v_3, \cdots$ ("values"). Multiply these vectors by the scalers from softmax and sum these vectors up (note the resemblance to the attention mechanism) gives you the result. +একটি মেমরি নেটওয়ার্কের জন্য, নেটওয়ার্কে একটি ইনপুট রয়েছে, $x$ (এটিকে মেমরির একটি ঠিকানা হিসাবে মনে করুন), এবং এই $x$ টিকে একটি ডট গুণফলের মাধ্যমে $k_1, k_2, k_3, \cdots$ ("keys") ভেক্টরগুলির সাথে তুলনা করুন । এগুলি একটি সফটম্যাক্সের মারফত রেখে, আপনি যা পান তা হল সংখ্যার অ্যারে (array) বিন্যাস যাদের সমষ্টিগত মান হয় ১। এবং অন্যান্য ভেক্টরগুলির একটি সেট রয়েছে $v_1, v_2, v_3, \cdots$ সিডটস $ ("মান")। সফটম্যাক্স থেকে স্কেলারগুলির সাহায্যে এই ভেক্টরগুলিকে গুণ করুন এবং এই ভেক্টরগুলি যোগ করুন (অ্যাটেনশন ব্যবস্থার সাথে সাদৃশ্যটি নোট করুন) , যার পরিপ্রেক্ষিতে আপনাকে ফলাফল দেয়। + +
+
+Figure 7. Memory Network +চিত্র ৭। মেমরি নেটওয়ার্ক +
+ +If one of the keys (*e.g.* $k_i$) exactly matches $x$, then the coefficient associated with this key will be very close to one. So the output of the system will essentially be $v_i$. +কী গুলির মধ্যে একটি যদি (*e.g.* $k_i$) হুবহু $x$ এর সাথে মিলে যায়, তবে এই কী-টির সাথে যুক্ত সহগ একটির খুব কাছাকাছি থাকবে। সুতরাং সিস্টেমের আউটপুটটি মূলত $v_i$ হবে। +This is **addressable associative memory**. Associative memory is that if your input matches a key, you get *that* value. And this is just a soft differentiable version of it, which allows you to backpropagate and change the vectors through gradient descent. +এটি ** অ্যাড্রেসেবল এসোসিয়েটিভ মেমরি **। সহযোগী মেমোরিটি হ'ল যদি আপনার ইনপুট কোনও কী-টির সাথে মেলে, আপনি * সেই * মানটি পাবেন। এবং এটি নিজের একটি সফট ডিফারেন্সিয়াল সংস্করণ, যা আপনাকে গ্র্যাডিয়েন্ট বংশোদ্ভূত মাধ্যমে ভেক্টরগুলিকে ব্যাকপ্রোপাগেট করতে এবং পরিবর্তন করতে দেয়। +What the authors did was tell a story to a system by giving it a sequence of sentences. The sentences are encoded into vectors by running them through a neural net that has not been pretrained. The sentences are returned to the memory of this type. When you ask a question to the system, you encode the question and put it as the input of a neural net, the neural net produces an $x$ to the memory, and the memory returns a value. +লেখকরা যা করেছিলেন তা হল একটি সিস্টেমকে বাক্যগুলির ক্রম অনুসারে একটি গল্প বলেছিলেন। বাক্যগুলি ভেক্টরগুলিতে একটি নিউরাল নেট দ্বারা চালিত হয়ে এনকোড করা হয় যা পূর্বে ট্রেইন করা হয়নি। বাক্যগুলি এই ধরণের মেমরিতে ফিরে আসে। আপনি যখন সিস্টেমে কোনও প্রশ্ন জিজ্ঞাসা করেন, আপনি প্রশ্নটি এনকোড করে নিউরাল নেট এর ইনপুট হিসাবে রাখেন, নিউরাল নেট মেমরিতে একটি $x$ উত্পাদন করে এবং মেমরিটি একটি মান দেয়। +This value, together with the previous state of the network, is used to re-access the memory. And you train this entire network to produce an answer to your question. After extensive training, this model actually learns to store stories and answer questions. +এই মানটি, নেটওয়ার্কের পূর্বের অবস্থার সাথে একসাথে, মেমরিটিকে পুনরায় অ্যাক্সেস করতে ব্যবহৃত হয়। এবং আপনি আপনার প্রশ্নের উত্তর তৈরি করতে এই পুরো নেটওয়ার্কটিকে প্রশিক্ষণ দিন। ব্যাপক প্রশিক্ষণের পরে, এই মডেলটি আসলে গল্পগুলি সঞ্চয় করতে এবং প্রশ্নের উত্তর দিতে শেখে। +$$ +\alpha_i = k_i^\top x \\ +c = \text{softmax}(\alpha) \\ +s = \sum_i c_i v_i +$$ + +In memory network, there is a neural net that takes an input and then produces an address for the memory, gets the value back to the network, keeps going, and eventually produces an output. This is very much like computer since there is a CPU and an external memory to read and write. +মেমোরি নেটওয়ার্কে, একটি নিউরাল নেট রয়েছে যা একটি ইনপুট নেয় এবং তারপরে মেমরির জন্য একটি ঠিকানা তৈরি করে, নেটওয়ার্কে ফিরে আসার মান পায়, চালিয়ে যায় এবং অবশেষে একটি আউটপুট তৈরি করে। এটি অনেকটা কম্পিউটারের মতো, যেহেতু এখানে একটি সিপিইউ এবং পড়া এবং লেখার জন্য একটি বাহ্যিক মেমরি রয়েছে। +
+ +
+ +Figure 8. Comparision between memory network and computer (Photo by Khan Acadamy) +চিত্র ৮। মেমরি নেটওয়ার্ক এবং কম্পিউটারের তুলনা +
+ +There are people who imagine that you can actually build **differentiable computers** out of this. One example is the [Neural Turing Machine](https://arxiv.org/abs/1410.5401) from DeepMind, which was made public three days after Facebook's paper was published on arXiv. +এমন লোকেরা আছেন যারা কল্পনা করেন যে আপনি এটির বাইরে ** পার্থক্যযোগ্য কম্পিউটার ** তৈরি করতে পারবেন। এর একটি উদাহরণ হ'ল ডিপমাইন্ডের [Neural Touring Machine] (https://arxiv.org/abs/1410.5401), যা ফেসবুকের পেপারটি arXivতে প্রকাশিত হওয়ার তিন দিন পরে প্রকাশ করা হয়েছিল। +The idea is to compare inputs to keys, generate coefficients, and produce values - which is basically what a transformer is. A transformer is basically a neural net in which every group of neurons is one of these networks. +ধারণাটি হল কী-গুলির সাথে ইনপুটগুলি তুলনা করা, সহগ তৈরি করা এবং মানগুলি উত্পাদন করা - যা মূলত ট্রান্সফর্মারের কাজ। একটি ট্রান্সফর্মার মূলত একটি নিউরাল নেট যেখানে প্রতিটি নিউরনের গ্রুপ এই নেটওয়ার্কগুলির মধ্যে একটি। \ No newline at end of file From a70be8eceb64e610b45827d38b381e27772dcf9b Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Mon, 8 Mar 2021 10:25:11 +0600 Subject: [PATCH 06/35] week 6 lecture 2 completion --- docs/bn/week06/06-2.md | 158 ++++++++++++++++++++--------------------- 1 file changed, 79 insertions(+), 79 deletions(-) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index 4fde0b6a4..ab670734d 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -12,105 +12,105 @@ translator: Mahbuba Tasmin ## [Deep Learning Architectures](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) ##ডিপ লার্নিং আর্কিটেকচার -In deep learning, there are different modules to realize different functions. Expertise in deep learning involves designing architectures to complete particular tasks. Similar to writing programs with algorithms to give instructions to a computer in earlier days, deep learning reduces a complex function into a graph of functional modules (possibly dynamic), the functions of which are finalized by learning. + ডিপ লার্নিং এর আওতায় , বিভিন্ন কার্যকারিতা উপলব্ধি করার জন্য বিভিন্ন মডিউল রয়েছে। ডিপ লার্নিং এর দক্ষতার মধ্যে নির্দিষ্ট কাজগুলি সম্পন্ন করার জন্য আর্কিটেকচার ডিজাইন করা জড়িত। আগের দিনগুলিতে কম্পিউটারকে নির্দেশনা দেওয়ার জন্য অ্যালগরিদমের সাথে প্রোগ্রাম লেখার অনুরূপ, ডিপ লার্নিং একটি জটিল ক্রিয়াকে ফাংশনাল মডিউলগুলির (সম্ভবত গতিশীল) একটি গ্রাফের মধ্যে হ্রাস করে, যার ক্রিয়াগুলি মডেলের শেখার মাধ্যমে চূড়ান্ত হয়। -As with what we saw with convolutional networks, network architecture is important. + কনভলিউশনাল নেটওয়ার্কগুলির সাথে আমরা যা দেখেছি, তার মতো নেটওয়ার্ক আর্কিটেকচার গুরুত্বপূর্ণ ## Recurrent Networks -রিকারেন্ট নেটওয়ার্ক সমূহ -In a Convolutional Neural Network, the graph or interconnections between the modules cannot have loops. There exists at least a partial order among the modules such that the inputs are available when we compute the outputs. +##রিকারেন্ট নেটওয়ার্ক সমূহ + কনভলিউশনাল নিউরাল নেটওয়ার্কে মডিউলগুলির মধ্যে গ্রাফ বা আন্তঃসংযোগগুলির লুপগুলি থাকতে পারে না। মডিউলগুলির মধ্যে কমপক্ষে একটি আংশিক ক্রম বিদ্যমান রয়েছে যেমন আমরা আউটপুটগুলো গণনা করলে ইনপুটগুলি পাওয়া যায়। -As shown in Figure 1, there are loops in Recurrent Neural Networks. + চিত্র ১ -তে দেখানো হয়েছে, রিকারেন্ট নিউরাল নেটওয়ার্কগুলিতে লুপ রয়েছে।

-Figure 1. Recurrent Neural Network with roll + - $x(t)$ : ইনপুট যা সময়ের সাথে সাথে পরিবর্তিত হয় - - $\text{Enc}(x(t))$: encoder that generates a representation of input + - $\text{Enc}(x(t))$: এনকোডার যা ইনপুটটির প্রতিনিধিত্ব করে - - $h(t)$: a representation of the input + - $h(t)$: ইনপুটের একটি প্রতিরুপ - - $w$: trainable parameters + - $w$: প্রশিক্ষণযোগ্য পরামিতি (প্যারামিটার) - - $z(t-1)$: previous hidden state, which is the output of the previous time step + - $z(t-1)$: পূর্ববর্তী হিডেন স্টেট, যা পূর্ববর্তী সময়ের ধাপের আউটপুট - - $z(t)$: current hidden state + - $z(t)$: বর্তমান হিডেন স্টেট - - $g$: function that can be a complicated neural network; one of the inputs is $z(t-1)$ which is the output of the previous time step + - $g$: একটি ফাংশন যা হতে পারে একটি জটিল নিউরাল নেটওয়ার্ক; ইনপুটগুলির মধ্যে একটি হল $ z (t -1) $ যা পূর্ববর্তী সময় ধাপের আউটপুট - - $\text{Dec}(z(t))$: decoder that generates an output + - $\text{Dec}(z(t))$: ডিকোডার যা একটি আউটপুট উত্পন্ন করে ## Recurrent Networks: Unroll the loop ##রিকারেন্ট নেটওয়ার্ক: লুপটি আনরোল করুন -Unroll the loop in time. The input is a sequence $x_1, x_2, \cdots, x_T$. + সময়মতো লুপটি আনরোল করুন। ইনপুটটি একটি ক্রম $x_1, x_2, ..., x_T$ অনুসরণ করে।
"
-Figure 2. Recurrent Networks with unrolled loop + চিত্র ২ -এ ইনপুটটি $ x_1, x_2, x_3 $ । -At time t=0, the input $x(0)$ is passed to the encoder and it generates the representation $h(x(0)) = \text{Enc}(x(0))$ and then passes it to G to generate hidden state $z(0) = G(h_0, z', w)$. At $t = 0$, $z'$ in $G$ can be initialized as $0$ or randomly initialized. $z(0)$ is passed to decoder to generate an output and also to the next time step. + সময় t = 0 চলাকালীন সময়, ইনপুট $x(0$) টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w) $উদ্ভূত করতে। সময় $T=0$ এ, $G$ এ $z$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। -As there are no loops in this network, and we can implement backpropagation. + যেহেতু এই নেটওয়ার্কটিতে কোনও লুপ নেই, এবং আমরা ব্যাক প্রোপাগেশন বাস্তবায়ন করতে পারি। -Figure 2 shows a regular network with one particular characteristic: every block shares the same weights. Three encoders, decoders and G functions have same weights respectively across different time steps. + চিত্র-২ এ একটি নির্দিষ্ট বৈশিষ্ট্যযুক্ত একটি নিয়মিত নেটওয়ার্ক দেখায়: প্রতিটি ব্লক একই পরিমাণ গুরুত্ব বহন করে। তিনটি এনকোডার, ডিকোডার এবং G ফাংশনগুলির যথাক্রমে বিভিন্ন সময় ধাপে একই গুরুত্ব বহন করে। -BPTT: Backprop through time. Unfortunately, BPTT doesn't work so well in the naive form of RNN. + BPTT : সময়ের সাথে ব্যাকপ্রপ। দুর্ভাগ্যক্রমে, BPTT naive-RNN এর সাথে এত ভাল কাজ করে না। -Problems with RNNs: + + ১। বিলীয়মান গ্র্যাডিয়েন্ট - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। -2. Exploding gradients - - If we have a large weight matrix and the non-linearity in the recurrent layer is not saturating, the gradients will explode. The weights will diverge at the update step. We may have to use a tiny learning rate for the gradient descent to work. + + ২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট -যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। + -যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। -One reason to use RNNs is for the advantage of remembering information in the past. However, it could fail to memorize the information long ago in a simple RNN without tricks. + RNN ব্যবহার করার একটি কারণ হচ্ছে অতীতের তথ্য মনে রাখার সুবিধা। যাইহোক, সাধারণ একটি RNN কোন কৌশল ছাড়া অনেক আগের তথ্য মুখস্থ করতে ব্যর্থ হতে পারে। -An example that has vanishing gradient problem: + বিলীয়মান গ্র্যাডিয়েন্ট সমস্যা সম্পর্কিত একটি উদাহরণ: -The input is the characters from a C Program. The system will tell whether it is a syntactically correct program. A syntactically correct program should have a valid number of braces and parentheses. Thus, the network should remember how many open parentheses and braces there are to check, and whether we have closed them all. The network has to store such information in hidden states like a counter. However, because of vanishing gradients, it will fail to preserve such information in a long program. + ইনপুটটি হল সি প্রোগ্রামের একটি অক্ষর। সিস্টেমটি এটি বলবে যে এটি একটি গঠনগত ভাবে সঠিক প্রোগ্রাম কিনা। একটি সঠিক সংগঠিত প্রোগ্রামে ব্রেসসমূহ (ধনুর্বন্ধনী) এবং বন্ধনীগুলির একটি বৈধ সংখ্যক হওয়া উচিত। সুতরাং, নেটওয়ার্কটিকে মনে রাখতে হবে যে সেখানে পরীক্ষণীয় কতগুলো খালি বন্ধনী এবং ব্রেস আছে এবং আমরা সেসব গুলোকে বন্ধ করেছি কিনা। নেটওয়ার্ককে একটি কাউন্টারের মতো লুকানো স্টেটে এই জাতীয় তথ্য সংরক্ষণ করতে হয়। তবে গ্র্যাডিয়েন্টগুলো বিলীয়মান হওয়ার কারণে নেটওয়ার্কটি একটি দীর্ঘ প্রোগ্রামে এ জাতীয় তথ্য সংরক্ষণ করতে ব্যর্থ হবে। ## RNN Tricks ## RNN কৌশলগুলোঃ -- clipping gradients: (avoid exploding gradients) - Squash the gradients when they get too large. + + - ক্লিপিং গ্র্যাডিয়েন্ট: (এক্সপ্লোডিং গ্র্যাডিয়েন্ট এড়ানো) গ্র্যাডিয়েন্টগুলি যখন খুব বড় হয়ে যায় তখন স্কোয়াশ করুন। -- Initialization (start in right ballpark avoids exploding/vanishing) - Initialize the weight matrices to preserve the norm to some extent. For example, orthogonal initialization initializes the weight matrix as a random orthogonal matrix. + + - সূচনা ( ডান বলপার্কে সূচনা করে এক্সপ্লোডিং/বিলীন হওয়া এড়ানো) - মডেলের নর্ম কিছু পরিমাণে অক্ষুণ্ণ রাখতে ওয়েট ম্যাট্রিক্স গুলো সূচনা করুন । উদাহরণস্বরূপ, সমকোণীয় সূচনাটি ওয়েট ম্যাট্রিক্সকে এলোমেলো ধরণের অর্থোগোনাল ম্যাট্রিক্স হিসাবে আরম্ভ করে। + মডেলের নর্ম কিছু পরিমাণে অক্ষুণ্ণ রাখতে ওয়েট ম্যাট্রিক্স গুলো সূচনা করুন । উদাহরণস্বরূপ, সমকোণীয় সূচনাটি ওয়েট ম্যাট্রিক্সকে এলোমেলো ধরণের অর্থোগোনাল ম্যাট্রিক্স হিসাবে আরম্ভ করে। ## Multiplicative Modules ## গুণক মডিউল -In multiplicative modules rather than only computing a weighted sum of inputs, we compute products of inputs and then compute weighted sum of that. + গুণগত মডিউলগুলিতে কেবল ইনপুটগুলোর একটি ওয়েটেড সাম গণনা করার পরিবর্তে, আমরা ইনপুটগুলির গুণফল গুলো গণনা করি এবং তারপরে ওয়েটেড সাম গণনা করি। -Suppose $x \in {R}^{n\times1}$, $W \in {R}^{m \times n}$, $U \in {R}^{m \times n \times d}$ and $z \in {R}^{d\times1}$. Here U is a tensor. + ধরুন $x \in {R}^{n\times1}$, $W \in {R}^{m \times n}$, $U \in {R}^{m \times n \times d}$ and $z \in {R}^{d\times1}$. এখানে U একটি টেনসর। $$ @@ -147,39 +147,39 @@ x_n\\ \end{pmatrix} $$ -where $s_i = w_{i}^\top x = \sum_j w_{ij}x_j$. + সিস্টেমের আউটপুট হল ইনপুট এবং ওয়েটগুলোর একটি সর্বোত্তম ওয়েটেড সামের যোগফল। ওয়েট গুলো স্বয়ং ওয়েট এবং ইনপুটের ওয়েটেড সাম। -Hypernetwork architecture: weights are computed by another network. + হাইপারনেটওয়ার্ক আর্কিটেকচার: ওয়েটগুলো অন্য একটি নেটওয়ার্ক দ্বারা গণনা করা হয়। ## Attention -অ্যাটেনশন -$x_1$ and $x_2$ are vectors, $w_1$ and $w_2$ are scalars after softmax where $w_1 + w_2 = 1$, and $w_1$ and $w_2$ are between 0 and 1. -$ x_1$ এবং $x_2$ ভেক্টর, $w_1$ এবং $w_2$ সফটম্যাক্সের পরে স্কেলারসমূহ যেখানে $w_1 + w_2 = 1$, এবং $w_1$ এবং $w_2$ রয়েছে 0 এবং 1 এর মধ্যে। -$w_1x_1 + w_2x_2$ is a weighted sum of $x_1$ and $x_2$ weighted by coefficients $w_1$ and $w_2$. +##অ্যাটেনশন + +$x_1$ এবং $x_2$ ভেক্টর, $w_1$ এবং $w_2$ সফটম্যাক্সের পরে স্কেলারসমূহ যেখানে $w_1 + w_2 = 1$, এবং $w_1$ এবং $w_2$ রয়েছে 0 এবং 1 এর মধ্যে। + $w_1x_1 + w_2x_2$ হল $x_1 $ এবং $x_2$ এর ওয়েটেড সাম, $w_1$ এবং $w_2$ এর সহগ দ্বারা ওয়েটকৃত। -By changing the relative size of $w_1$ and $w_2$, we can switch the output of $w_1x_1 + w_2x_2$ to $x_1$ or $x_2$ or some linear combinations of $x_1$ and $x_2$. + $W_1$ এবং $w_2$ এর আপেক্ষিক আকার পরিবর্তন করে আমরা $w_1x_1 + w_2x_2$ এর আউটপুট $x_1$ বা $x_2$ অথবা $x_1$ এবং $x_2$ এর কিছু লিনিয়ার সংমিশ্রণে পরিবর্তন করতে পারি। -The inputs can have multiple $x$ vectors (more than $x_1$ and $x_2$). The system will choose an appropriate combination, the choice of which is determined by another variable z. An attention mechanism allows the neural network to focus its attention on particular input(s) and ignore the others. + ইনপুটগুলোতে একাধিক $x$ ভেক্টর থাকতে পারে ($x_1$ এবং $x_2$ এর চেয়ে বেশি)। সিস্টেমটি একটি উপযুক্ত সংমিশ্রণটি চয়ন করবে, যার পছন্দটি অন্য ভেরিয়েবল z দ্বারা নির্ধারিত হবে। একটি অ্যাটেনশন পদ্ধতি নিউরাল নেটওয়ার্কটিকে নির্দিষ্ট ইনপুটগুলোতে মনোযোগ নিবদ্ধ করতে এবং অন্যদের উপেক্ষা করার অনুমতি দেয়। -Attention is increasingly important in NLP systems that use transformer architectures or other types of attention. + ট্রান্সফরমার আর্কিটেকচার বা অন্যান্য ধরণের অ্যাটেনশন পদ্ধতি ব্যবহার করে এমন NLP প্রক্রিয়াগুলোতে অ্যাটেনশন ক্রমশ গুরুত্বপূর্ণ হয়ে উঠছে। -The weights are data independent because z is data independent. + ওয়েটসমূহ ডেটা থেকে স্বতন্ত্র কারণ z ডেটা স্বতন্ত্র। ## [Gated Recurrent Units (GRU)](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=3549s) -গেটেড রিকারেন্ট ইউনিটসমূহ -As mentioned above, RNN suffers from vanishing/exploding gradients and can’t remember states for very long. GRU, [Cho, 2014](https://arxiv.org/abs/1406.1078), is an application of multiplicative modules that attempts to solve these problems. It's an example of recurrent net with memory (another is LSTM). The structure of A GRU unit is shown below: +## গেটেড রিকারেন্ট ইউনিটসমূহ + উপরে উল্লিখিত বর্ণ্নামতে, RNN -এ বিলীয়মান/এক্সপ্লোডিং গ্র্যাডিয়েন্টের সমস্যা বিদ্যমান এবং দীর্ঘ সময় স্টেটসমূহ মনে রাখতে অপারগ। GRU, [Cho, 2014](https://arxiv.org/abs/1406.1078), এই সমস্যাগুলো সমাধান করতে চেষ্টা করা গুণক মডিউলগুলির একটি অ্যাপ্লিকেশন। এটি মেমরির সাথে রিকারেন্ট নেটের একটি উদাহরণ (অন্যটি LSTM)। একটি GRU ইউনিটের কাঠামো নীচে প্রদর্শিত হবে:

-Figure 3. Gated Recurrent Unit + চিত্র ৩। গেটেড রিকারেন্ট ইউনিট
@@ -191,21 +191,21 @@ h_t = z_t\odot h_{t-1} + (1- z_t)\odot\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_ \end{array} $$ -where $\odot$ denotes element-wise multiplication(Hadamard product), $x_t$ is the input vector, $h_t$ is the output vector, $z_t$ is the update gate vector, $r_t$ is the reset gate vector, $\phi_h$ is a hyperbolic tanh, and $W$,$U$,$b$ are learnable parameters. + যেখানে $ \odot$ উপাদান অনুসারে গুণ (Hadamard গুণফল) বোঝায়, $x_t$ ইনপুট ভেক্টর, $h_t$ আউটপুট ভেক্টর, $z_t$ আপডেট গেট ভেক্টর, $r_t$ রিসেট গেট ভেক্টর, $\phi_h$ একটি হাইপারবোলিক tanh এবং $W$, $U$, $b$ নেটওয়ার্কের শেখার প্যারামিটার । -To be specific, $z_t$ is a gating vector that determines how much of the past information should be passed along to the future. It applies a sigmoid function to the sum of two linear layers and a bias over the input $x_t$ and the previous state $h_{t-1}$. $z_t$ contains coefficients between 0 and 1 as a result of applying sigmoid. The final output state $h_t$ is a convex combination of $h_{t-1}$ and $\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h)$ via $z_t$. If the coefficient is 1, the current unit output is just a copy of the previous state and ignores the input (which is the default behaviour). If it is less than one, then it takes into account some new information from the input. + সুনির্দিষ্টভাবে বলতে গেলে, $z_t হল একটি গেটিং ভেক্টর যা নির্ধারণ করে যে অতীতের তথ্যগুলির কতটা ভবিষ্যতে পাঠাতে হবে। এটি দুটি লিনিয়ার স্তর এবং একটি ইনপুট $x_t$ এর উপর আপতিত বায়াসের সমষ্টি এবং পূর্ববর্তী স্টেট $h_{ t-1} এর জন্য একটি সিগময়েড ফাংশন প্রয়োগ করে। সিগময়েড প্রয়োগের ফলে $z_t$ এর সহগ 0 এবং 1 এর মধ্যে অবস্থিত। চূড়ান্ত আউটপুট স্টেট $h_t$ হল $h_{t-1}$ এবং $\phi_h(W_hx_t+ U_h(r_t\odot h_{t-1}) + b_h এর উত্তল সংমিশ্রণ $z_t$ এর মাধ্যমে। যদি সহগটি 1 হয়, বর্তমান ইউনিট আউটপুটটি পূর্ববর্তী স্টেটের কেবল একটি অনুলিপি এবং ইনপুটটিকে উপেক্ষা করে (এটি পূর্বনির্ধারিত আচরণ)। যদি এটির চেয়ে কম হয়, তবে এটি ইনপুট থেকে কিছু নতুন তথ্য গ্রহণ করে। -The reset gate $r_t$ is used to decide how much of the past information to forget. In the new memory content $\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h)$, if the coefficient in $r_t$ is 0, then it stores none of the information from the past. If at the same time $z_t$ is 0, then the system is completely reset since $h_t$ would only look at the input. + রিসেট গেট $r_t$ অতীতের তথ্যকে কতটা ভুলে যেতে হবে তার সিদ্ধান্ত নিতে ব্যবহৃত হয়। নতুন মেমরি কনটেন্টে $phi_h(W_hx_t + U_h (r_t \ odot h_ {t-1}) + b_h)$, যদি $r_t$ এর সহগ 0 হয় তবে এটি অতীতের কোনও তথ্যই সঞ্চয় করে না। যদি একই সময়ে $z_t$ এর মাণ 0 হয়, তবে সিস্টেমটি পুরোপুরি পুনরায় সেট করা হয় যেহেতু $h_t$ কেবল ইনপুটকে দেখবে। ## LSTM (Long Short-Term Memory) ## LSTM (লং শর্ট - টার্ম মেমরি) -GRU is actually a simplified version of LSTM which came out much earlier, [Hochreiter, Schmidhuber, 1997](https://www.bioinf.jku.at/publications/older/2604.pdf). By building up memory cells to preserve past information, LSTMs also aim to solve long term memory loss issues in RNNs. The structure of LSTMs is shown below: + GRU আসলে LSTM এর একটি সরলিকৃত সংস্করণ যা অনেক আগে প্রকাশিত হয়েছিল, [Hochreiter, Schmidhuber, 1997](https://www.bioinf.jku.at/publications/older/2604.pdf)। অতীত তথ্য সংরক্ষণের জন্য মেমরি সেল তৈরি করার পাশাপাশি, LSTM লক্ষ্য করে RNN গুলোতে দীর্ঘমেয়াদী মেমরির হ্রাসের সমস্যাগুলি সমাধান করতে। LSTM এর কাঠামো নিচে প্রদর্শিত হয়েছে:

-Figure 4. LSTM + চিত্র ৪। LSTM
@@ -219,71 +219,71 @@ h_t = o_t \odot\tanh(c_t) \end{array} $$ -where $\odot$ denotes element-wise multiplication, $x_t\in\mathbb{R}^a$ is an input vector to the LSTM unit, $f_t\in\mathbb{R}^h$ is the forget gate's activation vector, $i_t\in\mathbb{R}^h$ is the input/update gate's activation vector, $o_t\in\mathbb{R}^h$ is the output gate's activation vector, $h_t\in\mathbb{R}^h$ is the hidden state vector (also known as output), $c_t\in\mathbb{R}^h$ is the cell state vector. + যেখানে $\odot$ উপাদান অনুসারে গুণনকে বোঝায়, $\x_t\mathbb{R}^a$ LSTM ইউনিটের একটি ইনপুট ভেক্টর,$f_t\in\mathbb{R}^h$ হল ফরগেট গেটের অ্যাক্টিভেশন ভেক্টর ,$i_t\in\mathbb{R}^h$ হল ইনপুট/আপডেট গেটের অ্যাক্টিভেশন ভেক্টর, $o_t\in\mathbb{R}^h$ আউটপুট গেটের অ্যাক্টিভেশন ভেক্টর, $h_t\in\mathbb{R}^h$ হিডেন স্টেট ভেক্টর (আউটপুট নামেও পরিচিত), $c_t\in\mathbb{R}^h$ হল সেল স্টেট ভেক্টর। -An LSTM unit uses a cell state $c_t$ to convey the information through the unit. It regulates how information is preserved or removed from the cell state through structures called gates. The forget gate $f_t$ decides how much information we want to keep from the previous cell state $c_{t-1}$ by looking at the current input and previous hidden state, and produces a number between 0 and 1 as the coefficient of $c_{t-1}$. $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ computes a new candidate to update the cell state, and like the forget gate, the input gate $i_t$ decides how much of the update to be applied. Finally, the output $h_t$ will be based on the cell state $c_t$, but will be put through a $\tanh$ then filtered by the output gate $o_t$. + একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_ {t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $ c_ {t-1} $ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । -Though LSTMs are widely used in NLP, their popularity is decreasing. For example, speech recognition is moving towards using temporal CNN, and NLP is moving towards using transformers. + যদিও LSTM NLPতে ব্যাপকভাবে ব্যবহৃত হয়, তবে তাদের জনপ্রিয়তা হ্রাস পাচ্ছে। উদাহরণস্বরূপ, স্পিচ রিকগনিশন অস্থায়ী সিএনএন ব্যবহারের দিকে এগিয়ে চলেছে, এবং NLP ট্রান্সফর্মারগুলো ব্যবহার করার দিকে এগিয়ে চলেছে। ## Sequence to Sequence Model ## সিকোয়েন্স -টু - সিকোয়েন্স মডেল -The approach proposed by [Sutskever NIPS 2014](https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) is the first neural machine translation system to have comparable performance to classic approaches. It uses an encoder-decoder architecture where both the encoder and decoder are multi-layered LSTMs. + [Sutskever NIPS 2014] দ্বারা প্রস্তাবিত পদ্ধতিটির কর্মক্ষমতা হচ্ছে ক্লাসিক পদ্ধতির সাথে তুলনাযোগ্য প্রথম নিউরাল মেশিন অনুবাদ সিস্টেম(https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) । এটি একটি এনকোডার-ডিকোডার আর্কিটেকচার ব্যবহার করে যেখানে এনকোডার এবং ডিকোডার উভয়ই বহু-স্তরযুক্ত LSTM ।

-Figure 5. Seq2Seq + চিত্র ৫। সিক-টু-সিক
-Each cell in the figure is an LSTM. For the encoder (the part on the left), the number of time steps equals the length of the sentence to be translated. At each step, there is a stack of LSTMs (four layers in the paper) where the hidden state of the previous LSTM is fed into the next one. The last layer of the last time step outputs a vector that represents the meaning of the entire sentence, which is then fed into another multi-layer LSTM (the decoder), that produces words in the target language. In the decoder, the text is generated in a sequential fashion. Each step produces one word, which is fed as an input to the next time step. + চিত্রের প্রতিটি ঘর একটি LSTM। এনকোডার (বাম দিকের অংশ) এর জন্য, সময় পদক্ষেপের সংখ্যা অনুবাদ করা বাক্যটির দৈর্ঘ্যের সমান হয়। প্রতিটি পদক্ষেপে, LSTM এর একটি স্ট্যাক রয়েছে (কাগজের চার স্তর) যেখানে পূর্ববর্তী LSTM এর হিডেন স্টেট পরবর্তী একটিকে দেওয়া হয়। শেষ বারের পদক্ষেপের শেষ স্তরটি একটি ভেক্টর আউটপুট দেয় যা পুরো বাক্যটির অর্থ উপস্থাপন করে, যা পরে অন্য একটি মাল্টি-লেয়ার LSTM(ডিকোডার) এ দেয়া হয়, যা লক্ষ্যকৃত ভাষায় শব্দ তৈরি করে। ডিকোডারে, পাঠ্যটি অনুক্রমিক ফ্যাশনে উত্পন্ন হয়। প্রতিটি পদক্ষেপে একটি শব্দ তৈরি হয়, যা পরের বারের ধাপে ইনপুট হিসাবে দেওয়া হয়। -This architecture is not satisfying in two ways: First, the entire meaning of the sentence has to be squeezed into the hidden state between the encoder and decoder. Second, LSTMs actually do not preserve information for more than about 20 words. The fix for these issues is called a Bi-LSTM, which runs two LSTMs in opposite directions. In a Bi-LSTM the meaning is encoded in two vectors, one generated by running LSTM from left to right, and another from right to left. This allows doubling the length of the sentence without losing too much information. + এই আর্কিটেকচারটি দুটি উপায়ে পরিপূর্ণ নয়: প্রথমত, বাক্যটির পুরো অর্থ এনকোডার এবং ডিকোডারের মধ্যে হিডেন স্টেটে ছড়িয়ে দিতে হবে। দ্বিতীয়ত, LSTM প্রকৃতপক্ষে প্রায় 20 টিরও বেশি শব্দের জন্য তথ্য সংরক্ষণ করে না। এই সমস্যার সমাধানটিকে Bi-LSTM বলা হয়, যা দুটি LSTM বিপরীত দিকে চালিত করে। Bi-LSTM -এর অর্থ দুটি ভেক্টরগুলোতে এনকোড করা থাকে, একটি বাম থেকে ডানে LSTM চালিয়ে আর অন্যটি ডান থেকে বামে উত্পন্ন হয়। এটি খুব বেশি তথ্য না হারিয়ে বাক্যটির দৈর্ঘ্য দ্বিগুণ করার সুযোগ তৈরি করে। ## Seq2seq with Attention ## অ্যাটেনশনের সাথে সিক-টু-সিক -The success of the approach above was short-lived. Another paper by [Bahdanau, Cho, Bengio](https://arxiv.org/abs/1409.0473) suggested that instead of having a gigantic network that squeezes the meaning of the entire sentence into one vector, it would make more sense if at every time step we only focus the attention on the relevant locations in the original language with equivalent meaning, *i.e.* the attention mechanism. + উপরোক্ত পদ্ধতির সাফল্য স্বল্পস্থায়ী ছিল। [Bahdanau, Cho, Bengio] এর অন্য একটি পেপার (https://arxiv.org/abs/1409.0473) পরামর্শ দিয়েছে যে একটি বিশাল নেটওয়ার্কে পুরো বাক্যটির অর্থ একটি ভেক্টর হিসাবে চেপে রাখার পরিবর্তে এটি আরও অর্থপূর্ণ হবে যদি প্রতিবারের পদক্ষেপে আমরা কেবলমাত্র সমান অর্থের সাথে মূল ভাষার প্রাসঙ্গিক অবস্থানগুলিতে মনোযোগ নিবদ্ধ করি,অর্থাৎ অ্যাটেনশন পদ্ধতি ব্যবহার করি।

-Figure 6. Seq2Seq with Attention + চিত্র ৬। অ্যাটেনশনের সাথে সিক-টু-সিক
-In Attention, to produce the current word at each time step, we first need to decide which hidden representations of words in the input sentence to focus on. Essentially, a network will learn to score how well each encoded input matches the current output of the decoder. These scores are normalized by a softmax, then the coefficients are used to compute a weighted sum of the hidden states in the encoder at different time steps. By adjusting the weights, the system can adjust the area of inputs to focus on. The magic of this mechanism is that the network used to compute the coefficients can be trained through backpropagation. There is no need to build them by hand! + অ্যাটেনশনে, প্রতিটি ধাপে বর্তমান শব্দটি তৈরি করতে, প্রথমে আমাদের সিদ্ধান্ত নেওয়া দরকার যে ইনপুট বাক্যে শব্দের কী কী হিডেন উপস্থাপনাতে গুরুত্ব দেয়া উচিত। মূলত, একটি নেটওয়ার্ক স্কোর করতে শিখবে যে প্রতিটি এনকোডযুক্ত ইনপুট ডিকোডারের বর্তমান আউটপুটটির সাথে কতটা ভাল মেলে। এই স্কোরগুলি একটি সফটম্যাক্স দ্বারা নর্মালাইয করা হয়, তারপরে সহগগুলি বিভিন্ন সময় পদক্ষেপে এনকোডারে লুকানো রাজ্যের একটি ওয়েটেড সাম গণনা করতে ব্যবহৃত হয়। ওয়েট সামঞ্জস্য করার মাধ্যমে, সিস্টেম ফোকাস করার জন্য ইনপুটগুলির ক্ষেত্রটি সমন্বয় করতে করতে পারে। এই প্রক্রিয়াটির বিশেষত্বটি হল সহগ গণ্নার জন্য ব্যবহৃত নেটওয়ার্কটি ব্যাক-প্রোপাগেশনের মাধ্যমে প্রশিক্ষণ দেওয়া যেতে পারে। এগুলি হাতে তৈরি করার দরকার নেই! -Attention mechanisms completely transformed neural machine translation. Later, Google published a paper [*Attention Is All You Need*](https://arxiv.org/abs/1706.03762), and they put forward transformer, where each layer and group of neurons is implementing attention. + অ্যাটেনশন পদ্ধতি সম্পূর্ণরূপে নিউরাল মেশিন অনুবাদকে রূপান্তরিত করে। পরবর্তীতে, গুগল একটি প্রবন্ধ প্রকাশ করেছে [*Attention Is All You Need*](https://arxiv.org/abs/1706.03762), এবং তারা ট্রান্সফর্মার রেখেছিল, যেখানে প্রতিটি স্তর এবং নিউরনের সমষ্টি অ্যাটেনশন প্রয়োগ করেছে। ## [Memory network](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=4575s) ## মেমরি নেটওয়ার্ক -Memory networks stem from work at Facebook that was started by [Antoine Bordes](https://arxiv.org/abs/1410.3916) in 2014 and [Sainbayar Sukhbaatar](https://arxiv.org/abs/1503.08895) in 2015. + মেমোরি নেটওয়ার্কগুলি ফেসবুকে এমন কাজ থেকে শুরু হয়েছে যা ২০১৪ সালে [Antoine Bordes](https://arxiv.org/abs/1410.3916) এবং [Sainbayar Sukhbaatar](https://arxiv.org/abs/1503.08895) দ্বারা ২০১৫ সালে শুরু হয়েছিল । -The idea of a memory network is that there are two important parts in your brain: one is the **cortex**, which is where you have long term memory. There is a separate chunk of neurons called the **hippocampus** which sends wires to nearly everywhere in the cortex. The hippocampus is thought to be used for short term memory, remembering things for a relatively short period of time. The prevalent theory is that when you sleep, there is a lot of information transferred from the hippocampus to the cortex to be solidified in long term memory since the hippocampus has limited capacity. + একটি মেমরি নেটওয়ার্কের ধারণাটি হল আপনার মস্তিষ্কে দুটি গুরুত্বপূর্ণ অংশ রয়েছে: একটি হল ** কর্টেক্স **, যেখানে আপনার দীর্ঘমেয়াদী স্মৃতি রয়েছে। ** হিপ্পোক্যাম্পাস ** নামে পরিচিত নিউরনের একটি পৃথক অংশ রয়েছে যা কর্টেক্সের প্রায় সর্বত্র তাড়িত-বার্তাবহ প্রেরণ করে। হিপ্পোক্যাম্পাসটি স্বল্পমেয়াদী মেমরির জন্য ব্যবহার করা হয় বলে মনে করা হয়, তুলনামূলকভাবে স্বল্প সময়ের জন্য জিনিসগুলি স্মরণে রাখে । প্রচলিত তত্ত্বটি হ'ল আপনি যখন ঘুমাবেন, হিপ্পোক্যাম্পাসের সীমিত ক্ষমতা থাকার কারণে হিপ্পোক্যাম্পাস থেকে কর্টেক্সে প্রচুর পরিমাণে স্থানান্তরিত হয় দীর্ঘমেয়াদী স্মৃতিতে দৃঢ়তর হওয়ার জন্য। -For a memory network, there is an input to the network, $x$ (think of it as an address of the memory), and compare this $x$ with vectors $k_1, k_2, k_3, \cdots$ ("keys") through a dot product. Put them through a softmax, what you get are an array of numbers which sum to one. And there are a set of other vectors $v_1, v_2, v_3, \cdots$ ("values"). Multiply these vectors by the scalers from softmax and sum these vectors up (note the resemblance to the attention mechanism) gives you the result. + একটি মেমরি নেটওয়ার্কের জন্য, নেটওয়ার্কে একটি ইনপুট রয়েছে, $x$ (এটিকে মেমরির একটি ঠিকানা হিসাবে মনে করুন), এবং এই $x$ টিকে একটি ডট গুণফলের মাধ্যমে $k_1, k_2, k_3, \cdots$ ("keys") ভেক্টরগুলির সাথে তুলনা করুন । এগুলি একটি সফটম্যাক্সের মারফত রেখে, আপনি যা পান তা হল সংখ্যার অ্যারে (array) বিন্যাস যাদের সমষ্টিগত মান হয় ১। এবং অন্যান্য ভেক্টরগুলির একটি সেট রয়েছে $v_1, v_2, v_3, \cdots$ সিডটস $ ("মান")। সফটম্যাক্স থেকে স্কেলারগুলির সাহায্যে এই ভেক্টরগুলিকে গুণ করুন এবং এই ভেক্টরগুলি যোগ করুন (অ্যাটেনশন ব্যবস্থার সাথে সাদৃশ্যটি নোট করুন) , যার পরিপ্রেক্ষিতে আপনাকে ফলাফল দেয়।

-Figure 7. Memory Network + চিত্র ৭। মেমরি নেটওয়ার্ক
-If one of the keys (*e.g.* $k_i$) exactly matches $x$, then the coefficient associated with this key will be very close to one. So the output of the system will essentially be $v_i$. + কী গুলির মধ্যে একটি যদি (*e.g.* $k_i$) হুবহু $x$ এর সাথে মিলে যায়, তবে এই কী-টির সাথে যুক্ত সহগ একটির খুব কাছাকাছি থাকবে। সুতরাং সিস্টেমের আউটপুটটি মূলত $v_i$ হবে। -This is **addressable associative memory**. Associative memory is that if your input matches a key, you get *that* value. And this is just a soft differentiable version of it, which allows you to backpropagate and change the vectors through gradient descent. + এটি ** অ্যাড্রেসেবল এসোসিয়েটিভ মেমরি **। সহযোগী মেমোরিটি হ'ল যদি আপনার ইনপুট কোনও কী-টির সাথে মেলে, আপনি * সেই * মানটি পাবেন। এবং এটি নিজের একটি সফট ডিফারেন্সিয়াল সংস্করণ, যা আপনাকে গ্র্যাডিয়েন্ট বংশোদ্ভূত মাধ্যমে ভেক্টরগুলিকে ব্যাকপ্রোপাগেট করতে এবং পরিবর্তন করতে দেয়। -What the authors did was tell a story to a system by giving it a sequence of sentences. The sentences are encoded into vectors by running them through a neural net that has not been pretrained. The sentences are returned to the memory of this type. When you ask a question to the system, you encode the question and put it as the input of a neural net, the neural net produces an $x$ to the memory, and the memory returns a value. + লেখকরা যা করেছিলেন তা হল একটি সিস্টেমকে বাক্যগুলির ক্রম অনুসারে একটি গল্প বলেছিলেন। বাক্যগুলি ভেক্টরগুলিতে একটি নিউরাল নেট দ্বারা চালিত হয়ে এনকোড করা হয় যা পূর্বে ট্রেইন করা হয়নি। বাক্যগুলি এই ধরণের মেমরিতে ফিরে আসে। আপনি যখন সিস্টেমে কোনও প্রশ্ন জিজ্ঞাসা করেন, আপনি প্রশ্নটি এনকোড করে নিউরাল নেট এর ইনপুট হিসাবে রাখেন, নিউরাল নেট মেমরিতে একটি $x$ উত্পাদন করে এবং মেমরিটি একটি মান দেয়। -This value, together with the previous state of the network, is used to re-access the memory. And you train this entire network to produce an answer to your question. After extensive training, this model actually learns to store stories and answer questions. + এই মানটি, নেটওয়ার্কের পূর্বের অবস্থার সাথে একসাথে, মেমরিটিকে পুনরায় অ্যাক্সেস করতে ব্যবহৃত হয়। এবং আপনি আপনার প্রশ্নের উত্তর তৈরি করতে এই পুরো নেটওয়ার্কটিকে প্রশিক্ষণ দিন। ব্যাপক প্রশিক্ষণের পরে, এই মডেলটি আসলে গল্পগুলি সঞ্চয় করতে এবং প্রশ্নের উত্তর দিতে শেখে। $$ \alpha_i = k_i^\top x \\ @@ -291,17 +291,17 @@ c = \text{softmax}(\alpha) \\ s = \sum_i c_i v_i $$ -In memory network, there is a neural net that takes an input and then produces an address for the memory, gets the value back to the network, keeps going, and eventually produces an output. This is very much like computer since there is a CPU and an external memory to read and write. + মেমোরি নেটওয়ার্কে, একটি নিউরাল নেট রয়েছে যা একটি ইনপুট নেয় এবং তারপরে মেমরির জন্য একটি ঠিকানা তৈরি করে, নেটওয়ার্কে ফিরে আসার মান পায়, চালিয়ে যায় এবং অবশেষে একটি আউটপুট তৈরি করে। এটি অনেকটা কম্পিউটারের মতো, যেহেতু এখানে একটি সিপিইউ এবং পড়া এবং লেখার জন্য একটি বাহ্যিক মেমরি রয়েছে।

-Figure 8. Comparision between memory network and computer (Photo by Khan Acadamy) + চিত্র ৮। মেমরি নেটওয়ার্ক এবং কম্পিউটারের তুলনা
-There are people who imagine that you can actually build **differentiable computers** out of this. One example is the [Neural Turing Machine](https://arxiv.org/abs/1410.5401) from DeepMind, which was made public three days after Facebook's paper was published on arXiv. + এমন লোকেরা আছেন যারা কল্পনা করেন যে আপনি এটির বাইরে ** পার্থক্যযোগ্য কম্পিউটার ** তৈরি করতে পারবেন। এর একটি উদাহরণ হ'ল ডিপমাইন্ডের [Neural Touring Machine] (https://arxiv.org/abs/1410.5401), যা ফেসবুকের পেপারটি arXivতে প্রকাশিত হওয়ার তিন দিন পরে প্রকাশ করা হয়েছিল। -The idea is to compare inputs to keys, generate coefficients, and produce values - which is basically what a transformer is. A transformer is basically a neural net in which every group of neurons is one of these networks. + ধারণাটি হল কী-গুলির সাথে ইনপুটগুলি তুলনা করা, সহগ তৈরি করা এবং মানগুলি উত্পাদন করা - যা মূলত ট্রান্সফর্মারের কাজ। একটি ট্রান্সফর্মার মূলত একটি নিউরাল নেট যেখানে প্রতিটি নিউরনের গ্রুপ এই নেটওয়ার্কগুলির মধ্যে একটি। \ No newline at end of file From 47ae8e63728fa858ca81702c2e9d496b7fa12dd2 Mon Sep 17 00:00:00 2001 From: Mahbuba Tasmin Date: Thu, 11 Mar 2021 06:56:34 +0600 Subject: [PATCH 07/35] week 6 lecture-3 completed --- docs/bn/week06/06-3.md | 398 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 398 insertions(+) create mode 100644 docs/bn/week06/06-3.md diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md new file mode 100644 index 000000000..ea476bb13 --- /dev/null +++ b/docs/bn/week06/06-3.md @@ -0,0 +1,398 @@ +--- +lang-ref: ch.06-3 +title: Architecture of RNN and LSTM Model +lecturer: Alfredo Canziani +authors: Zhengyuan Ding, Biao Huang, Lin Jiang, Nhung Le +date: 3 Mar 2020 +--- + + +## [Overview](https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) +## সার্বিক পরিদর্শন (https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) + + +আরএনএন হল এক ধরণের আর্কিটেকচার যা আমরা ব্যবহার করতে পারি ডেটা সিক্যুয়েন্সগুলি নিয়ে কাজ করতে। ক্রম কি? সিএনএন পাঠ থেকে আমরা শিখেছি যে ডোমেনের উপর নির্ভর করে একটি সংকেত 1D, 2D বা 3D হতে পারে। আপনি কী থেকে ম্যাপিং করছেন এবং আপনি কী ম্যাপিং করছেন তা দ্বারা ডোমেনটি সংজ্ঞায়িত করা হয়। অনুক্রমিক ডেটা হ্যান্ডলিং মূলত 1D ডেটা নিয়ে কাজ করে যেহেতু ডোমেনটি অস্থায়ী অক্ষ হয়। তবুও, আপনি 2 ডি ডেটা ব্যবহার করতে আরএনএন ব্যবহার করতে পারেন, যেখানে আপনার দুটি দিক রয়েছে। + +### Vanilla *vs.* Recurrent NN +### ভ্যানিলা * বনাম। * রিকারেন্ট এনএন + + +চিত্র-১ হল তিনটি স্তর সহ একটি ভ্যানিলা নিউরাল নেটওয়ার্কের ডায়াগ্রাম। "ভ্যানিলা" একটি আমেরিকান শব্দ যার অর্থ সমতল। গোলাপী বুদ্বুদ হল ইনপুট ভেক্টর X, এর মাঝখানে সবুজ রঙের মধ্যে হিডেন লেয়ার এবং চূড়ান্ত নীল স্তরটি আউটপুট। ডানদিকের ডিজিটাল ইলেকট্রনিক্স থেকে একটি উদাহরণ ব্যবহার করে, এটি একটি যৌথ যুক্তির মতো, যেখানে বর্তমান আউটপুট কেবলমাত্র বর্তমান ইনপুটটির উপর নির্ভর করে। +
+
+ +চিত্র ১ঃ ভ্যানিলা আর্কিটেকচার +
+ + +ভ্যানিলা নিউরাল নেটওয়ার্কের বিপরীতে, রিকারেন্ট নিউরাল নেটওয়ার্কগুলিতে বর্তমান আউটপুট কেবল বর্তমান ইনপুটের উপর নির্ভর করে না, চিত্র 2-তে প্রদর্শিত সিস্টেমের অবস্থার উপরও নির্ভর করে, এটি ডিজিটাল ইলেক্ট্রনিক্সের অনুক্রমিক যুক্তির মতো, যেখানে আউটপুটটিও একটি "ফ্লিপ-ফ্লপ" (ডিজিটাল ইলেকট্রনিক্সের একটি বেসিক মেমরি ইউনিট) এর উপর নির্ভর করে। সুতরাং এখানে মূল পার্থক্যটি হল ভ্যানিলা নিউরাল নেটওয়ার্কের আউটপুট কেবলমাত্র বর্তমান ইনপুটের উপর নির্ভর করে, যখন RNN এর একটি সিস্টেমের অবস্থার উপরও নির্ভর করে। +
+
+ +চিত্র ২ঃ আরএনএন আর্কিটেকচার +
+ +
+
+ +চিত্র ৩ঃ প্রাথমিক এনএন আর্কিটেকচার +
+ + +ইয়ান এর ডায়াগ্রামে এই আকৃতি গুলোকে নিউরনের মধ্যে যুক্ত করা হয় যাতে করে একটি টেনসর এবং অন্যটির মধ্যে একটি ম্যাপিং উপস্থাপন করা হয় (একটি ভেক্টর থেকে অন্য ভেক্টরে)। উদাহরণস্বরূপ, চিত্র ৩-এ, ইনপুট ভেক্টর X এই অতিরিক্ত আইটেমটির মাধ্যমে হিডেন উপস্থাপনা h- এর জন্য মানচিত্র তৈরি করবে । এই আইটেমটি আসলে একটি অ্যাফাইন ট্রান্সফরমেশন * অর্থাত্ * ঘূর্ণন প্লাস বিকৃতি। তারপরে অন্য রূপান্তরের মাধ্যমে আমরা হিডেন লেয়ার থেকে চূড়ান্ত আউটপুটটিতে পৌঁছে যাই। একইভাবে, আরএনএন ডায়াগ্রামে নিউরনের মধ্যে একই অতিরিক্ত আইটেম থাকতে পারে। + +
+
+ +চিত্র ৪ঃ ইয়ানের আরএনএন আর্কিটেকচার +
+ + +### Four types of RNN Architectures and Examples +### চার ধরণের আরএনএন আর্কিটেকচার এবং উদাহরণ + + +প্রথম কেসটি সিকোয়েন্সের ভেক্টর। ইনপুটটি একটি বুদবুদ এবং তারপরে এই সবুজ বুদবুদ হিসাবে বর্ণিত সিস্টেমের অভ্যন্তরীণ অবস্থার বিবর্তন হবে। সিস্টেমের অবস্থা যেমন বিকশিত হয় ততবার প্রতিটি ধাপে একটি নির্দিষ্ট আউটপুট আ +
+
+ +চিত্র ৫ঃ ভেক্টর টু সিকোয়েন্স +
+ + +এই ধরণের আর্কিটেকচারের উদাহরণ হল ইনপুটটি একটি চিত্র হিসাবে থাকে তবে আউটপুটটি শব্দের অনুক্রম হবে যা ইনপুট চিত্রের ইংরেজী বিবরণ উপস্থাপন করে। চিত্র-৬ ব্যবহার করে ব্যাখ্যা করার জন্য, এখানে প্রতিটি নীল বুদ্বুদ ইংরেজি শব্দের অভিধানে একটি সূচক হতে পারে। উদাহরণস্বরূপ, যদি আউটপুটটি এই বাক্যটি হয় "এটি হলুদ স্কুল বাস"। আপনি প্রথমে "এটি" শব্দের সূচি টি পান এবং তারপরে "হয়" শব্দের সূচি পেতে পারেন ইত্যাদি । এই নেটওয়ার্কের কিছু ফলাফল নীচে দেখানো হয়েছে। উদাহরণস্বরূপ, প্রথম কলামে শেষ চিত্রটি সম্পর্কিত বিবরণটি হ'ল "একটি শুকনো ঘাসের ক্ষেত পেরিয়ে হাতির একটি পাল হাঁটছে", যা খুব ভালভাবে পরিশ্রুত। তারপরে দ্বিতীয় কলামে, প্রথম চিত্রটি "দুটি কুকুর ঘাসে খেলবে" ", যখন এটিতে আসলে তিনটি কুকুর আছে। শেষ কলামে আরও বেশি ভুল উদাহরণ রয়েছে যেমন "একটি পার্কিংয়ের জায়গায় একটি হলুদ স্কুল বাস"। সাধারণভাবে, এই ফলাফলগুলি দেখায় যে এই নেটওয়ার্কটি বেশ মারাত্মকভাবে ব্যর্থ হতে পারে এবং কখনও কখনও ভাল সম্পাদন করতে পারে। এটি এমন একটি প্রেক্ষাপট যেখানে একটি ইনপুট ভেক্টর থেকে, যা একটি চিত্রের প্রতিনিধিত্ব করে, প্রতীকগুলির অনুক্রম হয়, যা উদাহরণস্বরূপ অক্ষর বা শব্দের জন্য ইংরেজি বাক্যগুলি তৈরি করে। এই ধরণের আর্কিটেকচারকে অটোরেগ্রেসিভ নেটওয়ার্ক বলা হয়। একটি অটোরেগ্রেসিভ নেটওয়ার্ক এমন একটি নেটওয়ার্ক যাতে পূর্ববর্তী আউটপুটটিকে ইনপুট হিসাবে ব্যবহার করার পরিপ্রেক্ষিতে এমন একটি আউটপুট দেয়। + +
+
+ +চিত্র ৬ঃ ভেক্টর টূ সিকোয়েন্স উদাহরণঃ ছবি থেকে পাঠ্য +
+ + +দ্বিতীয় প্রকারটি একটি চূড়ান্ত ভেক্টরের ক্রম। এই নেটওয়ার্কটি প্রতীকগুলির ক্রমকে ব্যবহার করতে থাকে এবং কেবল শেষে একটি চূড়ান্ত আউটপুট দেয়। পাইথনের ব্যাখ্যার জন্য এর একটি অ্যাপ্লিকেশনটি নেটওয়ার্কটি ব্যবহার করতে পারে। উদাহরণস্বরূপ, ইনপুটটি পাইথন প্রোগ্রামের এই লাইনগুলি। + +
+
+ +চিত্র ৭ঃ সিকোয়েন্স টু ভেক্টর +
+ +
+
+ +চিত্র ৮ঃ পাইথন কোডের ইনপুট লাইনস +
+ + +তারপরে নেটওয়ার্ক এই প্রোগ্রামটির সঠিক সমাধানটি আউটপুট করতে সক্ষম হবে। এর মতো আরও জটিল প্রোগ্রাম: +
+
+ +চিত্র ৯ঃ অপেক্ষাকৃত পূর্ণ ক্ষেত্রের পাইথন কোডের ইনপুট লাইনস +
+ + +তারপরে আউটপুটটি ১২১৮৪ হওয়া উচিত। এই দুটি উদাহরণ প্রদর্শিত হয় যে আপনি এই ধরণের অপারেশন করতে নিউরাল নেটওয়ার্ককে প্রশিক্ষণ দিতে পারেন। আমাদের কেবল একটি চিহ্নের ক্রম ব্যবহার করতে হবে এবং একটি নির্দিষ্ট মান হিসাবে চূড়ান্ত আউটপুট প্রয়োগ করতে হবে। + +তৃতীয়টি ভেক্টর থেকে সিক্যুয়েন্সের ক্রম, চিত্র -১০ এ দেখানো হয়েছে। এই আর্কিটেকচারটি ভাষা অনুবাদ সম্পাদনের মানক উপায় হিসাবে ব্যবহৃত হত। আপনি এখানে গোলাপীতে দেখানো প্রতীকগুলির ক্রম দিয়ে শুরু করুন । তারপরে সবকিছু এই চূড়ান্ত-h এ সংশ্লেষিত হয়ে যায় যা একটি ধারণার প্রতিনিধিত্ব করে। উদাহরণস্বরূপ, আমরা ইনপুট হিসাবে একটি বাক্য পেতে পারি এবং এটি একটি ভেক্টরে সাময়িকভাবে চেপে ধরতে পারি, যা অর্থ এবং বার্তাটি উপস্থাপন করে যা প্রেরণ করতে পারে। তারপরে যেকোন উপস্থাপনায় এই অর্থটি পাওয়ার পরে, নেটওয়ার্ক এটিকে আবার আলাদা ভাষায় তালিকাভুক্ত করে। উদাহরণস্বরূপ, "আজ আমি খুব খুশি" ইংরেজি শব্দের অনুক্রমে ইতালীয় বা চীনা অনুবাদ করা যেতে পারে। সাধারণভাবে, নেটওয়ার্ক ইনপুট হিসাবে এক ধরণের এনকোডিং পায় এবং এগুলি সংকীর্ণ উপস্থাপনায় রূপান্তরিত করে। অবশেষে, এটি একই সংকোচিত সংস্করণে ডিকোডিং সম্পাদন করে। +সাম্প্রতিক সময়ে আমরা ট্রান্সফরমারগুলির মতো নেটওয়ার্ক দেখেছি, যা আমরা পরবর্তী পাঠে কভার করব, ভাষা অনুবাদ কার্যগুলিতে এই পদ্ধতিটিকে ছাড়িয়ে যাবে। এই ধরণের আর্কিটেকচারটি প্রায় দুই বছর আগে (2018) স্টেট অফ দ্য আর্ট হিসাবে ব্যবহৃত হত। + +
+
+ +চিত্র ১০ঃ সিকোয়েন্স টু ভেক্টর টু সিকোয়েন্স +
+ + +আপনি যদি সুপ্ত স্পেসের উপর একটি পিসিএ করেন, আপনাকে শব্দার্থবিজ্ঞানের (সেমান্টিকস) দ্বারা শব্দগুলি এই গ্রাফের মতো দেখানো হবে। + +
+
+ +চিত্র ১১ঃ পিসিএ পরবর্তী সেমান্টিকস দ্বারা গুচ্ছকৃত শব্রি +
+ + +আমরা যদি জুম করি তবে আমরা দেখতে পাব যে একই অবস্থানটিতে জানুয়ারি এবং নভেম্বর এর মতো সমস্ত মাস রয়েছে। +
+
+Figure 12: Zooming in Word Groups--> +চিত্র ১২ঃ শব্দ গুচ্ছে জুম করে দেখা +
+ + +আপনি যদি কোনও আলাদা অঞ্চলে মনোনিবেশ করেন তবে আপনি "কয়েক দিন আগে" "পরের কয়েক মাস" ইত্যাদির মত বাক্যাংশ পান +
+
+ +চিত্র ১৩ঃ অন্য অঞ্চলের শব্দ গুচ্ছ +
+ + +এই উদাহরণগুলি থেকে আমরা দেখতে পাচ্ছি যে বিভিন্ন অবস্থানের কিছু নির্দিষ্ট সাধারণ অর্থ থাকবে। + + +চিত্র -১৪ দেখায় যে কীভাবে এই ধরণের নেটওয়ার্ক প্রশিক্ষণ দেওয়ার মাধ্যমে কিছু শব্দার্থবিজ্ঞানের বৈশিষ্ট্য দেখা যায়। এক্ষেত্রে উদাহরণ রূপে আপনি দেখতে পাচ্ছেন যে একজন ভেক্টর পুরুষকে মহিলার সাথে এবং আরেকজন রাজা ও রানির সাথে সংযুক্ত করছেন, যার অর্থ মহিলা বিয়োগ পুরুষ রানী বিয়োগের রাজার সমান হতে চলেছে। আপনি এই এমবেডিং স্পেসে একই দূরত্বটি পাবেন যা পুরুষ-মহিলার মতো ক্ষেত্রে প্রযোজ্য। আরেকটি উদাহরণ হবে হাঁটছে থেকে হেঁটেছিল এবং সাঁতার করছে থেকে সাঁতার করেছিল। আপনি সর্বদা এই রকম শব্দের নির্দিষ্ট রৈখিক রূপান্তর একরকম শব্দ থেকে অন্য শব্দে কিংবা দেশ থেকে রাজধানীতে প্রয়োগ করতে পারেন। + +
+
+ +চিত্র ১৪ঃ ট্রেইনিং কালে বাছাইকৃত সেমান্টিকস বৈশিষ্ট্য +
+ + +চতুর্থ এবং চূড়ান্ত কেসটি সিকোয়েন্সের ক্রম। এই ইনপুটটিতে আপনি ইনপুট ব্যবহার শুরু করার সাথে সাথে নেটওয়ার্ক আউটপুট উত্পন্ন করতে শুরু করে। এই ধরণের আর্কিটেকচারের উদাহরণ T9, আপনি যদি কোনও নোকিয়া ফোন ব্যবহার করে থাকেন, তবে আপনি টাইপ করার সাথে সাথে লেখ্যর পরামর্শ পেয়েছিলেন । অন্য উদাহরণটি হচ্ছে বক্তব্য থেকে শিরোনাম থেকে বক্তব্য। একটি দুর্দান্ত উদাহরণ হলেন এই আরএনএন-রাইটার। আপনি যখন "শনির আংটি জ্বলজ্বল করার সময়" টাইপ করা শুরু করেন, এটি উল্লেখিত "দু'জন একে অপরের দিকে তাকাতে" পরামর্শ দেয়। এই নেটওয়ার্কটি কিছু বিজ্ঞান ভিত্তিক উপন্যাসে প্রশিক্ষিত হয়েছিল যাতে আপনি কেবল কিছু টাইপ করতে পারেন এবং আপনাকে একটি বই লিখতে সহায়তা করার জন্য পরামর্শ দেওয়ার সুযোগ দেয়। আরও একটি উদাহরণ চিত্র-১৬ এ প্রদর্শিত হয়েছে। আপনি শীর্ষ প্রম্পটটি ইনপুট করুন এবং তারপরে এই নেটওয়ার্কটি বাকিটি সম্পূর্ণ করার চেষ্টা করবে। +
+
+ +চিত্র ১৫ঃ সিকোয়েন্স টূ সিকোয়েন্স +
+ +
+
+ +চিত্র ১৬ঃ সিকোয়েন্স টূ সিকোয়েন্স মডেলের টেক্সট অটো-কমপ্লিশন মডেল +
+ + +## [Back Propagation through time](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s) +## সময়ের সাথে ব্যাক-প্রোপাগেশন + +### Model architecture +### মডেল আর্কিটেকচার + + +আরএনএনকে প্রশিক্ষণের জন্য, সময়ের সাথে ব্যাক-প্রোপাগেশন (বিপিটিটি) অবশ্যই ব্যবহার করতে হবে। আরএনএন এর মডেল আর্কিটেকচারটি নীচের চিত্রে দেওয়া হয়েছে। বাম নকশাটি লুপের উপস্থাপনা ব্যবহার করে যখন ডান চিত্রটি সময়ের সাথে সাথে একটি সারিতে লুপটি প্রকাশ করে। +
+
+ +চিত্র ১৭ঃ সময়ের সাথে ব্যাক-প্রোপাগেশন +
+ + +হিডেন উপস্থাপনা বর্ণিত হয় নিম্নরূপে + +$$ +\begin{aligned} +\begin{cases} +h[t]&= g(W_{h}\begin{bmatrix} +x[t] \\ +h[t-1] +\end{bmatrix} ++b_h) \\ +h[0]&\dot=\ \boldsymbol{0},\ W_h\dot=\left[ W_{hx} W_{hh}\right] \\ +\hat{y}[t]&= g(W_yh[t]+b_y) +\end{cases} +\end{aligned} +$$ + + +প্রথম সমীকরণটি ইনপুটটির স্ট্যাক সংস্করণের ঘূর্ণনের উপর প্রয়োগ করা একটি নন -লিনিয়ার ফাংশন নির্দেশ করে যেখানে হিডেন স্তরের পূর্ববর্তী কনফিগারেশন সংযুক্ত করা হয়। শুরুতে, $h[0]$ সেট করা আছে 0 মান হিসেবে। সমীকরণটি সহজ করার জন্য, $W_h$ কে দুটি পৃথক ম্যাট্রিক হিসাবে লেখা যায়, $\left[W_{hx}\W-{hh}\right]$ , এভাবে কখনও কখনও রূপান্তর হিসাবে বলা যেতে পারে । + +$$ +W_{hx}\cdot x[t]+W_{hh}\cdot h[t-1] +$$ + + +যা ইনপুটটির স্ট্যাক উপস্থাপনার সাথে মিলে যায়। + + + +$y[t]$ চূড়ান্ত রোটেশনের সময় গণনা করা হয় এবং তারপরে আমরা ত্রুটিটিকে আগের সময়ের ধাপে ব্যাকপ্রোপাগেট করতে চেইন বিধিটি ব্যবহার করতে পারি। + +### Batch-Ification in Language Modeling +### ভাষা মডেলিংয়ে ব্যাচ-ইফিকেশন + + +প্রতীকগুলির ক্রম নিয়ে কাজ করার সময়, আমরা লেখ্যটি বিভিন্ন আকারে দলভুক্ত করতে পারি। উদাহরণস্বরূপ, নিম্নলিখিত চিত্রটিতে প্রদর্শিত ক্রমগুলির সাথে কাজ করার সময়, ব্যাচ-ইফিকেশন প্রথমে প্রয়োগ করা যেতে পারে, যেখানে সময় ডোমেনটি উল্লম্বভাবে সংরক্ষণ করা হয়। এই ক্ষেত্রে, ব্যাচের আকার ৪ এ সেট করা আছে। +
+
+ +চিত্র ১৮ঃ ব্যাচ-ইফিকেশন +
+ + +বিপিটিটি পিরিয়ড $টি$ ৩ এ সেট করা থাকলে, আরএনএন-এর জন্য প্রথম ইনপুট $x [1: T]$ এবং আউটপুট $y[1: T]$ হিসাবে নির্ধারিত হয়। +$$ +\begin{aligned} +x[1:T] &= \begin{bmatrix} +a & g & m & s \\ +b & h & n & t \\ +c & i & o & u \\ +\end{bmatrix} \\ +y[1:T] &= \begin{bmatrix} +b & h & n & t \\ +c & i & o & u \\ +d & j & p & v +\end{bmatrix} +\end{aligned} +$$ + + +প্রথম ব্যাচে আরএনএন করার সময়, প্রথমত, আমরা আরএনএন-তে $x[1] = [a\ g\ m\s]$ ব্যবহার করি এবং আউটপুটকে $y [1] = [b\ h\n\ t]$ হতে বাধ্য করি। $x[2]$ থেকে $y[2]$ কে আরএনএন দ্বারা পূর্বাভাসে সহায়তা করার জন্য হিডেন উপস্থাপনা $h[1]$ টিকে পরবর্তী সময় ধাপে প্রেরণ করা হবে। $x[T]$ এবং $y[T]$ এর চূড়ান্ত সেটে $h[T-1]$ প্রেরণের পরে, আমরা $ h[T]$ এবং $h[0]$ উভয়ের জন্য গ্র্যাডিয়েন্ট প্রোপাগেশন প্রক্রিয়াটি কেটে দিলাম যাতে করে গ্র্যাডিয়েন্ট গুলো অসম্পূর্ণভাবে প্রোপাগেট করবে না (.detach () in Pytorch) । পুরো প্রক্রিয়াটি নীচের চিত্রে দেখানো হয়েছে। +
+
+ +চিত্র ১৯ঃ ব্যাচ-ইফিকেশন +
+ + +## Vanishing and Exploding Gradient +###ভ্যানিশিং এবং এক্সপ্লোডিং গ্র্যাডিয়েন্ট + + +### Problem +### সমস্যা +
+
+ +চিত্র ২০ঃ বিলীয়মান সমস্যা +
+ + +উপরের চিত্রটি একটি সাধারণ আরএনএন আর্কিটেকচার। আরএনএন-এ পূর্ববর্তী পদক্ষেপগুলির উপর রোটেশন করার জন্য, আমরা ম্যাট্রিক্স ব্যবহার করি, যা উপরের মডেলটিতে অনুভূমিক তীর হিসাবে বিবেচিত হতে পারে। যেহেতু ম্যাট্রিকগুলি আউটপুটগুলির আকার পরিবর্তন করতে পারে, নির্বাচিত নির্ধারক যদি 1 এর চেয়ে বড় হয় তবে গ্র্যাডিয়েন্ট সময়ের সাথে সাথে উত্থিত হয় এবং গ্র্যাডিয়েন্ট এক্সপ্লোশন ঘটায়। তুলনামূলকভাবে বলতে গেলে, আমরা যে আইজেন ভ্যালু টি নির্বাচন করি তা যদি 0 এর কাছাকাছি ছোট হয় তবে প্রোপাগেশন প্রক্রিয়াটি গ্র্যাডিয়েন্টগুলি সঙ্কুচিত করবে এবং গ্র্যাডিয়েন্ট বিলুপ্ত হয়ে যাবে। + +সাধারণ আরএনএনগুলিতে, গ্র্যাডিয়েন্টগুলি সমস্ত সম্ভাব্য তীরগুলির মধ্য দিয়ে প্রোপাগেট করা হবে, যা গ্র্যাডিয়েন্টগুলি বিলুপ্ত বা এক্সপ্লোশনের একটি বৃহৎ সুযোগ তৈরি করে। উদাহরণস্বরূপ, সময় ধাপ ১-এর গ্র্যাডিয়েন্টটি বড়, যা উজ্জ্বল রঙ দ্বারা নির্দেশিত। যখন এটি একটি আবর্তনের মধ্য দিয়ে যায়, গ্র্যাডিয়েন্টটি অনেকগুলি সঙ্কুচিত হয় এবং সময়-৩ এ এটি শেষ হয়। + +### Solution +### সমাধান + +গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হওয়া বা বিলীন হওয়া থেকে রক্ষা করার জন্য একটি আদর্শ হল সংযোগগুলি এড়িয়ে যাওয়া (স্কিপ কানেকশন)। এটি পূরণ করতে, একাধিক নেটওয়ার্ক ব্যবহার করা যেতে পারে। +
+
+ +চিত্র ২১ঃ স্কিপ কানেকশন +
+ + +উপরের ক্ষেত্রে, আমরা মূল নেটওয়ার্কটি ৪টি নেটওয়ার্কে বিভক্ত করি। উদাহরণস্বরূপ প্রথম নেটওয়ার্ক নিন। এটি সময় ধাপ ১-এ ইনপুট থেকে একটি মান গ্রহণ করে এবং আউটপুটটিকে হিডেন লেয়ারের প্রথম মধ্যবর্তী স্টেটে প্রেরণ করে। স্টেটটিতে আরও ৩টি নেটওয়ার্ক রয়েছে যেখানে $\circ$s\গ্র্যাডিয়েন্ট গুলোকে কাজ করার সুযোগ দেয় যখন $-$s প্রোপাগেশনে বাধা দেয় । যেমন একটি কৌশলকে গেটেড রিকারেন্ট নেটওয়ার্ক বলা হয়। + +এলএসটিএম হল একটি প্রচলিত গেটেড আরএনএন এবং নিম্নলিখিত বিভাগে বিস্তারিতভাবে চালু করা হয়েছে। + +## [Long Short-Term Memory](https://www.youtube.com/watch?v=8cAffg2jaT0&t=1838s) +## লং শর্ট-টার্ম মেমরি +### Model Architecture +### মডেল আর্কিটেকচার + + +নীচে একটি এলএসটিএম প্রকাশের সমীকরণ রয়েছে। ইনপুট গেটটি হলুদ বাক্স দ্বারা হাইলাইট করা হয়েছে, এটি একটি অ্যাফাইন ট্রান্সফর্মেশন হবে। এই ইনপুট রূপান্তরটি গুণমান হবে $c[t]$, যা আমাদের প্রার্থী গেট। +
+
+ +চিত্র ২২ঃ এলএসটিএম আর্কিটেকচার +
+ + +ডোন্ট ফরগেট গেটটি সেল মেমরির আগের মানটি $c[t-1]$ গুণ করে চলেছে। $c[t]$ সেলের মোট মান হচ্ছে ইনপুট গেট এবং ডোন্ট ফরগেট গেটের সমষ্টি। চূড়ান্ত হিডেন উপস্থাপনা হল আউটপুট গেট $o[t]$ এবং $c[t]$ সেলের হাইপারবোলিক ট্যানজেন্ট সংস্করণ এর মধ্যে উপাদান অনুসারে গুণ,যাতে করে জিনিসগুলি আবদ্ধ থাকে । পরিশেষে, প্রার্থীর গেট $\tilde{c}[t]$ কেবল একটি রিকারেন্ট নেট। সুতরাং আমাদের কাছে আউটপুট নিয়ন্ত্রণ করার জন্য একটি $o[t]$ আছে , ডোন্ট ফরগেট গেটটি নিয়ন্ত্রণের জন্য একটি $f[t]$ এবং ইনপুট গেটটি নিয়ন্ত্রণের জন্য একটি $i[t]$ রয়েছে। মেমরি এবং গেটগুলির মধ্যে এই সমস্ত কার্যকলাপ হল গুণ মূলক কার্যপ্রণালী । $i[t]$, $f[t]$ এবং $o[t]$ সবগুলো হল সিগময়েড, ০ থেকে ১-এ চলেছে। অতএব, শূন্য দ্বারা গুণ করলে, আপনার একটি ক্লোজড গেট থাকে। যখন এক দ্বারা গুণ করা হচ্ছে , আপনার একটি ওপেন গেট আছে। + +কিভাবে আমরা আউটপুট বন্ধ করব? ধরা যাক আমাদের বেগুনি রঙের অভ্যন্তরীণ উপস্থাপনা রয়েছে $th$ এবং আউটপুট গেটে একটি শূন্য রেখেছি। তারপরে আউটপুট শূন্য হবে কোন কিছুর দ্বারা গুণ করলে এবং আমরা একটি শূন্য পাই। যদি আমরা একটি আউটপুট গেটে রাখি তবে আমরা বেগুনি উপস্থাপনার সমান মান পাব। +
+
+ +চিত্র ২৩ঃ এলএসটিএম আর্কিটেকচার - আউটপুট অন +
+ +
+
+ +চিত্র ২৪ঃ এলএসটিএম আর্কিটেকচার - আউটপুট অফ +
+ + +একইভাবে, আমরা মেমরি নিয়ন্ত্রণ করতে পারি। উদাহরণস্বরূপ, আমরা $ f[t] $ এবং $i [t]$ জিরো থাকার মাধ্যমে এটি পুনরায় সেট করতে পারি। গুণ এবং যোগের পরে, আমাদের মেমরির ভিতরে একটি শূন্য রয়েছে। অন্যথায়, আমরা এখনও অভ্যন্তরীণ উপস্থাপনা $th$-কে শূন্য করে মেমরিটি রাখতে পারি তবে $f[t]$ এ রাখতে পারি একটি ১ রেখে। সুতরাং, যোগফলটি $c[t-1]$ পায় এবং এটি প্রেরণ করেই চলে। অবশেষে, আমরা এমনটি লিখতে পারি যে আমরা ইনপুট গেটে একটি ১ পেতে পারি, গুণটি বেগুনি হয়ে যায়, তারপর ডোন্ট ফরগেট গেটে একটি শূন্য সেট করুন যাতে এটি আসলে ভুলে যায়। +
+
+ +চিত্র ২৫ঃ মেমরি সেল দৃশ্যায়ন +
+ +
+
+ +চিত্র ২৬ঃ এলএসটিএম আর্কিটেকচার - রিসেট মেমরি +
+ +
+
+ +চিত্র ২৭ঃ এলএসটিএম আর্কিটেকচার - কিপ মেমরি +
+ +
+
+ +চিত্র ২৮ঃ এলএসটিএম আর্কিটেকচার - রাইট মেমরি +
+ + +## Notebook Examples +## নোটবুকের উদাহরণ সমূহ + + +### Sequence Classification +### সিকোয়েন্স শ্রেণিবিন্যাস + + +লক্ষ্যটি হচ্ছে ক্রম শ্রেণিবদ্ধ করা। উপাদান এবং লক্ষ্যগুলি স্থানীয়ভাবে প্রতিনিধিত্ব করা হয় (কেবলমাত্র একটি শূন্য বিটযুক্ত ইনপুট ভেক্টর)। ক্রমটি শুরু হয় একটি `B` দিয়ে , শেষ হয় একটি `E` দিয়ে ("ট্রিগার প্রতীক") এবং অন্যথায় সেট `{a, b, c, d}` থেকে এলোমেলোভাবে নির্বাচিত প্রতীকগুলি নিয়ে গঠিত হয় শুধুমাত্র $t_1 $ এবং $ t_2 $ পজিশনে দুটি উপাদান ছাড়া যা হয় `X` বা `Y` । ডিফিকাল্টি লেভেল.হার্ড ` এর ক্ষেত্রে , অনুক্রমের দৈর্ঘ্যটি এলোমেলোভাবে 100 এবং 110 এর মধ্যে বেছে নেওয়া হয়েছে, $ t_1$ এলোমেলোভাবে 10 এবং 20 এর মধ্যে এবং $ t_2 $ এলোমেলোভাবে 50 এবং 60 এর মধ্যে নির্বাচিত হয় ৪টি ক্রম শ্রেণি রয়েছে `Q`, `R`, `S`, এবং `U` যা `X` এবং` Y` এর অস্থায়ী আদেশের উপর নির্ভর করে ।বিধিগুলি হ'ল: `X, X -> Q`; `X, Y -> R`; `Y, X -> S`; `Y, Y -> U`। + +ডেটা জেনারেটর থেকে রিটার্ন টাইপটি দৈর্ঘ্য ২ এর একটি টাপল। টাপলটির প্রথম আইটেম হচ্ছে $(32,9,8)$ আকারের একাধিক ক্রমের একটি ব্যাচ । এই ডেটাটি নেটওয়ার্কে ব্যবহার করা হবে। প্রতিটি সারিতে আটটি পৃথক চিহ্ন রয়েছে (`X`,` Y`, `a`,` b`, `c`,` d`, `B`,` E`)। প্রতিটি সারি একটি ওয়ান-হট ভেক্টর। সারিগুলির একটি ক্রম প্রতীকগুলির ক্রমকে উপস্থাপন করে। প্রথম সমস্ত -শূন্য সারিটি প্যাডিং। যখন সিকোয়েন্সের দৈর্ঘ্য ব্যাচের সর্বোচ্চ দৈর্ঘ্যের চেয়ে কম হয় আমরা প্যাডিং ব্যবহার করি। টাপলে থাকা দ্বিতীয় আইটেমটি হল $(32, 4)$ আকৃতির শ্রেণি লেবেলের সাথে সম্পর্কিত ব্যাচ , যেহেতু আমাদের ৪টি শ্রেণি (`Q`, `R`, `S`, এবং `U`) রয়েছে । প্রথম অনুক্রমটি হল: `BbXcXcbE` । তারপরে এর ডিকোডেড শ্রেণীর লেবেলটি হল $[1, 0, 0, 0 ]$ , যা ` Q` এর সাথে সম্পর্কিত। + +
+
+ +চিত্র ২৯ঃ ইনপুট ভেক্টর উদাহরণ +
+ + + +একটি সাধারণ রিকারেন্ট নেটওয়ার্ক তৈরি করুন, একটি এলএসটিএম, এবং ১০ ইপোকের জন্য প্রশিক্ষণ দিন। ট্রেইনিং লুপে আমাদের সর্বদা পাঁচটি ধাপ সন্ধান করা উচিত: + + * মডেলের ফরোয়ার্ড পাস সম্পাদন করুন + + * লস গণনা করুন + + * গ্র্যাডিয়েন্ট ক্যাশ শূন্য করুন + + * প্যারামিটারগুলির সাথে ক্ষতির আংশিক ডেরাইভেটিভ গণনা করার জন্য ব্যাকপ্রোপাগেট করুন + + * গ্র্যাডিয়েন্টের বিপরীত দিকে পদক্ষেপ + +
+
+ +চিত্র ৩০ঃ সাধারণ আরএনএন বনাম এলএসটিএম - ১০ ইপোক +
+ + +তুলনামূলক সহজ স্তরের কাঠিন্য মোকাবেলায়, আরএনএন ৫০% নির্ভুলতা পায় যখন এলএসটিএম ১০০% সঠিক ফলাফল পায় ১০ ইপোকের পরে । তবে এলএসটিএমের আরএনএন এর চেয়ে চারগুণ বেশি ওয়েটরয়েছে এবং এর দুটি হিডেন লেয়ার রয়েছে, সুতরাং এটি একটি উপযুক্ত তুলনা নয়। ১০০ ইপোকের পরে, আরএনএনও ১০০% নির্ভুলতা পায়, এলএসটিএম এর চেয়ে বেশি ট্রেইনিং নিতে সময় নেয়। +
+
+ +চিত্র ৩১ঃ সাধারণ আরএনএন বনাম এলএসটিএম - ১০০ ইপোক +
+ + +যদি আমরা ট্রেইনিং এর অংশটির (দীর্ঘতর ক্রম ব্যবহার করে) কাঠিন্য বাড়িয়ে তুলি তবে আমরা দেখতে পাব যে এলএসটিএম কাজ চালিয়ে যাচ্ছে যখন আরএনএন ব্যর্থ হবে। +
+
+ +চিত্র ৩২ঃ হিডেন স্টেটের মানের দৃশ্যায়ন +
+ + +উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X` (চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্যটি` X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় ` সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X` পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। + +### Signal Echoing +### সিগন্যাল প্রতিধ্বনি + +সিগন্যাল এন-স্টেপগুলি প্রতিধ্বনিত করা বহু-বহু-সংখ্যক কাজের সামঞ্জস্য বিধান করার একটি উদাহরণ। উদাহরণস্বরূপ, প্রথম ইনপুট ক্রমটি হ'ল "1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 ..."`, এবং প্রথম লক্ষ্য ক্রমটি `"0 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 ... "`। এই ক্ষেত্রে, আউটপুট তিন ধাপ পরে হয়। সুতরাং আমাদের তথ্য রাখতে প্রয়োজন একটি স্বল্প সময়ের সক্রিয় মেমরি। ভাষা মডেলটিতে, এটি এমন কিছু বলে যা ইতিমধ্যে বলা হয়নি। + + +আমরা পুরো ক্রমটি নেটওয়ার্কে প্রেরণ করার আগে এবং চূড়ান্ত লক্ষ্যটিকে কিছু হতে বাধ্য করার আগে, আমাদের দীর্ঘ ক্রমটি সামান্য খণ্ডে কাটাতে হবে। নতুন খণ্ডকে ব্যবহার করার সময়, আমাদের পরবর্তী গোটা অংশটি যুক্ত করার সময় হিডেন স্টেটের উপর নজর রাখতে হবে এবং এটি অভ্যন্তরীণ অবস্থায় ইনপুট হিসাবে প্রেরণ করতে হবে। এলএসটিএম-এ আপনি যতক্ষণ আপনার পর্যাপ্ত ধারণক্ষমতা রাখেন ততক্ষণ মেমরি দীর্ঘকাল ধরে রাখতে পারেন। আরএনএন-এ, আপনি একটি নির্দিষ্ট দৈর্ঘ্যে পৌঁছানোর পরে, অতীতে কী ঘটেছিল তা ভুলে যেতে শুরু করে। + From b9a9078921bac50b3147af526994739e9ec7e69f Mon Sep 17 00:00:00 2001 From: Mahbuba Tasmin Date: Thu, 11 Mar 2021 06:57:47 +0600 Subject: [PATCH 08/35] week 6 lecture-3 completed --- docs/bn/week06/06-3.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index ea476bb13..8a2fd7eaa 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -4,6 +4,9 @@ title: Architecture of RNN and LSTM Model lecturer: Alfredo Canziani authors: Zhengyuan Ding, Biao Huang, Lin Jiang, Nhung Le date: 3 Mar 2020 +lang:bn +translation-date:11 Mar 2021 +translator: Mahbuba Tasmin --- From b3f6249940e648a7c9f7cf7d157745f9eb7a54c0 Mon Sep 17 00:00:00 2001 From: Alfredo Canziani Date: Tue, 29 Jun 2021 21:25:14 -0400 Subject: [PATCH 09/35] Restore 06-convnet.ipynb --- 06-convnet.ipynb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/06-convnet.ipynb b/06-convnet.ipynb index 292b9b2d3..99ddb18de 100644 --- a/06-convnet.ipynb +++ b/06-convnet.ipynb @@ -436,9 +436,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [conda env:dl-minicourse] *", "language": "python", - "name": "python3" + "name": "conda-env-dl-minicourse-py" }, "language_info": { "codemirror_mode": { @@ -450,7 +450,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.9" + "version": "3.7.3" } }, "nbformat": 4, From 3e69dcc91485302dee9c2fc4eb7746b6bd2da30a Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Wed, 30 Jun 2021 12:08:55 +0600 Subject: [PATCH 10/35] pull764 requested changes updated --- docs/bn/week06/06-1.md | 52 ++++++++++++++++++++++-------------------- docs/bn/week06/06-2.md | 7 +++--- docs/bn/week06/06-3.md | 1 + docs/bn/week06/06.md | 20 ++++++++++------ 4 files changed, 45 insertions(+), 35 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 0f9632463..7f69bdb9a 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -2,6 +2,7 @@ lang-ref: ch.06-1 lecturer: Yann LeCun title: Applications of Convolutional Network +শিরোনামঃ কনভলিউশনাল নেটওয়ার্কের বিভিন্ন প্রয়োগ authors: Shiqing Li, Chenqin Yang, Yakun Wang, Jimin Tan date: 2 Mar 2020 lang:bn @@ -10,6 +11,7 @@ translator:Mahbuba Tasmin --- + ## [Zip Code Recognition](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=43s) @@ -28,8 +30,10 @@ translator:Mahbuba Tasmin

Figure 1: Multiple classifiers on zip code recognition +চিত্র ১ঃ জিপ কোড সনাক্তকরণে প্রয়োগকৃত একাধিক ক্লাসিফায়ার
+ @@ -51,38 +55,40 @@ translator:Mahbuba Tasmin -##বিভিন্ন আকারের মুখাবয়বঃ সকল মুখের ছবি ৩০x৩০ পিক্সেলস হতে নাও পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু মাপের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি ৩০x৩০ পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক \sqrt 2 গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে ৩০x৩০ পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক ২০x20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি \sqrt 2 গুণক পরিমাণ ছোট করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। তাহলে সর্বমোট খরচ দাঁড়ায় ১+১/২+১/৪+১/৮+১/১৬... , ২। একটি বহু সংস্করণের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। +##বিভিন্ন আকারের মুখাবয়বঃ সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। + তাহলে সর্বমোট খরচ দাঁড়ায় $1+1/2+1/4+1/8+1/16…$, যা কিনা ২। একটি বহু স্কেলের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। ### A multi-scale face detection system - +##একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি

Figure 2: Face detection system +চিত্র ২ঃ মুখাবয়ব চিহ্নিতকরণ (ফেস ডিটেকশন) পদ্ধতি
-##বহু-সংস্করণ সংযুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি - -৩ নং চিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি ২০x২০ পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি। + + ৩ নং চিত্রে প্রদর্শিত মানচিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি ২০x২০ পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি।

Figure 3: Face detector scores for various scaling factors +চিত্র ৩ঃ বিভিন্ন স্কেলিং গুণিতকের জন্য ফেস ডিটেক্টরের ফলাফল
### Non-maximum suppression - - ##নন-ম্যাক্সিমাম সাপ্রেশন + + প্রতিটি সর্বোচ্চ ফলাফলের ক্ষেত্রের জন্য আশা করা যায় যে সেখানে একটি মুখ আছে সম্ভবত। যদি একাধিক মুখাবয়ব প্রথম চিহ্নিত মুখের খুব কাছের অংশে পাওয়া যায়, এর মানে দাঁড়ায় যে কেবল মাত্র একটি চিহ্নিত অংশ সঠিকভাবে গণ্য করতে হবে এবং বাকি গুলো ভুল চিহ্নিতকরণের ফলাফল। নন-ম্যাক্সিমাম সাপ্রেশন দিয়ে আমরা অধিক্রমিত বাউন্ডিং বক্সের সর্বোচ্চ ফলাফল গ্রহণ করি এবং বাকি গুলো অপসারণ করি। চূড়ান্ত ফলাফল হবে সর্বাপেক্ষা অনুকূল স্থানে অবস্থিত একটি একক বাউন্ডিং বক্স। ### Negative mining - - ##নেগেটিভ মাইনিং + + শেষ অনুচ্ছেদে আমরা আলোচনা করেছি যে কিভাবে টেস্টিং পিরিয়ডে মডেল অধিক সংখ্যক ফলস পজিটিভস নিরীক্ষার মুখোমুখি হতে পারে, যেহেতু নন-ফেস অবজেক্টের বিভিন্ন প্রকারে মুখাবয়বের সাথে সাদৃশ্য থাকতে পারে। কোন ট্রেইনিং সেট সব রকম সম্ভাবনার নন-ফেস অবজেক্ট অন্তর্ভুক্ত করবেনা যেগুলো দেখতে চেহারার মত। আমরা এই সমস্যা নিরসনে নেগেটিভ মাইনিং ব্যবহার করতে পারি। নেগেটিভ মাইনিং প্রক্রিয়াতে, আমরা নন-ফেস ক্ষুদ্র অংশ গুলোর দ্বারা একটি নেগেটিভ ডেটাসেট প্রস্তুত করি, যেগুলো মডেল ভুলক্রমে মুখাবয়ব হিসেবে চিহ্নিত করেছে। মডেলটিকে এমন সব জ্ঞাত ইনপুটের উপর চালানো হয়েছে যেগুলোতে জ্ঞাতসারে নন-ফেস অংশ আছে এবং ডেটা সংগ্রহে এই পদ্ধতি গ্রহণ করা হয়েছে। এরপর ডিটেক্টরটি পুনরায় ট্রেইন করা হয়েছে নেগেটিভ ডেটাসেট ব্যবহার করে। আমরা এই পদ্ধতি পুনরাবৃত্তি করতে পারি, যাতে করে ফলস পজিটিভের বিপরীতে মডেলের সঠিক নির্ধারণ ক্ষমতা বৃদ্ধি পায়। @@ -92,7 +98,7 @@ translator:Mahbuba Tasmin সেমান্টিক সেগমেন্টেশন একটি ইনপুট চিত্রের প্রতিটি পিক্সেলে ভিন্ন ভিন্ন শ্রেণী নির্দিষ্ট করে দেয় । ### [CNN for Long Range Adaptive Robot Vision](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) -দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশন +দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN এই প্রজেক্টের উদ্দেশ্য ছিল ইনপুট চিত্রের থেকে বিশেষ অংশ গুলো লেবেল করে দেয়া, যাতে করে একটি রোবট রাস্তা এবং প্রতিবন্ধক আলাদা করে চিনতে পারে। নিচের চিত্রে, সবুজ অংশ গুলোতে রোবটটি গাড়ি চালাতে পারবে, এবং লাল অংশের মধ্যে আছে লম্বা ঘাসের ন্যায় প্রতিবন্ধক। এই করণীয় কাজের উদ্দেশ্যে নেটওয়ার্ক ট্রেইন করার জন্য আমরা ইনপুট চিত্রের একটি অংশকে গাড়ি চালনার উপযুক্ত কিনা (সবুজ কিংবা লাল) হাতে করে লেবেল করে দিয়েছি। এরপর আমরা কনভলিউশনাল নেটওয়ার্ক লেবেল করা চিত্রের ওপর ট্রেইন করি এবং নেটওয়ার্কটিকে চিত্রের লেবেল করা অংশের রঙ অনুমান করতে বলি। @@ -100,6 +106,7 @@ translator:Mahbuba Tasmin

Figure 4: CNN for Long Range Adaptive Robot Vision (DARPA LAGR program 2005-2008) +চিত্র ৪ঃদীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN (DARPA LAGR প্রোগ্রাম ২০০৫-২০০৮)
@@ -118,6 +125,7 @@ translator:Mahbuba Tasmin

Figure 5: Scale-invariant Pyramid of Distance-normalized Images +চিত্র ৫ঃ দূরত্ব-স্বাভাবিককরণের চিত্রের জন্য স্কেল-ইনভেরিয়েন্ট পিরামিড
@@ -125,54 +133,48 @@ translator:Mahbuba Tasmin - - **মডেল আউটপুট **(চিত্র ৪ , কলাম 3) -মডেলটি **দিগন্ত পর্যন্ত**s চিত্রটিতে প্রতিটি পিক্সেলের জন্য একটি লেবেল আউটপুট দেয়। এগুলি একটি বহু-স্কেল কনভ্যুশনাল নেটওয়ার্কের শ্রেণিবদ্ধ আউটপুট। + +মডেলটি **দিগন্ত পর্যন্ত**s চিত্রটিতে প্রতিটি পিক্সেলের জন্য একটি লেবেল আউটপুট দেয়। এগুলি একটি একাধিক-স্কেলের কনভলিউশনাল নেটওয়ার্কের শ্রেণিবদ্ধ আউটপুট। * **মডেল কীভাবে অভিযোজিত হয়ে ওঠে**: রোবটগুলির স্টেরিও লেবেলগুলিতে অবিচ্ছিন্ন অ্যাক্সেস রয়েছে যা নেটওয়ার্কটিকে পুনরায় প্রশিক্ষণের অনুমতি দেয় এবং এটির মধ্যে নতুন পরিবেশের সাথে খাপ খায়। দয়া করে নোট করুন যে কেবলমাত্র নেটওয়ার্কের শেষ স্তরটিকে পুনরায় প্রশিক্ষণ দেওয়া হবে। পূর্ববর্তী স্তরগুলি ল্যাবে প্রশিক্ষিত এবং স্থায়ী হয়। - - - **সিস্টেমের কর্মক্ষমতা** + কোনো প্রতিবন্ধকের অন্যপাশে কোনো জিপিএস সমন্বয় পাওয়ার চেষ্টা করার সময়, রোবটটি বেশ দূর থেকে প্রতিবন্ধকটি "দেখেছিল " এবং এটি এড়ানোর জন্য একটি রুটের পরিকল্পনা করেছিল। এটি করার উপায় করে দিয়েছে ৫০-১০০ মিটার দূরে সিএনএন দ্বারা অবজেক্ট সনাক্তকরণ প্রক্রিয়া । - - - **সীমাবদ্ধতা** + ২০০০ এর দশকে, গণনার সংস্থানগুলি সীমাবদ্ধ ছিল। রোবট প্রতি সেকেন্ডে প্রায় 1 ফ্রেম প্রক্রিয়া করতে সক্ষম হয়েছিল, যার অর্থ এটি প্রতিক্রিয়া জানাতে সক্ষম হওয়ার আগে পুরো এক সেকেন্ডের জন্য কোনও ব্যক্তিকে সনাক্ত করতে সক্ষম হবে না যিনি পুরো দ্বিতীয় সেকেন্ডে রোবটের পথে চলেছেন । এই সীমাবদ্ধতার সমাধান হল **কম দামের ভিজ্যুয়াল ওডোমেট্রি মডেল**। এটি নিউরাল নেটওয়ার্কগুলির উপর ভিত্তি করে নয়, ~ 2.5 m এর দর্শন রয়েছে তবে দ্রুত প্রতিক্রিয়া দেখায়। ### Scene Parsing and Labelling - - - ##দৃশ্য বিশ্লেষণ এবং লেবেলিং + এই কার্যক্রমে, মডেলটি প্রতিটি পিক্সেলের জন্য একটি বস্তুর বিভাগ (বিল্ডিং, গাড়ি, আকাশ, ইত্যাদি) আউটপুট দেয়। মডেলের কাঠামোটি বহু-স্কেল মাত্রায় গঠিত (চিত্র 6)।

Figure 6: Multi-scale CNN for scene parsing +চিত্র ৬ঃ বহু-স্কেল CNN দ্বারা দৃশ্য বিশ্লেষণ
লক্ষ্য করুন যে আমরা যদি সিএনএন-এর একটি আউটপুট ইনপুটটিতে প্রজেক্ট করি তবে এটি ল্যাপ্লাসিয়ান পিরামিডের নিচে মূল চিত্রের 46x46 আকারের একটি ইনপুট উইন্ডোটির সাথে মিল প্রদর্শন করে । এর অর্থ আমরা **কেন্দ্রীয় পিক্সেলের বিভাগ নির্ধারণ করতে 46 × 46 পিক্সেলের প্রসঙ্গটি ব্যবহার করছি**। - +তবে, কখনও কখনও বৃহত্তর অবজেক্টের জন্য বিভাগ নির্ধারণের জন্য এই প্রসঙ্গের আকারটি যথেষ্ট নয়। **মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে**। নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় ঃ -1. Take the same image, reduce it by the factor of 2 and a factor of 4, separately. + 3. **Upsample** these features so that they have the same size as the Level 2 Features of the original image. -4. **Stack** the three sets of (upsampled) features together and feed them to a classifier. +4. **Stack** the three sets of (upsampled) features together and feed them to a classifier.--> ১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। ২ . এই দুটি অতিরিক্ত পুনরুদ্ধার করা চিত্র **একই কনভনেট**(একই ওজন, একই কার্নেল) যোগান দেয়া হয় এবং আমরা স্তর-২ বৈশিষ্ট্যের আরও দুটি সেট পাই। diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index ab670734d..b4ebfa026 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -2,6 +2,7 @@ lang-ref: ch.06-2 lecturer: Yann LeCun title: RNNs, GRUs, LSTMs, Attention, Seq2Seq, and Memory Networks +শিরোনামঃ RNNs, GRUs, LSTMs, Attention, Seq2Seq, এবং Memory Networks authors: Jiayao Liu, Jialing Xu, Zhengyang Bian, Christina Dominguez date: 2 March 2020 lang:bn @@ -11,18 +12,18 @@ translator: Mahbuba Tasmin ## [Deep Learning Architectures](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) -##ডিপ লার্নিং আর্কিটেকচার +##[ডিপ লার্নিং আর্কিটেকচার] (https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) ডিপ লার্নিং এর আওতায় , বিভিন্ন কার্যকারিতা উপলব্ধি করার জন্য বিভিন্ন মডিউল রয়েছে। ডিপ লার্নিং এর দক্ষতার মধ্যে নির্দিষ্ট কাজগুলি সম্পন্ন করার জন্য আর্কিটেকচার ডিজাইন করা জড়িত। আগের দিনগুলিতে কম্পিউটারকে নির্দেশনা দেওয়ার জন্য অ্যালগরিদমের সাথে প্রোগ্রাম লেখার অনুরূপ, ডিপ লার্নিং একটি জটিল ক্রিয়াকে ফাংশনাল মডিউলগুলির (সম্ভবত গতিশীল) একটি গ্রাফের মধ্যে হ্রাস করে, যার ক্রিয়াগুলি মডেলের শেখার মাধ্যমে চূড়ান্ত হয়। -কনভলিউশনাল নেটওয়ার্কগুলির সাথে আমরা যা দেখেছি, তার মতো নেটওয়ার্ক আর্কিটেকচার গুরুত্বপূর্ণ +কনভলিউশনাল নেটওয়ার্কগুলির সাথে আমরা যা দেখেছি, তার মতো নেটওয়ার্ক আর্কিটেকচার গুরুত্বপূর্ণ। ## Recurrent Networks ##রিকারেন্ট নেটওয়ার্ক সমূহ কনভলিউশনাল নিউরাল নেটওয়ার্কে মডিউলগুলির মধ্যে গ্রাফ বা আন্তঃসংযোগগুলির লুপগুলি থাকতে পারে না। মডিউলগুলির মধ্যে কমপক্ষে একটি আংশিক ক্রম বিদ্যমান রয়েছে যেমন আমরা আউটপুটগুলো গণনা করলে ইনপুটগুলি পাওয়া যায়। -চিত্র ১ -তে দেখানো হয়েছে, রিকারেন্ট নিউরাল নেটওয়ার্কগুলিতে লুপ রয়েছে। +চিত্র ১ -এ দেখানো হয়েছে, রিকারেন্ট নিউরাল নেটওয়ার্কগুলিতে লুপ রয়েছে।

+## Lecture part A ##লেকচার পার্ট A -আমরা কনভলিউশনাল নিউরাল নেটওয়ার্কের তিনটি প্রয়োগ পদ্ধতি আলোচনা করেছি। অঙ্ক সনাক্তকরণ এবং পাঁচ অঙ্কের জিপ কোড সনাক্তকরণ দিয়ে শুরু করেছি । অবজেক্ট ডিটেকশনে আমরা আলোচনা করেছি কিভাবে মুখাবয়ব সনাক্তকরণে বহু-সংস্করণ সংযুক্ত কাঠামো ব্যবহার করা যায়। লেকচারটি শেষ হয়েছে কিভাবে কনভলিউশনাল নেট সেমান্টিক সেগমেন্টেশনে ব্যবহৃত হয়,রোবটিক ভিশন সিস্টেমের সাথে সম্পর্কিত এবং শহুরে পরিবেশে অবজেক্ট সেগমেন্টেশনের বাস্তব উদাহরণ দেখানো হয়েছে + +আমরা কনভলিউশনাল নিউরাল নেটওয়ার্কের তিনটি প্রয়োগ পদ্ধতি আলোচনা করেছি। অঙ্ক সনাক্তকরণ এবং পাঁচ অঙ্কের জিপ কোড সনাক্তকরণ দিয়ে শুরু করেছি । অবজেক্ট ডিটেকশনে আমরা আলোচনা করেছি কিভাবে মুখাবয়ব সনাক্তকরণে বহু-স্কেল সংযুক্ত কাঠামো ব্যবহার করা যায়। লেকচারটি শেষ হয়েছে কিভাবে কনভলিউশনাল নেট সেমান্টিক সেগমেন্টেশনে ব্যবহৃত হয়,রোবটিক ভিশন সিস্টেমের সাথে সম্পর্কিত এবং শহুরে পরিবেশে অবজেক্ট সেগমেন্টেশনের বাস্তব উদাহরণ দেখানো হয়েছে ## Lecture part B - - ##লেকচার পার্ট B + এই পর্বে আমরা রিকারেন্ট নিউরাল নেটওয়ার্কস, সম্পর্কিত সমস্যা গুলো এবং সমাধানের সাধারণ কৌশলগুলি অনুসন্ধান করেছি। পরবর্তীতে আমরা কয়েক প্রকারে মডিউল পর্যালোচনা করেছি যেগুলো ব্যবহৃত হয় রিকারেন্ট মডেল সম্পর্কিত সমস্যা গুলো সমাধানে ( এরমধ্যে অন্তর্গত রয়েছে অ্যাটেনশন, জিআরইউ ( গেটেড রিকারেন্ট ইউনিট), এলএসটিএম ( লং শর্ট টার্ম মেমরি) এবং সিকুয়েন্স-টু-সিকুয়েন্স)। ## Practicum - ##ব্যবহারিক পাঠ্যক্রম + ## জিপ কোড সনাক্তকরণ -পূর্ববর্তী লেকচারে আমরা দেখিয়েছি কনভলিউশন নিউরাল নেটওয়ার্ক কিভাবে সংখ্যা সনাক্ত করতে পারে, তবে প্রশ্ন থেকে যায় কিভাবে মডেলটি প্রতিটি সংখ্যাকে আলাদা করে বাছাই করে এবং পার্শ্ববর্তী সংখ্যাগুলোতে বিচ্ছিন্ন ভুল সনাক্তকরণ থেকে বিরত থাকে। পরবর্তী ধাপে লক্ষ্য থাকবে সমাপতিত/অসমাপতিত কিংবা পৃথক অবজেক্ট সনাক্তকরণ এবং নন-ম্যাক্সিমাম সাপ্রেশন (এন এম এস) এর সাধারণ পন্থা ব্যবহার করা। আলোচনার প্রেক্ষাপট অনুযায়ী যেহেতু ইনপুট হচ্ছে একটি পৃথক সংখ্যা সমূহের ধারা, সংগৃহীত কৌশলটি কয়েকটি কনভলিউশনাল নিউরাল নেটওয়ার্ক ট্রেইনিং এবং পরবর্তীতে কনভলিউশনাল নেটওয়ার্ক কর্তৃক সৃষ্ট অধিকাংশ সঠিক সনাক্তকরণ মত কিংবা সর্বোচ্চ সনাক্তকরণ অঙ্ক অনুযায়ী নিরীক্ষণীয় সংখ্যাটি বাছাই করবে। +পূর্ববর্তী লেকচারে আমরা দেখিয়েছি কনভলিউশন নিউরাল নেটওয়ার্ক কিভাবে সংখ্যা সনাক্ত করতে পারে, তবে প্রশ্ন থেকে যায় কিভাবে মডেলটি প্রতিটি সংখ্যাকে আলাদা করে বাছাই করে এবং পার্শ্ববর্তী সংখ্যাগুলোতে বিচ্ছিন্ন ভুল সনাক্তকরণ থেকে বিরত থাকে। পরবর্তী ধাপে লক্ষ্য থাকবে সমাপতিত/অসমাপতিত কিংবা পৃথক অবজেক্ট সনাক্তকরণ এবং নন-ম্যাক্সিমাম সাপ্রেশন (এন এম এস) এর সাধারণ পন্থা ব্যবহার করা। আলোচনার প্রেক্ষাপট অনুযায়ী যেহেতু ইনপুট হচ্ছে একটি পৃথক সংখ্যা সমূহের ধারা, সংগৃহীত কৌশলটি কয়েকটি কনভলিউশনাল নিউরাল নেটওয়ার্ক ট্রেইনিং এবং পরবর্তীতে কনভলিউশনাল নেটওয়ার্ক কর্তৃক সৃষ্ট অধিকাংশ সঠিক সনাক্তকরণ মত কিংবা সর্বোচ্চ সনাক্তকরণ অঙ্ক অনুযায়ী নিরীক্ষণীয় সংখ্যাটি বাছাই করবে। ### Recognition with CNN @@ -25,7 +24,7 @@ translator:Mahbuba Tasmin ## কনভলিউশনাল নিউরাল নেটওয়ার্ক দ্বারা সনাক্তকরণ -এই পর্বে আমরা দেখাব পাঁচটি পৃথক জিপ কোড সনাক্তকরণের কার্যক্রম। আলোচিত পদ্ধতিতে প্রতিটি সংখ্যা আলাদা করে বাছাই করার ব্যাপারে কোন পূর্ববর্তী নির্দেশনা দেয়া হয়নি। এটির লক্ষ্য হচ্ছে পাঁচটি নিরীক্ষণীয় সংখ্যা অবশ্যই নির্ধারণ করা।আলোচ্য কৌশলটি ( চিত্র ১) চারটি বিভিন্ন আকারের কনভলিউশনাল নেটওয়ার্ক দ্বারা গঠিত, প্রতিটি নেটওয়ার্ক থেকে একটি পৃথক আউটপুটের সমষ্টি তৈরি হবে। সংগৃহীত আউটপুট গুলো ম্যাট্রিক্সের মাধ্যমে উপস্থাপিত হয়েছে। বিভিন্ন মডেল থেকে আসা চারটি আউটপুট ম্যাট্রিক্স তৈরি হয়েছে মডেলের শেষ স্তরের বিভিন্ন প্রস্থের কার্নেল থেকে। প্রতিটি আউটপুটে ১০টি সারি রয়েছে, যা ০ থেকে ৯ পর্যন্ত ১০টি শ্রেণীকে উপস্থাপন করছে। প্রতিটি আউটপুট ম্যাট্রিক্সের বৃহত্তর সাদা বর্গটি সম্পর্কিত সংখ্যা শ্রেণীর সর্বোচ্চ অঙ্ক উপস্থাপন করে। এই চারটি আউটপুট সারিতে অবস্থিত কার্নেল সমূহের আনুভূমিক আকৃতি যথাক্রমে ৫,৪,৩ এবং ২ আকারের। কার্নেলের আকৃতির পরিমাপ নির্ধারণ করে ইনপুটের ওপর সংশ্লিষ্ট মডেলের নিরীক্ষণ পরিধির প্রস্থ। পরবর্তীতে মডেলটি উক্ত নিরীক্ষণ পরিধির আওতায় সংখ্যাগরিষ্ঠ ভোটের ভিত্তিতে সর্বোচ্চ ফলাফল অঙ্কের সাথে সংশ্লিষ্ট শ্রেণিটি নির্ধারণ করে। প্রয়োজনীয় তথ্য বের করে আনতে মনে রাখতে হবে যে সব অক্ষরের সংযুক্তি সম্ভবপর নয়। অতএব, ত্রুটি সংশোধন পূর্বক ইনপুটের সীমাবদ্ধতাকে অতিক্রম করে কার্যকর ভাবে নিশ্চিত করে যে আউটপুট গুলো সত্যিকার অর্থে জিপ কোডকে উপস্থাপন করছে। +এই পর্বে আমরা দেখাব পাঁচটি পৃথক জিপ কোড সনাক্তকরণের কার্যক্রম। আলোচিত পদ্ধতিতে প্রতিটি সংখ্যা আলাদা করে বাছাই করার ব্যাপারে কোন পূর্ববর্তী নির্দেশনা দেয়া হয়নি। এটির লক্ষ্য হচ্ছে পাঁচটি নিরীক্ষণীয় সংখ্যা অবশ্যই নির্ধারণ করা।আলোচ্য কৌশলটি ( চিত্র ১) চারটি বিভিন্ন আকারের কনভলিউশনাল নেটওয়ার্ক দ্বারা গঠিত, প্রতিটি নেটওয়ার্ক থেকে একটি পৃথক আউটপুটের সমষ্টি তৈরি হবে। সংগৃহীত আউটপুট গুলো ম্যাট্রিক্সের মাধ্যমে উপস্থাপিত হয়েছে। বিভিন্ন মডেল থেকে আসা চারটি আউটপুট ম্যাট্রিক্স তৈরি হয়েছে মডেলের শেষ স্তরের বিভিন্ন প্রস্থের কার্নেল থেকে। প্রতিটি আউটপুটে ১০টি সারি রয়েছে, যা ০ থেকে ৯ পর্যন্ত ১০টি শ্রেণীকে উপস্থাপন করছে। প্রতিটি আউটপুট ম্যাট্রিক্সের বৃহত্তর সাদা বর্গটি সম্পর্কিত সংখ্যা শ্রেণীর সর্বোচ্চ অঙ্ক উপস্থাপন করে। এই চারটি আউটপুট সারিতে অবস্থিত কার্নেল সমূহের আনুভূমিক আকৃতি যথাক্রমে ৫,৪,৩ এবং ২ আকারের। কার্নেলের আকৃতির পরিমাপ নির্ধারণ করে ইনপুটের ওপর সংশ্লিষ্ট মডেলের নিরীক্ষণ পরিধির প্রস্থ। পরবর্তীতে মডেলটি উক্ত নিরীক্ষণ পরিধির আওতায় সংখ্যাগরিষ্ঠ ভোটের ভিত্তিতে সর্বোচ্চ ফলাফল অঙ্কের সাথে সংশ্লিষ্ট শ্রেণিটি নির্ধারণ করে। প্রয়োজনীয় তথ্য বের করে আনতে মনে রাখতে হবে যে সব অক্ষরের সংযুক্তি সম্ভবপর নয়। অতএব, ত্রুটি সংশোধন পূর্বক ইনপুটের সীমাবদ্ধতাকে অতিক্রম করে কার্যকর ভাবে নিশ্চিত করে যে আউটপুট গুলো সত্যিকার অর্থে জিপ কোডকে উপস্থাপন করছে।

@@ -36,8 +35,8 @@ translator:Mahbuba Tasmin - -অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত। + +অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত। ## [Face detection](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) @@ -68,7 +67,7 @@ translator:Mahbuba Tasmin - ৩ নং চিত্রে প্রদর্শিত মানচিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি ২০x২০ পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি। + ৩ নং চিত্রে প্রদর্শিত মানচিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি ২০x২০ পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি।
@@ -89,19 +88,19 @@ translator:Mahbuba Tasmin ##নেগেটিভ মাইনিং -শেষ অনুচ্ছেদে আমরা আলোচনা করেছি যে কিভাবে টেস্টিং পিরিয়ডে মডেল অধিক সংখ্যক ফলস পজিটিভস নিরীক্ষার মুখোমুখি হতে পারে, যেহেতু নন-ফেস অবজেক্টের বিভিন্ন প্রকারে মুখাবয়বের সাথে সাদৃশ্য থাকতে পারে। কোন ট্রেইনিং সেট সব রকম সম্ভাবনার নন-ফেস অবজেক্ট অন্তর্ভুক্ত করবেনা যেগুলো দেখতে চেহারার মত। আমরা এই সমস্যা নিরসনে নেগেটিভ মাইনিং ব্যবহার করতে পারি। নেগেটিভ মাইনিং প্রক্রিয়াতে, আমরা নন-ফেস ক্ষুদ্র অংশ গুলোর দ্বারা একটি নেগেটিভ ডেটাসেট প্রস্তুত করি, যেগুলো মডেল ভুলক্রমে মুখাবয়ব হিসেবে চিহ্নিত করেছে। মডেলটিকে এমন সব জ্ঞাত ইনপুটের উপর চালানো হয়েছে যেগুলোতে জ্ঞাতসারে নন-ফেস অংশ আছে এবং ডেটা সংগ্রহে এই পদ্ধতি গ্রহণ করা হয়েছে। এরপর ডিটেক্টরটি পুনরায় ট্রেইন করা হয়েছে নেগেটিভ ডেটাসেট ব্যবহার করে। আমরা এই পদ্ধতি পুনরাবৃত্তি করতে পারি, যাতে করে ফলস পজিটিভের বিপরীতে মডেলের সঠিক নির্ধারণ ক্ষমতা বৃদ্ধি পায়। +শেষ অনুচ্ছেদে আমরা আলোচনা করেছি যে কিভাবে টেস্টিং পিরিয়ডে মডেল অধিক সংখ্যক ফলস পজিটিভস নিরীক্ষার মুখোমুখি হতে পারে, যেহেতু নন-ফেস অবজেক্টের বিভিন্ন প্রকারে মুখাবয়বের সাথে সাদৃশ্য থাকতে পারে। কোন ট্রেইনিং সেট সব রকম সম্ভাবনার নন-ফেস অবজেক্ট অন্তর্ভুক্ত করবেনা যেগুলো দেখতে চেহারার মত। আমরা এই সমস্যা নিরসনে নেগেটিভ মাইনিং ব্যবহার করতে পারি। নেগেটিভ মাইনিং প্রক্রিয়াতে, আমরা নন-ফেস ক্ষুদ্র অংশ গুলোর দ্বারা একটি নেগেটিভ ডেটাসেট প্রস্তুত করি, যেগুলো মডেল ভুলক্রমে মুখাবয়ব হিসেবে চিহ্নিত করেছে। মডেলটিকে এমন সব জ্ঞাত ইনপুটের উপর চালানো হয়েছে যেগুলোতে জ্ঞাতসারে নন-ফেস অংশ আছে এবং ডেটা সংগ্রহে এই পদ্ধতি গ্রহণ করা হয়েছে। এরপর ডিটেক্টরটি পুনরায় ট্রেইন করা হয়েছে নেগেটিভ ডেটাসেট ব্যবহার করে। আমরা এই পদ্ধতি পুনরাবৃত্তি করতে পারি, যাতে করে ফলস পজিটিভের বিপরীতে মডেলের সঠিক নির্ধারণ ক্ষমতা বৃদ্ধি পায়। ## Semantic segmentation - সেমান্টিক সেগমেন্টেশন একটি ইনপুট চিত্রের প্রতিটি পিক্সেলে ভিন্ন ভিন্ন শ্রেণী নির্দিষ্ট করে দেয় । + সেমান্টিক সেগমেন্টেশন একটি ইনপুট চিত্রের প্রতিটি পিক্সেলে ভিন্ন ভিন্ন শ্রেণী নির্দিষ্ট করে দেয় । ### [CNN for Long Range Adaptive Robot Vision](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN -এই প্রজেক্টের উদ্দেশ্য ছিল ইনপুট চিত্রের থেকে বিশেষ অংশ গুলো লেবেল করে দেয়া, যাতে করে একটি রোবট রাস্তা এবং প্রতিবন্ধক আলাদা করে চিনতে পারে। নিচের চিত্রে, সবুজ অংশ গুলোতে রোবটটি গাড়ি চালাতে পারবে, এবং লাল অংশের মধ্যে আছে লম্বা ঘাসের ন্যায় প্রতিবন্ধক। এই করণীয় কাজের উদ্দেশ্যে নেটওয়ার্ক ট্রেইন করার জন্য আমরা ইনপুট চিত্রের একটি অংশকে গাড়ি চালনার উপযুক্ত কিনা (সবুজ কিংবা লাল) হাতে করে লেবেল করে দিয়েছি। এরপর আমরা কনভলিউশনাল নেটওয়ার্ক লেবেল করা চিত্রের ওপর ট্রেইন করি এবং নেটওয়ার্কটিকে চিত্রের লেবেল করা অংশের রঙ অনুমান করতে বলি। +এই প্রজেক্টের উদ্দেশ্য ছিল ইনপুট চিত্রের থেকে বিশেষ অংশ গুলো লেবেল করে দেয়া, যাতে করে একটি রোবট রাস্তা এবং প্রতিবন্ধক আলাদা করে চিনতে পারে। নিচের চিত্রে, সবুজ অংশ গুলোতে রোবটটি গাড়ি চালাতে পারবে, এবং লাল অংশের মধ্যে আছে লম্বা ঘাসের ন্যায় প্রতিবন্ধক। এই করণীয় কাজের উদ্দেশ্যে নেটওয়ার্ক ট্রেইন করার জন্য আমরা ইনপুট চিত্রের একটি অংশকে গাড়ি চালনার উপযুক্ত কিনা (সবুজ কিংবা লাল) হাতে করে লেবেল করে দিয়েছি। এরপর আমরা কনভলিউশনাল নেটওয়ার্ক লেবেল করা চিত্রের ওপর ট্রেইন করি এবং নেটওয়ার্কটিকে চিত্রের লেবেল করা অংশের রঙ অনুমান করতে বলি।

@@ -110,8 +109,8 @@ translator:Mahbuba Tasmin
-এখানে অনুমানের জন্য পাঁচটি শ্রেণী রয়েছে ঃ -১ . গাঢ় সবুজ ২. সবুজ ৩. নীল বেগুনি (পার্পল) ঃ পদচিহ্ন অন্তরায় ৪ . লাল প্রতিবন্ধক ৫ . গাঢ় লাল ( অবশ্যম্ভাবী প্রতিবন্ধক) +এখানে অনুমানের জন্য পাঁচটি শ্রেণী রয়েছে +১ . গাঢ় সবুজ ২. সবুজ ৩. নীল বেগুনি (পার্পল) ঃ পদচিহ্ন অন্তরায় ৪ . লাল প্রতিবন্ধক ৫ . গাঢ় লাল ( অবশ্যম্ভাবী প্রতিবন্ধক) **Stereo Labels** (Figure 4, Column 2) @@ -120,7 +119,7 @@ translator:Mahbuba Tasmin * **Limitations & Motivation for ConvNet**: The stereo vision only works up to 10 meters and driving a robot requires long-range vision. A ConvNet however, is capable of detecting objects at much greater distances, if trained correctly.--> -* **কনভলিউশনাল নেটের সীমাবদ্ধতা এবং অনুপ্রেরণা**: স্টেরিও ভিশনটি কেবল ১০ মিটার পর্যন্ত কাজ করে এবং একটি রোবট চালনা করার জন্য দীর্ঘ-পরিসরের দৃষ্টি প্রয়োজন। একটি কনভনেট যদিও সঠিকভাবে প্রশিক্ষিত হয় তবে অনেক বেশি দূরত্বে অবজেক্টগুলি সনাক্ত করতে সক্ষম। +* **কনভলিউশনাল নেটের সীমাবদ্ধতা এবং অনুপ্রেরণা**: স্টেরিও ভিশনটি কেবল ১০ মিটার পর্যন্ত কাজ করে এবং একটি রোবট চালনা করার জন্য দীর্ঘ-পরিসরের দৃষ্টি প্রয়োজন। একটি কনভনেট যদিও সঠিকভাবে প্রশিক্ষিত হয় তবে অনেক বেশি দূরত্বে অবজেক্টগুলি সনাক্ত করতে সক্ষম।

@@ -154,7 +153,7 @@ translator:Mahbuba Tasmin ### Scene Parsing and Labelling ##দৃশ্য বিশ্লেষণ এবং লেবেলিং -এই কার্যক্রমে, মডেলটি প্রতিটি পিক্সেলের জন্য একটি বস্তুর বিভাগ (বিল্ডিং, গাড়ি, আকাশ, ইত্যাদি) আউটপুট দেয়। মডেলের কাঠামোটি বহু-স্কেল মাত্রায় গঠিত (চিত্র 6)। +এই কার্যক্রমে, মডেলটি প্রতিটি পিক্সেলের জন্য একটি বস্তুর বিভাগ (বিল্ডিং, গাড়ি, আকাশ, ইত্যাদি) আউটপুট দেয়। মডেলের কাঠামোটি বহু-স্কেল মাত্রায় গঠিত (চিত্র 6)।
@@ -169,20 +168,20 @@ translator:Mahbuba Tasmin তবে, কখনও কখনও বৃহত্তর অবজেক্টের জন্য বিভাগ নির্ধারণের জন্য এই প্রসঙ্গের আকারটি যথেষ্ট নয়। -**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে**। নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় ঃ +**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে**। নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় 3. **Upsample** these features so that they have the same size as the Level 2 Features of the original image. 4. **Stack** the three sets of (upsampled) features together and feed them to a classifier.--> -১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। +১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। ২ . এই দুটি অতিরিক্ত পুনরুদ্ধার করা চিত্র **একই কনভনেট**(একই ওজন, একই কার্নেল) যোগান দেয়া হয় এবং আমরা স্তর-২ বৈশিষ্ট্যের আরও দুটি সেট পাই। ৩ .এই বৈশিষ্ট্যগুলিকে **প্রবর্ধন** করুন যাতে তাদের মূল চিত্রের স্তর 2 বৈশিষ্ট্যগুলির সমান আকার থাকে। -৪ . তিনটি সেট (আপস্যাম্পলড) বৈশিষ্ট্য একসাথে **স্ট্যাক** করুন এবং সেগুলোকে একটি শ্রেণি নিরীক্ষণে যোগান দিন । +৪ . তিনটি সেট (আপস্যাম্পলড) বৈশিষ্ট্য একসাথে **স্ট্যাক** করুন এবং সেগুলোকে একটি শ্রেণি নিরীক্ষণে যোগান দিন । -এখন কন্টেন্টের বৃহত্তম কার্যকর আকার, যা পুনরায় আকারিত চিত্রের ১/৪ থেকে আসে, তা হচ্ছে ১৮৪ x ১৮৪ (৪৬ x ৪ = ১৮৪ ) । +এখন কন্টেন্টের বৃহত্তম কার্যকর আকার, যা পুনরায় আকারিত চিত্রের ১/৪ থেকে আসে, তা হচ্ছে ১৮৪ x ১৮৪ (৪৬ x ৪ = ১৮৪ ) । -**পারফরম্যান্স**: কোনও পোস্ট-প্রসেসিং এবং ফ্রেম-বাই-ফ্রেম চালিত না করে, মডেলটি স্ট্যান্ডার্ড হার্ডওয়্যারেও খুব দ্রুত চলে । এটির পরিবর্তে ছোট আকারের প্রশিক্ষণের ডেটা রয়েছে (2k ~ 3k ), তবে ফলাফল এখনও রেকর্ড-ব্রেকিং। \ No newline at end of file +**পারফরম্যান্স**: কোনও পোস্ট-প্রসেসিং এবং ফ্রেম-বাই-ফ্রেম চালিত না করে, মডেলটি স্ট্যান্ডার্ড হার্ডওয়্যারেও খুব দ্রুত চলে । এটির পরিবর্তে ছোট আকারের প্রশিক্ষণের ডেটা রয়েছে (2k ~ 3k ), তবে ফলাফল এখনও রেকর্ড-ব্রেকিং। diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index b4ebfa026..b9d74c935 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -1,12 +1,11 @@ --- lang-ref: ch.06-2 lecturer: Yann LeCun -title: RNNs, GRUs, LSTMs, Attention, Seq2Seq, and Memory Networks -শিরোনামঃ RNNs, GRUs, LSTMs, Attention, Seq2Seq, এবং Memory Networks +title: RNNs, GRUs, LSTMs, Attention, Seq2Seq, এবং Memory Networks authors: Jiayao Liu, Jialing Xu, Zhengyang Bian, Christina Dominguez date: 2 March 2020 -lang:bn -translation-date:8 Mar 2021 +lang: bn +translation-date: 8 Mar 2021 translator: Mahbuba Tasmin --- @@ -27,7 +26,7 @@ translator: Mahbuba Tasmin

@@ -35,7 +34,7 @@ translator: Mahbuba Tasmin - $\text{Enc}(x(t))$: এনকোডার যা ইনপুটটির প্রতিনিধিত্ব করে - - $h(t)$: ইনপুটের একটি প্রতিরুপ + - $h(t)$: ইনপুটের একটি প্রতিরুপ - $w$: প্রশিক্ষণযোগ্য পরামিতি (প্যারামিটার) @@ -52,16 +51,16 @@ translator: Mahbuba Tasmin ##রিকারেন্ট নেটওয়ার্ক: লুপটি আনরোল করুন -সময়মতো লুপটি আনরোল করুন। ইনপুটটি একটি ক্রম $x_1, x_2, ..., x_T$ অনুসরণ করে। +সময়মতো লুপটি আনরোল করুন। ইনপুটটি একটি ক্রম $x_1, x_2, ..., x_T$ অনুসরণ করে।
"
-চিত্র ২ -এ ইনপুটটি $ x_1, x_2, x_3 $ । +চিত্র ২ -এ ইনপুটটি $ x_1, x_2, x_3 $ । সময় t = 0 চলাকালীন সময়, ইনপুট $x(0$) টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w) $উদ্ভূত করতে। সময় $T=0$ এ, $G$ এ $z$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। @@ -81,7 +80,7 @@ RNN এর সাথে সম্পর্কিত সমস্যাগুল ২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট -যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। - + RNN ব্যবহার করার একটি কারণ হচ্ছে অতীতের তথ্য মনে রাখার সুবিধা। যাইহোক, সাধারণ একটি RNN কোন কৌশল ছাড়া অনেক আগের তথ্য মুখস্থ করতে ব্যর্থ হতে পারে। @@ -152,7 +151,7 @@ $$ যেখানে $s_i = w_{i}^\top x = \sum_j w_{ij}x_j$। -সিস্টেমের আউটপুট হল ইনপুট এবং ওয়েটগুলোর একটি সর্বোত্তম ওয়েটেড সামের যোগফল। ওয়েট গুলো স্বয়ং ওয়েট এবং ইনপুটের ওয়েটেড সাম। +সিস্টেমের আউটপুট হল ইনপুট এবং ওয়েটগুলোর একটি সর্বোত্তম ওয়েটেড সামের যোগফল। ওয়েট গুলো স্বয়ং ওয়েট এবং ইনপুটের ওয়েটেড সাম। হাইপারনেটওয়ার্ক আর্কিটেকচার: ওয়েটগুলো অন্য একটি নেটওয়ার্ক দ্বারা গণনা করা হয়। @@ -161,14 +160,14 @@ $$ $x_1$ এবং $x_2$ ভেক্টর, $w_1$ এবং $w_2$ সফটম্যাক্সের পরে স্কেলারসমূহ যেখানে $w_1 + w_2 = 1$, এবং $w_1$ এবং $w_2$ রয়েছে 0 এবং 1 এর মধ্যে। -$w_1x_1 + w_2x_2$ হল $x_1 $ এবং $x_2$ এর ওয়েটেড সাম, $w_1$ এবং $w_2$ এর সহগ দ্বারা ওয়েটকৃত। +$w_1x_1 + w_2x_2$ হল $x_1 $ এবং $x_2$ এর ওয়েটেড সাম, $w_1$ এবং $w_2$ এর সহগ দ্বারা ওয়েটকৃত। $W_1$ এবং $w_2$ এর আপেক্ষিক আকার পরিবর্তন করে আমরা $w_1x_1 + w_2x_2$ এর আউটপুট $x_1$ বা $x_2$ অথবা $x_1$ এবং $x_2$ এর কিছু লিনিয়ার সংমিশ্রণে পরিবর্তন করতে পারি। -ইনপুটগুলোতে একাধিক $x$ ভেক্টর থাকতে পারে ($x_1$ এবং $x_2$ এর চেয়ে বেশি)। সিস্টেমটি একটি উপযুক্ত সংমিশ্রণটি চয়ন করবে, যার পছন্দটি অন্য ভেরিয়েবল z দ্বারা নির্ধারিত হবে। একটি অ্যাটেনশন পদ্ধতি নিউরাল নেটওয়ার্কটিকে নির্দিষ্ট ইনপুটগুলোতে মনোযোগ নিবদ্ধ করতে এবং অন্যদের উপেক্ষা করার অনুমতি দেয়। +ইনপুটগুলোতে একাধিক $x$ ভেক্টর থাকতে পারে ($x_1$ এবং $x_2$ এর চেয়ে বেশি)। সিস্টেমটি একটি উপযুক্ত সংমিশ্রণটি চয়ন করবে, যার পছন্দটি অন্য ভেরিয়েবল z দ্বারা নির্ধারিত হবে। একটি অ্যাটেনশন পদ্ধতি নিউরাল নেটওয়ার্কটিকে নির্দিষ্ট ইনপুটগুলোতে মনোযোগ নিবদ্ধ করতে এবং অন্যদের উপেক্ষা করার অনুমতি দেয়। -ট্রান্সফরমার আর্কিটেকচার বা অন্যান্য ধরণের অ্যাটেনশন পদ্ধতি ব্যবহার করে এমন NLP প্রক্রিয়াগুলোতে অ্যাটেনশন ক্রমশ গুরুত্বপূর্ণ হয়ে উঠছে। +ট্রান্সফরমার আর্কিটেকচার বা অন্যান্য ধরণের অ্যাটেনশন পদ্ধতি ব্যবহার করে এমন NLP প্রক্রিয়াগুলোতে অ্যাটেনশন ক্রমশ গুরুত্বপূর্ণ হয়ে উঠছে। ওয়েটসমূহ ডেটা থেকে স্বতন্ত্র কারণ z ডেটা স্বতন্ত্র। @@ -224,7 +223,7 @@ $$ যেখানে $\odot$ উপাদান অনুসারে গুণনকে বোঝায়, $\x_t\mathbb{R}^a$ LSTM ইউনিটের একটি ইনপুট ভেক্টর,$f_t\in\mathbb{R}^h$ হল ফরগেট গেটের অ্যাক্টিভেশন ভেক্টর ,$i_t\in\mathbb{R}^h$ হল ইনপুট/আপডেট গেটের অ্যাক্টিভেশন ভেক্টর, $o_t\in\mathbb{R}^h$ আউটপুট গেটের অ্যাক্টিভেশন ভেক্টর, $h_t\in\mathbb{R}^h$ হিডেন স্টেট ভেক্টর (আউটপুট নামেও পরিচিত), $c_t\in\mathbb{R}^h$ হল সেল স্টেট ভেক্টর। -একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_ {t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $ c_ {t-1} $ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । +একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_ {t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $ c_ {t-1} $ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । যদিও LSTM NLPতে ব্যাপকভাবে ব্যবহৃত হয়, তবে তাদের জনপ্রিয়তা হ্রাস পাচ্ছে। উদাহরণস্বরূপ, স্পিচ রিকগনিশন অস্থায়ী সিএনএন ব্যবহারের দিকে এগিয়ে চলেছে, এবং NLP ট্রান্সফর্মারগুলো ব্যবহার করার দিকে এগিয়ে চলেছে। @@ -305,4 +304,4 @@ $$ এমন লোকেরা আছেন যারা কল্পনা করেন যে আপনি এটির বাইরে ** পার্থক্যযোগ্য কম্পিউটার ** তৈরি করতে পারবেন। এর একটি উদাহরণ হ'ল ডিপমাইন্ডের [Neural Touring Machine] (https://arxiv.org/abs/1410.5401), যা ফেসবুকের পেপারটি arXivতে প্রকাশিত হওয়ার তিন দিন পরে প্রকাশ করা হয়েছিল। -ধারণাটি হল কী-গুলির সাথে ইনপুটগুলি তুলনা করা, সহগ তৈরি করা এবং মানগুলি উত্পাদন করা - যা মূলত ট্রান্সফর্মারের কাজ। একটি ট্রান্সফর্মার মূলত একটি নিউরাল নেট যেখানে প্রতিটি নিউরনের গ্রুপ এই নেটওয়ার্কগুলির মধ্যে একটি। \ No newline at end of file +ধারণাটি হল কী-গুলির সাথে ইনপুটগুলি তুলনা করা, সহগ তৈরি করা এবং মানগুলি উত্পাদন করা - যা মূলত ট্রান্সফর্মারের কাজ। একটি ট্রান্সফর্মার মূলত একটি নিউরাল নেট যেখানে প্রতিটি নিউরনের গ্রুপ এই নেটওয়ার্কগুলির মধ্যে একটি। diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index d88f17b47..a1fd7f2f1 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -1,12 +1,11 @@ --- lang-ref: ch.06-3 -title: Architecture of RNN and LSTM Model -শিরোনামঃ RNN এবং LSTM মডেলের আর্কিটেকচার +title: RNN এবং LSTM মডেলের আর্কিটেকচার lecturer: Alfredo Canziani authors: Zhengyuan Ding, Biao Huang, Lin Jiang, Nhung Le date: 3 Mar 2020 -lang:bn -translation-date:11 Mar 2021 +lang: bn +translation-date: 11 Mar 2021 translator: Mahbuba Tasmin --- @@ -98,7 +97,7 @@ translator: Mahbuba Tasmin তারপরে আউটপুটটি ১২১৮৪ হওয়া উচিত। এই দুটি উদাহরণ প্রদর্শিত হয় যে আপনি এই ধরণের অপারেশন করতে নিউরাল নেটওয়ার্ককে প্রশিক্ষণ দিতে পারেন। আমাদের কেবল একটি চিহ্নের ক্রম ব্যবহার করতে হবে এবং একটি নির্দিষ্ট মান হিসাবে চূড়ান্ত আউটপুট প্রয়োগ করতে হবে। -তৃতীয়টি ভেক্টর থেকে সিক্যুয়েন্সের ক্রম, চিত্র -১০ এ দেখানো হয়েছে। এই আর্কিটেকচারটি ভাষা অনুবাদ সম্পাদনের মানক উপায় হিসাবে ব্যবহৃত হত। আপনি এখানে গোলাপীতে দেখানো প্রতীকগুলির ক্রম দিয়ে শুরু করুন । তারপরে সবকিছু এই চূড়ান্ত-h এ সংশ্লেষিত হয়ে যায় যা একটি ধারণার প্রতিনিধিত্ব করে। উদাহরণস্বরূপ, আমরা ইনপুট হিসাবে একটি বাক্য পেতে পারি এবং এটি একটি ভেক্টরে সাময়িকভাবে চেপে ধরতে পারি, যা অর্থ এবং বার্তাটি উপস্থাপন করে যা প্রেরণ করতে পারে। তারপরে যেকোন উপস্থাপনায় এই অর্থটি পাওয়ার পরে, নেটওয়ার্ক এটিকে আবার আলাদা ভাষায় তালিকাভুক্ত করে। উদাহরণস্বরূপ, "আজ আমি খুব খুশি" ইংরেজি শব্দের অনুক্রমে ইতালীয় বা চীনা অনুবাদ করা যেতে পারে। সাধারণভাবে, নেটওয়ার্ক ইনপুট হিসাবে এক ধরণের এনকোডিং পায় এবং এগুলি সংকীর্ণ উপস্থাপনায় রূপান্তরিত করে। অবশেষে, এটি একই সংকোচিত সংস্করণে ডিকোডিং সম্পাদন করে। +তৃতীয়টি ভেক্টর থেকে সিক্যুয়েন্সের ক্রম, চিত্র -১০ এ দেখানো হয়েছে। এই আর্কিটেকচারটি ভাষা অনুবাদ সম্পাদনের মানক উপায় হিসাবে ব্যবহৃত হত। আপনি এখানে গোলাপীতে দেখানো প্রতীকগুলির ক্রম দিয়ে শুরু করুন । তারপরে সবকিছু এই চূড়ান্ত-h এ সংশ্লেষিত হয়ে যায় যা একটি ধারণার প্রতিনিধিত্ব করে। উদাহরণস্বরূপ, আমরা ইনপুট হিসাবে একটি বাক্য পেতে পারি এবং এটি একটি ভেক্টরে সাময়িকভাবে চেপে ধরতে পারি, যা অর্থ এবং বার্তাটি উপস্থাপন করে যা প্রেরণ করতে পারে। তারপরে যেকোন উপস্থাপনায় এই অর্থটি পাওয়ার পরে, নেটওয়ার্ক এটিকে আবার আলাদা ভাষায় তালিকাভুক্ত করে। উদাহরণস্বরূপ, "আজ আমি খুব খুশি" ইংরেজি শব্দের অনুক্রমে ইতালীয় বা চীনা অনুবাদ করা যেতে পারে। সাধারণভাবে, নেটওয়ার্ক ইনপুট হিসাবে এক ধরণের এনকোডিং পায় এবং এগুলি সংকীর্ণ উপস্থাপনায় রূপান্তরিত করে। অবশেষে, এটি একই সংকোচিত সংস্করণে ডিকোডিং সম্পাদন করে। সাম্প্রতিক সময়ে আমরা ট্রান্সফরমারগুলির মতো নেটওয়ার্ক দেখেছি, যা আমরা পরবর্তী পাঠে কভার করব, ভাষা অনুবাদ কার্যগুলিতে এই পদ্ধতিটিকে ছাড়িয়ে যাবে। এই ধরণের আর্কিটেকচারটি প্রায় দুই বছর আগে (2018) স্টেট অফ দ্য আর্ট হিসাবে ব্যবহৃত হত।
@@ -160,7 +159,7 @@ translator: Mahbuba Tasmin ## [Back Propagation through time](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s) -## সময়ের সাথে ব্যাক-প্রোপাগেশন +## সময়ের সাথে ব্যাক-প্রোপাগেশন ### Model architecture ### মডেল আর্কিটেকচার diff --git a/docs/bn/week06/06.md b/docs/bn/week06/06.md index 45d9231f7..b2961a686 100644 --- a/docs/bn/week06/06.md +++ b/docs/bn/week06/06.md @@ -1,34 +1,23 @@ --- lang-ref: ch.06 -title: Week 6 -lang:bn -translation-date:17 Jan 2021 -translator:Mahbuba Tasmin ---- ---- -ভাষা-উল্লেখঃ অধ্যায় ০৬ -শিরোনামঃ সপ্তাহ ৬ -ভাষাঃ বাংলা -অনুবাদের তারিখঃ ১৭ জানুয়ারি,২০২১ -অনুবাদকঃ মাহবুবা তাসমিন +title: সপ্তাহ ৬ +lang: bn +translation-date: 17 Jan 2021 +translator: Mahbuba Tasmin --- -## Lecture part A -##লেকচার পার্ট A +## লেকচার পার্ট A -আমরা কনভলিউশনাল নিউরাল নেটওয়ার্কের তিনটি প্রয়োগ পদ্ধতি আলোচনা করেছি। অঙ্ক সনাক্তকরণ এবং পাঁচ অঙ্কের জিপ কোড সনাক্তকরণ দিয়ে শুরু করেছি । অবজেক্ট ডিটেকশনে আমরা আলোচনা করেছি কিভাবে মুখাবয়ব সনাক্তকরণে বহু-স্কেল সংযুক্ত কাঠামো ব্যবহার করা যায়। লেকচারটি শেষ হয়েছে কিভাবে কনভলিউশনাল নেট সেমান্টিক সেগমেন্টেশনে ব্যবহৃত হয়,রোবটিক ভিশন সিস্টেমের সাথে সম্পর্কিত এবং শহুরে পরিবেশে অবজেক্ট সেগমেন্টেশনের বাস্তব উদাহরণ দেখানো হয়েছে - +আমরা কনভলিউশনাল নিউরাল নেটওয়ার্কের তিনটি প্রয়োগ পদ্ধতি আলোচনা করেছি। অঙ্ক সনাক্তকরণ এবং পাঁচ অঙ্কের জিপ কোড সনাক্তকরণ দিয়ে শুরু করেছি । অবজেক্ট ডিটেকশনে আমরা আলোচনা করেছি কিভাবে মুখাবয়ব সনাক্তকরণে বহু-স্কেল সংযুক্ত কাঠামো ব্যবহার করা যায়। লেকচারটি শেষ হয়েছে কিভাবে কনভলিউশনাল নেট সেমান্টিক সেগমেন্টেশনে ব্যবহৃত হয়,রোবটিক ভিশন সিস্টেমের সাথে সম্পর্কিত এবং শহুরে পরিবেশে অবজেক্ট সেগমেন্টেশনের বাস্তব উদাহরণ দেখানো হয়েছে -## Lecture part B -##লেকচার পার্ট B +## লেকচার পার্ট B এই পর্বে আমরা রিকারেন্ট নিউরাল নেটওয়ার্কস, সম্পর্কিত সমস্যা গুলো এবং সমাধানের সাধারণ কৌশলগুলি অনুসন্ধান করেছি। পরবর্তীতে আমরা কয়েক প্রকারে মডিউল পর্যালোচনা করেছি যেগুলো ব্যবহৃত হয় রিকারেন্ট মডেল সম্পর্কিত সমস্যা গুলো সমাধানে ( এরমধ্যে অন্তর্গত রয়েছে অ্যাটেনশন, জিআরইউ ( গেটেড রিকারেন্ট ইউনিট), এলএসটিএম ( লং শর্ট টার্ম মেমরি) এবং সিকুয়েন্স-টু-সিকুয়েন্স)। -## Practicum -##ব্যবহারিক পাঠ্যক্রম +## ব্যবহারিক পাঠ্যক্রম - ## মুখাবয়ব সনাক্তকরণ -কনভলিউশনা নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে ৩০ x ৩০ পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি ৩০x৩০ পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ +কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে ৩০ x ৩০ পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি ৩০x৩০ পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ @@ -61,8 +60,7 @@ translator: Mahbuba Tasmin ##একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি

-Figure 2: Face detection system -চিত্র ২ঃ মুখাবয়ব চিহ্নিতকরণ (ফেস ডিটেকশন) পদ্ধতি +চিত্র ২। মুখাবয়ব চিহ্নিতকরণ (ফেস ডিটেকশন) পদ্ধতি
@@ -72,8 +70,7 @@ translator: Mahbuba Tasmin

-Figure 3: Face detector scores for various scaling factors -চিত্র ৩ঃ বিভিন্ন স্কেলিং গুণিতকের জন্য ফেস ডিটেক্টরের ফলাফল +চিত্র ৩।বিভিন্ন স্কেলিং গুণিতকের জন্য ফেস ডিটেক্টরের ফলাফল
@@ -105,7 +102,7 @@ translator: Mahbuba Tasmin

Figure 4: CNN for Long Range Adaptive Robot Vision (DARPA LAGR program 2005-2008) -চিত্র ৪ঃদীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN (DARPA LAGR প্রোগ্রাম ২০০৫-২০০৮) +চিত্র ৪।দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN (DARPA LAGR প্রোগ্রাম ২০০৫-২০০৮)
@@ -124,7 +121,7 @@ translator: Mahbuba Tasmin

Figure 5: Scale-invariant Pyramid of Distance-normalized Images -চিত্র ৫ঃ দূরত্ব-স্বাভাবিককরণের চিত্রের জন্য স্কেল-ইনভেরিয়েন্ট পিরামিড +চিত্র ৫। দূরত্ব-স্বাভাবিককরণের চিত্রের জন্য স্কেল-ইনভেরিয়েন্ট পিরামিড
@@ -159,7 +156,7 @@ translator: Mahbuba Tasmin

Figure 6: Multi-scale CNN for scene parsing -চিত্র ৬ঃ বহু-স্কেল CNN দ্বারা দৃশ্য বিশ্লেষণ +চিত্র ৬। বহু-স্কেল CNN দ্বারা দৃশ্য বিশ্লেষণ
From 0cb6a3d0666dfbc11a60c4c5e3755f63f2fab3e7 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 11:55:23 +0600 Subject: [PATCH 14/35] week6-1 headlines and english leftovers handled --- docs/bn/week06/06-1.md | 60 +++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 47118f3c1..3a1a23b30 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -11,24 +11,24 @@ translator: Mahbuba Tasmin -## [Zip Code Recognition](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=43s) + -## জিপ কোড সনাক্তকরণ +## [জিপ কোড সনাক্তকরণ](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=43s) পূর্ববর্তী লেকচারে আমরা দেখিয়েছি কনভলিউশন নিউরাল নেটওয়ার্ক কিভাবে সংখ্যা সনাক্ত করতে পারে, তবে প্রশ্ন থেকে যায় কিভাবে মডেলটি প্রতিটি সংখ্যাকে আলাদা করে বাছাই করে এবং পার্শ্ববর্তী সংখ্যাগুলোতে বিচ্ছিন্ন ভুল সনাক্তকরণ থেকে বিরত থাকে। পরবর্তী ধাপে লক্ষ্য থাকবে সমাপতিত/অসমাপতিত কিংবা পৃথক অবজেক্ট সনাক্তকরণ এবং নন-ম্যাক্সিমাম সাপ্রেশন (এন এম এস) এর সাধারণ পন্থা ব্যবহার করা। আলোচনার প্রেক্ষাপট অনুযায়ী যেহেতু ইনপুট হচ্ছে একটি পৃথক সংখ্যা সমূহের ধারা, সংগৃহীত কৌশলটি কয়েকটি কনভলিউশনাল নিউরাল নেটওয়ার্ক ট্রেইনিং এবং পরবর্তীতে কনভলিউশনাল নেটওয়ার্ক কর্তৃক সৃষ্ট অধিকাংশ সঠিক সনাক্তকরণ মত কিংবা সর্বোচ্চ সনাক্তকরণ অঙ্ক অনুযায়ী নিরীক্ষণীয় সংখ্যাটি বাছাই করবে। -### Recognition with CNN + -## কনভলিউশনাল নিউরাল নেটওয়ার্ক দ্বারা সনাক্তকরণ +### কনভলিউশনাল নিউরাল নেটওয়ার্ক দ্বারা সনাক্তকরণ এই পর্বে আমরা দেখাব পাঁচটি পৃথক জিপ কোড সনাক্তকরণের কার্যক্রম। আলোচিত পদ্ধতিতে প্রতিটি সংখ্যা আলাদা করে বাছাই করার ব্যাপারে কোন পূর্ববর্তী নির্দেশনা দেয়া হয়নি। এটির লক্ষ্য হচ্ছে পাঁচটি নিরীক্ষণীয় সংখ্যা অবশ্যই নির্ধারণ করা।আলোচ্য কৌশলটি ( চিত্র ১) চারটি বিভিন্ন আকারের কনভলিউশনাল নেটওয়ার্ক দ্বারা গঠিত, প্রতিটি নেটওয়ার্ক থেকে একটি পৃথক আউটপুটের সমষ্টি তৈরি হবে। সংগৃহীত আউটপুট গুলো ম্যাট্রিক্সের মাধ্যমে উপস্থাপিত হয়েছে। বিভিন্ন মডেল থেকে আসা চারটি আউটপুট ম্যাট্রিক্স তৈরি হয়েছে মডেলের শেষ স্তরের বিভিন্ন প্রস্থের কার্নেল থেকে। প্রতিটি আউটপুটে ১০টি সারি রয়েছে, যা ০ থেকে ৯ পর্যন্ত ১০টি শ্রেণীকে উপস্থাপন করছে। প্রতিটি আউটপুট ম্যাট্রিক্সের বৃহত্তর সাদা বর্গটি সম্পর্কিত সংখ্যা শ্রেণীর সর্বোচ্চ অঙ্ক উপস্থাপন করে। এই চারটি আউটপুট সারিতে অবস্থিত কার্নেল সমূহের আনুভূমিক আকৃতি যথাক্রমে ৫,৪,৩ এবং ২ আকারের। কার্নেলের আকৃতির পরিমাপ নির্ধারণ করে ইনপুটের ওপর সংশ্লিষ্ট মডেলের নিরীক্ষণ পরিধির প্রস্থ। পরবর্তীতে মডেলটি উক্ত নিরীক্ষণ পরিধির আওতায় সংখ্যাগরিষ্ঠ ভোটের ভিত্তিতে সর্বোচ্চ ফলাফল অঙ্কের সাথে সংশ্লিষ্ট শ্রেণিটি নির্ধারণ করে। প্রয়োজনীয় তথ্য বের করে আনতে মনে রাখতে হবে যে সব অক্ষরের সংযুক্তি সম্ভবপর নয়। অতএব, ত্রুটি সংশোধন পূর্বক ইনপুটের সীমাবদ্ধতাকে অতিক্রম করে কার্যকর ভাবে নিশ্চিত করে যে আউটপুট গুলো সত্যিকার অর্থে জিপ কোডকে উপস্থাপন করছে।

-চিত্র ১। জিপ কোড সনাক্তকরণে প্রয়োগকৃত একাধিক ক্লাসিফায়ার +চিত্র ১: জিপ কোড সনাক্তকরণে প্রয়োগকৃত একাধিক ক্লাসিফায়ার
@@ -38,29 +38,29 @@ translator: Mahbuba Tasmin অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত। -## [Face detection](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) + -## মুখাবয়ব সনাক্তকরণ +##[মুখাবয়ব সনাক্তকরণ](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে ৩০ x ৩০ পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি ৩০x৩০ পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ -##ফলস পজিটিভসঃ +**ফলস পজিটিভস**ঃ একটি স্থিরচিত্রের টুকরো অংশের মাঝে মুখাবয়বের চেয়ে ভিন্ন কয়েক ধরণের অবজেক্ট প্রতীয়মান হতে পারে। মডেল ট্রেইনিং ধাপে এই সব ধরণের ভিন্ন অবজেক্ট গুলো নিরীক্ষণের আওতার বাইরে থেকে যেতে পারে ( সব ধরণের বলতে অমুখাবয়ব সম্পর্কিত চিত্রের অংশ গুলো দ্বারা গঠিত একটি সম্পূর্ণ সেট)। কাজেই টেস্টিং ধাপে এসে মডেল এর আউটপুট ফলস পজিটিভ দ্বারা অনেকাংশে প্রভাবিত হতে পারে। উদাহরণ স্বরূপ বলা যায় যে, যদি নেটওয়ার্কটি এমন চিত্র সমূহ দ্বারা ট্রেইনড না হয় যেখানে হাতের উপস্থিতি আছে, মডেলটি ত্বকের বর্ণের উপর ভিত্তি করে মুখাবয়ব চিহ্নিত করতে পারে এবং ত্রুটিপূর্ণ শ্রেণীবিভাগের মাধ্যমে চিত্রে হাতের উপস্থিতিকে মুখের সম্যক বলে চিহ্নিত করতে পারে। ভুল চিহ্নিতকরণের মধ্য দিয়ে ফলস পজিটিভস বৃদ্ধি পেতে পারে। -##বিভিন্ন আকারের মুখাবয়বঃ সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। +**বিভিন্ন আকারের মুখাবয়বঃ** সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। তাহলে সর্বমোট খরচ দাঁড়ায় $1+1/2+1/4+1/8+1/16…$, যা কিনা ২। একটি বহু স্কেলের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। -### A multi-scale face detection system -##একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি + +###একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি

-চিত্র ২। মুখাবয়ব চিহ্নিতকরণ (ফেস ডিটেকশন) পদ্ধতি +চিত্র ২: মুখাবয়ব চিহ্নিতকরণ (ফেস ডিটেকশন) পদ্ধতি
@@ -70,57 +70,57 @@ translator: Mahbuba Tasmin

-চিত্র ৩।বিভিন্ন স্কেলিং গুণিতকের জন্য ফেস ডিটেক্টরের ফলাফল +চিত্র ৩:বিভিন্ন স্কেলিং গুণিতকের জন্য ফেস ডিটেক্টরের ফলাফল
-### Non-maximum suppression -##নন-ম্যাক্সিমাম সাপ্রেশন + +###নন-ম্যাক্সিমাম সাপ্রেশন প্রতিটি সর্বোচ্চ ফলাফলের ক্ষেত্রের জন্য আশা করা যায় যে সেখানে একটি মুখ আছে সম্ভবত। যদি একাধিক মুখাবয়ব প্রথম চিহ্নিত মুখের খুব কাছের অংশে পাওয়া যায়, এর মানে দাঁড়ায় যে কেবল মাত্র একটি চিহ্নিত অংশ সঠিকভাবে গণ্য করতে হবে এবং বাকি গুলো ভুল চিহ্নিতকরণের ফলাফল। নন-ম্যাক্সিমাম সাপ্রেশন দিয়ে আমরা অধিক্রমিত বাউন্ডিং বক্সের সর্বোচ্চ ফলাফল গ্রহণ করি এবং বাকি গুলো অপসারণ করি। চূড়ান্ত ফলাফল হবে সর্বাপেক্ষা অনুকূল স্থানে অবস্থিত একটি একক বাউন্ডিং বক্স। -### Negative mining -##নেগেটিভ মাইনিং + +###নেগেটিভ মাইনিং শেষ অনুচ্ছেদে আমরা আলোচনা করেছি যে কিভাবে টেস্টিং পিরিয়ডে মডেল অধিক সংখ্যক ফলস পজিটিভস নিরীক্ষার মুখোমুখি হতে পারে, যেহেতু নন-ফেস অবজেক্টের বিভিন্ন প্রকারে মুখাবয়বের সাথে সাদৃশ্য থাকতে পারে। কোন ট্রেইনিং সেট সব রকম সম্ভাবনার নন-ফেস অবজেক্ট অন্তর্ভুক্ত করবেনা যেগুলো দেখতে চেহারার মত। আমরা এই সমস্যা নিরসনে নেগেটিভ মাইনিং ব্যবহার করতে পারি। নেগেটিভ মাইনিং প্রক্রিয়াতে, আমরা নন-ফেস ক্ষুদ্র অংশ গুলোর দ্বারা একটি নেগেটিভ ডেটাসেট প্রস্তুত করি, যেগুলো মডেল ভুলক্রমে মুখাবয়ব হিসেবে চিহ্নিত করেছে। মডেলটিকে এমন সব জ্ঞাত ইনপুটের উপর চালানো হয়েছে যেগুলোতে জ্ঞাতসারে নন-ফেস অংশ আছে এবং ডেটা সংগ্রহে এই পদ্ধতি গ্রহণ করা হয়েছে। এরপর ডিটেক্টরটি পুনরায় ট্রেইন করা হয়েছে নেগেটিভ ডেটাসেট ব্যবহার করে। আমরা এই পদ্ধতি পুনরাবৃত্তি করতে পারি, যাতে করে ফলস পজিটিভের বিপরীতে মডেলের সঠিক নির্ধারণ ক্ষমতা বৃদ্ধি পায়। -## Semantic segmentation - + +##সেমান্টিক সেগমেন্টেশন সেমান্টিক সেগমেন্টেশন একটি ইনপুট চিত্রের প্রতিটি পিক্সেলে ভিন্ন ভিন্ন শ্রেণী নির্দিষ্ট করে দেয় । -### [CNN for Long Range Adaptive Robot Vision](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) -দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN + +###[দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) এই প্রজেক্টের উদ্দেশ্য ছিল ইনপুট চিত্রের থেকে বিশেষ অংশ গুলো লেবেল করে দেয়া, যাতে করে একটি রোবট রাস্তা এবং প্রতিবন্ধক আলাদা করে চিনতে পারে। নিচের চিত্রে, সবুজ অংশ গুলোতে রোবটটি গাড়ি চালাতে পারবে, এবং লাল অংশের মধ্যে আছে লম্বা ঘাসের ন্যায় প্রতিবন্ধক। এই করণীয় কাজের উদ্দেশ্যে নেটওয়ার্ক ট্রেইন করার জন্য আমরা ইনপুট চিত্রের একটি অংশকে গাড়ি চালনার উপযুক্ত কিনা (সবুজ কিংবা লাল) হাতে করে লেবেল করে দিয়েছি। এরপর আমরা কনভলিউশনাল নেটওয়ার্ক লেবেল করা চিত্রের ওপর ট্রেইন করি এবং নেটওয়ার্কটিকে চিত্রের লেবেল করা অংশের রঙ অনুমান করতে বলি।

-Figure 4: CNN for Long Range Adaptive Robot Vision (DARPA LAGR program 2005-2008) -চিত্র ৪।দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN (DARPA LAGR প্রোগ্রাম ২০০৫-২০০৮) + +চিত্র ৪:দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN (DARPA LAGR প্রোগ্রাম ২০০৫-২০০৮)
-এখানে অনুমানের জন্য পাঁচটি শ্রেণী রয়েছে +এখানে অনুমানের জন্য পাঁচটি শ্রেণী রয়েছে: ১ . গাঢ় সবুজ ২. সবুজ ৩. নীল বেগুনি (পার্পল) ঃ পদচিহ্ন অন্তরায় ৪ . লাল প্রতিবন্ধক ৫ . গাঢ় লাল ( অবশ্যম্ভাবী প্রতিবন্ধক) -**Stereo Labels** (Figure 4, Column 2) + **স্টেরিও লেবেলগুলো** (চিত্র 4, কলাম 2) চিত্রগুলি রোবোটের ৪টি ক্যামেরার দ্বারা ক্যাপচার করা হয়েছে, যা ২টি স্টেরিও দর্শন জোড়ায় বিভক্ত করা হয়েছে। স্টেরিও জুটির ক্যামেরাগুলির মধ্যে পরিচিত দূরত্বগুলি ব্যবহার করে, ত্রিমাত্রিক স্পেসে প্রতিটি পিক্সেলের অবস্থানগুলি তখন স্টেরিও জোড়ায় উভয় ক্যামেরায় প্রদর্শিত পিক্সেলের মধ্যে আপেক্ষিক দূরত্বগুলি পরিমাপ করে অনুমান করা হয়। আমাদের মস্তিস্কে যে প্রক্রিয়ায় জিনিসগুলি দেখি তার দূরত্ব নির্ধারণ করতে একই প্রক্রিয়া অনুসরণ করা হয় । আনুমানিক অবস্থান তথ্য ব্যবহার করে, একটি সমতল ভূমির সাথে ফিট করে এবং তারপরে পিক্সেলগুলি সবুজ হিসাবে লেবেলযুক্ত হয় যদি তারা মাটির কাছাকাছি থাকে এবং সেগুলি উপরে থাকে তবে লাল হয়। -* **Limitations & Motivation for ConvNet**: The stereo vision only works up to 10 meters and driving a robot requires long-range vision. A ConvNet however, is capable of detecting objects at much greater distances, if trained correctly.--> + * **কনভলিউশনাল নেটের সীমাবদ্ধতা এবং অনুপ্রেরণা**: স্টেরিও ভিশনটি কেবল ১০ মিটার পর্যন্ত কাজ করে এবং একটি রোবট চালনা করার জন্য দীর্ঘ-পরিসরের দৃষ্টি প্রয়োজন। একটি কনভনেট যদিও সঠিকভাবে প্রশিক্ষিত হয় তবে অনেক বেশি দূরত্বে অবজেক্টগুলি সনাক্ত করতে সক্ষম।

-Figure 5: Scale-invariant Pyramid of Distance-normalized Images + চিত্র ৫। দূরত্ব-স্বাভাবিককরণের চিত্রের জন্য স্কেল-ইনভেরিয়েন্ট পিরামিড
@@ -147,15 +147,15 @@ translator: Mahbuba Tasmin ২০০০ এর দশকে, গণনার সংস্থানগুলি সীমাবদ্ধ ছিল। রোবট প্রতি সেকেন্ডে প্রায় 1 ফ্রেম প্রক্রিয়া করতে সক্ষম হয়েছিল, যার অর্থ এটি প্রতিক্রিয়া জানাতে সক্ষম হওয়ার আগে পুরো এক সেকেন্ডের জন্য কোনও ব্যক্তিকে সনাক্ত করতে সক্ষম হবে না যিনি পুরো দ্বিতীয় সেকেন্ডে রোবটের পথে চলেছেন । এই সীমাবদ্ধতার সমাধান হল **কম দামের ভিজ্যুয়াল ওডোমেট্রি মডেল**। এটি নিউরাল নেটওয়ার্কগুলির উপর ভিত্তি করে নয়, ~ 2.5 m এর দর্শন রয়েছে তবে দ্রুত প্রতিক্রিয়া দেখায়। -### Scene Parsing and Labelling -##দৃশ্য বিশ্লেষণ এবং লেবেলিং + +###দৃশ্য বিশ্লেষণ এবং লেবেলিং এই কার্যক্রমে, মডেলটি প্রতিটি পিক্সেলের জন্য একটি বস্তুর বিভাগ (বিল্ডিং, গাড়ি, আকাশ, ইত্যাদি) আউটপুট দেয়। মডেলের কাঠামোটি বহু-স্কেল মাত্রায় গঠিত (চিত্র 6)।

-Figure 6: Multi-scale CNN for scene parsing + চিত্র ৬। বহু-স্কেল CNN দ্বারা দৃশ্য বিশ্লেষণ
From a1197d4aa3526560df2982ac9c30ac6b9838e4cc Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:02:40 +0600 Subject: [PATCH 15/35] week6-1 lecture updated --- docs/bn/week06/06-1.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 3a1a23b30..80e437194 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -35,7 +35,7 @@ translator: Mahbuba Tasmin -অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত। +অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত।--> @@ -48,12 +48,12 @@ translator: Mahbuba Tasmin -**ফলস পজিটিভস**ঃ +-**ফলস পজিটিভস**: একটি স্থিরচিত্রের টুকরো অংশের মাঝে মুখাবয়বের চেয়ে ভিন্ন কয়েক ধরণের অবজেক্ট প্রতীয়মান হতে পারে। মডেল ট্রেইনিং ধাপে এই সব ধরণের ভিন্ন অবজেক্ট গুলো নিরীক্ষণের আওতার বাইরে থেকে যেতে পারে ( সব ধরণের বলতে অমুখাবয়ব সম্পর্কিত চিত্রের অংশ গুলো দ্বারা গঠিত একটি সম্পূর্ণ সেট)। কাজেই টেস্টিং ধাপে এসে মডেল এর আউটপুট ফলস পজিটিভ দ্বারা অনেকাংশে প্রভাবিত হতে পারে। উদাহরণ স্বরূপ বলা যায় যে, যদি নেটওয়ার্কটি এমন চিত্র সমূহ দ্বারা ট্রেইনড না হয় যেখানে হাতের উপস্থিতি আছে, মডেলটি ত্বকের বর্ণের উপর ভিত্তি করে মুখাবয়ব চিহ্নিত করতে পারে এবং ত্রুটিপূর্ণ শ্রেণীবিভাগের মাধ্যমে চিত্রে হাতের উপস্থিতিকে মুখের সম্যক বলে চিহ্নিত করতে পারে। ভুল চিহ্নিতকরণের মধ্য দিয়ে ফলস পজিটিভস বৃদ্ধি পেতে পারে। -**বিভিন্ন আকারের মুখাবয়বঃ** সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। +-**বিভিন্ন আকারের মুখাবয়বঃ** সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। তাহলে সর্বমোট খরচ দাঁড়ায় $1+1/2+1/4+1/8+1/16…$, যা কিনা ২। একটি বহু স্কেলের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। From d4dad70fe96e65829701a26c2ec2b2c1eea6ffbc Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:04:41 +0600 Subject: [PATCH 16/35] week6-1 updated --- docs/bn/week06/06-1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 80e437194..4bbafa5c1 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -35,7 +35,7 @@ translator: Mahbuba Tasmin -অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত।--> +অক্ষরের ক্রম নিশ্চিত করতে গৃহীত কৌশলটি শর্টেস্ট পাথ এলগোরিদম ব্যবহার করবে। যেহেতু আমাদের দেয়া হয়েছে বিভিন্ন পরিসরে সাজানো সম্ভাব্য অক্ষরসমূহ এবং সর্বমোট নিরীক্ষণীয় সংখ্যার সমষ্টি, আলোচ্য প্রেক্ষাপটে আমাদের সম্ভবপর পন্থা হতে পারে সংখ্যা গঠন করা এবং একের অধিক সংখ্যার মধ্যবর্তী পরিবর্তনের ক্ষেত্রে সর্বনিম্ন পরিব্যয় গণ্না করা । কৌশলের অবলম্বিত পথটি নিম্নবর্তী বাম ঘর থেকে উপরের ডান ঘর পর্যন্ত অবিচ্ছিন্ন ভাবে চলমান হতে হবে । এবং পথটি শুধুমাত্র বাম থেকে ডানের এবং উপরে থেকে নিচের গতিবিধি ধারণ করতে পারবে। এখানে উল্লেখ্য থাকে যে, যদি একই সংখ্যা উপর্যুপরি পুনরাবৃত্তি ঘটে, সেক্ষেত্রে গৃহীত এলগোরিদমটির পুনরাবৃত্ত সংখ্যাকে একটি একক সংখ্যাকে সনাক্তকরণ থেকে পার্থক্য করতে পারা উচিত। From da2c01fff84146faca211ea55bf6c502657d9de7 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:08:09 +0600 Subject: [PATCH 17/35] week6-1 updated --- docs/bn/week06/06-1.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 4bbafa5c1..79a9dbea7 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -42,19 +42,17 @@ translator: Mahbuba Tasmin -##[মুখাবয়ব সনাক্তকরণ](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) +## [মুখাবয়ব সনাক্তকরণ](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে ৩০ x ৩০ পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি ৩০x৩০ পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ --**ফলস পজিটিভস**: -একটি স্থিরচিত্রের টুকরো অংশের মাঝে মুখাবয়বের চেয়ে ভিন্ন কয়েক ধরণের অবজেক্ট প্রতীয়মান হতে পারে। মডেল ট্রেইনিং ধাপে এই সব ধরণের ভিন্ন অবজেক্ট গুলো নিরীক্ষণের আওতার বাইরে থেকে যেতে পারে ( সব ধরণের বলতে অমুখাবয়ব সম্পর্কিত চিত্রের অংশ গুলো দ্বারা গঠিত একটি সম্পূর্ণ সেট)। কাজেই টেস্টিং ধাপে এসে মডেল এর আউটপুট ফলস পজিটিভ দ্বারা অনেকাংশে প্রভাবিত হতে পারে। উদাহরণ স্বরূপ বলা যায় যে, যদি নেটওয়ার্কটি এমন চিত্র সমূহ দ্বারা ট্রেইনড না হয় যেখানে হাতের উপস্থিতি আছে, মডেলটি ত্বকের বর্ণের উপর ভিত্তি করে মুখাবয়ব চিহ্নিত করতে পারে এবং ত্রুটিপূর্ণ শ্রেণীবিভাগের মাধ্যমে চিত্রে হাতের উপস্থিতিকে মুখের সম্যক বলে চিহ্নিত করতে পারে। ভুল চিহ্নিতকরণের মধ্য দিয়ে ফলস পজিটিভস বৃদ্ধি পেতে পারে। +- **ফলস পজিটিভস**:একটি স্থিরচিত্রের টুকরো অংশের মাঝে মুখাবয়বের চেয়ে ভিন্ন কয়েক ধরণের অবজেক্ট প্রতীয়মান হতে পারে। মডেল ট্রেইনিং ধাপে এই সব ধরণের ভিন্ন অবজেক্ট গুলো নিরীক্ষণের আওতার বাইরে থেকে যেতে পারে ( সব ধরণের বলতে অমুখাবয়ব সম্পর্কিত চিত্রের অংশ গুলো দ্বারা গঠিত একটি সম্পূর্ণ সেট)। কাজেই টেস্টিং ধাপে এসে মডেল এর আউটপুট ফলস পজিটিভ দ্বারা অনেকাংশে প্রভাবিত হতে পারে। উদাহরণ স্বরূপ বলা যায় যে, যদি নেটওয়ার্কটি এমন চিত্র সমূহ দ্বারা ট্রেইনড না হয় যেখানে হাতের উপস্থিতি আছে, মডেলটি ত্বকের বর্ণের উপর ভিত্তি করে মুখাবয়ব চিহ্নিত করতে পারে এবং ত্রুটিপূর্ণ শ্রেণীবিভাগের মাধ্যমে চিত্রে হাতের উপস্থিতিকে মুখের সম্যক বলে চিহ্নিত করতে পারে। ভুল চিহ্নিতকরণের মধ্য দিয়ে ফলস পজিটিভস বৃদ্ধি পেতে পারে। --**বিভিন্ন আকারের মুখাবয়বঃ** সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট। - তাহলে সর্বমোট খরচ দাঁড়ায় $1+1/2+1/4+1/8+1/16…$, যা কিনা ২। একটি বহু স্কেলের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। +- **বিভিন্ন আকারের মুখাবয়বঃ** সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট।তাহলে সর্বমোট খরচ দাঁড়ায় $1+1/2+1/4+1/8+1/16…$, যা কিনা ২। একটি বহু স্কেলের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। ###একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি From 9e7b71bb35d7ff71b17bb9d199035f82b42c1a04 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:12:36 +0600 Subject: [PATCH 18/35] week6 lecture1 updated --- docs/bn/week06/06-1.md | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 79a9dbea7..ed04b95db 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -55,7 +55,7 @@ translator: Mahbuba Tasmin - **বিভিন্ন আকারের মুখাবয়বঃ** সকল মুখের ছবি 30 $\times$ 30 পিক্সেলস নাও হতে পারে, সেক্ষেত্রে বিভিন্ন আকারের মুখের ছবি চিহ্নিত হতে না পারে। একটি উপায়ে এই সমস্যাটি উত্তরণ করা যেতে পারে, সেটি হচ্ছে একই চিত্রের বহু স্কেলের সংস্করণ বের করে। প্রকৃত ডিটেক্টরটি 30 $\times$ 30 পিক্সেলসের মুখাবয়ব চিহ্নিত করতে পারবে। মডেলটি আসল চিত্রে অপেক্ষাকৃত ছোট আকারের মুখ চিহ্নিত করতে পারবে যদি আনুপাতিক $\sqrt 2$ গুণক পরিমাণ আসল চিত্রে পরিবর্তন প্রয়োগ করা হয়, যাতে করে 30 $\times$ 30 পিক্সেলস প্রয়োগের পরবর্তীতে আনুমানিক 20 $\times$ 20 পিক্সেলসে পরিবর্তিত হয়ে যায়। বড় আকারের মুখ চিহ্নিত করতে আমরা চিত্রের আকার ছোট করে ফেলতে পারি। এই পদ্ধতিটি প্রয়োগ সহজ, যেহেতু প্রয়োগের অর্ধেক অ্যালগোরিদমিক ব্যয় অপরিবর্তিত আসল চিত্রের প্রস্তুতিকরণে পিছে যায়। বাকি সব নেটওয়ার্কের সম্মিলিত প্রয়োগ খরচ অপরিবর্তিত আসল নন-স্কেলড চিত্রের প্রক্রিয়ার খরচের সমান। নেটওয়ার্কের আকার আসল চিত্রের এক পাশের আকারের চতুর্গুন পরিমাণ, সেহেতু একটি চিত্রকে যদি $\sqrt 2$ গুণক পরিমাণ স্কেল ডাউন করা হয়, প্রয়োজনীয় নেটওয়ার্কের আয়তন দাঁড়াবে আসল নেটওয়ার্কের আকারের তুলনায় দ্বিগুণ ছোট।তাহলে সর্বমোট খরচ দাঁড়ায় $1+1/2+1/4+1/8+1/16…$, যা কিনা ২। একটি বহু স্কেলের মডেল প্রয়োগ করলে কম্পিউটেশনাল খরচ কেবল দ্বিগুণ হবে। -###একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি +### একটি বহু-স্কেল যুক্ত মুখাবয়ব চিহ্নিতকরণ পদ্ধতি

চিত্র ২: মুখাবয়ব চিহ্নিতকরণ (ফেস ডিটেকশন) পদ্ধতি @@ -73,26 +73,26 @@ translator: Mahbuba Tasmin -###নন-ম্যাক্সিমাম সাপ্রেশন +### নন-ম্যাক্সিমাম সাপ্রেশন প্রতিটি সর্বোচ্চ ফলাফলের ক্ষেত্রের জন্য আশা করা যায় যে সেখানে একটি মুখ আছে সম্ভবত। যদি একাধিক মুখাবয়ব প্রথম চিহ্নিত মুখের খুব কাছের অংশে পাওয়া যায়, এর মানে দাঁড়ায় যে কেবল মাত্র একটি চিহ্নিত অংশ সঠিকভাবে গণ্য করতে হবে এবং বাকি গুলো ভুল চিহ্নিতকরণের ফলাফল। নন-ম্যাক্সিমাম সাপ্রেশন দিয়ে আমরা অধিক্রমিত বাউন্ডিং বক্সের সর্বোচ্চ ফলাফল গ্রহণ করি এবং বাকি গুলো অপসারণ করি। চূড়ান্ত ফলাফল হবে সর্বাপেক্ষা অনুকূল স্থানে অবস্থিত একটি একক বাউন্ডিং বক্স। -###নেগেটিভ মাইনিং +### নেগেটিভ মাইনিং শেষ অনুচ্ছেদে আমরা আলোচনা করেছি যে কিভাবে টেস্টিং পিরিয়ডে মডেল অধিক সংখ্যক ফলস পজিটিভস নিরীক্ষার মুখোমুখি হতে পারে, যেহেতু নন-ফেস অবজেক্টের বিভিন্ন প্রকারে মুখাবয়বের সাথে সাদৃশ্য থাকতে পারে। কোন ট্রেইনিং সেট সব রকম সম্ভাবনার নন-ফেস অবজেক্ট অন্তর্ভুক্ত করবেনা যেগুলো দেখতে চেহারার মত। আমরা এই সমস্যা নিরসনে নেগেটিভ মাইনিং ব্যবহার করতে পারি। নেগেটিভ মাইনিং প্রক্রিয়াতে, আমরা নন-ফেস ক্ষুদ্র অংশ গুলোর দ্বারা একটি নেগেটিভ ডেটাসেট প্রস্তুত করি, যেগুলো মডেল ভুলক্রমে মুখাবয়ব হিসেবে চিহ্নিত করেছে। মডেলটিকে এমন সব জ্ঞাত ইনপুটের উপর চালানো হয়েছে যেগুলোতে জ্ঞাতসারে নন-ফেস অংশ আছে এবং ডেটা সংগ্রহে এই পদ্ধতি গ্রহণ করা হয়েছে। এরপর ডিটেক্টরটি পুনরায় ট্রেইন করা হয়েছে নেগেটিভ ডেটাসেট ব্যবহার করে। আমরা এই পদ্ধতি পুনরাবৃত্তি করতে পারি, যাতে করে ফলস পজিটিভের বিপরীতে মডেলের সঠিক নির্ধারণ ক্ষমতা বৃদ্ধি পায়। -##সেমান্টিক সেগমেন্টেশন +## সেমান্টিক সেগমেন্টেশন সেমান্টিক সেগমেন্টেশন একটি ইনপুট চিত্রের প্রতিটি পিক্সেলে ভিন্ন ভিন্ন শ্রেণী নির্দিষ্ট করে দেয় । -###[দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) +### [দীর্ঘ পরিসর ব্যাপী অভিযোজিত রোবট ভিশনের ক্ষেত্রে CNN](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1669s) এই প্রজেক্টের উদ্দেশ্য ছিল ইনপুট চিত্রের থেকে বিশেষ অংশ গুলো লেবেল করে দেয়া, যাতে করে একটি রোবট রাস্তা এবং প্রতিবন্ধক আলাদা করে চিনতে পারে। নিচের চিত্রে, সবুজ অংশ গুলোতে রোবটটি গাড়ি চালাতে পারবে, এবং লাল অংশের মধ্যে আছে লম্বা ঘাসের ন্যায় প্রতিবন্ধক। এই করণীয় কাজের উদ্দেশ্যে নেটওয়ার্ক ট্রেইন করার জন্য আমরা ইনপুট চিত্রের একটি অংশকে গাড়ি চালনার উপযুক্ত কিনা (সবুজ কিংবা লাল) হাতে করে লেবেল করে দিয়েছি। এরপর আমরা কনভলিউশনাল নেটওয়ার্ক লেবেল করা চিত্রের ওপর ট্রেইন করি এবং নেটওয়ার্কটিকে চিত্রের লেবেল করা অংশের রঙ অনুমান করতে বলি। @@ -110,7 +110,8 @@ translator: Mahbuba Tasmin -**স্টেরিও লেবেলগুলো** (চিত্র 4, কলাম 2) চিত্রগুলি রোবোটের ৪টি ক্যামেরার দ্বারা ক্যাপচার করা হয়েছে, যা ২টি স্টেরিও দর্শন জোড়ায় বিভক্ত করা হয়েছে। স্টেরিও জুটির ক্যামেরাগুলির মধ্যে পরিচিত দূরত্বগুলি ব্যবহার করে, ত্রিমাত্রিক স্পেসে প্রতিটি পিক্সেলের অবস্থানগুলি তখন স্টেরিও জোড়ায় উভয় ক্যামেরায় প্রদর্শিত পিক্সেলের মধ্যে আপেক্ষিক দূরত্বগুলি পরিমাপ করে অনুমান করা হয়। আমাদের মস্তিস্কে যে প্রক্রিয়ায় জিনিসগুলি দেখি তার দূরত্ব নির্ধারণ করতে একই প্রক্রিয়া অনুসরণ করা হয় । আনুমানিক অবস্থান তথ্য ব্যবহার করে, একটি সমতল ভূমির সাথে ফিট করে এবং তারপরে পিক্সেলগুলি সবুজ হিসাবে লেবেলযুক্ত হয় যদি তারা মাটির কাছাকাছি থাকে এবং সেগুলি উপরে থাকে তবে লাল হয়। +**স্টেরিও লেবেলগুলো** + (চিত্র 4, কলাম 2) চিত্রগুলি রোবোটের ৪টি ক্যামেরার দ্বারা ক্যাপচার করা হয়েছে, যা ২টি স্টেরিও দর্শন জোড়ায় বিভক্ত করা হয়েছে। স্টেরিও জুটির ক্যামেরাগুলির মধ্যে পরিচিত দূরত্বগুলি ব্যবহার করে, ত্রিমাত্রিক স্পেসে প্রতিটি পিক্সেলের অবস্থানগুলি তখন স্টেরিও জোড়ায় উভয় ক্যামেরায় প্রদর্শিত পিক্সেলের মধ্যে আপেক্ষিক দূরত্বগুলি পরিমাপ করে অনুমান করা হয়। আমাদের মস্তিস্কে যে প্রক্রিয়ায় জিনিসগুলি দেখি তার দূরত্ব নির্ধারণ করতে একই প্রক্রিয়া অনুসরণ করা হয় । আনুমানিক অবস্থান তথ্য ব্যবহার করে, একটি সমতল ভূমির সাথে ফিট করে এবং তারপরে পিক্সেলগুলি সবুজ হিসাবে লেবেলযুক্ত হয় যদি তারা মাটির কাছাকাছি থাকে এবং সেগুলি উপরে থাকে তবে লাল হয়। @@ -127,7 +128,7 @@ translator: Mahbuba Tasmin -**মডেল আউটপুট **(চিত্র ৪ , কলাম 3) +**মডেল আউটপুট ** (চিত্র ৪ , কলাম 3) মডেলটি **দিগন্ত পর্যন্ত**s চিত্রটিতে প্রতিটি পিক্সেলের জন্য একটি লেবেল আউটপুট দেয়। এগুলি একটি একাধিক-স্কেলের কনভলিউশনাল নেটওয়ার্কের শ্রেণিবদ্ধ আউটপুট। @@ -146,7 +147,7 @@ translator: Mahbuba Tasmin -###দৃশ্য বিশ্লেষণ এবং লেবেলিং +### দৃশ্য বিশ্লেষণ এবং লেবেলিং এই কার্যক্রমে, মডেলটি প্রতিটি পিক্সেলের জন্য একটি বস্তুর বিভাগ (বিল্ডিং, গাড়ি, আকাশ, ইত্যাদি) আউটপুট দেয়। মডেলের কাঠামোটি বহু-স্কেল মাত্রায় গঠিত (চিত্র 6)। @@ -163,7 +164,7 @@ translator: Mahbuba Tasmin তবে, কখনও কখনও বৃহত্তর অবজেক্টের জন্য বিভাগ নির্ধারণের জন্য এই প্রসঙ্গের আকারটি যথেষ্ট নয়। -**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে**। নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় +**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে।** নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় @@ -176,7 +177,7 @@ translator: Mahbuba Tasmin ৪ . তিনটি সেট (আপস্যাম্পলড) বৈশিষ্ট্য একসাথে **স্ট্যাক** করুন এবং সেগুলোকে একটি শ্রেণি নিরীক্ষণে যোগান দিন । -এখন কন্টেন্টের বৃহত্তম কার্যকর আকার, যা পুনরায় আকারিত চিত্রের ১/৪ থেকে আসে, তা হচ্ছে ১৮৪ x ১৮৪ (৪৬ x ৪ = ১৮৪ ) । +এখন কন্টেন্টের বৃহত্তম কার্যকর আকার, যা পুনরায় আকারিত চিত্রের ১/৪ থেকে আসে, তা হচ্ছে $184\times 184\, (46\times 4=184)$ । **পারফরম্যান্স**: কোনও পোস্ট-প্রসেসিং এবং ফ্রেম-বাই-ফ্রেম চালিত না করে, মডেলটি স্ট্যান্ডার্ড হার্ডওয়্যারেও খুব দ্রুত চলে । এটির পরিবর্তে ছোট আকারের প্রশিক্ষণের ডেটা রয়েছে (2k ~ 3k ), তবে ফলাফল এখনও রেকর্ড-ব্রেকিং। From 476459bccbb0cdcafd5d32c0302ceb67d4a23ac9 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:18:52 +0600 Subject: [PATCH 19/35] week6-1 final updated --- docs/bn/week06/06-1.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index ed04b95db..e40eca545 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -43,7 +43,7 @@ translator: Mahbuba Tasmin ## [মুখাবয়ব সনাক্তকরণ](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) -কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে ৩০ x ৩০ পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি ৩০x৩০ পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ +কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে 30 $\times 30 পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি 30 $\times 30 পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ @@ -130,7 +130,7 @@ translator: Mahbuba Tasmin **মডেল আউটপুট ** (চিত্র ৪ , কলাম 3) -মডেলটি **দিগন্ত পর্যন্ত**s চিত্রটিতে প্রতিটি পিক্সেলের জন্য একটি লেবেল আউটপুট দেয়। এগুলি একটি একাধিক-স্কেলের কনভলিউশনাল নেটওয়ার্কের শ্রেণিবদ্ধ আউটপুট। +মডেলটি **দিগন্ত পর্যন্ত** চিত্রটিতে প্রতিটি পিক্সেলের জন্য একটি লেবেল আউটপুট দেয়। এগুলি একটি একাধিক-স্কেলের কনভলিউশনাল নেটওয়ার্কের শ্রেণিবদ্ধ আউটপুট। * **মডেল কীভাবে অভিযোজিত হয়ে ওঠে**: রোবটগুলির স্টেরিও লেবেলগুলিতে অবিচ্ছিন্ন অ্যাক্সেস রয়েছে যা নেটওয়ার্কটিকে পুনরায় প্রশিক্ষণের অনুমতি দেয় এবং এটির মধ্যে নতুন পরিবেশের সাথে খাপ খায়। দয়া করে নোট করুন যে কেবলমাত্র নেটওয়ার্কের শেষ স্তরটিকে পুনরায় প্রশিক্ষণ দেওয়া হবে। পূর্ববর্তী স্তরগুলি ল্যাবে প্রশিক্ষিত এবং স্থায়ী হয়। @@ -155,7 +155,7 @@ translator: Mahbuba Tasmin

-চিত্র ৬। বহু-স্কেল CNN দ্বারা দৃশ্য বিশ্লেষণ +চিত্র ৬: বহু-স্কেল CNN দ্বারা দৃশ্য বিশ্লেষণ
@@ -166,10 +166,10 @@ translator: Mahbuba Tasmin **মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে।** নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় - -3. **Upsample** these features so that they have the same size as the Level 2 Features of the original image. -4. **Stack** the three sets of (upsampled) features together and feed them to a classifier.--> + + + + ১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। ২ . এই দুটি অতিরিক্ত পুনরুদ্ধার করা চিত্র **একই কনভনেট**(একই ওজন, একই কার্নেল) যোগান দেয়া হয় এবং আমরা স্তর-২ বৈশিষ্ট্যের আরও দুটি সেট পাই। From ea8e82ff035ee9ea9e9c11bf3b790b43ce9f7cb3 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:21:23 +0600 Subject: [PATCH 20/35] week6-1 points fixed --- docs/bn/week06/06-1.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index e40eca545..0f7bb1d83 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -120,7 +120,7 @@ translator: Mahbuba Tasmin

-চিত্র ৫। দূরত্ব-স্বাভাবিককরণের চিত্রের জন্য স্কেল-ইনভেরিয়েন্ট পিরামিড +চিত্র ৫: দূরত্ব-স্বাভাবিককরণের চিত্রের জন্য স্কেল-ইনভেরিয়েন্ট পিরামিড
@@ -164,13 +164,12 @@ translator: Mahbuba Tasmin তবে, কখনও কখনও বৃহত্তর অবজেক্টের জন্য বিভাগ নির্ধারণের জন্য এই প্রসঙ্গের আকারটি যথেষ্ট নয়। -**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে।** নিম্নরূপ পদক্ষেপ অনুসরণ করা হয় - +**মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে।** নিম্নরূপ পদক্ষেপ অনুসরণ করা হয়: ১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। ২ . এই দুটি অতিরিক্ত পুনরুদ্ধার করা চিত্র **একই কনভনেট**(একই ওজন, একই কার্নেল) যোগান দেয়া হয় এবং আমরা স্তর-২ বৈশিষ্ট্যের আরও দুটি সেট পাই। ৩ .এই বৈশিষ্ট্যগুলিকে **প্রবর্ধন** করুন যাতে তাদের মূল চিত্রের স্তর 2 বৈশিষ্ট্যগুলির সমান আকার থাকে। From 0abfb49898f0f7c6218df4283abd3188f21dec56 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:23:05 +0600 Subject: [PATCH 21/35] week6-1 points fixed --- docs/bn/week06/06-1.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index 0f7bb1d83..dcf8ca785 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -170,9 +170,13 @@ translator: Mahbuba Tasmin **মাল্টিস্কেল পদ্ধতিটি অতিরিক্ত উদ্ধারকৃত চিত্রগুলি ইনপুট হিসাবে সরবরাহ করে একটি বিস্তৃত দৃষ্টি সক্ষম করে।** নিম্নরূপ পদক্ষেপ অনুসরণ করা হয়: + ১. একই চিত্রটি নিন, এটি ২ এবং ২ এর ফ্যাক্টর দ্বারা আলাদা ভাবে সংকুচিত করুন। + ২ . এই দুটি অতিরিক্ত পুনরুদ্ধার করা চিত্র **একই কনভনেট**(একই ওজন, একই কার্নেল) যোগান দেয়া হয় এবং আমরা স্তর-২ বৈশিষ্ট্যের আরও দুটি সেট পাই। -৩ .এই বৈশিষ্ট্যগুলিকে **প্রবর্ধন** করুন যাতে তাদের মূল চিত্রের স্তর 2 বৈশিষ্ট্যগুলির সমান আকার থাকে। + +৩ . এই বৈশিষ্ট্যগুলিকে **প্রবর্ধন** করুন যাতে তাদের মূল চিত্রের স্তর 2 বৈশিষ্ট্যগুলির সমান আকার থাকে। + ৪ . তিনটি সেট (আপস্যাম্পলড) বৈশিষ্ট্য একসাথে **স্ট্যাক** করুন এবং সেগুলোকে একটি শ্রেণি নিরীক্ষণে যোগান দিন । From 942958d7f19392d1584d8642445a85e33f7ce79a Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:34:36 +0600 Subject: [PATCH 22/35] Week6-2 updated english leftovers. --- docs/bn/week06/06-2.md | 74 +++++++++++++++++++++--------------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index b9d74c935..d3a0472be 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -10,23 +10,23 @@ translator: Mahbuba Tasmin --- -## [Deep Learning Architectures](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) -##[ডিপ লার্নিং আর্কিটেকচার] (https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) + +## [ডিপ লার্নিং আর্কিটেকচার] (https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) ডিপ লার্নিং এর আওতায় , বিভিন্ন কার্যকারিতা উপলব্ধি করার জন্য বিভিন্ন মডিউল রয়েছে। ডিপ লার্নিং এর দক্ষতার মধ্যে নির্দিষ্ট কাজগুলি সম্পন্ন করার জন্য আর্কিটেকচার ডিজাইন করা জড়িত। আগের দিনগুলিতে কম্পিউটারকে নির্দেশনা দেওয়ার জন্য অ্যালগরিদমের সাথে প্রোগ্রাম লেখার অনুরূপ, ডিপ লার্নিং একটি জটিল ক্রিয়াকে ফাংশনাল মডিউলগুলির (সম্ভবত গতিশীল) একটি গ্রাফের মধ্যে হ্রাস করে, যার ক্রিয়াগুলি মডেলের শেখার মাধ্যমে চূড়ান্ত হয়। কনভলিউশনাল নেটওয়ার্কগুলির সাথে আমরা যা দেখেছি, তার মতো নেটওয়ার্ক আর্কিটেকচার গুরুত্বপূর্ণ। -## Recurrent Networks -##রিকারেন্ট নেটওয়ার্ক সমূহ + +## রিকারেন্ট নেটওয়ার্ক সমূহ কনভলিউশনাল নিউরাল নেটওয়ার্কে মডিউলগুলির মধ্যে গ্রাফ বা আন্তঃসংযোগগুলির লুপগুলি থাকতে পারে না। মডিউলগুলির মধ্যে কমপক্ষে একটি আংশিক ক্রম বিদ্যমান রয়েছে যেমন আমরা আউটপুটগুলো গণনা করলে ইনপুটগুলি পাওয়া যায়। চিত্র ১ -এ দেখানো হয়েছে, রিকারেন্ট নিউরাল নেটওয়ার্কগুলিতে লুপ রয়েছে।

- +চিত্র ১: রোল সহকারে রিকারেন্ট নিউরাল নেটওয়ার্ক
@@ -47,16 +47,16 @@ translator: Mahbuba Tasmin - $\text{Dec}(z(t))$: ডিকোডার যা একটি আউটপুট উত্পন্ন করে -## Recurrent Networks: Unroll the loop -##রিকারেন্ট নেটওয়ার্ক: লুপটি আনরোল করুন + +## রিকারেন্ট নেটওয়ার্ক: লুপটি আনরোল করুন সময়মতো লুপটি আনরোল করুন। ইনপুটটি একটি ক্রম $x_1, x_2, ..., x_T$ অনুসরণ করে।
"
- +চিত্র ২: আনরোলড লুপের সাথে রিকারেন্ট নেটওয়ার্কগুলো
@@ -70,16 +70,16 @@ translator: Mahbuba Tasmin চিত্র-২ এ একটি নির্দিষ্ট বৈশিষ্ট্যযুক্ত একটি নিয়মিত নেটওয়ার্ক দেখায়: প্রতিটি ব্লক একই পরিমাণ গুরুত্ব বহন করে। তিনটি এনকোডার, ডিকোডার এবং G ফাংশনগুলির যথাক্রমে বিভিন্ন সময় ধাপে একই গুরুত্ব বহন করে। BPTT : সময়ের সাথে ব্যাকপ্রপ। দুর্ভাগ্যক্রমে, BPTT naive-RNN এর সাথে এত ভাল কাজ করে না। - RNN এর সাথে সম্পর্কিত সমস্যাগুলোঃ -১। বিলীয়মান গ্র্যাডিয়েন্ট - - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। +১। বিলীয়মান গ্র্যাডিয়েন্ট + - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। -২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট - -যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। +২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট + - যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। @@ -89,11 +89,11 @@ RNN ব্যবহার করার একটি কারণ হচ্ছে বিলীয়মান গ্র্যাডিয়েন্ট সমস্যা সম্পর্কিত একটি উদাহরণ: -ইনপুটটি হল সি প্রোগ্রামের একটি অক্ষর। সিস্টেমটি এটি বলবে যে এটি একটি গঠনগত ভাবে সঠিক প্রোগ্রাম কিনা। একটি সঠিক সংগঠিত প্রোগ্রামে ব্রেসসমূহ (ধনুর্বন্ধনী) এবং বন্ধনীগুলির একটি বৈধ সংখ্যক হওয়া উচিত। সুতরাং, নেটওয়ার্কটিকে মনে রাখতে হবে যে সেখানে পরীক্ষণীয় কতগুলো খালি বন্ধনী এবং ব্রেস আছে এবং আমরা সেসব গুলোকে বন্ধ করেছি কিনা। নেটওয়ার্ককে একটি কাউন্টারের মতো লুকানো স্টেটে এই জাতীয় তথ্য সংরক্ষণ করতে হয়। তবে গ্র্যাডিয়েন্টগুলো বিলীয়মান হওয়ার কারণে নেটওয়ার্কটি একটি দীর্ঘ প্রোগ্রামে এ জাতীয় তথ্য সংরক্ষণ করতে ব্যর্থ হবে। +ইনপুটটি হল একটি সি প্রোগ্রাম থেকে নেয়া অংশসমূহ। সিস্টেমটি এটি বলবে যে এটি একটি গঠনগত ভাবে সঠিক প্রোগ্রাম কিনা। একটি সঠিক সংগঠিত প্রোগ্রামে ব্রেসসমূহ (ধনুর্বন্ধনী) এবং বন্ধনীগুলির একটি বৈধ সংখ্যক হওয়া উচিত। সুতরাং, নেটওয়ার্কটিকে মনে রাখতে হবে যে সেখানে পরীক্ষণীয় কতগুলো খালি বন্ধনী এবং ব্রেস আছে এবং আমরা সেসব গুলোকে বন্ধ করেছি কিনা। নেটওয়ার্ককে একটি কাউন্টারের মতো লুকানো স্টেটে এই জাতীয় তথ্য সংরক্ষণ করতে হয়। তবে গ্র্যাডিয়েন্টগুলো বিলীয়মান হওয়ার কারণে নেটওয়ার্কটি একটি দীর্ঘ প্রোগ্রামে এ জাতীয় তথ্য সংরক্ষণ করতে ব্যর্থ হবে। -## RNN Tricks -## RNN কৌশলগুলোঃ + +## RNN এর কৌশলগুলোঃ - ক্লিপিং গ্র্যাডিয়েন্ট: (এক্সপ্লোডিং গ্র্যাডিয়েন্ট এড়ানো) @@ -105,7 +105,7 @@ RNN ব্যবহার করার একটি কারণ হচ্ছে মডেলের নর্ম কিছু পরিমাণে অক্ষুণ্ণ রাখতে ওয়েট ম্যাট্রিক্স গুলো সূচনা করুন । উদাহরণস্বরূপ, সমকোণীয় সূচনাটি ওয়েট ম্যাট্রিক্সকে এলোমেলো ধরণের অর্থোগোনাল ম্যাট্রিক্স হিসাবে আরম্ভ করে। -## Multiplicative Modules + ## গুণক মডিউল গুণগত মডিউলগুলিতে কেবল ইনপুটগুলোর একটি ওয়েটেড সাম গণনা করার পরিবর্তে, আমরা ইনপুটগুলির গুণফল গুলো গণনা করি এবং তারপরে ওয়েটেড সাম গণনা করি। @@ -147,7 +147,7 @@ x_n\\ \end{pmatrix} $$ - যেখানে $s_i = w_{i}^\top x = \sum_j w_{ij}x_j$। @@ -155,8 +155,8 @@ $$ হাইপারনেটওয়ার্ক আর্কিটেকচার: ওয়েটগুলো অন্য একটি নেটওয়ার্ক দ্বারা গণনা করা হয়। -## Attention -##অ্যাটেনশন + +## অ্যাটেনশন $x_1$ এবং $x_2$ ভেক্টর, $w_1$ এবং $w_2$ সফটম্যাক্সের পরে স্কেলারসমূহ যেখানে $w_1 + w_2 = 1$, এবং $w_1$ এবং $w_2$ রয়েছে 0 এবং 1 এর মধ্যে। @@ -170,17 +170,17 @@ $W_1$ এবং $w_2$ এর আপেক্ষিক আকার পরিব ট্রান্সফরমার আর্কিটেকচার বা অন্যান্য ধরণের অ্যাটেনশন পদ্ধতি ব্যবহার করে এমন NLP প্রক্রিয়াগুলোতে অ্যাটেনশন ক্রমশ গুরুত্বপূর্ণ হয়ে উঠছে। -ওয়েটসমূহ ডেটা থেকে স্বতন্ত্র কারণ z ডেটা স্বতন্ত্র। +ওয়েটসমূহ ডেটা থেকে স্বতন্ত্র কারণ Z ডেটা থেকে স্বতন্ত্র। -## [Gated Recurrent Units (GRU)](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=3549s) -## গেটেড রিকারেন্ট ইউনিটসমূহ + +## [গেটেড রিকারেন্ট ইউনিটসমূহ] (https://www.youtube.com/watch?v=ycbMGyCPzvE&t=3549s) উপরে উল্লিখিত বর্ণ্নামতে, RNN -এ বিলীয়মান/এক্সপ্লোডিং গ্র্যাডিয়েন্টের সমস্যা বিদ্যমান এবং দীর্ঘ সময় স্টেটসমূহ মনে রাখতে অপারগ। GRU, [Cho, 2014](https://arxiv.org/abs/1406.1078), এই সমস্যাগুলো সমাধান করতে চেষ্টা করা গুণক মডিউলগুলির একটি অ্যাপ্লিকেশন। এটি মেমরির সাথে রিকারেন্ট নেটের একটি উদাহরণ (অন্যটি LSTM)। একটি GRU ইউনিটের কাঠামো নীচে প্রদর্শিত হবে:

-চিত্র ৩। গেটেড রিকারেন্ট ইউনিট +চিত্র ৩: গেটেড রিকারেন্ট ইউনিট
$$ @@ -198,7 +198,7 @@ $$ রিসেট গেট $r_t$ অতীতের তথ্যকে কতটা ভুলে যেতে হবে তার সিদ্ধান্ত নিতে ব্যবহৃত হয়। নতুন মেমরি কনটেন্টে $phi_h(W_hx_t + U_h (r_t \ odot h_ {t-1}) + b_h)$, যদি $r_t$ এর সহগ 0 হয় তবে এটি অতীতের কোনও তথ্যই সঞ্চয় করে না। যদি একই সময়ে $z_t$ এর মাণ 0 হয়, তবে সিস্টেমটি পুরোপুরি পুনরায় সেট করা হয় যেহেতু $h_t$ কেবল ইনপুটকে দেখবে। -## LSTM (Long Short-Term Memory) + ## LSTM (লং শর্ট - টার্ম মেমরি) GRU আসলে LSTM এর একটি সরলিকৃত সংস্করণ যা অনেক আগে প্রকাশিত হয়েছিল, [Hochreiter, Schmidhuber, 1997](https://www.bioinf.jku.at/publications/older/2604.pdf)। অতীত তথ্য সংরক্ষণের জন্য মেমরি সেল তৈরি করার পাশাপাশি, LSTM লক্ষ্য করে RNN গুলোতে দীর্ঘমেয়াদী মেমরির হ্রাসের সমস্যাগুলি সমাধান করতে। LSTM এর কাঠামো নিচে প্রদর্শিত হয়েছে: @@ -206,7 +206,7 @@ GRU আসলে LSTM এর একটি সরলিকৃত সংস্ক

-চিত্র ৪। LSTM +চিত্র ৪: LSTM
$$ @@ -228,14 +228,14 @@ $$ যদিও LSTM NLPতে ব্যাপকভাবে ব্যবহৃত হয়, তবে তাদের জনপ্রিয়তা হ্রাস পাচ্ছে। উদাহরণস্বরূপ, স্পিচ রিকগনিশন অস্থায়ী সিএনএন ব্যবহারের দিকে এগিয়ে চলেছে, এবং NLP ট্রান্সফর্মারগুলো ব্যবহার করার দিকে এগিয়ে চলেছে। -## Sequence to Sequence Model -## সিকোয়েন্স -টু - সিকোয়েন্স মডেল + +## সিকোয়েন্স -টু - সিকোয়েন্স মডেল [Sutskever NIPS 2014] দ্বারা প্রস্তাবিত পদ্ধতিটির কর্মক্ষমতা হচ্ছে ক্লাসিক পদ্ধতির সাথে তুলনাযোগ্য প্রথম নিউরাল মেশিন অনুবাদ সিস্টেম(https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) । এটি একটি এনকোডার-ডিকোডার আর্কিটেকচার ব্যবহার করে যেখানে এনকোডার এবং ডিকোডার উভয়ই বহু-স্তরযুক্ত LSTM ।

-চিত্র ৫। সিক-টু-সিক +চিত্র ৫: সিক-টু-সিক
@@ -245,7 +245,7 @@ $$ এই আর্কিটেকচারটি দুটি উপায়ে পরিপূর্ণ নয়: প্রথমত, বাক্যটির পুরো অর্থ এনকোডার এবং ডিকোডারের মধ্যে হিডেন স্টেটে ছড়িয়ে দিতে হবে। দ্বিতীয়ত, LSTM প্রকৃতপক্ষে প্রায় 20 টিরও বেশি শব্দের জন্য তথ্য সংরক্ষণ করে না। এই সমস্যার সমাধানটিকে Bi-LSTM বলা হয়, যা দুটি LSTM বিপরীত দিকে চালিত করে। Bi-LSTM -এর অর্থ দুটি ভেক্টরগুলোতে এনকোড করা থাকে, একটি বাম থেকে ডানে LSTM চালিয়ে আর অন্যটি ডান থেকে বামে উত্পন্ন হয়। এটি খুব বেশি তথ্য না হারিয়ে বাক্যটির দৈর্ঘ্য দ্বিগুণ করার সুযোগ তৈরি করে। -## Seq2seq with Attention + ## অ্যাটেনশনের সাথে সিক-টু-সিক @@ -253,7 +253,7 @@ $$

-চিত্র ৬। অ্যাটেনশনের সাথে সিক-টু-সিক +চিত্র ৬: অ্যাটেনশনের সাথে সিক-টু-সিক
@@ -261,8 +261,8 @@ $$ অ্যাটেনশন পদ্ধতি সম্পূর্ণরূপে নিউরাল মেশিন অনুবাদকে রূপান্তরিত করে। পরবর্তীতে, গুগল একটি প্রবন্ধ প্রকাশ করেছে [*Attention Is All You Need*](https://arxiv.org/abs/1706.03762), এবং তারা ট্রান্সফর্মার রেখেছিল, যেখানে প্রতিটি স্তর এবং নিউরনের সমষ্টি অ্যাটেনশন প্রয়োগ করেছে। -## [Memory network](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=4575s) -## মেমরি নেটওয়ার্ক + +## [মেমরি নেটওয়ার্ক](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=4575s) মেমোরি নেটওয়ার্কগুলি ফেসবুকে এমন কাজ থেকে শুরু হয়েছে যা ২০১৪ সালে [Antoine Bordes](https://arxiv.org/abs/1410.3916) এবং [Sainbayar Sukhbaatar](https://arxiv.org/abs/1503.08895) দ্বারা ২০১৫ সালে শুরু হয়েছিল । @@ -274,7 +274,7 @@ $$

-চিত্র ৭। মেমরি নেটওয়ার্ক +চিত্র ৭:মেমরি নেটওয়ার্ক
@@ -298,7 +298,7 @@ $$
-চিত্র ৮। মেমরি নেটওয়ার্ক এবং কম্পিউটারের তুলনা +চিত্র ৮: মেমরি নেটওয়ার্ক এবং কম্পিউটারের তুলনা
From 068b6e04dda65f531d0d99f86179ecdb61a736a9 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:47:31 +0600 Subject: [PATCH 23/35] week6-2 modified. --- docs/bn/week06/06-2.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index d3a0472be..4301b8d5c 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -11,7 +11,7 @@ translator: Mahbuba Tasmin -## [ডিপ লার্নিং আর্কিটেকচার] (https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) +## [ডিপ লার্নিং আর্কিটেকচার](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=2620s) ডিপ লার্নিং এর আওতায় , বিভিন্ন কার্যকারিতা উপলব্ধি করার জন্য বিভিন্ন মডিউল রয়েছে। ডিপ লার্নিং এর দক্ষতার মধ্যে নির্দিষ্ট কাজগুলি সম্পন্ন করার জন্য আর্কিটেকচার ডিজাইন করা জড়িত। আগের দিনগুলিতে কম্পিউটারকে নির্দেশনা দেওয়ার জন্য অ্যালগরিদমের সাথে প্রোগ্রাম লেখার অনুরূপ, ডিপ লার্নিং একটি জটিল ক্রিয়াকে ফাংশনাল মডিউলগুলির (সম্ভবত গতিশীল) একটি গ্রাফের মধ্যে হ্রাস করে, যার ক্রিয়াগুলি মডেলের শেখার মাধ্যমে চূড়ান্ত হয়। @@ -63,7 +63,7 @@ translator: Mahbuba Tasmin চিত্র ২ -এ ইনপুটটি $ x_1, x_2, x_3 $ । -সময় t = 0 চলাকালীন সময়, ইনপুট $x(0$) টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w) $উদ্ভূত করতে। সময় $T=0$ এ, $G$ এ $z$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। +সময় t = 0 চলাকালীন সময়, ইনপুট $x(0$) টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w)$ কে উদ্ভূত করতে। সময় $T=0$ এ, $G$ এ $z$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। যেহেতু এই নেটওয়ার্কটিতে কোনও লুপ নেই, এবং আমরা ব্যাক প্রোপাগেশন বাস্তবায়ন করতে পারি। @@ -72,13 +72,16 @@ translator: Mahbuba Tasmin BPTT : সময়ের সাথে ব্যাকপ্রপ। দুর্ভাগ্যক্রমে, BPTT naive-RNN এর সাথে এত ভাল কাজ করে না। RNN এর সাথে সম্পর্কিত সমস্যাগুলোঃ + ১। বিলীয়মান গ্র্যাডিয়েন্ট - - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। + + - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। ২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট + - যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। @@ -173,7 +176,7 @@ $W_1$ এবং $w_2$ এর আপেক্ষিক আকার পরিব ওয়েটসমূহ ডেটা থেকে স্বতন্ত্র কারণ Z ডেটা থেকে স্বতন্ত্র। -## [গেটেড রিকারেন্ট ইউনিটসমূহ] (https://www.youtube.com/watch?v=ycbMGyCPzvE&t=3549s) +## [গেটেড রিকারেন্ট ইউনিটসমূহ (GRU)](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=3549s) উপরে উল্লিখিত বর্ণ্নামতে, RNN -এ বিলীয়মান/এক্সপ্লোডিং গ্র্যাডিয়েন্টের সমস্যা বিদ্যমান এবং দীর্ঘ সময় স্টেটসমূহ মনে রাখতে অপারগ। GRU, [Cho, 2014](https://arxiv.org/abs/1406.1078), এই সমস্যাগুলো সমাধান করতে চেষ্টা করা গুণক মডিউলগুলির একটি অ্যাপ্লিকেশন। এটি মেমরির সাথে রিকারেন্ট নেটের একটি উদাহরণ (অন্যটি LSTM)। একটি GRU ইউনিটের কাঠামো নীচে প্রদর্শিত হবে: @@ -231,7 +234,7 @@ $$ ## সিকোয়েন্স -টু - সিকোয়েন্স মডেল -[Sutskever NIPS 2014] দ্বারা প্রস্তাবিত পদ্ধতিটির কর্মক্ষমতা হচ্ছে ক্লাসিক পদ্ধতির সাথে তুলনাযোগ্য প্রথম নিউরাল মেশিন অনুবাদ সিস্টেম(https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) । এটি একটি এনকোডার-ডিকোডার আর্কিটেকচার ব্যবহার করে যেখানে এনকোডার এবং ডিকোডার উভয়ই বহু-স্তরযুক্ত LSTM । +[Sutskever NIPS 2014](https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf) দ্বারা প্রস্তাবিত পদ্ধতিটির কর্মক্ষমতা হচ্ছে ক্লাসিক পদ্ধতির সাথে তুলনাযোগ্য প্রথম নিউরাল মেশিন অনুবাদ সিস্টেম। এটি একটি এনকোডার-ডিকোডার আর্কিটেকচার ব্যবহার করে যেখানে এনকোডার এবং ডিকোডার উভয়ই বহু-স্তরযুক্ত LSTM ।

@@ -249,7 +252,7 @@ $$ ## অ্যাটেনশনের সাথে সিক-টু-সিক -উপরোক্ত পদ্ধতির সাফল্য স্বল্পস্থায়ী ছিল। [Bahdanau, Cho, Bengio] এর অন্য একটি পেপার (https://arxiv.org/abs/1409.0473) পরামর্শ দিয়েছে যে একটি বিশাল নেটওয়ার্কে পুরো বাক্যটির অর্থ একটি ভেক্টর হিসাবে চেপে রাখার পরিবর্তে এটি আরও অর্থপূর্ণ হবে যদি প্রতিবারের পদক্ষেপে আমরা কেবলমাত্র সমান অর্থের সাথে মূল ভাষার প্রাসঙ্গিক অবস্থানগুলিতে মনোযোগ নিবদ্ধ করি,অর্থাৎ অ্যাটেনশন পদ্ধতি ব্যবহার করি। +উপরোক্ত পদ্ধতির সাফল্য স্বল্পস্থায়ী ছিল। [Bahdanau, Cho, Bengio](https://arxiv.org/abs/1409.0473) এর অন্য একটি পেপার পরামর্শ দিয়েছে যে একটি বিশাল নেটওয়ার্কে পুরো বাক্যটির অর্থ একটি ভেক্টর হিসাবে চেপে রাখার পরিবর্তে এটি আরও অর্থপূর্ণ হবে যদি প্রতিবারের পদক্ষেপে আমরা কেবলমাত্র সমান অর্থের সাথে মূল ভাষার প্রাসঙ্গিক অবস্থানগুলিতে মনোযোগ নিবদ্ধ করি,অর্থাৎ অ্যাটেনশন পদ্ধতি ব্যবহার করি।

@@ -298,10 +301,10 @@ $$
-চিত্র ৮: মেমরি নেটওয়ার্ক এবং কম্পিউটারের তুলনা +চিত্র ৮: মেমরি নেটওয়ার্ক এবং কম্পিউটারের তুলনা (ছবি কৃতজ্ঞতা Khan Acadamy)
-এমন লোকেরা আছেন যারা কল্পনা করেন যে আপনি এটির বাইরে ** পার্থক্যযোগ্য কম্পিউটার ** তৈরি করতে পারবেন। এর একটি উদাহরণ হ'ল ডিপমাইন্ডের [Neural Touring Machine] (https://arxiv.org/abs/1410.5401), যা ফেসবুকের পেপারটি arXivতে প্রকাশিত হওয়ার তিন দিন পরে প্রকাশ করা হয়েছিল। +এমন লোকেরা আছেন যারা কল্পনা করেন যে আপনি এটির বাইরে ** পার্থক্যযোগ্য কম্পিউটার ** তৈরি করতে পারবেন। এর একটি উদাহরণ হ'ল ডিপমাইন্ডের [Neural Touring Machine](https://arxiv.org/abs/1410.5401), যা ফেসবুকের পেপারটি arXivতে প্রকাশিত হওয়ার তিন দিন পরে প্রকাশ করা হয়েছিল। ধারণাটি হল কী-গুলির সাথে ইনপুটগুলি তুলনা করা, সহগ তৈরি করা এবং মানগুলি উত্পাদন করা - যা মূলত ট্রান্সফর্মারের কাজ। একটি ট্রান্সফর্মার মূলত একটি নিউরাল নেট যেখানে প্রতিটি নিউরনের গ্রুপ এই নেটওয়ার্কগুলির মধ্যে একটি। From 69439a09ac6da57f52bec5ceae61ed9f73e086cf Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:49:48 +0600 Subject: [PATCH 24/35] week6-2 points fixed --- docs/bn/week06/06-2.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index 4301b8d5c..e13f3ddb0 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -76,15 +76,12 @@ RNN এর সাথে সম্পর্কিত সমস্যাগুল ১। বিলীয়মান গ্র্যাডিয়েন্ট - - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। ২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট - - যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। - RNN ব্যবহার করার একটি কারণ হচ্ছে অতীতের তথ্য মনে রাখার সুবিধা। যাইহোক, সাধারণ একটি RNN কোন কৌশল ছাড়া অনেক আগের তথ্য মুখস্থ করতে ব্যর্থ হতে পারে। From 312505d894a0ad885f9dd72a44c2cf602ed88ffe Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:52:15 +0600 Subject: [PATCH 25/35] week6-2 pointing fixed --- docs/bn/week06/06-2.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index e13f3ddb0..bb0e7d75f 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -73,14 +73,16 @@ BPTT : সময়ের সাথে ব্যাকপ্রপ। দুর RNN এর সাথে সম্পর্কিত সমস্যাগুলোঃ + +১. বিলীয়মান গ্র্যাডিয়েন্ট + - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। +২. এক্সপ্লোডিং গ্র্যাডিয়েন্ট + - যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। + -১। বিলীয়মান গ্র্যাডিয়েন্ট - - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। -২। এক্সপ্লোডিং গ্র্যাডিয়েন্ট - - যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। RNN ব্যবহার করার একটি কারণ হচ্ছে অতীতের তথ্য মনে রাখার সুবিধা। যাইহোক, সাধারণ একটি RNN কোন কৌশল ছাড়া অনেক আগের তথ্য মুখস্থ করতে ব্যর্থ হতে পারে। From 68e7cae88a7f67548c39e3cff988e52a817eed5a Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 12:53:12 +0600 Subject: [PATCH 26/35] week6-2 points fixed --- docs/bn/week06/06-2.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index bb0e7d75f..f2fe39b45 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -76,6 +76,7 @@ RNN এর সাথে সম্পর্কিত সমস্যাগুল ১. বিলীয়মান গ্র্যাডিয়েন্ট - দীর্ঘ ক্রমে, গ্র্যাডিয়েন্টগুলি প্রতি সময়ধাপে ওয়েট ম্যাট্রিক্স (পক্ষান্তরিত) দ্বারা গুণিত হয়। ওয়েট ম্যাট্রিক্সে যদি ছোট মান থাকে তবে গ্র্যাডিয়েন্টের নর্মটি তাৎপর্যপূর্ণভাবে ক্রমান্বয়ে ছোট হতে থাকে। + ২. এক্সপ্লোডিং গ্র্যাডিয়েন্ট - যদি একটি বড় ওয়েট ম্যাট্রিক্স থাকে এবং পুনরাবৃত্ত স্তরগুলোর নন-লিনিয়ারিটি বৈশিষ্ট্য পরিপৃক্ত (স্যাচুরেটিং) না হয় তবে গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হবে। ওয়েটস গুলো আপডেটের ধাপে বিভক্ত হবে। গ্র্যাডিয়েন্ট-ডিসেন্ট কাজের জন্য আমাদের একটি ছোট লার্নিং রেট ব্যবহার করতে হতে পারে। From 6c3048d0fecbc529a7ebe97226d41f436184f7c4 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:03:42 +0600 Subject: [PATCH 27/35] week6-3 updated --- docs/bn/week06/06-3.md | 44 +++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index a1fd7f2f1..8eed38d30 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -10,13 +10,13 @@ translator: Mahbuba Tasmin --- -## [Overview](https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) -## সার্বিক পরিদর্শন (https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) + +## [সার্বিক পরিদর্শন] (https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) আরএনএন হল এক ধরণের আর্কিটেকচার যা আমরা ব্যবহার করতে পারি ডেটা সিক্যুয়েন্সগুলি নিয়ে কাজ করতে। ক্রম কি? সিএনএন পাঠ থেকে আমরা শিখেছি যে ডোমেনের উপর নির্ভর করে একটি সংকেত 1D, 2D বা 3D হতে পারে। আপনি কী থেকে ম্যাপিং করছেন এবং আপনি কী ম্যাপিং করছেন তা দ্বারা ডোমেনটি সংজ্ঞায়িত করা হয়। অনুক্রমিক ডেটা হ্যান্ডলিং মূলত 1D ডেটা নিয়ে কাজ করে যেহেতু ডোমেনটি অস্থায়ী অক্ষ হয়। তবুও, আপনি 2 ডি ডেটা ব্যবহার করতে আরএনএন ব্যবহার করতে পারেন, যেখানে আপনার দুটি দিক রয়েছে। -### Vanilla *vs.* Recurrent NN + ### ভ্যানিলা * বনাম। * রিকারেন্ট এনএন @@ -51,7 +51,7 @@ translator: Mahbuba Tasmin
-### Four types of RNN Architectures and Examples + ### চার ধরণের আরএনএন আর্কিটেকচার এবং উদাহরণ @@ -119,7 +119,7 @@ translator: Mahbuba Tasmin আমরা যদি জুম করি তবে আমরা দেখতে পাব যে একই অবস্থানটিতে জানুয়ারি এবং নভেম্বর এর মতো সমস্ত মাস রয়েছে।

-Figure 12: Zooming in Word Groups--> +--> চিত্র ১২ঃ শব্দ গুচ্ছে জুম করে দেখা
@@ -158,11 +158,11 @@ translator: Mahbuba Tasmin
-## [Back Propagation through time](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s) + ## সময়ের সাথে ব্যাক-প্রোপাগেশন -### Model architecture -### মডেল আর্কিটেকচার + +### মডেল আর্কিটেকচার আরএনএনকে প্রশিক্ষণের জন্য, সময়ের সাথে ব্যাক-প্রোপাগেশন (বিপিটিটি) অবশ্যই ব্যবহার করতে হবে। আরএনএন এর মডেল আর্কিটেকচারটি নীচের চিত্রে দেওয়া হয়েছে। বাম নকশাটি লুপের উপস্থাপনা ব্যবহার করে যখন ডান চিত্রটি সময়ের সাথে সাথে একটি সারিতে লুপটি প্রকাশ করে। @@ -203,7 +203,7 @@ $$ $y[t]$ চূড়ান্ত রোটেশনের সময় গণনা করা হয় এবং তারপরে আমরা ত্রুটিটিকে আগের সময়ের ধাপে ব্যাকপ্রোপাগেট করতে চেইন বিধিটি ব্যবহার করতে পারি। -### Batch-Ification in Language Modeling + ### ভাষা মডেলিংয়ে ব্যাচ-ইফিকেশন @@ -240,11 +240,11 @@ $$
-## Vanishing and Exploding Gradient + ###ভ্যানিশিং এবং এক্সপ্লোডিং গ্র্যাডিয়েন্ট -### Problem + ### সমস্যা

@@ -257,7 +257,7 @@ $$ সাধারণ আরএনএনগুলিতে, গ্র্যাডিয়েন্টগুলি সমস্ত সম্ভাব্য তীরগুলির মধ্য দিয়ে প্রোপাগেট করা হবে, যা গ্র্যাডিয়েন্টগুলি বিলুপ্ত বা এক্সপ্লোশনের একটি বৃহৎ সুযোগ তৈরি করে। উদাহরণস্বরূপ, সময় ধাপ ১-এর গ্র্যাডিয়েন্টটি বড়, যা উজ্জ্বল রঙ দ্বারা নির্দেশিত। যখন এটি একটি আবর্তনের মধ্য দিয়ে যায়, গ্র্যাডিয়েন্টটি অনেকগুলি সঙ্কুচিত হয় এবং সময়-৩ এ এটি শেষ হয়। -### Solution + ### সমাধান গ্র্যাডিয়েন্টগুলি এক্সপ্লোড হওয়া বা বিলীন হওয়া থেকে রক্ষা করার জন্য একটি আদর্শ হল সংযোগগুলি এড়িয়ে যাওয়া (স্কিপ কানেকশন)। এটি পূরণ করতে, একাধিক নেটওয়ার্ক ব্যবহার করা যেতে পারে। @@ -272,9 +272,9 @@ $$ এলএসটিএম হল একটি প্রচলিত গেটেড আরএনএন এবং নিম্নলিখিত বিভাগে বিস্তারিতভাবে চালু করা হয়েছে। -## [Long Short-Term Memory](https://www.youtube.com/watch?v=8cAffg2jaT0&t=1838s) -## লং শর্ট-টার্ম মেমরি -### Model Architecture + +## [লং শর্ট-টার্ম মেমরি] (https://www.youtube.com/watch?v=8cAffg2jaT0&t=1838s) + ### মডেল আর্কিটেকচার @@ -328,17 +328,17 @@ $$
-## Notebook Examples + ## নোটবুকের উদাহরণ সমূহ -### Sequence Classification + ### সিকোয়েন্স শ্রেণিবিন্যাস লক্ষ্যটি হচ্ছে ক্রম শ্রেণিবদ্ধ করা। উপাদান এবং লক্ষ্যগুলি স্থানীয়ভাবে প্রতিনিধিত্ব করা হয় (কেবলমাত্র একটি শূন্য বিটযুক্ত ইনপুট ভেক্টর)। ক্রমটি শুরু হয় একটি `B` দিয়ে , শেষ হয় একটি `E` দিয়ে ("ট্রিগার প্রতীক") এবং অন্যথায় সেট `{a, b, c, d}` থেকে এলোমেলোভাবে নির্বাচিত প্রতীকগুলি নিয়ে গঠিত হয় শুধুমাত্র $t_1 $ এবং $ t_2 $ পজিশনে দুটি উপাদান ছাড়া যা হয় `X` বা `Y` । ডিফিকাল্টি লেভেল.হার্ড ` এর ক্ষেত্রে , অনুক্রমের দৈর্ঘ্যটি এলোমেলোভাবে 100 এবং 110 এর মধ্যে বেছে নেওয়া হয়েছে, $ t_1$ এলোমেলোভাবে 10 এবং 20 এর মধ্যে এবং $ t_2 $ এলোমেলোভাবে 50 এবং 60 এর মধ্যে নির্বাচিত হয় ৪টি ক্রম শ্রেণি রয়েছে `Q`, `R`, `S`, এবং `U` যা `X` এবং` Y` এর অস্থায়ী আদেশের উপর নির্ভর করে ।বিধিগুলি হ'ল: `X, X -> Q`; `X, Y -> R`; `Y, X -> S`; `Y, Y -> U`। - +১)। ডেটাসেট এক্সপ্লোরেশন ডেটা জেনারেটর থেকে রিটার্ন টাইপটি দৈর্ঘ্য ২ এর একটি টাপল। টাপলটির প্রথম আইটেম হচ্ছে $(32,9,8)$ আকারের একাধিক ক্রমের একটি ব্যাচ । এই ডেটাটি নেটওয়ার্কে ব্যবহার করা হবে। প্রতিটি সারিতে আটটি পৃথক চিহ্ন রয়েছে (`X`,` Y`, `a`,` b`, `c`,` d`, `B`,` E`)। প্রতিটি সারি একটি ওয়ান-হট ভেক্টর। সারিগুলির একটি ক্রম প্রতীকগুলির ক্রমকে উপস্থাপন করে। প্রথম সমস্ত -শূন্য সারিটি প্যাডিং। যখন সিকোয়েন্সের দৈর্ঘ্য ব্যাচের সর্বোচ্চ দৈর্ঘ্যের চেয়ে কম হয় আমরা প্যাডিং ব্যবহার করি। টাপলে থাকা দ্বিতীয় আইটেমটি হল $(32, 4)$ আকৃতির শ্রেণি লেবেলের সাথে সম্পর্কিত ব্যাচ , যেহেতু আমাদের ৪টি শ্রেণি (`Q`, `R`, `S`, এবং `U`) রয়েছে । প্রথম অনুক্রমটি হল: `BbXcXcbE` । তারপরে এর ডিকোডেড শ্রেণীর লেবেলটি হল $[1, 0, 0, 0 ]$ , যা ` Q` এর সাথে সম্পর্কিত। @@ -350,8 +350,8 @@ $$
- +২)। সংজ্ঞায়িত মডেল এবং ট্রেইনিং একটি সাধারণ রিকারেন্ট নেটওয়ার্ক তৈরি করুন, একটি এলএসটিএম, এবং ১০ ইপোকের জন্য প্রশিক্ষণ দিন। ট্রেইনিং লুপে আমাদের সর্বদা পাঁচটি ধাপ সন্ধান করা উচিত: @@ -391,7 +391,7 @@ $$ উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X` (চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্যটি` X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় ` সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X` পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। -### Signal Echoing + ### সিগন্যাল প্রতিধ্বনি সিগন্যাল এন-স্টেপগুলি প্রতিধ্বনিত করা বহু-বহু-সংখ্যক কাজের সামঞ্জস্য বিধান করার একটি উদাহরণ। উদাহরণস্বরূপ, প্রথম ইনপুট ক্রমটি হ'ল "1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 ..."`, এবং প্রথম লক্ষ্য ক্রমটি `"0 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 ... "`। এই ক্ষেত্রে, আউটপুট তিন ধাপ পরে হয়। সুতরাং আমাদের তথ্য রাখতে প্রয়োজন একটি স্বল্প সময়ের সক্রিয় মেমরি। ভাষা মডেলটিতে, এটি এমন কিছু বলে যা ইতিমধ্যে বলা হয়নি। From 4509178e04f16bded9597af0f91e40b14fa230bb Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:21:28 +0600 Subject: [PATCH 28/35] week6-3 updated with english leftovers. --- docs/bn/week06/06-3.md | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index 8eed38d30..5e2e86af9 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -10,14 +10,14 @@ translator: Mahbuba Tasmin --- - -## [সার্বিক পরিদর্শন] (https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) +## [সার্বিক পরিদর্শন](https://www.youtube.com/watch?v=8cAffg2jaT0&t=21s) + আরএনএন হল এক ধরণের আর্কিটেকচার যা আমরা ব্যবহার করতে পারি ডেটা সিক্যুয়েন্সগুলি নিয়ে কাজ করতে। ক্রম কি? সিএনএন পাঠ থেকে আমরা শিখেছি যে ডোমেনের উপর নির্ভর করে একটি সংকেত 1D, 2D বা 3D হতে পারে। আপনি কী থেকে ম্যাপিং করছেন এবং আপনি কী ম্যাপিং করছেন তা দ্বারা ডোমেনটি সংজ্ঞায়িত করা হয়। অনুক্রমিক ডেটা হ্যান্ডলিং মূলত 1D ডেটা নিয়ে কাজ করে যেহেতু ডোমেনটি অস্থায়ী অক্ষ হয়। তবুও, আপনি 2 ডি ডেটা ব্যবহার করতে আরএনএন ব্যবহার করতে পারেন, যেখানে আপনার দুটি দিক রয়েছে। - -### ভ্যানিলা * বনাম। * রিকারেন্ট এনএন +### ভ্যানিলা *বনাম.* রিকারেন্ট এনএন + চিত্র-১ হল তিনটি স্তর সহ একটি ভ্যানিলা নিউরাল নেটওয়ার্কের ডায়াগ্রাম। "ভ্যানিলা" একটি আমেরিকান শব্দ যার অর্থ সমতল। গোলাপী বুদ্বুদ হল ইনপুট ভেক্টর X, এর মাঝখানে সবুজ রঙের মধ্যে হিডেন লেয়ার এবং চূড়ান্ত নীল স্তরটি আউটপুট। ডানদিকের ডিজিটাল ইলেকট্রনিক্স থেকে একটি উদাহরণ ব্যবহার করে, এটি একটি যৌথ যুক্তির মতো, যেখানে বর্তমান আউটপুট কেবলমাত্র বর্তমান ইনপুটটির উপর নির্ভর করে। @@ -55,7 +55,7 @@ translator: Mahbuba Tasmin ### চার ধরণের আরএনএন আর্কিটেকচার এবং উদাহরণ -প্রথম কেসটি সিকোয়েন্সের ভেক্টর। ইনপুটটি একটি বুদবুদ এবং তারপরে এই সবুজ বুদবুদ হিসাবে বর্ণিত সিস্টেমের অভ্যন্তরীণ অবস্থার বিবর্তন হবে। সিস্টেমের অবস্থা যেমন বিকশিত হয় ততবার প্রতিটি ধাপে একটি নির্দিষ্ট আউটপুট আ +প্রথম কেসটি সিকোয়েন্সের ভেক্টর। ইনপুটটি একটি বুদবুদ এবং তারপরে এই সবুজ বুদবুদ হিসাবে বর্ণিত সিস্টেমের অভ্যন্তরীণ অবস্থার বিবর্তন হবে। সিস্টেমের অবস্থা যেমন বিকশিত হয় ততবার প্রতিটি ধাপে একটি নির্দিষ্ট আউটপুট আসবে।

@@ -240,8 +240,7 @@ $$
- -###ভ্যানিশিং এবং এক্সপ্লোডিং গ্র্যাডিয়েন্ট +## ভ্যানিশিং এবং এক্সপ্লোডিং গ্র্যাডিয়েন্ট @@ -272,8 +271,7 @@ $$ এলএসটিএম হল একটি প্রচলিত গেটেড আরএনএন এবং নিম্নলিখিত বিভাগে বিস্তারিতভাবে চালু করা হয়েছে। - -## [লং শর্ট-টার্ম মেমরি] (https://www.youtube.com/watch?v=8cAffg2jaT0&t=1838s) +## [লং শর্ট-টার্ম মেমরি](https://www.youtube.com/watch?v=8cAffg2jaT0&t=1838s) ### মডেল আর্কিটেকচার @@ -336,7 +334,7 @@ $$ ### সিকোয়েন্স শ্রেণিবিন্যাস -লক্ষ্যটি হচ্ছে ক্রম শ্রেণিবদ্ধ করা। উপাদান এবং লক্ষ্যগুলি স্থানীয়ভাবে প্রতিনিধিত্ব করা হয় (কেবলমাত্র একটি শূন্য বিটযুক্ত ইনপুট ভেক্টর)। ক্রমটি শুরু হয় একটি `B` দিয়ে , শেষ হয় একটি `E` দিয়ে ("ট্রিগার প্রতীক") এবং অন্যথায় সেট `{a, b, c, d}` থেকে এলোমেলোভাবে নির্বাচিত প্রতীকগুলি নিয়ে গঠিত হয় শুধুমাত্র $t_1 $ এবং $ t_2 $ পজিশনে দুটি উপাদান ছাড়া যা হয় `X` বা `Y` । ডিফিকাল্টি লেভেল.হার্ড ` এর ক্ষেত্রে , অনুক্রমের দৈর্ঘ্যটি এলোমেলোভাবে 100 এবং 110 এর মধ্যে বেছে নেওয়া হয়েছে, $ t_1$ এলোমেলোভাবে 10 এবং 20 এর মধ্যে এবং $ t_2 $ এলোমেলোভাবে 50 এবং 60 এর মধ্যে নির্বাচিত হয় ৪টি ক্রম শ্রেণি রয়েছে `Q`, `R`, `S`, এবং `U` যা `X` এবং` Y` এর অস্থায়ী আদেশের উপর নির্ভর করে ।বিধিগুলি হ'ল: `X, X -> Q`; `X, Y -> R`; `Y, X -> S`; `Y, Y -> U`। +লক্ষ্যটি হচ্ছে ক্রম শ্রেণিবদ্ধ করা। উপাদান এবং লক্ষ্যগুলি স্থানীয়ভাবে প্রতিনিধিত্ব করা হয় (কেবলমাত্র একটি শূন্য বিটযুক্ত ইনপুট ভেক্টর)। ক্রমটি **শু**রু হয় একটি `B` দিয়ে , **শে**ষ হয় একটি `E` দিয়ে ("ট্রিগার প্রতীক") এবং অন্যথায় সেট `{a, b, c, d}` থেকে এলোমেলোভাবে নির্বাচিত প্রতীকগুলি নিয়ে গঠিত হয় শুধুমাত্র $t_1$ এবং $t_2$ পজিশনে দুটি উপাদান `X` বা `Y`ছাড়া । `ডিফিকাল্টি লেভেল.হার্ড` এর ক্ষেত্রে , অনুক্রমের দৈর্ঘ্যটি এলোমেলোভাবে ১০০ এবং ১১০ এর মধ্যে বেছে নেওয়া হয়েছে, $t_1$ এলোমেলোভাবে ১০ এবং ২০ এর মধ্যে এবং $t_2$ এলোমেলোভাবে ৫০ এবং ৬০ এর মধ্যে নির্বাচিত হয়। ৪টি ক্রম শ্রেণি রয়েছে `Q`,`R`,`S`,এবং `U` যা `X` এবং` Y` এর অস্থায়ী আদেশের উপর নির্ভর করে ।বিধিগুলি হ'ল: `X, X -> Q`; `X, Y -> R`; `Y, X -> S`; `Y, Y -> U`। ১)। ডেটাসেট এক্সপ্লোরেশন @@ -369,7 +367,7 @@ $$

-চিত্র ৩০ঃ সাধারণ আরএনএন বনাম এলএসটিএম - ১০ ইপোক +চিত্র ৩০ঃ সাধারণ RNN *বনাম.* LSTM - ১০ ইপোক
@@ -377,7 +375,7 @@ $$

-চিত্র ৩১ঃ সাধারণ আরএনএন বনাম এলএসটিএম - ১০০ ইপোক +চিত্র ৩১ঃ সাধারণ RNN *বনাম.* LSTM - ১০০ ইপোক
@@ -389,12 +387,12 @@ $$
-উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X` (চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্যটি` X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় ` সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X` পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। +উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X`(চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্যটি `X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় ` সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X`পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X'` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। ### সিগন্যাল প্রতিধ্বনি -সিগন্যাল এন-স্টেপগুলি প্রতিধ্বনিত করা বহু-বহু-সংখ্যক কাজের সামঞ্জস্য বিধান করার একটি উদাহরণ। উদাহরণস্বরূপ, প্রথম ইনপুট ক্রমটি হ'ল "1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 ..."`, এবং প্রথম লক্ষ্য ক্রমটি `"0 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 ... "`। এই ক্ষেত্রে, আউটপুট তিন ধাপ পরে হয়। সুতরাং আমাদের তথ্য রাখতে প্রয়োজন একটি স্বল্প সময়ের সক্রিয় মেমরি। ভাষা মডেলটিতে, এটি এমন কিছু বলে যা ইতিমধ্যে বলা হয়নি। +সিগন্যাল এন-স্টেপগুলি প্রতিধ্বনিত করা বহু-বহু-সংখ্যক কাজের সামঞ্জস্য বিধান করার একটি উদাহরণ। উদাহরণস্বরূপ, প্রথম ইনপুট ক্রমটি হল `"1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 ..."` , এবং প্রথম লক্ষ্য ক্রমটি `"0 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 ... "` । এই ক্ষেত্রে, আউটপুট তিন ধাপ পরে হয়। সুতরাং আমাদের তথ্য রাখতে প্রয়োজন একটি স্বল্প সময়ের সক্রিয় মেমরি। ভাষা মডেলটিতে, এটি এমন কিছু বলে যা ইতিমধ্যে বলা হয়নি। আমরা পুরো ক্রমটি নেটওয়ার্কে প্রেরণ করার আগে এবং চূড়ান্ত লক্ষ্যটিকে কিছু হতে বাধ্য করার আগে, আমাদের দীর্ঘ ক্রমটি সামান্য খণ্ডে কাটাতে হবে। নতুন খণ্ডকে ব্যবহার করার সময়, আমাদের পরবর্তী গোটা অংশটি যুক্ত করার সময় হিডেন স্টেটের উপর নজর রাখতে হবে এবং এটি অভ্যন্তরীণ অবস্থায় ইনপুট হিসাবে প্রেরণ করতে হবে। এলএসটিএম-এ আপনি যতক্ষণ আপনার পর্যাপ্ত ধারণক্ষমতা রাখেন ততক্ষণ মেমরি দীর্ঘকাল ধরে রাখতে পারেন। আরএনএন-এ, আপনি একটি নির্দিষ্ট দৈর্ঘ্যে পৌঁছানোর পরে, অতীতে কী ঘটেছিল তা ভুলে যেতে শুরু করে। From 5949e08a85f9c92dc212aff8c867da2be14a4702 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:25:51 +0600 Subject: [PATCH 29/35] week6-3 links updated --- docs/bn/week06/06-3.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index 5e2e86af9..9b7c54018 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -159,7 +159,7 @@ translator: Mahbuba Tasmin -## সময়ের সাথে ব্যাক-প্রোপাগেশন +## [সময়ের সাথে ব্যাক-প্রোপাগেশন](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s ### মডেল আর্কিটেকচার @@ -387,7 +387,7 @@ $$
-উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X`(চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্যটি `X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় ` সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X`পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X'` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। +উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X`(চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্য `X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় । সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X`পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X'` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। ### সিগন্যাল প্রতিধ্বনি From 73b0c2c605f6e58773a09bd26d712e5aa3e41561 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:27:11 +0600 Subject: [PATCH 30/35] week6-3 link updated --- docs/bn/week06/06-3.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index 9b7c54018..58e404ef4 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -158,7 +158,6 @@ translator: Mahbuba Tasmin
- ## [সময়ের সাথে ব্যাক-প্রোপাগেশন](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s From 7d12f0ff818b57d4de17ebf3f46ffd89c57cc2c0 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:29:03 +0600 Subject: [PATCH 31/35] week6-3 link issue --- docs/bn/week06/06-3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index 58e404ef4..c83c10efe 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -157,7 +157,7 @@ translator: Mahbuba Tasmin চিত্র ১৬ঃ সিকোয়েন্স টূ সিকোয়েন্স মডেলের টেক্সট অটো-কমপ্লিশন মডেল
- +## [Back Propagation through time](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s) ## [সময়ের সাথে ব্যাক-প্রোপাগেশন](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s From 7edefca601d91b99dcae467b20827b17626f0a9c Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:30:15 +0600 Subject: [PATCH 32/35] week6-3 link issue fixed --- docs/bn/week06/06-3.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index c83c10efe..3b70ea10a 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -157,8 +157,8 @@ translator: Mahbuba Tasmin চিত্র ১৬ঃ সিকোয়েন্স টূ সিকোয়েন্স মডেলের টেক্সট অটো-কমপ্লিশন মডেল
-## [Back Propagation through time](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s) -## [সময়ের সাথে ব্যাক-প্রোপাগেশন](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s +## [সময়ের সাথে ব্যাক-প্রোপাগেশন](https://www.youtube.com/watch?v=8cAffg2jaT0&t=855s) + ### মডেল আর্কিটেকচার From f1c86665097308d455172092c0897a0f7f2d2f5e Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Sun, 4 Jul 2021 13:39:58 +0600 Subject: [PATCH 33/35] week6-intro bad header fixed --- docs/bn/week06/06.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/bn/week06/06.md b/docs/bn/week06/06.md index b2961a686..80aab23f2 100644 --- a/docs/bn/week06/06.md +++ b/docs/bn/week06/06.md @@ -7,17 +7,17 @@ translator: Mahbuba Tasmin --- -## লেকচার পার্ট A +## লেকচার প্রথম ভাগ আমরা কনভলিউশনাল নিউরাল নেটওয়ার্কের তিনটি প্রয়োগ পদ্ধতি আলোচনা করেছি। অঙ্ক সনাক্তকরণ এবং পাঁচ অঙ্কের জিপ কোড সনাক্তকরণ দিয়ে শুরু করেছি । অবজেক্ট ডিটেকশনে আমরা আলোচনা করেছি কিভাবে মুখাবয়ব সনাক্তকরণে বহু-স্কেল সংযুক্ত কাঠামো ব্যবহার করা যায়। লেকচারটি শেষ হয়েছে কিভাবে কনভলিউশনাল নেট সেমান্টিক সেগমেন্টেশনে ব্যবহৃত হয়,রোবটিক ভিশন সিস্টেমের সাথে সম্পর্কিত এবং শহুরে পরিবেশে অবজেক্ট সেগমেন্টেশনের বাস্তব উদাহরণ দেখানো হয়েছে -## লেকচার পার্ট B +## লেকচার দ্বিতীয় ভাগ এই পর্বে আমরা রিকারেন্ট নিউরাল নেটওয়ার্কস, সম্পর্কিত সমস্যা গুলো এবং সমাধানের সাধারণ কৌশলগুলি অনুসন্ধান করেছি। পরবর্তীতে আমরা কয়েক প্রকারে মডিউল পর্যালোচনা করেছি যেগুলো ব্যবহৃত হয় রিকারেন্ট মডেল সম্পর্কিত সমস্যা গুলো সমাধানে ( এরমধ্যে অন্তর্গত রয়েছে অ্যাটেনশন, জিআরইউ ( গেটেড রিকারেন্ট ইউনিট), এলএসটিএম ( লং শর্ট টার্ম মেমরি) এবং সিকুয়েন্স-টু-সিকুয়েন্স)। -## ব্যবহারিক পাঠ্যক্রম +## প্রাক্টিক্যাল কোর্সওয়ার্ক ভ্যানিলা আরএনএন এবং এলএসটিএম মডেলের কাঠামো নিয়ে আলোচনা করেছি এবং দুটোর কর্ম ক্ষমতা পর্যালোচনা করেছি। আরএনএন এর সুবিধা সমূহ এলএসটিএম গ্রহণ করে, একই সাথে দীর্ঘ সময়ের জন্য তথ্য সংরক্ষণের উদ্দেশ্যে ‘মেমরি সেল’ সংযুক্ত করে আরএনএন এর দুর্বল দিক সংশোধন করে। এলএসটিএম মডেল উল্লেখযোগ্যভাবে আরএনএন এর চেয়ে ভালোভাবে সম্পাদন করে। From bd94b453d62f07422f8a32f056c1f21381dff674 Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Mon, 12 Jul 2021 23:07:52 +0600 Subject: [PATCH 34/35] Broken Math Fixes --- docs/bn/week06/06-1.md | 6 +++--- docs/bn/week06/06-2.md | 30 +++++++++++++++++------------- docs/bn/week06/06-3.md | 10 +++++----- 3 files changed, 25 insertions(+), 21 deletions(-) diff --git a/docs/bn/week06/06-1.md b/docs/bn/week06/06-1.md index dcf8ca785..2a6e4f542 100644 --- a/docs/bn/week06/06-1.md +++ b/docs/bn/week06/06-1.md @@ -43,7 +43,7 @@ translator: Mahbuba Tasmin ## [মুখাবয়ব সনাক্তকরণ](https://www.youtube.com/watch?v=ycbMGyCPzvE&t=1241s) -কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে 30 $\times 30 পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি 30 $\times 30 পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ +কনভলিউশনাল নিউরাল নেটওয়ার্ক সনাক্তকরণের কাজসমূহ ভালো ভাবে সম্পাদন করতে পারে এবং মুখাবয়ব সনাক্তকরণ এর আওতার বাইরে নয়। কাজটি সম্পন্ন করার জন্য আমরা মুখমণ্ডল সহ এবং মুখমণ্ডল ছাড়া স্থিরচিত্রের একটি ডেটাসেট সংগ্রহ করেছি, যেটার ওপর আমরা কনভলিউশনাল নেট ট্রেইন করব একটি নিরীক্ষণ পরিধি দিয়ে যার আয়তন হবে 30 $\times$ 30 পিক্সেলস এবং নেটওয়ার্কটিকে প্রশ্ন করা হবে পরীক্ষণিয় স্থিরচিত্রে মুখাবয়ব আছে কি নেই এর উত্তর দিতে। একবার ট্রেইনিং সম্পন্ন করার পর আমরা মডেলটিকে নতুন স্থিরচিত্রের উপর প্রয়োগ করব এবং যদি একটি 30 $\times$ 30 পিক্সেল পরিধির মধ্যে মুখাবয়বের উপস্থিতি থাকে সেক্ষেত্রে কনভলিউশনাল নেটটি সংশ্লিষ্ট স্থানে আউটপুটটিকে চিহ্নিত করে দিবে। তবে, এখানে দুটো সমস্যা আছেঃ @@ -63,7 +63,7 @@ translator: Mahbuba Tasmin - ৩ নং চিত্রে প্রদর্শিত মানচিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি ২০x২০ পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি। + ৩ নং চিত্রে প্রদর্শিত মানচিত্রে বিভিন্ন ফেস ডিটেক্টরের স্কোর দেখানো হয়েছে। এই ফেস ডিটেক্টরটি 20 $\times$ 20 পিক্সেলস আকারের মুখ চিনতে পারে। সূক্ষ্ম সংস্করণে ( স্কেল ৩) অনেক গুলো ভালো ফলাফল আছে কিন্তু কোন নির্ধারক ফলাফল নেই। স্কেলিং গুণক যখন স্কেল-৬ এ পৌঁছে, আরো বেশি গুচ্ছকৃত সাদা অংশ দৃশ্যমান হয়। সেগুলো নির্দেশ করে চিহ্নিত মুখাবয়বের ফলাফল। এরপর আমরা নন-ম্যাক্সিমাম সাপ্রেশন প্রয়োগ করে মুখের সর্বশেষ অবস্থান চিহ্নিত করি।
@@ -159,7 +159,7 @@ translator: Mahbuba Tasmin
-লক্ষ্য করুন যে আমরা যদি সিএনএন-এর একটি আউটপুট ইনপুটটিতে প্রজেক্ট করি তবে এটি ল্যাপ্লাসিয়ান পিরামিডের নিচে মূল চিত্রের 46x46 আকারের একটি ইনপুট উইন্ডোটির সাথে মিল প্রদর্শন করে । এর অর্থ আমরা **কেন্দ্রীয় পিক্সেলের বিভাগ নির্ধারণ করতে 46 × 46 পিক্সেলের প্রসঙ্গটি ব্যবহার করছি**। +লক্ষ্য করুন যে আমরা যদি সিএনএন-এর একটি আউটপুট ইনপুটটিতে প্রজেক্ট করি তবে এটি ল্যাপ্লাসিয়ান পিরামিডের নিচে মূল চিত্রের $46\times46$ আকারের একটি ইনপুট উইন্ডোটির সাথে মিল প্রদর্শন করে । এর অর্থ আমরা **কেন্দ্রীয় পিক্সেলের বিভাগ নির্ধারণ করতে $46\times46$ পিক্সেলের প্রসঙ্গটি ব্যবহার করছি**। তবে, কখনও কখনও বৃহত্তর অবজেক্টের জন্য বিভাগ নির্ধারণের জন্য এই প্রসঙ্গের আকারটি যথেষ্ট নয়। diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index f2fe39b45..1578f4e02 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -60,10 +60,10 @@ translator: Mahbuba Tasmin
-চিত্র ২ -এ ইনপুটটি $ x_1, x_2, x_3 $ । +চিত্র ২ -এ ইনপুটটি $x_1, x_2, x_3$ । -সময় t = 0 চলাকালীন সময়, ইনপুট $x(0$) টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w)$ কে উদ্ভূত করতে। সময় $T=0$ এ, $G$ এ $z$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। +সময় t = 0 চলাকালীন সময়, ইনপুট $x(0)$ টিকে এনকোডারকে দেওয়া হয় এবং এটি $h(x(0))=\text{Enc}(x(0))$ কে উপস্থাপন করে এবং তারপরে এটি G কে পাস করে হিডেন স্টেট $z(0)= G (h_0, z ', w)$ কে উদ্ভূত করতে। সময় $t=0$ এ, $G$ এ $z’$ আদ্যক্ষর $0$ হিসেবে কিংবা যথেচ্ছাভাবে আরম্ভ করা যেতে পারে । একটি আউটপুট উৎপন্ন করতে $z(0)$ কে পাস করা হয় ডিকোডারে এবং পরবর্তী সময় ধাপেও পাস করা হয়। যেহেতু এই নেটওয়ার্কটিতে কোনও লুপ নেই, এবং আমরা ব্যাক প্রোপাগেশন বাস্তবায়ন করতে পারি। @@ -99,13 +99,17 @@ RNN ব্যবহার করার একটি কারণ হচ্ছে ## RNN এর কৌশলগুলোঃ - - ক্লিপিং গ্র্যাডিয়েন্ট: (এক্সপ্লোডিং গ্র্যাডিয়েন্ট এড়ানো) - গ্র্যাডিয়েন্টগুলি যখন খুব বড় হয়ে যায় তখন স্কোয়াশ করুন। +- ক্লিপিং গ্র্যাডিয়েন্ট: (এক্সপ্লোডিং গ্র্যাডিয়েন্ট এড়ানো) + গ্র্যাডিয়েন্টগুলি যখন খুব বড় হয়ে যায় তখন স্কোয়াশ করুন। + +- সূচনা ( ডান বলপার্কে সূচনা করে এক্সপ্লোডিং/বিলীন হওয়া এড়ানো) + মডেলের নর্ম কিছু পরিমাণে অক্ষুণ্ণ রাখতে ওয়েট ম্যাট্রিক্স গুলো সূচনা করুন । উদাহরণস্বরূপ, সমকোণীয় সূচনাটি ওয়েট ম্যাট্রিক্সকে এলোমেলো ধরণের অর্থোগোনাল ম্যাট্রিক্স হিসাবে আরম্ভ করে। + + - - সূচনা ( ডান বলপার্কে সূচনা করে এক্সপ্লোডিং/বিলীন হওয়া এড়ানো) - মডেলের নর্ম কিছু পরিমাণে অক্ষুণ্ণ রাখতে ওয়েট ম্যাট্রিক্স গুলো সূচনা করুন । উদাহরণস্বরূপ, সমকোণীয় সূচনাটি ওয়েট ম্যাট্রিক্সকে এলোমেলো ধরণের অর্থোগোনাল ম্যাট্রিক্স হিসাবে আরম্ভ করে। + @@ -163,7 +167,7 @@ $$ $x_1$ এবং $x_2$ ভেক্টর, $w_1$ এবং $w_2$ সফটম্যাক্সের পরে স্কেলারসমূহ যেখানে $w_1 + w_2 = 1$, এবং $w_1$ এবং $w_2$ রয়েছে 0 এবং 1 এর মধ্যে। -$w_1x_1 + w_2x_2$ হল $x_1 $ এবং $x_2$ এর ওয়েটেড সাম, $w_1$ এবং $w_2$ এর সহগ দ্বারা ওয়েটকৃত। +$w_1x_1 + w_2x_2$ হল $x_1$ এবং $x_2$ এর ওয়েটেড সাম, $w_1$ এবং $w_2$ এর সহগ দ্বারা ওয়েটকৃত। $W_1$ এবং $w_2$ এর আপেক্ষিক আকার পরিবর্তন করে আমরা $w_1x_1 + w_2x_2$ এর আউটপুট $x_1$ বা $x_2$ অথবা $x_1$ এবং $x_2$ এর কিছু লিনিয়ার সংমিশ্রণে পরিবর্তন করতে পারি। @@ -195,11 +199,11 @@ h_t = z_t\odot h_{t-1} + (1- z_t)\odot\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_ $$ -যেখানে $ \odot$ উপাদান অনুসারে গুণ (Hadamard গুণফল) বোঝায়, $x_t$ ইনপুট ভেক্টর, $h_t$ আউটপুট ভেক্টর, $z_t$ আপডেট গেট ভেক্টর, $r_t$ রিসেট গেট ভেক্টর, $\phi_h$ একটি হাইপারবোলিক tanh এবং $W$, $U$, $b$ নেটওয়ার্কের শেখার প্যারামিটার । +যেখানে $\odot$ উপাদান অনুসারে গুণ (Hadamard গুণফল) বোঝায়, $x_t$ ইনপুট ভেক্টর, $h_t$ আউটপুট ভেক্টর, $z_t$ আপডেট গেট ভেক্টর, $r_t$ রিসেট গেট ভেক্টর, $\phi_h$ একটি হাইপারবোলিক tanh এবং $W$, $U$, $b$ নেটওয়ার্কের শেখার প্যারামিটার । -সুনির্দিষ্টভাবে বলতে গেলে, $z_t হল একটি গেটিং ভেক্টর যা নির্ধারণ করে যে অতীতের তথ্যগুলির কতটা ভবিষ্যতে পাঠাতে হবে। এটি দুটি লিনিয়ার স্তর এবং একটি ইনপুট $x_t$ এর উপর আপতিত বায়াসের সমষ্টি এবং পূর্ববর্তী স্টেট $h_{ t-1} এর জন্য একটি সিগময়েড ফাংশন প্রয়োগ করে। সিগময়েড প্রয়োগের ফলে $z_t$ এর সহগ 0 এবং 1 এর মধ্যে অবস্থিত। চূড়ান্ত আউটপুট স্টেট $h_t$ হল $h_{t-1}$ এবং $\phi_h(W_hx_t+ U_h(r_t\odot h_{t-1}) + b_h এর উত্তল সংমিশ্রণ $z_t$ এর মাধ্যমে। যদি সহগটি 1 হয়, বর্তমান ইউনিট আউটপুটটি পূর্ববর্তী স্টেটের কেবল একটি অনুলিপি এবং ইনপুটটিকে উপেক্ষা করে (এটি পূর্বনির্ধারিত আচরণ)। যদি এটির চেয়ে কম হয়, তবে এটি ইনপুট থেকে কিছু নতুন তথ্য গ্রহণ করে। +সুনির্দিষ্টভাবে বলতে গেলে, $z_t$ হল একটি গেটিং ভেক্টর যা নির্ধারণ করে যে অতীতের তথ্যগুলির কতটা ভবিষ্যতে পাঠাতে হবে। এটি দুটি লিনিয়ার স্তর এবং একটি ইনপুট $x_t$ এর উপর আপতিত বায়াসের সমষ্টি এবং পূর্ববর্তী স্টেট $h_{t-1}$ এর জন্য একটি সিগময়েড ফাংশন প্রয়োগ করে। সিগময়েড প্রয়োগের ফলে $z_t$ এর সহগ 0 এবং 1 এর মধ্যে অবস্থিত। চূড়ান্ত আউটপুট স্টেট $h_t$ হল $h_{t-1}$ এবং $\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h)$ এর উত্তল সংমিশ্রণ $z_t$ এর মাধ্যমে। যদি সহগটি 1 হয়, বর্তমান ইউনিট আউটপুটটি পূর্ববর্তী স্টেটের কেবল একটি অনুলিপি এবং ইনপুটটিকে উপেক্ষা করে (এটি পূর্বনির্ধারিত আচরণ)। যদি এটির চেয়ে কম হয়, তবে এটি ইনপুট থেকে কিছু নতুন তথ্য গ্রহণ করে। -রিসেট গেট $r_t$ অতীতের তথ্যকে কতটা ভুলে যেতে হবে তার সিদ্ধান্ত নিতে ব্যবহৃত হয়। নতুন মেমরি কনটেন্টে $phi_h(W_hx_t + U_h (r_t \ odot h_ {t-1}) + b_h)$, যদি $r_t$ এর সহগ 0 হয় তবে এটি অতীতের কোনও তথ্যই সঞ্চয় করে না। যদি একই সময়ে $z_t$ এর মাণ 0 হয়, তবে সিস্টেমটি পুরোপুরি পুনরায় সেট করা হয় যেহেতু $h_t$ কেবল ইনপুটকে দেখবে। +রিসেট গেট $r_t$ অতীতের তথ্যকে কতটা ভুলে যেতে হবে তার সিদ্ধান্ত নিতে ব্যবহৃত হয়। নতুন মেমরি কনটেন্টে $\phi_h(W_hx_t + U_h(r_t\odot h_{t-1}) + b_h)$, যদি $r_t$ এর সহগ 0 হয় তবে এটি অতীতের কোনও তথ্যই সঞ্চয় করে না। যদি একই সময়ে $z_t$ এর মান 0 হয়, তবে সিস্টেমটি পুরোপুরি পুনরায় সেট করা হয় যেহেতু $h_t$ কেবল ইনপুটকে দেখবে। ## LSTM (লং শর্ট - টার্ম মেমরি) @@ -226,7 +230,7 @@ $$ যেখানে $\odot$ উপাদান অনুসারে গুণনকে বোঝায়, $\x_t\mathbb{R}^a$ LSTM ইউনিটের একটি ইনপুট ভেক্টর,$f_t\in\mathbb{R}^h$ হল ফরগেট গেটের অ্যাক্টিভেশন ভেক্টর ,$i_t\in\mathbb{R}^h$ হল ইনপুট/আপডেট গেটের অ্যাক্টিভেশন ভেক্টর, $o_t\in\mathbb{R}^h$ আউটপুট গেটের অ্যাক্টিভেশন ভেক্টর, $h_t\in\mathbb{R}^h$ হিডেন স্টেট ভেক্টর (আউটপুট নামেও পরিচিত), $c_t\in\mathbb{R}^h$ হল সেল স্টেট ভেক্টর। -একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_ {t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $ c_ {t-1} $ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । +একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_{t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $c_{t-1}$ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । যদিও LSTM NLPতে ব্যাপকভাবে ব্যবহৃত হয়, তবে তাদের জনপ্রিয়তা হ্রাস পাচ্ছে। উদাহরণস্বরূপ, স্পিচ রিকগনিশন অস্থায়ী সিএনএন ব্যবহারের দিকে এগিয়ে চলেছে, এবং NLP ট্রান্সফর্মারগুলো ব্যবহার করার দিকে এগিয়ে চলেছে। @@ -272,7 +276,7 @@ $$ একটি মেমরি নেটওয়ার্কের ধারণাটি হল আপনার মস্তিষ্কে দুটি গুরুত্বপূর্ণ অংশ রয়েছে: একটি হল ** কর্টেক্স **, যেখানে আপনার দীর্ঘমেয়াদী স্মৃতি রয়েছে। ** হিপ্পোক্যাম্পাস ** নামে পরিচিত নিউরনের একটি পৃথক অংশ রয়েছে যা কর্টেক্সের প্রায় সর্বত্র তাড়িত-বার্তাবহ প্রেরণ করে। হিপ্পোক্যাম্পাসটি স্বল্পমেয়াদী মেমরির জন্য ব্যবহার করা হয় বলে মনে করা হয়, তুলনামূলকভাবে স্বল্প সময়ের জন্য জিনিসগুলি স্মরণে রাখে । প্রচলিত তত্ত্বটি হ'ল আপনি যখন ঘুমাবেন, হিপ্পোক্যাম্পাসের সীমিত ক্ষমতা থাকার কারণে হিপ্পোক্যাম্পাস থেকে কর্টেক্সে প্রচুর পরিমাণে স্থানান্তরিত হয় দীর্ঘমেয়াদী স্মৃতিতে দৃঢ়তর হওয়ার জন্য। -একটি মেমরি নেটওয়ার্কের জন্য, নেটওয়ার্কে একটি ইনপুট রয়েছে, $x$ (এটিকে মেমরির একটি ঠিকানা হিসাবে মনে করুন), এবং এই $x$ টিকে একটি ডট গুণফলের মাধ্যমে $k_1, k_2, k_3, \cdots$ ("keys") ভেক্টরগুলির সাথে তুলনা করুন । এগুলি একটি সফটম্যাক্সের মারফত রেখে, আপনি যা পান তা হল সংখ্যার অ্যারে (array) বিন্যাস যাদের সমষ্টিগত মান হয় ১। এবং অন্যান্য ভেক্টরগুলির একটি সেট রয়েছে $v_1, v_2, v_3, \cdots$ সিডটস $ ("মান")। সফটম্যাক্স থেকে স্কেলারগুলির সাহায্যে এই ভেক্টরগুলিকে গুণ করুন এবং এই ভেক্টরগুলি যোগ করুন (অ্যাটেনশন ব্যবস্থার সাথে সাদৃশ্যটি নোট করুন) , যার পরিপ্রেক্ষিতে আপনাকে ফলাফল দেয়। +একটি মেমরি নেটওয়ার্কের জন্য, নেটওয়ার্কে একটি ইনপুট রয়েছে, $x$ (এটিকে মেমরির একটি ঠিকানা হিসাবে মনে করুন), এবং এই $x$ টিকে একটি ডট গুণফলের মাধ্যমে $k_1, k_2, k_3, \cdots$ ("keys") ভেক্টরগুলির সাথে তুলনা করুন । এগুলি একটি সফটম্যাক্সের মারফত রেখে, আপনি যা পান তা হল সংখ্যার অ্যারে (array) বিন্যাস যাদের সমষ্টিগত মান হয় ১। এবং অন্যান্য ভেক্টরগুলির একটি সেট রয়েছে $v_1, v_2, v_3, \cdots$ ("মান")। সফটম্যাক্স থেকে স্কেলারগুলির সাহায্যে এই ভেক্টরগুলিকে গুণ করুন এবং এই ভেক্টরগুলি যোগ করুন (অ্যাটেনশন ব্যবস্থার সাথে সাদৃশ্যটি নোট করুন) , যার পরিপ্রেক্ষিতে আপনাকে ফলাফল দেয়।

@@ -283,7 +287,7 @@ $$ কী গুলির মধ্যে একটি যদি (*e.g.* $k_i$) হুবহু $x$ এর সাথে মিলে যায়, তবে এই কী-টির সাথে যুক্ত সহগ একটির খুব কাছাকাছি থাকবে। সুতরাং সিস্টেমের আউটপুটটি মূলত $v_i$ হবে। -এটি ** অ্যাড্রেসেবল এসোসিয়েটিভ মেমরি **। সহযোগী মেমোরিটি হ'ল যদি আপনার ইনপুট কোনও কী-টির সাথে মেলে, আপনি * সেই * মানটি পাবেন। এবং এটি নিজের একটি সফট ডিফারেন্সিয়াল সংস্করণ, যা আপনাকে গ্র্যাডিয়েন্ট বংশোদ্ভূত মাধ্যমে ভেক্টরগুলিকে ব্যাকপ্রোপাগেট করতে এবং পরিবর্তন করতে দেয়। +এটি ** অ্যাড্রেসেবল এসোসিয়েটিভ মেমরি **। সহযোগী মেমোরিটি হল যদি আপনার ইনপুট কোনও কী-টির সাথে মেলে, আপনি * সেই * মানটি পাবেন। এবং এটি নিজের একটি সফট ডিফারেন্সিয়াল সংস্করণ, যা আপনাকে গ্র্যাডিয়েন্ট বংশোদ্ভূত মাধ্যমে ভেক্টরগুলিকে ব্যাকপ্রোপাগেট করতে এবং পরিবর্তন করতে দেয়। লেখকরা যা করেছিলেন তা হল একটি সিস্টেমকে বাক্যগুলির ক্রম অনুসারে একটি গল্প বলেছিলেন। বাক্যগুলি ভেক্টরগুলিতে একটি নিউরাল নেট দ্বারা চালিত হয়ে এনকোড করা হয় যা পূর্বে ট্রেইন করা হয়নি। বাক্যগুলি এই ধরণের মেমরিতে ফিরে আসে। আপনি যখন সিস্টেমে কোনও প্রশ্ন জিজ্ঞাসা করেন, আপনি প্রশ্নটি এনকোড করে নিউরাল নেট এর ইনপুট হিসাবে রাখেন, নিউরাল নেট মেমরিতে একটি $x$ উত্পাদন করে এবং মেমরিটি একটি মান দেয়। diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index 3b70ea10a..be4dcf365 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -214,7 +214,8 @@ $y[t]$ চূড়ান্ত রোটেশনের সময় গণন
-বিপিটিটি পিরিয়ড $টি$ ৩ এ সেট করা থাকলে, আরএনএন-এর জন্য প্রথম ইনপুট $x [1: T]$ এবং আউটপুট $y[1: T]$ হিসাবে নির্ধারিত হয়। +বিপিটিটি পিরিয়ড $T$ ৩ এ সেট করা থাকলে, আরএনএন-এর জন্য প্রথম ইনপুট $x [1: T]$ এবং আউটপুট $y[1: T]$ হিসাবে নির্ধারিত হয়। + $$ \begin{aligned} x[1:T] &= \begin{bmatrix} @@ -231,7 +232,7 @@ d & j & p & v $$ -প্রথম ব্যাচে আরএনএন করার সময়, প্রথমত, আমরা আরএনএন-তে $x[1] = [a\ g\ m\s]$ ব্যবহার করি এবং আউটপুটকে $y [1] = [b\ h\n\ t]$ হতে বাধ্য করি। $x[2]$ থেকে $y[2]$ কে আরএনএন দ্বারা পূর্বাভাসে সহায়তা করার জন্য হিডেন উপস্থাপনা $h[1]$ টিকে পরবর্তী সময় ধাপে প্রেরণ করা হবে। $x[T]$ এবং $y[T]$ এর চূড়ান্ত সেটে $h[T-1]$ প্রেরণের পরে, আমরা $ h[T]$ এবং $h[0]$ উভয়ের জন্য গ্র্যাডিয়েন্ট প্রোপাগেশন প্রক্রিয়াটি কেটে দিলাম যাতে করে গ্র্যাডিয়েন্ট গুলো অসম্পূর্ণভাবে প্রোপাগেট করবে না (.detach () in Pytorch) । পুরো প্রক্রিয়াটি নীচের চিত্রে দেখানো হয়েছে। +প্রথম ব্যাচে আরএনএন করার সময়, প্রথমত, আমরা আরএনএন-তে $x[1] = [a\ g\ m\s]$ ব্যবহার করি এবং আউটপুটকে $y[1] = [b\ h\n\ t]$ হতে বাধ্য করি। $x[2]$ থেকে $y[2]$ কে আরএনএন দ্বারা পূর্বাভাসে সহায়তা করার জন্য হিডেন উপস্থাপনা $h[1]$ টিকে পরবর্তী সময় ধাপে প্রেরণ করা হবে। $x[T]$ এবং $y[T]$ এর চূড়ান্ত সেটে $h[T-1]$ প্রেরণের পরে, আমরা $h[T]$ এবং $h[0]$ উভয়ের জন্য গ্র্যাডিয়েন্ট প্রোপাগেশন প্রক্রিয়াটি কেটে দিলাম যাতে করে গ্র্যাডিয়েন্ট গুলো অসম্পূর্ণভাবে প্রোপাগেট করবে না (.detach () in Pytorch) । পুরো প্রক্রিয়াটি নীচের চিত্রে দেখানো হয়েছে।

@@ -299,7 +300,7 @@ $$
-একইভাবে, আমরা মেমরি নিয়ন্ত্রণ করতে পারি। উদাহরণস্বরূপ, আমরা $ f[t] $ এবং $i [t]$ জিরো থাকার মাধ্যমে এটি পুনরায় সেট করতে পারি। গুণ এবং যোগের পরে, আমাদের মেমরির ভিতরে একটি শূন্য রয়েছে। অন্যথায়, আমরা এখনও অভ্যন্তরীণ উপস্থাপনা $th$-কে শূন্য করে মেমরিটি রাখতে পারি তবে $f[t]$ এ রাখতে পারি একটি ১ রেখে। সুতরাং, যোগফলটি $c[t-1]$ পায় এবং এটি প্রেরণ করেই চলে। অবশেষে, আমরা এমনটি লিখতে পারি যে আমরা ইনপুট গেটে একটি ১ পেতে পারি, গুণটি বেগুনি হয়ে যায়, তারপর ডোন্ট ফরগেট গেটে একটি শূন্য সেট করুন যাতে এটি আসলে ভুলে যায়। +একইভাবে, আমরা মেমরি নিয়ন্ত্রণ করতে পারি। উদাহরণস্বরূপ, আমরা $f[t]$ এবং $i[t]$ জিরো থাকার মাধ্যমে এটি পুনরায় সেট করতে পারি। গুণ এবং যোগের পরে, আমাদের মেমরির ভিতরে একটি শূন্য রয়েছে। অন্যথায়, আমরা এখনও অভ্যন্তরীণ উপস্থাপনা $th$-কে শূন্য করে মেমরিটি রাখতে পারি তবে $f[t]$ এ রাখতে পারি একটি ১ রেখে। সুতরাং, যোগফলটি $c[t-1]$ পায় এবং এটি প্রেরণ করেই চলে। অবশেষে, আমরা এমনটি লিখতে পারি যে আমরা ইনপুট গেটে একটি ১ পেতে পারি, গুণটি বেগুনি হয়ে যায়, তারপর ডোন্ট ফরগেট গেটে একটি শূন্য সেট করুন যাতে এটি আসলে ভুলে যায়।

@@ -386,7 +387,7 @@ $$
-উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $ -2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X`(চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্য `X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় । সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X`পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X'` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। +উপরের দৃশ্যায়নটি এলএসটিএম-এ সময়ের সাথে হিডেন স্টেটের মান অঙ্কন করছে। আমরা হাইপারবোলিক ট্যানজেন্টের মাধ্যমে ইনপুটগুলি প্রেরণ করব, যেমন যদি ইনপুটটি $-2.5$ এর নীচে হয় তবে এটি $-1$ এ ম্যাপ করা হবে এবং এটি যদি $2.5$ এর উপরে হয় তবে এটি ম্যাপ করা হবে $1$ । সুতরাং এই ক্ষেত্রে, আমরা `X`(চিত্রের পঞ্চম সারিতে) বাছাই করা নির্দিষ্ট হিডেন লেয়ারটি দেখতে পাচ্ছি এবং তারপরে এটি অন্য `X` না পাওয়া পর্যন্ত এটি লাল হয়ে যায় । সুতরাং, ঘরের পঞ্চম হিডেন ইউনিটটি `X`পর্যবেক্ষণ করে ট্রিগার করা হয় এবং অন্য `X'` দেখে স্থির হয়ে যায় এটি আমাদের ক্রম শ্রেণিটি চিনতে সহায়তা করে। ### সিগন্যাল প্রতিধ্বনি @@ -395,4 +396,3 @@ $$ আমরা পুরো ক্রমটি নেটওয়ার্কে প্রেরণ করার আগে এবং চূড়ান্ত লক্ষ্যটিকে কিছু হতে বাধ্য করার আগে, আমাদের দীর্ঘ ক্রমটি সামান্য খণ্ডে কাটাতে হবে। নতুন খণ্ডকে ব্যবহার করার সময়, আমাদের পরবর্তী গোটা অংশটি যুক্ত করার সময় হিডেন স্টেটের উপর নজর রাখতে হবে এবং এটি অভ্যন্তরীণ অবস্থায় ইনপুট হিসাবে প্রেরণ করতে হবে। এলএসটিএম-এ আপনি যতক্ষণ আপনার পর্যাপ্ত ধারণক্ষমতা রাখেন ততক্ষণ মেমরি দীর্ঘকাল ধরে রাখতে পারেন। আরএনএন-এ, আপনি একটি নির্দিষ্ট দৈর্ঘ্যে পৌঁছানোর পরে, অতীতে কী ঘটেছিল তা ভুলে যেতে শুরু করে। - From f82c56ac99b636b07717c161955648fa2f79f92e Mon Sep 17 00:00:00 2001 From: Tasmin153 Date: Mon, 12 Jul 2021 23:32:25 +0600 Subject: [PATCH 35/35] broken math fixes --- docs/bn/week06/06-2.md | 4 ++-- docs/bn/week06/06-3.md | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/docs/bn/week06/06-2.md b/docs/bn/week06/06-2.md index 1578f4e02..251d4a8f4 100644 --- a/docs/bn/week06/06-2.md +++ b/docs/bn/week06/06-2.md @@ -42,7 +42,7 @@ translator: Mahbuba Tasmin - $z(t)$: বর্তমান হিডেন স্টেট - - $g$: একটি ফাংশন যা হতে পারে একটি জটিল নিউরাল নেটওয়ার্ক; ইনপুটগুলির মধ্যে একটি হল $ z (t -1) $ যা পূর্ববর্তী সময় ধাপের আউটপুট + - $g$: একটি ফাংশন যা হতে পারে একটি জটিল নিউরাল নেটওয়ার্ক; ইনপুটগুলির মধ্যে একটি হল $z(t -1)$ যা পূর্ববর্তী সময় ধাপের আউটপুট - $\text{Dec}(z(t))$: ডিকোডার যা একটি আউটপুট উত্পন্ন করে @@ -227,7 +227,7 @@ h_t = o_t \odot\tanh(c_t) $$ -যেখানে $\odot$ উপাদান অনুসারে গুণনকে বোঝায়, $\x_t\mathbb{R}^a$ LSTM ইউনিটের একটি ইনপুট ভেক্টর,$f_t\in\mathbb{R}^h$ হল ফরগেট গেটের অ্যাক্টিভেশন ভেক্টর ,$i_t\in\mathbb{R}^h$ হল ইনপুট/আপডেট গেটের অ্যাক্টিভেশন ভেক্টর, $o_t\in\mathbb{R}^h$ আউটপুট গেটের অ্যাক্টিভেশন ভেক্টর, $h_t\in\mathbb{R}^h$ হিডেন স্টেট ভেক্টর (আউটপুট নামেও পরিচিত), $c_t\in\mathbb{R}^h$ হল সেল স্টেট ভেক্টর। +যেখানে $\odot$ উপাদান অনুসারে গুণনকে বোঝায়, $x_t\mathbb{R}^a$ LSTM ইউনিটের একটি ইনপুট ভেক্টর,$f_t\in\mathbb{R}^h$ হল ফরগেট গেটের অ্যাক্টিভেশন ভেক্টর ,$i_t\in\mathbb{R}^h$ হল ইনপুট/আপডেট গেটের অ্যাক্টিভেশন ভেক্টর, $o_t\in\mathbb{R}^h$ আউটপুট গেটের অ্যাক্টিভেশন ভেক্টর, $h_t\in\mathbb{R}^h$ হিডেন স্টেট ভেক্টর (আউটপুট নামেও পরিচিত), $c_t\in\mathbb{R}^h$ হল সেল স্টেট ভেক্টর। একটি LSTM ইউনিট সেল স্টেট $c_t$ ব্যবহার করে ইউনিটের মাধ্যমে তথ্য জানায়। এটি গেটস নামক স্ট্রাকচারের মাধ্যমে কীভাবে সেল স্টেট থেকে তথ্য সংরক্ষণ বা অপসারণ করা হয় তা নিয়ন্ত্রণ করে। ফরগেট গেট $f_t$ বর্তমান ইনপুট এবং পূর্ববর্তী হিডেন স্টেট দেখে নির্ধারণ করে যে আমরা পূর্ববর্তী সেল স্টেটের $c_{t-1}$ থেকে কতটা তথ্য রাখতে চাই এবং $c_{t-1}$ এর সহগ হিসাবে 0 এবং 1 এর মধ্যে একটি সংখ্যা তৈরি করে। $\tanh(W_cx_t + U_ch_{t-1} + b_c)$ একটি নতুন প্রার্থীকে সেল স্টেট আপডেট করার জন্য গণনা করে এবং ফরগেট গেটের মতো ইনপুট গেট $i_t$ সিদ্ধান্ত নেয় যে আপডেটটি কতটা প্রয়োগ করা হবে। শেষ অবধি, আউটপুট $h_t$ সেল স্টেট $c_t$ এর উপর ভিত্তি করে তৈরি করা হবে তবে $\tanh$ এর মাধ্যমে আউটপুট গেট $o_t$ দ্বারা ফিল্টার করে দেওয়া হবে । diff --git a/docs/bn/week06/06-3.md b/docs/bn/week06/06-3.md index be4dcf365..f7d8f4999 100644 --- a/docs/bn/week06/06-3.md +++ b/docs/bn/week06/06-3.md @@ -189,7 +189,7 @@ h[0]&\dot=\ \boldsymbol{0},\ W_h\dot=\left[ W_{hx} W_{hh}\right] \\ $$ -প্রথম সমীকরণটি ইনপুটটির স্ট্যাক সংস্করণের ঘূর্ণনের উপর প্রয়োগ করা একটি নন -লিনিয়ার ফাংশন নির্দেশ করে যেখানে হিডেন স্তরের পূর্ববর্তী কনফিগারেশন সংযুক্ত করা হয়। শুরুতে, $h[0]$ সেট করা আছে 0 মান হিসেবে। সমীকরণটি সহজ করার জন্য, $W_h$ কে দুটি পৃথক ম্যাট্রিক হিসাবে লেখা যায়, $\left[W_{hx}\W-{hh}\right]$ , এভাবে কখনও কখনও রূপান্তর হিসাবে বলা যেতে পারে । +প্রথম সমীকরণটি ইনপুটটির স্ট্যাক সংস্করণের ঘূর্ণনের উপর প্রয়োগ করা একটি নন -লিনিয়ার ফাংশন নির্দেশ করে যেখানে হিডেন স্তরের পূর্ববর্তী কনফিগারেশন সংযুক্ত করা হয়। শুরুতে, $h[0]$ সেট করা আছে 0 মান হিসেবে। সমীকরণটি সহজ করার জন্য, $W_h$ কে দুটি পৃথক ম্যাট্রিক হিসাবে লেখা যায়, $\left[ W_{hx}\ W_{hh}\right]$, এভাবে কখনও কখনও রূপান্তর হিসাবে বলা যেতে পারে । $$ W_{hx}\cdot x[t]+W_{hh}\cdot h[t-1] @@ -214,7 +214,7 @@ $y[t]$ চূড়ান্ত রোটেশনের সময় গণন
-বিপিটিটি পিরিয়ড $T$ ৩ এ সেট করা থাকলে, আরএনএন-এর জন্য প্রথম ইনপুট $x [1: T]$ এবং আউটপুট $y[1: T]$ হিসাবে নির্ধারিত হয়। +বিপিটিটি পিরিয়ড $T$ ৩ এ সেট করা থাকলে, আরএনএন-এর জন্য প্রথম ইনপুট $x[1: T]$ এবং আউটপুট $y[1: T]$ হিসাবে নির্ধারিত হয়। $$ \begin{aligned} @@ -232,7 +232,9 @@ d & j & p & v $$ -প্রথম ব্যাচে আরএনএন করার সময়, প্রথমত, আমরা আরএনএন-তে $x[1] = [a\ g\ m\s]$ ব্যবহার করি এবং আউটপুটকে $y[1] = [b\ h\n\ t]$ হতে বাধ্য করি। $x[2]$ থেকে $y[2]$ কে আরএনএন দ্বারা পূর্বাভাসে সহায়তা করার জন্য হিডেন উপস্থাপনা $h[1]$ টিকে পরবর্তী সময় ধাপে প্রেরণ করা হবে। $x[T]$ এবং $y[T]$ এর চূড়ান্ত সেটে $h[T-1]$ প্রেরণের পরে, আমরা $h[T]$ এবং $h[0]$ উভয়ের জন্য গ্র্যাডিয়েন্ট প্রোপাগেশন প্রক্রিয়াটি কেটে দিলাম যাতে করে গ্র্যাডিয়েন্ট গুলো অসম্পূর্ণভাবে প্রোপাগেট করবে না (.detach () in Pytorch) । পুরো প্রক্রিয়াটি নীচের চিত্রে দেখানো হয়েছে। +প্রথম ব্যাচে আরএনএন করার সময়, প্রথমত, আমরা আরএনএন-তে $x[1] = [a\ g\ m\ s]$ ব্যবহার করি এবং আউটপুটকে $y[1] = [b\ h\ n\ t]$ হতে বাধ্য করি। $x[2]$ থেকে +$y[2]$ কে আরএনএন দ্বারা পূর্বাভাসে সহায়তা করার জন্য হিডেন উপস্থাপনা $h[1]$ টিকে পরবর্তী সময় ধাপে প্রেরণ করা হবে। $x[T]$ এবং $y[T]$ এর চূড়ান্ত সেটে +$h[T-1]$ প্রেরণের পরে, আমরা $h[T]$ এবং $h[0]$ উভয়ের জন্য গ্র্যাডিয়েন্ট প্রোপাগেশন প্রক্রিয়াটি কেটে দিলাম যাতে করে গ্র্যাডিয়েন্ট গুলো অসম্পূর্ণভাবে প্রোপাগেট করবে না (.detach () in Pytorch) । পুরো প্রক্রিয়াটি নীচের চিত্রে দেখানো হয়েছে।