构建Keras项目

时间:2018-10-30 13:11:07

标签: python keras project-structure

我正在开发Keras环境以训练DL模型,并且正在努力确定项目的文件结构。

当前看起来像这样:

.
├── build_model.py
├── ctalearn
│   ├── data
│   │   ├── data_loading.py
│   │   ├── data_processing.py
│   │   ├── image_mapping.py
│   │   ├── __init__.py
│   │   └── pixel_pos_files
│   │       ├── FACT_pos.npy
│   │       ├── HESS-II_pos.npy
│   │       ├── HESS-I_pos.npy
│   │       ├── LST_pos.npy
│   │       ├── MSTF_pos.npy
│   │       ├── MSTN_pos.npy
│   │       ├── MSTS_pos.npy
│   │       ├── SST1_pos.npy
│   │       ├── SSTA_pos.npy
│   │       └── SSTC_pos.npy
│   ├── __init__.py
│   ├── predict.py
│   ├── train.py
│   └── utils.py
├── example_model_schematics.yaml
├── example_train_config.yaml
├── models
│   ├── build_cnn_rnn.py
│   └── cnn_rnn.yml
├── setup.py
└── test.py

train.pypredict.py是主要脚本。他们采用了以.yml格式存储的模型体系结构和以.yml格式存储的配置文件的路径,并运行了东西。

data_loading.pySequence对象的工厂,这些对象被馈送到model.fit_generator() /管理器以访问实际数据文件(位于项目结构外部)。

data文件夹的其余部分是工厂的帮助程序类。

Keras体系结构目前是由.yaml原理图通过脚本build_model.py或临时脚本(例如build_cnn_rnn.py)构建的,并以.yml格式存储,由train.pypredict.py加载,然后编译并提供给数据生成器。

我的结构合理吗?

我应该把build_model.py放在哪里?

我应该分别使用trainpredict脚本还是将它们混合在一起,让用户选择是否要通过config.yml文件进行预测或训练?

应将模型路径指定为命令行参数还是config.yaml文件中的选项?

是否应该删除内部文件夹中的__init__.py

0 个答案:

没有答案