Разработка нейросетевой модели для автоматизации сортировки мусора

Язык труда и переводы:
УДК:
504.064.47
Дата публикации:
19 июля 2021, 13:57
Категория:
Б4. Промышленная и экологическая безопасность
Авторы
Костромин Никита Сергеевич
МГТУ им. Н.Э. Баумана
Аннотация:
Рассмотрена перспективность использования нейронных сетей (искусственного интеллекта) для создания рационального автоматизированного инструмента обращения с отходами. Данная нейросеть была обучена на наборе данных TACO датасет (Data set). Приведена краткая теория нейронных сетей. Особое внимание уделяется необходимости разработки машин для сортировки мусора в целях сокращения и приостановления образования новых свалок и улучшения экологической безопасности не только России, но и всего мира. Степень важности изложенного материала актуальна для ученых тех стран, в которых процент переработанных отходов не достигает и 10 %.
Ключевые слова:
сортировка мусора, искусственный интеллект, нейросетевой классификатор отходов, предотвращение образования свалок, автоматизированный раздельный сбор
Основной текст труда

Ежегодно каждый житель России производит в среднем 480 кг отходов, т. е. всего на свалки нашей страны поступает более 70 млн т твердых бытовых отходов (ТБО) в год согласно данным Федеральной службы государственной статистики. Причем около 30 % объема мусорного ведра россиянина занимают пищевые отходы, еще около четверти — бумага и картон, 14 % — пластмассы, 7 % — стекло (рис. 1) [1].

Рис. 1. Процентный состав ТБО [1]

Но количество бытового мусора тоже растет: за двадцать лет производство ТБО увеличилось вдвое. В Росприроднадзоре говорят, что это связано с активным использованием упаковочных материалов из пластика и бумаги: пищевая пленка, полиэтиленовые пакеты, бумаги для запекания. Однако перерабатывается всего 5...7 % мусора, остальное захоранивается, после чего образуются свалки, что приводит к достаточно печальным последствиям.

  1. Свалки бытовых отходов служат источником пищи синантропным организмам (тараканам, мухам, мышам, крысам, клопам), которые являются переносчиками инфекции.
  2. Банки, бутылки и прочие емкости с остатками органики могут играть роль ловушек для диких зверей и насекомых, в которых они травмируются, погибают.
  3. Свалки являются серьезным источником загрязнения почвы, грунтовых вод и атмосферы вредными веществами.
  4. При возгорании мусора выделяются следующие вещества:
    • диоксин и фуран, которые вызывают нарушения:
      • иммунной системы;
      • гормональной системы;
    • бифeнил, который
      • подавляет иммунитет;
      • провоцирует развитие рака;
      • провоцирует поражений печени, почек, нервной системы, кожи (экземы, сыпи);
      • способствуют развитию врожденного уродства и детской патологии у плода (отставание в развитии, снижение иммунитета, поражение кроветворения).

Таким образом, в настоящей статье рассмотрена перспективность использования нейронных сетей (искусственного интеллекта) для решения глобальной экологической проблемы [2–3]: для создания рационального автоматизированного инструмента обращения с отходами, как способа уменьшения образования новых свалок и улучшения экологической безопасности не только России, но и всего мира. Поэтому основная задача исследования — разработать искусственный интеллект для определения типа отходов.

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

Рис. 2. Иерархия детектирования предметов

Детектирование предметов служит для определения наличия объекта на изображении или видео и поиска его положения в системе координат пикселей исходного изображения [5]. Расположение объекта в зависимости от выбора алгоритма детектирования обычно на практике определяется координатами прямоугольника, внутри которого заключен объект, либо координатами точек, наиболее характерных для объекта (например, пересечение диагоналей), либо непосредственно контуром этого объекта. Упрощенно детектирование состоит из двух этапов:

1) генерации гипотез;

2) проверки гипотез.

В данном случае под гипотезой понимается наличие какого-то объекта на изображении, для определения которого используют (рис. 3):

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

Рис. 3. Генерация гипотез:

а — исходное изображение [7]; б — вычитание фона из изображения [7]; в — сегментация (красный цвет) [7]; г — скользящее окно [6]

После каждая гипотеза проверяется на наличие определенного объекта (человека, собаки, дерева или иного распознаваемого предмета) с помощью одного из трех алгоритмов машинного обучения, например:

1) деревьев решений (ортогональных)

Пусть  X=(x_{1},x_{2},...,x_{n}) — вектор (набор) признаков объекта, y\in \{0,1\} — класс, причем 0 — фон, 1 — объект. Тогда ответ классификатора:

h_{i}(x_{i})={\begin{cases}1\quad sign(x_{i})<sign(\theta _{i})\\0\quad sign(x_{i})\geq sign(\theta _{i})\end{cases}},

где  \theta _{i} — порог.

2) адаптивного бустинга

Пусть задана обучающая выборка  (X_{1},y_{1}),(X_{2},y_{2}),...,(X_{n},y_{n}) . Веса для каждого объекта можно определить по формуле:

w_{i}={\frac {1}{m}},\forall m\in {\overline {1,m}}.

Необходимо также задать  T — количество базовых алгоритмов классификации.

Тогда для   t=1,2,...,T . Для каждого i-го признака тренируем слабый классификатор  f_{i} (он строится в ходе итеративного процесса), после чего вычисляется взвешенная ошибка классификации:

\varepsilon _{i}=\sum _{i=1}^{m}w_{i}\cdot |h_{i}(x_{i})-y_{i}|.

Далее выбирается f_{i}  с наименьшей ошибкой \varepsilon , веса обновляются:

w_{i}=w_{i}\cdot \beta _{i}^{1-e_{i}};

