0

我正在谷歌云平台上打包一个培训应用程序。我使用本地测试代码python -mgcloud ai-platform local train找到它。但是当我将我的工作提交到谷歌云时,训练和测试数据集(在谷歌存储桶中)的路径不起作用。

我的存储桶目录:

my-models
  |
  |--dataset
      |-train_set
      |    |-cat(100 files inside)
      |    |-dog(100 files inside)
      |
      |-test_set
           |-cat(30 files inside)
           |-dog(30 files inside)

我使用这个命令来提交我的工作

$JOB_ID --job-dir=$BUCKET_PATH_FOR_JOB \
        --staging-bucket=$BUCKET_NAME \
        --package-path=trainer \
        --module-name=trainer.task \
        --python-version=3.5 \
        --region=us-east1 \
        --runtime-version=1.14 \
        -- \
        --train_path='gs://my-models/dataset/train_set/' \
        --test_path='gs://my-models/dataset/test_set/' \
...

这是我的一些代码:

def get_args():
    parser.add_argument(
        '--train_path',
        type=Path,
        action='store',
        help='GCS or local path to training data',
        required=True
    )
    parser.add_argument(
        '--test_path',
        type=Path,
        action='store',
        help='GCS or local path to testing data',
        required=True
    )
    return parser.parse_args()

def get_classes(train_path, test_path):
    train_dataset = list()
    test_dataset = list()
    train_classes = os.listdir(train_path)
    test_classes = os.listdir(test_path)

    return train_classes, test_classes

def main():
    args = get_args()
    train_path = args.train_path
    test_path = args.test_path
    train_classes, test_classes = get_classes(train_path, test_path)
...

我期望目录列表cat以及dogtrain_path 和 test_path 的输出。此外,读取目录中文件的可能方式。

4

1 回答 1

1

你对你的模型说得太少了。但是,如果您使用 an imageGenerator,则不必标记图像,因为它们位于正确的目录中

添加有关您的代码的更多信息,以了解它对您提供给它的文件列表的作用!

于 2019-10-21T20:29:06.343 回答