Общий фон
Несколько лет назад был открыт исходный код для классификации изображений с использованием PyTorch (http://spytensor.com/index.php/archives/21/), и за последние два месяца был проведен ряд исследований и улучшений. На этой основе был создан базовый пример (baseline) для соревнования по распознаванию болезней у сельскохозяйственных культур Ai Challenger для обмена опытом.
Обновление от 13 декабря 2018 года
Добавлены ссылки для загрузки данных: 百度网盘 Код для извлечения: iksk Эти данные были обновлены 23 октября и включают в себя обучающую, валидационную и тестовые наборы данных A/B. Кроме того, недавно некоторые студенты получили похожие данные и хотели бы выполнить задачу классификации, но этот код был создан специально для этого соревнования и имеет отличия в способе загрузки данных, что может быть неудобно для новичков. Я также опубликовал код для задачи классификации изображений и приложил к нему простое руководство, которое поможет легко использовать PyTorch для классификации изображений.
Руководство: Обучение классификации изображений с PyTorch Код: pytorch-image-classificationОбновление от 30 октября 2018 года
Добавлен файл data_aug.py
для локальной аугментации данных. Из-за нехватки времени, я больше не буду участвовать в этом соревновании, но эти методы аугментации данных могут быть полезны для исследования. Поддерживаемые методы аугментации данных:
Примечание: После визуализации изменений контрастности, субъективно кажется, что характеристики стали более заметными, но я еще не завершил процесс. Учтите, что если вы применяете изменение контрастности, то лучше также применить его и для тестовых данных.
Личный блог: Супер Джей Адрес соревнования: Распознавание болезней у сельскохозяйственных культур Адрес полного кода: plants_disease_detection
Примечание:
Добро пожаловать к обмену опытом и обучению, в этом коде есть множество мест для улучшений,
Если у вас есть предложения по улучшению, пожалуйста, дайте мне знать!
Контакт: zhuchaojie@buaa.edu.cn
Результаты: онлайн 0.8805, оффлайн 0.875. Из-за случайного разделения данных, возможно, будут колебания при воспроизведении, но я сделал все возможное, чтобы исключить влияние случайных семян.## УведомлениеФункция тестирования в файле main.py
была исправлена. После выполнения в директории ./submit/
будет создан файл формата json для подачи. Поддержка функции FocalLoss и кросс-валидации уже реализована. Для использования требуется только небольшое изменение.
Версия pytorch в зависимости должна быть одинаковой, иначе могут возникнуть небольшие ошибки.
python3.6 pytorch0.4.1
Важно отметить, что используются официально обновленные данные, которые были проанализированы статистически (подробнее ниже). В результате было решено удалить классы 44 и 45.
Из-за распределения данных, я объединил train и val наборы данных и случайным образом разделил их.
Методы улучшения данных:
Размер изображений выбран как 650, пока не было проведено оптимизации этого параметра (в конце концов, времени не хватает...).
На данный момент была использована только модель resnet50. Если появятся дополнительные GPU, то можно будет рассмотреть другие модели.
Детали настройки гиперпараметров находятся в файле config.py
.
data/test/
data/temp/images/
, а два json
файла поместить в директорию data/temp/labels/
move.py
main.py
для тренировки### 6. Графики распределения данныхТренировочный набор данных
Валидационный набор данных
Все наборы данных
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )