返回顶部
首页 > 资讯 > 后端开发 > Python >利用TimeGAN技术对一维时序数据进行扩增(Python代码)
  • 748
分享到

利用TimeGAN技术对一维时序数据进行扩增(Python代码)

生成对抗网络人工智能神经网络 2023-09-25 07:09:59 748人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

数据集介绍 特征是工作经验年限,标签是薪水,因为数据量太少,利用GAN技术进行扩增 YearsExperienceSalary1.1393431.3462051.5377312435252.2398912.9566423601503.254

数据集介绍

特征是工作经验年限,标签是薪水,因为数据量太少,利用GAN技术进行扩增

YearsExperienceSalary
1.139343
1.346205
1.537731
243525
2.239891
2.956642
360150
3.254445
3.264445
3.757189
3.963218
455794
456957
4.157081
4.561111
4.967938
5.166029
5.383088
5.981363
693940
6.891738
7.198273
7.9101302
8.2113812
8.7109431
9105582
9.5116969
9.6112635
10.3122391
10.5121872

模型整体介绍

时间序列生成对抗性网络

TGAN,时间序列生成对抗性网络于2019年提出,作为一种基于GAN的框架,能够生成各种不同领域的真实时间序列数据,即具有不同观察行为的序列数据。与我们在真实数据和合成数据上实现无监督对抗性损失的其他GAN架构(例如,WGAN)不同,TimeGAN架构引入了监督损失的概念-鼓励模型通过使用原始数据作为监督来捕捉数据中的时间条件分布。此外,我们可以观察到嵌入网络的引入,该网络负责降低对抗性学习空间维度。

模型效果

扩增的数据与原始数据对比

扩增数据与原始数据概率分布图

运行环境要求:

numpy version: 1.19.2
pandas version: 1.2.0
scikit-learn version: 0.24.0
Tensorflow version: 2.4.0 

import numpy as npimport pandas as pdfrom sklearn.preprocessing import MinMaxScalerfrom tensorflow import function, GradientTape, sqrt, abs, reduce_mean, ones_like, zeros_like, convert_to_tensor,float32from tensorflow import data as tfdatafrom tensorflow import config as tfconfigfrom tensorflow import nnfrom tensorflow.keras import Model, Sequential, Inputfrom tensorflow.keras.layers import GRU, LSTM, Densefrom tensorflow.keras.optimizers import Adamfrom tensorflow.keras.losses import BinaryCrossentropy, MeanSquaredError#代码,https://mbd.pub/o/bread/mbd-ZJmYmZtw

来源地址:https://blog.csdn.net/qq_40840797/article/details/130669909

--结束END--

本文标题: 利用TimeGAN技术对一维时序数据进行扩增(Python代码)

本文链接: https://lsjlt.com/news/417217.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作