NuPIC  0.2.7.dev0
Numenta Platform for Intelligent Computing
 All Classes Namespaces Files Functions Variables Pages
Public Member Functions | List of all members
CoordinateEncoder Class Reference

Given a coordinate in an N-dimensional space, and a radius around that coordinate, the Coordinate Encoder returns an SDR representation of that position. More...

Inheritance diagram for CoordinateEncoder:
Encoder GeospatialCoordinateEncoder

Public Member Functions

def __init__
 See nupic.encoders.base.Encoder for more information. More...
 
def getWidth
 See nupic.encoders.base.Encoder for more information. More...
 
def getDescription
 See nupic.encoders.base.Encoder for more information. More...
 
def getScalars
 See nupic.encoders.base.Encoder for more information. More...
 
def encodeIntoArray
 See nupic.encoders.base.Encoder for more information. More...
 
- Public Member Functions inherited from Encoder
def getWidth
 Should return the output width, in bits. More...
 
def encodeIntoArray
 Encodes inputData and puts the encoded value into the numpy output array, which is a 1-D array of length returned by getWidth(). More...
 
def setLearning
 Set whether learning is enabled. More...
 
def setFieldStats
 This method is called by the model to set the statistics like min and max for the underlying encoders if this information is available. More...
 
def encode
 Convenience wrapper for encodeIntoArray. More...
 
def getScalarNames
 Return the field names for each of the scalar values returned by getScalars. More...
 
def getDecoderOutputFieldTypes
 Returns a sequence of field types corresponding to the elements in the decoded output field array. More...
 
def setStateLock
 Setting this to true freezes the state of the encoder This is separate from the learning state which affects changing parameters. More...
 
def getEncoderList
 
def getScalars
 Returns a numpy array containing the sub-field scalar value(s) for each sub-field of the inputData. More...
 
def getEncodedValues
 Returns the input in the same format as is returned by topDownCompute(). More...
 
def getBucketIndices
 Returns an array containing the sub-field bucket indices for each sub-field of the inputData. More...
 
def scalarsToStr
 Return a pretty print string representing the return values from getScalars and getScalarNames(). More...
 
def getDescription
 This returns a list of tuples, each containing (name, offset). More...
 
def getFieldDescription
 Return the offset and length of a given field within the encoded output. More...
 
def encodedBitDescription
 Return a description of the given bit in the encoded output. More...
 
def pprintHeader
 Pretty-print a header that labels the sub-fields of the encoded output. More...
 
def pprint
 Pretty-print the encoded output using ascii art. More...
 
def decode
 Takes an encoded output and does its best to work backwards and generate the input that would have generated it. More...
 
def decodedToStr
 Return a pretty print string representing the return value from decode().
 
def getBucketValues
 Returns a list of items, one for each bucket defined by this encoder. More...
 
def getBucketInfo
 Returns a list of EncoderResult namedtuples describing the inputs for each sub-field that correspond to the bucket indices passed in 'buckets'. More...
 
def topDownCompute
 Returns a list of EncoderResult namedtuples describing the top-down best guess inputs for each sub-field given the encoded output. More...
 
def closenessScores
 Compute closeness scores between the expected scalar value(s) and actual scalar value(s). More...
 
def getDisplayWidth
 Calculate width of display for bits plus blanks between fields. More...
 
def formatBits
 Copy one array to another, inserting blanks between fields (for display) If leftpad is one, then there is a dummy value at element 0 of the arrays, and we should start our counting from 1 rather than 0. More...
 

Detailed Description

Given a coordinate in an N-dimensional space, and a radius around that coordinate, the Coordinate Encoder returns an SDR representation of that position.

The Coordinate Encoder uses an N-dimensional integer coordinate space. For example, a valid coordinate in this space is (150, -49, 58), whereas an invalid coordinate would be (55.4, -5, 85.8475).

It uses the following algorithm:

  1. Find all the coordinates around the input coordinate, within the specified radius.
  2. For each coordinate, use a uniform hash function to deterministically map it to a real number between 0 and 1. This is the "order" of the coordinate.
  3. Of these coordinates, pick the top W by order, where W is the number of active bits desired in the SDR.
  4. For each of these W coordinates, use a uniform hash function to deterministically map it to one of the bits in the SDR. Make this bit active.
  5. This results in a final SDR with exactly W bits active (barring chance hash collisions).

Constructor & Destructor Documentation

def __init__ (   self,
  w = 21,
  n = 1000,
  name = None,
  verbosity = 0 
)

See nupic.encoders.base.Encoder for more information.

Parameters
nameAn optional string which will become part of the description

Member Function Documentation

def encodeIntoArray (   self,
  inputData,
  output 
)

See nupic.encoders.base.Encoder for more information.

Parameters
inputData(tuple) Contains coordinate (numpy.array) and radius (float)
output(numpy.array) Stores encoded SDR in this numpy array
def getDescription (   self)

See nupic.encoders.base.Encoder for more information.

def getScalars (   self,
  inputData 
)

See nupic.encoders.base.Encoder for more information.

def getWidth (   self)

See nupic.encoders.base.Encoder for more information.


The documentation for this class was generated from the following file: