Компания OneSoil разрабатывает бесплатные приложения для фермеров, которыми пользуются более чем в 180 странах мира. В своей работе мы используем большие данные и машинное обучение, и отдельный квест для нас — найти ground truth данные. Рассказываем, как мы решаем эту нетривиальную задачу.
Зачем OneSoil машинное обучение? Чтобы по спутниковым снимкам определять границы полей, сельскохозяйственные культуры, феностадии, урожайность, даты сева и даты уборки. Всё это или уже есть в приложениях OneSoil, или появится там в скором будущем.
Разберёмся на примере определения границ полей по спутниковым снимкам. Для фермера обвести границы своего поля — это самый первый шаг в процессе цифровизации своего хозяйства. Это краеугольный камень, без которого никакая другая работа в приложениях невозможна. И задача не такая простая: раньше фермеры решали её за счёт того, что объезжали на квадроциклах свои поля с GPS-трекерами, мучались с ортофотопланами, короче, это было дорого и долго. OneSoil же научился распознавать границы полей по спутниковым снимкам: открываешь приложение, нажимаешь кнопку «добавить поля», выбираешь на карте с распознанным полями своё — и всё.
Как мы это сделали? Сперва у нас были данные лишь от нескольких хозяйств в Беларуси и Прибалтике, по которым алгоритмы машинного обучения учились предсказывать границы полей. Это работало так: для каждого настоящего поля (границы которого мы знали благодаря хозяйствам) мы считали площадь совпадения с границами, которые предсказали алгоритмы. Если алгоритм обвёл лишние участки — он за это получал штраф. Так и учился. Такой показатель называется intersection over union, он может принимать значения от 0 до 1, где 1 — идеальное совпадение. У нас этот показатель варьируется от региона к региону, но в среднем составляет 0,85–0,88.
Потом мы начали показывать нейросети миллионы изображений сельскохозяйственных полей для того, чтобы она научилась определять, где поле, а где, нет. Алгоритм долго учится, мы смотрим на результаты и много раз улучшаем его, пока точность определения границ полей для конкретного региона не станет хорошей. Как мы понимаем, что точность улучшилась? Опять же сравниваем наши расчёты с реальными данными по полям. Сейчас стран, в которых мы хорошо определяем границы полей, 57.
Когда мы уверенно определяем поля, скажем, в Украине, это не значит, что всё будет работать так же где-нибудь в Бразилии — ведь там свои поля и свои особенности сельского хозяйства. Поэтому нам снова нужны реальные данные, чтобы уточнять и улучшать наш алгоритм.
Без данных по реальным полям нам никуда. А найти их это непростая задача, приходится подключать самые разные ресурсы. Как мы это делаем? Рассказываем дальше.
Мы получаем данные от пользователей
Пользователи OneSoil оставляют в наших приложениях данные по культурам, которые растут на их полях, датам сева и уборки, средней урожайности и фенофазам. Не так давно мы впервые задействовали эти данные при обучении алгоритмов машинного обучения — R&D команда проверяла точность предсказаний даты сева в одном регионе.
На всякий случай, сделаем одно банальное уточнение. Все данные пользователей поступают в наши алгоритмы в общем виде. Нам (точнее, нашим нейросетям), совершенно не важно, кому принадлежат поля. Алгоритму нужно знать, что растёт на полях в регионе в принципе. Иными словами, не важно, что поле кукурузы принадлежит Марье Ивановне из деревни Иваново под Черниговом. Важно, сколько полей кукурузы в Черниговской области есть в целом. Нас не интересуют детали, нас интересует большая картина. Поэтому данные пользователей в приложениях OneSoil находятся в безопасности, и при этом ещё помогают нейросетям становиться умнее.
133 млн га | 2,8 млн полей — данные, которые пользователи занесли в платформу OneSoil. Ноябрь 2020 г.
Мы общаемся
Наша R&D команда постоянно знакомится с институтами и отдельными исследователями, которые работают в том же направлении, что и мы. Часто они находят нас сами.
После выхода интерактивной карты OneSoil Map в 2018 году нам написал Гвидо Лемуан (Guido Lemoine), руководитель одного из подразделений в исследовательском институте Joint Research Center (JRC). А в прошлом году на конференции Европейского космического агентства (ESA) наша специалистка по Data Science Кристина Бутько познакомилась с ним лично. «Они поделились списком открытых источников данных, которыми пользуются сами и которые не так-то просто найти, — рассказывает Кристина. — Я очень жду их уникальный датасет по фенофазам растений, которые они собирали на протяжении двух лет полевых исследований». Наша R&D команда активно решает задачу предсказания стадий роста культур по спутниковым снимкам, и датасет от JRC поможет приблизиться к успеху.
Мы обмениваемся
Наш специалист по точному земледелию и сооснователь OneSoil Всеволод Генин редко бывает в офисе — большую часть года он проводит в полях. Сева разговаривает с фермерами, анализирует их поля, они вместе проводят эксперименты по дифференцированному посеву и внесению удобрений и пестицидов. Короче, Сева очень много общается с фермерами, и нередко они договариваются о сотрудничестве.
В прошлом году несколько десятков украинских и российских компаний в обмен на анализ своих данных предоставили нам информацию за 4 года по полям общей площадью 7 миллионов гектаров. В эту базу данных входит информация по культурам, датам сева, датам уборки и средней урожайности — настоящий подарок для нашей команды R&D. Во многом благодаря анализу этих данных мы можем определять дату сева на полях Украины с точностью в 2–3 дня и помогать лучше планировать полевые работы. Дальше — больше. «В 2020 году мы проведём эксперименты по дифференцированному посеву на полях общей площадью более 100 тысяч гектаров» — рассказывает Сева.
Мы спрашиваем
В 2018 году наш CEO Слава Мазай написал письмо Канаде. Нам не хватало данных по полям и культурам в этой стране для того, чтобы проверить точность расчётов алгоритмов машинного обучения. Поэтому Слава написал в одно из министерств Канады письмо, которое так и начиналось: «Уважаемая Канада». Серьёзно.
Чудо в том, что они ответили. Год спустя нам прислали ответное письмо. Так мы получили данные по 50 тысячам полей в трёх провинциях, которые помогли нам точнее распознавать культуры в Канаде и сделать платформу OneSoil ещё более удобной для фермеров региона.
392 млн га | 126 млн полей — объём ground truth данных. Ноябрь 2020 г.
Когда у нас есть много данных из открытых источников и от разных партнёров, мы улучшаем наши алгоритмы, которые уже используем в приложениях OneSoil (или будем в ближайшем будущем). Когда у нас много данных от пользователей, мы снова-таки улучшаем точность наших расчётов. Вот так данные и технологии работают друг на друга.
john_samilin
а что такое ground truth?
ramzes2
В данном случае ground truth — это реальные данные о полях (например вид культуры и дата сева) от фермерских хозяйств.
john_samilin
а почему так говорить лучше, чем «данные с полей»?
bsoo Автор
Ground truth — это общий термин, а «данные с полей» — это уже наш конкретный кейс. Ground truth в сельском хозяйстве)
john_samilin
так надо на английском было вообще все писать, чего на нашем конкретном кейсе-то?
bsoo Автор
Зачем всё, если можно только один термин, который чаще встречается именно на английском?
john_samilin
потому что смотрится это просто нелепо
bsoo Автор
Английские слова в айти?) Ну кому как