🧮ML গণিত গুরু
linear-algebraমাঝারি14 মিনিট

Rank ও Linear Independence — পদমর্যাদা

Rank and Linear Independence

🏏

মহাখালীর ক্রিকেট টিম

ধর তুই মহাখালীতে গলির ক্রিকেট টিম বানাইতেছস। তোর টিমে ৫ জন আছে। রাজু ব্যাট করে, সোহেল বোলিং করে, কামাল ফিল্ডিং করে — তিনজনের unique skill আছে। কিন্তু বাকি দুইজন — মিলন আর জুয়েল — এরাও শুধু ব্যাট করে, রাজুর মতোই! মামা বলল 'ভাই ৫ জন আছে বইলা কি হইব, কাজের লোক তো ৩ জনই! বাকি দুইজন redundant — রাজু যা পারে এরাও তাই পারে!' টিমের actual strength = ৩, মানে unique skill holder = ৩।

এইটাই Rank আর Linear Independence! Matrix-এর rank হইল unique, independent direction-এর সংখ্যা। ৫টা column থাকলেও যদি ৩টাই unique হয়, rank = 3। বাকিগুলা অন্যদের combination দিয়া বানানো যায় — linearly dependent!

সংজ্ঞা

Matrix-এর Rank হইল তার সর্বোচ্চ linearly independent row বা column-এর সংখ্যা। Linearly independent মানে একটা vector-কে বাকিগুলার combination দিয়া বানানো যায় না — প্রতিটা unique direction-এ contribute করে।

Rank = Column Space-এর Dimension = Row Space-এর Dimension
\[\text{rank}(A) = \text{dim}(\text{Col}(A)) = \text{dim}(\text{Row}(A))\]

ব্যাখ্যা

Linear Independence কি?

কিছু vector linearly independent যদি তাদের কোনো non-trivial linear combination শূন্য না হয়। সোজা কথায়: কোনো vector-কে বাকিগুলা দিয়া বানানো যায় না। যেমন [1,0] আর [0,1] independent — একটা দিয়া আরেকটা বানাইতে পারবা না। কিন্তু [1,0], [0,1], আর [1,1] dependent — কারণ [1,1] = [1,0] + [0,1]।

\[c_1 \mathbf{v}_1 + c_2 \mathbf{v}_2 + \cdots + c_n \mathbf{v}_n = \mathbf{0} \implies c_1 = c_2 = \cdots = c_n = 0\]

Rank কিভাবে বাইর করবা

Row Echelon Form-এ নিয়া যাও (Gaussian Elimination)। যতগুলা non-zero row থাকবে, সেইটাই rank। অথবা singular values বাইর করো — non-zero singular value-এর সংখ্যা = rank। Python-এ numpy.linalg.matrix_rank() দিয়া এক লাইনে হইব!

\[A = \begin{bmatrix} 1 & 2 & 3 \\ 2 & 4 & 6 \\ 0 & 1 & 1 \end{bmatrix} \xrightarrow{\text{REF}} \begin{bmatrix} 1 & 2 & 3 \\ 0 & 1 & 1 \\ 0 & 0 & 0 \end{bmatrix} \implies \text{rank} = 2\]

Full Rank vs Rank Deficient

m×n matrix-এর maximum possible rank = min(m, n)। যদি rank = min(m, n) হয়, তাহলে full rank — সবগুলা row/column unique। না হইলে rank deficient — কিছু row/column redundant। ML-এ feature matrix full rank হইলে ভালো, না হইলে মডেল ঠিকমতো শিখতে পারে না।

\[\text{rank}(A_{m \times n}) \leq \min(m, n)\]

Feature Matrix-এর Rank চেক করো

তোর dataset-এ ৩টা feature আছে: height (cm), height (inch), weight (kg)। Matrix A = [[170, 67, 65], [160, 63, 55], [180, 71, 80]]। এই feature matrix-এর rank কত? কোনো feature redundant?

Step 1: Matrix দেখো

লক্ষ্য করো column 2 (inch) ≈ column 1 (cm) / 2.54। তাহলে কি এরা dependent?

\[A = \begin{bmatrix} 170 & 67 & 65 \\ 160 & 63 & 55 \\ 180 & 71 & 80 \end{bmatrix}\]

Step 2: Relationship চেক করো

170/2.54 = 66.93 ≈ 67, 160/2.54 = 62.99 ≈ 63, 180/2.54 = 70.87 ≈ 71। হ্যাঁ, দ্বিতীয় column প্রথমটার প্রায় 1/2.54 গুণ!

\[\mathbf{col_2} \approx \frac{1}{2.54} \mathbf{col_1}\]

Step 3: Rank নির্ণয়

তিনটা column আছে কিন্তু দুইটাই effectively same information দেয়। তাই rank = 2, full rank (3) না।

\[\text{rank}(A) = 2 < 3 = \min(3, 3)\]
উত্তর:

Rank = 2। height (cm) আর height (inch) linearly dependent — একটা রাখলেই চলবে। মামা বলে 'একই জিনিস দুইবার বললে কথা বেশি হয়, information বাড়ে না!'

ML-এ কোথায় লাগে?

💡

মনে রাখার ট্রিক

Rank = টিমের unique skill holder-এর সংখ্যা। ৫ জন থাকলেও ৩ জনেরই আলাদা skill থাকলে rank = 3। Independent মানে 'নিজে নিজে দাঁড়াইতে পারে, অন্যের combination না!'

#rank#linear-independence#redundancy#dimensionality#feature-selection#gaussian-elimination