SlideShare una empresa de Scribd logo
1 de 40
Descargar para leer sin conexión
Как и зачем мы делаем Открытый корпус




            Как и зачем мы делаем Открытый корпус

                          В. В. Бочаров Д. В. Грановский
                                          Mathlingvo



                                        14 мая 2011 г.
Как и зачем мы делаем Открытый корпус




Жизненный цикл текста

        1   Исходный текст
                 под лицензией, совместимой с CC-BY-SA
                 проходит вычитку
                 делится на абзацы, предложения и токены
Как и зачем мы делаем Открытый корпус




Жизненный цикл текста

        1   Исходный текст
                 под лицензией, совместимой с CC-BY-SA
                 проходит вычитку
                 делится на абзацы, предложения и токены
        2   Морфологические интерпретации
                 словарь на базе словаря проекта АОТ
                 но морфологический стандарт — свой
                 генерируются все возможные гипотезы
Как и зачем мы делаем Открытый корпус




Жизненный цикл текста

        1   Исходный текст
                 под лицензией, совместимой с CC-BY-SA
                 проходит вычитку
                 делится на абзацы, предложения и токены
        2   Морфологические интерпретации
                 словарь на базе словаря проекта АОТ
                 но морфологический стандарт — свой
                 генерируются все возможные гипотезы
        3   Полуавтоматика (сейчас её нет)
                 привязка к словарю на основе эвристик
                 снятие простой неоднозначности
Как и зачем мы делаем Открытый корпус




Жизненный цикл текста

        1   Исходный текст
                 под лицензией, совместимой с CC-BY-SA
                 проходит вычитку
                 делится на абзацы, предложения и токены
        2   Морфологические интерпретации
                 словарь на базе словаря проекта АОТ
                 но морфологический стандарт — свой
                 генерируются все возможные гипотезы
        3   Полуавтоматика (сейчас её нет)
                 привязка к словарю на основе эвристик
                 снятие простой неоднозначности
        4   Ручное снятие неоднозначности пользователями
Как и зачем мы делаем Открытый корпус




Жизненный цикл текста

        1   Исходный текст
                 под лицензией, совместимой с CC-BY-SA
                 проходит вычитку
                 делится на абзацы, предложения и токены
        2   Морфологические интерпретации
                 словарь на базе словаря проекта АОТ
                 но морфологический стандарт — свой
                 генерируются все возможные гипотезы
        3   Полуавтоматика (сейчас её нет)
                 привязка к словарю на основе эвристик
                 снятие простой неоднозначности
        4   Ручное снятие неоднозначности пользователями
        5   Разметка доступна для просмотра и скачивания
Как и зачем мы делаем Открытый корпус




Уровни текста
     Концептуальные уровни:
        1   Графематика
        2   Морфология
        3   Синтаксис (в отдаленных планах)
        4   Семантика (в совсем отдаленных планах)
        5   Something else?
Как и зачем мы делаем Открытый корпус




Уровни текста
     Концептуальные уровни:
        1   Графематика
        2   Морфология
        3   Синтаксис (в отдаленных планах)
        4   Семантика (в совсем отдаленных планах)
        5   Something else?
     4 иерархических уровня деления (это графематика):
        1   Текст
        2   Абзац
        3   Предложение
        4   Токен*
     * некоторая последовательность символов без пробелов
Как и зачем мы делаем Открытый корпус




Токенизация




     Как разделить текст на эти единицы?
           на абзацы – взять из источника
Как и зачем мы делаем Открытый корпус




Токенизация




     Как разделить текст на эти единицы?
           на абзацы – взять из источника
           на предложения – пока вручную
Как и зачем мы делаем Открытый корпус




Токенизация




     Как разделить текст на эти единицы?
           на абзацы – взять из источника
           на предложения – пока вручную
           на токены – полуавтоматически
Как и зачем мы делаем Открытый корпус




Токенизация



     Токенизация должна быть:
           единообразной
           удобной для морфологии
     Проблемы ручной токенизации:
           очень трудоемко
           трудно обеспечить единообразие
           не все отличия видны глазами
Как и зачем мы делаем Открытый корпус




Токенизация-2

     Используем простое машинное обучение:
           корпус предложений, уже разделенных на токены (внутри
           текста расставлены границы)
Как и зачем мы делаем Открытый корпус




Токенизация-2

     Используем простое машинное обучение:
           корпус предложений, уже разделенных на токены (внутри
           текста расставлены границы)
           набор бинарных характеристических функций (15 шт.)
           F1 = «является ли данный символ пробелом»
           ...
           F7 = «является ли данный символ буквой кириллицы»
           ...
           F15 = «является ли цепочка символов от ближайшего
           пробела слева до ближайшего пробела справа словарным
           словом»
Как и зачем мы делаем Открытый корпус




Токенизация-2

     Используем простое машинное обучение:
           корпус предложений, уже разделенных на токены (внутри
           текста расставлены границы)
           набор бинарных характеристических функций (15 шт.)
           F1 = «является ли данный символ пробелом»
           ...
           F7 = «является ли данный символ буквой кириллицы»
           ...
           F15 = «является ли цепочка символов от ближайшего
           пробела слева до ближайшего пробела справа словарным
           словом»
           вычисляем все эти функции для каждой позиции в
           предложении
Как и зачем мы делаем Открытый корпус




Токенизация-3

     Используем простое машинное обучение:
           для каждой позиции получается двоичный вектор
           Позиция 1: 001000010000000
           Позиция 2: 100000100000010
           ...
Как и зачем мы делаем Открытый корпус




Токенизация-3

     Используем простое машинное обучение:
           для каждой позиции получается двоичный вектор
           Позиция 1: 001000010000000
           Позиция 2: 100000100000010
           ...
           для каждой позиции знаем, проходит ли в ней граница
           токенов
Как и зачем мы делаем Открытый корпус




Токенизация-3

     Используем простое машинное обучение:
           для каждой позиции получается двоичный вектор
           Позиция 1: 001000010000000
           Позиция 2: 100000100000010
           ...
           для каждой позиции знаем, проходит ли в ней граница
           токенов
           для каждого двоичного вектора на корпусе вычисляется
           вероятность того, что в позиции с таким вектором есть
           граница токенов
Как и зачем мы делаем Открытый корпус




Токенизация-3

     Используем простое машинное обучение:
           для каждой позиции получается двоичный вектор
           Позиция 1: 001000010000000
           Позиция 2: 100000100000010
           ...
           для каждой позиции знаем, проходит ли в ней граница
           токенов
           для каждого двоичного вектора на корпусе вычисляется
           вероятность того, что в позиции с таким вектором есть
           граница токенов
           в реальном тексте в каждой позиции тоже вычисляем
           вектор и смотрим вероятность
Как и зачем мы делаем Открытый корпус




Токенизация-4

     Так выглядит обучение:
Как и зачем мы делаем Открытый корпус




Токенизация-5

     Получаемое деление – вероятностное, поэтому его нужно
     проверять глазами:
Как и зачем мы делаем Открытый корпус




Токенизация-5

     Получаемое деление – вероятностное, поэтому его нужно
     проверять глазами:
Как и зачем мы делаем Открытый корпус




     Вопросы про токенизацию?
Как и зачем мы делаем Открытый корпус




Морфология


     Суть морфологического уровня:
           связать токен с морфологическим словарем
           или обозначить, что токен не является словом
Как и зачем мы делаем Открытый корпус




Морфология


     Суть морфологического уровня:
           связать токен с морфологическим словарем
           или обозначить, что токен не является словом
     Зачем нужен морфологический словарь?
           можно изменить конкретный разбор конкретной
           словоформы во всем корпусе сразу
           легче находить опечатки
           в будущем можно будет добавлять лексико-семантическую
           информацию, почти не меняя разметку
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
           описание слова = лемма + набор форм (парадигма) +
           набор граммем леммы
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
           описание слова = лемма + набор форм (парадигма) +
           набор граммем леммы
           описание формы = текст + набор граммем формы
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
           описание слова = лемма + набор форм (парадигма) +
           набор граммем леммы
           описание формы = текст + набор граммем формы
           леммы связаны между собой связями
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
           описание слова = лемма + набор форм (парадигма) +
           набор граммем леммы
           описание формы = текст + набор граммем формы
           леммы связаны между собой связями
           словарь можно редактировать
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
           описание слова = лемма + набор форм (парадигма) +
           набор граммем леммы
           описание формы = текст + набор граммем формы
           леммы связаны между собой связями
           словарь можно редактировать
           сочетаемость граммем регулируется моделью морфологии,
           которая выражена в виде набора правил
Как и зачем мы делаем Открытый корпус




