class DeIdentificationModel extends AnnotatorModel[DeIdentificationModel] with DeIdentificationParams with DeidModelParams with HasSimpleAnnotate[DeIdentificationModel] with HandleExceptionParams with HasSafeAnnotate[DeIdentificationModel] with CheckLicense

Contains all the parameters to transform a dataset with three Input Annotations of types DOCUMENT, TOKEN and CHUNK, into its DeIdentified version of by either masking or obfuscating the given CHUNKS.

To create an configured DeIdentificationModel, please see the example of DeIdentification.

See also

BaseDeidParams to see params

DeIdentificationParams to see params

DeidModelParams to see params

DeIdentification to train your own model

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

Instance Constructors

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

    uid

    a unique identifier for the instanced AnnotatorModel

Type Members

  1. type AnnotationContent = Seq[Row]
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  2. type AnnotatorType = String
    Definition Classes
    HasOutputAnnotatorType
  3. implicit class StringReplacement extends AnyRef

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
    Definition Classes
    DeIdentificationModel → AnnotatorModel
  11. val ageGroups: StructFeature[Map[String, Array[Int]]]

    A map of age groups to obfuscate ages.

    A map of age groups to obfuscate ages. For this parameter to be active, the obfuscateByAgeGroups parameter must be true. If the given ageGroups do not fully contain the ages, the ages continue to be obfuscated according to the ageRanges. The map should contain the age group name as the key and an array of two integers as the value. The first integer is the lower bound of the age group, and the second integer is the upper bound of the age group. Default age groups are as follows in the English language:

    Map(
    "baby" -> Array(0, 1),
    "toddler" -> Array(1, 4),
    "child" -> Array(4, 13),
    "teenager" -> Array(13, 20),
    "adult" -> Array(20, 65),
    "senior" -> Array(65, 200)
    )
    Definition Classes
    DeIdentificationParams
  12. val ageRanges: IntArrayParam

    List of integers specifying limits of the age groups to preserve during obfuscation

    List of integers specifying limits of the age groups to preserve during obfuscation

    Definition Classes
    BaseDeidParams
  13. val ageRangesByHipaa: BooleanParam

    A Boolean variable indicating whether to obfuscate ages based on HIPAA (Health Insurance Portability and Accountability Act) Privacy Rule.

    A Boolean variable indicating whether to obfuscate ages based on HIPAA (Health Insurance Portability and Accountability Act) Privacy Rule.

    The HIPAA Privacy Rule mandates that ages from patients older than 90 years must be obfuscated, while age for patients 90 years or younger can remain unchanged.

    When true, age entities larger than 90 will be obfuscated as per HIPAA Privacy Rule, the others will remain unchanged. When false, ageRanges parameter is valid.

    Definition Classes
    DeIdentificationParams
  14. val allTerms: MapFeature[String, List[String]]

    dictionary, which contains all terms for using later in anonimization function

  15. def annotate(annotations: Seq[Annotation]): Seq[Annotation]

    annotations

    The annotations per row that we need to obfuscate the document. Annotations should be DOCUMENT, TOKEN, CHUNK. The annotations of kind TOKEN or CHUNK will be have sentence number in the metadata in any of the annotations of kind Document. If the TOKEN or CHUNK have a sentence number in metadata longer that the sentence number on the document annotations the annotator should throw and exception

    returns

    The annotations of kind Document masked or obfuscated.

    Definition Classes
    DeIdentificationModel → HasSimpleAnnotate
  16. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  17. def beforeAnnotate(dataset: Dataset[_]): Dataset[_]

    This method represents the pipeline method which calls each method one by one It utilizes the main point of interest which is getAnonymizeSentence() and calls it for each sentence

    This method represents the pipeline method which calls each method one by one It utilizes the main point of interest which is getAnonymizeSentence() and calls it for each sentence

    returns

    a Sequence of Anonimized Annotations

    Definition Classes
    DeIdentificationModel → AnnotatorModel
  18. val blackList: StringArrayParam

    List of entities that will be ignored in the regex file.

    List of entities that will be ignored in the regex file. The rest will be processed. The default values are "IBAN","ZIP","NPI","DLN","PASSPORT","C_CARD","DEA","SSN", "IP", "DEA".

    Definition Classes
    DeIdentificationParams
  19. val blackListEntities: StringArrayParam

    List of entities coming from NER or regex rules that will be ignored for masking or obfuscation.

    List of entities coming from NER or regex rules that will be ignored for masking or obfuscation. The rest entities will be processed. Defaults to an empty array.

    Definition Classes
    DeIdentificationParams
  20. final def checkSchema(schema: StructType, inputAnnotatorType: String): Boolean
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  21. def checkValidEnvironment(spark: Option[SparkSession], scopes: Seq[String]): Unit
    Definition Classes
    CheckLicense
  22. def checkValidScope(scope: String): Unit
    Definition Classes
    CheckLicense
  23. def checkValidScopeAndEnvironment(scope: String, spark: Option[SparkSession], checkLp: Boolean): Unit
    Definition Classes
    CheckLicense
  24. def checkValidScopesAndEnvironment(scopes: Seq[String], spark: Option[SparkSession], checkLp: Boolean): Unit
    Definition Classes
    CheckLicense
  25. def chunkFlexibleEquals(chunkA: Annotation, chunkB: Annotation): Boolean
  26. def chunkSameEntity(chunkA: Annotation, chunkB: Annotation): Boolean
  27. final def clear(param: Param[_]): DeIdentificationModel.this.type
    Definition Classes
    Params
  28. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  29. val consistentObfuscation: BooleanParam

    Whether to replace very similar entities in a document with the same randomized term (default: true) The similarity is based on the Levenshtein Distance between the words.

    Whether to replace very similar entities in a document with the same randomized term (default: true) The similarity is based on the Levenshtein Distance between the words.

    Definition Classes
    DeIdentificationParams
  30. def copy(extra: ParamMap): DeIdentificationModel
    Definition Classes
    RawAnnotator → Model → Transformer → PipelineStage → Params
  31. def copyValues[T <: Params](to: T, extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  32. def createAnonymizeAnnotation(anonymizeSentence: (Sentence, Seq[Annotation]), offset: Int, idx: Int, spacesLength: Int): Annotation

    The method that takes anonymized sentence to create proper Annotation

    The method that takes anonymized sentence to create proper Annotation

    anonymizeSentence

    a sentence, which is anonymized

    idx

    a index of the sentence

    returns

    a proper Annotation instance

  33. val dateFormats: StringArrayParam

    Format of dates to displace

    Format of dates to displace

    Definition Classes
    BaseDeidParams
  34. val dateTag: Param[String]

    Tag representing what are the NER entity (default: DATE)

    Tag representing what are the NER entity (default: DATE)

    Definition Classes
    DeIdentificationParams
  35. val dateToYear: BooleanParam

    true if dates must be converted to years, false otherwise

    true if dates must be converted to years, false otherwise

    Definition Classes
    DeIdentificationParams
  36. val days: IntParam

    Number of days to obfuscate the dates by displacement.

    Number of days to obfuscate the dates by displacement. If not provided a random integer between 1 and 60 will be used

    Definition Classes
    BaseDeidParams
  37. final def defaultCopy[T <: Params](extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  38. def dfAnnotate: UserDefinedFunction
    Definition Classes
    HasSimpleAnnotate
  39. 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
  40. def duplicateClean(entities: Seq[Annotation], entitiesToCompare: Seq[Annotation]): Seq[Annotation]
  41. val entityCasingModes: StructFeature[Map[String, Array[String]]]

    Dictionary with entity casing modes that match some entities 'lowercase': Converts all characters to lower case using the rules of the default locale.

    Dictionary with entity casing modes that match some entities 'lowercase': Converts all characters to lower case using the rules of the default locale. 'uppercase': Converts all characters to upper case using the rules of the default locale. 'capitalize': Converts the first character to upper case and converts others to lower case. 'titlecase': Converts the first character in every token to upper case and converts others to lower case.

  42. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  43. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  44. def explainParam(param: Param[_]): String
    Definition Classes
    Params
  45. def explainParams(): String
    Definition Classes
    Params
  46. def extraValidate(structType: StructType): Boolean
    Attributes
    protected
    Definition Classes
    RawAnnotator
  47. def extraValidateMsg: String
    Attributes
    protected
    Definition Classes
    RawAnnotator
  48. final def extractParamMap(): ParamMap
    Definition Classes
    Params
  49. final def extractParamMap(extra: ParamMap): ParamMap
    Definition Classes
    Params
  50. val fakerLengthOffset: IntParam

    It specifies how much length deviation is accepted in obfuscation, with keepTextSizeForObfuscation enabled.

    It specifies how much length deviation is accepted in obfuscation, with keepTextSizeForObfuscation enabled. Value must be greater than 0. Default is 3.

    Definition Classes
    DeIdentificationParams
  51. val features: ArrayBuffer[Feature[_, _, _]]
    Definition Classes
    HasFeatures
  52. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  53. val fixedMaskLength: IntParam

    Select the fixed mask length: this is the length of the masking sequence that will be used when the 'fixed_length_chars' masking policy is selected.

    Select the fixed mask length: this is the length of the masking sequence that will be used when the 'fixed_length_chars' masking policy is selected.

    Definition Classes
    DeIdentificationParams
  54. val genderAwareness: BooleanParam

    Whether to use gender-aware names or not during obfuscation.

    Whether to use gender-aware names or not during obfuscation. This param effects only names. If value is true, it might decrease performance. Default: False

    Definition Classes
    BaseDeidParams
  55. def generateFakeBySameLength(wordToReplace: String, entity: String): String

    obfuscating digits to new digits, letters to new letters and others remains the same

    obfuscating digits to new digits, letters to new letters and others remains the same

    Definition Classes
    DeidModelParams
  56. def generateFakeBySameLengthUsingHash(wordToReplace: String, entity: String): String
    Attributes
    protected
    Definition Classes
    DeidModelParams
  57. def get[K, V](feature: MapFeature[K, V]): Option[Map[K, V]]
    Definition Classes
    DeIdentificationModel → HasFeatures
  58. def get[T](feature: StructFeature[T]): Option[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  59. def get[T](feature: SetFeature[T]): Option[Set[T]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  60. def get[T](feature: ArrayFeature[T]): Option[Array[T]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  61. final def get[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  62. def getAllTerms: Map[String, List[String]]

    dictionary, which contains all terms for using later in anonimization function

  63. def getAnonymizeSentence(sentence: Sentence, protectedEntities: Seq[Annotation], dateTag: String = "DATE", wholeDocumentDate: Option[Int] = None, zipCodeTag: String = "ZIP"): (String, Seq[Annotation])

    Main point of interest.

    Main point of interest. This method projects the sentence into the anonymized form This method is called for each sentence in the input collection of Annotations

    sentence

    a sentence, which we want to anonymize

    protectedEntities

    a sequence of Entities which we want to anonymize

    dateTag

    a String which represents the value with which we replace dates

    returns

    a String, which represents an anonymized sentence

  64. def getBlackListEntities: Array[String]

    Gets blackListEntities param

    Definition Classes
    DeIdentificationParams
  65. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  66. def getConsistentObfuscation: Boolean
    Definition Classes
    DeIdentificationParams
  67. def getDateFormats: Array[String]
    Definition Classes
    BaseDeidParams
  68. def getDateTag: String
    Definition Classes
    DeIdentificationParams
  69. def getDateToYear: Boolean
    Definition Classes
    DeIdentificationParams
  70. def getDays: Int
    Definition Classes
    BaseDeidParams
  71. final def getDefault[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  72. def getEntityCasingModes: Option[Map[String, Array[String]]]
  73. def getFakeByHashcode(fakes: Seq[String], wordToReplace: String, entity: String, seed: Int): String
    Attributes
    protected
    Definition Classes
    DeidModelParams
  74. def getFakeWithSameSize(fakes: Seq[String], wordToReplace: String, entity: String, lengthDeviation: Int, seed: Int): String
    Attributes
    protected
    Definition Classes
    DeidModelParams
  75. def getFakerLengthOffset: Int

    Gets fakerLengthOffset param

    Gets fakerLengthOffset param

    Definition Classes
    DeIdentificationParams
  76. def getFakersEntity(entity: String, result: String): Seq[String]
    Definition Classes
    DeidModelParams
  77. def getIgnoreRegex: Boolean
    Definition Classes
    DeIdentificationParams
  78. def getInputCols: Array[String]
    Definition Classes
    HasInputAnnotationCols
  79. def getKeepMonth: Boolean

    Gets keepMonth param

    Gets keepMonth param

    Definition Classes
    DeIdentificationParams
  80. def getKeepTextSizeForObfuscation: Boolean

    Gets keepTextSizeForObfuscation param

  81. def getKeepYear: Boolean

    Gets keepYear param

    Gets keepYear param

    Definition Classes
    DeIdentificationParams
  82. def getLanguage: String
    Definition Classes
    BaseDeidParams
  83. def getLazyAnnotator: Boolean
    Definition Classes
    CanBeLazy
  84. def getMappingsColumn: String
    Definition Classes
    DeIdentificationParams
  85. def getMaskingPolicy: String
    Definition Classes
    DeIdentificationParams
  86. def getMetadataMaskingPolicy: String

    Gets metadataMaskingPolicy param

    Definition Classes
    DeIdentificationParams
  87. def getMinYear: Int
    Definition Classes
    DeIdentificationParams
  88. def getMode: String
    Definition Classes
    DeIdentificationParams
  89. def getNearTokens(tokenizedSentence: Seq[IndexedToken], count: Int, ngrams: Int = 2): (String, String)
  90. def getNerEntitiesBySentence(annotations: Seq[Annotation], sentenceCount: Int): Seq[Seq[Annotation]]

    Returns the NER Annotations for each Annotation instance in the input Sequence

    Returns the NER Annotations for each Annotation instance in the input Sequence

    annotations

    a Sequence of Annotation instances

    returns

    a Sequence of Sequence[IndexedToken], each Sequence represents tokens from each input Annotation

  91. def getObfuscateByAgeGroups: Boolean

    Gets obfuscateByAgeGroups param

    Definition Classes
    DeIdentificationParams
  92. def getObfuscateDate: Boolean
    Definition Classes
    DeIdentificationParams
  93. def getObfuscateRefSource: String
    Definition Classes
    BaseDeidParams
  94. def getObfuscationStrategyOnException: String
    Definition Classes
    DeIdentificationParams
  95. final def getOrDefault[T](param: Param[T]): T
    Definition Classes
    Params
  96. final def getOutputCol: String
    Definition Classes
    HasOutputAnnotationCol
  97. def getParam(paramName: String): Param[Any]
    Definition Classes
    Params
  98. def getRegexEntities(tokensSentences: Seq[IndexedToken], idx: Int): Seq[Annotation]

    Returns the Regex Annotations for each IndexedToken in the input Sequence

    Returns the Regex Annotations for each IndexedToken in the input Sequence

    tokensSentences

    a Sequence of IndexedToken instances

    returns

    a Sequence of Annotation, each Annotation represents Regex Entity

  99. def getRegexEntities(): Array[String]
  100. def getRegexOverride: Boolean
    Definition Classes
    DeIdentificationParams
  101. def getRegexPatternsDictionary: Map[String, Array[String]]

    dictionary with regular expression patterns that match some protected entity

  102. def getReturnEntityMappings: Boolean
    Definition Classes
    DeIdentificationParams
  103. def getSameEntityThreshold: Double
    Definition Classes
    DeIdentificationParams
  104. def getSameLengthFormattedEntities(): Array[String]
    Definition Classes
    BaseDeidParams
  105. def getSeed(): Int
    Definition Classes
    BaseDeidParams
  106. def getSelectiveObfuscationModes: Option[Map[String, Array[String]]]
  107. def getSentences(annotations: Seq[Annotation]): Seq[Sentence]

    Returns the content of each sentence inside the input sequence

    Returns the content of each sentence inside the input sequence

    annotations

    a Sequence of Annotation instances, to return content from

    returns

    a Sequence of Sentence

  108. def getTokensBySentence(annotations: Seq[Annotation]): Seq[Seq[IndexedToken]]

    Returns the tokens for each Annotation instance in the input Sequence

    Returns the tokens for each Annotation instance in the input Sequence

    annotations

    a Sequence of Annotation instances

    returns

    a Sequence of Sequence[IndexedToken], each Sequence represents tokens from each input Annotation

  109. def getUseShiftDays: Boolean

    Getter method of useShiftDays

    Getter method of useShiftDays

    Definition Classes
    DeIdentificationParams
  110. def getValidAgeRanges: Array[Int]

    Gets valid ageRanges whether ageRangesByHipaa is true or not.

    Gets valid ageRanges whether ageRangesByHipaa is true or not.

    Attributes
    protected
    Definition Classes
    DeIdentificationModelDeidModelParams
  111. def getZipCodeTag: String
    Definition Classes
    DeIdentificationParams
  112. def handleCasing(originalFake: String, wordToReplace: String): String
    Attributes
    protected
    Definition Classes
    DeidModelParams
  113. def handleEntitiesDifferences(AEntities: Seq[Annotation], BEntities: Seq[Annotation]): Seq[Annotation]

    Returns a complement of A entities against B entities

    Returns a complement of A entities against B entities

    AEntities

    a sequence of Entities to combine

    BEntities

    an sequence of Entities to combine

    returns

    a Sequence of Annotation, which is difference between NER and RegEx

  114. final def hasDefault[T](param: Param[T]): Boolean
    Definition Classes
    Params
  115. def hasParam(paramName: String): Boolean
    Definition Classes
    Params
  116. def hasParent: Boolean
    Definition Classes
    Model
  117. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  118. val ignoreRegex: BooleanParam

    Select if you want to use regex file loaded in the model.

    Select if you want to use regex file loaded in the model. If true the default regex file will be not used The default value is false.

    Definition Classes
    DeIdentificationParams
  119. val inExceptionMode: Boolean
    Attributes
    protected
    Definition Classes
    HasSafeAnnotate
  120. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  121. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  122. val inputAnnotatorTypes: Array[AnnotatorType]

    Input annotator type: DOCUMENT, TOKEN, CHUNK

    Input annotator type: DOCUMENT, TOKEN, CHUNK

    Definition Classes
    DeIdentificationModel → HasInputAnnotationCols
  123. final val inputCols: StringArrayParam
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  124. final def isDefined(param: Param[_]): Boolean
    Definition Classes
    Params
  125. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  126. val isRandomDateDisplacement: BooleanParam

    Use a random displacement days in dates entities,that random number is based on the DeIdentificationParams.seed If true use random displacement days in dates entities,if false use the DeIdentificationParams.days The default value is false.

    Use a random displacement days in dates entities,that random number is based on the DeIdentificationParams.seed If true use random displacement days in dates entities,if false use the DeIdentificationParams.days The default value is false.

    Definition Classes
    DeIdentificationParams
  127. def isRegexMatch(nerTokens: (String, String), token: String, regexPatterns: Array[String]): Boolean

    Returns Boolean flag, which says if the token matches at least one pattern from array

    Returns Boolean flag, which says if the token matches at least one pattern from array

    token

    a token of interest to check for the match

    regexPatterns

    an Array of String to check against the token

    returns

    a Boolean flag, representing if the token matches at least pattern one of regexPatterns

  128. final def isSet(param: Param[_]): Boolean
    Definition Classes
    Params
  129. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  130. val keepMonth: BooleanParam

    Whether to keep the month intact when obfuscating date entities.

    Whether to keep the month intact when obfuscating date entities. If true, the month will remain unchanged during the obfuscation process. If false, the month will be modified along with the year and day. Default: false.

    Definition Classes
    DeIdentificationParams
  131. val keepTextSizeForObfuscation: BooleanParam

    It specifies whether the output should maintain the same character length as the input text.

    It specifies whether the output should maintain the same character length as the input text. the output text will remain the same if same length is available, else length might vary.

    Definition Classes
    DeIdentificationParams
  132. val keepYear: BooleanParam

    Whether to keep the year intact when obfuscating date entities.

    Whether to keep the year intact when obfuscating date entities. If true, the year will remain unchanged during the obfuscation process. If false, the year will be modified along with the month and day. Default: false.

    Definition Classes
    DeIdentificationParams
  133. val language: Param[String]

    The language used to select the regex file and some faker entities.

    The language used to select the regex file and some faker entities. 'en'(English),'de'(German), 'es'(Spanish), 'fr'(French), 'ar'(Arabic) or 'ro'(Romanian) Default:'en'

    Definition Classes
    BaseDeidParams
  134. val lazyAnnotator: BooleanParam
    Definition Classes
    CanBeLazy
  135. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  136. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  137. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  138. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  139. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  140. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  141. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  142. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  143. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  144. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  145. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  146. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  147. val mappingsColumn: Param[String]

    This is the mapping column that will return the Annotations chunks with the fake entities

    This is the mapping column that will return the Annotations chunks with the fake entities

    Definition Classes
    DeIdentificationParams
  148. val maskingPolicy: Param[String]

    Select the masking policy:

    Select the masking policy:

    • 'entity_labels': Replace the values with the entity value.
    • 'same_length_chars': Replace the name with the asterix with same length minus two plus brackets on both end.If the entity is less than 3 chars (like Jo, or 5), we can just use asterix without brackets.
    • 'fixed_length_chars': Replace the obfuscated entity with a masking sequence composed of a fixed number of asterisk.
    • Default: 'entity_labels'
    Definition Classes
    DeIdentificationParams
  149. def mergeEntities(nerEntities: Seq[Annotation], regexEntities: Seq[Annotation], regexOverride: Boolean = false): Seq[Annotation]

    Returns a combined Sequence of Annotations, cleaned from duplicates

    Returns a combined Sequence of Annotations, cleaned from duplicates

    nerEntities

    a sequence of NER Entities to combine

    regexEntities

    an sequence of Regex Entities to combine

    returns

    a Sequence of Annotation, which is result of a merge without duplicates

  150. val metadataMaskingPolicy: Param[String]

    If specified, the metadata includes the masked form of the document.

    If specified, the metadata includes the masked form of the document. Select the following masking policy if you want to return mask form in the metadata:

    • 'entity_labels': Replace the values with the entity value.
    • 'same_length_chars': Replace the name with the asterix with same length minus two plus brackets on both end.If the entity is less than 3 chars (like Jo, or 5), we can just use asterix without brackets.
    • 'fixed_length_chars': Replace the obfuscated entity with a masking sequence composed of a fixed number of asterisk.
    • Default: ""
    Definition Classes
    DeIdentificationParams
  151. val minYear: IntParam

    Minimum year to use when converting date to year

    Minimum year to use when converting date to year

    Definition Classes
    DeIdentificationParams
  152. val mode: Param[String]

    Mode for Anonymizer ['mask'|'obfuscate'].

    Mode for Anonymizer ['mask'|'obfuscate']. Default: 'mask'

    • Mask mode: The entities will be replaced by their entity types.
    • Obfuscate mode: The entity is replaced by an obfuscator's term.
    Definition Classes
    DeIdentificationParams
    Example:
    1. Given the following text: "David Hale visited EEUU a couple of years ago"

      • Mask mode: "<PERSON> visited <COUNTRY> a couple of years ago"
      • Obfuscate mode: "Bryan Johnson visited Japan a couple of years ago"
  153. def msgHelper(schema: StructType): String
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  154. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  155. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  156. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  157. val obfuscateByAgeGroups: BooleanParam

    Whether to obfuscate ages based on age groups.

    Whether to obfuscate ages based on age groups.

    When true, the age groups specified in the ageGroups parameter will be used to obfuscate ages. When false, the age ranges specified in the ageRanges parameter will be used to obfuscate ages. Default: false.

    Definition Classes
    DeIdentificationParams
  158. val obfuscateDate: BooleanParam

    When mode=="obfuscate" whether to obfuscate dates or not.

    When mode=="obfuscate" whether to obfuscate dates or not. This param helps in consistency to make dateFormats more visible. When setting to true, make sure dateFormats param fits the needs. If the value is true and obfuscation is failed, then DeIdentificationParams.unnormalizedDateMode will be activated. When setting to 'false', then the date will be masked to <DATE> Default: false

    Definition Classes
    DeIdentificationParams
  159. val obfuscateRefSource: Param[String]

    The source of obfuscation to obfuscate the entities.

    The source of obfuscation to obfuscate the entities. The values ar the following: 'file': Takes the entities from the obfuscatorRefFile 'faker': Takes the entities from the Faker module 'both': Takes the entities from the obfuscatorRefFile and the faker module randomly.

    Definition Classes
    BaseDeidParams
  160. val obfuscationStrategyOnException: Param[String]

    The obfuscation strategy to be applied when an exception occurs.

    The obfuscation strategy to be applied when an exception occurs.

    The obfuscation strategy determines how obfuscation is handled in case of an exception. Four possible values are supported:

    • "mask": The original chunk is replaced with a masking pattern.
    • "default": The original chunk is replaced with a default faker.
    • "skip": The original chunk is not replaced with any faker.
    • "exception": Throws the exception.

    The default obfuscation strategy is "default".

    Definition Classes
    DeIdentificationParams
  161. def onWrite(path: String, spark: SparkSession): Unit
    Attributes
    protected
    Definition Classes
    ParamsAndFeaturesWritable
  162. val optionalInputAnnotatorTypes: Array[String]
    Definition Classes
    HasInputAnnotationCols
  163. val outputAnnotatorType: AnnotatorType

    Output annotator types: DOCUMENT

    Output annotator types: DOCUMENT

    Definition Classes
    DeIdentificationModel → HasOutputAnnotatorType
  164. val outputAsDocument: BooleanParam

    Whether to return all sentences joined into a single document

    Whether to return all sentences joined into a single document

    Definition Classes
    DeIdentificationParams
  165. final val outputCol: Param[String]
    Attributes
    protected
    Definition Classes
    HasOutputAnnotationCol
  166. lazy val params: Array[Param[_]]
    Definition Classes
    Params
  167. var parent: Estimator[DeIdentificationModel]
    Definition Classes
    Model
  168. val random: SecureRandom
    Attributes
    protected
    Definition Classes
    DeidModelParams
  169. val regexEntities: StringArrayParam
  170. val regexOverride: BooleanParam

    If the value is true, prioritize the regex entities; if the value is false, prioritize the ner.

    If the value is true, prioritize the regex entities; if the value is false, prioritize the ner. The default value is false. If DeIdentification.combineRegexPatterns is true, this value will be invalid.

    Definition Classes
    DeIdentificationParams
  171. val regexPatternsDictionary: MapFeature[String, Array[String]]

    dictionary with regular expression patterns that match some protected entity

  172. val region: Param[String]

    With this property, you can select particular dateFormats.

    With this property, you can select particular dateFormats. This property is especially used when obfuscating dates. You can decide whether the first part of 11/11/2023 is a day or the second part is a day when obfuscating dates. The values are following: 'eu' for European Union 'us' for USA Default: 'eu'

    Definition Classes
    DeIdentificationParams
  173. def replaceRegExFlavors(word: String): String

    This is simple RegEx replace which removes some punctuation tokens from input

    This is simple RegEx replace which removes some punctuation tokens from input

    word

    a String, inside which we want to replace flavors

    returns

    a String, which represents a cleaned version

  174. val returnEntityMappings: BooleanParam

    With this property, you can select if you want to return mapping column.

    With this property, you can select if you want to return mapping column.

    Definition Classes
    DeIdentificationParams
  175. 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
  176. val sameEntityThreshold: DoubleParam

    Similarity threshold [0.0-1.0] to consider two appearances of an entity as the same (default: 0.9) For date entities this method doesn't apply.

    Similarity threshold [0.0-1.0] to consider two appearances of an entity as the same (default: 0.9) For date entities this method doesn't apply.

    Definition Classes
    DeIdentificationParams
  177. val sameLengthFormattedEntities: StringArrayParam

    List of formatted entities to generate the same length outputs as original ones during obfuscation.

    List of formatted entities to generate the same length outputs as original ones during obfuscation. The supported and default formatted entities are: "phone", "fax", "contact," "id", "idnum", "bioid", "medicalrecord", "zip", "vin", "ssn", "dln", "plate", "license", "IRS", "CFN", "account".

    Definition Classes
    BaseDeidParams
  178. def save(path: String): Unit
    Definition Classes
    MLWritable
    Annotations
    @Since( "1.6.0" ) @throws( ... )
  179. val seed: IntParam

    It is the seed to select the entities on obfuscate mode.

    It is the seed to select the entities on obfuscate mode. With the seed, you can reply to an execution several times with the same output.

    Definition Classes
    BaseDeidParams
  180. val selectiveObfuscationModes: StructFeature[Map[String, Array[String]]]

    dictionary of modes to enable multi-mode deidentification.

    dictionary of modes to enable multi-mode deidentification. 'obfuscate': Replace the values with random values. 'mask_same_length_chars': Replace the name with the asterix with same length minus two plus brackets on both end. 'entity_labels': Replace the values with the entity value. 'mask_fixed_length_chars': Replace the name with the asterix with fixed length. You should also invoke "setFixedMaskLength()" 'skip': Skip the entities (intact) The entities which have not been given in dictionary will deidentify according to setMode()

  181. def set[T](feature: StructFeature[T], value: T): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  182. def set[K, V](feature: MapFeature[K, V], value: Map[K, V]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  183. def set[T](feature: SetFeature[T], value: Set[T]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  184. def set[T](feature: ArrayFeature[T], value: Array[T]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  185. final def set(paramPair: ParamPair[_]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  186. final def set(param: String, value: Any): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  187. final def set[T](param: Param[T], value: T): DeIdentificationModel.this.type
    Definition Classes
    Params
  188. def setAgeGroups(value: Map[String, Array[Int]]): DeIdentificationModel.this.type

    Sets the age groups to obfuscate ages.

    Sets the age groups to obfuscate ages. For this parameter to be active, the obfuscateByAgeGroups parameter must be true. If the given ageGroups do not fully contain the ages, the ages continue to be obfuscated according to the ageRanges. The map should contain the age group name as the key and an array of two integers as the value. The first integer is the lower bound of the age group, and the second integer is the upper bound of the age group. Default age groups are as follows in the English language:

    Map(
    "baby" -> Array(0, 1),
    "toddler" -> Array(1, 3),
    "child" -> Array(3, 12),
    "teenager" -> Array(12, 20),
    "adult" -> Array(20, 65),
    "senior" -> Array(65, 200)
    )
    Definition Classes
    DeIdentificationParams
    Exceptions thrown

    IllegalArgumentException if the value is empty, contains negative values, or is not a pair of integers

  189. def setAgeGroups(value: HashMap[String, ArrayList[Int]]): DeIdentificationModel.this.type
    Definition Classes
    DeIdentificationParams
  190. def setAgeRanges(mode: Array[Int]): DeIdentificationModel.this.type

    List of integers specifying limits of the age groups to preserve during obfuscation

    List of integers specifying limits of the age groups to preserve during obfuscation

    Definition Classes
    BaseDeidParams
  191. def setAgeRangesByHipaa(value: Boolean): DeIdentificationModel.this.type

    Sets whether to obfuscate ages based on HIPAA (Health Insurance Portability and Accountability Act) Privacy Rule.

    Sets whether to obfuscate ages based on HIPAA (Health Insurance Portability and Accountability Act) Privacy Rule.

    The HIPAA Privacy Rule mandates that ages from patients older than 90 years must be obfuscated, while age for patients 90 years or younger can remain unchanged.

    value

    If true, age entities larger than 90 will be obfuscated as per HIPAA Privacy Rule, the others will remain unchanged. If false, ageRanges parameter is valid. Default: false.

    Definition Classes
    DeIdentificationParams
  192. def setAllTerms(value: Map[String, List[String]]): DeIdentificationModel.this.type
  193. def setBlackList(list: Array[String]): DeIdentificationModel.this.type

    List of entities that will be ignored to in the regex file.

    List of entities that will be ignored to in the regex file. The rest will be processed. The default values are "IBAN","ZIP","NPI","DLN","PASSPORT","C_CARD","DEA","SSN", "IP", "DEA".

    Definition Classes
    DeIdentificationParams
  194. def setBlackListEntities(value: Array[String]): DeIdentificationModel.this.type

    Sets the list of entities coming from NER or regex rules that will be ignored for masking or obfuscation.

    Sets the list of entities coming from NER or regex rules that will be ignored for masking or obfuscation. The rest entities will be processed. Defaults to an empty array.

    Definition Classes
    DeIdentificationParams
  195. def setConsistentObfuscation(s: Boolean): DeIdentificationModel.this.type

    Whether to replace very similar entities in a document with the same randomized term (default: true) The similarity is based on the Levenshtein Distance between the words.

    Whether to replace very similar entities in a document with the same randomized term (default: true) The similarity is based on the Levenshtein Distance between the words.

    Definition Classes
    DeIdentificationParams
  196. def setDateFormats(s: Array[String]): DeIdentificationModel.this.type

    Format of dates to displace

    Format of dates to displace

    Definition Classes
    BaseDeidParams
  197. def setDateTag(s: String): DeIdentificationModel.this.type

    Tag representing what are the NER entity (default: DATE)

    Tag representing what are the NER entity (default: DATE)

    Definition Classes
    DeIdentificationParams
  198. def setDateToYear(s: Boolean): DeIdentificationModel.this.type

    true if dates must be converted to years, false otherwise

    true if dates must be converted to years, false otherwise

    Definition Classes
    DeIdentificationParams
  199. def setDays(k: Int): DeIdentificationModel.this.type

    Number of days to obfuscate the dates by displacement.

    Number of days to obfuscate the dates by displacement. If not provided a random integer between 1 and 60 will be used

    Definition Classes
    BaseDeidParams
  200. def setDefault[T](feature: StructFeature[T], value: () ⇒ T): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  201. def setDefault[K, V](feature: MapFeature[K, V], value: () ⇒ Map[K, V]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  202. def setDefault[T](feature: SetFeature[T], value: () ⇒ Set[T]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  203. def setDefault[T](feature: ArrayFeature[T], value: () ⇒ Array[T]): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  204. final def setDefault(paramPairs: ParamPair[_]*): DeIdentificationModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  205. final def setDefault[T](param: Param[T], value: T): DeIdentificationModel.this.type
    Attributes
    protected[org.apache.spark.ml]
    Definition Classes
    Params
  206. def setDoExceptionHandling(value: Boolean): DeIdentificationModel.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
  207. def setEntityCasingModes(value: Map[String, Array[String]]): DeIdentificationModel.this.type

    Set dictionary with entity casing modes that match some entities.

    Set dictionary with entity casing modes that match some entities. 'lowercase': Converts all characters to lower case using the rules of the default locale. 'uppercase': Converts all characters to upper case using the rules of the default locale. 'capitalize': Converts the first character to upper case and converts others to lower case. 'titlecase': Converts the first character in every token to upper case and converts others to lower case.

  208. def setFakerLengthOffset(value: Int): DeIdentificationModel.this.type

    Sets fakerLengthOffset param

    Sets fakerLengthOffset param

    Definition Classes
    DeIdentificationParams
  209. def setFixedMaskLength(value: Int): DeIdentificationModel.this.type

    fixed mask length: this is the length of the masking sequence that will be used when the 'fixed_length_chars' masking policy is selected.

    fixed mask length: this is the length of the masking sequence that will be used when the 'fixed_length_chars' masking policy is selected.

    Definition Classes
    DeIdentificationParams
  210. def setGenderAwareness(value: Boolean): DeIdentificationModel.this.type

    Whether to use gender-aware names or not during obfuscation.

    Whether to use gender-aware names or not during obfuscation. This param effects only names. If value is true, it might decrease performance. Default: False

    Definition Classes
    BaseDeidParams
  211. def setIgnoreRegex(s: Boolean): DeIdentificationModel.this.type

    Select if you want to use regex file loaded in the model.

    Select if you want to use regex file loaded in the model. If true the default regex file will be not used The default value is false.

    Definition Classes
    DeIdentificationParams
  212. final def setInputCols(value: String*): DeIdentificationModel.this.type
    Definition Classes
    HasInputAnnotationCols
  213. def setInputCols(value: Array[String]): DeIdentificationModel.this.type
    Definition Classes
    HasInputAnnotationCols
  214. def setIsRandomDateDisplacement(s: Boolean): DeIdentificationModel.this.type

    Use a random displacement days in dates entities,that random number is based on the DeIdentificationParams.seed If true use random displacement days in dates entities, if false use the DeIdentificationParams.days The default value is false.

    Use a random displacement days in dates entities,that random number is based on the DeIdentificationParams.seed If true use random displacement days in dates entities, if false use the DeIdentificationParams.days The default value is false.

    Definition Classes
    DeIdentificationParams
  215. def setKeepMonth(value: Boolean): DeIdentificationModel.this.type

    Sets whether to keep the month intact when obfuscating date entities.

    Sets whether to keep the month intact when obfuscating date entities. If true, the month will remain unchanged during the obfuscation process. If false, the month will be modified along with the year and day. Default: false.

    Definition Classes
    DeIdentificationParams
  216. def setKeepTextSizeForObfuscation(value: Boolean): DeIdentificationModel.this.type

    Sets keepTextSizeForObfuscation param

  217. def setKeepYear(value: Boolean): DeIdentificationModel.this.type

    Sets whether to keep the year intact when obfuscating date entities.

    Sets whether to keep the year intact when obfuscating date entities. If true, the year will remain unchanged during the obfuscation process. If false, the year will be modified along with the month and day. Default: false.

    Definition Classes
    DeIdentificationParams
  218. def setLanguage(s: String): DeIdentificationModel.this.type

    The language used to select the regex file and some faker entities.

    The language used to select the regex file and some faker entities. 'en'(English),'de'(German), 'es'(Spanish), 'fr'(French), 'ar'(Arabic) or 'ro'(Romanian). Default:'en'

    Definition Classes
    BaseDeidParams
  219. def setLazyAnnotator(value: Boolean): DeIdentificationModel.this.type
    Definition Classes
    CanBeLazy
  220. def setMappingsColumn(s: String): DeIdentificationModel.this.type

    This is the mapping column that will return the Annotations chunks with the fake entities

    This is the mapping column that will return the Annotations chunks with the fake entities

    Definition Classes
    DeIdentificationParams
  221. def setMaskingPolicy(value: String): DeIdentificationModel.this.type

    Select the masking policy:

    Select the masking policy:

    • 'entity_labels': Replace the values with the entity value.
    • 'same_length_chars': Replace the name with the asterix with same length minus two plus brackets on both end.If the entity is less than 3 chars (like Jo, or 5), we can just use asterix without brackets.
    • 'fixed_length_chars': Replace the obfuscated entity with a masking sequence composed of a fixed number of asterisk.
    • Default: 'entity_labels'
    Definition Classes
    DeIdentificationParams
  222. def setMetadataMaskingPolicy(value: String): DeIdentificationModel.this.type

    If specified, the metadata includes the masked form of the document.

    If specified, the metadata includes the masked form of the document. Select the following masking policy if you want to return mask form in the metadata:

    • 'entity_labels': Replace the values with the entity value.
    • 'same_length_chars': Replace the name with the asterix with same length minus two plus brackets on both end.If the entity is less than 3 chars (like Jo, or 5), we can just use asterix without brackets.
    • 'fixed_length_chars': Replace the obfuscated entity with a masking sequence composed of a fixed number of asterisk.
    • Default: ""
    Definition Classes
    DeIdentificationParams
  223. def setMinYear(s: Int): DeIdentificationModel.this.type

    Minimum year to use when converting date to year

    Minimum year to use when converting date to year

    Definition Classes
    DeIdentificationParams
  224. def setMode(m: String): DeIdentificationModel.this.type

    Mode for Anonymizer ['mask'|'obfuscate'].

    Mode for Anonymizer ['mask'|'obfuscate']. Default: 'mask'

    • Mask mode: The entities will be replaced by their entity types.
    • Obfuscate mode: The entity is replaced by an obfuscator's term.
    Definition Classes
    DeIdentificationParams
    Example:
    1. Given the following text: "David Hale visited EEUU a couple of years ago"

      • Mask mode: "<PERSON> visited <COUNTRY> a couple of years ago"
      • Obfuscate mode: "Bryan Johnson visited Japan a couple of years ago"
  225. def setObfuscateByAgeGroups(value: Boolean): DeIdentificationModel.this.type

    Sets whether to obfuscate ages based on age groups.

    Sets whether to obfuscate ages based on age groups.

    When true, the age groups specified in the ageGroups parameter will be used to obfuscate ages. When false, the age ranges specified in the ageRanges parameter will be used to obfuscate ages. Default: false.

    Definition Classes
    DeIdentificationParams
  226. def setObfuscateDate(s: Boolean): DeIdentificationModel.this.type

    When mode=="obfuscate" whether to obfuscate dates or not.

    When mode=="obfuscate" whether to obfuscate dates or not. This param helps in consistency to make dateFormats more visible. When setting to true, make sure dateFormats param fits the needs. If the value is true and obfuscation is failed, then DeIdentificationParams.unnormalizedDateMode will be activated. When setting to 'false' then the date will be masked to <DATE> Default: false

    Definition Classes
    DeIdentificationParams
  227. def setObfuscateRefSource(s: String): DeIdentificationModel.this.type

    The source of obfuscation to obfuscate the entities.

    The source of obfuscation to obfuscate the entities. The values are the following: 'file': Takes the entities from the obfuscatorRefFile 'faker': Takes the entities from the Faker module 'both': Takes the entities from the obfuscatorRefFile and the faker module randomly.

    Definition Classes
    BaseDeidParams
  228. def setObfuscationStrategyOnException(value: String): DeIdentificationModel.this.type

    Sets the obfuscation strategy to be applied when an exception occurs.

    Sets the obfuscation strategy to be applied when an exception occurs.

    The obfuscation strategy determines how obfuscation is handled in case of an exception. Four possible values are supported:

    • "mask": The original chunk is replaced with a masking pattern.
    • "default": The original chunk is replaced with a default faker.
    • "skip": The original chunk is not replaced with any faker.
    • "exception": Throws the exception.

    The default obfuscation strategy is "default".

    Definition Classes
    DeIdentificationParams
  229. def setOutputAsDocument(mode: Boolean): DeIdentificationModel.this.type

    Whether to return all sentences joined into a single document

    Whether to return all sentences joined into a single document

    Definition Classes
    DeIdentificationParams
  230. final def setOutputCol(value: String): DeIdentificationModel.this.type
    Definition Classes
    HasOutputAnnotationCol
  231. def setParent(parent: Estimator[DeIdentificationModel]): DeIdentificationModel
    Definition Classes
    Model
  232. def setRegexOverride(s: Boolean): DeIdentificationModel.this.type

    If the value is true, prioritize the regex entities; if the value is false, prioritize the ner.

    If the value is true, prioritize the regex entities; if the value is false, prioritize the ner. The default value is false. If DeIdentification.combineRegexPatterns is true, this value will be invalid.

    Definition Classes
    DeIdentificationParams
  233. def setRegexPatternsDictionary(value: Map[String, Array[String]]): DeIdentificationModel.this.type

    dictionary with regular expression patterns that match some protected entity

  234. def setRegion(s: String): DeIdentificationModel.this.type

    With this property, you can select particular dateFormats.

    With this property, you can select particular dateFormats. This property is especially used when obfuscating dates. You can decide whether the first part of 11/11/2023 is a day or the second part is a day when obfuscating dates. The values are following: 'eu' for European Union 'us' for USA Default: 'eu'

    Definition Classes
    DeIdentificationParams
  235. def setReturnEntityMappings(s: Boolean): DeIdentificationModel.this.type

    With this property, you can select if you want to return mapping column.

    With this property, you can select if you want to return mapping column.

    Definition Classes
    DeIdentificationParams
  236. def setSameEntityThreshold(s: Double): DeIdentificationModel.this.type

    Similarity threshold [0.0-1.0] to consider two appearances of an entity as the same (default: 0.9) For date entities this method doesn't apply.

    Similarity threshold [0.0-1.0] to consider two appearances of an entity as the same (default: 0.9) For date entities this method doesn't apply.

    Definition Classes
    DeIdentificationParams
  237. def setSameLengthFormattedEntities(entities: Array[String]): DeIdentificationModel.this.type

    List of formatted entities to generate the same length outputs as original ones during obfuscation.

    List of formatted entities to generate the same length outputs as original ones during obfuscation. The supported and default formatted entities are: PHONE, FAX, CONTACT, ID, IDNUM, BIOID, MEDICALRECORD, ZIP, VIN, SSN, DLN, LICENSE, PLATE, IRS, CFN, ACCOUNT.

    Definition Classes
    BaseDeidParams
  238. def setSeed(s: Int): DeIdentificationModel.this.type

    It is the seed to select the entities on obfuscate mode.

    It is the seed to select the entities on obfuscate mode. With the seed, you can reply to an execution several times with the same output.

    Definition Classes
    DeidModelParamsBaseDeidParams
  239. def setSelectiveObfuscationModes(value: Map[String, Array[String]]): DeIdentificationModel.this.type

    dictionary of modes to enable multi-mode deidentification.

    dictionary of modes to enable multi-mode deidentification. 'obfuscate': Replace the values with random values. 'mask_same_length_chars': Replace the name with the asterix with same length minus two plus brackets on both end. 'mask_entity_labels': Replace the values with the entity value. 'mask_fixed_length_chars': Replace the name with the asterix with fixed length. You should also invoke "setFixedMaskLength()". 'skip': Skip the entities (intact) The entities which have not been given in dictionary will deidentify according to setMode().

  240. def setUnnormalizedDateMode(mode: String): DeIdentificationModel.this.type

    The mode to use if the date is not formatted.

    The mode to use if the date is not formatted. [mask, obfuscate, skip] Default: obfuscate

    Definition Classes
    DeIdentificationParams
  241. def setUseShiftDays(s: Boolean): DeIdentificationModel.this.type
    Definition Classes
    DeIdentificationParams
  242. def setZipCodeTag(s: String): DeIdentificationModel.this.type
    Definition Classes
    DeIdentificationParams
  243. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  244. def toString(): String
    Definition Classes
    Identifiable → AnyRef → Any
  245. final def transform(dataset: Dataset[_]): DataFrame
    Definition Classes
    AnnotatorModel → Transformer
  246. def transform(dataset: Dataset[_], paramMap: ParamMap): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" )
  247. def transform(dataset: Dataset[_], firstParamPair: ParamPair[_], otherParamPairs: ParamPair[_]*): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" ) @varargs()
  248. final def transformSchema(schema: StructType): StructType
    Definition Classes
    RawAnnotator → PipelineStage
  249. def transformSchema(schema: StructType, logging: Boolean): StructType
    Attributes
    protected
    Definition Classes
    PipelineStage
    Annotations
    @DeveloperApi()
  250. def udfDocuments: UserDefinedFunction
  251. def udfProtectedEntities: UserDefinedFunction
  252. val uid: String
    Definition Classes
    DeIdentificationModel → Identifiable
  253. val unnormalizedDateMode: Param[String]

    The mode to use if the date is not formatted.

    The mode to use if the date is not formatted. [mask, obfuscate, skip] Default: obfuscate

    Definition Classes
    DeIdentificationParams
  254. val useShifDays: BooleanParam

    Use shift days : Whether to use the random shift day when the document has this in its metadata.

    Use shift days : Whether to use the random shift day when the document has this in its metadata. Default: False

    Definition Classes
    DeIdentificationParams
  255. def validate(schema: StructType): Boolean
    Attributes
    protected
    Definition Classes
    RawAnnotator
  256. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  257. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  258. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  259. def wrapColumn(col: Column): Column
  260. def wrapColumnMetadata(col: Column): Column
    Attributes
    protected
    Definition Classes
    RawAnnotator
  261. def write: MLWriter
    Definition Classes
    ParamsAndFeaturesWritable → DefaultParamsWritable → MLWritable
  262. val zipCodeTag: Param[String]
    Definition Classes
    DeIdentificationParams

Deprecated Value Members

  1. def setUseShiftDayse(s: Boolean): DeIdentificationModel.this.type
    Definition Classes
    DeIdentificationParams
    Annotations
    @deprecated
    Deprecated

    deprecated because of typo

Inherited from CheckLicense

Inherited from HandleExceptionParams

Inherited from HasSimpleAnnotate[DeIdentificationModel]

Inherited from DeidModelParams

Inherited from DeIdentificationParams

Inherited from BaseDeidParams

Inherited from AnnotatorModel[DeIdentificationModel]

Inherited from CanBeLazy

Inherited from RawAnnotator[DeIdentificationModel]

Inherited from HasOutputAnnotationCol

Inherited from HasInputAnnotationCols

Inherited from HasOutputAnnotatorType

Inherited from ParamsAndFeaturesWritable

Inherited from HasFeatures

Inherited from DefaultParamsWritable

Inherited from MLWritable

Inherited from Model[DeIdentificationModel]

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