یکی از روش های بسیار کاربردی در داده کاوی درخت تصمیم یا به اختصار (DTs) است. اساس کار درخت تصمیم به این صورت است که در مرحله یک پرسش مطرح می شود و متناسب با جواب، مرحله بعدی اجرا می شود.
امروز هوا ابری است؟
اگر جواب بله بود، پس چتر برمی دارم.
اگر جواب خیر بود، پس عینک آفتابی برمی دارم.
عمق این درخت می تواند بر اساس بله و خیرها ادامه پیدا کند.
به نظر شما یک متخصص ملک، چگونه قیمت خانه را برآورد می کند؟ اگر مفهوم درخت تصمیم را در نظر بگیرید، اغلب متخصصین املاک نیز هنگام برآورد قیمت، در ذهن خود یک درخت تصمیم را برای خانه مورد نظر ایجاد می کنند و در پایان قیمت متناسب با آن خانه را پیشنهاد می دهند. برای مثال در سطح اول این سوال مطرح می شود آیا خانه نوساز است؟ و در سطوح بعدی تعداد اتاق خواب، داشتن آسانسور و… . در شکل زیر نمونه ای از این مثال را مشاهده می کنید.
import pandas as pd from sklearn.tree import DecisionTreeRegressor file_path = 'train.csv' home_data = pd.read_csv(file_path) home_data.head() y = home_data.SalePrice feature_columns = ['LotArea', 'YearBuilt', '1stFlrSF', '2ndFlrSF', 'FullBath', 'BedroomAbvGr', 'TotRmsAbvGrd'] X = home_data[feature_columns] mytest_model = DecisionTreeRegressor() mytest_model.fit(X, y) print("First in-sample predictions:", mytest_model.predict(X.head())) print("Actual target values for those homes:", y.head().tolist())
لینک های مرتبط:
دانلود کدها و فایل train.csv از Github
دانلود فایل train.csv از Kaggle
دوره آموزش ماشین لرنینگ – قسمت دوم (نسخه تکمیلی این مطلب)