dialogue-evaluation / GramEval2020

21 stars 6 forks source link

17 century corpus issues #9

Open Shnurre opened 4 years ago

Shnurre commented 4 years ago

Коллеги, хотелось бы поднять вопрос консистентности исторического подкорпуса сорвевнования.

Нетрудно убедиться, что обучающая выборка состоит из текстов 2 типов: 1.Тексты в исторической орфографии (с 'ъ', 'ѣ' и т. п.), для токенов которых отсутствуют леммы (лемма каждого токена «_»).

  1. Тексты в современной орфографии, для токенов которых есть леммы. Стоит отметить, что по какой-то причине все леммы для текстов этого типа записаны в исторической орфографии (с 'ъ', 'ѣ' и т. п.). При этом, если все тексты dev относятся ко второму классу, то среди train текстов второго класса только порядка 40 процентов. Ясно, что для любых моделей, которые содержат в себе символьные компоненты (в т. ч. BERT-подобные модели) тексты первого вида практически бесполезны для решения задач на текстах второго вида (в предположении что test так же, как и dev состоит только из текстов второго вида; хотелось бы получить подтверждение оргкомитета, что это действительно так).

Отдельный вопрос вызывает задача лемматизации – кажется, что ни на каком множестве текстов нет достаточных данных для полноценного решения задачи (на текстах первого вида лемм нет, а на текстах второго вида леммы даны в отличающейся орфографии).

Понятно, что для хоть сколько-нибудь адекватного обучения нужен конвертер из исторической орфографии в современную или наоборот и что именно качеством такого конвертера будут, прежде всего, определяться результаты на историческом корпусе, что, в свою очередь внесет существенный вклад в общие результаты соревнования. Такое смещение задачи с задачи морфологического и синтаксического анализа на задачу конвертации орфографии вызывает вопросы. Входит ли такая смена фокуса в намерения оргкомитета?

Если нет, то, наверное, было бы уместно привести все данные к одному консистентному формату, предпочтительнее всего, в современную орфографию с леммами в современной орфографии. Другой возможный вариант – публикация организаторами скрипта по конвертации из исторической орфографии в современную для того, чтобы участники могли сконцентрироваться на задачах морфологического и синтаксического анализа.

olesar commented 4 years ago

@Shnurre и коллеги, по лемматизации 17 века -- я вижу два решения: 1) поскольку в обучающих данных нет лемм (а там, где они есть, это кажется ошибкой программы разметки), кажется разумным не оценивать эту задачу. Тогда результирующая максимальная оценка, для простоты подсчетов, будет, скажем, 0.97, а не 1.00 2) у нас есть словарь лемм для доразметки train, но все равно она будет частичной. Не будет ли это поздно?

olesar commented 4 years ago

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

О соотношении некоторых распределений в train и dev 17 века: при подготовке данных ни одно из распределений не контролировалось (не только историческая орфография, но и профили поведения частей речи, грамматических тегов, порядка слов, синтаксических тегов - всего, что может влиять). Мы исходим из очень ограниченного набора доступных тестовых данных, размеченных вручную специалистами по языку того периода, train в понимании shared task CONLL2017/18 (то есть многомиллионных коллекций, также размеченных вручную) здесь нет. Что точно известно, что текущий dev и test из одного орфографического распределения.

Вы предлагаете один из возможных подходов, основанный на распределении символов -- да, подозреваю, вы правы, он работать не будет.

Shnurre commented 4 years ago

@Shnurre и коллеги, по лемматизации 17 века -- я вижу два решения:

1. поскольку в обучающих данных нет лемм (а там, где они есть, это кажется ошибкой программы разметки), кажется разумным не оценивать эту задачу.
   Тогда результирующая максимальная оценка, для простоты подсчетов, будет, скажем, 0.97, а не 1.00

Да, думаю задачу лемматизации на текстах 17 века было бы уместно снять.

Shnurre commented 4 years ago

Вы предлагаете один из возможных подходов, основанный на распределении символов -- да, подозреваю, вы правы, он работать не будет.

Мое замечание было не о том, что не работает какой-то конкретный подход. Даже если в сети отсутствует непосредственно символьная компонента, все признаки которые используются в NLP (от словоформенных эмбеддингов до тех же BERT) опираются на графический вид токена. Проблема с корпусом 17 века в этом отношении не в том, что написание отличается от современного, проблема в том, что написание отличается от одной части трейна к другой. У этого есть и объективные предпосылки (известно, что де-факто норм правописания в XVII веке не было), но процитированные в моем первом сообщении проблемы непосредственно обучающего корпуса достаточно серьезно усугубляют эти объективные сложности.

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

kirdin commented 4 years ago

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

olesar commented 4 years ago

Дорогие коллеги, поскольку dev для 17 века - это константа (см. выше, других материалов, размеченных на достойном уровне, в распоряжении организаторов нет), то "разбить по-другому" между девом и трейном, что руками, что нет -- нереализуемо. Могу предложить участникам на своей стороне убрать часть трейна, чтобы дев и трейн стали "из одного распределения", или выделить какой-то другой дев и с ним экспериментировать.

kirdin commented 4 years ago

Коллеги,

1) Не очень понимаю, почему dev -- константа, кажется, что можно было бы и сейчас поменять, перемешав с трейном. Ну хорошо, действительно, можно и на своей стороне сделать.

2) С интересом слежу за дискуссией про леммы 17 века и тоже поддерживаю вариант с их исключением.

TatianaShavrina commented 4 years ago

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

kirdin commented 4 years ago

Позволю себе заметить, что считаю это решение довольно странным: в отсутствие обучающих данных и даже, см. дискуссию выше, консистентности в них, оставлять некоторый черный ящик в тесте и говорить -- ну, там все равно у всех будет плохо -- кажется не самым удачным решением.

Вроде как цель соревнования -- найти самые удачные решения для разных сегментов русского языка и, цитируя Ольгу, "апробировать разные трансферные подходы". А не показать, что есть какая-то точка, где всем будет больно и плохо, из-за некачественных или вообще отсутствующих обучающих данных; эта точка, разумеется, всегда будет больной: очевидно, что на каких бы данных мы ни соревновались -- если оставить какой-то сегмент (в нашем случае, это леммы 17 века) без данных, на этом сегменте будет плохо. Но плохо там будет не потому, что этот сегмент какой-то плохо поддающийся обучению, а по понятным причинам.

С тем же успехом можно было оставить поэтические синтаксические связи без разметки и сказать "оставьте там дефолтную синтаксическую модель, там у всех будет плохо". Ну будет -- но разве соревнование про это? Я-то думал, про, в том числе, написание хорошего лемматизатора для 17 века, а не про то, что его, якобы, невозможно сделать хорошим...

Кажется, что таким образом мы просто теряем точку для адекватного сравнения участников по прихоти организаторов, но это бог с ним; куда хуже, что незаинтересованный в самом соревновании читатель по итогам цифр скажет "ой, как все плохо с леммами 17 века, по итогам соревнования задача осталась нерешенной" -- но дело в том, что у участников даже не будет возможности решить эту задачу, хоть она и заявляется на соревновании как полноценная.

Я не к тому, чтобы в последние сутки что-то менять, я к дискуссии о логике и справедливости.

victorbocharov commented 4 years ago
2\. С интересом слежу за дискуссией про леммы 17 века и тоже поддерживаю вариант с их исключением.

Присоединяюсь к поддержке исключения лемм 17 века из оценки.