Keras之TCN:基于keras框架利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例
Keras之TCN:基于keras框架利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例
目录
利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例
# 1、定义数据集
# 2、数据预处理
# 2.1、挑选入模特征:定义时间序列数据
# 2.2、切分数据集
# 2.3、将时间序列转化为有监督学习数据集
# 2.4、分离特征与标签
# 3、模型训练与推理
# 3.1、数据再处理
# 将输入数据转化为3D格式 (样本数,时间步,特征数)
# 3.2、建立模型:定义和训练时间卷积神经网络模型
# 3.3、模型训练
# 模型训练可视化:绘制训练和验证损失
# 3.4、模型预测与评估
# 绘制预测结果
相关文章
Keras之TCN:基于keras框架利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例
Keras之TCN:基于keras框架利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例实现代码
利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例
# 1、定义数据集
date | week | max_temperature | min_temperature | weather | wind_direction | wind_level | air_quality_index | air_quality_level |
2021/1/1 | 周五 | 4 | -1 | 晴~多云 | 西北风 | 2级 | 52 | 良 |
2021/1/2 | 周六 | 7 | 1 | 晴~多云 | 东北风 | 2级 | 69 | 良 |
2021/1/3 | 周日 | 10 | 6 | 阴 | 东北风 | 2级 | 66 | 良 |
2021/1/4 | 周一 | 13 | 7 | 阴 | 东风 | 2级 | 44 | 优 |
2021/1/5 | 周二 | 8 | 2 | 阴~多云 | 东北风 | 3级 | 49 | 优 |
2021/1/6 | 周三 | 5 | -4 | 阴 | 北风 | 3级 | 46 | 优 |
2021/1/7 | 周四 | -3 | -6 | 阴 | 西北风 | 4级 | 67 | 良 |
2021/1/8 | 周五 | -1 | -5 | 阴~晴 | 西北风 | 3级 | 50 | 优 |
2021/1/9 | 周六 | 3 | -1 | 晴~多云 | 西北风 | 3级 | 57 | 良 |
2021/1/10 | 周日 | 5 | -1 | 阴~多云 | 西北风 | 2级 | 73 | 良 |
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 805 entries, 2021-01-01 to 2023-03-16
Data columns (total 8 columns):# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 week 805 non-null object 1 max_temperature 805 non-null int64 2 min_temperature 805 non-null int64 3 weather 805 non-null object 4 wind_direction 805 non-null object 5 wind_level 805 non-null object 6 air_quality_index 667 non-null float647 air_quality_level 775 non-null object
dtypes: float64(1), int64(2), object(5)
memory usage: 56.6+ KB
Noneweek max_temperature ... air_quality_index air_quality_level
date ...
2021-01-01 周五 4 ... 52.0 良
2021-01-02 周六 7 ... 69.0 良
2021-01-03 周日 10 ... 66.0 良
2021-01-04 周一 13 ... 44.0 优
2021-01-05 周二 8 ... 49.0 优
... ... ... ... ... ...
2023-03-12 周日 12 ... 68.0 良
2023-03-13 周一 14 ... 52.0 良
2023-03-14 周二 20 ... 55.0 良
2023-03-15 周三 23 ... 52.0 良
2023-03-16 周四 15 ... 69.0 良[805 rows x 8 columns]
# 2、数据预处理
# 2.1、挑选入模特征:定义时间序列数据
# 2.2、切分数据集
df_train (725,)
df_test (80,)
# 2.3、将时间序列转化为有监督学习数据集
train_supervised (684, 42)
test_supervised (39, 42)
train_supervised [[ 4. 7. 10. ... 11. 12. 10.][ 7. 10. 13. ... 12. 10. 13.][10. 13. 8. ... 10. 13. 17.]...[15. 13. 16. ... 6. 4. 5.][13. 16. 18. ... 4. 5. 6.][16. 18. 17. ... 5. 6. 7.]]
# 2.4、分离特征与标签
# 3、模型训练与推理
# 3.1、数据再处理
# 将输入数据转化为3D格式 (样本数,时间步,特征数)
# 3.2、建立模型:定义和训练时间卷积神经网络模型
# 3.3、模型训练
Epoch 1/1000
43/43 - 1s - loss: 124.9150 - val_loss: 28.0470 - 764ms/epoch - 18ms/step
Epoch 2/1000
43/43 - 0s - loss: 41.9717 - val_loss: 41.4632 - 100ms/epoch - 2ms/step
Epoch 3/1000
43/43 - 0s - loss: 55.0186 - val_loss: 36.8242 - 92ms/epoch - 2ms/step
Epoch 4/1000
43/43 - 0s - loss: 48.0289 - val_loss: 35.4341 - 105ms/epoch - 2ms/step
Epoch 5/1000
43/43 - 0s - loss: 46.5520 - val_loss: 34.2107 - 97ms/epoch - 2ms/step
Epoch 6/1000
43/43 - 0s - loss: 39.3062 - val_loss: 34.9127 - 98ms/epoch - 2ms/step
Epoch 7/1000
43/43 - 0s - loss: 41.5857 - val_loss: 33.3312 - 102ms/epoch - 2ms/step
Epoch 8/1000
43/43 - 0s - loss: 39.6624 - val_loss: 36.8456 - 89ms/epoch - 2ms/step
Epoch 9/1000
43/43 - 0s - loss: 37.2232 - val_loss: 32.2082 - 78ms/epoch - 2ms/step
Epoch 10/1000
43/43 - 0s - loss: 32.3461 - val_loss: 32.3342 - 81ms/epoch - 2ms/step
Epoch 11/1000
43/43 - 0s - loss: 32.4692 - val_loss: 31.6105 - 87ms/epoch - 2ms/step
Epoch 12/1000
43/43 - 0s - loss: 31.0049 - val_loss: 31.7516 - 85ms/epoch - 2ms/step
Epoch 13/1000
43/43 - 0s - loss: 31.4120 - val_loss: 32.4814 - 94ms/epoch - 2ms/step
Epoch 14/1000
43/43 - 0s - loss: 30.3727 - val_loss: 32.3661 - 172ms/epoch - 4ms/step
Epoch 15/1000
43/43 - 0s - loss: 28.5779 - val_loss: 33.0914 - 104ms/epoch - 2ms/step
Epoch 16/1000
43/43 - 0s - loss: 28.2869 - val_loss: 33.0207 - 96ms/epoch - 2ms/step
Epoch 17/1000
43/43 - 0s - loss: 27.9438 - val_loss: 33.5665 - 96ms/epoch - 2ms/step
Epoch 18/1000
43/43 - 0s - loss: 26.8220 - val_loss: 34.3124 - 108ms/epoch - 3ms/step
Epoch 19/1000
43/43 - 0s - loss: 26.4627 - val_loss: 34.0599 - 95ms/epoch - 2ms/step
Epoch 20/1000
43/43 - 0s - loss: 26.7424 - val_loss: 34.9252 - 91ms/epoch - 2ms/step
Epoch 21/1000
43/43 - 0s - loss: 25.3610 - val_loss: 35.1354 - 104ms/epoch - 2ms/step
Epoch 22/1000
43/43 - 0s - loss: 25.3079 - val_loss: 36.1249 - 97ms/epoch - 2ms/step
Epoch 23/1000
43/43 - 0s - loss: 24.5994 - val_loss: 36.0049 - 93ms/epoch - 2ms/step
Epoch 24/1000
43/43 - 0s - loss: 24.4569 - val_loss: 36.4239 - 105ms/epoch - 2ms/step
Epoch 25/1000
43/43 - 0s - loss: 23.9317 - val_loss: 35.9488 - 93ms/epoch - 2ms/step
Epoch 26/1000
43/43 - 0s - loss: 23.4671 - val_loss: 36.1248 - 87ms/epoch - 2ms/step
Epoch 27/1000
43/43 - 0s - loss: 23.2060 - val_loss: 36.7490 - 85ms/epoch - 2ms/step
Epoch 28/1000
43/43 - 0s - loss: 23.0000 - val_loss: 36.9432 - 74ms/epoch - 2ms/step
Epoch 29/1000
43/43 - 0s - loss: 22.9452 - val_loss: 37.4504 - 69ms/epoch - 2ms/step
Epoch 30/1000
43/43 - 0s - loss: 22.1462 - val_loss: 38.7905 - 70ms/epoch - 2ms/step
Epoch 31/1000
43/43 - 0s - loss: 22.0330 - val_loss: 38.7575 - 103ms/epoch - 2ms/step
Epoch 32/1000
43/43 - 0s - loss: 22.0065 - val_loss: 38.2103 - 84ms/epoch - 2ms/step
Epoch 33/1000
43/43 - 0s - loss: 21.5495 - val_loss: 39.7773 - 98ms/epoch - 2ms/step
Epoch 34/1000
43/43 - 0s - loss: 21.3134 - val_loss: 40.6234 - 106ms/epoch - 2ms/step
Epoch 35/1000
43/43 - 0s - loss: 20.8954 - val_loss: 41.8935 - 91ms/epoch - 2ms/step
Epoch 36/1000
43/43 - 0s - loss: 20.6854 - val_loss: 42.6756 - 98ms/epoch - 2ms/step
Epoch 37/1000
43/43 - 0s - loss: 20.6962 - val_loss: 44.5400 - 102ms/epoch - 2ms/step
Epoch 38/1000
43/43 - 0s - loss: 20.2958 - val_loss: 43.9005 - 83ms/epoch - 2ms/step
Epoch 39/1000
43/43 - 0s - loss: 20.0900 - val_loss: 46.3218 - 80ms/epoch - 2ms/step
Epoch 40/1000
43/43 - 0s - loss: 19.8518 - val_loss: 47.3231 - 104ms/epoch - 2ms/step
Epoch 41/1000
43/43 - 0s - loss: 19.7069 - val_loss: 48.0385 - 100ms/epoch - 2ms/step
Epoch 42/1000
43/43 - 0s - loss: 19.4992 - val_loss: 50.7614 - 97ms/epoch - 2ms/step
Epoch 43/1000
43/43 - 0s - loss: 19.1684 - val_loss: 49.1486 - 105ms/epoch - 2ms/step
Epoch 44/1000
43/43 - 0s - loss: 19.0760 - val_loss: 53.2720 - 99ms/epoch - 2ms/step
Epoch 45/1000
43/43 - 0s - loss: 18.9300 - val_loss: 50.1390 - 100ms/epoch - 2ms/step
Epoch 46/1000
43/43 - 0s - loss: 18.8669 - val_loss: 54.0359 - 106ms/epoch - 2ms/step
Epoch 47/1000
43/43 - 0s - loss: 18.6694 - val_loss: 52.4647 - 95ms/epoch - 2ms/step
Epoch 48/1000
43/43 - 0s - loss: 18.5207 - val_loss: 55.3733 - 97ms/epoch - 2ms/step
Epoch 49/1000
43/43 - 0s - loss: 18.2313 - val_loss: 54.8835 - 106ms/epoch - 2ms/step
Epoch 50/1000
43/43 - 0s - loss: 18.1582 - val_loss: 53.5451 - 100ms/epoch - 2ms/step……………………43/43 - 0s - loss: 1.2712 - val_loss: 151.7615 - 95ms/epoch - 2ms/step
Epoch 993/1000
43/43 - 0s - loss: 1.1109 - val_loss: 153.4365 - 90ms/epoch - 2ms/step
Epoch 994/1000
43/43 - 0s - loss: 1.2277 - val_loss: 154.8537 - 135ms/epoch - 3ms/step
Epoch 995/1000
43/43 - 0s - loss: 1.1820 - val_loss: 154.8023 - 202ms/epoch - 5ms/step
Epoch 996/1000
43/43 - 0s - loss: 1.5359 - val_loss: 153.2385 - 195ms/epoch - 5ms/step
Epoch 997/1000
43/43 - 0s - loss: 1.6835 - val_loss: 154.5790 - 212ms/epoch - 5ms/step
Epoch 998/1000
43/43 - 0s - loss: 2.7265 - val_loss: 149.3467 - 197ms/epoch - 5ms/step
Epoch 999/1000
43/43 - 0s - loss: 3.3956 - val_loss: 158.7523 - 179ms/epoch - 4ms/step
Epoch 1000/1000
43/43 - 0s - loss: 6.5273 - val_loss: 141.5004 - 180ms/epoch - 4ms/step
# 模型训练可视化:绘制训练和验证损失
# 3.4、模型预测与评估
y_val y_val_pred
0 18.0 14.574027
1 23.0 9.982560
2 23.0 11.338496
3 24.0 10.234162
4 25.0 16.762114
5 27.0 9.477368
6 22.0 -0.121278
7 12.0 19.867815
8 14.0 22.165188
9 20.0 22.839424
10 23.0 20.204948
11 15.0 16.035151
weather_shanghai_2000_val_MAE: 9.371264984210333
weather_shanghai_2000_val_MSE: 126.371276982466
weather_shanghai_2000_val_RMSE: 11.241497986588175
weather_shanghai_2000_val_R2: -5.1394952380145424
# 绘制预测结果
Keras之TCN:基于keras框架利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例相关推荐
- DL之LSTM/GRU/CNN:基于tensorflow框架分别利用LSTM/GRU、CNN算法对上海最高气温(数据归一化+构造有监督数据集)实现回归预测案例
DL之LSTM/GRU/CNN:基于tensorflow框架分别利用LSTM/GRU.CNN算法对上海最高气温(构造有监督数据集)实现回归预测案例 目录 基于tensorflow框架分别利用LSTM/ ...
- 从一维卷积、因果卷积(Causal CNN)、扩展卷积(Dilation CNN) 到 时间卷积网络 (TCN)
来源: AINLPer微信公众号(每日干货分享!!) 编辑: ShuYini 校稿: ShuYini 时间: 2022-09-30 引言 卷积神经网络 (CNN) 尽管通常与图像分类任务相关,但经过改 ...
- Pytorch之CNN:基于Pytorch框架实现经典卷积神经网络的算法(LeNet、AlexNet、VGG、NIN、GoogleNet、ResNet)——从代码认知CNN经典架构
Pytorch之CNN:基于Pytorch框架实现经典卷积神经网络的算法(LeNet.AlexNet.VGG.NIN.GoogleNet.ResNet)--从代码认知CNN经典架构 目录 CNN经典算 ...
- ML之prophet:利用prophet算法对上海最高气温实现回归预测(时间序列的趋势/周季节性趋势/年季节性趋势)案例
ML之prophet:利用prophet算法对上海最高气温实现回归预测(时间序列的趋势/周季节性趋势/年季节性趋势)案例 目录 利用prophet算法对上海最高气温实现回归预测(时间序列的趋势/周季节 ...
- 【CV】膨胀卷积详解以及时间卷积网络TCN论文笔记和源码实现
这篇博文分为两部分.第一部分详细讲解了TCN模型(Temporal Convolutional Network)中涉及的1D卷积,因果卷积,膨胀卷积中设计的计算,非常值得一看,有醍醐灌顶的作用.第二部 ...
- 时间卷积网络TCN:时间序列处理的新模型
这篇文章回顾了基于TCN的解决方案的最新创新.我们首先介绍了一个运动检测的案例研究,并简要回顾了TCN架构及其相对于传统方法的优势,如卷积神经网络(CNN)和递归神经网络(RNN).然后,我们介绍了一 ...
- 机器学习进阶之 时域/时间卷积网络 TCN 概念+由来+原理+代码实现
TCN 从"阿巴阿巴"到"巴拉巴拉" TCN的概念(干嘛来的!能解决什么问题) TCN的父母(由来) TCN的原理介绍 上代码! 1.TCN(时域卷积网络.时间 ...
- TCN(Temporal Convolutional Network,时间卷积网络)
1 前言 实验表明,RNN 在几乎所有的序列问题上都有良好表现,包括语音/文本识别.机器翻译.手写体识别.序列数据分析(预测)等. 在实际应用中,RNN 在内部设计上存在一个严重的问题:由于网络一次只 ...
- Math之ARIMA:基于statsmodels库利用ARIMA算法(ADF检验+差分修正+ACF/PACF图)对上海最高气温实现回归预测案例
Math之ARIMA:基于statsmodels库利用ARIMA算法(ADF检验+差分修正+ACF/PACF图)对上海最高气温实现回归预测案例 目录 基于statsmodels库利用ARIMA算法对上 ...
最新文章
- Table 'xxxxx' is marked as crashed and last 解决办法
- 这样用组图创作内容,能让你的文章被转发
- Matlab练习:timer(定时器3)
- 登录业务介绍(单点登录)
- android加载声音文件,Android是在应用程序中加载和播放声音的最快方式
- python装饰器执行顺序
- openresty+mysql+乱码_openresty记录响应body乱码问题
- python二分法查找时间点_python有序查找算法:二分法
- 互联网日报 | 美团门票单日入园人次破500万;蔚来用户累计换电百万次;2020诺贝尔生理学或医学奖揭晓...
- 信息学奥赛一本通 2055:【例3.5】收费
- java 比较器类_java常用类——比较器
- 新建linux服务器初始化操作
- Linux之SWIG安装(无需安装pcre依赖)
- matlab 矩阵动态,matlab – 如何以块为单位动态重塑矩阵?
- C语言中的一些基本函数说明及使用
- Python基础090:解决jupyter notebook无法自动跳转chrome浏览器的问题
- android 开发者模式进入
- unity2d 投影_Unity Projector 投影器原理以及优化
- Firefox插件Xmarks的使用方法
- Deep Nets Sublinear Memory Cost 笔记
热门文章
- Qt编写物联网管理平台22-报警联动
- 田纳西大学计算机科学,田纳西大学电气工程与计算机科学
- ozip解密_ozip解包工具下载oppo刷机包ozip解包一加ops解包
- Html5通过js进行页面内搜索
- [Camera Drv]开video dynamic framerate,特定场景下video encode时会闪屏 - MTK物联网在线解答 - 技术论坛
- 基于V2EX API的nodejs组件.
- 今日金融词汇--- 高杠杆模式
- 解决SVN不显示绿色小对勾
- 转载本论坛 (fudan_abc ) :linux那些事儿之我是u盘(16)冰冻三尺非一日之寒
- 常用的博客社区(续)