Это гостевой пост Ондржея Матушки, менеджера по продажам и маркетингу Lexical Computing, компании, которая разрабатывает продукт для анализа корпусных и языковых данных под названием Sketch Engine.

Впервые я узнал о Sketch Engine из информационного бюллетеня Йоста Цетше (276-е издание набора инструментов) несколько недель назад. По мере того, как относительно чистые текстовые корпуса разрастаются и увеличиваются в объеме данных, становится необходимым использовать новые виды инструментов для понимания этого огромного объема текстовых данных, которые могут или не могут рассматриваться для перевода. Эти новые инструменты помогают нам понять, как точно профилировать наиболее известные лингвистические шаблоны в больших коллекциях текстовых языковых данных и извлекать полезные знания из этих новых корпусов, чтобы помочь во многих задачах, связанных с переводом. Для тех из нас, кто занимается машинным переводом, всегда существовали созданные студентами (в основном аспирантами студенты, изучающие НЛП и компьютерные лингвистические программы) инструменты, которые использовались и были необходимы для понимания корпуса для улучшения стратегий разработки машинного перевода и для получения текста. данные готовы для процессов машинного обучения. Большинство этих инструментов можно было бы охарактеризовать как неудобные для пользователя или, говоря более прямо, как слишком гиковские. По мере того, как мы приближаемся к миру глубокого обучения, потребность в понятных данных, которые используются для обучения или решения любой задачи перевода, может только возрастать.

Несмотря на шумиху, мы должны понимать, что алгоритмы глубокого обучения все чаще будут рассматриваться как товар. Настоящая ценность — это данные.

Меня часто спрашивают, какие инструменты переводчики должны научиться использовать в будущем, и я обычно считаю, что им следует держаться подальше от Moses и других наборов инструментов для разработки машинного перевода, таких как Tensorflow, Nematus, OpenNMT, и сосредоточиться на аспекты анализа и подготовки данных, поскольку эта возможность повысит ценность любого используемого подхода к машинному обучению на основе данных. Стоит помнить, что, несмотря на шумиху, алгоритмы глубокого обучения являются товаром. Это данные, которые являются реальной ценностью. Эти инструменты (алгоритмы) разработки машинного перевода для глубокого обучения, вероятно, будут быстро развиваться в ближайшем будущем, и мы можем ожидать, что только самые способные и хорошо финансируемые группы смогут идти в ногу с последними разработками.(Как как вы думаете, многие LSP пробовали все четыре платформы NMT с открытым исходным кодом? Или знаете, что такое CNN? Держу пари, что это есть только у SDL.) Даже ученые жалуются на скорость изменений и новые разработки в исследованиях алгоритмов Neural MT, и, следовательно, на LSP и переводчики, скорее всего, окажутся в невыгодном положении при разработке модели нейронного машинного перевода. Подготовка данных для процессов машинного обучения становится все более важным и стратегически важным навыком для тех, кто занимается бизнес-переводом. Это будет означать, что следующие навыки будут ценными IMO. Все они несколько тесно связаны в моем сознании:

  • Инструменты для анализа корпуса и профилирования, такие как Sketch Engine
  • Инструменты модификации корпуса, например расширенные текстовые редакторы, TextPipe и другие редакторы, которые позволяют редактировать на уровне шаблона очень большие (десятки миллионов предложений) наборы текстовых данных
  • Инструменты быстрого обнаружения и исправления ошибок, выходящие за рамки традиционных концепций PEMT
  • Методология и инструменты оценки качества вывода MT
  • Обучение возможностям обработки данных, которые развиваются благодаря более глубокому пониманию источника и корпуса TM, обеспечиваемому такими инструментами, как Sketch Engine.

Все эти инструменты необходимы для выполнения проектов по переводу объемом от 5 до 100 миллионов слов, которые, вероятно, станут гораздо более распространенными в будущем. Очевидно, что многие переводчики не захотят иметь ничего общего с такой работой, но по мере расширения использования машинного перевода , такие инструменты и навыки становятся гораздо более ценными, и многие утверждают, что понимание закономерностей в лингвистических больших данных также имеет большое значение для любой задачи перевода.

