ডিফারেনশিয়েবল লিনিয়ার অ্যালজেব্রা
Differentiable Linear Algebra
যখন প্রতিটি ম্যাট্রিক্স অপারেশনের gradient চাই
≈ ১১ মিনিট
Backprop আমাদের শেখাল — গণিত differentiable হতে হবে। কিন্তু SVD, eigendecomposition, matrix inverse — এগুলোরও কি gradient আছে? উত্তর: হ্যাঁ, এবং সেগুলো আধুনিক গবেষণার চাবিকাঠি।
কেন প্রয়োজন?
আধুনিক model-এর ভিতরে শুধু matmul নয় — SVD-projection, least-squares solve, eigenvalue constraint, log-determinant। যদি gradient না থাকে, gradient descent চলে না।
Matrix Inverse-এর gradient
একটি সুন্দর identity — যা মুখস্থ না করেও AX = I differentiate করে পাওয়া যায়।
Determinant ও Log-Det
Normalizing flow-এ Jacobian-এর log-det চাই — তাই এই gradient গুরুত্বপূর্ণ।
SVD-এর gradient
A = UΣVᵀ-এর U, Σ, V প্রত্যেকটির উপর gradient পাওয়া যায় — কিন্তু degenerate singular value-তে অসঙ্গায়িত হয়ে যায়। আধুনিক library (PyTorch, JAX) এতে rank-aware regularization যোগ করে।
Eigendecomposition-এর gradient
Symmetric matrix-এর জন্য সুন্দর সূত্র (Magnus & Neudecker)। কিন্তু কাছাকাছি eigenvalue থাকলে অস্থির। প্রায়ই Lanczos বা power iteration-কে implicit differentiation দিয়ে stable করা হয়।
Implicit Differentiation
যদি x* একটি equation F(x, θ) = 0-এর সমাধান, তবে গোটা solver দিয়ে backprop না করে implicit function theorem দিয়ে dx*/dθ গণনা করা যায় — কম মেমরি, বেশি stable।
Differentiable Optimization Layer
- Differentiable QP: argmin ½xᵀQx + qᵀx s.t. Ax ≤ b — solver-কে layer-এ পরিণত করা।
- OptNet, CvxpyLayer — NN-এর ভিতর optimization।
- Differentiable physics simulator — robotics-এ।
- Sinkhorn algorithm — differentiable optimal transport (Wasserstein loss)।
Autodiff Frameworks-এর ভূমিকা
JAX, PyTorch, TensorFlow এই custom gradient-গুলিকে প্যাকেজ করে। custom_vjp / autograd.Function ব্যবহার করে নিজের differentiable operator লেখা যায়।
ভবিষ্যৎ
- Differentiable PDE — scientific ML-এর ভিত্তি।
- Differentiable rendering — vision ও graphics-এর সংযোগ।
- Differentiable algorithm — sorting, ranking-ও smooth হয়।
- Implicit layer (Deep Equilibrium Models)।
মূল ভাবনা
- 1.Matrix অপারেশনের gradient সূত্র পরিচিত — backprop-এ ব্যবহারযোগ্য।
- 2.Inverse, det, SVD, eigendecomp — প্রত্যেকের nuanced gradient আছে।
- 3.Implicit differentiation = solver-এর ভিতরে যাওয়া ছাড়াই gradient।
- 4.Optimization-কে layer বানানো যায়।
- 5.Numerical stability সবসময় সঙ্গী।
নিজেকে যাচাই করো
প্রশ্নে ক্লিক করে উত্তর দেখো — তবে আগে নিজে চেষ্টা করো।
প্রশ্ন 1।Inverse-এর gradient সূত্র মনে রাখার সহজ উপায়?
প্রশ্ন 2।Implicit differentiation কখন দরকার?
প্রশ্ন 3।Differentiable SVD-এর প্রধান সমস্যা?
ইন্টারেক্টিভ কুইজ
মূল ভাবনার উপর দ্রুত যাচাই — সঠিক বিকল্পটি বাছাই করো।