Морфология-2

           за основу взят словарь группы АОТ
           описание слова = лемма + набор форм (парадигма) +
           набор граммем леммы
           описание формы = текст + набор граммем формы
           леммы связаны между собой связями
           словарь можно редактировать
           сочетаемость граммем регулируется моделью морфологии,
           которая выражена в виде набора правил
           каждое правило имеет вид:
           «Если у [леммы/формы] есть граммема А, то у
           [леммы/формы] [должна быть/не должно быть/может
           быть] граммема Б»
Как и зачем мы делаем Открытый корпус




Морфология-3


     Модель нужна, чтобы отслеживать ошибки, присутствующие в
     словаре изначально или вносимые редакторами.
     Примеры правил:
           NOUN -> NMbr (лемма -> форма, обязательно)
           VERB -> ASpc (лемма -> лемма, обязательно)
           indc -> TEns (форма -> форма, обязательно)
           VERB -> Impe (лемма -> лемма, возможно)
           Impe -> PErs (лемма -> форма, запрещено)
     Всего сейчас 107 граммем и 127 правил + 218 автоматически
     выведенных.
Как и зачем мы делаем Открытый корпус




Морфология-4



     Итого в словаре бывает 5 типов ошибок:
        1   неизвестная граммема
        2   несовместимые граммемы
        3   явно не разрешенная правилами граммема
        4   отсутствует обязательная граммема
        5   две формы в рамках парадигмы имеют полностью
            совпадающие наборы граммем
Как и зачем мы делаем Открытый корпус




     Вопросы про морфологию?
Как и зачем мы делаем Открытый корпус




Разрешение неоднозначности



     2 этапа: (полу)автоматический (сейчас нет), ручной.
Как и зачем мы делаем Открытый корпус




Разрешение неоднозначности



     2 этапа: (полу)автоматический (сейчас нет), ручной.
     Ручное разрешение морфологической неоднозначности –
     основная задача, для которой мы хотим привлекать
     пользователей-разметчиков.
Как и зачем мы делаем Открытый корпус




Разрешение неоднозначности



     2 этапа: (полу)автоматический (сейчас нет), ручной.
     Ручное разрешение морфологической неоднозначности –
     основная задача, для которой мы хотим привлекать
     пользователей-разметчиков.
     От разметчика требуется:
           исключить неверные разборы, в идеальном случае –
           выбрать один
           или отметить, что верный разбор отсутствует
Как и зачем мы делаем Открытый корпус




Интерфейс разрешения неоднозначности




     (Here be live demonstration)
Как и зачем мы делаем Открытый корпус




Contacts



                            Берем студентов на практику!


                          http://opencorpora.org
                       granovsky@opencorpora.org
                        bocharov@opencorpora.org

Más contenido relacionado

Destacado

WiPromo Overview
WiPromo OverviewWiPromo Overview
WiPromo OverviewAlex Tilt
 
Executive Order: Modified Standarization Law 201
Executive Order: Modified Standarization Law 201Executive Order: Modified Standarization Law 201
Executive Order: Modified Standarization Law 201Melanio Florino
 
Cars
CarsCars
Carsshore
 
Data Mining Protein Structures' Topological Properties to Enhance Contact Ma...
Data Mining Protein Structures' Topological Properties  to Enhance Contact Ma...Data Mining Protein Structures' Topological Properties  to Enhance Contact Ma...
Data Mining Protein Structures' Topological Properties to Enhance Contact Ma...jaumebp
 

Destacado (10)

WiPromo Overview
WiPromo OverviewWiPromo Overview
WiPromo Overview
 
Klimenko
KlimenkoKlimenko
Klimenko
 
морфология
морфологияморфология
морфология
 
Executive Order: Modified Standarization Law 201
Executive Order: Modified Standarization Law 201Executive Order: Modified Standarization Law 201
Executive Order: Modified Standarization Law 201
 
IET Welcome
IET WelcomeIET Welcome
IET Welcome
 
Scrum on rails
Scrum on railsScrum on rails
Scrum on rails
 
Cars
CarsCars
Cars
 
AINL 2016: Grigorieva
AINL 2016: GrigorievaAINL 2016: Grigorieva
AINL 2016: Grigorieva
 
Data Mining Protein Structures' Topological Properties to Enhance Contact Ma...
Data Mining Protein Structures' Topological Properties  to Enhance Contact Ma...Data Mining Protein Structures' Topological Properties  to Enhance Contact Ma...
Data Mining Protein Structures' Topological Properties to Enhance Contact Ma...
 
Business Meeting Twente Inspirerende Marketing En Communicatievormen
Business Meeting Twente Inspirerende Marketing En CommunicatievormenBusiness Meeting Twente Inspirerende Marketing En Communicatievormen
Business Meeting Twente Inspirerende Marketing En Communicatievormen
 

Similar a Open Corpora

словообразование теория
словообразование теориясловообразование теория
словообразование теорияENatali70
 
NLTK и Python для работы с текстами
NLTK и Python для работы с текстами  NLTK и Python для работы с текстами
NLTK и Python для работы с текстами NLProc.by
 
Предварительная обработка и разметка корпуса текстов
Предварительная обработка и разметка корпуса текстовПредварительная обработка и разметка корпуса текстов
Предварительная обработка и разметка корпуса текстовArtem Lukanin
 
Особые корпусы текстов
Особые корпусы текстовОсобые корпусы текстов
Особые корпусы текстовArtem Lukanin
 
Корпус современного американского английского
Корпус современного американского английскогоКорпус современного американского английского
Корпус современного американского английскогоmaymarina19
 

Similar a Open Corpora (6)

Promt
PromtPromt
Promt
 
словообразование теория
словообразование теориясловообразование теория
словообразование теория
 
NLTK и Python для работы с текстами
NLTK и Python для работы с текстами  NLTK и Python для работы с текстами
NLTK и Python для работы с текстами
 
Предварительная обработка и разметка корпуса текстов
Предварительная обработка и разметка корпуса текстовПредварительная обработка и разметка корпуса текстов
Предварительная обработка и разметка корпуса текстов
 
Особые корпусы текстов
Особые корпусы текстовОсобые корпусы текстов
Особые корпусы текстов
 
Корпус современного американского английского
Корпус современного американского английскогоКорпус современного американского английского
Корпус современного американского английского
 

Más de Lidia Pivovarova

Classification and clustering in media monitoring: from knowledge engineering...
Classification and clustering in media monitoring: from knowledge engineering...Classification and clustering in media monitoring: from knowledge engineering...
Classification and clustering in media monitoring: from knowledge engineering...Lidia Pivovarova
 
Convolutional neural networks for text classification
Convolutional neural networks for text classificationConvolutional neural networks for text classification
Convolutional neural networks for text classificationLidia Pivovarova
 
Grouping business news stories based on salience of named entities
Grouping business news stories based on salience of named entitiesGrouping business news stories based on salience of named entities
Grouping business news stories based on salience of named entitiesLidia Pivovarova
 
Интеллектуальный анализ текста
Интеллектуальный анализ текстаИнтеллектуальный анализ текста
Интеллектуальный анализ текстаLidia Pivovarova
 
AINL 2016: Bodrunova, Blekanov, Maksimov
AINL 2016: Bodrunova, Blekanov, MaksimovAINL 2016: Bodrunova, Blekanov, Maksimov
AINL 2016: Bodrunova, Blekanov, MaksimovLidia Pivovarova
 
AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...
AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...
AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...Lidia Pivovarova
 
AINL 2016: Galinsky, Alekseev, Nikolenko
AINL 2016: Galinsky, Alekseev, NikolenkoAINL 2016: Galinsky, Alekseev, Nikolenko
AINL 2016: Galinsky, Alekseev, NikolenkoLidia Pivovarova
 

Más de Lidia Pivovarova (20)

Classification and clustering in media monitoring: from knowledge engineering...
Classification and clustering in media monitoring: from knowledge engineering...Classification and clustering in media monitoring: from knowledge engineering...
Classification and clustering in media monitoring: from knowledge engineering...
 
Convolutional neural networks for text classification
Convolutional neural networks for text classificationConvolutional neural networks for text classification
Convolutional neural networks for text classification
 
Grouping business news stories based on salience of named entities
Grouping business news stories based on salience of named entitiesGrouping business news stories based on salience of named entities
Grouping business news stories based on salience of named entities
 
Интеллектуальный анализ текста
Интеллектуальный анализ текстаИнтеллектуальный анализ текста
Интеллектуальный анализ текста
 
AINL 2016: Yagunova
AINL 2016: YagunovaAINL 2016: Yagunova
AINL 2016: Yagunova
 
