keras怎么生成数据集
时间: 2024-02-19 12:35:15 浏览: 17
在 Keras 中生成数据集主要有两种方式:
1. 使用 `ImageDataGenerator` 生成图片数据集
`ImageDataGenerator` 可以对图片进行各种数据增强操作,如旋转、裁剪、缩放等,并且可以方便地进行批次训练。具体代码如下:
```python
from keras.preprocessing.image import ImageDataGenerator
datagen = ImageDataGenerator(
rescale=1./255, # 缩放像素值到0-1之间
rotation_range=20, # 随机旋转角度
width_shift_range=0.2, # 随机水平位移
height_shift_range=0.2, # 随机竖直位移
shear_range=0.2, # 随机错切变换
zoom_range=0.2, # 随机缩放
horizontal_flip=True, # 随机水平翻转
fill_mode='nearest' # 填充方式
)
train_generator = datagen.flow_from_directory(
'train',
target_size=(150, 150),
batch_size=32,
class_mode='binary'
)
```
2. 自定义数据生成器
如果需要生成自定义的数据集,可以通过编写一个 Python 生成器来实现。具体代码如下:
```python
def data_generator():
while True:
# 生成样本
x = ...
y = ...
# 把样本打包成一个 batch,并返回
yield x, y
train_generator = data_generator()
```
以上两种方式可以根据具体任务的需要进行选择,并进行相应的参数配置。