FeatureExtraction

FeatureExtraction[{example1,example2,}]

generates a FeatureExtractorFunction[] trained from the examples given.

FeatureExtraction[examples,extractor]

uses the specified feature extractor method.

FeatureExtraction[examples,{extractor1,extractor2,}]

applies the extractori in sequence to generate a feature extractor.

FeatureExtraction[examples,specext]

uses the extractor methods specified by ext on parts of examples specified by spec.

FeatureExtraction[examples,{spec1ext1,spec2ext2,}]

uses the extractor methods exti on parts of examples specified by the speci.

FeatureExtraction[examples,extractor,props]

gives the feature extraction properties specified by props.

Details and Options

  • FeatureExtraction can be used on many types of data, including numerical, textual, sounds, and images, as well as combinations of these.
  • Each examplei can be a single data element, a list of data elements, an association of data elements, or a Dataset object.
  • FeatureExtraction[examples] returns a FeatureExtractorFunction[] that can be applied to specific data.
  • Possible feature extractor methods to use in FeatureExtraction include:
  • Automaticautomatic extraction
    "AudioFeatures"sequence of semantic vectors from an audio object
    "ConformedData"conformed images, colors, dates, etc.
    "DiscretizedVector"discretized numerical data
    "DimensionReducedVector"reduced-dimension numeric vectors
    "FaceFeatures"semantic vector from an image of a human face
    "ImageFeatures"semantic vector from an image
    "IndicatorVector"nominal data "one-hot encoded" with indicator vectors
    "IntegerVector"nominal data encoded with integers
    "LPC"audio linear prediction coefficients
    "LowerCasedText"text with each character lowercase
    "MelSpectrogram"audio spectrogram with logarithmic frequencies bins
    "MFCC"audio mel-frequency cepstral coefficients vectors sequence
    "MissingImputed"data with missing values imputed
    "NumericVector"numeric vector from any data
    "PixelVector"vector of pixel values from an image
    "StandardizedVector"numeric data processed with Standardize
    "SegmentedCharacters"text segmented into characters
    "SegmentedWords"text segmented into words
    "Spectrogram"audio spectrogram
    "TFIDF"term frequency-inverse document frequency vector
    "WordVectors"semantic vectors sequence from a text (English only)
    Identitygive data unchanged
    fapplies function f to each example
    {extractor1,extractor2,}use a sequence of extractors in turn
  • Feature extractor methods are applied to data elements with whose types they are compatible. Other data elements are returned unchanged.
  • FeatureExtraction[examples] is equivalent to FeatureExtraction[examples,Automatic], which is typically equivalent to FeatureExtraction[examples,"NumericVector"].
  • The "NumericVector" method will typically convert examples to numeric vectors, impute missing data, and reduce the dimension using DimensionReduction.
  • In FeatureExtraction[examples,extractors,props], props can be a single property or a list of properties. Possible properties include:
  • "ExtractorFunction"FeatureExtractorFunction[] (default)
    "ExtractedFeatures"examples after feature extraction
    "ReconstructedData"examples after extraction and inverse extraction
    "FeatureDistance"FeatureDistance[] generated from the extractor
  • In FeatureExtraction[examples,specext] or FeatureExtraction[examples,{spec1ext1,}], possible forms for spec and the speci include:
  • Allall parts of each example
    ii^(th) part of each example
    {i1,i2,}parts i1, i2, of each example
    "name"part with the specified name in each example
    {"name1","name2",}parts with names "namei" in each example
  • Parts not mentioned in spec or the speci are dropped for the purpose of extracting features.
  • In FeatureExtraction[examples,{spec1ext1,}], the exti are all applied separately to examples.
  • The following options can be given:
  • FeatureNamesAutomaticnames to assign to elements of the examplei
    FeatureTypesAutomaticfeature types to assume for elements of the examplei
    RandomSeeding1234what seeding of pseudorandom generators should be done internally
  • Possible settings for RandomSeeding include:
  • Automaticautomatically reseed every time the function is called
    Inheriteduse externally seeded random numbers
    seeduse an explicit integer or strings as a seed
  • FeatureExtraction[,"ExtractedFeatures"] is equivalent to FeatureExtract[].
  • FeatureExtraction[,"FeatureDistance"] is equivalent to FeatureDistance[FeatureExtraction[]].

Examples

open allclose all

Basic Examples  (3)

Train a FeatureExtractorFunction on a simple dataset:

In[1]:=
Click for copyable input
Out[1]=

Extract features from a new example:

In[2]:=
Click for copyable input
Out[2]=

Extract features from a list of examples:

In[3]:=
Click for copyable input
Out[3]=

Train a feature extractor on a dataset of images:

In[1]:=
Click for copyable input
Out[1]=

Use the feature extractor on the training set:

In[2]:=
Click for copyable input
Out[2]=

Construct a feature extractor from a numerical dataset using the "StandardizedVector" extractor method:

In[1]:=
Click for copyable input
Out[1]=

Use the feature extractor on the training set:

In[2]:=
Click for copyable input
Out[2]=

The property "ExtractedFeatures" can be used to perform this operation in one step:

In[3]:=
Click for copyable input
Out[3]=

Multiple properties can be queried:

In[4]:=
Click for copyable input
Out[4]=

Scope  (12)

Options  (3)

Applications  (3)

See Also

FeatureExtract  FeatureExtractor  FeatureExtractorFunction  DimensionReduction  FeatureNearest  FeatureDistance  Classify

Introduced in 2016
(11.0)
| Updated in 2017
(11.2)