首页 > 其他分享 >DataWhale AI夏令营 电力预测赛Day2

DataWhale AI夏令营 电力预测赛Day2

时间:2024-07-17 23:27:47浏览次数:10  
标签:LightGBM AI Day2 DataWhale df 点击 train dt 特征

LightGBM

支持高效LightGBM (Light Gradient Boosting Machine) 是一个实现GBDT算法的框架,支持高效率的并行训练,并且具有更快的训练速度、更低的内存消耗、更好的准确率、支持分布式,可以快速处理海量数据等优点。
LightGBM 框架中还包括随机森林和逻辑回归等模型。通常应用于二分类、多分类和排序等场景。
例如: 在个性化商品推荐场景中,通常需要做点击预估模型。使用用户过往的行为(点击、曝光未点击、购买等)作为训练数据,来预测用户点击或购买的概率。根据用户行为和用户属性提取一些特征,包括类别特征 (Categorical Feature) : 字符串类型,如性别 (男/女)
物品类型:服饰、玩具和电子等
数值特征(Numrical Feature) : 整型或浮点型,如用户活跃度或商品价格等.

特征工程方法

历史平移特征:通过历史平移获取上个阶段的信息;可以将d-1时间的信息给到d时间,d时间信息给到d+1时间,这样就实现了平移一个单位的特征构建。
在这里插入图片描述

窗口统计特征:窗口统计可以构建不同的窗口大小,然后基于窗口范围进统计均值、最大值、最小值、中位数、方差的信息,可以反映最近阶段数据的变化情况。如下图所示,可以将d时刻之前的三个时间单位的信息进行统计构建特征给d时刻。

在这里插入图片描述
原本给的task2内容中,有一段lightgbm库相关的内容可能有点过时了。查阅文档后发现需要调用callbacks而不是像原本那样使用。
在这里插入图片描述

def time_model(lgb, train_df, test_df, cols):
    # 训练集和验证集切分
    trn_x, trn_y = train_df[train_df.dt>=31][cols], train_df[train_df.dt>=31]['target']
    val_x, val_y = train_df[train_df.dt<=30][cols], train_df[train_df.dt<=30]['target']
    # 构建模型输入数据
    train_matrix = lgb.Dataset(trn_x, label=trn_y)
    valid_matrix = lgb.Dataset(val_x, label=val_y)
    # lightgbm参数
    lgb_params = {
        'boosting_type': 'gbdt',
        'objective': 'regression',
        'metric': 'mse',
        'min_child_weight': 5,
        'num_leaves': 2 ** 5,
        'lambda_l2': 10,
        'feature_fraction': 0.8,
        'bagging_fraction': 0.8,
        'bagging_freq': 4,
        'learning_rate': 0.05,
        'seed': 2024,
        'nthread' : 16,
        'verbose' : -1,
    }
    # 训练模型
    model = lgb.train(lgb_params, train_matrix, 50000, valid_sets=[train_matrix, valid_matrix], categorical_feature=[], callbacks=[lgb.early_stopping(500), lgb.log_evaluation(500)])
    # 验证集和测试集结果预测
    val_pred = model.predict(val_x, num_iteration=model.best_iteration)
    test_pred = model.predict(test_df[cols], num_iteration=model.best_iteration)
    # 离线分数评估
    score = mean_squared_error(val_pred, val_y)
    print(score)
       
    return val_pred, test_pred
    
lgb_oof, lgb_test = time_model(lgb, train, test, train_cols)

# 保存结果文件到本地
test['target'] = lgb_test
test[['id','dt','target']].to_csv('submit.csv', index=None)

标签:LightGBM,AI,Day2,DataWhale,df,点击,train,dt,特征
From: https://blog.csdn.net/royi_0825/article/details/140444858

