[Comm] автоматический поиск тавтологий в тексте
Aleksander N. Gorohovski
=?iso-8859-1?q?angel_=CE=C1_feht=2Edgtu=2Edonetsk=2Eua?=
Ср Апр 9 13:12:03 MSD 2008
On Wed, 09 Apr 2008 11:25:33 +0300, Kirill Maslinsky wrote:
> On Wed, Apr 09, 2008 at 10:40:09AM +0300, Aleksander N. Gorohovski wrote:
>> Доброго времени суток уважаемое
>> сообщество!
>>
>> Подскажите, может кто-нибудь встречал
>> под Linux программу
>> для поиска в тексте мест, подозрительные
>> на предмет одной из самых
>> распространенных стилистических
>> погрешностей:
>> расположенных близко по тексту
>> фонетически и морфологически сходных
>> слов,
>> чей параллелизм никак не мотивирован.
> Встречать не приходилось.
> А Вам приходилось встречать отдельную программу не под Linux,
> которая бы это делала?
> Интересно, бывает ли такое, и как может называться.
Мне сейчас удалось встретить под Win/DOS такую программу.
Называется "Свежий взгляд"
http://www.kirsanov.com/fresheye/
и распространяется как Open Source
Но пока не смотрел как она работает.
>> Т.е. другими словами -- паронимий, или
>> "нечаянных тавтологий".
> Паронимиями такое явление называть не совсем точно, правильнее именно
> тавтологиями.
>
> По-английски paronym употребляется в двух значениях (см. Википедию)
> 1. как синоним однокоренных слов (cognate)
> 2. как слова очень сходные по звучанию/написанию, но разные по
> значению/происхождению (которые из-за этого часто путают)
>
> По-русски термин "пароним" принято употреблять только во втором
> значении.
>
> 1. Стилистическая ошибка по первому значению называется как раз
> тавтология, и относится к употреблению рядом однокоренных слов
> (тавтология).
> Кстати, это не считается ошибкой в англоязычной традиции, особенно
> технических и
> деловых документов, поэтому вряд ли найдётся такая программа для
> английского языка.
>
> 2. Стилистическая ошибка по второму значению называется парономасия,
> это когда в одном предложении встречаются паронимы. Это, мне кажется,
> настолько редкая вещь, что стоит ли беспокоиться?
>
> Вообще теоретически такую программу в первом приближении реализовать
> несложно:
>
> 1. Выбираем размер "окна" в тексте, в пределах которого мы будем искать
> однокоренные слова, пускаем это окно "скользить" по тексту.
> 2. Разбиваем текст в окне на токены, делаем стемминг (лемматизацию),
> В сизифе есть подходящий простой инструмент с поддержкой
> русского языка (snowball).
> 3. Смотрим на совпадения корней (возможно, с указанной точностью, а
> также с учётом stop list и минимальной длины/частотности совпавшей
> леммы).
> 4. В качестве fallback method для обнаружения сильно изменённых корней
> (приставки?)
> и случайных фонетических совпадений можно делать дополнительное
> сравнение по редакционному расстоянию между строками.
> 5. Репортим пользователю найденные совпадения.
>
> Такой метод даст какое-то количество false positives, но поскольку
> результат работы программы все равно предназначен для чтения человеком,
> то это некритично.
Кирилл,
Премного благодарен.
Подробная информация о списке рассылки community