Самиа С. Азим1, Варун Аггравал2 и Дхармендра Сарсават3

1Отдел компьютерных наук, Институт делового администрирования Карачи

2Школа электротехники и вычислительной техники Элмора

3Сельскохозяйственная и биологическая инженерия, Университет Пердью

Аннотация. По данным опроса розничных продавцов сельскохозяйственной продукции, проведенного в 2019 году, внедрение передовых технологий на фермах США растет. Хотя чат-боты, интеллектуальная диалоговая компьютерная система, становятся все более популярными во многих отраслях для оказания виртуальной помощи клиентам, в сельском хозяйстве существуют ограниченные варианты использования. Это исследование направлено на внедрение чат-бота на основе искусственного интеллекта (AI Chatbot), который способствует разговору с фермером в почти человеческом контексте и преобразует разговор в практические действия на ферме. Чат-бот с искусственным интеллектом был обучен с использованием алгоритмов машинного обучения (ML) на пользовательском наборе данных, который имитирует человеческий разговор с использованием инструментов Natural Language Generation (NLG). Чат-бот с искусственным интеллектом помогал получать данные о погоде в режиме реального времени для текущего местоположения фермера, оцифровывал бумажные квитанции/счета, хранящиеся на смартфонах или ноутбуках/настольных компьютерах, с помощью оптического распознавания символов (OCR) и отправлял напоминания о ежедневном расписании на основе прошлых оперативных данных. Чат-бот с искусственным интеллектом продемонстрировал потенциал для повышения эффективности работы, выполняемой фермерами на ежедневной основе, и помог оцифровать бухгалтерские книги и ведение документации. Это исследование — шаг к реализации всего потенциала передовых технологий искусственного интеллекта в сельском хозяйстве.

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

Введение

Сельское хозяйство жизненно важно для экономики страны, поскольку оно кормит людей и предоставляет множество возможностей для трудоустройства. С появлением новых сельскохозяйственных технологий, таких как беспилотные авиационные системы (БАС), беспилотные наземные транспортные средства (БНА) и различные почвенные и климатические датчики, исследователи смогли оптимизировать урожайность сельскохозяйственных культур и снизить риск заболеваний растений [1]. Однако эти технологии необходимо сделать более доступными для конечного пользователя (например, фермера). Виртуальный помощник или чат-бот могут помочь конечному пользователю. В частности, чат-бот на базе искусственного интеллекта может понимать естественный язык и предлагать действия для работы на ферме. Такой чат-бот будет использовать разговорный стиль, чтобы отвечать на запросы пользователей, помогать им управлять оборудованием и получать в режиме реального времени обновления о почве и погодных условиях. Кроме того, чат-бот уменьшит зависимость от технологических колл-центров и агентов, что сэкономит время и ресурсы [2].

II. Литературное исследование

В исследовательской литературе чат-боты с искусственным интеллектом для интеллектуального сельского хозяйства можно разделить на две категории: первая категория — интерфейс чат-ботов и использование данных, собранных с устройств с поддержкой Интернета вещей (IoT), для обучения моделей глубокого обучения (DL). Это может включать использование данных в реальном времени из беспроводных сенсорных сетей (WSN) и БПЛА. Вторая категория использует общедоступные наборы данных для обучения моделей глубокого обучения. Популярным общедоступным набором данных по сельскому хозяйству является набор данных, доступный на веб-сайте Kisan Call Center (KCC).

Agronomobot может беспроводным образом взаимодействовать с полевыми датчиками, передавая информацию туда и обратно по сети [3]. IBM Watson, созданный с использованием механизма обработки естественного языка (NLP) и машинного обучения (ML), может общаться с пользователем в разговорной манере, похожей на человеческую. При создании базы знаний области знаний чат-бота были разделены на две части: одна отвечала на технические вопросы, требующие получения данных с датчиков, например «Какой рН почвы?» и один отвечает на основные вопросы, такие как «Покажи мне меню параметров». Telegram Bot — это служба обмена сообщениями, которая создает текстовый человеко-машинный интерфейс, позволяющий пользователю общаться с ботом. Agronomobot позволяет фермерам легко получать точную информацию о почве, погоде, влажности и т. д. Однако он не может обеспечить обнаружение болезней или прогнозирование вредителей и многие другие сельскохозяйственные действия, которые так же важны для оптимизации урожая. Следующая статья устраняет один пробел в Agronomobot, предоставляя автоматическое прогнозирование заболеваний на рисовых полях.

