| دادههای این سوال را میتوانید از این لینک دانلود کنید. |
|---|
انتهای هر سال، شرکتها به بررسی و بازنگری استراتژیها و میزان تاثیرگذاری آنها میپردازند. همچنین با تحلیل دادههای سال گذشته، مشغول به هدفگذاری برای سال آینده میشوند.
در این سوال قصد داریم با دیتایی که از جزئیات فاکتورهای خرید مشتریان در اختیار داریم، به حل یک مسئله از طریق یادگیری نظارتشده بپردازیم.
فرض کنید دیتای خریدهای مشتریان شرکت، طی دو سال گذشته (۲۰۲۱ و ۲۰۲۲) را در اختیار دارید. همچنین در دیتای آموزش، ریکوردهایی از جزئیات خرید برخی از مشتریان در سال ۲۰۲۳ وجود دارد.
روند حل سوال
- در ابتدا باید به پیشپردازش دیتا بپردازید.
- در ادامه مسیر، دیتایی که به عنوان دیتای آموزش (Train) به مدل میدهید باید به گونهای باشد که هر سطر آن مربوط به یک مشتری باشد و ستون هدف، نشاندهنده مجموع هزینهای که مشتری در سال ۲۰۲۳ پرداخت خواهد کرد، باشد.
نکته
- در طی حل سوال باید خودتان ستون هدف را از دیتای آموزش استخراج کنید.
- در راستای احتساب مجموع هزینه، از حاصل ضرب
QuantityدرUnitPriceاستفاده کنید. - به میلادی و شمسی بودن ستون
InvoiceDateدر دیتای آموزش و تست دقت کنید.
راهنمایی
هرجا که نیازمند یک تاریخِ از پیش تعیینشده بودید، میتوانید از روز اول سال ۲۰۲۳ استفاده کنید.
مجموعهداده
ستونهای دیتای در دسترس به شکل زیر است:
| نام ستون | توضیحات |
|---|---|
Invoice |
شناسه منحصر به فرد فاکتور |
Description |
توضیحات محصول خریداری شده |
Quantity |
تعداد سفارش از یک نوع محصول در فاکتور |
UnitPrice |
قیمت یک نوع محصول به ازای یک واحد از آن |
Customer ID |
شناسه منحصر به فرد مشتری |
Country |
نام کشور محل سکونت مشتری |
StockCode |
کد انبار فراهم کننده محصول |
InvoiceDate |
تاریخ ایجاد فاکتور |
- توجه: در صورتی که شناسهی
Invoiceبا حرف C شروع شود، یعنی فاکتور لغو شده است.
خواسته نهایی
در نهایت باید برای هر مشتری (Customer ID) که در دیتای تست قرار دارد، پیشبینی کنید که آن مشتری در سال ۲۰۲۳ در مجموع چقدر هزینه خواهد کرد.
ارزیابی
برای ارزیابی مدل شما از معیار R2_score استفاده خواهد شد.
توجه
در طول مسابقه امتیازی که مشاهده میکنید، فقط نتیجهی R2_score روی ۳۰ درصد از فایلی است که برای کوئرا آپلود میکنید. بعد از پایان زمان مسابقه، امتیاز نهایی شما روی کل دیتا محاسبه میشود.
این کار به منظور جلوگیری از overfitting و حفظ عمومیت مدل انجام میشود تا مطمئن شویم مدلهایی که دچار بیشبرازش شدهاند، در امتیازهی نهایی، افت میکنند.
خروجی سوال
- خروجی شما باید یک فایل
CSVباشد که دارای ۲ ستون و ۶۶۱ سطر (بدون احتساب سطر مربوط به نام ستونها) است. در هر سطر باید بهازای یک مشتری (Customer ID)، مقدار پیشبینی (Prediction) مدل خود را ذخیره کنید. - نام فایل پاسخ شما باید بهصورت
submission.csvباشد. - نام ستونهای شما باید دقیقاً مطابق خروجی نمونه باشد.
توجه کنید که ستون
Customer IDباید به ترتیب از آیدی شماره ۰ شروع و به ۶۶۰ ختم شود. - فرمت ۴ سطر اول محتوای فایل
CSVشما باید دقیقا مشابه نمونه زیر باشد - اعداد ستون
Predictionصرفاً برای مثال گذاشته شدهاند و پاسخ صحیح نیستند!
نمونه خروجی
| Customer ID | Prediction |
|---|---|
| 0 | 2100.2334 |
| 1 | 909.230 |
| 2 | 230.1202 |
| 3 | 12222.0 |
نکات مهم درمورد فایل ارسالی
- جلوی هر آیدی، دقیقاً باید پیشبینی مدل برای همان آیدی قرار بگیرد (در صورت نیاز میتوانید از
mergeاستفاده کنید). - توجه کنید که ستونهای گفته شده حتما دارای
headerباشد. - مراقب باشید در فایل نهایی اندیس ذخیره نشود و فقط دو ستون مذکور باشند.
هشدار
فراموش نکنید که قبل از پایان زمان مسابقه، باید تمامی کدهای این مسابقه را از قسمت بارگذاری کُد برای ما ارسال کنید. در غیر اینصورت، شما از این مسابقه، امتیازی کسب نمیکنید.
توجه داشته باشید که اگر از jupter notebook استفاده میکنید بایستی همانند توضیحات قسمت بارگذاری کُد، خروجی .py را دریافت و برای ارسال در نظر بگیرید. ارسال فایلهای jupyter همانند .ipynb مورد قبول نیستند.
ارسال پاسخ برای این سؤال