def test_accuracy_improvement(): base_model = XGBSEKaplanTree() base_model.fit(X_train, y_train) bootstrap = XGBSEBootstrapEstimator(base_model) bootstrap.fit(X_train, y_train) cind_base = concordance_index(y_test, base_model.predict(X_test)) cind_boots = concordance_index(y_test, bootstrap.predict(X_test)) assert cind_boots > cind_base
def test_concordance_index(): assert concordance_index(y_train, km_survival) == 0.5 assert concordance_index(y_test, preds) > 0.5 assert np.isclose( concordance_index(y_test, T_test.values, risk_strategy="precomputed"), 0, atol=0.02, ) assert np.isclose( concordance_index(y_test, -T_test.values, risk_strategy="precomputed"), 1, atol=0.02, )
def test_survival_curve_tree(): xgbse = XGBSEKaplanTree() xgbse.fit(X_train, y_train) preds = xgbse.predict(X_test) cindex = concordance_index(y_test, preds) assert_survival_curve(xgbse, X_test, preds, cindex)
def test_survival_curve_without_early_stopping(model): xgbse = model() xgbse.fit( X_train, y_train, ) preds = xgbse.predict(X_test) cindex = concordance_index(y_test, preds) assert_survival_curve(xgbse, X_test, preds, cindex)
def test_survival_curve(model): xgbse = model() xgbse.fit( X_train, y_train, num_boost_round=1000, validation_data=(X_valid, y_valid), early_stopping_rounds=10, verbose_eval=0, ) preds = xgbse.predict(X_test) cindex = concordance_index(y_test, preds) assert_survival_curve(xgbse, X_test, preds, cindex)