В статье представлена ​​система, использующая искусственный интеллект и алгоритмы обнаружения изображений для обнаружения болезней растений [4]. Приложение работает таким образом, что пользователь делает снимок рисового поля и отправляет его чат-боту в режиме онлайн (приложение для обмена сообщениями); чат-бот запускает модель глубокого обучения на изображении. Он выводит другую картинку с выделенными больными участками растения. Эта система диагностики выгодна, поскольку она устраняет необходимость в устаревших инструментах и ​​трудоемких методах прогнозирования заболеваний сельскохозяйственных культур фермерами. Модель глубокого обучения, используемая для обнаружения изображений, была YOLOv3; однако у него был показатель истинного положительного результата 78,86%, что означает, что чат-бот иногда выдавал неточные результаты. Чтобы решить эту проблему, специалисты-люди были доступны в чате приложения и вмешивались, чтобы исправить результаты. Это иногда делает приложение неэффективным, поскольку не устраняет необходимость в человеке-агенте, что лишает возможности виртуального помощника ИИ.

Круши, фермерский чат-бот, прошел обучение на обширном наборе данных от KCC и обучен RASA X, что дало точность ответов на сельскохозяйственные запросы 96,1% [5]. Основная цель этого приложения заключалась в том, чтобы устранить необходимость в колл-центрах и агентах и ​​предоставить портативный инструмент, который мог бы ответить на любые вопросы фермера в течение нескольких секунд. Фермеры могут получать ответы экспертов и информацию о погоде в режиме реального времени, общаясь с чат-ботом в WhatsApp, службе обмена сообщениями.

В отличие от предыдущих чат-ботов, построенных на мобильных сервисах обмена сообщениями, в следующей статье было предложено приложение для веб-чат-бота [6]. Он использует библиотеку Chatterbot, библиотеку Python, которую можно обучить конкретным вопросам пользователя. Преимущество веб-приложения в том, что оно не занимает много места и может быть запущено на любом устройстве с браузером.

В другой статье было предложено решение, которое управляет группой IoT-устройств из одного чат-бота [7]. Этот чат-бот чрезвычайно полезен для фермеров, практикующих «умное сельское хозяйство», где вся их сельскохозяйственная деятельность регулируется автоматизированными технологиями. Приложение развернуто в службе обмена сообщениями, и фермер может общаться со всеми своими IoT-устройствами через одного удобного чат-бота.

Основная часть чат-бота — это его движок ML и NLP. Многие модели использовались на протяжении многих лет, каждая из которых имеет свои преимущества и недостатки. Agribot использует рекуррентные нейронные сети (RNN), генеративную модель, требующую интенсивного обучения; однако он дает результаты с высокой точностью [8]. В другом документе использовались две модели обучения с учителем, а именно регрессия K-ближайших соседей (KNN) и множественная линейная регрессия (MLR) [9]. Не было явного победителя, поскольку каждая модель работала лучше всего для каждого типа данных. Чат-бот Jollity использует технологию RASA X, которая понимает вопросы пользователей и находит ответы с точностью до 90%, что делает его выдающимся диалоговым ботом [10].

Технология оптического распознавания символов (OCR) используется для оцифровки рукописных и печатных счетов-фактур, что помогает сократить потери материальных ресурсов. Оцифровка счетов и счетов ферм может помочь в управлении сельским хозяйством за счет оптимизации хранения данных. Предлагаемая система [11] работает следующим образом: пользователь вводит отсканированный PDF-файл счета, и программа преобразует его в четкое изображение с высоким разрешением с помощью библиотеки Python под названием Wand. Затем предварительно обработанное изображение отправляется в механизм распознавания текста Tesseract, где из него извлекается текст и создается текстовый документ. Вся важная информация, такая как номер счета-фактуры, счет-фактура и т. д., классифицируется с помощью сопоставления с образцом регулярных выражений, указанных для каждого типа данных. Затем вся информация сохраняется в базе данных.

III. Методология

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

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

• Отображение графика фермера на конкретный день.

• Оцифровка сельскохозяйственных счетов и счетов-фактур для более эффективного управления бухгалтерской книгой.

Чат-бот — это текстовый диалоговый агент, использующий генеративные модели, что означает, что он использует глубокое обучение для получения ответов на основе предыдущих взаимодействий, которые он имел с пользователем. Агенты на основе генерации намного умнее, чем агенты на основе поиска, поскольку они дают более правильные ответы, и их можно использовать для имитации человеческого взаимодействия в течение длительного периода времени [12].

А. Раса

Чат-бот был построен на Rasa, платформе машинного обучения с открытым исходным кодом на python, используемой для создания диалоговых чат-ботов с искусственным интеллектом [13]. Расу можно разделить на две части: Раса НЛУ и Раса Ядро.

Rasa NLU — это модуль понимания естественного языка, который определяет, как понимается и обрабатывается пользовательский ввод. Он выполняет классификацию намерений и извлечение сущностей с использованием контролируемых алгоритмов обучения. Например, предположим, что пользователь вводит «какое сегодня число». В этом случае Rasa NLU классифицирует намерение пользователя как запрос даты, а извлеченный объект — это дата, для которой ключевое слово сегодня. Rasa NLU — это общая структура, основанная на конвейере. Мы обучили NLU на базе знаний, созданной с нуля, где необходимые намерения были сохранены в файле nlu.yml.

Rasa Core — это модуль управления диалогами, который отслеживает историю и состояние разговоров, сохраняет важные пользовательские данные в памяти бота, называемой «слоты», и соответствующим образом генерирует выходные данные. Rasa NLU предоставляет Rasa Core структурированную информацию в виде намерений и сущностей, а затем Rasa Core выполняет действия, которые могут быть высказываниями, такими как ответы на оператор, или это может быть вызов API. Следовательно, он также отвечает за генерацию естественного языка (NLG).

Б. Данные обучения NLU

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

С. Данные обучения управлению диалогом

Истории — это форма обучающих данных, которые используются для обучения модуля управления диалогами rasa core. Они определяют действия, которые бот должен выполнять на основе пользовательского ввода. Они позволяют чат-боту научиться формировать поток разговора. Мы можем увидеть некоторые примеры историй на следующих рисунках:

Домен определяет намерение, сущности, слоты и действия, о которых должен знать бот. Действия могут быть пользовательскими действиями или простыми текстовыми ответами, называемыми высказываниями. На рисунке показан фрагмент из файла domain.yml:

Данные для модуля управления диалогами были обучены с использованием политик по умолчанию, доступных в версии Rasa 3.x.

Д. Получение данных о погоде в реальном времени

Для реализации этой функции чат-бота использовался Weather API от OpenWeatherMap. Для получения местоположения фермера использовалась библиотека Python Geocoder.

Когда пользователь запрашивает информацию о погоде, NLU классифицирует намерение как запрос о погоде и отправляет его в Rasa Core, который выполняет пользовательское действие. Настраиваемое действие для заданного намерения в файле action.py делает следующее:

• Местоположение фермера было получено с использованием IP-адреса устройства, на котором запущена программа. Название города было извлечено из местоположения.

• Название города было передано в API погоды, и был сделан вызов API.

• Ответ API представлял собой файл JSON с многочисленными полями погоды; были извлечены только необходимые поля.

• Rasa Core выводит пользователю форматированную строку, содержащую информацию о погоде.

Э. Оцифровка счетов и счетов-фактур

Оптическое распознавание символов (OCR) — это технология, которая преобразует рукописные или печатные документы и изображения в цифровую копию [14].

Nanonets OCR — это интеллектуальный инструмент OCR, который позволяет нам считывать текст с изображений счетов-фактур и сохранять его в виде структурированных таблиц в файле CSV. Для реализации этой функции чат-бота мы использовали Nanonets API[15]. Он использовался с оболочкой для упрощения реализации[16].

Когда пользователь просит чат-бота оцифровать введенный им счет или счет, Rasa NLU классифицирует намерение как запрос счета, а затем Rasa Core выполняет пользовательское действие. Предлагаемый алгоритм для этой функции выглядит следующим образом:

• При вызове настраиваемого действия выполняется вызов API Nanonets API.

• Затем механизм OCR выполняет предварительную обработку, сегментацию и извлечение признаков.

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

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

F. Отображение списка дел фермера

Когда пользователь просит чат-бота показать задачи на определенный день, Rasa NLU сначала классифицирует запрос как запрос дня, а затем Rasa Core запускает пользовательское действие, которое извлекает задачи, читая текстовые файлы дня. Бот может показывать задачи на текущий день, предыдущий день и следующий день. Для реализации этой функции используется библиотека python datetime.

Текстовые файлы, содержащие задачи To-Do, были созданы вручную, предполагая, что чат-бот будет подключен к системе управления запасами. Например, если у фермера заканчивается топливо для трактора, то будет создана задача «Купить больше топлива для трактора» и сохранена в текстовом файле сегодняшних задач.

IV. Результаты и обсуждение

Результатом стал умный разговорный помощник, который мог общаться с пользователем почти в человеческом контексте.

Он также хорошо справился со своими тремя основными задачами. На следующих рисунках показаны выходы.

Чтобы проверить точность модели, Раса разделяет данные на 80 % обучения и 20 % тестов. Метрика достоверности использовалась, чтобы увидеть, насколько хорошо она выполняет классификацию по намерениям. Это дало достоверность 99% для следующих трех намерений:

V. Заключение

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

Для будущей работы можно реализовать пользовательский интерфейс (UI) для чат-бота, чтобы повысить интерактивность и сделать продукт доступным для обычных пользователей. Речевая связь с помощью функций преобразования текста в речь и речи в текст также может быть реализована, что повысит интерактивность и сделает ее более доступной. Взаимодействие с устройствами Интернета вещей (IoT), такими как беспилотные летательные аппараты (БПЛА), также является частью будущей работы. Наконец, с помощью этой технологии можно также разработать пилотный проект в сотрудничестве с фермерами/фермерскими группами.

