FeatureNearest

FeatureNearest[{elem1,elem2,},x]

gives the list of elemi to which x is nearest in a computed feature space.

FeatureNearest[{elem1v1,elem2v2,},x]

gives the vi corresponding to the elemi to which x is nearest.

FeatureNearest[{elem1,elem2,}{v1,v2,},x]

gives the same result.

FeatureNearest[{elem1,elem2,}prop,x]

gives the property prop for the elemi to which x is nearest.

FeatureNearest[data,{x1,x2,}]

effectively gives {FeatureNearest[data,x1],FeatureNearest[data,x2],}.

FeatureNearest[data,x,n]

gives the n nearest elemi to x.

FeatureNearest[data]

generates a NearestFunction[] that can be applied repeatedly to different x.

Details and Options

  • FeatureNearest can be used on many types of data, including numerical, textual, sounds and images, as well as combinations of these.
  • Each elemi can be a single data element, a list of data elements, an association of data elements or a Dataset object. In FeatureNearest[data,], data can be a Dataset object.
  • In FeatureNearest[{elem1,elem2,}prop,], possible forms for prop include:
  • "Element"the elemi found to be nearest
    "Index"the index i of the elemi found to be nearest
    "Distance"the distance to the nearest elemi
    {prop1,prop2,}a list of multiple forms
    Allan association giving element, index and distance
  • When several elements are returned, the nearest ones are given first.
  • FeatureNearest is typically equivalent to using Nearest in the space created by FeatureExtract.
  • The following options can be given:
  • DistanceFunctionAutomaticthe distance metric to use
    FeatureExtractorIdentityhow to extract features
    FeatureTypesAutomaticfeature types to assume for input data
    MethodAutomaticmethod to use
    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
  • Possible settings for Method include "Octree", "KDtree" and "Scan".

Examples

open allclose all

Basic Examples  (1)

Generate a nearest function using FeatureNearest:

Find the example in the dataset that is nearest to a new example:

Perform the above operation in one step:

Scope  (4)

Generate a nearest function on a list of texts:

Find the nearest text for new examples:

Train a nearest function on a list of DateObject:

Find the two nearest elements from a new DateObject:

A string date can also be given:

Train a nearest function on a mixed-type dataset:

Find the nearest element of a new example:

Train a nearest function using the output property All:

Obtain the six nearest elements of a new example, along with position indices and distances:

Options  (4)

DistanceFunction  (1)

Generate a nearest function on a list of texts using the distance function EditDistance:

Find the nearest text for new examples:

When the distance function is specified, Nearest and FeatureNearest are equivalent:

FeatureExtractor  (1)

Train a nearest function using FeatureExtractor to specify a preprocessing to the data:

Use the nearest function on a new example:

FeatureTypes  (1)

Train a nearest function using FeatureTypes to specify that "gender" is a nominal variable:

Use the nearest function on a new example:

Method  (1)

Train a nearest function while specifying that the retrieval method "KDTree" should be used in the feature space:

Applications  (2)

Construct a dataset of dog images:

Train a nearest function using FeatureNearest:

Use this function on images that are not in the dataset:

Load the text of Alice in Wonderland:

Split the text into sentences:

Train a nearest function on these sentences:

Use this function on a few queries:

Introduced in 2017
 (11.1)
 |
Updated in 2017
 (11.2)