class RelationExtractionModel extends GenericClassifierModel with ParamsAndFeaturesWritable with HandleExceptionParams with HasSafeAnnotate[GenericClassifierModel]

Extracts and classifies instances of relations between named entities. For this, relation pairs need to be defined with setRelationPairs, to specify between which entities the extraction should be done.

For pretrained models please see the Models Hub for available models.

Example

Relation Extraction between body parts

Define pipeline stages to extract entities

val documenter = new DocumentAssembler()
  .setInputCol("text")
  .setOutputCol("document")

val sentencer = new SentenceDetector()
  .setInputCols("document")
  .setOutputCol("sentences")

val tokenizer = new Tokenizer()
  .setInputCols("sentences")
  .setOutputCol("tokens")

val words_embedder = WordEmbeddingsModel.pretrained("embeddings_clinical", "en", "clinical/models")
  .setInputCols("sentences", "tokens")
  .setOutputCol("embeddings")

val pos_tagger = PerceptronModel.pretrained("pos_clinical", "en", "clinical/models")
  .setInputCols("sentences", "tokens")
  .setOutputCol("pos_tags")

val dependency_parser = DependencyParserModel.pretrained("dependency_conllu", "en")
  .setInputCols("sentences", "pos_tags", "tokens")
  .setOutputCol("dependencies")

val clinical_ner_tagger = MedicalNerModel.pretrained("jsl_ner_wip_greedy_clinical","en","clinical/models")
  .setInputCols("sentences", "tokens", "embeddings")
  .setOutputCol("ner_tags")

val ner_chunker = new NerConverter()
  .setInputCols("sentences", "tokens", "ner_tags")
  .setOutputCol("ner_chunks")

Define the relations that are to be extracted

val relationPairs = Array("direction-external_body_part_or_region",
                      "external_body_part_or_region-direction",
                      "direction-internal_organ_or_component",
                      "internal_organ_or_component-direction")

val re_model = RelationExtractionModel.pretrained("re_bodypart_directions", "en", "clinical/models")
  .setInputCols("embeddings", "pos_tags", "ner_chunks", "dependencies")
  .setOutputCol("relations")
  .setRelationPairs(relationPairs)
  .setMaxSyntacticDistance(4)
  .setPredictionThreshold(0.9f)

val pipeline = new Pipeline().setStages(Array(
  documenter,
  sentencer,
  tokenizer,
  words_embedder,
  pos_tagger,
  clinical_ner_tagger,
  ner_chunker,
  dependency_parser,
  re_model
))

val data = Seq("MRI demonstrated infarction in the upper brain stem , left cerebellum and  right basil ganglia").toDF("text")
val result = pipeline.fit(data).transform(data)

Show results

result.selectExpr("explode(relations) as relations")
 .select(
   "relations.metadata.chunk1",
   "relations.metadata.entity1",
   "relations.metadata.chunk2",
   "relations.metadata.entity2",
   "relations.result"
 )
 .where("result != 0")
 .show(truncate=false)
+------+---------+-------------+---------------------------+------+
|chunk1|entity1  |chunk2       |entity2                    |result|
+------+---------+-------------+---------------------------+------+
|upper |Direction|brain stem   |Internal_organ_or_component|1     |
|left  |Direction|cerebellum   |Internal_organ_or_component|1     |
|right |Direction|basil ganglia|Internal_organ_or_component|1     |
+------+---------+-------------+---------------------------+------+
See also

RelationExtractionApproach to train your own model.

RelationExtractionDLModel for BERT based extraction

Linear Supertypes
GenericClassifierModel, CheckLicense, HasSafeAnnotate[GenericClassifierModel], HandleExceptionParams, HasSimpleAnnotate[GenericClassifierModel], WriteTensorflowModel, HasStorageRef, GenericClassifierParams, AnnotatorModel[GenericClassifierModel], CanBeLazy, RawAnnotator[GenericClassifierModel], HasOutputAnnotationCol, HasInputAnnotationCols, HasOutputAnnotatorType, ParamsAndFeaturesWritable, HasFeatures, DefaultParamsWritable, MLWritable, Model[GenericClassifierModel], Transformer, PipelineStage, Logging, Params, Serializable, Serializable, Identifiable, AnyRef, Any
Known Subclasses
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. RelationExtractionModel
  2. GenericClassifierModel
  3. CheckLicense
  4. HasSafeAnnotate
  5. HandleExceptionParams
  6. HasSimpleAnnotate
  7. WriteTensorflowModel
  8. HasStorageRef
  9. GenericClassifierParams
  10. AnnotatorModel
  11. CanBeLazy
  12. RawAnnotator
  13. HasOutputAnnotationCol
  14. HasInputAnnotationCols
  15. HasOutputAnnotatorType
  16. ParamsAndFeaturesWritable
  17. HasFeatures
  18. DefaultParamsWritable
  19. MLWritable
  20. Model
  21. Transformer
  22. PipelineStage
  23. Logging
  24. Params
  25. Serializable
  26. Serializable
  27. Identifiable
  28. AnyRef
  29. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RelationExtractionModel()
  2. new RelationExtractionModel(uid: String)

    uid

    a unique identifier for the instantiated AnnotatorModel

