Подтвердить что ты не робот

Требования к мимину для классификатора изображений тензорного потока Google

Мы планируем создавать классификаторы изображений с помощью Google Tensorflow.

Интересно, каковы минимальные и каковы оптимальные требования для обучения пользовательского классификатора изображений с использованием сверточной глубокой нейронной сети?

Вопросы конкретно:

  • сколько изображений на класс должно быть предоставлено как минимум?
  • нам нужно appx. предоставить одинаковое количество учебных образов для каждого класса или может ли разница в размере каждого класса?
  • Каково влияние неверных данных изображения в данных обучения? Например. 500 изображений теннисной обуви и 50 других туфель.
  • Можно ли обучить классификатор с гораздо большим количеством классов, чем недавно опубликованная модель init-v3? Скажем: 30.000.
4b9b3361

Ответ 1

", сколько изображений на класс должно быть предоставлено как минимум?"

Зависит от того, как вы тренируетесь.

Если тренировка новой модели с нуля, чистое наблюдение: для эмпирического правила по количеству изображений вы можете посмотреть задачи MNIST и CIFAR. Кажется, что они работают нормально с примерно 5000 изображений в классе. Это, если вы тренируетесь с нуля.

Возможно, вы можете загрузите свою сеть, начав с модели, подготовленной на ImageNet. Эта модель уже будет иметь хорошие возможности, поэтому она должна научиться классифицировать новые категории без использования многих ярлыков. Я не думаю, что это достаточно хорошо изучено, чтобы рассказать вам конкретный номер.

Если тренировка с немечеными данными, возможно, всего 100 помеченных изображений для каждого класса. Существует много недавних исследовательских работ по этой теме, хотя и не масштабируется до таких больших задач, как Imagenet. Простой в реализации:

http://arxiv.org/abs/1507.00677

Сложно реализовать:

http://arxiv.org/abs/1507.02672
http://arxiv.org/abs/1511.06390
http://arxiv.org/abs/1511.06440

"нам нужно, чтобы appx обеспечивал одинаковое количество учебных образов для каждого класса или может ли разница в классе на один класс?"

Он должен работать с различным количеством примеров для каждого класса.

"каково влияние неправильных данных изображения в данных обучения? Например, 500 изображений теннисной обуви и 50 других ботинок.

Вам следует использовать технику сглаживания меток, описанную в этой статье:

http://arxiv.org/abs/1512.00567

Сгладьте метки, основываясь на вашей оценке скорости ошибок метки.

"можно ли обучить классификатор с гораздо большим количеством классов, чем недавно опубликованная модель начала-v3? Скажем: 30.000.

Да

Ответ 2

Сколько изображений в классе должно быть предоставлено как минимум?

нам нужно appx. обеспечить одинаковое количество учебных образов для каждого класса или может ли разница в размере каждого класса?

Каково влияние неверных данных изображения в данных обучения? Например. 500 изображений теннисной обуви и 50 других туфель.

Эти три вопроса не являются специфическими для TensorFlow. Но короткий ответ заключается в том, что это зависит от отказоустойчивости вашей модели при обработке несбалансированного набора данных и шумных ярлыков.

Можно ли обучить классификатор с гораздо большим количеством классов, чем недавно опубликованная модель начала-v3? Скажем: 30.000.

Да, определенно. Это будет означать гораздо более высокий уровень классификатора, поэтому ваше время обучения может быть больше. Кроме того, в TensorFlow нет ограничений.