相关文章

  • DataFountain-个贷违约预测实战
    赛题来源:Datafountain个贷违约预测竞赛-DataFountain参考优秀选手方法单模走天下:公布一个单模型精度达0.9014(B榜第8)的算法数据科学社区-DataFountain并加入自己理解整理如下:赛题理解题目给出了train_internet.csv、train_public.csv、test_public.csv、submit_example......
  • Datawhale AI 夏令营-Task2
    基于Seq2Seq的Baseline详解先就是安装基础包环境在这里多用上了几个库:torchtext:是一个用于自然语言处理(NLP)任务的库,它提供了丰富的功能,包括数据预处理、词汇构建、序列化和批处理等,特别适合于文本分类、情感分析、机器翻译等任务『Torch分离的NLP库』jieba:是一个中文......
  • Datawhale AI 夏令营——电力需求挑战赛——Task2学习笔记
    一、实先准备importnumpyasnpimportpandasaspdimportlightgbmaslgbfromsklearn.metricsimportmean_squared_log_error,mean_absolute_error,mean_squared_errorimporttqdmimportsysimportosimportgcimportargparseimportwarningswarnings.filter......
  • Datawhale AI 夏令营--NLP自然语言学习过程
    Task1:首先我们先无脑跑通本次学习的第一个baseline1.本次我们使用的是魔塔社区提供的GPU进行项目推进:2.在Notebook中启用由魔塔提供的编译服务,我们运行Task1代码,随后将生成的txt文档上传到评分的NLP竞赛平台,最后会得到本次学习的第一个分数。(可能到这里很多初学者都不明白......
  • 解锁AI潜能:fabric,你的智能助手,让AI理解你的需求
    探索AI新境界:fabric——你的智能助手在这个人工智能飞速发展的时代,我们每天都在见证着技术的革新。但你是否曾感到困惑,如何让这些看似冷冰冰的AI真正理解我们的需求,为我们提供帮助?今天,我要向大家介绍一款名为fabric的神器,它将彻底改变你与AI的互动方式!1.什么是fabric?fabric......
  • AI编辑器
    功能实现基础phpStudy启动Apache+数据库工具phpMyAdmin(SQL)前端·终端运行:npmrundev后端:RunCode首页:http://localhost:5173编辑器页面:http://localhost:5173/EditOCR识别OCR识别,是一种通过扫描、拍照等光学输入方式将各种票据、报刊、书籍、文稿及其他印刷品的文字转......
  • Datawhale AI夏令营-机器翻译挑战赛
    Baseline代码相关解读是否需要使用self判定的标准是是否在类中在Python中,self是一个类的实例方法中的参数,用于指代调用该方法的实例本身。在代码示例中,self并不是必需的,因为这个示例代码不是类的一部分,只是一个独立的函数调用。让我们逐步解释这些区别。类中的方法与独立的......
  • Datawhale AI 夏令营 全球Deepfake攻防挑战赛
                    近日有学习多模态技术的需求,碰巧撞上Datawhale的夏令营,初看要求颇高,既要打卡还要分享,心中顿起燥心,转念一想,其实不失为一次磨练机会,为提高自己逃课摆烂的成本,邃开始撰写自己第一篇公开的学习笔记,若多日后看见虎头蛇尾的学习笔记,想必羞愧难当。......
  • Datawhale AI 夏令营 全球Deepfake攻防挑战赛 task2
    数天未见,进步如何?距第一篇笔记发布已过多日,在笔记中立下的flag推动下再次打开CSDN创作中心来记录学习进展。首先让我来对竞赛项目和datawhale提供的baseline做一个简单的梳理:balseline网址:https://www.kaggle.com/code/littlejian/deepfake-ffdv-baseline项目要求:判断一......
  • Datawhale AI夏令营第二期——机器学习 基于神经网络stack融合策略的多模型融合
    #AI夏令营#Datawhale夏令营基于神经网络stack融合策略的多模型融合改进点:1.数据清洗,异常值替换(板块2)2.基于神经网络的stack模型融合(板块5)根据大佬的提示对Task3所做的改进,大佬链接:http://t.csdnimg.cn/RSC3o1.模型导入导入所需要包:importpandasaspdimportnumpy......