Йост Цетше представил хороший обзор того, что делает Sketch Engine ниже:

  • Word Sketches. Отсюда программа получила свое название, и это то, что Килгарриф (соучредитель) привнес на стол. Набросок слова – это сводка грамматического и словосочетательного поведения слова (сочетание относится к анализу того, как часто слово встречается вместе с другими словами или фразами). Поскольку данные в корпусах лемматизированы ( то есть слова анализируются, чтобы их можно было вернуть к своей базовой или словарной форме), результаты намного более значимы, чем то, что предоставляет большинство наших инструментов среды перевода, когда они не могут связать разные формы одного слова друг с другом. . Другой вариант наброска слов, который предлагает Sketch Engine, — это сравнение набросков похожих слов.
  • Тезаурус: возможность получить подробный список или графическое облако слов с похожими словами, включая ссылки для создания отчетов о различиях в набросках слов для этих терминов, чтобы понять точные различия в фактическом использовании.
  • Соответствие: поиск отдельных слов, терминов или даже более длинных фраз. Поскольку данные на поддерживаемых языках помечены тегами, также можно искать определенные классы слов или определенные классы слов, которые окружают рассматриваемое слово.
  • Параллельный корпус: поиск двуязычных наборов слов или фраз в контексте. В настоящее время это доступно только для просмотра данных на экране, но вскоре будет предложено в виде загружаемых данных. Это особенно полезно при загрузке собственных памяти переводов (см. ниже).
  • Списки слов: возможность создания списков слов и количества вхождений либо в виде лемм (базовая форма каждого слова), либо в каждой словоформе.
  • Создание собственного корпуса. Для переводчиков это, вероятно, самая захватывающая функция. Вы можете либо загрузить свои собственные воспоминания переводов, либо использовать собственный механизм поисковой системы инструмента (который опирается на Microsoft Bing), чтобы создать список двуязычных веб-сайтов, содержащих термины, относящиеся к вашей области. Вы можете загрузить множество веб-сайтов, содержащих определенные термины, для создания корпуса. Однако вы не можете автоматически совместить их с переведенной версией этого веб-сайта через Sketch Engine. Вы можете выполнять любую из функций, упомянутых ранее, но также можно запустить поиск по ключевым словам в созданном пользователем корпусе, определить релевантные термины и загрузить их в файл Excel или TBX. В настоящее время эта функция доступна для чешского, голландского, английского, французского, немецкого, китайского, итальянского, японского, корейского, польского, португальского, русского и испанского языков. Двуязычная версия этого не за горами.

Много лет назад я думал, что эволюция от TM к другим «более интеллектуальным» языковым инструментам анализа данных и обработки данных будет происходить намного быстрее, но в такой сильно фрагментированной отрасли, как переводческая, все меняется медленно. Я думаю, что такие инструменты, как Sketch Engine, вместе с гораздо более привлекательными возможностями машинного перевода, наконец, сигнализируют о начале перехода и потенциально могут набрать обороты.

P.S. Интересно, что на следующий день после того, как я опубликовал это, ATA также опубликовала сообщение сообщение об анализе корпуса, посвященное инструментам с открытым исходным кодом.

Как всегда, выделение ниже сделано мной.

=====================

Развертывание НЛП и корпусов текстов в переводе

Обработка естественного языка (NLP) — это дисциплина, которая может многое предложить переводчикам и переводчикам, но перевод редко использует эти возможности. Отчасти это может быть связано с тем, что инструменты NLP трудно использовать без определенного уровня навыков в области ИТ. Это то, что команда Sketch Engine поняла 13 лет назад и создала Sketch Engine, инструмент, который делает технологию НЛП доступной для всех. Sketch Engine начинался как инструмент для запросов и управления корпусом, который со временем разработал множество функций, отвечающих потребностям новых пользователей, не относящихся к лингвистическому лагерю, таких как переводчики.

Извлечение терминов — это первая область, в которой НЛП может стать чрезвычайно полезным. Традиционный подход, как правило, основан на n-граммах, где n-грамма представляет собой последовательность любых n слов. Короче говоря, инструмент извлечения терминов найдет наиболее часто встречающиеся n-граммы в тексте, и они будут представлены пользователю как кандидаты терминов. Затем пользователь переходит к следующему шагу: ручной очистке. Нередко можно получить список, в котором нетерминов больше, чем терминов, поэтому ручная очистка стала естественным следующим шагом. Некоторые инструменты извлечения терминов представили списки стоп-слов, и пользователь может даже указать, является ли слово жестким стоп-словом или разрешено ли стоп-слово только в определенных позициях внутри термина. Несмотря на то, что это привело к улучшению, выходные данные по-прежнему содержат много шума, а ручная очистка по-прежнему остается жизненно важным этапом процесса.

В Sketch Engine мы решили направить усилия на извлечение терминов, чтобы добиться более точных результатов за счет использования наших инструментов НЛП и корпусов общих текстов объемом в несколько миллиардов слов.

Основное отличие Sketch Engine от традиционных инструментов извлечения терминов заключается в том, что каждый текст, загружаемый в Sketch Engine, помечается тегами и лемматизируется. Таким образом, система знает, является ли слово глаголом, существительным, прилагательным и т. д., а также знает, какие слова являются склоняемыми или спрягаемыми формами одной и той же базовой формы, называемой леммой. Sketch Engine может отдельно искать работу как существительное и работу как глагол, а также может обрабатывать разные формы существительных (падежи, множественное/единственное число) или глаголов (времена, причастия) как одно и то же слово, если это необходимо. Это то, что должно было быть использовано в термине «извлечение».

Для каждого языка с поддержкой извлечения терминов (16 языков по состоянию на август 2017 г.) мы разработали определения, сообщающие Sketch Engine, как может выглядеть термин на этом языке. Например, Sketch Engine знает, что термин в английском языке, скорее всего, примет форму (существительное+)существительное+существительное или прилагательное+существительное, а в испанском, скорее всего, существительное+прилагательное(+прилагательное) или существительное+описание+существительное. Полные правила более сложны, чем перечисленные здесь. Это немедленно приведет к дисквалификации любых фраз, которые содержат глагол или вообще не содержат существительного.

В дополнение к формату фразы, Sketch Engine также использует свой огромный общий текстовый корпус, который он использует для проверки того, встречается ли фраза, прошедшая проверку формата, в рассматриваемом тексте чаще, чем в обычном языке. Во время этой проверки каждая фраза обрабатывается как единое целое, и вхождения одной и той же фразы ищутся и подсчитываются в общем тексте и сравниваются. одна и та же фраза. Сочетание проверки формата и частотного сравнения приводит к исключительно четким результатам. Вот кандидаты в термины, извлеченные из текстов о фотографии. Ручная очистка не применялась, список представлен в том виде, в котором он выходит из Sketch Engine.

Качество извлечения можно сразу проверить с помощью нового специализированного интерфейса извлечения терминов в Sketch Engine под названием OneClickTerms https://terms.sketchengine.co.uk/.

Хотя большая часть переводческого бизнеса связана с терминологией, сами термины не составляют большую часть текста. Между ними много языка, который не всегда может быть полностью простым для перевода. Переводчики привыкли работать с конкордансами в своих CAT-инструментах, где память переводов (TM) служит источником данных. ТМ достаточно для работы с терминологией, но может быть не так полезно для промежуточного языка. ТМ обычно довольно малы, и при согласовании не находит достаточного количества случаев, чтобы судить о том, какое использование является типичным. Вот здесь и пригодятся общие текстовые корпуса. Слово «общий» относится к тому факту, что эти корпуса были разработаны таким образом, чтобы содержать максимально возможное разнообразие типов текстов и тем. Таким образом, общий корпус текстов будет содержать даже очень специализированные тексты, насыщенные терминологией, а также общий нейтральный текст из различных источников. Sketch Engine содержит корпуса из нескольких миллиардов слов на многих языках. Самый большой корпус — английский, размером 30 миллиардов слов, то есть 30 000 000 000!

