0

「NewAnnotator」と呼ばれるアノテーターを作成し、ClearTK の他のアノテーター (SentenceAnnotator、PosTaggerAnnotator など) とパイプラインで機能させようとしています。パイプラインを実行できるようにしたいのです。

aggregate.add(SentenceAnnotator.getDescription());
aggregate.add(PosTaggerAnnotator.getDescription());
aggregate.add(NewAnnotator.getDescription());   
// run the classification pipeline on the new texts
SimplePipeline.runPipeline(reader, aggregate.createAggregateDescription());

エラーなしでコードを書きましたが、実行すると多くのエラーが返されます。これは、NewAnnotator コードのこの部分から考えられます。

  public static AnalysisEngineDescription getDescription() throws ResourceInitializationException {
    return AnalysisEngineFactory.createPrimitiveDescription(

          NewAnnotator.class,
          PARAM_POSTAG_MODEL_FILE,
          ParamUtil.getParameterValue(PARAM_POSTAG_MODEL_FILE,  "/somepath")); 
  }
  public static final String PARAM_POSTAG_MODEL_FILE = ConfigurationParameterFactory.createConfigurationParameterName(
      PosTaggerAnnotator.class,
      "postagModelFile");

この部分を PosTaggerAnnotator からほとんどコピーしますが、NewAnnotator では使用しません。使用できるように追加するだけです。

aggregate.add(NewAnnotator.getDescription());   

なしで集計に追加する他の方法がわからず、アノテーターで.getDescription();正しいと宣言する方法もわからないため、それがなくても正常に機能します。getDescription()そこで、経験された方、アドバイスをお願いします!ありがとうございました!

4

1 に答える 1

0

getDescription()アノテーターのデフォルトの説明を作成する便利な方法です。AnalysisEngineFactory.createPrimitiveDescription()次のように、正しい引数を提供する必要がある を使用します。

  public static AnalysisEngineDescription getDescription() throws ResourceInitializationException {
    return AnalysisEngineFactory.createPrimitiveDescription(
          NewAnnotator.class,
          first_parameter_name,  first_parameter_value, 
          second_parameter_name, second_parameter_value,
          ... ); 
  }

uimaFIT コードベースには、さらに多くの例があります。

于 2013-06-04T10:39:25.317 に答える