الگوریتم دستهبندی بیز ساده (Naive Bayes Algorithm)
روش بیز روشی برای دستهبندی پدیدهها بر اساس احتمال وقوع یا عدم وقوع یک پدیده است. این روش یکی از سادهترین الگوریتمهای پیشبینی در جهان به شمار میرود و نکته مهم در مورد این الگوریتم این است که در عین سادگی دقت قابل قبولی هم دارد که هر دو از مزیتهای آن به شمار میروند.
دقت این الگوریتم را میتوان با استفاده از برآورد چگالی کرنل بهصورت قابلتوجهی بالا برد. شیوه یادگیری درروش بیز ساده از نوع یادگیری با نظارت است. این روش در دهه ۱۹۶۰ در میان دانشمندان بازیابی اطلاعات توسعه یافت و هنوز هم از روشهای محبوب در دستهبندی اسناد به شمار میآید.
امروزه برنامههای کاربردی بسیاری وجود دارند که پارامترهای مختلف مربوط به الگوریتم بیز ساده را تخمین میزنند، با استفاده از این ابزارها افراد بدون سروکار داشتن با تئوری بیز میتوانند از این امکان در راستای حل مسائل موردنظر بهره ببرند. باوجود مسائل طراحی و پیشفرضهایی که در خصوص روش بیز وجوددارد، این روش برای طبقهبندی کردن بیشتر مسائل در جهان واقعی مناسب است.
برای دستهبندی کردن ساده و تعیین روشی برای تشخیص برچسب اشیا یا نقاط اکثر اوقات از فن دستهبند بیز ساده استفادهمیشود. درواقع برای بهکارگیری دستهبند بیز ساده الگوریتم یکتایی وجود ندارد و در عوض خانوادهای از الگوریتمها موجود است که با فرض استقلال ویژگیها یا متغیرها نسبت به یکدیگر عمل میکنند.
در بیشتر مدلها و فنهای بیز ساده از روش حداکثر سازی تابع درست نمایی استفاده میشود. هرچند فن دستهبند بیز ساده دارای فرضیههایی محدود و قابلدسترس است ولی درعینحال بهخوبی میتواند از عهده حل مسائل واقعی برآید و بهعنوان یک رقیب برای روشهای دیگر ازجمله روش جنگل تصادفی (Random Forest) محسوب شود.
یکی از مزایای قابلتوجه در دستهبند بیز ساده امکان برآورد کردن هر یک از پارامترهای مدل با اندازه نمونه کوچک بهعنوان مجموعه دادهکاوی (Training Data) است.
چرا نام این الگوریتم را بیز سادهلوح گذاشتهاند؟
دلیل این انتخاب روشن است. درروش بیز ساده فرض اولیه بر مستقل بودن متغیرهای پیشبینی است و به همین دلیل است که بیز ساده یا بیز سادهلوح نامیده میشود. نکتهای که باید به یادداشت این است که پیشفرضهای مطرحشده Naive Bayes بهطور کامل و صد در صد در موقعیتهای واقعی درست نیستند. در حقیقت فرض مستقل بودن هرگز درست نیست، اما بیشتر اوقات در تمرین و عمل بهخوبی کار میکند. انواع مختلفی از مدلهای دستهبندی بیز ساده وجود دارند که مهمترین انواع آنها عبارت هستند از:
دستهبند بیز ساده گاوسی (Gaussian Naive Bayes):
این سادهترین طبقهبندی کننده Naive Bayes است با این فرض که داده هر برچسب از یک توزیع ساده گوسی گرفتهشده است. وقتی فرضیات یک مقدار پیوسته را اشغال میکنند و گسسته نیستند، فرض میکنیم که این مقادیر از توزیع تک گوسی نمونهبرداری میشوند. به نمودار زیر که نشاندهنده توزیع گاوسی است، دقت فرمایید:
دستهبند بیز ساده چندجملهای (Multinomial Naive Bayes):
دیگر طبقهبندی کننده مفید Naive Bayes،Naive Bayes چندجملهای است که در آن فرض میشود ویژگیها از یک توزیع ساده چندجملهای گرفتهشدهاند. چنین Naive Bayes برای ویژگیهایی که ارائهدهنده اعداد گسسته هستند مناسبتر است. این کلاسه بند عمدتاً برای مصالح کلاسهبندی اسناد مورداستفاده قرار میگیرد.
دستهبند بیز ساده برنولی (Bernoulli Naive Bayes):
یک مدل مهم دیگرNaive Bayes برنولی است که در آن فرض میشود ویژگیها دودویی باشند (صفر و یک). طبقهبندی متن با مدل ‘bag of words’میتواند یک برنامه کاربردی از Naive Bayes برنولی باشد. این شبیه بیز ساده چندجملهای است، اما فرضیات متغیرهای بولی هستند. پارامترهایی که ما از آنها برای پیشبینی متغیر کلاس استفاده میکنیم فقط مقدار بله یا نه را میگیرند. مزایا و معایب استفاده از این الگوریتم برای دستهبندی مطابق نظر کاربران به شرح زیر هست:
مزایا:
معایب:
بهطور خلاصه میتوان اینطور جمعبندی کرد که استفاده از الگوریتم های بیز ساده در آنالیز احساس، پالایه اسپم، دستگاههای توصیه و غیره مورداستفاده قرار میگیرند. کلاسه بندهای بیز ساده سریع هستند و پیادهسازی آنها آسان است اما بزرگترین عیب آنها این است که نیاز دارد فرضیات مستقل باشند. در اکثر موارد واقعی فرضیات وابسته هستند که این مانع عملکرد آن میشود.