Обновить

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

Вам не дадут «списать» модель нейросети даже за ящик водки.


Может кто из молодёжи не понимает, думает это фейк у них такой. Так вот, поголовно расплачиваются, коньяком, стоит ящик, заместо одеколона использую, ибо коньяк дорогущий, а мы конъяков не потребляем, водкой не комифлю им.
Директорским стулом кожаным, сломался через три года. Всё на балансе. Путевкой в Амазонию ( думали крокодилы и пираньи съедят и расплачиваться не придётся…
Я пробовал, но не работало. Говорят: задача поставлена не математически, иди дальше думай :-) А клиенты продолжаю звонить.
Комментарий сгенерирован нейросетью? %)
… сразу после распознавания ящика коньяка
Для авто-саппорта идеален Акинатор. Почему до сих пор нет внедрений?
Ну тут же не авто-саппорт. Тут — автоматический роутинг обращения в нужную категорию по его содержимому.
Вы пишите, что выбрали сеть потому что… Можно в цифрах, точность Байеса, SVM, сети и что вы там еще использовали на вашем наборе данных. Сколько у вас классов?
Не, лень было их сравнивать. Я ссылку на статью со сравнениям дал. Классов под сто.
Вопрос собственно возник из-за того, что мы также используем автоматическую классификацию сообщений. Используется слегка модифицированный байес. Классов — 60, точность — 82%. Обучение классификатора занимает — 5 минут на core i5. Алгоритм реализован без привлечения программистов :) Вопрос — насколько необходимо городить огород и исследовать нейронки, когда простые алгоритмы справляются очень неплохо?
«Работает — не трогай!» :-). Наивный байес прекрасен, из апостериорных вероятностей слов он апроксимирует априорную вероятность конкретного раздела, но… делает это наивно — не учитывая возможные связи слов. В фразе «да пошел ты на ...» люди и N-nram модели увидят подходящее слово, а байес — нет :-) Тем не менее, он неплохо работает же и часто, вместе с скорее более точной но дольше обучаемой SVM используется как baseline.

Мы в нашем случае употребили нейронку по следующим причинам:
— сразу несколько языков
— в перемешку идет код, верстка, мат-перемат, благословения и текст
— нужна устойчивость к опечаткам (bag of char ngram3), т.е. стемминг Портера на слова не подошел бы
— нейронку можно улучшать не включая мозг: развивая архитектуру и повышая ее точность (например идти в сторону 1D свертки или эмбеддингов, paragraph vectors ...), а байеса как?

Ну и одновременно мы развиваем направление помощников в диалогах, тоже на нейронках, вот пример:


У меня вопрос, а какие у Вас тексты, на скольки языках? Если вставки кода в них?

А почему просто нельзя попробовать, посмотреть как модифицируются фразы, предложения?
Несколько языков, не будучи филологом, и то понимаю сложность, нет решений у IBM.
Да вам памятник рядом с Пушкиным поставят. (, если не только мат удаляете.)

Полно тут дизайнеров без портфолио, как сапожники без сапог, про бога рассказывают, других учат, только сами не умеют. Товарищи в вышиванках гигантские базы на XML обрабатывают, и уверяют что так работает, и тоже других учат.
ну… NLP это сложная AI-complete задачка, ее может и решат лет через 10 000. Если было бы можно ифами и логикой это делать — давно бы делали. А нужно уже сейчас языки понимать.
«Полно тут дизайнеров без портфолио», это конечно не литературно, так пишу. Если поменять слова то и эмоциональность немного изменится.

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

Текст на русском и английском (менее 3%). Есть вставки кодов ошибок dotnet. В качестве токенизации используем TF-SLF (http://injoit.org/index.php/j1/article/viewFile/118/91).
Сама «игрушка» написана на питоне. Алгоритм таков: Убираем Стоп-слова (предлоги, союзы, местоимения, фразы «без смысла», типа: с уважением, спасибо, благодарны и т.д. ), словарь небольшой -> нормализуем (pymorphy2) -> считаем TF-SLF-> вычисляем вероятности-> сохраняем в БД.
спасибо, очень интересно
Было желание поиграться с SVM, но никак руки не дойдут, как я упоминал выше, не программист и не математик -образование хорошее :), времени нет :). А если разница будет на 2-3% то жаба задушит за потраченное время.
Далеко не все настоящие программисты по образованию пишут правильный код и не все математики по образованию — хорошо математят :-) Я — электро-механик, но с 12 лет пишу код и ООчень люблю математику и посвящаю ей свободное время. Нейронки, судя по рекламным брошюрам :-) позволяют не заниматься предварительной обработкой фич, а лить на вход все, что есть, и сеть сама расставит веса. В этом, насколько я понимаю, их основная сила — универсальное оружие :-)
Универсальное оружие это да, но есть ограничения: у нас в некоторых категориях по 15-20 документов, для нейронки, исходя из того, что я читал, это очень мало… как следствие, может быть некорректная классификация, поэтому остановился на байесе (быстро и сердито :-) ) и на вкусное оставил SVM.
да, согласен, Вы правы. А не пробовали логистическую регрессию? Она побыстрее и попроще машины опорных векторов может быть, кстати
Саш, продам лопату ;-)
:-)

Может вы обращения и научились автоматически классифицировать, но 1 уровень техподдержки у вас просто "мертвый".
Вы бы релизы так тестировали, может, наконец-то, в релизах не было бы косяков тогда

выставите соревнование на киндл.
спасибо за идею!
Может таки каггл? Или я упустил что-то?
Это хорошая идея, спасибо, обсудим — но может более просто? Мы предлагаем более прямой путь к монетизации коллегам датасайнтистам: без каггла и прочих посредников сразу выкладывать решения и модули на наши маркетплейсы: https://www.bitrix24.ru/apps/ и https://marketplace.1c-bitrix.ru/. Клиенты будут их скачивать, использовать в своих продуктах и разработчикам модулей деньги платить.
соревнование vs занудная работа?
Сейчас остро стоит вопрос монетизации ML. Чтобы третья волна не оказалась очередным хайпом для рекламы фундаментальной науки — соревнований недостаточно, нужно рукава закатить и порешать еще сотню нестандартных задачек из реальности :-)
никто не говорит, что задачки должны быть абстрактными.
Одно дело работать с набором таблиц и соревноваться в рейтинге с другими спецами более высокого уровня и совсем другое дело убивать время на написания тучи кода с непонятным результатом.

Это тоже самое что пробежать марафон вместе с толпой народа или каждый день ходить по 5 км на работу и домой.
Если использовать регуляризацию, похожую на действие алкоголя в мозге человека (dropout), то нейросети адекватно сходятся и не сильно страдают от переобучения

Мудро :).

Нейросеть это конечно хорошо, но лучше бы ввели простую кнопку = вы ответили чушь, только, чтобы не получить втык за выход из времени ответа на обращение…
Отличная идея, кстати, спасибо!
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
www.bitrix24.ru
Дата регистрации
Дата основания
1998
Численность
501–1 000 человек
Местоположение
Россия