csvはただのコンマで仕切られたファイルです。
https://www.weblio.jp/content/amp/Comma-Separated+Values
多次元配列を記述できるということで、いろいろなところで見かけます。
フォーマットの問題なので、データセットを作るときは特に気にしなくても大丈夫です。
データセットを最も簡単に作る方法はこちらになります。
https://qiita.com/agumon/items/ab2de98a3783e0a93e66
これならば、カテゴリ別に異なるフォルダに入れればできます。
データの分け方ですが、sklearnのkfoldなどを使うのが一般的です。
https://qiita.com/19930404/items/09ddbe506d0e4ab0e10c
直接質問には関係ないことですが、質問する際には何を調べたのかについて記載するとよいです。
でないと、最初に思うことは「検索したらいいじゃん」ということです。
ついでに、どの部分がわからないかまであると、より短い時間に解決につながります。
追記
https://keras.io/ja/preprocessing/image/
のImageDataGeneratorを使います。
python
1from keras.preprocessing.image import ImageDataGenerator
2
3train_datagen = ImageDataGenerator(
4 rescale=1.0 / 255,
5 shear_range=0.2,
6 zoom_range=0.2,
7 horizontal_flip=True) #画像のカサ増し時に実行する変形をキーワードで
8#train_datagen = ImageDataGenerator(rescale=1.0 / 255) #そのまま使うのなら
9
10train_generator = train_datagen.flow_from_directory(
11 'data/train',
12 target_size=(256, 256),
13 batch_size=batch_size,
14 class_mode='categorical') #./data/trainの画像を256x256に統一する
あとはKerasのモデルを作ってfitするだけ
python
1history = model.fit_generator(
2 train_generator,
3 nb_epoch=nb_epoch)