آنالیز افتراقی خطی

**آنالیز تشخیصی خطی**  و **تشخیص خطی فیشر** روش‌های آماری هستند که از جمله در یادگیری ماشین و بازشناخت الگو برای پیدا کردن ترکیب خطی خصوصیاتی که به بهترین صورت دو یا چند کلاس از اشیا را از هم جدا می‌کند، استفاده می‌شوند.

آنالیز تشخیصی خطی بسیار به تحلیل واریانس و تحلیل رگرسیونی نزدیک است؛ در هر سهٔ این روش‌های آماری متغیر وابسته به صورت یک ترکیب خطی از متغیرهای دیگر مدل‌سازی می‌شود. با این حال دو روش آخر متغیر وابسته را از نوع فاصله‌ای در نظر می‌گیرند در حالی که آنالیز افتراقی خطی برای متغیرهای وابسته‌ی اسمی یا رتبه‌ای به کار می‌رود. از این رو آنالیز افتراقی خطی به رگرسیون لجستیک شباهت بیشتری دارد.

آنالیز تشخیصی خطی همچنین با تحلیل مؤلفه‌های اصلی و تحلیل عاملی هم شباهت دارد؛ هر دوی این روش‌های آماری برای ترکیب خطی متغیرها به شکلی که داده را به بهترین نحو توضیح بدهد به کار می‌روند یک کاربرد عمده‌ی هر دوی این روش‌ها، کاستن تعداد بعدهای داده است. با این حال این روش‌ها تفاوت عمده‌ای با هم دارند: در آنالیز افتراقی خطی، تفاوت کلاس‌ها مدل‌سازی می‌شود در حالی که در تحلیل مؤلفه‌های اصلی تفاوت کلاس‌ها نادیده گرفته می‌شود.

LDA ارتباط نزدیکی با تحلیل واریانس و تحلیل رگرسیون دارد که سعی دارند یک متغیر مستقل را به عنوان ترکیبی خطی از ویژگی‌های دیگر بیان کنند. این متغیر مستقل در LDA به شکل برچسب یک کلاس است. همچنین LDA ارتباطی تنگاتنگ با تحلیل مؤلفه‌های اصلی PCA دارد. چرا که هر دو متد به دنبال ترکیبی خطی از متغیرهایی هستند که به بهترین نحو داده‌ها را توصیف می‌کنند. LDA همچنین سعی در مدل‌سازی تفاوت بین کلاس‌های مختلف داده‌ها دارد. از LDA زمانی استفاده می‌شود که اندازه‌های مشاهدات، مقادیر پیوسته باشند.

## LDA برای دو کلاس
مجموعه‌ای از مشاهدات را به نام { \vec x }  برای هر نمونه از یک شی یا پدیده با کلاس شناخته شده y در نظر بگیرید. این مجموعه از نمونه‌ها مجموعه آموزش نامیده می‌شود. مسئله دسته‌بندی پیدا کردن یک پیش‌بینی‌کننده (predictor) برای هر کلاس از همان توزیع (نه لزوماً از مجموعه آموزش) داده شده از مجموعه مشاهده x است..

LDA با این فرض که تابع چگالی احتمال شرطی p(\vec{x}|y=0) و p(\vec{x}|y=1) هر دو، توزیع نرمال با پارامترهای میانگین و کوواریانس (\vec{u_0},\Sigma_0) و (\vec{u_1},\Sigma_1)هستند. حال با کمک راه حل بهینه بیز، پیش‌بینی می‌شود که نقاطی درست‌نمایی(likelihood) برای آن‌ها کم‌تر از مقدار آستانه T باشد،از کلاس دوم هستند؛ یعنی:

   (\vec x- \vec \mu_0)^T \Sigma_0^{-1} ( \vec x- \vec \mu_0) + \ln|\Sigma_0| - (\vec x- \vec \mu_1)^T \Sigma_1^{-1} ( \vec x- \vec \mu_1) - \ln|\Sigma_1| \ 

