diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index 51086b4..f7c2699 100644 Binary files a/__pycache__/__init__.cpython-36.pyc and b/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_myXGBoost/__pycache__/__init__.cpython-36.pyc b/q01_myXGBoost/__pycache__/__init__.cpython-36.pyc index 05966ae..73b97e7 100644 Binary files a/q01_myXGBoost/__pycache__/__init__.cpython-36.pyc and b/q01_myXGBoost/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_myXGBoost/__pycache__/build.cpython-36.pyc b/q01_myXGBoost/__pycache__/build.cpython-36.pyc index 73181f1..d97d23d 100644 Binary files a/q01_myXGBoost/__pycache__/build.cpython-36.pyc and b/q01_myXGBoost/__pycache__/build.cpython-36.pyc differ diff --git a/q01_myXGBoost/build.py b/q01_myXGBoost/build.py index db3654a..a49c040 100644 --- a/q01_myXGBoost/build.py +++ b/q01_myXGBoost/build.py @@ -1,3 +1,4 @@ +# %load q01_myXGBoost/build.py import pandas as pd from xgboost import XGBClassifier from sklearn.model_selection import train_test_split @@ -11,13 +12,19 @@ y = dataset.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=9) -param_grid1 = {"max_depth": [2, 3, 4, 5, 6, 7, 9, 11], - "min_child_weight": [4, 6, 7, 8], - "subsample": [0.6, .7, .8, .9, 1], - "colsample_bytree": [0.6, .7, .8, .9, 1] +param_grid1 = {'max_depth': [2, 3, 4, 5, 6, 7, 9, 11], + 'min_child_weight': [4, 6, 7, 8], + 'subsample': [0.6, .7, .8, .9, 1], + 'colsample_bytree': [0.6, .7, .8, .9, 1] } +xgbc = XGBClassifier(seed=9) + +def myXGBoost(X_train, X_test, y_train, y_test, model, param_grid, KFold=3, **kwargs): + grid_model = GridSearchCV(model, param_grid, cv=KFold) + grid_model.fit(X_train, y_train) + y_pred = grid_model.predict(X_test) + return accuracy_score(y_test, y_pred), grid_model.best_params_ -# Write your solution here : diff --git a/q01_myXGBoost/tests/__pycache__/__init__.cpython-36.pyc b/q01_myXGBoost/tests/__pycache__/__init__.cpython-36.pyc index 8dfa197..eddc1e9 100644 Binary files a/q01_myXGBoost/tests/__pycache__/__init__.cpython-36.pyc and b/q01_myXGBoost/tests/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_myXGBoost/tests/__pycache__/test_q01_myXGBoost.cpython-36.pyc b/q01_myXGBoost/tests/__pycache__/test_q01_myXGBoost.cpython-36.pyc index c955d76..54513d7 100644 Binary files a/q01_myXGBoost/tests/__pycache__/test_q01_myXGBoost.cpython-36.pyc and b/q01_myXGBoost/tests/__pycache__/test_q01_myXGBoost.cpython-36.pyc differ diff --git a/q02_param2/__pycache__/__init__.cpython-36.pyc b/q02_param2/__pycache__/__init__.cpython-36.pyc index 65aae62..dee351a 100644 Binary files a/q02_param2/__pycache__/__init__.cpython-36.pyc and b/q02_param2/__pycache__/__init__.cpython-36.pyc differ diff --git a/q02_param2/__pycache__/build.cpython-36.pyc b/q02_param2/__pycache__/build.cpython-36.pyc index 265965e..68758de 100644 Binary files a/q02_param2/__pycache__/build.cpython-36.pyc and b/q02_param2/__pycache__/build.cpython-36.pyc differ diff --git a/q02_param2/build.py b/q02_param2/build.py index 8391570..0382237 100644 --- a/q02_param2/build.py +++ b/q02_param2/build.py @@ -1,3 +1,4 @@ +# %load q02_param2/build.py # Default imports from sklearn.model_selection import train_test_split from xgboost import XGBClassifier @@ -11,10 +12,19 @@ y = dataset.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=9) -param_grid2 = {"gamma": [0, 0.05, 0.1, 0.3, 0.7, 0.9, 1], - "reg_alpha": [0, 0.001, 0.005, 0.01, 0.05, 0.1], - "reg_lambda": [0.05, 0.1, 0.5, 1.0] +param_grid2 = {'gamma': [0, 0.05, 0.1, 0.3, 0.7, 0.9, 1], + 'reg_alpha': [0, 0.001, 0.005, 0.01, 0.05, 0.1], + 'reg_lambda': [0.05, 0.1, 0.5, 1.0], } +def param2(X_train, X_test, y_train, y_test, model, param_grid): + best_params1 = {'colsample_bytree': 0.7, + 'max_depth': 2, + 'min_child_weight': 4, + 'subsample': 0.8} + model_new = model.set_params(**best_params1) + accuracy, best_params = myXGBoost(X_train, X_test, y_train, y_test, model_new, param_grid) + return accuracy, best_params + + -# Write your solution here : diff --git a/q02_param2/tests/__pycache__/__init__.cpython-36.pyc b/q02_param2/tests/__pycache__/__init__.cpython-36.pyc index 19bc1aa..2f63eb0 100644 Binary files a/q02_param2/tests/__pycache__/__init__.cpython-36.pyc and b/q02_param2/tests/__pycache__/__init__.cpython-36.pyc differ diff --git a/q02_param2/tests/__pycache__/test_q02_param2.cpython-36.pyc b/q02_param2/tests/__pycache__/test_q02_param2.cpython-36.pyc index 18c07a7..f240686 100644 Binary files a/q02_param2/tests/__pycache__/test_q02_param2.cpython-36.pyc and b/q02_param2/tests/__pycache__/test_q02_param2.cpython-36.pyc differ diff --git a/q03_xgboost/__pycache__/__init__.cpython-36.pyc b/q03_xgboost/__pycache__/__init__.cpython-36.pyc index 2e9c375..63333b5 100644 Binary files a/q03_xgboost/__pycache__/__init__.cpython-36.pyc and b/q03_xgboost/__pycache__/__init__.cpython-36.pyc differ diff --git a/q03_xgboost/__pycache__/build.cpython-36.pyc b/q03_xgboost/__pycache__/build.cpython-36.pyc index 4c997b3..1b08b66 100644 Binary files a/q03_xgboost/__pycache__/build.cpython-36.pyc and b/q03_xgboost/__pycache__/build.cpython-36.pyc differ diff --git a/q03_xgboost/build.py b/q03_xgboost/build.py index 7905a04..1e53aef 100644 --- a/q03_xgboost/build.py +++ b/q03_xgboost/build.py @@ -1,17 +1,30 @@ +# %load q03_xgboost/build.py # Default imports from sklearn.model_selection import train_test_split from xgboost import XGBClassifier import pandas as pd from sklearn.metrics import accuracy_score -# load data dataset = pd.read_csv('data/loan_clean_data.csv') -# split data into X and y + X = dataset.iloc[:, :-1] y = dataset.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=9) +xgbc = XGBClassifier(seed=9) + +def xgboost(X_train, X_test, y_train, y_test, **kwargs): + best_params1 = {'colsample_bytree': 0.7, + 'max_depth': 2, + 'min_child_weight': 4, + 'subsample': 0.8, + 'gamma': 0, + 'reg_alpha': 0, + 'reg_lambda': 1.0} + xgbc.set_params(**best_params1) + xgbc.fit(X_train, y_train) + y_pred = xgbc.predict(X_test) + return accuracy_score(y_test,y_pred) -# Write your solution here : diff --git a/q03_xgboost/tests/__pycache__/__init__.cpython-36.pyc b/q03_xgboost/tests/__pycache__/__init__.cpython-36.pyc index e887bf7..1b7f27c 100644 Binary files a/q03_xgboost/tests/__pycache__/__init__.cpython-36.pyc and b/q03_xgboost/tests/__pycache__/__init__.cpython-36.pyc differ diff --git a/q03_xgboost/tests/__pycache__/test_q03_xgboost.cpython-36.pyc b/q03_xgboost/tests/__pycache__/test_q03_xgboost.cpython-36.pyc index 77271df..0c47b9c 100644 Binary files a/q03_xgboost/tests/__pycache__/test_q03_xgboost.cpython-36.pyc and b/q03_xgboost/tests/__pycache__/test_q03_xgboost.cpython-36.pyc differ