e_{i}={\begin{cases}0\quad h_{t}(x_{i})=y_{i}\\1\quad h_{t}(x_{i})\neq y_{i}\end{cases}};

\beta _{t}={\frac {\varepsilon }{1-\varepsilon }}.

И веса нормализуются. Тренируется сильный классификатор:

H(X)={\begin{cases}1\quad \sum _{t=1}^{T}\alpha _{t}\cdot h_{t}(x)\geq {\frac {1}{2}}\sum _{t=1}^{T}\alpha _{t}\\0\quad \sum _{t=1}^{T}\alpha _{t}\cdot h_{t}(x)\ngeqslant {\frac {1}{2}}\sum _{t=1}^{T}\alpha _{t}\end{cases}};

\alpha _{t}=ln(ln{\frac {1}{\beta _{t}}}).

3) каскадного классификатора

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

В рамках исследования использовался язык программирования Python. Для глубокого обучения выбрана современная библиотека глубокого обучения PyTorch. В качестве архитектуры модели была выбрана MobileNetV2. В качестве набора данных был использован TACO dataset [8], состоящий из более чем 1500 изображений с аннотациями для задач сегментации и детектирования объектов. Набор данных включает фотографии различного мусора, размеченные на 10 классов — can (алюминиевые банки),  plastic container (пластиковые контейнеры), bottle (пластиковые бутылки) и др. (рис. 4).

 

а
б

Рис. 4. Изображение из TACO датасет [8]:

а — пример 1;  б — пример 2  

Необходимо отметить, что существующие модели не обучены для детектирования специфичных объектов — мусора. В то время как разработанная в ходе исследования модель показывает следующие результаты сегментации (заключение в контур) определенных видов отходов (рис. 5).

Рис. 5. Сегментация с помощью разработанной модели

Показателями эффективности обученной модели (метриками) являются:

  • Precision — точность, которая показывает долю объектов, названных классификатором положительными и при этом действительно являющимися положительными;
  • Recall — полнота, которая показывает долю объектов действительно являющимся положительным классом из всех объектов положительного класса, что нашел алгоритм;
  • F1-score — мера, объединяющая precision и recall: среднее гармоническое precision и recall. F1-score достигает максимума при полноте и точности, равными единице, и близка к нулю, если один из аргументов близок к нулю. 

Для выражения данных метрик в математическом виде используют понятие матрицы ошибок (таблица).

Матрица ошибок

Ответ алгоритма на объект Y Истинное значение объекта y
= 1   = 0 
Y = 1True Positive (TP)False Positive (FP)
Y = 0False Negative (FN)True Negative (TN)

Тогда

Precision={\frac {TP}{TP+FP}};

Recall={\frac {TP}{TP+FN}};

F1-score={\frac {2\cdot Precision\cdot Recall}{Precision+Recall}}.

Идеальным является случай, когда все три метрики равны 1.

Разработанная в ходе исследования модель показывает следующие результаты (таблица): ищет и детектирует большее количество отходов. Таким образом, можно сделать вывод, что разработанная модель показывает наилучшие результаты сегментации ТБО (метрики стремятся к 1).

Значения метрик модели

Отходы

Precision

Recall

F1-score

Алюминиевые банки

1,00

1,00

1,00

Стеклянные бутылки

0,76

0,87

0,81

Медицинские баночки

0,84

0,80

0,82

Бутылки из-под пестицидов

0,88

0,92

0,90

Пластиковые контейнеры

0,00

0,00

0,00

Пластиковые бутылки

1,00

0,93

0,97

В процессе исследования нейронная сеть была обучена определять тип ТБО на основе TACO датасет. Стоит отметить, что совместное использование рассмотренных технологий (сегментация отходов с использованием разработанной нейросети и сортировка отходов) крайне удобно и эффективно. После сегментации с использованием разработанной нейросети твердых бытовых отходов в цехе сортировки отходы необходимо отправлять на переработку. Кроме того, стоит учитывать, что технология переработка отходов во вторичное сырье более предпочтительна, чем складирование отходов на свалках или сжигание.

Литература
  1. Антонов С. Сколько мусора производят россияне // Т—Ж: журнал про ваши деньги. URL: https://journal.tinkoff.ru/garbage/ (дата обращения 16.06.2021).
  2. Костромин Н.С., Сивова А.Н. Применение методов машинного обучения для решения экологических задач // Modern Science. 2019. No. 5–3. С. 144–148.
  3. Костромин Н.С., Сивова А.Н. Перспективы применения нейросетей для решения проблем ННН-рыболовства и пиратства в Арктической зоне России // Российская Арктика. 2020. № 11. С. 24–30.
  4. Бенджио Ио., Гудфеллоу Я., Курвилль А. Глубокое обучение. М.: ДМК Пресс, 2018. 652 с.
  5. Zhao Z., Zheng P., Xu S., Wu X. Object Detection With Deep Learning: A Review // IEEE Transactions on Neural Networks and Learning Systems. 2019. No. 30. Pр. 3212–3232.
  6. Kumar A. Semantic Image Segmentation Using Fully Convolutional Networks // Towards data science. URL: https://towardsdatascience.com/semantic-image-segmentation-using-fully-convolutional-networks-bf0189fa3eb8 (дата обращения 10.07.2021).
  7. SIIM-ISIC Melanoma Classification. 2020. URL: https://www.kaggle.com/c/siim-isic-melanoma-classification (дата обращения 10.07.2021).
  8. What is TACO? TACO. 2021. URL: http://tacodataset.org/ (дата обращения 18.06.2021).
Ваш браузер устарел и не обеспечивает полноценную и безопасную работу с сайтом.
Установите актуальную версию вашего браузера или одну из современных альтернатив.