@Override public String getPredictedType() { return recommender.getLayer().getName(); }
@Override public String getPredictedType() { return recommender.getLayer().getName(); }
private List<AnnotationFeature> listFeatures() { if (recommenderModel != null && recommenderModel.getObject().getLayer() != null) { return annotationSchemaService .listAnnotationFeature(recommenderModel.getObject().getLayer()) .stream() .filter(feat -> feat.getType() != null) .collect(Collectors.toList()); } else { return Collections.emptyList(); } }
private List<Pair<String, String>> listTools() { if (recommenderModel != null && recommenderModel.getObject().getLayer() != null && recommenderModel.getObject().getFeature() != null) { AnnotationLayer layer = recommenderModel.getObject().getLayer(); AnnotationFeature feature = recommenderModel.getObject().getFeature(); return recommenderRegistry.getFactories(layer, feature) .stream() .filter(f -> !f.isDeprecated()) .map(f -> Pair.of(f.getId(), f.getName())) .collect(Collectors.toList()); } else { return Collections.emptyList(); } }
private boolean containsTargetAnnotation(Recommender aRecommender, CAS aCas) { Type type = CasUtil.getType(aCas, aRecommender.getLayer().getName()); return CasUtil.iterator(aCas, type).hasNext(); }
public DL4JSequenceRecommender(Recommender aRecommender, DL4JSequenceRecommenderTraits aTraits, File aDatasetCache) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); traits = aTraits; datasetCache = aDatasetCache; }
public DL4JSequenceRecommender(Recommender aRecommender, DL4JSequenceRecommenderTraits aTraits, File aDatasetCache) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); traits = aTraits; datasetCache = aDatasetCache; }
public DataMajorityNerRecommender(Recommender aRecommender) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); } // end::classDefinition[]
private Collection<ImmutablePair<String, Collection<AnnotationFS>>> extractNamedEntities( List<CAS> aCasList) { Type tokenType = org.apache.uima.fit.util.CasUtil .getType(aCasList.get(0), recommender.getLayer().getName()); Feature feature = tokenType.getFeatureByBaseName(recommender.getFeature().getName()); Collection<ImmutablePair<String, Collection<AnnotationFS>>> nameSamples = new HashSet<>(); for (CAS cas : aCasList) { Collection<AnnotationFS> namesPerDocument = new ArrayList<>(); Type sentenceType = getType(cas, Sentence.class); Map<AnnotationFS, Collection<AnnotationFS>> sentences = indexCovered(cas, sentenceType, tokenType); for (Map.Entry<AnnotationFS, Collection<AnnotationFS>> e : sentences.entrySet()) { Collection<AnnotationFS> tokens = e.getValue().stream() // If the identifier has not been set .filter(a -> a.getStringValue(feature) == null) .collect(Collectors.toSet()); namesPerDocument.addAll(tokens); } // TODO #176 use the document Id once it is available in the CAS nameSamples.add( new ImmutablePair<>(DocumentMetaData.get(cas).getDocumentUri(), namesPerDocument)); } return nameSamples; }
private Collection<ImmutablePair<String, Collection<AnnotationFS>>> extractNamedEntities( List<CAS> aCasList) { Type tokenType = org.apache.uima.fit.util.CasUtil .getType(aCasList.get(0), recommender.getLayer().getName()); Feature feature = tokenType.getFeatureByBaseName(recommender.getFeature().getName()); Collection<ImmutablePair<String, Collection<AnnotationFS>>> nameSamples = new HashSet<>(); for (CAS cas : aCasList) { Collection<AnnotationFS> namesPerDocument = new ArrayList<>(); Type sentenceType = getType(cas, Sentence.class); Map<AnnotationFS, Collection<AnnotationFS>> sentences = indexCovered(cas, sentenceType, tokenType); for (Map.Entry<AnnotationFS, Collection<AnnotationFS>> e : sentences.entrySet()) { Collection<AnnotationFS> tokens = e.getValue().stream() // If the identifier has not been set .filter(a -> a.getStringValue(feature) == null) .collect(Collectors.toSet()); namesPerDocument.addAll(tokens); } // TODO #176 use the document Id once it is available in the CAS nameSamples.add( new ImmutablePair<>(DocumentMetaData.get(cas).getDocumentUri(), namesPerDocument)); } return nameSamples; }
public StringMatchingRecommender(Recommender aRecommender, StringMatchingRecommenderTraits aTraits) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); maxRecommendations = aRecommender.getMaxRecommendations(); traits = aTraits; }
public OpenNlpDoccatRecommender(Recommender aRecommender, OpenNlpDoccatRecommenderTraits aTraits) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); maxRecommendations = aRecommender.getMaxRecommendations(); traits = aTraits; }
private String generateName(Recommender aRecommender) { if (aRecommender.getFeature() == null || aRecommender.getLayer() == null || aRecommender.getTool() == null) { return null; } else { RecommendationEngineFactory factory = recommenderRegistry .getFactory(aRecommender.getTool()); return String.format(Locale.US, "[%s@%s] %s", aRecommender.getLayer().getUiName(), aRecommender.getFeature().getUiName(), factory.getName()); } }
public StringMatchingRecommender(Recommender aRecommender, StringMatchingRecommenderTraits aTraits) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); maxRecommendations = aRecommender.getMaxRecommendations(); traits = aTraits; }
public OpenNlpNerRecommender(Recommender aRecommender, OpenNlpNerRecommenderTraits aTraits) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); maxRecommendations = aRecommender.getMaxRecommendations(); traits = aTraits; }
public OpenNlpPosRecommender(Recommender aRecommender, OpenNlpPosRecommenderTraits aTraits) { layerName = aRecommender.getLayer().getName(); featureName = aRecommender.getFeature().getName(); maxRecommendations = aRecommender.getMaxRecommendations(); traits = aTraits; }
private void actionSave(AjaxRequestTarget aTarget) { Recommender recommender = recommenderModel.getObject(); recommender.setProject(recommender.getLayer().getProject()); recommendationService.createOrUpdateRecommender(recommender); // Reset selection after saving recommenderModel.setObject(null); statesForTraining.setObject(getAllPossibleDocumentStates()); // Reload whole page because master panel also needs to be reloaded. aTarget.add(getPage()); }
private Metadata buildMetadata(CAS aCas) throws RecommendationException { CASMetadata casMetadata = getCasMetadata(aCas); AnnotationLayer layer = recommender.getLayer(); return new Metadata( layer.getName(), recommender.getFeature().getName(), casMetadata.getProjectId(), layer.getAnchoringMode().getId(), layer.isCrossSentence() ); }
private Metadata buildMetadata(CAS aCas) throws RecommendationException { CASMetadata casMetadata = getCasMetadata(aCas); AnnotationLayer layer = recommender.getLayer(); return new Metadata( layer.getName(), recommender.getFeature().getName(), casMetadata.getProjectId(), layer.getAnchoringMode().getId(), layer.isCrossSentence() ); }
@Override public String getDetails(RecommenderEvaluationResultEvent aEvent) { try { Details details = new Details(); details.recommenderId = aEvent.getRecommender().getId(); details.score = aEvent.getScore(); details.active = aEvent.isActive(); details.duration = aEvent.getDuration(); details.threshold = aEvent.getRecommender().getThreshold(); details.layer = aEvent.getRecommender().getLayer().getName(); details.feature = aEvent.getRecommender().getFeature().getName(); details.tool = aEvent.getRecommender().getTool(); return JSONUtil.toJsonString(details); } catch (IOException e) { log.error("Unable to log event [{}]", aEvent, e); return "<ERROR>"; } }