Разработчик: Серова Олеся
Email: serovaolesyau@gmail.com
Считается, что переведенные тексты обладают рядом уникальных особенностей, отличающих их от аутентичных текстов, изначально написанных на целевом языке. Эти особенности, называемые общим терменом Translationese, проявляются в переводе в виде специфических индикаторов. Для выявления этих индикаторов принято проводить сравнительный анализ на материале корпусов переведенных и аутентичных текстов одного жанра.
Данная программа предназначена для подсчета и анализа этих индикаторов в переводах научных статей с английского языка на русский.
Для того чтобы воспользоваться программой, на Вашем компьютере должен быть установлен интерпретатор Python и среда разработки (IDE). Чтобы установить их, пожалуйста, внимательно прочитайте инструкцию о том, как это сделать, здесь и выполните все описанные в ней шаги.
1. Клонируйте репозиторий на свой компьютер:
git clone git@github.com:serovaolesya/sci_papers_translationese.git
2. Откройте склонированный проект в любом IDE и обязательно установите виртуальное окружение:
Команда для Windows:
python -m venv venv
Команда для Linux и macOS:
python3 -m venv venv
После выполнения этой команды в директории проекта появится папка venv (от virtual environment, «виртуальное окружение»), в ней хранятся служебные файлы. В этой же директории будут храниться все библиотеки и модули, используемые в приложении.
3. Активируйте виртуальное окружение. Для этого, находясь в корневой директории проекта, введите в терминал команду:
Команда для Windows:
source venv/Scripts/activate
или
venv/Scripts/activate
Для Linux и macOS:
source venv/bin/activate
4. Обязательно установите зависимости (библиотеки и модули) приложения, без них оно работать не будет:
Из корневой директории проекта введите следующую команду:
pip install -r requirements.txt
5. Запустите программу:
В корневой директории находится файл start_analysis.py, ОТКРОЙТЕ его двойным кликом и запустите (треугольная кнопка
ЛИБО через терминал введите команду:
python start_analysis.py
5. Далее следуйте инструкциям на экране, чтобы воспользоваться приложением.
1. Скачайте ZIP-архив с программой по этой ссылке.
2. Распакуйте ZIP-архив с программой. Возможно, при распаковке программа предложит Вам распаковать содержимое архива в папку с одноименным именем, удалите название архива и распакуйте содержимое в папку на уровень выше:
3. Откройте установленную ранее среду разработки (IDE) (об установке Python и IDE можно прочитать здесь).
Мы рекомендуем воспользоваться бесплатной версией IDE - PyCharm Community Edition.
Скорее всего, IDE сам предложит вам открыть интересующий Вас проект. Либо в приложении PyCharm Community Edition нужно будет открыть раздел "File" > "Open" и в открывшемся окне выбрать папку с распакованным приложением. Когда Вы откроете папку с приложением, Вы должны увидеть такую структуру файлов:
4. Откройте терминал IDE и введите следующую команду:
Команда для Windows:
python -m venv venv
Команда для Linux и macOS:
python -m venv venv
После выполнения этой команды в директории проекта появится папка venv (от virtual environment, «виртуальное окружение»), в ней хранятся служебные файлы. В этой же директории будут храниться все библиотеки и модули, используемые в приложении.
5. Активируйте созданное виртуальное окружение venv. Для этого введите в терминал команду и нажмите Enter:
Команда для Windows: source venv/Scripts/activate
или
venv/Scripts/activate
Для Linux и macOS:
source venv/bin/activate
6. Далее введите следующую команду для установки библиотек и модулей приложения, без них оно работать не будет:
Из корневой директории проекта введите следующую команду и подождите, пока все библиотеки скачаются и установятся:
pip install -r requirements.txt
7. Запустите программу:
В корневой директории находится файл start_analysis.py, ОТКРОЙТЕ его двойным кликом и запустите (треугольная кнопка
ЛИБО через терминал введите команду:
python start_analysis.py
8. Далее следуйте инструкциям на экране, чтобы воспользоваться приложением.
Программа предоставляет следующие возможности:
-
Предобработка текстов перед последующим анализом, включающая себя удаление ссылок на литературу, а также проверку правильности разбиения текста на предложения и дальнейший подгон текста по объему, выбранному пользователем.
- Ввод текста для предобоаботки может производиться либо сочетанием клавиш Ctrl+V через консоль, либо пользователь должен заранее добавить файлы с текстами для предобработки в одну из следующих папок в формате .txt:
- auth_texts - папка для аутентичных текстов,
- mt_texts - папка для текстов МП,
- ht_texts - папка для переводов, сделанных человеком.
- Ввод текста для предобоаботки может производиться либо сочетанием клавиш Ctrl+V через консоль, либо пользователь должен заранее добавить файлы с текстами для предобработки в одну из следующих папок в формате .txt:
-
Анализ текстов, вводимых пользователем по пяти группам индикаторов феномена Translationese.
- Ввод текстов может производиться либо сочетанием клавиш Ctrl+V через консоль, либо пользователь должен заранее добавить подготовленные для анализа файлы в одну из следующих папок в формате .txt:
- auth_ready - папка для аутентичных текстов,
- mt_ready - папка для текстов МП,
- ht_ready - папка для переводов, сделанных человеком.
Если пользователь воспользовался встроенной в приложение функцией по предобработке текста, то предобработанные и готовые для анализа тексты уже будут находится в одной из указанных папок.
- Ввод текстов может производиться либо сочетанием клавиш Ctrl+V через консоль, либо пользователь должен заранее добавить подготовленные для анализа файлы в одну из следующих папок в формате .txt:
-
Просмотр информации о выбранном тексте в корпусе.
-
Просмотр информации обо всем корпусе текстов.
-
Также в приложение встроены функции создания паспорта текста, морфологической и синтаксической разметки текста.
Универсалия основывается на утверждении, что тексты перевода структурно и лексически проще аутентичных текстов, представлена следующими индикаторами:
-
Лексическая плотность (lexical density) — отношение знаменательных слов (а именно существительных, прилагательных, глаголов и наречий) к общему количеству слов.
-
Лексическое разнообразие (Lexical Variety) - отношение типов (уникальных слов) ко всем словарным токенам текста.
-
Рассчитываются следующие версии данного индикатора:
-
$TTR = \frac{V}{N}$ , где V - количество уникальных типов, а N - количество словарных токенов. -
$Log\text{-}TTR = \frac{\log(V)}{\log(N)}$ , где V - количество уникальных типов, а N - количество словарных токенов. -
$Modified\text{-}TTR = \frac{100 \times \log(N)}{1 - \frac{V_1}{V}}$ , где V - количество уникальных типов, а N - количество словарных токенов, V1 — количество уникальных типов, встречающихся только один раз.
-
-
Рассчитываются следующие версии данного индикатора:
-
Средняя длина слов в символах (mean word length in characters).
-
Средняя длина слов в слогах (mean word length in syllables).
-
Средняя длина предложений в символах (mean sentence length in characters).
-
Средняя длина предложений в токенах (mean sentence length in tokens).
-
Средний ранг слов в тексте (mean word rank) — используется список из 6000 наиболее частотных слов, взятый из Нового частотного словаря русской лексики. Ранг слова равен его порядковому номеру. Максимальный ранг равен 5000 (поскольку некоторые слова в списке имеют одинаковый ранг).
- Рассчитываются следующие версии данного индикатора:
- Словам, отсутствующим в списке, присваивается уникальный наивысший ранг 6000.
- Слова, отсутствующие в списке, полностью игнорируются.
-
Частотность 50-ти наиболее употребимых слов (50 most frequent words).
Универсалия основывается на утверждении, что в переводах используются более нормализованные грамматические структуры, большее количество устойчивых выражений, а также имеется тенденция к избеганию лексических повторов знаменательных частей речи. Представлена следующими индикаторами:
-
Повторяемость (repetition) - соотношение знаменательных слов (а именно глаголов, существительных, прилагательных и наречий), встречающихся в тексте более одного раза, к общему количеству токенов в тексте. Глагол-связка «быть/являться» исключена из подсчетов.
-
PMI (pointwise mutual information) для всех биграмм в тексте. PMI биграмм
$w_1w_2$ ее PMI вычисляется как:$I(w_1, w_2) = \log_2\left(\frac{P(w_1, w_2)}{P(w_1) \cdot P(w_2)}\right)$ ,где
$P(w_1, w_2)$ - вероятность совместного появления пары слов вместе,$P(w_1)$ и$P(w_2)$ - вероятности появлений отдельных слов. -
Биграммы с PMI > 0 (Threshold PMI=0) - нормализованное количество биграмм с PMI > 0.
Универсалия подразумевает, что в текстах перевода есть тенденция к эксплицитному выражению элементов, имплицитно подразумевающихся в тексте оригинала, что приводит к повышенной логической связности текста. Представлена следующими индикаторами:
-
Эксплицитное называние (explicit naming) - отношение личных местоимений к именованным сущностям.
-
Частота именованных сущностей из одного токена (single naming) относительно всех именованных сущностей в тексте.
-
Средняя длина именованных сущностей в токенах (mean multiple naming).
-
Дискурсивные маркеры научного текста (discourse markers). Анализ включает в себя подсчет нормализованных частот следующих типов ДМ научного текста (в скобках даны примеры):
- Введение в тему (речь пойдет о, будет рассмотрено, мы рассмотрим),
- Порядок следования информации (во-первых, прежде всего, наконец),
- Иллюстративный материал (из таблицы видно, на рисунке, данные представлены),
- Порядок расположения материала (как говорилось выше, об этом речь пойдет, как было показано ранее),
- Вывод/заключение (поэтому, следовательно, следует вывод),
- Введение новой/дополнительной информации (кстати говоря, причем, кроме того),
- Повтор/конкретизация информации (то есть, другими словами, потому что),
- Противопоставление (однако, тем не менее, между тем),
- Введение примеров (например, такие как, к примеру),
- Мнение автора (на наш взгляд, по нашему мнению, как нам кажется),
- Категоричная оценка (конечно, разумеется, несомненно),
- Менее категоричная оценка (возможно, вероятно, наверно),
- Призыв читателя к действию (см., ср.),
- Совместное действие (рассмотрим, обозначим, перейдем к),
- Акцентирование внимания (необходимым представляется отметить, следует подчеркнуть, отметим, что),
- Отсылка к фоновым знаниям (не секрет, что, общеизвестно, как известно).
Универсалия подразумевает тенденцию к переносу структурных характеристик исходного языка в текст перевода, педставлена следующими индикаторами:
-
POS n-граммы (POS n-grams), а именно нормализованные частоты частеречных униграмм, биграмм и триграмм. Специальные обозначения S_START и S_END добавлены для обозначения начала и конца предложений, что позволяет захватывать биграммы и триграммы, находящиеся на границах предложений.
Таблица используемых в анализе POS n-грамм:
-
Буквенные n-граммы (character n-grams), а именно нормализованные частоты буквенных униграмм, биграмм и триграмм. Специальные символы < и > добавлены для обозначения начала и конца слов, что позволяет захватывать биграммы и триграммы, находящиеся на границах слов, и корректно обрабатывать префиксы и суффиксы.
-
Триграммы слов с функциональными (служебными) словами (contextual function words in trigrams).
Учитываются следующие триграммы:
- Триграммы состоящие из одного служебного слова и двух других слов (заменённых на их POS-теги),
- Триграммы состоящие из двух служебных слов и одного другого слова (заменённого на его POS-тег),
- Триграммы состоящие из трех служебных слов.
-
Позиционная частота токенов на разных позициях в предложении (positional token frequency), а именно нормализованная частота токенов, встречающихся на первой, второй, третьей с конца, предпоследней и последней позициях в предложении. Предложения короче пяти токенов из анализа исключаются, знаки препинания считаются полноценными токенами.
-
Нормализованная частота функциональных (служебных) слов (function words).
-
Нормализованная частота личных и притяжательных местоимений (pronouns).
-
Нормализованная частота пунктуационных знаков (?!:;–()[]«»‘’“”/,.) (punctuation) 1) относительно всех знаков и 2) относительно всех токенов в тексте.
-
Соотношение глаголов в форме страдательного залога к общему количеству глаголов (ratio of passive forms to all verbs).
- Pymorphy — морфологический анализатор для русского языка.
- Natasha — набор инструментов для обработки текстов на русском языке.
- NLTK (Natural Language Toolkit) — библиотека для работы с естественными языками на Python.



