پرش به محتوا

دسته‌بندی‌کننده بیز ساده

از ویکی‌پدیا، دانشنامهٔ آزاد

دسته‌بندی‌کننده بیز ساده (به انگلیسی: Naive Bayes classifier) در یادگیری ماشین به گروهی از دسته‌بندی‌کننده‌های ساده بر پایه احتمالات گفته می‌شود که با فرض استقلال متغیرهای تصادفی و براساس قضیه بیز ساخته می‌شوند. به‌طور ساده روش بیز روشی برای دسته‌بندی پدیده‌ها، بر پایه احتمال وقوع یا عدم وقوع یک پدیده است. این روش از ساده‌ترین الگوریتم‌های پیش‌بینی است که دقت قابل قبولی هم دارد.[۱][۲] دقت آن را می‌توان با استفاده از برآورد چگالی کرنل به صورت قابل توجهی بالا برد. شیوه یادگیری در روش بیز ساده از نوع یادگیری با نظارت است.[۱][۲] این روش در دهه ۱۹۶۰ در میان دانشمندان بازیابی اطلاعات توسعه یافت و هنوز هم از روش‌های محبوب در دسته‌بندی اسناد به‌شمار می‌آید.

بیز ساده فرض را بر استقلال متغیرهای پیش‌بینی می‌گذارد از این رو بیز ساده یا بیز ساده‌لوح خوانده می‌شود.[۲] برای نمونه در مسئله پیش‌بینی یک میوه (این میوه مثلاً ممکن است پرتقال باشد) اگر میوه نارنجی و کروی با شعاع حدود ده سانتی‌متر باشد و به شرطی که این احتمالات به درستی از همدیگر مستقل باشند بیز ساده در تشخیص اینکه این میوه پرتقال است یا نه به‌درستی عمل خواهد کرد.

برنامه‌های کاربردی بسیاری هستند که پارامترهای نایو بیز را تخمین می‌زنند، بنابراین افراد بدون سروکار داشتن با تئوری بیز می‌توانند از این امکان به منظور حل مسایل مورد نظر بهره ببرند. با وجود مسائل طراحی و پیش فرض‌هایی که در خصوص روش بیز وجود دارد، این روش برای طبقه‌بندی کردن بیشتر مسایل در جهان واقعی، مناسب است.

مدل‌سازی احتمالی

[ویرایش]

اگر متغیر ورودی داشته باشیم یعنی و خروجی از یک مجموعه عضوی باشد، هدف از مدل‌سازی پیدا کردن احتمال مشروط هر کدام از این دسته است یعنی . طبق قانون بیز این احتمال برابر است با[۳]

به عبارت دیگر احتمال مشروط به توزیع توأم و بستگی دارد. طبق قانون زنجیره‌ای این توزیع توأم برابر است با:

حال اگر فرض کنیم هر متغیری نسبت به متغیرهای دیگر به شرط دسته مستقل است یعنی به نتیجه پایین می‌رسیم:

با نرمال‌سازی عبارت قبلی می‌توان توزیع احتمال مشروط را پیدا کرد، در معادله پایین همان ضریب نرمال‌سازی است:

اگر هدف پیدا کردن محتملترین دسته باشد، به ضریب نرمال‌سازی یعنی نیازی نیست:

تخمین پارامترها

[ویرایش]

برای مدلسازی دسته‌بندی‌کننده بیز ساده برای تمام ها به تخمین و نیاز داریم. به سادگی با حساب درصد داده‌هایی که متعلق به کلاس هستند بدست می‌آید. برای بدست آوردن راه‌های مختلفی وجود دارد، تخمین توزیع چند جمله‌ای یا توزیع طبیعی روش‌هایی متداول برای این کار هستند.[۴]

در روش تخمین توزیع طبیعی، را با یک توزیع طبیعی با میانگین و واریانس تخمین می‌زنیم و و را از طریق درست نمایی بیشینه بدست می‌آوریم:

اگر گسسته باشد، توزیع را می‌توان با یک توزیع چند جمله‌ای تخمین زد.[۴]

مثال‌ها

[ویرایش]

بازی گلف

[ویرایش]

در این مثال داده‌هایی از شخصی داریم که به ما می‌گوید که در شرایط مختلف آب و هوایی این شخص گلف بازی می‌کند یا خیر.[۵]

آب و هوا دما رطوبت طوفانی بازی می‌کند؟
بارانی گرم زیاد خیر خیر
بارانی گرم زیاد بله خیر
ابری گرم زیاد خیر بله
آفتابی معتدل زیاد خیر بله
آفتابی سرد متوسط خیر بله
آفتابی سرد متوسط بله خیر
ابری سرد متوسط بله بله
بارانی معتدل زیاد خیر خیر
بارانی سرد متوسط خیر بله
آفتابی معتدل متوسط خیر بله
بارانی معتدل متوسط بله بله
ابری معتدل زیاد بله بله
ابری گرم متوسط خیر بله
آفتابی معتدل زیاد بله خیر

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

بازی می‌کند؟
بله خیر
آب و هوا آفتابی
ابری
بارانی
بازی می‌کند؟
بله خیر
دما گرم
معتدل
سرد
بازی می‌کند؟
بله خیر
رطوبت زیاد
متوسط
بازی می‌کند؟
بله خیر
طوفانی خیر
بله

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

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