بدون هیچ فرض اضافه‌ای دسته‌بندی‌کننده حاصل به عنوان QDA (Quadratic discriminant analysis) شناخته می‌شود. LDA علاوه براین‌ها فرض ساده کننده هم‌واریانسی(Homoscedasticity) (یعنی برابری کوواریانس کلاس‌ها) و کوواریانس‌ها رتبه کامل هستند. در این مورد، اصطلاحات گوناگون باطل می‌شوند و معیار تصمیم آستانه ضرب نقطه ای زیر خواهد بود:

  \vec w \cdot \vec x > c 

برای آستانه معین ثابتی به نام c، در حالی که:

 \vec w \propto \Sigma^{-1} (\vec \mu_1 - \vec \mu_0)

بدین معنی است که معیار یک ورودی که در یک کلاس y جای دارد، تابعی ناب از ترکیب خطی مشاهدات شناخته شده‌است.

دیدن این نتیجه از نظر هندسی اغلب مفید است: معیار یک ورودی که در یک کلاس y جای دارد تابعی ناب از پروجکشن فضای چند بعدی نقطه بر روی بردار است (بنابراین، تنها جهت آن را در نظر می‌گیریم). به بیانی دیگر، مشاهده به کلاس y تعلق دارد اگر متناظرش در یک طرف معین از ابر صفحه عمود بر واقع شده باشد. موقعیت صفحه توسط مقدار آستانه c تعریف می‌شود.

## LDA استاندارد برای k کلاس
CDA آنالیز افتراقی استاندارد محورهای مختصاتی (K-1 مختصات استاندارد، K تعداد کلاس‌ها را نشان می‌دهد) را که به بهترین شکل دسته‌ها را از هم مجزا می‌کند، پیدا خواهد کرد. این توابع خطی ناهمبسته هستند و k-1 فضا را از طریق ابر n بعدی از داده‌ها که به بهترین شکل k گروه را از هم مجزا می‌کند. برای جزئیات بیشتر LDA چند کلاسه را ببینید.

## افتراق‌دهنده‌ی خطی فیشر
هرچند مقاله اصلی فیشر رویکرد متفاوتی برای تعریف یک افتراق‌دهنده به کار می‌گیرد و بعضی فرضیات LDA مانند کلاس‌های دارای توزیع نرمال یا کوواریانس برابر کلاس را ندارد، واژه‌های افتراق خطی فیشر و LDA معمولاً به جای یکدیگر به کار می‌روند.

دو کلاس از مشاهدات را با میانگین‌ها و کوواریانس‌ها در نظر بگیرید. حالا ترکیب خطی دارای میانگین و واریانس هستند. افتراق‌دهنده فیشر بین این دو توزیع را به صورت نسبت واریانس بین دو کلاس به واریانس درون دو کلاس تعریف کرد:

S=\frac{\sigma_{\text{between}}^2}{\sigma_{\text{within}}^2}= \frac{(\vec w \cdot \vec \mu_{y=1} - \vec w \cdot \vec \mu_{y=0})^2}{\vec w^T \Sigma_{y=1} \vec w + \vec w^T \Sigma_{y=0} \vec w} = \frac{(\vec w \cdot (\vec \mu_{y=1} - \vec \mu_{y=0}))^2}{\vec w^T (\Sigma_{y=0}+\Sigma_{y=1}) \vec w} 

به عبارت دیگر این مقدار، مقیاسی از نسبت سیگنال به نویز برای برچسب گذاری کلاس است. می‌توان نشان داد که حداکثر جداسازی زمانی اتفاق می‌افتد که:

 \vec w \propto (\Sigma_{y=0}+\Sigma_{y=1})^{-1}(\vec \mu_{y=1} - \vec \mu_{y=0}) 

وقتی که فرضیات LDA ارضا شد، معادله بالا معادل با LDA خواهد بود.
حتماً به یاد داشته باشید که بردار بردار نرمال ابرصفحه جداکننده است. به عنوان یک مثال، در یک مسئله دوبعدی، خطی که دو گروه را به بهترین شکل تقسیم می‌کند عمودمنصف است.

به‌طور کلی، نقاط داده‌ای که باید جدا شوند باید بر روی بردار  { \vec w}  تصویر شوند. پس آستانه‌ای که به بهترین وجه داده را جداسازی می‌کند از تحلیل توزیع یک‌بعدی انتخاب می‌شود. قاعده‌ای کلی برای آستانه وجود ندارد. به هر حال، اگر تصاویر نقاط از هر دو کلاس تقریباً یک توزیع را نشان دهد، ابرصفحه وسط تصاویر دو مرکز یک انتخاب مناسب خواهد بود. در این مورد پارامتر c در شرط آستانه صریحاً به صورت زیر خواهد بود:

 c = \vec w \cdot \frac12 (\vec \mu_{y=0} + \vec \mu_{y=1}) = \frac{1}{2} \vec\mu_{y=1}^t \Sigma^{-1} \vec\mu_{y=1} - \frac{1}{2} \vec\mu_{y=0}^t \Sigma^{-1} \vec\mu_{y=0} 

## LDA چند کلاسه
وقتی که بیش از یک کلاس وجود داشته باشد، همان معادلات و روابطی که در تکنیک افتراقی فیشر به کار می‌روند را می‌توان برای پیدا کردن آن زیرفضایی به کار برد که به‌نظر می‌رسد می‌تواند تمام دامنه‌ی تغییرپذیری داده‌ها در کلاس‌های گوناگون را نشان دهد. چنین تعمیمی به واسطه‌ی کارهای C.R. Rao  به دست آمده است. فرض کنید هر کلاس از C کلاس یک میانگین \mu_i و یک کوواریانس  \sigma  دارد. پس تغییرپذیری بین کلاس‌ها ممکن است با استفاده از نمونه کوواریانس میانگین‌های کلاس تعریف شود:

 \Sigma_b = \frac{1}{C} \sum_{i=1}^C (\mu_i-\mu) (\mu_i-\mu)^T 

در حالی که میانگین، میانگین، کلاس‌ها است. جداسازی کلاس در یک جهت در این مورد با عبارت زیر داده خواهد شد:

 S = \frac{\vec w^T \Sigma_b \vec w}{\vec w^T \Sigma \vec w} 

معنی اش این است که وقتی یک بردار ویژه از باشد جداسازی، معادل با مقدار ویژه متناظرش خواهد بود.

اگر  \Sigma^{-1} \Sigma_b  قطری باشد، تغییرپذیری بین ابعاد (features) در زیرفضای گسترش یافته با بردارهای ویژه متناظر با c-1 امین مقدار ویژه بزرگ‌تر (به این علت که سلسله از c-1 در اکثر است). چنین بردارهای ویژه ای مانند PCA در ابتدا در کاهش ابعاد استفاده می‌شدند. بردارهای ویژه متناظر با مقادیر ویژه کوچک‌تر برای انتخاب داده‌های آموزش حساس‌تر است، و اغلب لازم است تا مرتب‌سازی توصیف شده در بخش بعد را به کار برد.

اگر به جای کاهش ابعاد دسته‌بندی موردنیاز باشد، تعدادی تکنیک جایگزین وجود دارد. برای مثال، کلاس‌ها را می‌توان پارتیشن‌بندی کرد و آنالیز افتراقی فیشر استاندارد یا LDA را برای دسته‌بندی هر پارتیشن به کار برد. یک مثال رایج از این رویکرد "یکی در برابر بقیه" است، وقتی که نقاط از یک کلاس در یک گروه قرار می‌گیرند، و هر چیز دیگر در دیگری، سپس LDA اعمال می‌شود. که این کار به C classifier منتج می‌شود، که نتایج آن ترکیب می‌شود. روش رایج دیگری دسته‌بندی جفتی است، جایی که یک دسته‌بند جدید برای هر جفت از کلاس‌ها ایجاد می‌شود (در مجموع C-1 دسته بندی‌کننده داده می‌شود)، با ترکیب دسته‌بندی کننده‌های منفرد برای تولید یک دسته‌بندی‌کننده نهایی.

