آقای وثوق و آقای عزیز، صاحب دو گالری ماشین نزدیک ساختمون رهنما هستن. یه روزی از همین روزا، محسن که فرد خیلی پولداری بوده، قصد میکنه یه ماشین خوب بخره. در نتیجه بین آقای وثوق و آقای عزیز جنگ پنهونی شروع شد که محسن رو به سمت خودشون بکشن. آقای وثوق از قضا به مباحث یادگیری ماشین هم علاقه داره و میخواد که فروشش از آقای عزیز جلوتر بزنه و با استفاده از دیتاهایی که داره، پیشبینی کنه که کدوم ماشین احتمال بیشتری داره که محسن اون رو بخره. برای همین جدول زیر رو درست کرد:
| شماره نمونه | رنگ | نوع | لاکچری | خریداری میشود؟ |
|:-------------:|:-----:|:--------:|:--------:|:----------------:|
| 1 | قرمز | اسپورت | خیر | بله |
| 2 | قرمز | اسپورت | خیر | خیر |
| 3 | قرمز | اسپورت | خیر | بله |
| 4 | مشکی | اسپورت | خیر | خیر |
| 5 | مشکی | اسپورت | بله | بله |
| 6 | مشکی | اسپورت | بله | بله |
| 7 | مشکی | کلاسیک | خیر | خیر |
| 8 | قرمز | اسپورت | بله | بله |
| 9 | زرد | اسپورت | بله | خیر |
| 10 | زرد | کلاسیک | خیر | بله |
| 11 | زرد | اسپورت | بله | خیر |
| 12 | زرد | کلاسیک | بله | بله |
| 13 | زرد | کلاسیک | خیر | خیر |
آقای وثوق برای پیادهسازی بیکار ننشسته و توی مطالعاتی که داشته به نظرش رسیده که روش naive bayes میتونه کمکش کنه. با استفاده از این دیتاها قراره، naive bayes آموزش داده بشه و آقای وثوق از شما میخواد که کد این naive bayes رو پیاده سازی کنید تا بدونه چه اتومبیلهایی بیاره که با احتمال بالاتری به محسن بفروشه؟
برای این کار، کدی که شما پیاده سازی میکنید باید یه تابع predict داشته باشه و مطابق با اون چه که در ادامه اومده عمل کنه. همچنین signature این تابع به شکل زیر است:
```python
def predict(color, car_type, luxury)
```
# اجرای تابع
تابع نوشته شده توسط شما با ۳ پارامتر رشته به ترتیب رنگ ماشین، نوع و لاکچری بودن ماشین اجرا میشود.
انواع رنگ ماشین: `BLACK`، `RED` و `YELLOW`
انواع نوع ماشین: `SPORT`و `CLASSIC`
لاکچری بودن: `YES` یا `NO`
# خروجی تابع
خروجی تابع شما باید شامل ۱ رشته باشد که در آن رشته YES در صورت خریداری ماشین و رشته NO برای عدم خریداری ماشین را برگرداند (`return` کند).
# مثال
## اجرای ۱
```python
predict("RED", "SPORT", "NO")
```
## خروجی تابع در اجرای ۱
```
YES
```
## اجرای ۲
```python
predict("BLACK" ,"CLASSIC", "YES")
```
## خروجی تابع در اجرای ۲
```
YES
```
# نکات
+ پاسخ خود را در یک فایل Zip که حتما شامل فایل `source.py` که تابع `predict` در آن قرار دارد آپلود کنید.
+ نام فایل Zip اهمیت ندارد.
+ استفاده از لایبرریهای ماشین لرنینگ در پایتون مجاز نیست. اما استفاده از لایبرری numpy و scipy مجاز است.
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.