مزایا و معایب

[ویرایش]

تحقیقاتی در سال ۲۰۰۴ دلایل نظریه‌ای برای رفتارهای غیر منطقی بیز مطرح کرد و همچنین در سال ۲۰۰۶ مشاهدات فراگیری به منظور مقایسه این روش با سایر روش‌های طبقه‌بندی مانند boosted trees و جنگل تصادفی (random forests) انجام شد که بر کارا بودن این روش صحه گذاشتند.

از مزایای این روش می‌توان به موارد زیر اشاره کرد:[۶]

  • دسته‌بندی کردن داده‌های آزمایشی آسان و سریع است. همچنین زمانی که تعداد دسته‌ها از دو بیشتر باشد نیز عملکرد خوبی از خودش نشان می‌دهد.
  • تا زمانی که شرط مستقل بودن برقرار باشد، یک دسته‌بندی‌کننده بیز ساده عملکرد بهتری نسبت به مدل‌های دیگر مانند رگرسیون لجستیک دارد و به حجم آموزش کمی نیاز دارد.
  • در حالتی که ورودی‌هایمان دسته‌بندی شده باشند این روش عملکرد بهتری نسبت به حالی دارد که ورودی‌هایمان عدد باشند. برای حالتی که ورودی عدد باشد معمولاً فرض می‌شود که از توزیع نرمال پیروی می‌کنند. (که فرض قوی‌ای است)

علاوه بر مزایایی که این دسته‌بندی‌کننده دارد معایبی نیز دارد، از جمله:

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

کاربردها

[ویرایش]

برخی از کاربردهای این دسته‌بندی‌کننده به شرح زیر است:[۷]

  • دسته‌بندی‌کننده متن: دسته‌بندی‌کننده‌های بیز ساده عموماً در دسته‌بندی متن کاربرد دارند و نسبت به روش‌های دیگر درصد موفقیت بیشتری در این زمینه دارند.
  • فیلترینگ اسپم: یکی از معروف‌ترین کاربردهای این دسته‌بندی‌کننده فیلترینگ اسپم است. در این روش فیلترینگ از دسته‌بندی‌کننده بیز ساده برای شناسایی ایمیل‌های اسپم استفاده می‌شود. امروزه بسیاری از سرویس‌دهندگان پست‌های الکترونیک از فیلترینگ اسپم بیزی استفاده می‌کنند. این روش در نرم‌افزارهای فیلتر اسپم نیز استفاده می‌شود. فیلترهای سمت سرور مانند Bogofilter, SpamBayes, SpamAssassin, DSPAM و ASSP نیز از تکنیک‌های فیلتر اسپم بیزی استفاده می‌کنند.
  • سامانه توصیه‌گر: دسته‌بندی‌کننده بیز ساده به همراه پالایش گروهی سامانهٔ توصیه‌گری را تشکیل می‌دهد که از تکنیک‌های یادگیری ماشین و داده‌کاوی برای فیلتر کردن اطلاعات دیده نشده و پیش‌بینی نظر یک کاربر در مورد اقلام مختلف استفاده می‌کند.
  • تحلیل احساسات: از این دسته‌بندی‌کننده در تحلیل احساسات متون و نظرات مختلف (برای مثال در شبکه‌های اجتماعی) استفاده می‌شود.

جستارهای وابسته

[ویرایش]

منابع

[ویرایش]
  1. ۱٫۰ ۱٫۱ Piryonesi, S. Madeh; El-Diraby, Tamer E. (2020-06). "Role of Data Analytics in Infrastructure Asset Management: Overcoming Data Size and Quality Problems". Journal of Transportation Engineering, Part B: Pavements. 146 (2): 04020022. doi:10.1061/jpeodx.0000175. ISSN 2573-5438. {{cite journal}}: Check date values in: |date= (help)
  2. ۲٫۰ ۲٫۱ ۲٫۲ Hastie, Trevor. (2001). The elements of statistical learning: data mining, inference, and prediction: with 200 full-color illustrations. Tibshirani, Robert. , Friedman, J. H. (Jerome H.). New York: Springer. ISBN 0-387-95284-5. OCLC 46809224.
  3. Narasimha Murty, M.; Susheela Devi, V. (2011). Pattern Recognition: An Algorithmic Approach. ISBN 0-85729-494-6.
  4. ۴٫۰ ۴٫۱ Russell, Stuart; results, search (2009-12-11). Artificial Intelligence: A Modern Approach (به انگلیسی) (3 edition ed.). New York: Pearson. p. 808. {{cite book}}: |edition= has extra text (help)نگهداری یادکرد:تاریخ و سال (link)
  5. «Naive Bayesian». www.saedsayad.com. دریافت‌شده در ۲۰۱۸-۱۲-۲۷.
  6. «6 Easy Steps to Learn Naive Bayes Algorithm (with code in Python)». Analytics Vidhya. ۲۰۱۷-۰۹-۱۱. دریافت‌شده در ۲۰۱۸-۱۲-۲۸.
  7. «نسخه آرشیو شده» (PDF). software.ucv.ro. بایگانی‌شده از اصلی (PDF) در ۲۶ اوت ۲۰۱۸. دریافت‌شده در ۲۰۱۸-۱۲-۲۸.