Аннотирование документа с помощью JAPE

Я искал решение этой проблемы в течение нескольких недель, у меня есть несколько документов (около 95), которые я пытаюсь классифицировать с помощью GATE. Я поместил их в один корпус, который я назвал training_corpus, однако после того, как ANNIE прокомментировала корпус, мне нужно вернуться в каждый файл, выбрать все токены в документе и создать аннотацию под названием Mention с типом функции и значением класса. для документа. Например:

type Start End id Features
Упоминание 0 70000 2588 {type=neg}

Есть ли способ автоматически сделать это с JAPE? По сути, я хочу выбрать все токены и создать новую аннотацию с функцией (тип = класс). Кроме того, класс добавляется к документу. Поскольку документов много, может ли JAPE извлечь класс из имени документа и установить для него значение функции «Упоминания». Пример имени документа — neg_data1.txt, поэтому аннотация будет Mention.type = neg?

Любая помощь будет оценена. Спасибо


person tigg    schedule 01.04.2014    source источник


Ответы (1)


Я думаю, вы сами ответили на свой вопрос. Если назначение класса основано только на токене, присутствующем в тексте, почему бы просто не обработать текст вне GATE? Например, создать xml-файл типа: text, а затем использовать его в процессе обучения. Также вы можете создать простое правило JAPE, которое: а) возьмет текст в пределах границ документа (см. методы gate.Utils.length AFAIR) б) на основе наличия вашего токена создаст новый экземпляр аннотации с необходимыми функциями. абстрактный пример:

Phase: Instance
Input: Token
Options: control = once

Rule:Instance
(
  {Token}
):instance
-->
{
   AnnotationSet instances = outputAS.get("INSTANCE_ANNOTATION");
    FeatureMap featureMap = Factory.newFeatureMap();
    if (instances!=null&&!instances.isEmpty()){
       featureMap.put("features when annotation presented in doc");
     }else{
       featureMap.put("features when annotation not in doc");
     }
    outputAS.add(new Long(0), new Long(documentLength), "Mention", featureMap);

}
person ashingel    schedule 02.04.2014
comment
спасибо, я создал xml и использовал размеченные аннотации в качестве набора аннотаций, и это сработало. большое спасибо. Тем не менее, у меня есть быстрый короткий вопрос, как можно загрузить много файлов (документов Gate) сразу в GATE GUI. Благодарность - person tigg; 03.04.2014
comment
@user3183103 user3183103, чтобы загрузить все документы одновременно, вы можете создать корпус, затем щелкнуть по нему правой кнопкой мыши и нажать «Заполнить» во всплывающем меню. Возможно, для больших коллекций документов, которые превышают ограничения вашей памяти, вы рассмотрите возможность использования GATE Datastore. - person andrey; 03.04.2014
comment
@андрей ты супер. большое спасибо большое и спасибо ashingel за ответ на мой вопрос. Огромное спасибо - person tigg; 04.04.2014
comment
Я хочу проголосовать за этот вопрос и ответить 100 раз. Очень полезно. Спасибо. - person pnv; 16.02.2015