Наш опыт внедрения ИИ в классификацию товаров по коду товарной ТН ВЭД.

Совместно с отделом разработок ООО «Парадигмы Софт» провели исследование о возможности классификация товаров по описанию графы 31 ДТ на основе алгоритмов машинного обучения SGDClassifier и KNeighborsClassifier.
Классификация товаровпо описанию графы 31 ДТ на основе алгоритмов машинного обучения SGDClassifier и KNeighborsClassifier.
Задачей классификации кода ТН ВЭД при помощи искусственного интеллекта (далее – ИИ) является автоматизация определения кода ТН ВЭД. Под автоматизацией подразумевается упрощение процесса определения товарной позиции на основе базы знаний, состоящей из данных вида “Код, описание”.
Рассматриваемая модель классификации товаров по коду включает в себя несколько взаимосвязанных компонентов, обеспечивающих обработку данных, построение классификационной модели и использование ее для предсказания.
Основным шагом в работе системы является загрузка данных из внешнего файла “Код, описание”, содержащего текстовые описания товаров и соответствующие им коды. После чего данные предварительно очищаются и структурируются. А именно, текст приводится к нижнему регистру, удаляются ненужные символы и возможные пропуски.
После загрузки и обработки данные делятся на три части: обучающую, тестовую и валидационную выборки. Этот процесс обеспечивает правильное обучение модели и ее оценку на данных, которые она ранее не видела.
Валидационная выборка используется для настройки параметров модели,
Тестовая выборка — для проверки её финальной точности.
Разделение производится случайным образом, что минимизирует влияние возможных перекосов в данных.
Ключевой частью модели является конвейер, включающий два основных этапа: векторизацию текста и классификацию. Для преобразования текстовых данных в числовой формат используется метод TF-IDF (term frequency-inverse document frequency). Он позволяет учесть важность каждого слова в описании товара относительно всей базы данных, превращая текст в числовой вектор. Этот этап критически важен, так как алгоритм машинного обучения (далее — АМО) могут работать только с числовыми данными. TfidfVectorizer из библитеки sklearn. feature_extraction.text применяется для преобразования текстовых данных в числовые векторы, что необходимо для работы АМО. Этот инструмент анализирует текстовые описания товаров, вычисляет частоту каждого слова в документе и нормализует её с учётом того, насколько часто это слово встречается в других документах.
Такой подход позволяет выделить ключевые слова, которые наиболее информативны для классификации, и уменьшить влияние часто встречающихся, но менее значимых слов, например предлогов. Также SGDClassifier из библиотеки sklearn. linear_mode используется как алгоритм классификации. Это метод основан на стохастическом градиентном спуске, который оптимизирует функцию потерь для задачи классификации. Данный алгоритм хорошо масштабируется на большие объемы данных и подходит для задач с большим количеством признаков, как в случае текстовых данных, преобразованных через TfidfVectorizer. Его ключевыми особенностями являются высокая скорость обучения и возможность работать с разреженными матрицами, которые часто возникают после векторизации текста.

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

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

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

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

Для тестирования был использован предварительно обработанный датасет, содержащий 500 000 записей вида “Код, описание”, каждая из которых включала текстовое описание товара и соответствующий ему код. Из-за большого объёма данных обучение моделей было разделено на два этапа. Такой подход позволил избежать проблем, связанных с нехваткой вычислительных ресурсов, и обеспечить надежность результатов. На первом этапе модели обучались на части данных, после чего их параметры были уточнены на основе промежуточных результатов.
Точность модели оценивалась для двух уровней глубины классификации. На максимальной глубине, то есть при предсказании полного кода товара, точность составила около 74%.
Однако для основной задачи определения товарной позиции, соответствующей четырехзначному коду товарной позиции, точность достигла 80%. Это различие объясняется как сложностью полной классификации, так и особенностями распределения данных в датасете: некоторые товарные группы были представлены в недостаточном количестве, что затрудняло обучение модели для этих классов.

Для анализа качества работы моделей была проведена выборка товаров и проверено совпадение предсказанных кодов с фактическими. Результаты тестирования показали, что для описаний, используемых в декларациях, точность предсказаний была высокой: полное совпадение четырехзначного кода наблюдалось в 82% случаев, частичное совпадение — в 10%, а ошибки классификации составили лишь 8%. В то же время, для бытовых описаний товаров, которые часто являются более неформальными и менее структурированными, точность была ниже: 48% полных совпадений, 18% частичных совпадений и 30% ошибок.








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

Таким образом, тестирование показало, что рассматриваемая модель обладает достаточно хорошей точностью при классификации текстовых описаний товаров для целей декларирования, а также удовлетворительными результатами для менее формальных описаний. Полученные результаты подтверждают возможность использования модели в реальных условиях, однако указывают на необходимость дальнейшей работы над увеличением объёма и разнообразия обучающих данных для улучшения качества классификации.
Стоит обратить внимание на тот факт, что работа модели основывалась на обработке базы данных и поиске совпадений с запроса с данной базой. При этом ОПИ не применялись.
Таким образом, для классификации товаров ИИ в соответствии с кодом ТН ВЭД на основании ОПИ требуется применение других более сложных моделей и алгоритмов.
Оставьте ваш номер телефона, что эксперт перезвонил вам!
Or you can call us yourself:
+1 (000)000-0000