MCPcopy Create free account
hub / github.com/catboost/catboost / test_select_features

Function test_select_features

catboost/python-package/ut/medium/test.py:10711–10738  ·  view source on GitHub ↗
(task_type, train_final_model)

Source from the content-addressed store, hash-verified

10709
10710@pytest.mark.parametrize('train_final_model', [True, False])
10711def test_select_features(task_type, train_final_model):
10712 learn = Pool(TRAIN_FILE, column_description=CD_FILE)
10713 test = Pool(TEST_FILE, column_description=CD_FILE)
10714 model = CatBoostClassifier(
10715 iterations=10,
10716 learning_rate=0.03,
10717 task_type=task_type,
10718 gpu_ram_part=TEST_GPU_RAM_PART,
10719 devices='0'
10720 )
10721 summary = model.select_features(
10722 learn,
10723 eval_set=test,
10724 steps=1,
10725 train_final_model=train_final_model,
10726 features_for_select='0-16',
10727 num_features_to_select=10
10728 )
10729 assert len(summary['selected_features']) == 10
10730 assert len(summary['eliminated_features']) == 7
10731 if train_final_model:
10732 assert model.is_fitted()
10733 assert model.best_score_ != {}
10734 assert model.evals_result_ != {}
10735 else:
10736 assert not model.is_fitted()
10737 assert model.best_score_ == {}
10738 assert model.evals_result_ == {}
10739
10740
10741def test_select_features_with_custom_eval_metric():

Callers

nothing calls this directly

Calls 5

PoolClass · 0.90
CatBoostClassifierClass · 0.90
lenFunction · 0.85
select_featuresMethod · 0.80
is_fittedMethod · 0.80

Tested by

no test coverage detected