Новая модель автоматического распознавания видов

Дорогие друзья!

Пару дней назад iNaturalist презентовал новую модель распознавания видов. Она включает 38 000 видов, что аж на 13 000 больше, чем годом ранее. Оригинальный пост: https://www.inaturalist.org/blog/54236-new-computer-vision-model . Разумеется, захотелось понять, какие виды флоры России включены в их число.

Почему это важно для нашего сообщества? Прошлая модель (https://www.inaturalist.org/blog/31806-a-new-vision-model ) была основана на данных, которые мы успели загрузить на iNaturalist к 29 сентября 2019 г. К началу обсчёта новой модели число наблюдений по флоре России с того момента выросло в пять раз (с 205 тыс. до 1 млн наблюдений), а среднее число наблюдений одного вида флоры нашей страны - почти в четыре раза (с 35 до 129). В общем, это было период бурного роста нашего проекта по флоре России, что даёт свои плоды.


ОБЩАЯ ЧАСТЬ

Напомню, критерий простой: у вида должно быть более 100 наблюдений в базе, более половины должно быть верифицировано вручную. Этот критерий охватывает все находки со всего мира и должен был выполняться к моменту начала обсчёта. Прочитав релиз, условно за эту отсечку мы взяли 31 декабря 2020 г.

Официально список видов, включенных в модели, iNaturalist не публикует, поэтому пришлось творчески импровизировать (@kildor, снова спасибо за утилиты!), чтобы эти данные достать. Немного покопавшись с видовыми выгрузками и, сопоставив все виды флоры мира, снятые к тому моменту на iNaturalist (111 182 вида), с тем, что снято в России, получил следующее.

Итак, сейчас у нас 7407 видов, включенных в проект "Флора России" (на табло проекта чуть больше за счёт "замороженных" наблюдений сложных групп на уровне родов и подвидов/разновидностей). Прибавка компенсируется чисткой данных, рубеж в 7500 пока считаем непреодолимым.

Из них 2680 видов (36%) уже сейчас включены в модель и узнаются ИИ, поскольку по ним к концу 2020 г. было больше ста наблюдений. Это число примерное, поскольку точно не ясно, когда был выгружен датасет для модели. Ручная проверка показала, что некоторые виды с числом наблюдений от 100 до 102 на 31.12.2020 в модель всё же не попали. Впрочем, таких видов не больше десяти (например, Sambucus kamtschatica, Linum lanuginosum и проч.).

Казалось бы: треть охвата - это очень мало. Работать и работать. Но!

Эти виды покрывают (внимание) 94,5% находок. Иными словами, только 1 из 20 наблюдений проекта "Флора России" действительно находится за гранью понимания ИИ. Так что при правильной съемке средними гаджетами результат обещает быть о-о-очень неплохим. Кроме того, система ловко берет в расчет географию (аппроксимация квадрата 3 на 3 градуса) и фенологию (учёт встреч в трехмесячном окне).

Напомню, что для обсчета новых моделей iNaturalist обещает отныне тратить 2,5-3 месяца и релизить их дважды в год. Ещё 252 вида флоры России УЖЕ прошли квалификационный норматив и будут включены в следующую модель. Десятки видов на подходе.


РЕГИОНАЛЬНАЯ ЧАСТЬ

Вот тут-то скрывается самая интересная штука! Аж дух захватывает. Я взял списки видов и статистику по наблюдениям по 12 региональным проектам, охватывающим всю Россию - от Крыма до Камчатки. Это пространственная выборка, и она охватывает регионы, по которым у нас зафиксировано много видов (три крымско-кавказских региона, три европейско-уральских, шесть из Сибири и Дальнего Востока). Вот их список:

Алтайский край
Брянская область
Дагестан
Иркутская область
Камчатка
Краснодарский край
Красноярский край
Крым
Москва
Приморский край
Республика Алтай
Свердловская область

Взяв уже выявленные участниками виды за 100%, мы посмотрели долю видов (в %), которые iNaturalist сейчас знает и включает в модель ИИ:

Брянская область 92
Москва 90
Свердловская область 82
Алтайский край 76
Иркутская область 68
Краснодарский край 68
Крым 66
Камчатка 64
Красноярский край 62
Республика Алтай 57
Дагестан 50
Приморский край 46

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

Москва 99,7
Брянская область 99,3
Свердловская область 97,4
Алтайский край 92,9
Иркутская область 89
Краснодарский край 83,7
Крым 83,4
Камчатка 82,4
Республика Алтай 76,6
Красноярский край 75,5
Дагестан 61,1
Приморский край 52,7

В Средней России потенциальная доля узнаваемых системой наблюдений заметно превышает 99%, на обширных равнинных территориях европейской части, Западной и Центральной Сибири (считайте, что до Байкала) достигает 89-90%. В Крыму и Краснодарском крае этот показатель превзошёл 83%, примерно тот же показатель на Камчатке.

Республика Алтай и Красноярский край (большинство фотографий у нас с севера края) - 3 из 4 наблюдений могут быть распознаны автоматически. Как и в случае с видами, самые (пока) малопонятные для ИИ флоры - Дагестан и Приморский край, однако прогресс очевиден.


ТАКСОНОМИЧЕСКИЙ ОХВАТ

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

злаки (Poaceae) - 159 видов
крестоцветные (Brassicaceae) - 108 видов
зонтичные (Apiaceae) - 78 видов
осоки (Carex) - 59 видов
орхидные (Orchidaceae) - 59 видов
гречишные (Polygonaceae) - 48 видов
амарантовые/маревые (Amaranthaceae) - 37 видов
вероники (Veronica) - 31 вид
ивы (Salix) - 29 видов
фиалки (Viola) - 27 видов
молочаи (Euphorbia) - 26 видов
лютики (Ranunculus) - 25 видов
клеверы (Trifolium) - 22 вида
герани (Geranium) - 22 вида
лапчатки (Potentilla) - 21 вид


ДОСТОВЕРНОСТЬ ОПРЕДЕЛЕНИЯ

Процитирую интервью Пьетро Перроны, одного из идеологов распознавания объектов по фото ( https://hightech.fm/2019/07/10/perona-caltech ): "[Машина] должна начинать с сомнения — на старте вероятность того, что кто-то говорит правду, около 70%. А потом она перерабатывает свое решение о правдивости заявления вверх и вниз — и очень осторожна насчет этого <...> Это основано на байесовской теории. Вы начинаете с априорной вероятности. У вас должно быть какое-то представление о мире. Например, вы просыпаетесь утром и думаете, пойдет ли дождь? Вы знаете, что в Москве дождь идет, к примеру, в 1/3 от всего времени, так что это ваша априорная вероятность. Потом вы выглядываете в окно — там немного туч, так что вероятность уже не 33, а 45%. Потом вы смотрите прогноз погоды, и там сказано, что будет дождь, ваша вероятность повышается до 80%. Так вероятность все время обновляется. Наша априорная вероятность происходит из среднего числа правильных определений, которые люди вносят в систему".

Безусловно, не каждая фотография вида, включенного в модель автоматического распознавания, с одинаковой надежностью может быть определена. Фотографии разные по качеству, фону, представленным органам, фенофазам. Точность новой модели пока неизвестна, однако у нас есть данные по предыдущим моделям, которые были раскрыты Кен-ичи Уеда в его недавней презентации на TDWG (https://www.youtube.com/watch?v=xfbabznYFV0).

Так, Inaturalist как правило в качестве топ-предложения предлагает родительский таксон - например, род или семейство. Правильность определения родительского таксона в этом случае составляет 93-95%. Ещё в декабре 2017 г. по видам раскладка была (в среднем) такой:
первый предложенный вид правильный - 64%
первый или второй предложенный вид правильный - 71%
правильный вид входит в пятерку - 78%

Однако уже в модели 2019 года топ-предложение по видам у растений оказывалось верным более, чем в 80% случаев (для видов, которые включены в модель). Фактически именно это показатель точности модели. Осторожно экстраполируя эти данные на очередные модели, можно предположить, что точность автоматических предположений будет и дальше подрастать.

Важно и то, что эмпирически установлено, что наилучшая точность автоматического определения (82%) в модели 2019 г. отмечена у видов, по которым система для обучения использовала от 800 до 900 отдельных фотографий. При использовании от 100 до 200 фотографий точность составляла только 65%. При использовании свыше 900 изображений точность также немного снижалась.

Заметную прибавку в точности даёт дополнительное использование фильтра "встречен поблизости" (seen nearby): оно даёт дополнительно до 10% к точности определения на видовом уровне. Чем больше данных, тем лучше этот фильтр срабатывает.


КАК МОЖНО ПОМОЧЬ?

За последние полгода еще 252 вида флоры России преодолели квалификационные нормативы для включения в модель автоматического распознавания видов по картинкам. Это происходит благодаря взаимодействию сообщества наблюдателей и сообщества экспертов проекта "Флора России". В общей сложности, в следующую модель будет включено около 3000 видов флоры нашей страны, охватывающих 97-98% наблюдений.

Система год от года будет всё лучше понимать наши фотографии. Чем больше видов будет включено в систему распознавания образов, тем точнее будет автоматическое определение. Во вкладке "Нужны данные" приложенного технического файла (таблицы) в столбике "не хватает" указано, сколько наблюдений нужно системе для включения вида в модель.

Например, для Cardamine trifida (Сердечник трёхнадрезанный) не хватает всего двух наблюдений, для Clinopodium caucasicum (Пахучка кавказская) и Cypripedium yatabeanum (Венерин башмачок Ятабе) - только одного, для Phlox sibirica (Флокс сибирский) и Medicago platycarpa (Люцерна плоскоплодная) - восьми.

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


ТЕХНИЧЕСКИЕ ДАННЫЕ В ТАБЛИЦЕ

Ссылка на таблицу для самостоятельного анализа: https://vk.com/doc10828577_603680502

Вкладка "Флора России Jul 2021" - все виды нашего проекта. Столбик G - включен в текущую модель ИИ (2680 видов), столбик J - будет уже точно включен в следующую (плюс 252 вида).

Вкладка "Нет в модели (ФР) 4727 . 2680" - виды, которых пока нет в модели.

Вкладка "Нужны данные" - обратите на нее внимание. Самый важный столбик - зелёный (нехватка наблюдений до норматива).

Вкладка "ALL" и проч. - выгрузки по всем видам флоры мира.

Три вкладки в конце ("Список регионов", "виды", "статистика") - региональная статистика по 12 регионам России.


PS. Ниже приведен список топ-20 видов флоры России, которые пока не включены в модель (по числу находок), но нормативы для следующей модели уже выполнены.

Geranium platyanthum (Герань плоскоцветковая) - 158 набл.
Corydalis paczoskii (Хохлатка Пачоского) - 147 набл.
Salix schwerinii (Ива Шверина) - 145 набл.
Potentilla stolonifera (Лапчатка побегоносная) - 127 набл.
Symphytum tauricum (Окопник крымский) - 125 набл.
Matthiola odoratissima (Левкой душистый) - 125 набл.
Scorzonera radiata (Козелец лучистый) - 123 набл.
Geranium krylovii (Герань Крылова) - 123 набл.
Saxifraga irrigua (Камнеломка орошённая) - 117 набл.
Himantoglossum comperianum (Комперия Компера) - 117 набл.
Trifolium ambiguum (Клевер сомнительный) - 115 набл.
Viola dissecta (Фиалка рассечённая) - 115 набл.
Ranunculus propinquus (Лютик близкий) - 115 набл.
Anemonoides reflexa (Ветреничка отогнутая) - 113 набл.
Euphorbia jenisseiensis (Молочай енисейский) - 112 набл.
Lathyrus rotundifolius (Чина круглолистная) - 111 набл.
Plantago cornuti (Подорожник Корнута) - 111 набл.
Colchicum umbrosum (Безвременник теневой) - 110 набл.
Astragalus arnacantha (Астраканта колючковидная) - 110 набл.
Astragalus suffruticosus (Астрагал полукустарниковый) - 109 набл.

Posted by apseregin apseregin, July 16, 2021 04:25

Comments

@apseregin - Can you explain a bit more about how you got the list of species that are within the computer vision model? I would love to reproduce this research for other groups. Thank you!

Posted by zygy 2 months ago (Flag)

Hi @zygy! You should make a project to include certain group with all RG and needs ID records made before 31 Dec 2020. After that, download the list of species using https://kildor.name/inat/species util by @kildor. This list in csv will include number of records per species. All 100+ species are most likely covered by the model (in my case, I manually checked the species with 100 to 102 observations). To compare these global lists with the regional lists, just download smaller project's lists using the same util. I made further comparison using simple Excel functions, but R or SQL are also applicable.

Posted by apseregin 2 months ago (Flag)

@apseregin - Спасибо!

Posted by zygy 2 months ago (Flag)

т.е., когда я загружаю наблюдение, лучше подписывать его вручную? просто я обычно выбираю вариант из предложенных, потому что это быстрее получается, чем печатать пальчиками на телефоне. или, если inat предлагает мне правильный вариант, то это значит, что для этого вида.. ну.. он уже распознается и для него не собираются уже данные.. и не имеет значения, введу я название пальчиками или выберу из предложенных нейросетью?
вот, например, эти.. вы писали.. 99,7% наблюдений для Москвы, если не ошибаюсь, которые распознаются. если моё наблюдение к ним относится, имеет ли значение, каким способом я его буду подписывать?
надеюсь, меня понятно вообще 🙈

Posted by nadya_n 2 months ago (Flag)

@nadya_n не имеет значения как проставите.

Posted by yurii_basov 2 months ago (Flag)

Я в этом году пытался довести до отметки 100 наблюдений следующие виды (в скобках текущее число наблюдений):
Asperula taurina - 131
Hylotelephium caucasicum - 115
Trifolium ambiguum - 149 Yes!
Valeriana alliariifolia - 105
Veronica austriaca jacquinii - 141
Veronica peduncularis - 113
Будут ли они в списке кандидатов на внесение в опознаваемые виды?
Ещё ряд видов не успел дотянуть до сотни:
Marrubium leonuroides - 20
Rhamnus pallasii - 55
Scutellaria caucasica - 87
Silene saxatilis - 35
Veronica caucasica - 87

Posted by eduard_garin 2 months ago (Flag)

@eduard_garin, спасибо за отклик. В модель попало всё, что было загружено на iNaturalist до 31 декабря 2020 г., и достигло отметки в 100 наблюдений. Более поздние добавки отправляются в следующую модель при выполнении тех же критериев. В какой момент будет сделана выгрузка - неизвестно. Предполагаю, что в ближайшие недели.

По конкретным видам можно посмотреть таблицу (https://vk.com/doc10828577_603680502), а список 250 видов флоры России, по которым есть текущая нехватка наблюдений тут: https://www.inaturalist.org/projects/kopilka-flory-rossii-uchim-mashinu?tab=species

Отдельно скажу про подвиды: пока они не выделяются в моделях автоматического распознавания. Т.е. наблюдения Veronica austriaca subsp. jacquinii используются для обучения подсказкам Veronica austriaca s.l. Впрочем, с постепенным накоплением данных ситуация может меняться.

Posted by apseregin 2 months ago (Flag)

@apseregin Кстати, Алексей Петрович, по конкретным видам наличие или отсутствие в модели можно проверить просто по заходу на страницу таксона: Вкладка подробно, справа внизу под окошком "Подробнее".

Posted by yurii_basov 2 months ago (Flag)

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

Posted by apseregin 2 months ago (Flag)

У меня есть фото (невыгруженный архив) или я могу сейчас сделать фото около полутора десятков видов из 250-видового списка. Про головчатку Литвинова уже спрашивали в местном сообществе - как её писать; у меня, кажется, есть её фото из всех пензенских точек. Иду загружать.

Posted by a-travva 2 months ago (Flag)

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

не имеет значения как проставите.

не понимаю, Алексей пишет, что разница есть.

Posted by nadya_n 2 months ago (Flag)

Ждём добавления Betula humilis в список опознаваемых?

Posted by eduard_garin 2 months ago (Flag)

Add a Comment

Sign In or Sign Up to add comments