Type Members

  1. type AnnotationContent = Seq[Row]
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  2. type AnnotatorType = String
    Definition Classes
    HasOutputAnnotatorType

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def $[T](param: Param[T]): T
    Attributes
    protected
    Definition Classes
    Params
  4. def $$[T](feature: StructFeature[T]): T
    Attributes
    protected
    Definition Classes
    HasFeatures
  5. def $$[K, V](feature: MapFeature[K, V]): Map[K, V]
    Attributes
    protected
    Definition Classes
    HasFeatures
  6. def $$[T](feature: SetFeature[T]): Set[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  7. def $$[T](feature: ArrayFeature[T]): Array[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  8. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def _transform(dataset: Dataset[_], recursivePipeline: Option[PipelineModel]): DataFrame
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  10. def afterAnnotate(dataset: DataFrame): DataFrame
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  11. def annotate(annotations: Seq[Annotation]): Seq[Annotation]

    takes a document and annotations and produces new annotations of this annotator's annotation type

    takes a document and annotations and produces new annotations of this annotator's annotation type

    annotations

    Annotations that correspond to inputAnnotationCols generated by previous annotators if any

    returns

    any number of annotations processed for every input annotation. Not necessary one to one relationship

    Definition Classes
    RelationExtractionModelGenericClassifierModel → HasSimpleAnnotate
  12. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  13. val batchSize: IntParam

    Batch size

    Batch size

    Definition Classes
    GenericClassifierParams
  14. def beforeAnnotate(dataset: Dataset[_]): Dataset[_]
    Attributes
    protected
    Definition Classes
    GenericClassifierModel → AnnotatorModel
  15. def categorizeRel(relation: RelationInstance): (Long, Float, Array[Float])
    Attributes
    protected
  16. final def checkSchema(schema: StructType, inputAnnotatorType: String): Boolean
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  17. def checkValidEnvironment(spark: Option[SparkSession], scopes: Seq[String], metadata: Option[Map[String, Value]]): Unit
    Definition Classes
    CheckLicense
  18. def checkValidScope(scope: String): Unit
    Definition Classes
    CheckLicense
  19. def checkValidScopeAndEnvironment(scope: String, spark: Option[SparkSession], checkLp: Boolean, metadata: Option[Map[String, Value]]): Unit
    Definition Classes
    CheckLicense
  20. def checkValidScopesAndEnvironment(scopes: Seq[String], spark: Option[SparkSession], checkLp: Boolean, metadata: Option[Map[String, Value]]): Unit
    Definition Classes
    CheckLicense
  21. val classes: StringArrayParam
    Definition Classes
    GenericClassifierModel
  22. final def clear(param: Param[_]): RelationExtractionModel.this.type
    Definition Classes
    Params
  23. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  24. def copy(extra: ParamMap): GenericClassifierModel
    Definition Classes
    RawAnnotator → Model → Transformer → PipelineStage → Params
  25. def copyValues[T <: Params](to: T, extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  26. def createDatabaseConnection(database: Name): RocksDBConnection
    Definition Classes
    HasStorageRef
  27. var customLabels: MapFeature[String, String]

    Custom relation labels

  28. val datasetInfo: Param[String]

    Descriptive information about the dataset being used.

    Descriptive information about the dataset being used.

    Definition Classes
    GenericClassifierParams
  29. final def defaultCopy[T <: Params](extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  30. def dfAnnotate: UserDefinedFunction
    Definition Classes
    HasSimpleAnnotate
  31. val directionSensitive: BooleanParam

    If it is true, only relations in the form of "ENTITY1-ENTITY2" will be considered, If it is false, both "ENTITY1-ENTITY2" and "ENTITY2-ENTITY1" relations will be considered,

  32. val doExceptionHandling: BooleanParam

    If true, exceptions are handled.

    If true, exceptions are handled. If exception causing data is passed to the model, a error annotation is emitted which has the exception message. Processing continues with the next one. This comes with a performance penalty.

    Definition Classes
    HandleExceptionParams
  33. val dropout: FloatParam

    Dropout coefficient

    Dropout coefficient

    Definition Classes
    GenericClassifierParams
  34. val epochsN: IntParam

    Maximum number of epochs to train

    Maximum number of epochs to train

    Definition Classes
    GenericClassifierParams
  35. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  36. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  37. def explainParam(param: Param[_]): String
    Definition Classes
    Params
  38. def explainParams(): String
    Definition Classes
    Params
  39. final val extraInputCols: StringArrayParam
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  40. def extraValidate(structType: StructType): Boolean
    Attributes
    protected
    Definition Classes
    RawAnnotator
  41. def extraValidateMsg: String
    Attributes
    protected
    Definition Classes
    RawAnnotator
  42. final def extractParamMap(): ParamMap
    Definition Classes
    Params
  43. final def extractParamMap(extra: ParamMap): ParamMap
    Definition Classes
    Params
  44. val featureScaling: Param[String]

    Feature scaling method.

    Feature scaling method. Possible values are 'zscore', 'minmax' or empty (no scaling)

    Definition Classes
    GenericClassifierParams
  45. val features: ArrayBuffer[Feature[_, _, _]]
    Definition Classes
    HasFeatures
  46. val filterByTokenDistance: IntParam

    filtering criterion based on number of token between entities.

    filtering criterion based on number of token between entities. Model only finds relations that have fewer than the specified number of tokens between them.

  47. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  48. val fixImbalance: BooleanParam

    Fix the imbalance in the training set by replicating examples of under represented categories

    Fix the imbalance in the training set by replicating examples of under represented categories

    Definition Classes
    GenericClassifierParams
  49. def get[T](feature: StructFeature[T]): Option[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  50. def get[K, V](feature: MapFeature[K, V]): Option[Map[K, V]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  51. def get[T](feature: SetFeature[T]): Option[Set[T]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  52. def get[T](feature: ArrayFeature[T]): Option[Array[T]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  53. final def get[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  54. def getBatchSize: Int

    Batch size

    Batch size

    Definition Classes
    GenericClassifierParams
  55. def getCategories(): Array[String]
    Definition Classes
    GenericClassifierModel
  56. def getCategoryName(id: Int): String
    Definition Classes
    GenericClassifierModel
  57. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  58. def getClasses: Array[String]

    Proxy to getCategories

  59. def getCustomLabel(label: String): String
  60. def getCustomLabels: Map[String, String]

    Custom relation labels

  61. def getDatasetInfo: String

    get descriptive information about the dataset being used

    get descriptive information about the dataset being used

    Definition Classes
    GenericClassifierParams
  62. final def getDefault[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  63. def getDirectionSensitive: Boolean

    Gets the directionSensitive

  64. def getDropout: Float

    Dropout coefficient

    Dropout coefficient

    Definition Classes
    GenericClassifierParams
  65. def getEncoder: GenericClassifierDataEncoder
    Definition Classes
    GenericClassifierModel
  66. def getFeatureScaling: String

    Get feature scaling method

    Get feature scaling method

    Definition Classes
    GenericClassifierParams
  67. def getFixImbalance: Boolean

    Fix imbalance in training set

    Fix imbalance in training set

    Definition Classes
    GenericClassifierParams
  68. def getInputCols: Array[String]
    Definition Classes
    HasInputAnnotationCols
  69. def getLabelColumn: String

    Column with label per each document

    Column with label per each document

    Definition Classes
    GenericClassifierParams
  70. def getLazyAnnotator: Boolean
    Definition Classes
    CanBeLazy
  71. def getLearningRate: Float

    Learning Rate

    Learning Rate

    Definition Classes
    GenericClassifierParams
  72. def getMaxEpochs: Int

    Maximum number of epochs to train

    Maximum number of epochs to train

    Definition Classes
    GenericClassifierParams
  73. def getMaxSyntacticDistance: Int

    Maximal syntactic distance, as threshold (Default: 0)

  74. def getModelFile: String

    Model file name

    Model file name

    Definition Classes
    GenericClassifierParams
  75. def getMultiClass: Boolean

    Gets the model multi class prediction mode

    Gets the model multi class prediction mode

    Definition Classes
    GenericClassifierParams
  76. final def getOrDefault[T](param: Param[T]): T
    Definition Classes
    Params
  77. final def getOutputCol: String
    Definition Classes
    HasOutputAnnotationCol
  78. def getOutputLogsPath: String

    Get output logs path

    Get output logs path

    Definition Classes
    GenericClassifierParams
  79. def getParam(paramName: String): Param[Any]
    Definition Classes
    Params
  80. def getPredictionThreshold: Float

    Minimal activation of the target unit to encode a new relation instance (Default: 0.5f)

  81. def getRelationPairs: Array[String]

    List of dash-separated pairs of named entities ("ENTITY1-ENTITY2", e.g.

    List of dash-separated pairs of named entities ("ENTITY1-ENTITY2", e.g. "Biomarker-RelativeDay"), which will be processed

  82. def getRelationPairsCaseSensitive: Boolean

    Gets the case sensitivity of relation pairs

  83. def getRelationTypePerPair: Map[String, Array[String]]

    Get the lists of entity pairs allowed for a given relation

  84. def getRelationTypePerPairStr: String

    Get a string representation of the lists of entity pairs allowed for a given relation

  85. def getScopeWindow: (Int, Int)

    Get scope window

  86. def getStorageRef: String
    Definition Classes
    HasStorageRef
  87. def getValidationSplit: Float

    Choose the proportion of training dataset to be validated against the model on each Epoch.

    Choose the proportion of training dataset to be validated against the model on each Epoch. The value should be between 0.0 and 1.0 and by default it is 0.0 and off.

    Definition Classes
    GenericClassifierParams
  88. final def hasDefault[T](param: Param[T]): Boolean
    Definition Classes
    Params
  89. def hasParam(paramName: String): Boolean
    Definition Classes
    Params
  90. def hasParent: Boolean
    Definition Classes
    Model
  91. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  92. val inExceptionMode: Boolean
    Attributes
    protected
    Definition Classes
    HasSafeAnnotate
  93. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  94. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  95. val inputAnnotatorTypes: Array[AnnotatorType]

    Input annotator types : WORD_EMBEDDINGS, POS, CHUNK, DEPENDENCY

    Input annotator types : WORD_EMBEDDINGS, POS, CHUNK, DEPENDENCY

    Definition Classes
    RelationExtractionModelGenericClassifierModel → HasInputAnnotationCols
  96. final val inputCols: StringArrayParam
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  97. final def isDefined(param: Param[_]): Boolean
    Definition Classes
    Params
  98. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  99. final def isSet(param: Param[_]): Boolean
    Definition Classes
    Params
  100. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  101. val labelColumn: Param[String]

    Column with label per each document

    Column with label per each document

    Definition Classes
    GenericClassifierParams
  102. val lazyAnnotator: BooleanParam
    Definition Classes
    CanBeLazy
  103. val learningRate: FloatParam

    Learning Rate

    Learning Rate

    Definition Classes
    GenericClassifierParams
  104. def loadModel(sparkSession: SparkSession, tfModel: TensorflowWrapper, categories: Array[String], encoder: GenericClassifierDataEncoder, nerTags: Array[String]): RelationExtractionModel.this.type
  105. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  106. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  107. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  108. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  109. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  110. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  111. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  112. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  113. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  114. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  115. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  116. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  117. var maxSyntacticDistance: IntParam

    Maximal syntactic distance, as threshold (Default: 0)

  118. def model: TensorflowGenericClassifier
    Definition Classes
    GenericClassifierModel
  119. val modelFile: Param[String]

    Location of file of the model used for classification

    Location of file of the model used for classification

    Definition Classes
    GenericClassifierParams
  120. def msgHelper(schema: StructType): String
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  121. val multiClass: BooleanParam

    If multiClass is set, the model will return all the labels with corresponding scores.

    If multiClass is set, the model will return all the labels with corresponding scores. By default, multiClass is false.

    Definition Classes
    GenericClassifierParams
  122. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  123. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  124. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  125. def onWrite(path: String, spark: SparkSession): Unit
    Definition Classes
    GenericClassifierModel → ParamsAndFeaturesWritable
  126. val optionalInputAnnotatorTypes: Array[String]
    Definition Classes
    HasInputAnnotationCols
  127. val outputAnnotatorType: String

    Output annotator types : CATEGORY

    Output annotator types : CATEGORY

    Definition Classes
    RelationExtractionModelGenericClassifierModel → HasOutputAnnotatorType
  128. final val outputCol: Param[String]
    Attributes
    protected
    Definition Classes
    HasOutputAnnotationCol
  129. val outputLogsPath: Param[String]

    Folder path to save training logs.

    Folder path to save training logs. If no path is specified, the logs won't be stored in disk. The path can be a local file path, a distributed file path (HDFS, DBFS), or a cloud storage (S3).

    Definition Classes
    GenericClassifierParams
  130. lazy val params: Array[Param[_]]
    Definition Classes
    Params
  131. var parent: Estimator[GenericClassifierModel]
    Definition Classes
    Model
  132. var predictionThreshold: FloatParam

    Minimal activation of the target unit to encode a new relation instance (Default: 0.5f)

  133. var relationPairs: Param[String]

    List of dash-separated pairs of named entities ("ENTITY1-ENTITY2", e.g.

    List of dash-separated pairs of named entities ("ENTITY1-ENTITY2", e.g. "Biomarker-RelativeDay"), which will be processed

  134. var relationPairsCaseSensitive: BooleanParam

    Determines whether relation pairs are case sensitive

  135. def safeAnnotate(annotations: Seq[Annotation]): Seq[Annotation]

    A protected method designed to safely annotate a sequence of Annotation objects by handling exceptions.

    A protected method designed to safely annotate a sequence of Annotation objects by handling exceptions.

    annotations

    A sequence of Annotation.

    returns

    A sequence of Annotation objects after processing, potentially containing error annotations.

    Attributes
    protected
    Definition Classes
    HasSafeAnnotate
  136. def save(path: String): Unit
    Definition Classes
    MLWritable
    Annotations
    @Since( "1.6.0" ) @throws( ... )
  137. def scaleFeatures(features: Array[Array[Float]]): Array[Array[Float]]
    Attributes
    protected
    Definition Classes
    GenericClassifierModel
  138. val scopeWindow: IntArrayParam

    The scope window of the feature generation for relations

  139. def set[T](feature: StructFeature[T], value: T): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  140. def set[K, V](feature: MapFeature[K, V], value: Map[K, V]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  141. def set[T](feature: SetFeature[T], value: Set[T]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  142. def set[T](feature: ArrayFeature[T], value: Array[T]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  143. final def set(paramPair: ParamPair[_]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  144. final def set(param: String, value: Any): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  145. final def set[T](param: Param[T], value: T): RelationExtractionModel.this.type
    Definition Classes
    Params
  146. def setBatchSize(batch: Int): RelationExtractionModel.this.type

    Batch size

    Batch size

    Definition Classes
    GenericClassifierParams
  147. def setCategoryNames(categoryNames: Array[String]): RelationExtractionModel.this.type
    Definition Classes
    GenericClassifierModel
  148. def setCustomLabels(labels: HashMap[String, String]): RelationExtractionModel.this.type

  149. def setCustomLabels(labels: Map[String, String]): RelationExtractionModel.this.type

    Set custom relation labels

  150. def setDatasetInfo(value: String): RelationExtractionModel.this.type

    set descriptive information about the dataset being used

    set descriptive information about the dataset being used

    Definition Classes
    GenericClassifierParams
  151. def setDefault[T](feature: StructFeature[T], value: () ⇒ T): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  152. def setDefault[K, V](feature: MapFeature[K, V], value: () ⇒ Map[K, V]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  153. def setDefault[T](feature: SetFeature[T], value: () ⇒ Set[T]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  154. def setDefault[T](feature: ArrayFeature[T], value: () ⇒ Array[T]): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  155. final def setDefault(paramPairs: ParamPair[_]*): RelationExtractionModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  156. final def setDefault[T](param: Param[T], value: T): RelationExtractionModel.this.type
    Attributes
    protected[org.apache.spark.ml]
    Definition Classes
    Params
  157. def setDirectionSensitive(value: Boolean): RelationExtractionModel.this.type

    If it is true, only relations in the form of "ENTITY1-ENTITY2" will be considered, If it is false, both "ENTITY1-ENTITY2" and "ENTITY2-ENTITY1" relations will be considered,

  158. def setDoExceptionHandling(value: Boolean): RelationExtractionModel.this.type

    If true, exceptions are handled.

    If true, exceptions are handled. If exception causing data is passed to the model, a error annotation is emitted which has the exception message. Processing continues with the next one. This comes with a performance penalty.

    Definition Classes
    HandleExceptionParams
  159. def setDropout(dropout: Float): RelationExtractionModel.this.type

    Dropout coefficient

    Dropout coefficient

    Definition Classes
    GenericClassifierParams
  160. def setEncoder(encoder: GenericClassifierDataEncoder): RelationExtractionModel.this.type
    Definition Classes
    GenericClassifierModel
  161. def setEpochsNumber(epochs: Int): RelationExtractionModel.this.type

    Maximum number of epochs to train

    Maximum number of epochs to train

    Definition Classes
    GenericClassifierParams
  162. def setExtraInputCols(value: Array[String]): RelationExtractionModel.this.type
    Definition Classes
    HasInputAnnotationCols
  163. def setFeatureScaling(featureScaling: String): RelationExtractionModel.this.type

    Set the feature scaling method.

    Set the feature scaling method. Possible values are 'zscore', 'minmax' or empty (no scaling)

    Definition Classes
    GenericClassifierParams
  164. def setFilterByTokenDistance(value: Int): RelationExtractionModel.this.type

    filtering criterion based on number of token between entities.

    filtering criterion based on number of token between entities. Model only finds relations that have fewer than the specified number of tokens between them

  165. def setFixImbalance(fix: Boolean): RelationExtractionModel.this.type

    Fix imbalance of training set

    Fix imbalance of training set

    Definition Classes
    GenericClassifierParams
  166. final def setInputCols(value: String*): RelationExtractionModel.this.type
    Definition Classes
    HasInputAnnotationCols
  167. def setInputCols(value: Array[String]): RelationExtractionModel.this.type
    Definition Classes
    HasInputAnnotationCols
  168. def setLabelColumn(column: String): RelationExtractionModel.this.type

    Column with label per each document

    Column with label per each document

    Definition Classes
    GenericClassifierParams
  169. def setLazyAnnotator(value: Boolean): RelationExtractionModel.this.type
    Definition Classes
    CanBeLazy
  170. def setMaxSyntacticDistance(maxSyntacticDistance: Int): RelationExtractionModel.this.type

    Maximal syntactic distance, as threshold (Default: 0)

  171. def setModelFile(modelFile: String): RelationExtractionModel.this.type

    Set the model file name

    Set the model file name

    Definition Classes
    GenericClassifierParams
  172. def setMultiClass(value: Boolean): RelationExtractionModel.this.type

    Sets the model in multi class prediction mode

    Sets the model in multi class prediction mode

    Definition Classes
    GenericClassifierParams
  173. final def setOutputCol(value: String): RelationExtractionModel.this.type
    Definition Classes
    HasOutputAnnotationCol
  174. def setOutputLogsPath(outputLogsPath: String): RelationExtractionModel.this.type

    Set the output log path

    Set the output log path

    Definition Classes
    GenericClassifierParams
  175. def setParent(parent: Estimator[GenericClassifierModel]): GenericClassifierModel
    Definition Classes
    Model
  176. def setPredictionThreshold(predictionThreshold: Float): RelationExtractionModel.this.type

    Minimal activation of the target unit to encode a new relation instance (Default: 0.5f)

  177. def setRelationPairs(relationPairs: Array[String]): RelationExtractionModel.this.type

    List of dash-separated pairs of named entities ("ENTITY1-ENTITY2", e.g.

    List of dash-separated pairs of named entities ("ENTITY1-ENTITY2", e.g. "Biomarker-RelativeDay"), which will be processed

  178. def setRelationPairsCaseSensitive(value: Boolean): RelationExtractionModel.this.type

    Sets the case sensitivity of relation pairs

  179. def setRelationTypePerPair(categories: HashMap[String, List[String]]): RelationExtractionModel.this.type

    Set the lists of entity pairs allowed for a given relation

  180. def setRelationTypePerPair(categories: Map[String, Array[String]]): RelationExtractionModel.this.type

    Set the lists of entity pairs allowed for a given relation

  181. def setScopeWindow(window: (Int, Int)): RelationExtractionModel.this.type

    Sets the scope of the window of the feature generation for relations

  182. def setStorageRef(value: String): RelationExtractionModel.this.type
    Definition Classes
    HasStorageRef
  183. def setTensorflowModel(spark: SparkSession, tf: TensorflowWrapper): RelationExtractionModel.this.type
    Definition Classes
    GenericClassifierModel
  184. def setValidationSplit(validationSplit: Float): RelationExtractionModel.this.type

    Choose the proportion of training dataset to be validated against the model on each Epoch.

    Choose the proportion of training dataset to be validated against the model on each Epoch. The value should be between 0.0 and 1.0 and by default it is 0.0 and off.

    Definition Classes
    GenericClassifierParams
  185. def setlearningRate(lr: Float): RelationExtractionModel.this.type

    Learning Rate

    Learning Rate

    Definition Classes
    GenericClassifierParams
  186. val storageRef: Param[String]
    Definition Classes
    HasStorageRef
  187. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  188. def toString(): String
    Definition Classes
    Identifiable → AnyRef → Any
  189. final def transform(dataset: Dataset[_]): DataFrame
    Definition Classes
    AnnotatorModel → Transformer
  190. def transform(dataset: Dataset[_], paramMap: ParamMap): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" )
  191. def transform(dataset: Dataset[_], firstParamPair: ParamPair[_], otherParamPairs: ParamPair[_]*): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" ) @varargs()
  192. final def transformSchema(schema: StructType): StructType
    Definition Classes
    RawAnnotator → PipelineStage
  193. def transformSchema(schema: StructType, logging: Boolean): StructType
    Attributes
    protected
    Definition Classes
    PipelineStage
    Annotations
    @DeveloperApi()
  194. val uid: String
    Definition Classes
    RelationExtractionModelGenericClassifierModel → Identifiable
  195. def validate(schema: StructType): Boolean
    Attributes
    protected
    Definition Classes
    RawAnnotator
  196. def validateStorageRef(dataset: Dataset[_], inputCols: Array[String], annotatorType: String): Unit
    Definition Classes
    HasStorageRef
  197. val validationSplit: FloatParam

    The proportion of training dataset to be used as validation set.

    The proportion of training dataset to be used as validation set.

    The model will be validated against this dataset on each Epoch and will not be used for training. The value should be between 0.0 and 1.0.

    Definition Classes
    GenericClassifierParams
  198. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  199. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  200. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  201. def wrapColumnMetadata(col: Column): Column
    Attributes
    protected
    Definition Classes
    RawAnnotator
  202. def write: MLWriter
    Definition Classes
    ParamsAndFeaturesWritable → DefaultParamsWritable → MLWritable
  203. def writeTensorflowHub(path: String, tfPath: String, spark: SparkSession, suffix: String): Unit
    Definition Classes
    WriteTensorflowModel
  204. def writeTensorflowModel(path: String, spark: SparkSession, tensorflow: TensorflowWrapper, suffix: String, filename: String, configProtoBytes: Option[Array[Byte]]): Unit
    Definition Classes
    WriteTensorflowModel
  205. def writeTensorflowModelV2(path: String, spark: SparkSession, tensorflow: TensorflowWrapper, suffix: String, filename: String, configProtoBytes: Option[Array[Byte]], savedSignatures: Option[Map[String, String]]): Unit
    Definition Classes
    WriteTensorflowModel

Inherited from GenericClassifierModel

Inherited from CheckLicense

Inherited from HandleExceptionParams

Inherited from HasSimpleAnnotate[GenericClassifierModel]

Inherited from WriteTensorflowModel

Inherited from HasStorageRef

Inherited from GenericClassifierParams

Inherited from AnnotatorModel[GenericClassifierModel]

Inherited from CanBeLazy

Inherited from RawAnnotator[GenericClassifierModel]

Inherited from HasOutputAnnotationCol

Inherited from HasInputAnnotationCols

Inherited from HasOutputAnnotatorType

Inherited from ParamsAndFeaturesWritable

Inherited from HasFeatures

Inherited from DefaultParamsWritable

Inherited from MLWritable

Inherited from Model[GenericClassifierModel]

Inherited from Transformer

Inherited from PipelineStage

Inherited from Logging

Inherited from Params

Inherited from Serializable

Inherited from Serializable

Inherited from Identifiable

Inherited from AnyRef

Inherited from Any

Parameters

Annotator types

Required input and expected output annotator types

Members

Parameter setters

Parameter getters