Всем, привет!
Я новичок в деле NLP. Сейчас решаю задачу с классификацией СМИ по заголовкам. Решаю через метод опорных векторов LinearSVC из sklearn. Текст обрабатываю через наташу, убираю имена, числа, локации, знаки и привожу в нормальную форму через pymorphy2. Также убираю стоп слова. И также создал небольшой словарь синонимов, который находит слово в тексте по значениям словаря и меняет его на ключ словаря. Это было сделано, чтобы слова относящиеся, например, к гос органам, заменялись словом "государство" и тем самым такой заголовок с большей вероятностью относился к классу связанным с государством.
Сейчас на тестовых данных результат 80%, а на свежей партии новостей результат заметно хуже. И думаю о том, как улучшить.
Хотел с вами посоветоваться:
1. Есть ли статьи/книги/пооекты которые можно посмотреть и найти интереснык идеи по улучшению классификвции коротких текстов
2. Знаю, что есть такие модели машинного обучегия, которые умеют самообучаться. Насколько в NLP такмюие модели уместны и если умкстны, то где можно о чем-то таком узнать?
3. Обучающая выборка состоит из 7к текстов. Насколько это адекватно? 7к на 14 классов.
Не ругайте, если плохо вопрос задаю. Опыта мало и не знаю пока много всего. Гуглил свои вопросы, но решения или идей пока не нашел.
Спасибо за внимание!
привет! 7 тысяч на 14 классов, конечно, очень мало. Надо хотя бы по тысяче на класс, а лучше еще больше. Чем больше, тем лучше. Как эксперимент, 7 тысяч пойдет, но для рабочей модели, мало. Я бы порекомендовала попробовать предобученные модели, где уже есть информация о текстах, Fasttext, BERT и так далее.