NLP: список русских стоп-слов
Решил тут немного поконтрибьютить в питоновскую библиотеку summa. Кроме того, что там в функционале извлечения ключевых слов из русского текста происходит ненужный стемминг английских слов (послал pull-request), там еще полностью отсутствует список русских стоп-слов.
Вообще, само понятие стоп-слов немного размытое у людей. Некоторые используют это для фильтрации наиболее частотных слов языка в задачах классификации документов, например, если ипользуют алгоритмы, учитывающие частоту появления встречающихся слов. Но почему тогда так и не называть это словарем самых частотых слов? :) На мой взгляд под стоп-словами правильнее подразумевать именно такие слова, удаление которых не помешает извлечению главных фактов из документа. В основном это предлоги, союзы и частицы.
Взял для начала список из самой главной библиотеки - NLTK. У них там всего 151 слово:
и
в
во
не
..
..
..
более
всегда
конечно
всю
между
Список этот как составили 11 лет назад, так и больше не трогали. Само собой, в языке с тех пор ничего не особо изменилось. :) Но это же не значит, что этот список единственно возможный.
Поискал я какие есть еще готовые варианты. Нашел один, в котором аж 559 штук. Удивился, начал всматриваться в него. Потом нагуглил классный онлайн-инструмент сравнения списков ListDiff, чтобы мне сразу выдало только те слова, которых нет в первом списке.
И вот тут я начал удивляться еще больше. Это ж каким умным человеком надо быть, чтобы в список стоп-слов добавлять, например, такие слова, как “глаз”, “город”, “человек”, “отец”… В общем, пришлось внимамательно пройтись по всем словам и вручную выбрать те, которые корректно добавлять в этот список.
Вот такое получилось у меня дополнение к списку в nltk_data/corpora/stopwords/russian:
которых которые твой которой которого сих ком свой твоя этими слишком нами всему будь саму чаще ваше сами наш затем
еще самих наши ту каждое мочь весь этим наша своих оба который зато те этих вся ваш такая теми ею которая нередко
каждая также чему собой самими нем вами ими откуда такие тому та очень сама нему алло оно этому кому тобой таки твоё
каждые твои мой нею самим ваши ваша кем мои однако сразу свое ними всё неё тех хотя всем тобою тебе одной другие
этао само эта буду самой моё своей такое всею будут своего кого свои мог нам особенно её самому наше кроме вообще вон
мною никто это
Теперь жду - если проаппрувят мой pull-request, то и поддержку русских стоп-слов закоммичу.