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. final def asInstanceOf[T0]: T0

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

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

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

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  11. 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.

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

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  13. val dropNa: BooleanParam

    Permalink
  14. val emptyCntkModel: CNTKModel

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

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

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

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

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

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

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

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

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

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

    Permalink

  25. def getCutOutputLayers: Int

    Permalink

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

    Permalink
    Definition Classes
    Params
  27. def getDropNa: Boolean

    Permalink

  28. def getInputCol: String

    Permalink

    Definition Classes
    HasInputCol
  29. def getInputNode: Int

    Permalink

  30. def getLayerNames: Array[String]

    Permalink

  31. def getMiniBatchSize: Int

    Permalink

  32. def getModel: SerializableFunction

    Permalink

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

    Permalink
    Definition Classes
    Params
  34. def getOutputCol: String

    Permalink

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

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

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

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

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

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

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

    Permalink

    The name of the input column

    The name of the input column

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

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

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  46. 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.

  47. def log: Logger

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Permalink

    The name of the output column

    The name of the output column

    Definition Classes
    HasOutputCol
  63. lazy val params: Array[Param[_]]

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

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

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

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

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

    Permalink

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

    Permalink

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  72. def setDropNa(value: Boolean): ImageFeaturizer.this.type

    Permalink

  73. def setInputCol(value: String): ImageFeaturizer.this.type

    Permalink

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

    Permalink

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

    Permalink

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

    Permalink

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

    Permalink

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

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

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

    Permalink

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

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

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

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

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

    Permalink
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" ) @varargs()
  86. 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
  87. def transformSchema(schema: StructType, logging: Boolean): StructType

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

    Permalink

    the uid of the image transformer

    the uid of the image transformer

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  92. 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