非时序数据回归任务预测(门控专家模型-集成模型-传统机器学习)


前言

本文章将建立三层结构的机器学习模型,第一层传统机器学习算法,第二层集成学习,第三层门控专家模型。这套模型用于非时序数据回归任务的预测,比如房价预测、二手车价格预测等。

一、个体传统机器学习算法

算法选择

最基础的个体学习器使用以下模型:
CatBoost
Lasso (Lasso Regression)
LightGBM (Light Gradient Boosting Machine)
ElasticNet
XGBoost
Ridge (Ridge Regression)

实际上还可以加上SVRGBR,但他们面对十万级的数据实在太慢,12个小时都训练不出来。

个体学习器训练代码


cat_model = cat_boost_model.fit(X_train,y_train)
lasso_model = lasso_model_full_data.fit(X_train,y_train)
lgbm_model = lgb_model_full_data.fit(X_train,y_train)
elastic_model = elastic_model_full_data.fit(X_train,y_train)
xgboost_model = xgboost.fit(X_train,y_train)
ridge_model = ridge.fit(X_train,y_train)

个体学习器优化

实际上最好的优化方法就是在第三层次上所有参数一起进行优化,但是时间效率根本上不可能,哪怕是在第二层次上进行优化,在时间和效率上都是无法忍受的。

学习器优化代码参考

def optimize_lasso(loss):

    def objective(trial):
        # 优化归一化方法
        scaler_name = trial.suggest_categorical('scaler', ['StandardScaler', 'MinMaxScaler', 'RobustScaler'])

        if scaler_name == 'StandardScaler':
            scaler = StandardScaler()
        elif scaler_name ==
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值