Английский 33 100
Немецкий 19 900
Русский 18 300
Французский 12 400
Испанский 11 000
Японский 10 300
Польский 9 700
Арабский 8 300
Итальянский 5 900
Чехия 5100
Каталонская 4800
Португальская 4600
Турецкая 4100Шведская 3900
Венгерская 3200
Румынская 3100
Голландская 3000
Украинская 2700
Датский 2400
Китайский simp 2100
Китайский традиционный 2100
Греческий 2000
Норвежский 2000
Финский 1700
Хорватский 1400
Словацкий 1200 Иврит 1100
Словенский 1000
Литовский 1000
Хинди 900
Болгарский 800
Латышский 700
Эстонский 600
Сербский 600
Корейский 600
Сербский 600
Персидский 500
Мальтийский 500

Корпус такого размера будет возвращать тысячи совпадений для большинства слов или фраз и миллионы для частых. Такое соответствие не может быть обработано человеком. Вот почему мы разработали расширенную функцию, называемую словесным наброском, которая справится с таким объемом информации и представит результаты в компактном и удобном для понимания формате. Слововой набросок представляет собой сводку словесных комбинаций (сочетаний), которые содержит слово, на одной странице. Это даст пользователю мгновенное представление о том, как слово должно использоваться в контексте. Словосочетания представлены группами, отражающими синтаксические отношения. Пример словесного наброска может выглядеть так:

Два миллиона вхождений слова «контракт» были найдены в корпусе и обработаны в приведенном выше резюме словосочетаний, которые пользователь может понять за считанные секунды. Это дает четкое представление о том, какие прилагательные или глаголы являются типичными словосочетаниями, которые сохраняет слово, позволяя пользователю использовать это слово естественно, как это сделал бы носитель языка. Эта информация вычисляется автоматически без какого-либо ручного вмешательства, что означает, что пользователь может генерировать ее для любого слова в языке, включая редкие слова. Настоятельно рекомендуется использовать большие корпуса для получения такой богатой информации. Минимальный размер составляет около 1 миллиарда слов. Меньший корпус также создаст набросок слова, но не с таким количеством информации, а корпус менее 50 миллионов слов вряд ли даст что-то полезное, особенно для менее часто встречающихся слов. Самые большие предварительно загруженные корпуса в Sketch Engine рекомендуются для использования со словесным эскизом.

Наверняка у каждого была ситуация, когда хочется что-то сказать, а нужное слово не приходит в голову. Обычно можно придумать похожее слово, но не то. Это когда тезаурус полезен. Контент традиционного печатного и созданного вручную тезауруса ограничен пространством или деньгами, а часто и тем, и другим. Комбинация НЛП и семантики распределения привела к созданию алгоритмов, которые могут автоматически генерировать записи тезауруса. Идея компьютера, идентифицирующего похожие слова с помощью вычислений, часто вызывает скептицизм, но результаты на удивление полезны. Как алгоритм находит слова, похожие по смыслу? Распределительная семантика утверждает, что слова, которые появляются в сходных контекстах, также имеют сходное значение. Поэтому, чтобы найти синоним для существительного, Sketch Engine сравнивает слова наброски для всех существительных, найденных в корпусе. Слова с наиболее похожим наброском слова будут идентифицированы как синонимы или похожие слова. Вот пример того, что предложит Sketch Engine, если вам нужно слово, похожее на авторизацию:

разрешение
согласие
одобрение
разрешение
разрешение
уведомление
проверка
документацияподтверждение
лицензия
надзор
раскрытие информации
отказ от прав
лицензия
освобождение от ответственности
сертификат компенсация
регистрация
сертификация
уведомление
ограничение
возмещение расходов
приемлемость Синонимы отсортированы по показателю сходства, рассчитанному на основе сходства набросков каждого слова. Верхняя часть списка (первая колонка) является наиболее ценной. Список содержит некоторые слова, которые не являются очень хорошими синонимами, и они перечислены, потому что словосочетания, которые они образуют, подобны словосочетаниям авторизации. Это, однако, по-прежнему делает список очень полезным, потому что функциональность тезауруса будет использоваться кем-то с приличным знанием языка, и эти слова служат предложениями, из которых пользователь выберет наиболее подходящее.

Для слов, которые не могут иметь синонимов, тезаурус создаст список слов, принадлежащих к той же категории или той же теме. Это тезаурус для степлера:

блокноты
скрепка
точилка
ножницы
ластик
маркер
гвоздодер
плоскогубцы
фломастер
стикер
/> мелок
отвертка
транспортир
кисть
чертежная ножовка
гаечный ключ
шило
скальпель
копировальный аппарат
триммер Этот тип записи тезауруса может помочь вспомнить слово из той же категории. Примеры в контексте — соответствие

Sketch Engine также имеет совместимость с простыми и сложными параметрами поиска, где пользователь может искать как свои собственные тексты, так и предварительно загруженные корпуса. Параметры позволяют осуществлять поиск точно по набранному тексту, а также по лемме (базовая форма слова, которая будет находить также все производные формы) или ограничивать поиск по частям речи или грамматическим категориям, таким как время глагола. Он даже позволяет искать лексические или грамматические модели без указания конкретных слов. Это интересное соответствие показывает примеры последовательностей существительных, соединенных предлогом of. Это то, что мне действительно пришлось искать недавно, чтобы проверить, сколько я могу использовать подряд. Хотя само согласование не давало прямого ответа на вопрос, я мог видеть, что использовать использование 3 of 's нормально, если выражение состоит из чисел и единиц измерения, как я изначально использовал его в своем предложении, и согласование помогло мне проверить, что я был прав.

Sketch Engine также содержит параллельные многоязычные корпуса, которые можно использовать для поиска перевода. Опять же, как простые, так и сложные критерии поиска могут применяться как на первом, так и на втором языке. Это позволит пользователю узнать о ситуациях, когда слово не переводится наиболее очевидным эквивалентом. Например, этот поиск ищет слово транспортное средство на английском языке и соответствующие сегменты испанского языка, не содержащие vehículo, чтобы обнаружить случаи, когда это может потребоваться перевести по-другому.

Это особенно ценно для пользователей, у которых нет НП или НП недостаточно велик для обеспечения требуемого охвата. Пользователи с TM могут загрузить его в Sketch Engine, чтобы получить доступ к расширенным инструментам поиска.

Sketch Engine имеет встроенный инструмент для автоматизированного построения корпусов. Пользователю не нужны никакие технические знания для построения корпуса. Достаточно загрузить свои данные (тексты, документы) и если у пользователя нет подходящих данных, Sketch Engine автоматически найдет их в интернете, скачает и сконвертирует в корпус. Создание специализированного корпуса на 100 000 слов занимает всего несколько минут.

Первый вариант очевиден — пользователь загружает свои тексты и документы, а Sketch Engine их лемматизирует и тегирует, и корпус готов.

Если у пользователя нет подходящих текстов или их длина недостаточна, можно использовать несколько ключевых слов, определяющих тему. Например, ключевыми словами, определяющими уход за зубами, могут быть: зуб, десна, полость, уход. Sketch Engine будет использовать эти ключевые слова для создания поисковых запросов в Интернете и будет взаимодействовать с Bing. Bing найдет страницы, соответствующие веб-поиску, и вернет URL-адреса обратно в Sketch Engine, где содержимое URL-адресов будет загружено, очищено, помечено, лемматизировано и преобразовано в корпус. Вся процедура занимает всего несколько минут. Это отличный инструмент для всех, кому нужен надежный образец специализированного языка, чтобы изучить, как термины и фразы используются правильно и естественно.

Бесплатная 30-дневная версия Sketch Engine, предоставляющая доступ ко всем функциям и предварительно загруженным корпусам на многих языках, доступна на веб-сайте Sketch Engine: https://www.sketchengine.co.uk.

— — —

Ондржей курирует деятельность по продажам и маркетингу, а также внешние коммуникации. Он является основным контактным лицом для всех, кто ищет информацию о Sketch Engine, а также стремится поддерживать существующих пользователей, чтобы они могли максимально эффективно использовать Sketch Engine.

Первоначально опубликовано на сайте kv-emptypages.blogspot.com 1 сентября 2017 г.