自学内容网 自学内容网

机器学习笔记 // 创建窗口数据集

tf.data库包含许多对操作数据很有帮助的API。你可以使用这些API来创建一个简单的数据集(包含数字0~9)​,模拟一个时间序列。接下来将它转换为窗口数据集的开始,代码如下:

dataset = tf.data.Dataset.range(10)

dataset = dataset.window(5, shift=1, drop_remainder=True)

dataset = dataset.flat_map(lambda window: window.batch(5))

for window in dataset:

    print(window.numpy())

dataset.window的参数5指定将数据集分割为5个元素的窗口。指定shift=1导致每个窗口接下来会从前一个位置移动到下一个:第一个窗口包含从0开始的5个元素,下一个窗口包含从1开始的5个元素,以此类推。设置drop_remainder为True指定当它达到数据集靠近最后的位置时,如果窗口小于期待的大小5,它们会被丢掉。

鉴于窗口的定义,分割数据集的过程可以发生。你可以使用flat_map函数来实现它,在这个例子中指定一批大小为5的窗口。运行代码会得到下面的结果:

分割为特征值与标签的代码:

dataset = dataset.map(lambda window: (window[:-1], window[-1:]))

for x,y in dataset:

    prinnt(x.numpy(), y.numpy())

结果如下:

窗口中的前4个值可以被视为特征,随后的值就是标签!


原文地址:https://blog.csdn.net/2201_76006949/article/details/143824977

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!