From: Kirill Maslinsky <kirill@altlinux.org> To: ALT Linux Community <community@lists.altlinux.org> Subject: Re: [Comm] автоматический поиск тавтологий в тексте Date: Wed, 9 Apr 2008 12:25:33 +0400 Message-ID: <20080409082533.GA22066@imap.altlinux.org> (raw) In-Reply-To: <op.t9b187wlhz2pp6@oc.peooc.net> On Wed, Apr 09, 2008 at 10:40:09AM +0300, Aleksander N. Gorohovski wrote: > Доброго времени суток уважаемое > сообщество! > > Подскажите, может кто-нибудь встречал > под Linux программу > для поиска в тексте мест, подозрительные > на предмет одной из самых > распространенных стилистических > погрешностей: > расположенных близко по тексту > фонетически и морфологически сходных > слов, > чей параллелизм никак не мотивирован. Встречать не приходилось. А Вам приходилось встречать отдельную программу не под Linux, которая бы это делала? Интересно, бывает ли такое, и как может называться. > Т.е. другими словами -- паронимий, или > "нечаянных тавтологий". Паронимиями такое явление называть не совсем точно, правильнее именно тавтологиями. По-английски paronym употребляется в двух значениях (см. Википедию) 1. как синоним однокоренных слов (cognate) 2. как слова очень сходные по звучанию/написанию, но разные по значению/происхождению (которые из-за этого часто путают) По-русски термин "пароним" принято употреблять только во втором значении. 1. Стилистическая ошибка по первому значению называется как раз тавтология, и относится к употреблению рядом однокоренных слов (тавтология). Кстати, это не считается ошибкой в англоязычной традиции, особенно технических и деловых документов, поэтому вряд ли найдётся такая программа для английского языка. 2. Стилистическая ошибка по второму значению называется парономасия, это когда в одном предложении встречаются паронимы. Это, мне кажется, настолько редкая вещь, что стоит ли беспокоиться? Вообще теоретически такую программу в первом приближении реализовать несложно: 1. Выбираем размер "окна" в тексте, в пределах которого мы будем искать однокоренные слова, пускаем это окно "скользить" по тексту. 2. Разбиваем текст в окне на токены, делаем стемминг (лемматизацию), В сизифе есть подходящий простой инструмент с поддержкой русского языка (snowball). 3. Смотрим на совпадения корней (возможно, с указанной точностью, а также с учётом stop list и минимальной длины/частотности совпавшей леммы). 4. В качестве fallback method для обнаружения сильно изменённых корней (приставки?) и случайных фонетических совпадений можно делать дополнительное сравнение по редакционному расстоянию между строками. 5. Репортим пользователю найденные совпадения. Такой метод даст какое-то количество false positives, но поскольку результат работы программы все равно предназначен для чтения человеком, то это некритично. -- Kirill Maslinsky ALT Linux Team
next prev parent reply other threads:[~2008-04-09 8:25 UTC|newest] Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-04-09 7:40 [Comm] паронимия (paronymy) Aleksander N. Gorohovski 2008-04-09 8:25 ` Kirill Maslinsky [this message] 2008-04-09 9:12 ` [Comm] автоматический поиск тавтологий в тексте Aleksander N. Gorohovski
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20080409082533.GA22066@imap.altlinux.org \ --to=kirill@altlinux.org \ --cc=community@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git