Настройка параметров для LightGBM - PullRequest
0 голосов
/ 11 марта 2019

У меня очень несбалансированный набор данных, принадлежащий 5 различным классам. Итак, сначала я использовал передискретизацию, и основная задача - настроить LightGBM только для одного класса (данные, принадлежащие другим классам, не имеют значения). Поэтому я настраиваю модель вручную, так как GridSearchCV запрашивает оценку параметра, и я не думаю, что передача макроса «micor» или «будет полезно» (нужна модель только для одного класса). Нужна помощь, чтобы проверить, если это правильный способ сделать это или нет. Пожалуйста, найдите код ниже:

learnrate=[0.15,0.1,0.05,0.01,0.005,0.001]
numleav=[16,18,20,22,24,26,28,30,32,34]
nestm=[70,100,150,200,250]
result={}
for i in learnrate:
    for j in numleav:
        for k in nestm:
            model = lgb.LGBMClassifier(num_leaves=j, learning_rate=i,n_estimators=k,boosting_type='dart', random_state=15)
            model.fit(x_train_os,y_train_os)
            train_preds_os=model.predict(x_train_os)
            test_preds_os=model.predict(x_test)
            result[i,j,k]=train_preds_os, test_preds_os
            print(i,j,k,precision_score(y_train_os,train_preds_os, average=None)[1])
            print(precision_score(y_test, test_preds_os, average=None)[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...