Классификация аннотированных изображений

У меня есть куча изображений (~3000), которые были вручную классифицированы (одобрены / отклонены) на основании некоторых бизнес-критериев. Я обработал эти изображения с помощью Google Cloud Platform, получив аннотации и результаты SafeSearch, например (формат CSV):

имя файла; утвержден / отклонен; для взрослых; пародия; медицинская; насилие; аннотации A.jpg; одобрено;VERY_UNLIKELY;VERY_UNLIKELY;VERY_UNLIKELY;UNLIKELY; лодка |0,9, транспортное средство |0,8 B.jpg; отклонено; VERY_UNLIKELY; VERY_UNLIKELY; VERY_UNLIKELY; шрифтом |0.9 |

Я хочу использовать машинное обучение, чтобы иметь возможность предсказать, будет ли новое изображение утверждено или отклонено (второй столбец в файле CSV).

Какой алгоритм я должен использовать?

Как мне отформатировать данные, особенно столбец аннотаций? Должен ли я сначала получить все доступные типы аннотаций и использовать их как функцию с числовым значением (0, если оно не применяется)? Или лучше обработать столбец аннотации как текст?

1 ответ

Я бы предложил вам попробовать сверточные нейронные сети.

Возможно, самый быстрый способ проверить свою идею, будет ли она работать или нет (проблема может быть в количестве изображений, которое у вас достаточно мало), - это использовать трансферное обучение с Tensorflow. Есть замечательные уроки, сделанные Магнусом Эриком Хвассом Педерсеном, который опубликовал их на YouTube.

Я предлагаю вам просмотреть все видео, но важными являются № 7 и № 8.

Использование трансферного обучения позволяет использовать модели, которые они строят в Google, для классификации изображений. Но с помощью трансферного обучения вы можете использовать свои собственные данные со своими метками.

Используя этот подход, вы сможете увидеть, подходит ли это для вашей проблемы. Затем вы можете погрузиться в сверточные нейронные сети и создать конвейер, который будет работать лучше всего для вашей проблемы.

Другие вопросы по тегам