Теперь нейросеть с высокой точностью может определять вид какого либо растения

0
13

Как нейросеть узнает растения и почему она ошибается

Источники

Мы уже рассказывали о проекте iNaturalist — социальной сети для любителей природы, где каждый пользователь может загружать свои изображения, а эксперты определяют видовую принадлежность объекта. На данный момент на платформу загружено 10 880 718 фотонаблюдений растений, для которых эксперты определили видовую принадлежность.

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

Агрио это приложение для Android и iOS, разработанное именно для этого. Это помогает производителям лучше управлять защитой растений. Идентификация болезней является важнейшим компонентом рутинной защиты растений. Ценность, которую предлагает приложение, привлекает и другую аудиторию. Домашние производители, ищущие профессиональный совет, составляют большую часть пользовательской базы, использующей функцию идентификации болезней для своих нужд. Это согласуется с растущей тенденцией миллениумов, которые используют технологии, чтобы выращивать продукты питания в своих домах. Кроме того, Агрио предлагает биологические и органические средства обработки в рамках интегрированных протоколов борьбы с вредителями, что делает их еще более актуальными для садоводов и домашних цветоводов.

Более 10 миллионов изображений — цифра внушительная и вроде бы достаточная для качественного обучения нейросети. Система по ряду параметров запоминает, какое фото к какой категории — к какому виду — относится. Однако, посмотрев на структуру этих данных поближе, мы увидим, что они крайне неоднородны. Есть широко распространенные виды с десятками тысяч фотографий со всего мира. Если на загруженном пользователем изображении широко распространенный вид, и в базе уже много его фотографий, то нейросеть с большей вероятностью его верно распознает.

В основе технологии распознавания объектов лежат механизмы компьютерного зрения, которые успешно применяются в разных областях — от машин-беспилотников до диагностики рака. Алгоритмы конкретно для iNaturalist разработаны в 2017 году и периодически обновляются. После того, как пользователь загружает фотографию, начинается ее анализ и сравнение полученных параметров с базой уже имеющихся фотографий.

Дополнительную сложность для алгоритмов дает фон, на котором сняты растения. Он бывает очень разным: это может быть и небо, и другие травы, и камни, и человеческие руки. Случаи, когда растение на фото почти сливается с другими травами, для распознавания особенно сложны. Многое зависит и от качества изображения: если все смазано и от цветка лишь кусок — такое растение даже опытный профессор не факт, что определит.

Почему важно точно определить причину проблемы?

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

Как разработанный вами метод может быть применим на практике? ― Если говорить конкретно об этой задаче — учет неопределенности, мы внедрением не занимались, так как это область ответственности наших коллабораторов. Но чем лучше работает модель, тем точнее будут делаться предсказания нейросети при распознавании опухолей. Неопределенность, которую мы умеет предсказывать с помощью байесовских методов, при визуализации позволяет увидеть, где модель не уверена. В целом, мой метод универсальный, он применим не только для этой задачи. Например, я использую его в своей диссертации, которая посвящена распознаванию изображений пыльцы растений аллергенов. Я разработала веб-сервис, основанный на глубоких нейронных сетях — с его помощью можно будет узнать о появлении аллергенов в городе.

А если вид редкий, да еще сфотографирован с необычного ракурса, то более вероятны ошибки со стороны системы. Есть огромный блок видов, для которых в базе не наберется и пяти фотографий. Причины могут быть разными: произрастание этих видов в труднодоступных местах, малая численность, сложность идентификации даже для специалистов. И по таким видам для обучения алгоритмов материала оказывается очень мало, ведь нейросеть — это не человек-эксперт. Она анализирует заданные параметры и имеет только тот опыт, который мы туда заложили.

Визуальный осмотр является важным аспектом, когда речь идет о здоровье растений. Поскольку лабораторные тесты не являются практическим инструментом для ежедневной диагностики, из-за затрат и времени оборота производители принимают решения, основываясь на симптомах, которые можно увидеть на растениях. Осмотр растений занимает много времени и часто оставляет у производителей сомнения. Консультанты по растениеводству готовы поддержать производителей в принятии решений и убедиться, что ошибки сведены к минимуму. Но что делать, если такой помощи нет? К счастью, на помощь могут прийти технологии. Приложение на основе искусственного интеллекта для выявления болезней растений стало возможным благодаря большому скачку производительности, достигнутому сообществом исследователей искусственного интеллекта.

Дистанционное зондирование полезно, когда производители хотят точно определить места, где начались проблемы. Но камеры, установленные на дронах или другом оборудовании, увидят лишь часть симптомов. Часто симптомы, наблюдаемые на листве, вторичны; реальная проблема может быть связана с внутренними тканями стеблей или корней. Приложение инструктирует производителя о том, какие вмешательства необходимы для выявления основной причины. В этом смысле хорошей альтернативы ботинкам на земле пока нет.

С помощью применения нового распределения нам удалось еще больше поднять точность сегментации опухолей и улучшить калибровку модели. Теперь она лучше справляется с оценкой неопределенности — калибровка модели стала лучше примерно в два раза, при этом точность стала выше на 3%. Этот метод для оценки эпистемической неопределенности работает лучше и точнее, чем подобные. Статьи выйдут в сборниках конференций: первая ― в CEUR Workshop Proceedings, а вторая ― в Lecture Notes in Computer Science.

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

В консультантах по защите растений существует огромная пустота, которая приводит к 40% потерь урожая. Соотношение сельхозработников и фермеров непропорционально низкое и далеко от оптимального соотношения 1:50. Доступ к высококачественным советам еще менее доступен для домашних производителей. С помощью ИИ мы можем предложить бесплатное решение для распознавания изображений, которое может закрыть этот пробел. Agrio ежедневно анализирует тысячи изображений, что в противном случае заняло бы сотни часов человеческих экспертов, что является неэкономичной альтернативой. Решение не ограничено по масштабу и поэтому предлагает жизнеспособный способ поддержать производителей, улучшить глобальное производство продуктов питания и уменьшить голод.

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

В последние годы программные продукты могут выполнять задачи, основанные на зрении, с точностью выше человеческого уровня. Почему бы тогда не применить эту технологию к консультациям по агрономии? Распространение мобильных устройств делает этот вопрос еще более актуальным, так как такие устройства позволили масштабно распространять решение. Фермеры и домашние производители могут носить с собой агронома в кармане, когда они идут осматривать свои растения.

Почему нейросеть не может отличить опухоль от изображения гориллы, что такое процент неуверенности и как поиск машин на парковке помогает его понять? И наконец, почему не стоит полностью доверять выводам компьютерной модели? Об этом ITMO.NEWS поговорил с аспиранткой факультета информационных технологий и программирования ИТМО Натальей Ханжиной, которая разработала новый метод, позволяющий улучшить точность распознавания нейросетью опухолей головного мозга по изображениям МРТ.

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

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

Многие привыкли доверять рекомендациям программы. Но насколько в действительности точны ответы, которые предоставляет нейросеть? ― Ответы нейросети люди, как правило, слепо принимают за истину. Но никто не признается в том, что его модель работает не с точностью 100%, а всего лишь 60% или 80%. Нельзя слепо опираться на решения нейросетевых моделей. Вместо этого нужно учитывать то, насколько модель уверена в своем предсказании. Допустим, модель определила класс опухоли и уверена в этом на 80%. На основе этого человек, который создает систему обработки ответа для дальнейшего внедрения в медицинский процесс, сам решает, достаточно ли этого уровня уверенности, чтобы принять решение о наличии болезни. Врач, который использует программу по автоматическому распознаванию опухолей, тоже может посмотреть: «Ага, вот в этих пикселях изображения модель уверена на 90%, хорошо. А вот в другой области — гораздо меньше, поэтому лучше я перепроверю снимок вручную». Это позволяет медикам сэкономить время и сконцентрироваться на тех случаях, где опухоль не удается распознать с помощью нейросети. ― А как определить процент уверенности нейросети? ― В обычных нейросетях в качестве уверенности берется выход так называемого слоя softmax. Это функция, которая применяется в машинном обучении для задач классификации в случае, если классов больше двух. Она выдает вектор, который распределен по классам от 0 до 1. И этот вектор затем можно интерпретировать как некоторую уверенность сети. Но с точки зрения математической статистики и теории вероятности некорректно принимать его значения в качестве уверенности. Например, мы можем проверить нейросеть и вместо опухоли показать изображение гориллы. Нейросеть, на основе функции softmax, скажет: «Это опухоль, я уверена в этом с вероятностью 10% или 20%». Но очевидно, что на изображении вообще не опухоль и даже не мозг. В идеале нейросеть должна ответить, что вероятность наличия опухоли 0%. Но с помощью функции softmax этого не добиться, поэтому ответы получаются некорректными. Чтобы посчитать статистически правильную вероятность, можно использовать методы байесовского вывода для глубоких нейронных сетей и их аппроксимации (метод вычислений, при котором сложные математические функции заменяются похожими, но более простыми в описании). Наталья Ханжина. Фото из личного архива собеседника Это связано с понятием правдоподобия в математической статистике. При построении модели, обычно в качестве оптимизации используют метод максимального правдоподобия (MLE). И с точки зрения нейронных сетей правдоподобие является функцией потерь — она оценивает разницу между настоящим значением оцениваемого параметра и непосредственно самой оценкой, например, класса объекта и предсказанием модели. Отличие байесовских глубоких нейросетей от простых заключается в использовании метода апостериорного максимума вместо метода максимального правдоподобия при обучении моделей. Что все это значит? Допустим, вы приехали в торговый центр на машине и оставили ее на парковке. А потом потеряли машину и пытаетесь ее найти. Если вы при этом пользуетесь методом максимального правдоподобия, то будете искать ее просто ряд за рядом: в одном нет, в другом тоже. Будете смотреть на соседние машины и сравнивать со своей: похожа ли, тот ли номер… Если следовать методу апостериорного максимума, то в нем для оптимизации будет использоваться не только функция правдоподобия (это как раз наш способ сравнения машин с другими), но и еще некая априорная информация. Например, вы точно помните, что оставили машину в определенном секторе парковки, так что будете искать ее именно там. И, соответственно, оптимизация (решение задачи) будет производиться с помощью не только функции правдоподобия (похожа ли ваша машина на другие), но и сектора, где она находится. Это уже называется метод апостериорного максимума — он работает на основе формулы Байеса,которая в целом в байесовской статистике является ключевым понятием. ― Что это за формула и как она используется при обучении нейросетей? ― Преподобный Томас Байес — священник и математик, еще в XVIII веке он придумал формулу, которая сейчас отчасти является основой статистики и машинного обучения. И она как раз про соотношение апостериорной и априорной информации, функции правдоподобия и распределения наблюдаемых данных. Но дело в том, что ее применение для глубоких нейронных сетей долгое время оставалось очень тяжелым с точки зрения вычислений. Томас Байес. Источник: thedatascientist.com Однако не так давно исследователи разработали инструменты, которые позволяют для глубоких сетей применять байесовские методы. Применение этих методов позволяет более эффективно оценить уверенность модели. Или, наоборот, ее неуверенность. В теории вероятностей эта неуверенность называется неопределенностью. Она бывает разных видов. Есть неопределенность самой нейронной сети. Она может быть высокой в случае, если модели дали мало данных для обучения. Сетям, чтобы обучиться и при этом не переобучиться, нужно много данных. Чем больше выборка, тем она более репрезентативна. А если модели показать мало данных, то у нее будет высокая степень неопределенности при предсказаниях. И по мере увеличения количества данных эта степень будет уменьшаться. Такая неопределенность называется эпистемическая. Второй тип неопределенности называется алеаторная, или алеаторическая, ее источником является какой-либо шум в данных. То есть когда, например, источником данных являются сенсоры, с которых снимали данные, и у них существует ошибка калибровки. Соответственно, это вносит шум в показания. Или, допустим, классы, которые нужно предсказать, сильно пересекаются между собой, нечеткое разделение. Все это тоже вносит алеаторную неопределенность. Обычно данные для решения задач машинного обучения размечают люди. Те же снимки МРТ с опухолями — их размечают врачи. Но людям присущ человеческий фактор и они порой ошибаются. А ошибки в разметке тоже несут с собой алеаторную неопределенность. Чтобы выводить и ту, и другую неопределенность, применяют вариационный вывод в сетях. И для вывода, например, эпистемической неопределенности были не так давно придуманы методы, которые позволяют делать очень просто и относительно быстро. Они основаны на технике dropout, направленной против переобучения нейросети. ― Как это работает? ― Сама по себе техника dropout состоит в случайном отключении нейронов сети во время обучения для предотвращения их ко-адаптации. Давайте кроме того, чтобы использовать dropout во время тренировки, будем применять его еще и на этапе предсказания моделью. Мы будем каждый раз отключать случайные нейроны и получать немного другую модель. Допустим, мы сделаем это двадцать раз. Получится ансамбль моделей. Затем на его основе выведем усредненные предсказания и измерим эпистемическую неопределенность. Она измеряется для задачи классификации, на основе метрики взаимной информации — mutual information. Соответственно, там, где mutual information наиболее высокая, те области изображения специалистам лучше изучить вручную. Этот метод, с помощью которого сэмплируют модель, а потом усредняют предсказания, называется Monte Carlo Dropout. Наряду с dropout, существует еще метод dropfilter, который отключает не нейроны, а целые сверточные фильтры в сверточных нейросетях. Мы думали, что никто, кроме нас, еще не додумался использовать его в манере Монте-Карло для измерения эпистемической неопределенности. Весну 2020 года мы посвятили экспериментам с Monte Carlo DropFilter, применяли его для нашей задачи распознавания опухолей мозга. И получили хорошие результаты — точность выросла на 3%, что значительно для нашей задачи, так как люди в ней борются за каждые полпроцента. Initial image — изначальные изображения МРТ. Tumor Mask — маска опухоли, которую нейронная сеть должна научиться как можно точнее предсказывать. Whole tumor predicted — усредненные предсказания нейронной сети с помощью разработанного Натальей метода. Tumor uncertainty predicted — неуверенность сети. Изображение предоставлено Натальей Ханжиной. ― Расскажите подробнее про вашу работу. Какой была реакция на исследование? ― Год назад мы послали нашу работу на главную конференцию в области обработки медицинских изображений и искусственного интеллекта ― MICCAI (The Medical Image Computing and Computer Assisted Intervention Society). Но в публикации нам отказали, поскольку примерно в то же время другие исследователи придумали тот же метод. А мы о них не знали — наши исследования вышли с разницей в несколько месяцев. Поэтому в этом году мы решили переработать статью и написать не о новом методе, а о его применении на медицинских данных. Мы послали статью на другую конференцию — UAI (это главная конференция по неопределенности в искусственном интеллекте, которая до этого года имела ранг A*) и нашу работу приняли на воркшоп по прикладному применению байесовского моделирования. И в тот момент, когда я выступала на ней, мне пришло письмо с конференции МICCAI. На этот раз статью туда приняли, но для этого нам пришлось придумать совершенно новый метод оценки неопределенности. ― Что именно поменялось в методе исследования? ― За год мы провели эксперименты с разными методами, подобными dropout, но которые еще не были применены для оценки неопределенности. И в один момент я предложила взять за основу архитектуру NASNet — это одна из самых точных архитектур в области обработки изображений и классификации от Google. Специально для этой сети была придумана техника ее регуляризации, подобная dropout — Scheduled DropPath. То есть вместо того чтобы отключать отдельные юниты, авторы предложили отключать целые пути в сверточных ячейках с увеличивающейся вероятностью дропа. Поскольку это довольно эффективная сеть, мы решили применить ее для задачи распознавания опухолей. А потом технику регуляризации Scheduled DropPath использовали в Монте-Карло манере для оценки неопределенности. Улучшение составило 0,8% — это здорово, но для людей со стороны покажется просто статистической случайностью и удачей. Поэтому мы пошли дальше. Дело в том, что у DropPath и dropout есть фиксированная вероятность дропа. Вместо того, чтобы фиксировать ее, мы стали искать наилучшую вероятность дропа, такую, чтобы она давала наибольшую точность распознавания. Можно, конечно, перебирать ее вручную — от 0 до 1 с определенным шагом, а можно искать с помощью оптимизации, так же, как обучаются нейронные сети. То есть сделать вероятности дропа обучаемыми. Этот метод, основанный на новом распределении, получил название Concrete dropout. Мы применили его для нашего исследования. И в итоге у нас получился новый метод Monte Carlo Concrete DropPath.

ЧИТАТЬ ТАКЖЕ:  Как создавать нейросети на python

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

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь