Как встроить внешний плагин, такой как BWP Gazetteer, в GATE

Я хотел бы использовать BWP Gazetteer вместо справочника GATE по умолчанию. Для этого я добавил его как ресурс в creole.xml, а также включил его JAR в рабочую область.

креольский.xml

  <RESOURCE>
<NAME>BWPGazetteer</NAME>
<JAR>BWPGazetteer.jar</JAR>
<CLASS>bwp.gate.gazetteer.BWPGazetteer</CLASS>
<COMMENT>A BWPGazetteer.</COMMENT>
  <PARAMETER NAME="document" RUNTIME="true"
    COMMENT="The document to be processed"> gate.Document</PARAMETER>
  <PARAMETER NAME="annotationSetName" RUNTIME="true"
    COMMENT="The annotation set to be used for the generated annotations"
    OPTIONAL="true">java.lang.String</PARAMETER>
  <PARAMETER NAME="listsURL"
    DEFAULT="resources/gazetteer/lists.def"
    COMMENT="The URL to the file with list of lists" SUFFIXES="def">
    java.net.URL</PARAMETER>
  <PARAMETER DEFAULT="UTF-8"
    COMMENT="The encoding used for reading the definitions" NAME="encoding">
    java.lang.String</PARAMETER>
  <PARAMETER DEFAULT="true"
    COMMENT="Should this gazetteer diferentiate on case"
    NAME="caseSensitive">java.lang.Boolean</PARAMETER>
  <PARAMETER DEFAULT="true"
    COMMENT="Should this gazetteer only match whole words"
    NAME="wholeWordsOnly">java.lang.Boolean</PARAMETER>
    <PARAMETER NAME="normalizedDistanceThreshold"
            COMMENT="Maximum normalized distance(0.0-1.0) for a match"
            DEFAULT="0.1">
            java.lang.Double
        </PARAMETER>
<PARAMETER DEFAULT="true"
    COMMENT="Should this gazetter avoid overlapping annotations"
    NAME= "avoidOverlapingAnnotations">
    java.lang.Boolean
</PARAMETER>

Can anyone tell me what further changes are required in my JAVA code or config files to use it?


person Divya Motiwala    schedule 08.03.2013    source источник


Ответы (1)


Вам не нужно изменять какие-либо файлы creole.xml, вы просто загружаете и распаковываете дистрибутив BWPGazetteer, загружаете каталог BWPGazetteer в качестве подключаемого модуля CREOLE, создаете экземпляр географического справочника и вставляете его в конвейер в соответствующем месте. Безусловно, самый простой подход к этому — использовать GATE Developer для создания конвейера (включая соответствующие экземпляры справочника в нужных местах), затем щелкнуть правой кнопкой мыши и «Экспортировать для GATECloud.net». Это создаст zip-файл, содержащий сохраненное состояние приложения (application.xgapp) и все плагины и файлы ресурсов, которые использует приложение.

Распакуйте этот zip-файл куда-нибудь в свой проект, а затем вы можете просто использовать PersistenceManager.loadObjectFromFile (или loadObjectFromUrl) для загрузки сохраненного приложения вместе со всеми необходимыми плагинами.

person Ian Roberts    schedule 08.03.2013
comment
Извините, но я новичок и не совсем понял подход. Под load the BWPGazetteer directory as a CREOLE plugin вы имели в виду копирование его (только BWPGazzetter.JAR) в папку с плагинами? В моем Java-проекте иерархия такая: GATE->Плагины->ANNIE (ANNIE->resources,build.xml,creole.xml)! - person Divya Motiwala; 08.03.2013
comment
@DivyaMotiwala Загрузите zip-файл плагина, разархивируйте его, затем в GATE Developer откройте диспетчер плагинов, нажмите кнопку + в левом верхнем углу, нажмите кнопку папки и выберите каталог BWPGazetteer, который вы только что распаковали. Это добавит плагин в список ниже, и вы можете затем поставить галочку в соответствующем поле «Загрузить сейчас», чтобы загрузить плагин. - person Ian Roberts; 08.03.2013
comment
Спасибо за помощь :) Это сработало. Можете ли вы рассказать мне о влиянии BWP Gazetteer на производительность, поскольку я мог заметить серьезные проблемы с производительностью после его использования. На обработку уходит много времени. Любое понимание этого ценится :) - person Divya Motiwala; 18.03.2013
comment
@DivyaMotiwala Боюсь, я ничего не знаю конкретно о плагине географического справочника BWP, кроме того, что есть на его собственном веб-сайте. Мой ответ на этот вопрос — это просто общий способ загрузки любого стороннего плагина в GATE. - person Ian Roberts; 18.03.2013
comment
@DivyaMotiwala BWPGazetteer медлительна по своей природе. Он выполняет приблизительное сопоставление строк с использованием Levenshtein's Distance, что занимает гораздо больше времени, чем обычное сопоставление с географическим справочником. Попробуйте свернуть normalizedDistanceTreshold, чтобы немного ускорить, но боюсь, это не поможет. Я думаю, что BWPGazetteer можно использовать только для небольших списков географических справочников. - person dedek; 24.06.2014