ND
Попробуй выставить shuffle=False
и в
train_test_split
и в grid_search
Size: a a a
ND
train_test_split
и в grid_search
SF
train_test_split
и в grid_search
98783
, при grid_search - 0.6276180
А в grid_search разбиение основано на train_test_split из sklearn?ND
split = train_test_split(range(pool_size), train_size=train_size, random_state=partition_random_seed, shuffle=shuffle)
test_fold = np.zeros(pool_size, dtype=int)
test_fold[split[0]] = -1
# split = (train_indices, test_indices)
# test_fold has -1 at train indices and 0 at test indices
# so, PredefinedSplit(test_fold) generates exactly one train set and one test set corresponding to that split
custom_folds_for_optimize = PredefinedSplit(test_fold)
ВС
ВС
ЕС
OT
save_quantization_borders
сохраняет способ перевода категориальных фичей в числовые ? То есть этого достаточно чтобы потом я мог загружать этот файл и использовать Pool для любых новых данных ?OT
S
OT
OT
OT
A
def cross_validation(df):возврает такой датафрейм
from catboost import cv
params = {"iterations": 5,
"depth": 8,
"loss_function": "MultiClass",
"verbose": False,
"custom_metric": ['F1'],}
scores = cv(df,
params,
fold_count=3,
)
print(scores)
Data columns (total 17 columns):Я так понимаю оно посчитало
iterations 10 non-null int64
test-MultiClass-mean 10 non-null float64
test-MultiClass-std 10 non-null float64
train-MultiClass-mean 10 non-null float64
train-MultiClass-std 10 non-null float64
test-F1:class=0-mean 10 non-null float64
test-F1:class=0-std 10 non-null float64
train-F1:class=0-mean 10 non-null float64
train-F1:class=0-std 10 non-null float64
test-F1:class=1-mean 10 non-null float64
test-F1:class=1-std 10 non-null float64
train-F1:class=1-mean 10 non-null float64
train-F1:class=1-std 10 non-null float64
test-F1:class=2-mean 10 non-null float64
test-F1:class=2-std 10 non-null float64
train-F1:class=2-mean 10 non-null float64
train-F1:class=2-std 10 non-null float64
dtypes: float64(16), int64(1)
f1score
для каждого класса. А как свести это в одну общую метрику? Что-то вроде как у sklearnmetrics.f1_score(y_true, y_pred, average='weighted')
IL
A
A
A
AD
A
AD