Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

17 century corpus issues #9

Open
Shnurre opened this issue Feb 11, 2020 · 10 comments
Open

17 century corpus issues #9

Shnurre opened this issue Feb 11, 2020 · 10 comments

Comments

@Shnurre
Copy link
Contributor

Shnurre commented Feb 11, 2020

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

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

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

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

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

@olesar
Copy link
Collaborator

olesar commented Feb 12, 2020

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

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

@olesar
Copy link
Collaborator

olesar commented Feb 12, 2020

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

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

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

@Shnurre
Copy link
Contributor Author

Shnurre commented Feb 13, 2020

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

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

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

@Shnurre
Copy link
Contributor Author

Shnurre commented Feb 13, 2020

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

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

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

@kirdin
Copy link

kirdin commented Feb 13, 2020

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

@olesar
Copy link
Collaborator

olesar commented Feb 16, 2020

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

@kirdin
Copy link

kirdin commented Feb 17, 2020

Коллеги,

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

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

@TatianaShavrina
Copy link
Contributor

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

@kirdin
Copy link

kirdin commented Feb 25, 2020

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

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

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

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

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

@victorbocharov
Copy link
Contributor

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

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants