Size: a a a

Natural Language Processing

2020 March 19

A

Aragaer in Natural Language Processing
ну вот что-то есть у яндекса
источник

IS

I Sh in Natural Language Processing
Vic
Ребят, а есть датасеты чит-чата (болтовни) подростков? Интересуют типовые темы и жаргон, как они в соцсетках общаются сейчас
На Каггле есть объёмный датасет с текстами из телеграм-чатов. Правда, не очищенный.
источник

V

Vlad in Natural Language Processing
В новых версиях телеграмма можно вообще экспортировать данные чатов) Т.е. присоединяемся к чатам, где сидит много людей требуемого возраста (по темам чатов это довольно легко понять), экспортируем их данные и получаем готовые html с данными. Да, их надо почистить, но всё равно, для исследования вполне подойдёт
источник

АН

Александр Нагаев in Natural Language Processing
На сколько я знаю, так уже давным давно умеет vkopt для вк, он тебе выдаёт всю переписку в виде строк, просто натравить регулярки и готово
источник

V

Vlad in Natural Language Processing
Кстати да, ещё в viber и whatsapp можно сделать бекап переписок, где они хранятся в виде .txt файлов (во всяком случае так было примерно около года назад)
источник

V

Vlad in Natural Language Processing
Было б интересно кстати натравить что-нибудь готовое на свои личные переписки и узнать, какие слова и фразы часто используешь, как часто переписываешься и т.д.)
источник

DL

Dmitry Legchikov in Natural Language Processing
Привет!

Делаю кластеризацию коротких текстов (инциденты в сервис деске). Набрал обучающую выборку за несколько месяцев, почистил. В качестве бейзлайна взял tf-idf + svd + kmean. Работает хорошо. Со временем могут появляться новые слова, темы - значит обученные на трейне tf-idf+svd нельзя использовать вечно - надо переучивать. Темы каждый день тоже могут появляться, могут меняться распределения. значит kmean тоже надо переучивать.

Теперь хочу выкать это в прод, но встал вопрос как часто надо переучить вектора для слов tf-idf + svd и сам kmean?

Не могу понять когда надо переучивать вектора для слов, а когда сам kmeans. По каким признакам понять что вектора стали плохие, а по каким что kmean?
источник

АН

Александр Нагаев in Natural Language Processing
попробуй вместо tf-idf - word2vec и отлетит проблема переучивания, а там уже легко понять , что kmeans постепенно тупеет
источник

D

Denis in Natural Language Processing
Извиняюсь за репост, но хочется сделать доброе дело и помочь распространить инициативу!
источник

D

Denis in Natural Language Processing
источник

DL

Dmitry Legchikov in Natural Language Processing
думал на счет word2vec, но тексты содержат много специфичных токенов - сленги внутренние, стектейсы и тп. Предобученный wv наверное не зайдет хорошо - придется свой обучать.

kmean думал поменять на dbscan, наверное проще им будет новые кластеры искать
источник

V

Vlad in Natural Language Processing
Можно взять какой-нибудь базовый набор текстов, книги, википедия, статьи, к ним добавить ваши данные и обучить word2vec. Получите примерно такую же по качеству модель, как и уже готовые, только с поддержкой ваших специфичных токенов
источник

V

Vlad in Natural Language Processing
Или вместо word2vec взять fasttext и так же его обучить
источник

DL

Dmitry Legchikov in Natural Language Processing
спасибо, попробую так!
источник
2020 March 20

IS

I Sh in Natural Language Processing
Dmitry Legchikov
думал на счет word2vec, но тексты содержат много специфичных токенов - сленги внутренние, стектейсы и тп. Предобученный wv наверное не зайдет хорошо - придется свой обучать.

kmean думал поменять на dbscan, наверное проще им будет новые кластеры искать
возьмите какую-нибудь современную предобученную модель, например, Фасттекст или Берт, это снимет вопрос отсутствия слов в словаре или слов с ошибками.
источник

DL

Dmitry Legchikov in Natural Language Processing
а как думаете фасттекст поведет себя с большим количеством слов которых нет в словаре?

в текстах содержится большое количество лог сообщений, кусков кода и тд
источник

IS

I Sh in Natural Language Processing
источник

IS

I Sh in Natural Language Processing
фасттекст - это фактически улучшенный word2vec, только он берёт не целое слово, а разбивает его на "слоги", из-за чего получается, что модель может понимать слова, которых нет в словаре. Ну, и Трансформеры примерно так же слова разбивают.

Можно вообще взять BPE и на нём построить модель.

Но как модель будет обрабатывать куски кода - не знаю... Для неё же это будет новый язык. Я думаю, что лучше взять предобученную модель, прогнать по ней свой датасет, и посмотреть, что получится.
источник

АН

Александр Нагаев in Natural Language Processing
I Sh
фасттекст - это фактически улучшенный word2vec, только он берёт не целое слово, а разбивает его на "слоги", из-за чего получается, что модель может понимать слова, которых нет в словаре. Ну, и Трансформеры примерно так же слова разбивают.

Можно вообще взять BPE и на нём построить модель.

Но как модель будет обрабатывать куски кода - не знаю... Для неё же это будет новый язык. Я думаю, что лучше взять предобученную модель, прогнать по ней свой датасет, и посмотреть, что получится.
Не правильно немного говоришь
источник

АН

Александр Нагаев in Natural Language Processing
Fasttext учится на char level и word level, тоесть если у тебя есть слово привет в словаре, но нужно ембеддинг по слову приветули, то он увидит в этом слове subword привет и даст подходящий вектор
источник