本文整理汇总了Python中nupic.bindings.regions.PyRegion.PyRegion类的典型用法代码示例。如果您正苦于以下问题:Python PyRegion类的具体用法?Python PyRegion怎么用?Python PyRegion使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了PyRegion类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
def __init__(self,
columnCount, # Number of columns in the SP, a required parameter
inputWidth, # Size of inputs to the SP, a required parameter
spatialImp=getDefaultSPImp(), #'py', 'cpp'
**kwargs):
if columnCount <= 0 or inputWidth <=0:
raise TypeError("Parameters columnCount and inputWidth must be > 0")
# Pull out the spatial arguments automatically
# These calls whittle down kwargs and create instance variables of SPRegion
self.SpatialClass = getSPClass(spatialImp)
sArgTuples = _buildArgs(self.SpatialClass.__init__, self, kwargs)
# Make a list of automatic spatial arg names for later use
self._spatialArgNames = [t[0] for t in sArgTuples]
# Learning and SP parameters.
# By default we start out in stage learn with inference disabled
self.learningMode = True
self.inferenceMode = False
self.anomalyMode = False
self.topDownMode = False
self.columnCount = columnCount
self.inputWidth = inputWidth
PyRegion.__init__(self, **kwargs)
# Initialize all non-persistent base members, as well as give
# derived class an opportunity to do the same.
self._loaded = False
self._initializeEphemeralMembers()
# Debugging support, used in _conditionalBreak
self.breakPdb = False
self.breakKomodo = False
# Defaults for all other parameters
self.logPathInput = ''
self.logPathOutput = ''
self.logPathOutputDense = ''
self._fpLogSPInput = None
self._fpLogSP = None
self._fpLogSPDense = None
#
# Variables set up in initInNetwork()
#
# Spatial instance
self._sfdr = None
# Spatial pooler's bottom-up output value: hang on to this output for
# top-down inference and for debugging
self._spatialPoolerOutput = None
# Spatial pooler's bottom-up input: hang on to this for supporting the
# spInputNonZeros parameter
self._spatialPoolerInput = None
示例2: __init__
def __init__(self,
columnCount=2048,
cellsPerColumn=16,
activationThreshold=13,
initialPermanence=0.21,
connectedPermanence=0.50,
minThreshold=10,
maxNewSynapseCount=20,
permanenceIncrement=0.10,
permanenceDecrement=0.10,
predictedSegmentDecrement=0.0,
seed=42,
defaultOutputType = "active",
**kwargs):
# Defaults for all other parameters
self.columnCount = columnCount
self.cellsPerColumn = cellsPerColumn
self.inputWidth = self.columnCount*self.cellsPerColumn
self.activationThreshold = activationThreshold
self.initialPermanence = initialPermanence
self.connectedPermanence = connectedPermanence
self.minThreshold = minThreshold
self.maxNewSynapseCount = maxNewSynapseCount
self.permanenceIncrement = permanenceIncrement
self.permanenceDecrement = permanenceDecrement
self.predictedSegmentDecrement = predictedSegmentDecrement
self.seed = seed
self.learningMode = True
self.inferenceMode = True
self.defaultOutputType = defaultOutputType
PyRegion.__init__(self, **kwargs)
示例3: __init__
def __init__(self, columnCount, inputWidth, historyLength,
minHistory, poolerType, **kwargs):
if columnCount <= 0 or inputWidth <=0:
raise TypeError("Parameters columnCount and inputWidth must be > 0")
# Pull out the pooler arguments automatically
# These calls whittle down kwargs and create instance variables of TemporalPoolerRegion
self._poolerType = poolerType
self._poolerClass = _getPoolerClass(poolerType)
pArgTuples = _buildArgs(self._poolerClass, self, kwargs)
# include parent spatial pooler parameters
if poolerType == "union" or poolerType == "unionMonitored":
pArgTuplesSP = _buildArgs(_getParentSpatialPoolerClass(poolerType), self, kwargs)
# Make a list of automatic pooler arg names for later use
self._poolerArgNames = [t[0] for t in pArgTuples] + [t[0] for t in pArgTuplesSP]
else:
self._poolerArgNames = [t[0] for t in pArgTuples]
PyRegion.__init__(self, **kwargs)
# Defaults for all other parameters
self.learningMode = True
self.inferenceMode = True
self._inputWidth = inputWidth
self._columnCount = columnCount
self._historyLength = historyLength
self._minHistory = minHistory
# pooler instance
self._pooler = None
示例4: __init__
def __init__(self,
moduleCount,
cellsPerAxis,
scale,
orientation,
anchorInputSize,
activeFiringRate,
bumpSigma,
activationThreshold=10,
initialPermanence=0.21,
connectedPermanence=0.50,
learningThreshold=10,
sampleSize=20,
permanenceIncrement=0.1,
permanenceDecrement=0.0,
maxSynapsesPerSegment=-1,
bumpOverlapMethod="probabilistic",
learningMode=False,
seed=42,
dualPhase=True,
dimensions=2,
**kwargs):
if moduleCount <= 0 or cellsPerAxis <= 0:
raise TypeError("Parameters moduleCount and cellsPerAxis must be > 0")
if moduleCount != len(scale) or moduleCount != len(orientation):
raise TypeError("scale and orientation arrays len must match moduleCount")
if dimensions < 2:
raise TypeError("dimensions must be >= 2")
self.moduleCount = moduleCount
self.cellsPerAxis = cellsPerAxis
self.cellCount = cellsPerAxis * cellsPerAxis
self.scale = list(scale)
self.orientation = list(orientation)
self.anchorInputSize = anchorInputSize
self.activeFiringRate = activeFiringRate
self.bumpSigma = bumpSigma
self.activationThreshold = activationThreshold
self.initialPermanence = initialPermanence
self.connectedPermanence = connectedPermanence
self.learningThreshold = learningThreshold
self.sampleSize = sampleSize
self.permanenceIncrement = permanenceIncrement
self.permanenceDecrement = permanenceDecrement
self.maxSynapsesPerSegment = maxSynapsesPerSegment
self.bumpOverlapMethod = bumpOverlapMethod
self.learningMode = learningMode
self.dualPhase = dualPhase
self.dimensions = dimensions
self.seed = seed
# This flag controls whether the region is processing sensation or movement
# on dual phase configuration
self._sensing = False
self._modules = None
self._projection = None
PyRegion.__init__(self, **kwargs)
示例5: __init__
def __init__(self,
columnCount, # Number of columns in the SP, a required parameter
inputWidth, # Size of inputs to the SP, a required parameter
cellsPerColumn, # Number of cells per column, required
# Constructor arguments are picked up automatically. There is no
# need to add them anywhere in TMRegion, unless you need to do
# something special with them. See docstring above.
orColumnOutputs=False,
cellsSavePath='',
temporalImp=gDefaultTemporalImp,
anomalyMode=False,
computePredictedActiveCellIndices=False,
**kwargs):
# Which Temporal implementation?
TemporalClass = _getTPClass(temporalImp)
# Make a list of automatic temporal arg names for later use
# Pull out the temporal arguments automatically
# These calls whittle down kwargs and create instance variables of TMRegion
tArgTuples = _buildArgs(TemporalClass.__init__, self, kwargs)
self._temporalArgNames = [t[0] for t in tArgTuples]
self.learningMode = True # Start out with learning enabled
self.inferenceMode = False
self.anomalyMode = anomalyMode
self.computePredictedActiveCellIndices = computePredictedActiveCellIndices
self.topDownMode = False
self.columnCount = columnCount
self.inputWidth = inputWidth
self.outputWidth = columnCount * cellsPerColumn
self.cellsPerColumn = cellsPerColumn
PyRegion.__init__(self, **kwargs)
# Initialize all non-persistent base members, as well as give
# derived class an opportunity to do the same.
self._loaded = False
self._initialize()
# Debugging support, used in _conditionalBreak
self.breakPdb = False
self.breakKomodo = False
# TMRegion only, or special handling
self.orColumnOutputs = orColumnOutputs
self.temporalImp = temporalImp
# Various file names
self.storeDenseOutput = False
self.logPathOutput = ''
self.cellsSavePath = cellsSavePath
self._fpLogTPOutput = None
# Variables set up in initInNetwork()
self._tfdr = None # FDRTemporal instance
示例6: __init__
def __init__(self,
# Input sizes
columnCount,
basalInputWidth,
apicalInputWidth=0,
# TM params
cellsPerColumn=32,
activationThreshold=13,
initialPermanence=0.21,
connectedPermanence=0.50,
minThreshold=10,
reducedBasalThreshold=13, # ApicalTiebreak and ApicalDependent only
sampleSize=20,
permanenceIncrement=0.10,
permanenceDecrement=0.10,
basalPredictedSegmentDecrement=0.0,
apicalPredictedSegmentDecrement=0.0,
learnOnOneCell=False, # ApicalTiebreakCPP only
maxSegmentsPerCell=255,
maxSynapsesPerSegment=255, # ApicalTiebreakCPP only
seed=42,
# Region params
implementation="ApicalTiebreak",
learn=True,
**kwargs):
# Input sizes (the network API doesn't provide these during initialize)
self.columnCount = columnCount
self.basalInputWidth = basalInputWidth
self.apicalInputWidth = apicalInputWidth
# TM params
self.cellsPerColumn = cellsPerColumn
self.activationThreshold = activationThreshold
self.reducedBasalThreshold = reducedBasalThreshold
self.initialPermanence = initialPermanence
self.connectedPermanence = connectedPermanence
self.minThreshold = minThreshold
self.sampleSize = sampleSize
self.permanenceIncrement = permanenceIncrement
self.permanenceDecrement = permanenceDecrement
self.basalPredictedSegmentDecrement = basalPredictedSegmentDecrement
self.apicalPredictedSegmentDecrement = apicalPredictedSegmentDecrement
self.maxSynapsesPerSegment = maxSynapsesPerSegment
self.maxSegmentsPerCell = maxSegmentsPerCell
self.learnOnOneCell = learnOnOneCell
self.seed = seed
# Region params
self.implementation = implementation
self.learn = learn
PyRegion.__init__(self, **kwargs)
# TM instance
self._tm = None
示例7: __init__
def __init__(self,
cellCount=4096,
inputWidth=16384,
numOtherCorticalColumns=0,
sdrSize=40,
# Proximal
synPermProximalInc=0.1,
synPermProximalDec=0.001,
initialProximalPermanence=0.6,
sampleSizeProximal=20,
minThresholdProximal=1,
connectedPermanenceProximal=0.50,
# Distal
synPermDistalInc=0.10,
synPermDistalDec=0.10,
initialDistalPermanence=0.21,
sampleSizeDistal=20,
activationThresholdDistal=13,
connectedPermanenceDistal=0.50,
distalSegmentInhibitionFactor=1.5,
seed=42,
defaultOutputType = "active",
**kwargs):
# Used to derive Column Pooler params
self.numOtherCorticalColumns = numOtherCorticalColumns
# Column Pooler params
self.inputWidth = inputWidth
self.cellCount = cellCount
self.sdrSize = sdrSize
self.synPermProximalInc = synPermProximalInc
self.synPermProximalDec = synPermProximalDec
self.initialProximalPermanence = initialProximalPermanence
self.sampleSizeProximal = sampleSizeProximal
self.minThresholdProximal = minThresholdProximal
self.connectedPermanenceProximal = connectedPermanenceProximal
self.synPermDistalInc = synPermDistalInc
self.synPermDistalDec = synPermDistalDec
self.initialDistalPermanence = initialDistalPermanence
self.sampleSizeDistal = sampleSizeDistal
self.activationThresholdDistal = activationThresholdDistal
self.connectedPermanenceDistal = connectedPermanenceDistal
self.distalSegmentInhibitionFactor = distalSegmentInhibitionFactor
self.seed = seed
# Region params
self.learningMode = True
self.defaultOutputType = defaultOutputType
self._pooler = None
PyRegion.__init__(self, **kwargs)
示例8: __init__
def __init__(self,
columnCount=2048,
inputWidth=16384,
lateralInputWidth=0,
activationThresholdDistal=13,
initialPermanence=0.21,
connectedPermanence=0.50,
minThresholdProximal=1,
minThresholdDistal=10,
maxNewProximalSynapseCount=20,
maxNewDistalSynapseCount=20,
permanenceIncrement=0.10,
permanenceDecrement=0.10,
predictedSegmentDecrement=0.0,
synPermProximalInc=0.1,
synPermProximalDec=0.001,
initialProximalPermanence = 0.6,
seed=42,
numActiveColumnsPerInhArea=40,
defaultOutputType = "active",
**kwargs):
# Modified Column Pooler params
self.columnCount = columnCount
# Column Pooler params
self.inputWidth = inputWidth
self.lateralInputWidth = lateralInputWidth
self.activationThresholdDistal = activationThresholdDistal
self.initialPermanence = initialPermanence
self.connectedPermanence = connectedPermanence
self.minThresholdProximal = minThresholdProximal
self.minThresholdDistal = minThresholdDistal
self.maxNewProximalSynapseCount = maxNewProximalSynapseCount
self.maxNewDistalSynapseCount = maxNewDistalSynapseCount
self.permanenceIncrement = permanenceIncrement
self.permanenceDecrement = permanenceDecrement
self.predictedSegmentDecrement = predictedSegmentDecrement
self.synPermProximalInc = synPermProximalInc
self.synPermProximalDec = synPermProximalDec
self.initialProximalPermanence = initialProximalPermanence
self.seed = seed
self.numActiveColumnsPerInhArea = numActiveColumnsPerInhArea
self.maxSynapsesPerSegment = inputWidth
# Region params
self.learningMode = True
self.inferenceMode = True
self.defaultOutputType = defaultOutputType
self._pooler = None
PyRegion.__init__(self, **kwargs)
示例9: setParameter
def setParameter(self, name, index, value):
"""
Overrides :meth:`nupic.bindings.regions.PyRegion.PyRegion.setParameter`.
"""
if name == "learningMode":
self.learningMode = bool(int(value))
self._epoch = 0
elif name == "inferenceMode":
self._epoch = 0
if int(value) and not self.inferenceMode:
self._finishLearning()
self.inferenceMode = bool(int(value))
elif name == "distanceNorm":
self._knn.distanceNorm = value
elif name == "distanceMethod":
self._knn.distanceMethod = value
elif name == "keepAllDistances":
self.keepAllDistances = bool(value)
if not self.keepAllDistances:
# Discard all distances except the latest
if self._protoScores is not None and self._protoScores.shape[0] > 1:
self._protoScores = self._protoScores[-1,:]
if self._protoScores is not None:
self._protoScoreCount = 1
else:
self._protoScoreCount = 0
elif name == "verbosity":
self.verbosity = value
self._knn.verbosity = value
else:
return PyRegion.setParameter(self, name, index, value)
示例10: getParameter
def getParameter(self, parameterName, index=-1):
"""
Get the value of a NodeSpec parameter. Most parameters are handled
automatically by PyRegion's parameter get mechanism. The ones that need
special treatment are explicitly handled here.
"""
return PyRegion.getParameter(self, parameterName, index)
示例11: getParameter
def getParameter(self, name, index=-1):
"""
Overrides :meth:`nupic.bindings.regions.PyRegion.PyRegion.getParameter`.
"""
# If any spec parameter name is the same as an attribute, this call
# will get it automatically, e.g. self.learningMode
return PyRegion.getParameter(self, name, index)
示例12: getParameter
def getParameter(self, parameterName, index=-1):
"""
Get the value of a NodeSpec parameter. Most parameters are handled
automatically by PyRegion's parameter get mechanism. The ones that need
special treatment are explicitly handled here.
"""
if parameterName == 'activeOutputCount':
return self.columnCount
elif parameterName == 'spatialPoolerInput':
return list(self._spatialPoolerInput.reshape(-1))
elif parameterName == 'spatialPoolerOutput':
return list(self._spatialPoolerOutput)
elif parameterName == 'spNumActiveOutputs':
return len(self._spatialPoolerOutput.nonzero()[0])
elif parameterName == 'spOutputNonZeros':
return [len(self._spatialPoolerOutput)] + \
list(self._spatialPoolerOutput.nonzero()[0])
elif parameterName == 'spInputNonZeros':
import pdb; pdb.set_trace()
return [len(self._spatialPoolerInput)] + \
list(self._spatialPoolerInput.nonzero()[0])
elif parameterName == 'spLearningStatsStr':
try:
return str(self._sfdr.getLearningStats())
except:
return str(dict())
else:
return PyRegion.getParameter(self, parameterName, index)
示例13: setParameter
def setParameter(self, name, index, value):
"""
Set the value of the parameter.
@param name -- the name of the parameter to update, as defined
by the Node Spec.
@param value -- the value to which the parameter is to be set.
"""
if name == "learningMode":
self.learningMode = bool(int(value))
self._epoch = 0
elif name == "inferenceMode":
self._epoch = 0
if int(value) and not self.inferenceMode:
self._finishLearning()
self.inferenceMode = bool(int(value))
elif name == "distanceNorm":
self._knn.distanceNorm = value
elif name == "distanceMethod":
self._knn.distanceMethod = value
elif name == "keepAllDistances":
self.keepAllDistances = bool(value)
if not self.keepAllDistances:
# Discard all distances except the latest
if self._protoScores is not None and self._protoScores.shape[0] > 1:
self._protoScores = self._protoScores[-1,:]
if self._protoScores is not None:
self._protoScoreCount = 1
else:
self._protoScoreCount = 0
elif name == "clVerbosity":
self.verbosity = value
self._knn.verbosity = value
else:
return PyRegion.setParameter(self, name, index, value)
示例14: __init__
def __init__(self,
columnCount=2048,
cellsPerColumn=32,
activationThreshold=13,
initialPermanence=0.21,
connectedPermanence=0.50,
minThreshold=10,
maxNewSynapseCount=20,
permanenceIncrement=0.10,
permanenceDecrement=0.10,
predictedSegmentDecrement=0.0,
seed=42,
learnOnOneCell=1,
formInternalConnections=1,
formInternalBasalConnections=1,
defaultOutputType = "active",
monitor=False,
implementation="cpp",
**kwargs):
# Defaults for all other parameters
self.columnCount = columnCount
self.cellsPerColumn = cellsPerColumn
self.activationThreshold = activationThreshold
self.initialPermanence = initialPermanence
self.connectedPermanence = connectedPermanence
self.minThreshold = minThreshold
self.maxNewSynapseCount = maxNewSynapseCount
self.permanenceIncrement = permanenceIncrement
self.permanenceDecrement = permanenceDecrement
self.predictedSegmentDecrement = predictedSegmentDecrement
self.seed = seed
self.learnOnOneCell = bool(learnOnOneCell)
self.learningMode = True
self.inferenceMode = True
self.formInternalConnections = bool(formInternalConnections)
self.formInternalBasalConnections = bool(formInternalBasalConnections)
self.defaultOutputType = defaultOutputType
self.monitor = monitor
self.implementation = implementation
PyRegion.__init__(self, **kwargs)
# TM instance
self._tm = None
示例15: getParameter
def getParameter(self, name, index=-1):
"""
Get the value of the parameter.
@param name -- the name of the parameter to retrieve, as defined
by the Node Spec.
"""
if name == "patternCount":
return self._knn._numPatterns
elif name == "patternMatrix":
return self._getPatternMatrix()
elif name == "k":
return self._knn.k
elif name == "distanceNorm":
return self._knn.distanceNorm
elif name == "distanceMethod":
return self._knn.distanceMethod
elif name == "distThreshold":
return self._knn.distThreshold
elif name == "inputThresh":
return self._knn.binarizationThreshold
elif name == "doBinarization":
return self._knn.doBinarization
elif name == "useSparseMemory":
return self._knn.useSparseMemory
elif name == "sparseThreshold":
return self._knn.sparseThreshold
elif name == "winnerCount":
return self._knn.numWinners
elif name == "relativeThreshold":
return self._knn.relativeThreshold
elif name == "SVDSampleCount":
v = self._knn.numSVDSamples
return v if v is not None else 0
elif name == "SVDDimCount":
v = self._knn.numSVDDims
return v if v is not None else 0
elif name == "fractionOfMax":
v = self._knn.fractionOfMax
return v if v is not None else 0
elif name == "useAuxiliary":
return self._useAuxiliary
elif name == "justUseAuxiliary":
return self._justUseAuxiliary
elif name == "doSphering":
return self._doSphering
elif name == "cellsPerCol":
return self._knn.cellsPerCol
elif name == "maxStoredPatterns":
return self.maxStoredPatterns
elif name == 'categoryRecencyList':
return self._knn._categoryRecencyList
else:
# If any spec parameter name is the same as an attribute, this call
# will get it automatically, e.g. self.learningMode
return PyRegion.getParameter(self, name, index)