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

A MultiEncoder encodes a dictionary or object with multiple components. More...

Inheritance diagram for MultiEncoder:
Encoder

Public Member Functions

def getWidth
 Represents the sum of the widths of each fields encoding. More...
 
def addMultipleEncoders
 fieldEncodings – a dict of dicts, mapping field names to the field params dict. 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

A MultiEncoder encodes a dictionary or object with multiple components.

A MultiEncode contains a number of sub-encoders, each of which encodes a separate component.

Member Function Documentation

def addMultipleEncoders (   self,
  fieldEncodings 
)

fieldEncodings – a dict of dicts, mapping field names to the field params dict.

Each field params dict has the following keys 1) data fieldname that matches the key ('fieldname') 2) an encoder type ('type') 3) and the encoder params (all other keys)

For example, fieldEncodings={ 'dateTime': dict(fieldname='dateTime', type='DateEncoder', timeOfDay=(5,5)), 'attendeeCount': dict(fieldname='attendeeCount', type='ScalarEncoder', name='attendeeCount', minval=0, maxval=250, clipInput=True, w=5, resolution=10), 'consumption': dict(fieldname='consumption',type='ScalarEncoder', name='consumption', minval=0,maxval=110, clipInput=True, w=5, resolution=5), }

would yield a vector with a part encoded by the DateEncoder, and to parts seperately taken care of by the ScalarEncoder with the specified parameters. The three seperate encodings are then merged together to the final vector, in such a way that they are always at the same location within the vector.

def getWidth (   self)

Represents the sum of the widths of each fields encoding.


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