class MultiDocumentAssembler extends Transformer with DefaultParamsWritable with HasOutputAnnotatorType

Prepares data into a format that is processable by Spark NLP. This is the entry point for every Spark NLP pipeline. The MultiDocumentAssembler can read either a String column or an Array[String]. Additionally, setCleanupMode can be used to pre-process the text (Default: disabled). For possible options please refer the parameters section.

For more extended examples on document pre-processing see the Examples.

Example

import spark.implicits._
import com.johnsnowlabs.nlp.MultiDocumentAssembler

val data = Seq("Spark NLP is an open-source text processing library.").toDF("text")
val multiDocumentAssembler = new MultiDocumentAssembler().setInputCols("text").setOutputCols("document")

val result = multiDocumentAssembler.transform(data)

result.select("document").show(false)
+----------------------------------------------------------------------------------------------+
|document                                                                                      |
+----------------------------------------------------------------------------------------------+
|[[document, 0, 51, Spark NLP is an open-source text processing library., [sentence -> 0], []]]|
+----------------------------------------------------------------------------------------------+

result.select("document").printSchema
root
 |-- document: array (nullable = true)
 |    |-- element: struct (containsNull = true)
 |    |    |-- annotatorType: string (nullable = true)
 |    |    |-- begin: integer (nullable = false)
 |    |    |-- end: integer (nullable = false)
 |    |    |-- result: string (nullable = true)
 |    |    |-- metadata: map (nullable = true)
 |    |    |    |-- key: string
 |    |    |    |-- value: string (valueContainsNull = true)
 |    |    |-- embeddings: array (nullable = true)
 |    |    |    |-- element: float (containsNull = false)
Linear Supertypes
HasOutputAnnotatorType, DefaultParamsWritable, MLWritable, Transformer, PipelineStage, Logging, Params, Serializable, Serializable, Identifiable, AnyRef, Any
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. MultiDocumentAssembler
  2. HasOutputAnnotatorType
  3. DefaultParamsWritable
  4. MLWritable
  5. Transformer
  6. PipelineStage
  7. Logging
  8. Params
  9. Serializable
  10. Serializable
  11. Identifiable
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

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

    uid

    required uid for storing annotator to disk

