Lambda-3 / Graphene

Coreference Resolution, Simplification and Open Relation Extraction Pipeline
http://lambda3.org/Graphene/
GNU General Public License v3.0
136 stars 38 forks source link

using custom NER #25

Closed vlordier closed 6 years ago

vlordier commented 6 years ago

Could you point out how you would go about using a custom trained NER, with domain-specific entities ?

Mischn commented 6 years ago

Hello Vincent,

please correct me if this does not answer your question, but I assume you want to know how one can extract named entities as relational arguments.

In a nutshell, the approach of Graphene is based on a prior sentence-simplification process, where really complex sentences are recursively transformed into simpler ones. After that, subject-predicate-object relationships are extracted from these simpler sentences (for more details see the Graphene publication).

In this way, our product acts as preprocessing framework for any system that is capable of extracting subject-predicate-object relationships from texts. So, in order to extract (domain-specific) NEs as arguments, you can simply implement your own RelationExtractor and use it as the RelationExtraction component inside of Graphene.

Here is what you will have to do:

relation-extractor = org.lambda3.graphene.core.relation_extraction.impl.HeadRelationExtractor to point to your new RelationExtractor-class: relation-extractor = org.lambda3.graphene.core.relation_extraction.impl.MyNERRelationExtractor

vlordier commented 6 years ago

All clear Matthias ! Thank you :)