(头歌)【挑战】梯度提升:高性能的LightGBM

任务描述

本关任务:分析特征,筛选重要的特征,调整分类器参数,以提高分类器的性能。

相关知识

  • 特征信息可视化

    散点图 折线图 饼状图 箱线图 热力图

  • 特征缩放

    最大最小规范化 Z-Score规范化 归一化 映射到正态分布 稀疏数据缩放 带离群点的缩放

  • LightGBM参数:

    objective:用于指定学习任务及相应的学习目标,常用的可选参数值如下: “regression”,使用L2正则项的回归模型(默认值)。 “regression_l1”,使用L1正则项的回归模型。 “mape”,平均绝对百分比误差。 “binary”,二分类。 “multiclass”,多分类。 n_estimators:boosting的迭代次数。默认设置为100。一般根据数据集和特征数据选择100~1000之间。 learning_rate:学习率。默认设置为0.1,一般设置在0.05-0.1之间。 num_leaves:指定叶子的个数,默认值为31,此参数的数值应该小于2max_depth max_depth:指定树的最大深度,默认值为-1,表示不做限制,合理的设置可以防止过拟合。 min_data_in_leaf:叶节点样本的最少数量,默认值20,用于防止过拟合。 min_gain_to_split:指定叶节点进行分支所需的损失减少的最小值,默认值为0。设置的值越大,模型就越保守。 bagging_fraction:默认值1,指定采样出bagging_fraction * n_samples个样本用于训练弱学习器。注意这里的子采样和随机森林不一样,随机森林使用的是放回抽样,而这里是不放回抽样。 取值在(0, 1)之间。 feature_fraction:构建弱学习器时,对特征随机采样的比例,默认值为1,取值在(0, 1)之间。

编程要求

根据提示,在右侧编辑器补充代码,优化数据预处理方案。

测试说明

平台将对模型进行自动测试:

如果模型性能高于预设的值,则 输出: 准确率为:0.xxxxxx 准确率高于0.995!

否则,输出: 准确率为:0.xxxxxx 请继续努力!

实验结果

import warnings

warnings.filterwarnings('ignore')
import numpy as np
import pandas as pd
import lightgbm as lgb
from load_data import load_data

def data_preprocess(data):
    # 拟输入模型的数据
    X = data.iloc[:, 2:56]
    # 分类标签
    y = data.iloc[:, 56]

    # ---------Begin-----------#
    # 请对 X 进行合理的预处理
    
    # from sklearn.processing import MinMaxScaler
    # scaler = MinMaxScaler()
    # X = scaler.fit_transform(X)

    # ---------End-------------#

    return X, y


def train_model():
    """训练一个LightGBM分类器"""
    data_frame = load_data()

    X_train, y_train = data_preprocess(data_frame)

    # 构建LightGBM分类器
    # ---------Begin-----------#
    lgb_classifier = lgb.LGBMClassifier(objective="binary", n_estimators=300, learning_rate=0.1)  # 可以尝试可以去调试这个几个参数

    # ---------End-------------#
    
    lgb_classifier.fit(X_train, y_train)

    return lgb_classifier

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值