zoukankan      html  css  js  c++  java
  • (原创)lightgbm 一些错误情况处理

    1、做多分类问题时候(mutticlass),如果遇到

    lightgbm.basic.LightGBMError: b'Number of classes should be specified and greater than 1 for multiclass training'

    需要在params里面添加num_class参数项
    import lightgbm as lgb
    from sklearn import datasets
    from sklearn.model_selection import train_test_split
    iris=datasets.load_iris()
    X_train,X_test,y_train,y_test=train_test_split(iris.data,iris.target,test_size=0.3)
    import numpy as np
    train_data=lgb.Dataset(X_train,label=y_train)
    validation_data=lgb.Dataset(X_test,label=y_test)
    params={
        'learning_rate':0.1,
        'lambda_l1':0.1,
        'lambda_l2':0.2,
        'max_depth':4,
        'objective':'multiclass',
        'num_class':3,  #lightgbm.basic.LightGBMError: b'Number of classes should be specified and greater than 1 for multiclass training'
    }
    clf=lgb.train(params,train_data,valid_sets=[validation_data])
    from sklearn.metrics import roc_auc_score,accuracy_score
    y_pred=clf.predict(X_test)
    y_pred=[list(x).index(max(x)) for x in y_pred]
    print(y_pred)
    print(accuracy_score(y_test,y_pred))
  • 相关阅读:
    C++探究transform算法
    C++探究foreach算法
    C++ MFC棋牌类小游戏day6
    C++ MFC棋牌类小游戏day5
    C++ MFC棋牌类小游戏day4
    C++ MFC棋牌类小游戏day3
    MFC 字体
    C++ MFC棋牌类小游戏day2
    第三章 使用属性升级MyBank
    第二章 C#语法快速热身
  • 原文地址:https://www.cnblogs.com/techengin/p/8966735.html
Copyright © 2011-2022 走看看