ميزات متعددة
جزء من قسم التعلّم الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 12 من 58.
يعتمد سعر المنزل على أكثر من المساحة: فالمشي لمسافة طويلة إلى المحطة يخفضه. يتعلم النموذج من الأمرين، ويرسم خطين متوازيين:
في الشيفرة، يحتوي X على كلا العمودين، ويكون لـ coef_ وزن واحد لكل ميزة:
X = houses[["area_m2", "minutes_walk"]]
model = LinearRegression()
model.fit(X, houses["price"])
print(np.round(model.coef_, 1))يؤدي هذا إلى طباعة:
[ 2.6 -5.1]تتبع الأوزان أعمدة X. كل متر مربع إضافي يضيف 2.6 ألف دولار؛ وكل دقيقة مشي إضافية تخفض السعر بمقدار 5.1 ألف، مع تثبيت الميزة الأخرى.
وحدة الوزن هي وحدة الهدف لكل وحدة من ميزته: بالآلاف لكل م²، ولكل دقيقة.
التحدي
متوسطيقدّر متعهد تقديم الطعام أسعار الفعاليات الجديدة استنادًا إلى 40 فعالية سابقة في events.csv: guests وcourses وmonths_ahead (مدى التبكير في الحجز) وcost بالدولار. يقرأ البرنامج الابتدائي بيانات فعالية جديدة في new_event.
- درّب نموذج
LinearRegressionعلى التكلفة باستخدامfeatures. - لكل ميزة، اطبع مقدار ما تضيفه أو تخصمه زيادة واحدة منها (بمنزلتين عشريتين).
- اطبع السعر المقترح للفعالية الجديدة (بمنزلتين عشريتين).
لمتعهد آخر لتقديم الطعام:
Each extra guest adds 41.5 dollars
Each extra course adds 198.25 dollars
Each extra month booked ahead takes off 22.8 dollars
Quote: 4312.6 dollarsجرّب بنفسك
import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
# صف واحد لكل فعالية سابقة: عدد الضيوف، وعدد الأطباق، وعدد أشهر الحجز المسبق، والتكلفة بالدولار
events = pd.read_csv("events.csv")
features = ["guests", "courses", "months_ahead"]
units = ["guest", "course", "month booked ahead"]
# الفعالية الجديدة في جدول مكوّن من صف واحد
guests = int(input())
courses = int(input())
months = int(input())
new_event = pd.DataFrame({"guests": [guests], "courses": [courses], "months_ahead": [months]})
# اكتب الكود الخاص بك أدناه
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التعلّم الخاضع للإشراف
تدرّب بنفسك: مترجم Python عبر الإنترنت