ماتریس هسین و خصوصیات آن – به زبان ساده


در این نوشتار به بررسی ماتریس هسین (Hessian Matrix) که از مشتقات جزئی یک تابع چند متغیره تشکیل شده، خواهیم پرداخت. در ریاضیات، «ماتریس هسین» که گاهی «هشین» نیز گفته میشود، یک ماتریس مربعی است که شامل مشتقات دوم یک تابع حقیقی-مقدار با چند متغیر است. چنین ماتریسی، «انحنای محلی» (Local Curvature) تابع را برای همه متغیرها بیان میکند.
برای آشنایی بیشتر با ماتریس و مشتقات جزئی بهتر است مطالب دیگر مجله فرادرس با عناوین ماتریس مربعی و خصوصیات آن — از صفر تا صد و مشتق جزئی — به زبان ساده را مطالعه کنید. همچنین خواندن نوشتارهای توابع چند متغیره — به زبان ساده و روشهای مشتقگیری — به همراه مثال نیز خالی از لطف نیست.
ماتریس هسین و خصوصیات آن در ریاضی
در علوم ریاضی و بخصوص در بحث مشتقات توابع چند متغیره، از ماتریسی استفاده میشود که هر درایه آن، یکی از «مشتقات جزئی» یا پارهای (Partial Derivation) تابع را نمایش میدهد. چنین ماتریسی اولین بار توسط ریاضیدان آلمانی «اتو هسه» (Ludwig Otto Hesse) در اوایل قرن نوزدهم، معرفی شد.
به همین دلیل، این ماتریس به نام ماتریس هسین معروف شده است. این شیوه نمایش، بخصوص در مباحث مربوط به بهینهسازی چند متغیره به کار رفته و اساس عملیات جبر خطی در کمینه یا بیشینهسازی تابع چند متغیره محسوب میشود.

تعریف رسمی ماتریس هسین
فرض کنید تابع چند متغیره از به تعریف شده باشد. در نتیجه ورودیهای این تابع یک بردار مثل از است. همچنین خروجی یا مقادیر حاصل از محاسبه تابع نیز یک عدد حقیقی است. به این ترتیب خواهیم داشت:
اگر مشتقهای مرتبه دوم این تابع، همگی موجود بوده و همه آنها، پیوسته روی دامنه تابع نیز باشند، آنگاه ماتریس هسین که با نماد مشخص میشود، به صورت زیر تعریف خواهد شد. توجه داشته باشید که اگر تابع ، یک تابع -متغیره باشد، این ماتریس نیز یک ماتریس مربع خواهد بود.
روش دیگر برای نمایش ماتریس هسین، شیوه معرفی درایههای آن است. در این حالت عناصر یا درایههای مربوط به سطر ام و ستون ام با اندیس مشخص شده و به شکل زیر معرفی میگردند.
ماتریس هسین یک ماتریس متقارن است. به این معنی که عناصر نسبت به قطر اصلی، دارای تقارن بوده و تکرار میشوند. البته این خاصیت به علت خاصیت جابجایی در مشتقگیری برای توابع پیوسته است. این موضوع تحت «قضیه شوارتز» (Schwartz Theorem) مطرح میشود.
نکته: دترمینان ماتریس هسین نیز از اهمیت خاصی برخوردار است. به همین علت این دترمینان را به نام «دترمینان هسین» (Hessian Determinant) میشناسیم.
توجه داشته باشید که ماتریس هسین تابع همان «ماتریس ژاکوبی» (Jacobian matrix) از گرادیان تابع است. در این صورت داریم:
کاربردهای ماتریس هسین
در ریاضیات و رشتههای فنی، ماتریس هسین کاربردهای زیادی دارد که در ادامه به بعضی از آنها اشاره خواهیم داشت.
نقطه عطف
اگر تابع یک چند جملهای متجانس با سه متغیر باشد، معادله یک «معادله ضمنی» (Implicit) برای یک منحنی جبری در صفحه مختصات است. در چنین حالتی «نقاط عطف» (Inflection Points) برای این منحنی، دقیقا نقاط «غیرمنفرد» (non-singular) هستند که در آن، دترمینان ماتریس هسین، صفر است. این ویژگی توسط «قضیه بزو» (Bezout's Theorem) قابل اثبات است. این قضیه بیان میکند که یک منحنی در فضای سه بُعدی (سه متغیره) حداکثر دارای ۹ نقطه عطف خواهد بود، زیرا دترمینان ماتریس هسین، یک چند جملهای درجه ۳ تولید میکند.
نکته: چند جملهای متجانس دارای جملاتی است که مجموع توانهای متغیرها در هر جمله، برابر و یکسان است. برای مثال چند جملهای زیر از نوع متجانس است. مشخص است که مجموع توانهای متغیرها در هر جمله برابر با ۵ است.

آزمون مشتق دوم
برای یک «تابع محدب» (Convex Function)، ماتریس هسین یک ماتریس «نیمه معین مثبت» (Semi-definite Positive) است. این ویژگی را میتوان به عنوان یک آزمون برای تابع در یک نقطه بحرانی در نظر گرفت. به این ترتیب نقطهای از تابع که در آن ماتریس هسین، مثبت یا منفی معین باشد، میتواند به ترتیب یک نقطه بیشینه یا کمینه یا یک نقطه «زینی» (saddle) در نظر گرفته شود.
اگر ماتریس هسین یک ماتریس «معین مثبت» (Positive Definite) در نقطه باشد، آنگاه تابع دارای یک نقطه کمینه محلی در است. همچنین با «منفی معین» (Negative Definite) بودن ماتریس هسین در نقطه ، تابع ، دارای یک نقطه بیشینه محلی در خواهد بود.
اگر ماتریس هسین، هم دارای «مقادیر ویژه» (Eigenvalue) با علامتهای مثبت و هم منفی در نقطه باشد، آنگاه این نقطه یک نقطه زینی برای تابع در نظر گرفته میشود. در غیر اینصورت، آزمون مشتق دوم کارایی نخواهد داشت. این موضوعات نشان میدهند که در نقطهای که بیشینه یا کمینه محلی رخ میدهد، ماتریس هسین به ترتیب، نیمه معین منفی و نیمه معین مثبت است. البته آزمون مشتق دوم برای توابع یک و دو متغیره ساده است. در حالتی که تابع یک متغیره باشد، ماتریس هسین، فقط یک درایه دارد. اگر این درایه، برای یک نقطه بحرانی، مثبت باشد، نقطه یک نقطه کمینه محلی است و در صورت منفی بودن، بیشینه محلی خواهد بود. همچنین به یاد داشته باشید که اگر مقدار مشتق دوم، صفر باشد، آزمون کارا نیست و نمیتوان در مورد کمینه یا بیشینه بودن نقطه بحرانی، نظری ارائه نمود.
تعیین نقاط بحرانی
اگر «گرادیان» (Gradient) که برداری متشکل از مشتقات جزئی تابع است، در نقطهای مثل ، صفر باشد، آنگاه تابع دارای یک «نقطه بحرانی» (Critical Point) در است. در این حالت دترمینان ماتریس هسین در نقطه به عنوان یک ابزار ممیزی یا «تشخیصی» (Discriminant) شناخته میشود.
بهینهسازی
از ماتریس هسین برای بهینهسازی در «مسائل با ابعاد بزرگ» (Large-scale Problem) استفاده میشود. در این بین شیوههای مانند «روش نیوتن» (Newton Method) برای بهینهسازی استفاده میشود زیرا ضرایب عبارتهای جبری «بسط تیلور» (Taylor Expansion) تابعی به صورت زیر هستند.
توجه داشته باشید که نماد بیانگر گرادیان یا است. مرتبه زمانی و بار پردازشی برای ماتریس هسین از مرتبه است که زیاد به نظر میرسد. همچنین فضای ذخیره سازی چنین ماتریسی نیز از همین مرتبه است. این موضوع برای ذخیره سازی چنین ماتریسی در مسائل ابعاد بزرگ، نظیر توابع زیان در «شبکههای عصبی» (Neural nets)، «فیلدهای تصادفی شرطی» (Conditional Random Fields) و مدلهای آماری با پارامترهای متعدد در مسائل تحلیل با مقیاس بزرگ، مناسب نیست. به همین دلیل روشها و تکنیکهای دیگری مطابق با روش «نیوتن بریده شده» (Truncated Newton) و الگوریتم «نیمه-نیوتنی» (Quasi-Newton) ابداع و در چنین مواردی مورد استفاده قرار میگیرند.
روش نیمه-نیوتنی بر اساس محاسبه تقریبی ماتریس هسین عمل میکند. یکی از الگوریتمهای محبوب در این زمینه الگوریتم BFGS نام دارد که مخفف عبارت (Broyden–Fletcher–Goldfarb–Shanno algorithm) است. در این الگوریتم از این موضوع استفاده میشود که اغلب الگوریتمهای بهینهسازی از «ماتریس هسین» به عنوان یک «عملگر خطی» (Linear Operator) استفاده میکنند. به این ترتیب بسط ماتریس هسین براساس گرادیان به صورت زیر خواهد بود.
حال در نظر بگیرید که باشد که در آن یک ثابت یا اسکالر است. بر این اساس رابطه زیر حاصل میشود.
پس داریم:
اگر مقدار گرادیان قبلا حساب شده باشد، مقدار تقریبی ماتریس هسین از رابطه بالا به سادگی حاصل میشود.
کاربردهای دیگر
ماتریس هسین معمولاً برای بیان اپراتورهای پردازش تصویر در پردازش تصویر و بینایی رایانهای استفاده میشود. به عنوان مثال میتوان به مواردی مانند «آشکارساز لکه لاپلاس گاوسی» (Laplacian of Gaussian detector blob) و «آشکارساز لکه دترمینان ماتریس هسین» (Determinant of Hessian blob detector) اشاره کرد که در پردازش تصویر بسیار به کار گرفته میشوند.
ماتریس هسین تعمیم یافته
حالت تعمیم یافته ماتریس هسین را در زمانی به کار میبرند که قید یا محدودیتهایی برای بهینهسازی وجود دارد. در این بین ماتریس «هسین مرزی» (Bordered Hessian) به کار میآید. در ادامه به معرفی این ماتریس خواهیم پرداخت.
ماتریس هسین مرزی
از یک ماتریس «هسین مرزی» (Bordered Hessian) برای آزمون مشتق دوم در برخی از مسائل «بهینه سازی مقید» (Constrained Optimization Problems) استفاده میشود. در اینجا هم با یک تابع مانند مواجه هستیم که باید بیشینه یا کمینه آن با توجه به یک قید یا محدودیت در مورد متغیرها، مشخص شود. در این حالت، تابع محدودیت به گونهای در نظر گرفته میشود که بوده، در نتیجه ماتریس هسین مرزی، همان هسین تابع لاگرانژ به فرم زیر خواهد بود.
به این ترتیب خواهیم داشت:
با وجود رابطه بالا، اگر تعداد قیدها برابر با باشد، درایههای گوشه سمت چپ بالایی ماتریس گفته شده، تشکیل یک ناحیه داده که همگی صفر بوده و به آن یک بلوک صفر میگویند. در نتیجه سطر از بالای ماتریس و ستون از چپ، صفر بوده و مرزهای بلوک را تعیین میکنند.
قواعد فوق بیان میکند که روشی که قبلا برای پیدا کردن نقاط حداکثر یا حداقل (از جمله نقاط بحرانی با هسین غیر منفرد) توسط مثبت معین یا منفی معین بودن ماتریس هسین، به کار میرود، کارایی ندارد. زیرا در اینجا ماتریس حاصل نه معین مثبت است و نه معین منفی. همچنین مشخص است که اگر یک بردار با درایه ابتدایی غیر صفر باشد، خواهیم داشت:
از طرفی، آزمایش مشتق دوم در اینجا شامل محدودیتهای علامت برای دترمینان زیرماتریسهایی است که ماتریس هسین مرزی را تشکیل میدهند. به طور شهودی، میتوان مسئلهای با قید یا محدودیت را به صورت یک مسئله با متغیر آزاد در نظر گرفت. به عنوان مثال، بیشینه سازی تابعی به فرم نسبت به قید به یک مسئله بیشینهسازی به فرم بدون قید در خواهد آمد.
به طور خاص، شرایط علامت، به دنبالهای از دترمینانهای زیر ماتریسهایی در گوشه چپ بالایی ماتریس اصلی (ماتریس هسین) مرتبط میشود. چنین بخشی از ماتریس را «کهاد ماتریس» یا «ماتریس کهاد» (Minor) میگویند. البته از کهادهای اساسی اولیه، میتوان چشم پوشی کرد. کوچکترین کهاد، از بریدن سطر و ستون اولیه ساخته میشود. به این ترتیب کهاد بعدی نیز از برش سطر و ستونها ساخته میشود. دترمینانهای ماتریس کهاد بعدی نیز به همین شکل استخراج شده و در انتها نیز کهاد آخر همان ماتریس هسین مرزی خواهد بود. این موضوع را در رابطه بالا به خوبی میتوان دید.
به این ترتیب ماتریس کهاد باید مورد بررسی قرار گیرد که هر کدام از آنها در نقطه مورد نظر که کاندید نقطه کمینه یا بیشینه است، محاسبه شده و نسبت به علامت دترمینان تصمیمگیری صورت میگیرد. شرط کافی برای آنکه نقطهای محاسبه شده، نقطه بیشینه باید آن است که کهادها (دترمینان ماتریسهای برش داده شده از ماتریس اصلی) به طور متناوب تغییر علامت دهند و کوچکترین آنها نیز علامتی برابر با داشته باشد.
به همین ترتیب شرط کافی برای آنکه نقطه مورد نظر، تابع را کمینه کند، آن است که همه کهادها دارای علامتی به صورت باشند. واضح است که در صورتی که بوده و در حقیقت هیچ قید یا محدودیتی در مسئله وجود نداشته باشد، شرط کمینه یا بیشینه بودن تابع در نقطه ، همان منفی یا مثبت بودن معین ماتریس هسین بدون مرز (Unbordered Hessian) است.
توابع بردار-مقدار
این بار را به عنوان یک فیلد برداری و به صورت در نظر بگیرید. در این صورت خواهیم داشت:
پس مجموعه مشتقات جزئی یا پارهای مرتبه دوم دیگر یک ماتریس نیست. در عوض تشکیل یک تانسور (Tensor) از مرتبه سوم را خواهد داد. میتوان این تانسور را به عنوان بردار حاصل از ماتریس هسین در نظر گرفت که برای هر مولفه از تولید شدهاند.
واضح است که به ازاء این تانتسور به ماتریس معمول هسین تبدیل میشود.
تعمیم ماتریس هسین به فضای اعداد مختلط
در موضوع و مباحث توابع چند متغیره مختلط، ماتریس هسین میتواند به گونهای مشابه تعریف شود. فرض کنید تابع از یک فضای -بُعدی به اعداد مختلط تعریف شده باشد. در این صورت ماتریس تعمیم یافته هسین برای چنین تابعی به صورت مشتق مرتبه دوم نوشته شده که مولفه یا درایههای آن به صورت زیر هستند.
نکته: اگر تابع شرط مربوط به «ریمان-کوشی» (Cauchy–Riemann conditions) در بُعد را داشته باشد، درایههای ماتریس هسین مختلط همگی صفر هستند و تشکیل یک ماتریس صفر مربعی میدهند.
تعمیم ماتریس هسین برای منیفولد ریمان
فرض کنید که یک منیفولد ریمان و یک اتصال یا «پیوند لوی-سیویتا» (Levi-Civita Connection) است. به این ترتیب تابع از به مجموعه اعداد حقیقی را یک «تابع هموار» (Smooth Function) در نظر میگیریم. با وجود این شرطها، تانسور هسین را به صورت زیر تعریف میکنیم.
$$\large \displaystyle \mbox{Hess} (f) \in \Gamma(T^*M \otimes T^*M) \text{ by } {\displaystyle {\mbox{Hess}} (f) : = \nabla \nabla f = \nabla df} \mbox{Hess}(f) : = \nabla \nabla f = \nabla df$$
در نظر داشته باشید که مشتق بر حسب متغیر اول تابع، مشابه مشتق عادی گرفته شده است. با انتخاب کردن مختصات محلی میتوان برای تابع ، ماتریس هسین را به صورت زیر بنویسیم.
$$\large \mbox{Hess} (f) = \nabla_i\, \partial_j f \ dx^i \! \otimes\! dx^j = \left( \frac{\partial^2 f}{\partial x^i \partial x^j} - \Gamma_{ij}^k \frac{\partial f} {\partial x^k} \right) dx^i \otimes dx^j $$
فرمها یا نمایش مشابه برای ماتریس هسین در موقعیت گفته شده، میتواند به صورت زیر نوشته شود.
$$\large \mbox{Hess} (f) (X,Y) = \langle \nabla_X \nabla_\mbox{f},Y \rangle $$
و همچنین ماتریس هسین در این حالت، به شکل زیر نیز قابل نمایش است.
$$\large\mbox{Hess} (f) (X,Y) = X (Yf) - df( \nabla_XY) $$
خلاصه و جمعبندی
در این نوشتار با مفهوم و شیوه نمایش مشتقات جزئی مرتبه دو برای یک تابع چند متغیره آشنا شدیم. نمایش این مشتقات به صورت یک ماتریس باعث پدید آمدن ماتریس هسین میشود که کاربردهای زیادی در تحلیل توابع چند متغیره دارد. از ماتریس هسین و دترمینان آن در تعیین نقاط بحرانی، بهینهسازی تابعی و همچنین تعیین نقاط عطف تابع استفاده میشود. اگر این ماتریس را در فضای تک متغیره در نظر بگیریم، تمامی قواعد مربوط به مشتق توابع تک متغیره نیز برقرار خواهد بود.