文章目录

  • 笔者背景
  • 赛题描述
  • 第一问: 给出该地区电网未来10天间隔15分钟的负荷预测结果,并分析其预测精度
    • 1.数据预处理
    • 2.模型构建
  • 明天见!

笔者背景

第九届泰迪杯上市公司财务造假全国一等奖,曾入围特等选拔7进3,并进行答辩。由于实习的原因不参加本次比赛,在此记录一下自己的一些想法与思考,希望可以为大家提供一些思路。此外,就多次参加比赛的经历中,笔者认为在模型构建以及论文撰写中,大家可以把某一个点作为论文的亮点,围绕这个点来展开,并对比这一个处理方法相较于其他的方法有多大的提升。通过图表的方式将多个模型结果进行可视化对比,提高摘要的质量,做到这几点,一般离拿奖就不远了。

赛题描述

B题:电力系统负荷预测分析

一、问题背景

电力系统负荷(电力需求量,即有功功率)预测是指充分考虑历史的系统负荷、经济状况、气象条件和社会事件等因素的影响,对未来一段时间的系统负荷做出预测。负荷预测是电力系统规划与调度的一项重要内容。短期(两周以内)预测是电网内部机组启停、调度和运营计划制定的基础;中期(未来数月)预测可为保障企业生产和社会生活用电,合理安排电网的运营与检修决策提供支持;长期(未来数年)预测可为电网改造、扩建等计划的制定提供参考,以提高电力系统的经济效益和社会效益。

复杂多变的气象条件和社会事件等不确定因素都会对电力系统负荷造成一定的影响,使得传统负荷预测模型的应用存在一定的局限性。同时,随着电力系统负荷结构的多元化,也使得模型应用的效果有所降低,因此电力系统负荷预测问题亟待进一步研究。

二、解决问题

1.地区负荷的中短期预测分析

根据附件中提供的某地区电网间隔15分钟的负荷数据,建立中短期负荷预测模型:

(1)给出该地区电网未来10天间隔15分钟的负荷预测结果,并分析其预测精度;

(2)给出该地区电网未来3个月日负荷的最大值和最小值预测结果,以及相应达到负荷最大值和最小值的时间,并分析其预测精度。

2.行业负荷的中期预测分析

对不同行业的用电负荷进行中期预测分析,能够为电网运营与调度决策提供重要依据。特别是在新冠疫情、国家“双碳”目标等背景下,通过对大工业、非普工业、普通工业和商业等行业的用电负荷进行预测,有助于掌握各行业的生产和经营状况、复工复产和后续发展走势,进而指导和辅助行业的发展决策。请根据附件中提供的各行业每天用电负荷相关数据,建立数学模型研究下面问题:

(1)挖掘分析各行业用电负荷突变的时间、量级和可能的原因。

(2)给出该地区各行业未来3个月日负荷最大值和最小值的预测结果,并对其预测精度做出分析。

(3)根据各行业的实际情况,研究国家“双碳”目标对各行业未来用电负荷可能产生的影响,并对相关行业提出有针对性的建议。


第一问: 给出该地区电网未来10天间隔15分钟的负荷预测结果,并分析其预测精度

对于时间序列预测模型,一般采用arima,Facebook研发的prophet预测模型,还有对数据进行特征处理后采用lightGBM等机器学习模型进行预测。在回归中,预测精度一般采用RMSE,MAPE等评价指标进行预测精度判断。此外,对于后续数据增加,比较有亮点的地方是通过不同的调参方法进行参数调优。个人认为在本次比赛中,调参方法若是选择的好,参加比赛的小伙伴可以着重于这个点来撰写论文,获奖的可能性极大。

1.数据预处理

通过数据结构构建将时间序列数据变成机器学习可识别的模式,例如以一天的数据为例,可以将window设置为96,构造出{(1-96),97},{(2-97),98}这样的样本,以lightGBM为例:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import lightgbm as lgb
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import RepeatedKFold### CREATE X,Y ####
def create_xy(series, window_size, prediction_horizon, shuffle = False):x = []y = []for i in range(0, len(series)):if len(series[(i + window_size):(i + window_size + prediction_horizon)]) < prediction_horizon:breakx.append(series[i:(i + window_size)])y.append(series[(i + window_size):(i + window_size + prediction_horizon)])x = np.array(x)y = np.array(y)return x,y

2.模型构建


df = pd.read_csv("..//附件1-区域15分钟负荷数据.csv")
series = df.iloc[:,1]  #得到时序数据### HYPERPARAMETERS ###
window_size = 30
prediction_horizon = 1### TRAIN VAL SPLIT ### (include shuffling later)
test_size = 6
split_time = len(series) - test_sizetrain_series = series[:split_time]
test_series = series[split_time - window_size:]train_x, train_y = create_xy(train_series, window_size, prediction_horizon)
test_x, test_y = create_xy(test_series, window_size, prediction_horizon)train_y = train_y.flatten()
test_y = test_y.flatten()print(train_x.shape)
print(train_y.shape)
print(test_x.shape)
print(test_y.shape)### lightGBM model ###
params = {'n_estimators': 500,'max_depth': 4,'num_leaves': 2**4,'learning_rate': 0.1,'boosting_type': 'dart'
}model = lgb.LGBMRegressor(first_metric_only = True, **params)model.fit(train_x, train_y,eval_metric = 'l1', eval_set = [(test_x, test_y)],#early_stopping_rounds = 10,verbose = 0)### forecast ###
forecast = model.predict(test_x)
print('  LightGBM MAE: %.4f' % (np.mean(np.abs(forecast - test_y))))

明天见!

02 会包含prophet模型的代码。

第十届泰迪杯数据挖掘B题:电力系统负荷预测分析--解题思路与部分代码01相关推荐

  1. 【第十届“泰迪杯”数据挖掘挑战赛】B题:电力系统负荷预测分析 31页省一等奖论文及代码

    相关链接 (1)[第十届"泰迪杯"数据挖掘挑战赛]B题:电力系统负荷预测分析 问题一Baseline方案 (2)[第十届"泰迪杯"数据挖掘挑战赛]B题:电力系统 ...

  2. 分享篇:第十届“泰迪杯”数据挖掘挑战赛-农田害虫图像识别(特等奖)

    第十届"泰迪杯" 数据挖掘挑战赛优秀作品-农田害虫图像识别--特等奖 实验结果分析 4.1.1 实验配置 本篇论文的实验都是基于 Ubuntu 系统下进行,使用 GPU 和 CPU ...

  3. 【第十届“泰迪杯”数据挖掘挑战赛】B题:电力系统负荷预测分析 问题二 时间突变分析 Python实现

    目录 相关链接 完整代码下载链接 1 定义绘图函数 2 通过对原始测量应用阈值来查找异常值 3 手动设置阈值 4 使用分位数设置阈值 5 3Sigma原则(IQR) 6 设定分位数 6.1 导入数据 ...

  4. 第十届“泰迪杯”比赛B题解题思路及代码论文

    今年大二,因为对编程感兴趣入坑,算下来自学编程快要一年了,了解了关于计算机的很多方向,暑假偶然间了解到数据分析和挖掘,觉得挺有趣的就想深入学习以下,于是开始学习pandas,然后机器学习,并在天池上做 ...

  5. 分享篇:第十届“泰迪杯”数据挖掘挑战赛-农田害虫图像识别(特等奖)一

    1.1 赛题背景 昆虫的种类浩如烟海,农田常见的昆虫是人工生态系统的重要组成部分.分辨益 虫和害虫,保留益虫,消灭害虫,对于减轻害虫对农田的生产危害有重要意义.常见 农田害虫共有 138 种,天敌昆虫 ...

  6. 【第十届“泰迪杯”数据挖掘挑战赛】B题:电力系统负荷预测分析第一问LSTM模型的建立

    1️⃣问题分析 地区负荷的中短期预测分析 根据附件中提供的某地区电网间隔15分钟的负荷数据,建立中短期负荷预测模型:

  7. 第七届泰迪杯挑战赛C题

    第七届"泰迪杯"数据挖掘挑战赛C题赛题和数据 网盘链接: https://pan.baidu.com/s/1VRIHBLqaTsfOMLnVmibo5A 提取码:L6X6

  8. 2021泰迪杯-数据挖掘练习1-京东热水器评论分析

    说明: 所有代码和数据可在gitee中获取 地址:https://gitee.com/success123/teddy-cup 本次挖掘目标 ​ ①分析某一热水器的用户情感倾向 ​ ②从评论文本中挖掘 ...

  9. 2023年“呕心沥血”之泰迪杯数据挖掘A题新冠疫情比赛经历分享

    个人名片:

  10. 2022年泰迪杯数据分析_B题:银行客户忠诚度分析赛题数据_任务五

    银行客户长期忠诚度预测建模,此处忠诚度的指标选取为客户的流失情况,该指标分为两类,长期客户忠诚用1表示,不忠诚则用0表示. 对此预测建模中,使用到机器学习分类中的随机森林分类. import pand ...

最新文章

  1. CodeSmith(2):对象和控制台
  2. 利用commons-fileupload 上传图片(包含表单数据)
  3. LaTeX 笔记:NFSS 那点事儿
  4. 2018最佳GAN论文回顾(上)
  5. 折半查找和二叉排序树的时间性能_详解二叉排序树(基础篇)
  6. 触类旁通:那些关于 TBL$OR$IDX$PART$NUM 的诡异案例和知识
  7. Windows连接Linux的常用工具
  8. matlab层次分析法代码_基于主成分分析法和层次分析法的工程项目经理胜任力评价研究...
  9. 如何优雅地编码文本中的位置信息?三种positioanl encoding方法简述
  10. 随机数------选双色球
  11. 深度学习含有递进关系的数据应该如何表达_文案写作:如何构建写作框架优化表达内容?...
  12. 汽车电子嵌入式软件概述
  13. 移动安全工具:fastboot
  14. HSPICE 电平触发D触发器仿真
  15. python正确判断错误_python之错误、调试和测试
  16. web课程设计网页制作、基于HTML+CSS大学校园班级网页设计
  17. python之tkinter模块——基于tk得图片文字
  18. 十三、JavaScript ajax请求
  19. ChatGPT 拓展资料:Telegram Bot 打造专属聊天机器人
  20. Python采集ppt素材模板 (多线程版本),答辩、演讲再也不怕没有好用的PPT模板了(含完整源代码)

热门文章

  1. Icode编程>>>图形化编程>>>1级训练场>>>重复执行练习【1】
  2. Windows:Win10商店找回
  3. 免费顺丰快递单号查询电子面单api接口对接【快递鸟API】
  4. 手机版kali Linux教程(质量高)
  5. 华为U2000网管研究实录 (3) - 运行分析(服务端进程)
  6. 基于Scrapy+MySQL爬取国家药监局100w+数据踩坑记录
  7. ccna考试之导入题库———pdf转vce格式转换
  8. 使用Python自动下载Himawari-8(葵花8)数据产品——以AOD L3级日均数据和小时数据为例
  9. vue3小兔鲜儿项目文档,视频
  10. Trafodion建表之使用多温度特性