Подтверждение

Я хотел бы поблагодарить моего преподавателя, доктора Дхармендру Сарасват, моих ГА, Варуна Аггарвала и Аниса Ахмеда, моих коллег по лаборатории, Кенту Хирасиму и Сарона Бхупати, сотрудников отдела инженерных исследований бакалавриата и программы летних студенческих исследовательских стипендий (SURF) и все SURF GA.

Рекомендации

[1] А. Шарма, А. Джайн, П. Гупта и В. Чоудари, «Приложения машинного обучения для точного земледелия: всесторонний обзор», IEEE Access, vol. 9. Институт инженеров по электротехнике и электронике, стр. 4843–4873, 2021. doi: 10.1109/ACCESS.2020.3048415.

[2] С. Гоундер, М. Патил, В. Рокаде и Н. Мор, Агробот: прогресс в сельском хозяйстве, позволяющий предоставлять услуги интеллектуальных ферм с использованием НЛП, 2021 г. [Онлайн]. Доступно: www.jetir.org

[3] Г. М. Мостако, Л. Б. Кампос и К. Э. Куньяска, AgronomoBot: чат-бот с интеллектуальным ответом, применяемый в сетях сельскохозяйственных датчиков, 2018 г. [Онлайн]. Доступно: https://www.researchgate.net/publication/327212062

[4] П. Темниранрат, К. Киратиратанапрук, А. Китвимонрат, В. Синтупиньо и С. Патарапувадол, «Система автоматического обнаружения болезней риса на основе изображений рисовых полей, обслуживаемых через чат-бот», Компьютеры и электроника в сельском хозяйстве. , том. 185, июнь 2021 г., doi: 10.1016/j.compag.2021.106156.

[5] М. Момая, А. Ханна, Дж. Садаварте и М. Санкхе, «Круши — фермерский чат-бот», 2021 г. doi: 10.1109/ICCICT50803.2021.9510040.

[6] В. Наяк, П. Р. Наяк Н., Сампурна, Айшвария и Н. Х. Совмья, «Агроэксперт — помощник фермера», Global Transitions Proceedings, vol. 2, нет. 2, стр. 506–512, ноябрь 2021 г., doi: 10.1016/j.gltp.2021.08.016.

[7] Э. Симеонаки, К. Арванитис, Д. Пиромалис и М. Папуцидакис, «Интеграция диалогового пользовательского интерфейса в управление IoT».

устройства, применяемые в интеллектуальном сельском хозяйстве: анализ конструкции системы чат-ботов», в Advanced in Intelligent Systems and Computing, 2020, vol. 1037. doi: 10.1007/978–3–030–29516-5_80.

[8] Б. Арора, Д. С. Чаудхари, М. Сатсанги, М. Ядав, Л. Сингх и П. С. Судхиш, «Agribot: движок нейронных сетей, генерирующих естественный язык, для сельскохозяйственных приложений», 2020 International Conference on Contemporary Computing and Applications, IC3A 2020, февраль 2020 г., стр. 28–33. doi: 10.1109/IC3A48958.2020.233263.

[9] Сотрудники IEEE, Конференция по интеллектуальным системам, 2017 г. (IntelliSys).

ИИЭР, 2017.

[10] К. Дипика, В. Тилекья, Дж. Мамата и Т. Субета, «Чат-бот Jollity — контекстный ИИ-помощник», Материалы 3-й Международной конференции по интеллектуальным системам и изобретательским технологиям, ICSSIT 2020, август 2020 г., стр. 1196–1200. doi: 10.1109/ICSSIT48917.2020.9214076.

[11] П. Кумар и С. Ревати, «Автоматизированный метод обработки счетов с использованием OCR», 2021 г. doi: 10.1007/978–981–15–8530-2_19.

[12] С. Хуссейн, О. Амери Сианаки и Н. Абабне, «Обзор методов классификации и проектирования диалоговых агентов/чат-ботов», Advanced in Intelligent Systems and Computing, 2019, vol. 927. doi: 10.1007/978–3–030–15035–8_93.

[13] Т. Боклиш, Дж. Фолкнер, Н. Павловски и А. Николь, Раса: понимание языка с открытым исходным кодом и управление диалогом, декабрь 2017 г., [онлайн]. Доступно: http://arxiv.org/abs/1712.05181\

[14] В. Н. Сай Ракеш Камисетти, Б. Сохан Чидвилас, С. Ревати, П. Джеянти, В. М. Ану и Л. Мэри Гладенс, «Оцифровка данных из счета-фактуры с использованием OCR», 2022. doi: 10.1109/ICCMC53470.2022.9754117.

[15] https://nanonets.com/.

[16] «https://github.com/karan-nanonets/ocr-nanonets».