gpt4 book ai didi

python - 具有单一分类特征的 LSTM 预测

转载 作者:行者123 更新时间:2023-12-05 05:42:00 24 4
gpt4 key购买 nike

我对时间序列还很陌生。
这是我正在处理的数据集:

           Date   Price               Location
0 2012-01-01 1771.0 Marche
1 2012-01-01 1039.0 Calabria
2 2012-01-01 2193.0 Campania
3 2012-01-01 2015.0 Emilia-Romagna
4 2012-01-01 1483.0 Friuli-Venezia Giulia
... ... ... ...
2475 2022-04-01 1963.0 Lazio
2476 2022-04-01 1362.0 Friuli-Venezia Giulia
2477 2022-04-01 1674.0 Emilia-Romagna
2478 2022-04-01 1388.0 Marche
2479 2022-04-01 1103.0 Abruzzo

我正在尝试构建用于价格预测的 LSTM,但我不知道如何管理 Location 分类特征:我必须使用 one-hot 编码还是 groupby?我想预测的是基于位置的价格。
我怎样才能做到这一点?特别感谢 Python 解决方案。

提前致谢。

最佳答案

假设我的数据集 (df) 与您的类似:

          Date       Price  Location
0 2021-01-01 791.076890 Campania
1 2021-01-01 705.702464 Lombardia
2 2021-01-01 719.991382 Sicilia
3 2021-02-01 825.760917 Lombardia
4 2021-02-01 747.734309 Sicilia
... ... ... ...
31 2021-11-01 886.874348 Lombardia
32 2021-11-01 935.040583 Campania
33 2021-12-01 771.165378 Sicilia
34 2021-12-01 952.255227 Campania
35 2021-12-01 939.754515 Lombardia

在我的例子中,我每个月都有 3 个地区(坎帕尼亚、伦巴第、西西里)的 Price 记录。我的想法是将不同的区域视为不同的特征,因此我会将 df 转换为:

df = df.set_index(["Date", "Location"]).Price.unstack()

现在我的数据集是这样的:

Location    Campania    Lombardia   Sicilia
Date
2021-01-01 791.076890 705.702464 719.991382
2021-02-01 758.872755 825.760917 747.734309
2021-03-01 880.038005 803.165998 837.738419
... ... ... ...
2021-10-01 908.402345 805.081193 792.369610
2021-11-01 935.040583 886.874348 736.862025
2021-12-01 952.255227 939.754515 771.165378

在此之后,请确保没有 NaN 值 (df.isna().sum())。

现在您可以将此数据传递给多特征 RNN(或 LSTM),如 this example 中所述,或多 channel 1D-CNN(选择合适的内核大小)。两种情况下唯一的问题可能是数据集较小,因此尽量不要过度参数化模型(例如减少神经元和层数),否则过拟合将不可避免。关于这一点,您可以在时间序列的最后 20% 上测试模型:

from sklearn.model_selection import train_test_split
df_train, df_test = train_test_split(df, shuffle=False, test_size=.2)

最后一部分是为监督学习构建匹配的(X, Y),但这取决于您使用的是什么模型以及您的预测任务是什么。 Another example here .

关于python - 具有单一分类特征的 LSTM 预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72168521/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com