অধ্যায় 21.4

ডিফারেনশিয়েবল লিনিয়ার অ্যালজেব্রা

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 সবসময় সঙ্গী।

নিজেকে যাচাই করো

প্রশ্নে ক্লিক করে উত্তর দেখো — তবে আগে নিজে চেষ্টা করো।

প্রশ্ন 1Inverse-এর gradient সূত্র মনে রাখার সহজ উপায়?
উত্তর:AX = I-কে differentiate করে দু-দিকেই A⁻¹ দিয়ে গুণ করো।
প্রশ্ন 2Implicit differentiation কখন দরকার?
উত্তর:যখন output একটি iterative solver-এর ফল — পুরো solver দিয়ে backprop ব্যয়বহুল ও অস্থির।
প্রশ্ন 3Differentiable SVD-এর প্রধান সমস্যা?
উত্তর:Repeated/কাছাকাছি singular value-তে gradient অসঙ্গায়িত — regularization লাগে।

ইন্টারেক্টিভ কুইজ

মূল ভাবনার উপর দ্রুত যাচাই — সঠিক বিকল্পটি বাছাই করো।

প্রশ্ন 1“ডিফারেনশিয়েবল লিনিয়ার অ্যালজেব্রা” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
প্রশ্ন 2“ডিফারেনশিয়েবল লিনিয়ার অ্যালজেব্রা” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
প্রশ্ন 3“ডিফারেনশিয়েবল লিনিয়ার অ্যালজেব্রা” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
প্রশ্ন 4“ডিফারেনশিয়েবল লিনিয়ার অ্যালজেব্রা” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
উত্তর দেওয়া হয়েছে: 0/4