Type Members

  1. 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. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. val EMPTY_STR: String
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. val cleanupMode: Param[String]

    cleanupMode can take the following values:

    cleanupMode can take the following values:

    • disabled: keep original. Useful if need to head back to source later
    • inplace: newlines and tabs into whitespaces, not stringified ones, don't trim
    • inplace_full: newlines and tabs into whitespaces, including stringified, don't trim
    • shrink: all whitespaces, newlines and tabs to a single whitespace, but not stringified, do trim
    • shrink_full: all whitespaces, newlines and tabs to a single whitespace, stringified ones too, trim all
    • each: newlines and tabs to one whitespace each
    • each_full: newlines and tabs, stringified ones too, to one whitespace each
    • delete_full: remove stringified newlines and tabs (replace with nothing)
  8. final def clear(param: Param[_]): MultiDocumentAssembler.this.type
    Definition Classes
    Params
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  10. def copy(extra: ParamMap): Transformer
    Definition Classes
    MultiDocumentAssembler → Transformer → PipelineStage → Params
  11. def copyValues[T <: Params](to: T, extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  12. final def defaultCopy[T <: Params](extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  15. def explainParam(param: Param[_]): String
    Definition Classes
    Params
  16. def explainParams(): String
    Definition Classes
    Params
  17. final def extractParamMap(): ParamMap
    Definition Classes
    Params
  18. final def extractParamMap(extra: ParamMap): ParamMap
    Definition Classes
    Params
  19. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  20. final def get[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  21. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  22. def getCleanupMode: String

    cleanupMode to pre-process text

  23. final def getDefault[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  24. def getIdCol: String

    Id column for row reference

  25. def getInputCols: Array[String]

  26. def getMetadataCol: String

    Metadata for document column

  27. final def getOrDefault[T](param: Param[T]): T
    Definition Classes
    Params
  28. def getOutputCols: Array[String]

  29. def getParam(paramName: String): Param[Any]
    Definition Classes
    Params
  30. final def hasDefault[T](param: Param[T]): Boolean
    Definition Classes
    Params
  31. def hasParam(paramName: String): Boolean
    Definition Classes
    Params
  32. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  33. val idCol: Param[String]

    Id column for row reference

  34. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  35. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  36. val inputCols: StringArrayParam

    Name of input annotation cols

  37. final def isDefined(param: Param[_]): Boolean
    Definition Classes
    Params
  38. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  39. final def isSet(param: Param[_]): Boolean
    Definition Classes
    Params
  40. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  41. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  42. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  43. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  44. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  45. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  46. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  47. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  48. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  49. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  50. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  51. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  52. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  53. val metadataCol: Param[String]

    Metadata for document column

  54. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  55. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  56. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  57. val outputAnnotatorType: AnnotatorType

    Output Annotator Type: DOCUMENT

    Output Annotator Type: DOCUMENT

    Definition Classes
    MultiDocumentAssemblerHasOutputAnnotatorType
  58. val outputCols: StringArrayParam

  59. lazy val params: Array[Param[_]]
    Definition Classes
    Params
  60. def save(path: String): Unit
    Definition Classes
    MLWritable
    Annotations
    @Since( "1.6.0" ) @throws( ... )
  61. final def set(paramPair: ParamPair[_]): MultiDocumentAssembler.this.type
    Attributes
    protected
    Definition Classes
    Params
  62. final def set(param: String, value: Any): MultiDocumentAssembler.this.type
    Attributes
    protected
    Definition Classes
    Params
  63. final def set[T](param: Param[T], value: T): MultiDocumentAssembler.this.type
    Definition Classes
    Params
  64. def setCleanupMode(v: String): MultiDocumentAssembler.this.type

    cleanupMode to pre-process text

  65. final def setDefault(paramPairs: ParamPair[_]*): MultiDocumentAssembler.this.type
    Attributes
    protected
    Definition Classes
    Params
  66. final def setDefault[T](param: Param[T], value: T): MultiDocumentAssembler.this.type
    Attributes
    protected[org.apache.spark.ml]
    Definition Classes
    Params
  67. def setIdCol(value: String): MultiDocumentAssembler.this.type

    Id column for row reference

  68. def setInputCols(value: String*): MultiDocumentAssembler.this.type

  69. def setInputCols(value: Array[String]): MultiDocumentAssembler.this.type

  70. def setMetadataCol(value: String): MultiDocumentAssembler.this.type

    Metadata for document column

  71. def setOutputCols(value: String*): MultiDocumentAssembler.this.type

  72. def setOutputCols(value: Array[String]): MultiDocumentAssembler.this.type

  73. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  74. def toString(): String
    Definition Classes
    Identifiable → AnyRef → Any
  75. def transform(dataset: Dataset[_]): DataFrame
    Definition Classes
    MultiDocumentAssembler → Transformer
  76. def transform(dataset: Dataset[_], paramMap: ParamMap): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" )
  77. def transform(dataset: Dataset[_], firstParamPair: ParamPair[_], otherParamPairs: ParamPair[_]*): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" ) @varargs()
  78. final def transformSchema(schema: StructType): StructType

    requirement for pipeline transformation validation.

    requirement for pipeline transformation validation. It is called on fit()

    Definition Classes
    MultiDocumentAssembler → PipelineStage
  79. def transformSchema(schema: StructType, logging: Boolean): StructType
    Attributes
    protected
    Definition Classes
    PipelineStage
    Annotations
    @DeveloperApi()
  80. val uid: String
    Definition Classes
    MultiDocumentAssembler → Identifiable
  81. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  82. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  83. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  84. def write: MLWriter
    Definition Classes
    DefaultParamsWritable → MLWritable

Inherited from HasOutputAnnotatorType

Inherited from DefaultParamsWritable

Inherited from MLWritable

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

A list of (hyper-)parameter keys this annotator can take. Users can set and get the parameter values through setters and getters, respectively.

Annotator types

Required input and expected output annotator types

Members

Parameter setters

Parameter getters