Как стать автором
Обновить

Комментарии 23

А почему чай и сладкое обьединены?
Объединены в чаепитие: сладкое — каждый день, чай — раз в месяц.
Мы не придумывали названия категорий сами, мы взяли уже существующее разделение на категории и немного его подкорректировали под специфичность наших данных. К тому же к такому делению привыкли маркетологи и ритейлеры, так как эти категории часто находятся рядом (например, в супермаркетах чай и шоколад всегда рядом).
Я и так знаю что я ем много сладкого, напишите софт который будет есть за меня бить мне по рукам…
НЛО прилетело и опубликовало эту надпись здесь
Кластер у вас относительно чего строится?
Цены, количества? Ну дык тортики же дорогие, однако их мало.
Doc2Vec ещё один из алгоритмов, которые позволяют представлять тексты в векторном виде. При использовании этого подхода каждое название будет описано вектором меньшей размерности, чем при использовании Tf-Idf. В получившемся векторном пространстве похожие тексты будут находиться близко друг к другу, а различные далеко.

Простите, а для tf-idf "похожие тексты" не будут находиться близко?


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

Так какой же все-таки вы используете алгоритм векторизации и почему?


Процесс классификации мы начали

"… а теперь, собственно, нарисуем сову". Все самое интересное вы и опустили — например, как именно вы переходите от одной результатов работы одной модели ко входу другой, и как вы обучали эту конструкцию.

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

Я, на самом деле, не понимаю, почему вы ожидали, что это сработает. Возьмем простой список:


  • молоко
  • творожный сырок
  • масло сливочное
  • масло оливковое
  • оливки
  • масло арахисовое

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

Жаль, что на 4PDA программы нет. Google Play всё-таки неудобный.


А почему вы пишете 'Несколько недель назад мы выложили релиз'? Упоминания ЧекСкан есть минимум с начала 2018 года – или это была версия без категоризации?

Google Play всё-таки неудобный.

Простите за любопытство, но чем он неудобен?

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

А вы не боитесь, что в одном из модов будет неприятный вирус?

4PDA – место популярное, если за прошедшие после появления мода месяцы никто вирус не нашёл, то его, наверное, и нет.


Впрочем, несмотря на это, я очень обрадовался, когда приложение Сбербанка стало работать под рутом из коробки, и необходимость в моде на НЕГО отпала.

НЛО прилетело и опубликовало эту надпись здесь
Только в GP их хотя-бы Google сканирует на уязвимости. А кому это нужно на 4pda?
Да, это была версия без категоризации. Мы добавили её для создания функционала по статистике покупок для пользователей.

Мы, кстати, хотели начать выкладывать на 4PDA, но как-то не добрались пока.

У нас внутри компании (алкогольный сектор) примерно тот же процесс, только приходит поток не от чеков и разбирается по классам не для нужд пользователей а для мастер-данных наших систем.
И качество классификации требуется много выше чем в статье, ибо "ВИСКИ ШОТЛАНДСКИЙ БАРКЛАЙС 3 ГОДА 40% 0,7Л" и "Нап ром SHARK TOOTH Silver 40% 0.5L" это не класс "крепкий алкоголь" (что для чеков в Вашей задаче было бы вполне достаточно) а вполне определённые объекты мастер-данных "Виски Барклайс 3 года 0,7" и "Настойка Шарк Тус Сильвер на основе рома 0,50". А есть еще рядом близкие классы с разницей в один символ "Виски Барклайс 3 года 0,5" при том что TF-IDF емкости бутылки стремится к нулю ибо это высокочастотник в алкоголе, а есть еще вина со своей франко-итальянской особенностью написания в кириллице, и много чего еще…
Но у в статье задача сильно проще тем не менее, странно что автор упомянул про "залетную" транслитерацию букв (сходных по написанию), а про принудительное разделение термов из серии "МЕРЛОвино МаулеВелле кр.сух.0.75л", "ASCHERIвиноБАРОЛО СОРАНО МаулеВелле кр.сух.14%0.75л" как- то позабыл. (боремся так же -регулярками)
Так же учитывая что в текстовое поле ограниченной длины пытаются указать название продукта делая одни и те же слова с разной степенью сокращения, стемминг ну очень сильно помогает в классификации, однако специфика задачи не позволяет использовать стеммер Портера или лемматизацию — специфика сокращений и транслитов на русский. Тут уже чисто свой велосипед стемминга- но оно на практике того стоит.

Ох. Ошибку-то поправьте, «пренадлежит». Не понимаю, как такое может проскочить, когда любой браузер и редактор сразу вопят о неправильности написания.
Спасибо за комментарий. Исправим :)
Чебурек с мясом в категории кошачьих кормов. Машинный разум что-то подозревает )
Главное — что не в домашних животных.
Для нашего приложения требовались немного иные категории чем те, которые были использованы в соревновании, да и названия товаров из нашей базы значительно отличались от представленных в контесте

Уточните, пожалуйста, про какое соревнование идет речь?
Не дочитал до конца, нашел. Я владелец одной из использованных выборок.

Получается, что Вы нарушаете лицензию:
www.kaggle.com/c/receipt-categorisation/rules
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории