Skip to content

Latest commit

 

History

History
46 lines (36 loc) · 2.33 KB

README.md

File metadata and controls

46 lines (36 loc) · 2.33 KB

GERP Framework

Data object and logic definition for GERP Framework, which standardizes the four key processing steps: generation, evidencing, ranking, and pruning, to accomplish each individual information processing task. The standardized GERP-compatible pipeline allows to easily reuse components and formal performance analysis.

  1. Generators will be executed in parallel given the dependencies that the generator requires as input arguments.
  2. All raw types will be collected and processed by each Evidencer. Evidences are required to be created for all raw input types in each evidencer.
  3. All Evidences will then again be collected and passed to each Ranker in a Map grouped by raw types generated in the generation phase. A Rank should be produced by each ranker.
  4. Finally, all Rank types are grouped and delivered to each Pruner, and each pruner should produce a PruningDecision for each raw type.

Use GERP in Java

Generator<T>           g1, g2 = ...;
CollectiveEvidencer<T> e1, e2 = ...;
CollectiveRanker<T>    r1, r2 = ...;
CollectivePruner<T>    p1, p2 = ...;
GerpExecutor<T> exec = new JdkGerpExecutor<T>(Arrays.asList(g1, g2),
                                              Arrays.asList(e1, e2),
                                              Arrays.asList(r1, r2),
                                              Arrays.asList(p1, p2));
List<T> results = exec.run(DEPENDENCIES);

A full example can be found here.

Use GERP with UIMA

Object[] configurationData = {
    "type",       TYPE_NAME_TO_BE_GERPED,
    "generators", new String[] { G1_DESC_PATH, G2_DESC_PATH },
    "evidencers", new String[] { E1_DESC_PATH, E2_DESC_PATH },
    "rankers",    new String[] { R1_DESC_PATH, R2_DESC_PATH },
    "pruners",    new String[] { P1_DESC_PATH, P2_DESC_PATH }}
AnalysisEngineDescription aed = AnalysisEngineFactory.createEngineDescription(
        SequentialGerpExecutor.class, configurationData);
JCasIterable iter = SimplePipeline.iteratePipeline(CR_DESC, aed);

A full example can be found here.

Questions or comments Please create an issue or contact me.