AINL 2016: Kuznetsova
AINL 2016: KuznetsovaAINL 2016: Kuznetsova
AINL 2016: Kuznetsova
 
AINL 2016: Bodrunova, Blekanov, Maksimov
AINL 2016: Bodrunova, Blekanov, MaksimovAINL 2016: Bodrunova, Blekanov, Maksimov
AINL 2016: Bodrunova, Blekanov, Maksimov
 
AINL 2016: Boldyreva
AINL 2016: BoldyrevaAINL 2016: Boldyreva
AINL 2016: Boldyreva
 
AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...
AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...
AINL 2016: Rykov, Nagornyy, Koltsova, Natta, Kremenets, Manovich, Cerrone, Cr...
 
AINL 2016: Kozerenko
AINL 2016: Kozerenko AINL 2016: Kozerenko
AINL 2016: Kozerenko
 
AINL 2016: Khudobakhshov
AINL 2016: KhudobakhshovAINL 2016: Khudobakhshov
AINL 2016: Khudobakhshov
 
AINL 2016: Proncheva
AINL 2016: PronchevaAINL 2016: Proncheva
AINL 2016: Proncheva
 
AINL 2016: Bugaychenko
AINL 2016: BugaychenkoAINL 2016: Bugaychenko
AINL 2016: Bugaychenko
 
AINL 2016: Muravyov
AINL 2016: MuravyovAINL 2016: Muravyov
AINL 2016: Muravyov
 
AINL 2016: Just AI
AINL 2016: Just AIAINL 2016: Just AI
AINL 2016: Just AI
 
AINL 2016: Moskvichev
AINL 2016: MoskvichevAINL 2016: Moskvichev
AINL 2016: Moskvichev
 
AINL 2016: Goncharov
AINL 2016: GoncharovAINL 2016: Goncharov
AINL 2016: Goncharov
 
AINL 2016: Malykh
AINL 2016: MalykhAINL 2016: Malykh
AINL 2016: Malykh
 
AINL 2016: Filchenkov
AINL 2016: FilchenkovAINL 2016: Filchenkov
AINL 2016: Filchenkov
 
AINL 2016: Galinsky, Alekseev, Nikolenko
AINL 2016: Galinsky, Alekseev, NikolenkoAINL 2016: Galinsky, Alekseev, Nikolenko
AINL 2016: Galinsky, Alekseev, Nikolenko
 

