Class/Object

com.microsoft.ml.spark

ImageFeaturizer

Related Docs: object ImageFeaturizer | package spark

Permalink

class ImageFeaturizer extends Transformer with HasInputCol with HasOutputCol with Wrappable with ComplexParamsWritable

The ImageFeaturizer relies on a CNTK model to do the featurization, one can set this model using the modelLocation parameter. To map the nodes of the CNTK model onto the standard "layers" structure of a feed forward neural net, one needs to supply a list of node names that range from the output node, back towards the input node of the CNTK Function. This list does not need to be exhaustive, and is provided to you if you use a model downloaded from the ModelDownloader, one can find this layer list in the schema of the downloaded model.

The ImageFeaturizer takes an input column of images (the type returned by the ImageReader), and automatically resizes them to fit the CMTKModel's inputs. It then feeds them through a pre-trained CNTK model. One can truncate the model using the cutOutputLayers parameter that determines how many layers to truncate from the output of the network. For example, layer=0 means that no layers are removed, layer=2 means that the image featurizer returns the activations of the layer that is two layers from the output layer.

Annotations
@InternalWrapper()
Linear Supertypes
ComplexParamsWritable, MLWritable, HasOutputCol, HasInputCol, Wrappable, Transformer, PipelineStage, org.apache.spark.internal.Logging, Params, Serializable, Serializable, Identifiable, AnyRef, Any
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. ImageFeaturizer
  2. ComplexParamsWritable
  3. MLWritable
  4. HasOutputCol
  5. HasInputCol
  6. Wrappable
  7. Transformer
  8. PipelineStage
  9. Logging
  10. Params
  11. Serializable
  12. Serializable
  13. Identifiable
  14. AnyRef
  15. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ImageFeaturizer()

    Permalink
  2. new ImageFeaturizer(uid: String)

    Permalink

    uid

    the uid of the image transformer

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def $[T](param: Param[T]): T

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  4. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  5. def BooleanParam(i: Identifiable, name: String, description: String, default: Boolean): BooleanParam

    Permalink
    Definition Classes
    Wrappable
  6. def BooleanParam(i: Identifiable, name: String, description: String): BooleanParam

    Permalink
    Definition Classes
    Wrappable
  7. def DoubleParam(i: Identifiable, name: String, description: String, default: Double): DoubleParam

    Permalink
    Definition Classes
    Wrappable
  8. def DoubleParam(i: Identifiable, name: String, description: String): DoubleParam

    Permalink
    Definition Classes
    Wrappable
  9. def IntParam(i: Identifiable, name: String, description: String, validation: (Int) ⇒ Boolean): IntParam

    Permalink
    Definition Classes
    Wrappable
  10. def IntParam(i: Identifiable, name: String, description: String, default: Int): IntParam

    Permalink
    Definition Classes
    Wrappable
  11. def IntParam(i: Identifiable, name: String, description: String): IntParam

    Permalink
    Definition Classes
    Wrappable
  12. def LongParam(i: Identifiable, name: String, description: String, default: Long): LongParam

    Permalink
    Definition Classes
    Wrappable
  13. def LongParam(i: Identifiable, name: String, description: String): LongParam

    Permalink
    Definition Classes
    Wrappable
  14. def StringParam(i: Identifiable, name: String, description: String, default: String, domain: Seq[String]): Param[String]

    Permalink
    Definition Classes
    Wrappable
  15. def StringParam(i: Identifiable, name: String, description: String, default: String): Param[String]

    Permalink
    Definition Classes
    Wrappable
  16. def StringParam(i: Identifiable, name: String, description: String, validation: (String) ⇒ Boolean): Param[String]

    Permalink
    Definition Classes
    Wrappable
  17. def StringParam(i: Identifiable, name: String, description: String): Param[String]

    Permalink
    Definition Classes
    Wrappable
  18. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  19. def chainedUid(origin: String): String

    Permalink
    Definition Classes
    Wrappable
  20. final def clear(param: Param[_]): ImageFeaturizer.this.type

    Permalink
    Definition Classes
    Params
  21. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. val cntkModel: TransformerParam

    Permalink
  23. def copy(extra: ParamMap): Transformer

    Permalink
    Definition Classes
    ImageFeaturizer → Transformer → PipelineStage → Params
  24. def copyValues[T <: Params](to: T, extra: ParamMap): T

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  25. val cutOutputLayers: IntParam

    Permalink

    The number of layer to cut off the endof the network; 0 leaves the network intact, 1 rmoves the output layer, etc.

  26. final def defaultCopy[T <: Params](extra: ParamMap): T

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  27. val emptyCntkModel: CNTKModel

    Permalink
  28. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  30. def explainParam(param: Param[_]): String

    Permalink
    Definition Classes
    Params
  31. def explainParams(): String

    Permalink
    Definition Classes
    Params
  32. final def extractParamMap(): ParamMap

    Permalink
    Definition Classes
    Params
  33. final def extractParamMap(extra: ParamMap): ParamMap

    Permalink
    Definition Classes
    Params
  34. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  35. final def get[T](param: Param[T]): Option[T]

    Permalink
    Definition Classes
    Params
  36. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  37. def getCntkModel: CNTKModel

    Permalink

  38. def getCutOutputLayers: Int

    Permalink

  39. final def getDefault[T](param: Param[T]): Option[T]

    Permalink
    Definition Classes
    Params
  40. def getInputCol: String

    Permalink

    Definition Classes
    HasInputCol
  41. def getInputNode: Int

    Permalink

  42. def getLayerNames: Array[String]

    Permalink

  43. def getMiniBatchSize: Int

    Permalink

  44. def getModel: SerializableFunction

    Permalink

  45. final def getOrDefault[T](param: Param[T]): T

    Permalink
    Definition Classes
    Params
  46. def getOutputCol: String

    Permalink

    Definition Classes
    HasOutputCol
  47. def getParam(paramName: String): Param[Any]

    Permalink
    Definition Classes
    Params
  48. final def hasDefault[T](param: Param[T]): Boolean

    Permalink
    Definition Classes
    Params
  49. def hasParam(paramName: String): Boolean

    Permalink
    Definition Classes
    Params
  50. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  51. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  52. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  53. val inputCol: Param[String]

    Permalink

    The name of the input column

    The name of the input column

    Definition Classes
    HasInputCol
  54. final def isDefined(param: Param[_]): Boolean

    Permalink
    Definition Classes
    Params
  55. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  56. final def isSet(param: Param[_]): Boolean

    Permalink
    Definition Classes
    Params
  57. def isTraceEnabled(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  58. val layerNames: StringArrayParam

    Permalink

    Array with valid CNTK nodes to choose from; the first entries of this array should be closer to the output node.

  59. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  60. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  61. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  62. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  63. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  64. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  65. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  66. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  67. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  68. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  69. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  70. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  71. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  72. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  73. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  74. val outputCol: Param[String]

    Permalink

    The name of the output column

    The name of the output column

    Definition Classes
    HasOutputCol
  75. val paramDomains: Map[String, Seq[String]]

    Permalink
    Definition Classes
    Wrappable
  76. lazy val params: Array[Param[_]]

    Permalink
    Definition Classes
    Params
  77. def save(path: String): Unit

    Permalink
    Definition Classes
    MLWritable
    Annotations
    @Since( "1.6.0" ) @throws( ... )
  78. final def set(paramPair: ParamPair[_]): ImageFeaturizer.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  79. final def set(param: String, value: Any): ImageFeaturizer.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  80. final def set[T](param: Param[T], value: T): ImageFeaturizer.this.type

    Permalink
    Definition Classes
    Params
  81. def setCntkModel(value: CNTKModel): ImageFeaturizer.this.type

    Permalink

  82. def setCutOutputLayers(value: Int): ImageFeaturizer.this.type

    Permalink

  83. final def setDefault(paramPairs: ParamPair[_]*): ImageFeaturizer.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  84. final def setDefault[T](param: Param[T], value: T): ImageFeaturizer.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  85. def setInputCol(value: String): ImageFeaturizer.this.type

    Permalink

    Definition Classes
    HasInputCol
  86. def setInputNode(value: Int): ImageFeaturizer.this.type

    Permalink

  87. def setLayerNames(value: Array[String]): ImageFeaturizer.this.type

    Permalink

  88. def setMiniBatchSize(value: Int): ImageFeaturizer.this.type

    Permalink

  89. def setModel(model: SerializableFunction): ImageFeaturizer.this.type

    Permalink

  90. def setModel(modelSchema: ModelSchema): ImageFeaturizer.this.type

    Permalink
  91. def setModelLocation(path: String): ImageFeaturizer.this.type

    Permalink
  92. def setOutputCol(value: String): ImageFeaturizer.this.type

    Permalink

    Definition Classes
    HasOutputCol
  93. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  94. def toString(): String

    Permalink
    Definition Classes
    Identifiable → AnyRef → Any
  95. def transform(dataset: Dataset[_]): DataFrame

    Permalink
    Definition Classes
    ImageFeaturizer → Transformer
  96. def transform(dataset: Dataset[_], paramMap: ParamMap): DataFrame

    Permalink
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" )
  97. def transform(dataset: Dataset[_], firstParamPair: ParamPair[_], otherParamPairs: ParamPair[_]*): DataFrame

    Permalink
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" ) @varargs()
  98. def transformSchema(schema: StructType): StructType

    Permalink

    Add the features column to the schema

    Add the features column to the schema

    returns

    schema with features column

    Definition Classes
    ImageFeaturizer → PipelineStage
  99. def transformSchema(schema: StructType, logging: Boolean): StructType

    Permalink
    Attributes
    protected
    Definition Classes
    PipelineStage
    Annotations
    @DeveloperApi()
  100. val uid: String

    Permalink

    the uid of the image transformer

    the uid of the image transformer

    Definition Classes
    ImageFeaturizer → Identifiable
  101. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  102. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  103. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  104. def write: MLWriter

    Permalink
    Definition Classes
    ComplexParamsWritable → MLWritable

Inherited from ComplexParamsWritable

Inherited from MLWritable

Inherited from HasOutputCol

Inherited from HasInputCol

Inherited from Wrappable

Inherited from Transformer

Inherited from PipelineStage

Inherited from org.apache.spark.internal.Logging

Inherited from Params

Inherited from Serializable

Inherited from Serializable

Inherited from Identifiable

Inherited from AnyRef

Inherited from Any

Parameters

A list of parameter keys this algorithm can take. Users can set and get the parameter values through setters and getters

Parameter setters

Parameter getters

Members