Исследователи представили улучшенный алгоритм для определения болезней растений при помощи машинного обучения
Использование машинного зрения и нейросетей в сельском хозяйстве уже давно не новость. Технологии помогают бороться со стремительно растущим количеством заболеваний растений, способных привести к существенным экономическим потерям. Своевременное и точное обнаружение и определение болезней имеет решающее значение при защите и сохранении защите урожая. При этом для обучения нейросетей требуются внушительные объёмы данных, для которых нередко вручную создаются десятки или даже сотни признаков, при обнаружении которых алгоритм автоматически отмечает растение как «больное». Учёные из Китая и Сингапура разработали алгоритм SSAFS (salp swarm algorithm for feature selection) для определения лучшей комбинации созданных вручную признаков. Он помогает экономить время и ресурсы, в то же время значительно увеличивая шансы на успешную классификацию.
Алгоритмы и модели классификации изображений на базе машинного обучения частично основаны на извлечении информации о различных признаков из изображения. Эти признаки, как правило, определяются моделью внутри себя. Ручная генерация применяется при малых объемах данных, а ее качество напрямую зависит от знаний экспертов, размечающих данные. Нередко ручная разметка используются вместе с традиционными методами машинного обучения для обнаружения объектов и классификации изображений. Со временем таких признаков может скопиться довольно много, после чего встает вопрос об их корректном отборе.
В некоторых исследованиях для решения проблемы признакам присваивается определенный рейтинг, ориентированный на ранжирование по тем или иным типам заболеваний или другим критериям. В этом исследовании ученые предложили SSAFS, подбирающий наиболее оптимальное сочетание признаков.
В ходе работы над изображениями листьев больного растения исследователи вручную определили 171 признак: 45 признаков по цвету и 126 по текстуре. SSAFS применялся к каждому набору данных для отбора оптимальных подмножеств признаков, после чего все полученные подмножества были оценены при помощи классификатора. SSAFS применили к 4 наборам данных из UC Irvine Machine Learning Repository и дополнительно протестировали на 6 наборах данных с болезнями растений, полученных проектом PlantVillage.
Результаты показали, что SSAFS не только значительно сокращает количество используемых признаков, но и заметно повышает точность их классификации. Дальнейший сравнительный анализ показал превосходство SSAFS над SOTA-методами.
В основе SSAFS заложен SSA (Salp swarm algorithm) или оптимизация методом сальп — метаэвристический алгоритм, предложенный в 2017 году. При его разработке авторы вдохновлялись сальпами — свободно плавающими морскими существами, похожими на прозрачные бочки. При поиске пищи они зачастую собираются в причудливые цепочки или спирали. Первый сальп в цепочке — лидер и ведущий, при этом любой другой сальп может решить проблему поиска пищи.
В начале алгоритм случайным образом размещает в пространстве множество сальп, после чего для каждой сальпы определяется значение целевой функции. Сальпа с наилучшим значением вместе с ее координатой будет представлять собой «источник еды», за которым охотится группа сальп со своими ведущими и ведомыми. Когда группа находит «источник еды», его положение обновляется.
Алгоритм отлично подходит для оптимизации задачи с неизвестным пространством поиска благодаря простоте применения и реализации, наличию только одного параметра для настройки и сохранения наилучшего текущего значения, которое не будет потеряно даже в случае вырождения популяции. Кроме того, сальпы в цепочке постепенно смещаются в сторону ведущей сальпы, что предотвращает застревание в точке локального оптимума.
Данные исследования представлены в открытом доступе в статье «A Novel Feature Selection Strategy Based on Salp Swarm Algorithm for Plant Disease Detection» в журнале Plant Phenomics. DOI: 10.34133/plantphenomics.0039