Open Corpora

  • 1. Как и зачем мы делаем Открытый корпус Как и зачем мы делаем Открытый корпус В. В. Бочаров Д. В. Грановский Mathlingvo 14 мая 2011 г.
  • 2. Как и зачем мы делаем Открытый корпус Жизненный цикл текста 1 Исходный текст под лицензией, совместимой с CC-BY-SA проходит вычитку делится на абзацы, предложения и токены
  • 3. Как и зачем мы делаем Открытый корпус Жизненный цикл текста 1 Исходный текст под лицензией, совместимой с CC-BY-SA проходит вычитку делится на абзацы, предложения и токены 2 Морфологические интерпретации словарь на базе словаря проекта АОТ но морфологический стандарт — свой генерируются все возможные гипотезы
  • 4. Как и зачем мы делаем Открытый корпус Жизненный цикл текста 1 Исходный текст под лицензией, совместимой с CC-BY-SA проходит вычитку делится на абзацы, предложения и токены 2 Морфологические интерпретации словарь на базе словаря проекта АОТ но морфологический стандарт — свой генерируются все возможные гипотезы 3 Полуавтоматика (сейчас её нет) привязка к словарю на основе эвристик снятие простой неоднозначности
  • 5. Как и зачем мы делаем Открытый корпус Жизненный цикл текста 1 Исходный текст под лицензией, совместимой с CC-BY-SA проходит вычитку делится на абзацы, предложения и токены 2 Морфологические интерпретации словарь на базе словаря проекта АОТ но морфологический стандарт — свой генерируются все возможные гипотезы 3 Полуавтоматика (сейчас её нет) привязка к словарю на основе эвристик снятие простой неоднозначности 4 Ручное снятие неоднозначности пользователями
  • 6. Как и зачем мы делаем Открытый корпус Жизненный цикл текста 1 Исходный текст под лицензией, совместимой с CC-BY-SA проходит вычитку делится на абзацы, предложения и токены 2 Морфологические интерпретации словарь на базе словаря проекта АОТ но морфологический стандарт — свой генерируются все возможные гипотезы 3 Полуавтоматика (сейчас её нет) привязка к словарю на основе эвристик снятие простой неоднозначности 4 Ручное снятие неоднозначности пользователями 5 Разметка доступна для просмотра и скачивания
  • 7. Как и зачем мы делаем Открытый корпус Уровни текста Концептуальные уровни: 1 Графематика 2 Морфология 3 Синтаксис (в отдаленных планах) 4 Семантика (в совсем отдаленных планах) 5 Something else?
  • 8. Как и зачем мы делаем Открытый корпус Уровни текста Концептуальные уровни: 1 Графематика 2 Морфология 3 Синтаксис (в отдаленных планах) 4 Семантика (в совсем отдаленных планах) 5 Something else? 4 иерархических уровня деления (это графематика): 1 Текст 2 Абзац 3 Предложение 4 Токен* * некоторая последовательность символов без пробелов
  • 9. Как и зачем мы делаем Открытый корпус Токенизация Как разделить текст на эти единицы? на абзацы – взять из источника
  • 10. Как и зачем мы делаем Открытый корпус Токенизация Как разделить текст на эти единицы? на абзацы – взять из источника на предложения – пока вручную
  • 11. Как и зачем мы делаем Открытый корпус Токенизация Как разделить текст на эти единицы? на абзацы – взять из источника на предложения – пока вручную на токены – полуавтоматически
  • 12. Как и зачем мы делаем Открытый корпус Токенизация Токенизация должна быть: единообразной удобной для морфологии Проблемы ручной токенизации: очень трудоемко трудно обеспечить единообразие не все отличия видны глазами
  • 13. Как и зачем мы делаем Открытый корпус Токенизация-2 Используем простое машинное обучение: корпус предложений, уже разделенных на токены (внутри текста расставлены границы)
  • 14. Как и зачем мы делаем Открытый корпус Токенизация-2 Используем простое машинное обучение: корпус предложений, уже разделенных на токены (внутри текста расставлены границы) набор бинарных характеристических функций (15 шт.) F1 = «является ли данный символ пробелом» ... F7 = «является ли данный символ буквой кириллицы» ... F15 = «является ли цепочка символов от ближайшего пробела слева до ближайшего пробела справа словарным словом»
  • 15. Как и зачем мы делаем Открытый корпус Токенизация-2 Используем простое машинное обучение: корпус предложений, уже разделенных на токены (внутри текста расставлены границы) набор бинарных характеристических функций (15 шт.) F1 = «является ли данный символ пробелом» ... F7 = «является ли данный символ буквой кириллицы» ... F15 = «является ли цепочка символов от ближайшего пробела слева до ближайшего пробела справа словарным словом» вычисляем все эти функции для каждой позиции в предложении
  • 16. Как и зачем мы делаем Открытый корпус Токенизация-3 Используем простое машинное обучение: для каждой позиции получается двоичный вектор Позиция 1: 001000010000000 Позиция 2: 100000100000010 ...
  • 17. Как и зачем мы делаем Открытый корпус Токенизация-3 Используем простое машинное обучение: для каждой позиции получается двоичный вектор Позиция 1: 001000010000000 Позиция 2: 100000100000010 ... для каждой позиции знаем, проходит ли в ней граница токенов
  • 18. Как и зачем мы делаем Открытый корпус Токенизация-3 Используем простое машинное обучение: для каждой позиции получается двоичный вектор Позиция 1: 001000010000000 Позиция 2: 100000100000010 ... для каждой позиции знаем, проходит ли в ней граница токенов для каждого двоичного вектора на корпусе вычисляется вероятность того, что в позиции с таким вектором есть граница токенов
  • 19. Как и зачем мы делаем Открытый корпус Токенизация-3 Используем простое машинное обучение: для каждой позиции получается двоичный вектор Позиция 1: 001000010000000 Позиция 2: 100000100000010 ... для каждой позиции знаем, проходит ли в ней граница токенов для каждого двоичного вектора на корпусе вычисляется вероятность того, что в позиции с таким вектором есть граница токенов в реальном тексте в каждой позиции тоже вычисляем вектор и смотрим вероятность
  • 20. Как и зачем мы делаем Открытый корпус Токенизация-4 Так выглядит обучение:
  • 21. Как и зачем мы делаем Открытый корпус Токенизация-5 Получаемое деление – вероятностное, поэтому его нужно проверять глазами:
  • 22. Как и зачем мы делаем Открытый корпус Токенизация-5 Получаемое деление – вероятностное, поэтому его нужно проверять глазами:
  • 23. Как и зачем мы делаем Открытый корпус Вопросы про токенизацию?
  • 24. Как и зачем мы делаем Открытый корпус Морфология Суть морфологического уровня: связать токен с морфологическим словарем или обозначить, что токен не является словом
  • 25. Как и зачем мы делаем Открытый корпус Морфология Суть морфологического уровня: связать токен с морфологическим словарем или обозначить, что токен не является словом Зачем нужен морфологический словарь? можно изменить конкретный разбор конкретной словоформы во всем корпусе сразу легче находить опечатки в будущем можно будет добавлять лексико-семантическую информацию, почти не меняя разметку
  • 26. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ
  • 27. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ описание слова = лемма + набор форм (парадигма) + набор граммем леммы
  • 28. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ описание слова = лемма + набор форм (парадигма) + набор граммем леммы описание формы = текст + набор граммем формы
  • 29. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ описание слова = лемма + набор форм (парадигма) + набор граммем леммы описание формы = текст + набор граммем формы леммы связаны между собой связями
  • 30. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ описание слова = лемма + набор форм (парадигма) + набор граммем леммы описание формы = текст + набор граммем формы леммы связаны между собой связями словарь можно редактировать
  • 31. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ описание слова = лемма + набор форм (парадигма) + набор граммем леммы описание формы = текст + набор граммем формы леммы связаны между собой связями словарь можно редактировать сочетаемость граммем регулируется моделью морфологии, которая выражена в виде набора правил
  • 32. Как и зачем мы делаем Открытый корпус Морфология-2 за основу взят словарь группы АОТ описание слова = лемма + набор форм (парадигма) + набор граммем леммы описание формы = текст + набор граммем формы леммы связаны между собой связями словарь можно редактировать сочетаемость граммем регулируется моделью морфологии, которая выражена в виде набора правил каждое правило имеет вид: «Если у [леммы/формы] есть граммема А, то у [леммы/формы] [должна быть/не должно быть/может быть] граммема Б»
  • 33. Как и зачем мы делаем Открытый корпус Морфология-3 Модель нужна, чтобы отслеживать ошибки, присутствующие в словаре изначально или вносимые редакторами. Примеры правил: NOUN -> NMbr (лемма -> форма, обязательно) VERB -> ASpc (лемма -> лемма, обязательно) indc -> TEns (форма -> форма, обязательно) VERB -> Impe (лемма -> лемма, возможно) Impe -> PErs (лемма -> форма, запрещено) Всего сейчас 107 граммем и 127 правил + 218 автоматически выведенных.
  • 34. Как и зачем мы делаем Открытый корпус Морфология-4 Итого в словаре бывает 5 типов ошибок: 1 неизвестная граммема 2 несовместимые граммемы 3 явно не разрешенная правилами граммема 4 отсутствует обязательная граммема 5 две формы в рамках парадигмы имеют полностью совпадающие наборы граммем
  • 35. Как и зачем мы делаем Открытый корпус Вопросы про морфологию?
  • 36. Как и зачем мы делаем Открытый корпус Разрешение неоднозначности 2 этапа: (полу)автоматический (сейчас нет), ручной.
  • 37. Как и зачем мы делаем Открытый корпус Разрешение неоднозначности 2 этапа: (полу)автоматический (сейчас нет), ручной. Ручное разрешение морфологической неоднозначности – основная задача, для которой мы хотим привлекать пользователей-разметчиков.
  • 38. Как и зачем мы делаем Открытый корпус Разрешение неоднозначности 2 этапа: (полу)автоматический (сейчас нет), ручной. Ручное разрешение морфологической неоднозначности – основная задача, для которой мы хотим привлекать пользователей-разметчиков. От разметчика требуется: исключить неверные разборы, в идеальном случае – выбрать один или отметить, что верный разбор отсутствует
  • 39. Как и зачем мы делаем Открытый корпус Интерфейс разрешения неоднозначности (Here be live demonstration)
  • 40. Как и зачем мы делаем Открытый корпус Contacts Берем студентов на практику! http://opencorpora.org granovsky@opencorpora.org bocharov@opencorpora.org