## کاربرد عملی
در عمل، میانگین کلاس‌ها و کوواریانس‌ها معلوم نیست. هرچند می‌توان آن‌ها را از مجموعه آموزش تخمین زد. برآورد بیش‌ترین درست‌نمایی (maximum likelihood estimate) یا برآورد پسین حداکثر(maximum a posteriori) را می‌توان به جای مقدار دقیق در معادلات بالا به کار برد. اگرچه برآورد کوواریانس بعضی مواقع بهینه در نظر گرفته شده‌است، به این معنی نیست که افتراق به‌دست آمده با جایگزینی این مقادیر همیشه بهینه باشد، حتی اگر فرض توزیع نرمال کلاس‌ها درست باشد.

پیچیدگی دیگر در اعمال LDA و افتراق‌دهنده‌ی فیشر به داده‌های واقعی وقتی که تعداد مشاهدات هر نمونه از تعداد نمونه‌ها کم‌تر باشد روی می‌دهد. در این مورد، برآورد کوواریانس full rank نیست، پس نمی‌تواند معکوس شود. روش‌های گوناگونی برای حل این مشکل وجود دارد. یک روش استفاده از شبه معکوس به جای ماتریس معکوس معمولی در فرمول بالاست. به هر حال، پایداری بهتر عددی با پرتو اندازی (پروجکشن) مسئله بر زیرفضای گسترش یافته با ممکن است به‌دست آید. راهبرد دیگر برای حل مشکل اندازه نمونه استفاده از یک برآوردگر انقباضی (Shrinkage estimator) از ماتریس کوواریانس است، به بیان ریاضی:

 C_\text{new} = (1-\lambda) C+\lambda I\,

 I ماتریس همانی است، و  \lambda پارامتر منظم‌کننده (regularization parameter) یا شدت انقباض است. این کار، مبنای آنالیز افتراقی منظم‌سازی شده یا آنالیز افتراقی انقباضی را فراهم می‌کند.

همچنین در بسیاری از موارد عملی افتراق خطی مفید نیست. LDA و افتراق‌دهنده‌ی فیشر با استفاده از ترفند کرنل Kernel method قابل تعمیم به دسته‌بندی غیرخطی هستند. در اینجا مشاهدات اصلی به صورت مؤثر به یک فضای غیرخطی بالاتر نگاشت می‌شوند. دسته‌بندی خطی در این فضای غیرخطی معادل دسته‌بندی غیرخطی در فضای اصلی است. مثال بسیار رایج روش کرنل افتراقی فیشر kernel Fisher discriminant است.

LDA قابل تعمیم به آنالیز افتراقی چند دسته‌ایی نیز است، وقتی که c یک متغیر رتبه‌ای با N حالت ممکن به جای دو حالت باشد. به‌طور مشابه، اگر چگالی‌های شرطی کلاس با یک کوواریانس مشترک نرمال باشد، آماره بسنده برای مقادیری از N تصویر (پروجکشن) است، که زیرفضایی است که با N میانگین گسترش یافته‌است، با affine projected که به وسیله ماتریس کوواریانس معکوس. این پروجکشن‌ها در حل یک مسئله مقدار ویژه تعمیم یافته یافت می‌شوند، جایی که صورت ماتریس کوواریانسی است که با درنظرگرفتن میانگین‌ها به عنوان نمونه‌ها تشکیل شده‌است، و مخرج ماتریس کوواریانس مشترک است.

## جستارهای وابسته
* لوجیت
* پرسپترون
* تحلیل مولفه‌های اصلی

## منابع

رده:آمار چندمتغیره
رده:الگوریتم‌های دسته‌بندی
رده:بازاریابی
رده:تحقیقات بازاریابی
رده:تقسیم‌­بندی بازار
رده:دسته‌بندی آماری
رده:رفتارشناسی مشتریان
رده:روان‌سنجی