From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 9 Apr 2008 12:25:33 +0400 From: Kirill Maslinsky To: ALT Linux Community Message-ID: <20080409082533.GA22066@imap.altlinux.org> Mail-Followup-To: Kirill Maslinsky , ALT Linux Community References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.4.2.3i Organization: ALT Linux Subject: Re: [Comm] =?utf-8?b?0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60LjQuSDQv9C+0Lg=?= =?utf-8?b?0YHQuiDRgtCw0LLRgtC+0LvQvtCz0LjQuSDQsiDRgtC10LrRgdGC0LU=?= X-BeenThere: community@lists.altlinux.org X-Mailman-Version: 2.1.10b3 Precedence: list Reply-To: kirill@altlinux.org, ALT Linux Community general discussions List-Id: ALT Linux Community general discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Apr 2008 08:25:33 -0000 Archived-At: List-Archive: List-Post: 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