I think that "reset()" is a function of the nodes in the Network API, and
"resetSequenceStates()" is a function of the OPF model instance. If you are
working with an OPF model, use the latter to reset a sequence. It has a bit
more overloaded meaning in the Network API depending on the region
implementation.

---------
Matt Taylor
OS Community Flag-Bearer
Numenta

On Fri, May 6, 2016 at 2:38 AM, Wakan Tanka <[email protected]> wrote:

> Hello David,
> do you mean resetSequenceStates()?
>
> On Tue, Apr 26, 2016 at 6:17 PM, cogmission (David Ray) <
> [email protected]> wrote:
>
>> Alexandre, are you calling "reset()" after the 20,000 5's then one 6? The
>> "reset()" lets the HTM know that the pattern has concluded and may help
>> yield better results?
>>
>> Cheers,
>> David
>>
>> On Tue, Apr 26, 2016 at 10:03 AM, Alexandre Vivmond <[email protected]>
>> wrote:
>>
>>> Here are parameters that I'm using for running a swarm
>>>
>>> SWARM_CONFIG = {
>>>   "includedFields": [
>>>     {
>>>       "fieldName": "value",
>>>       "fieldType": "float",
>>>       "maxValue": 6.0,
>>>       "minValue": 5.0
>>>     }
>>>   ],
>>>   "streamDef": {
>>>     "info": "value",
>>>     "version": 1,
>>>     "streams": [
>>>       {
>>>         "info": "Values",
>>>         "source": "file://values.csv",
>>>         "columns": [
>>>           "*"
>>>         ]
>>>       }
>>>     ]
>>>   },
>>>
>>>   "inferenceType": "TemporalAnomaly",
>>>   "inferenceArgs": {
>>>     "predictionSteps": [
>>>       1
>>>     ],
>>>     "predictedField": "value"
>>>   },
>>>   "iterationCount": -1,
>>>   "swarmSize": "medium"
>>> }
>>>
>>>
>>> And here is the generated model_params.py file output
>>>
>>> MODEL_PARAMS = {'aggregationInfo': {'days': 0,
>>>                      'fields': [],
>>>                      'hours': 0,
>>>                      'microseconds': 0,
>>>                      'milliseconds': 0,
>>>                      'minutes': 0,
>>>                      'months': 0,
>>>                      'seconds': 0,
>>>                      'weeks': 0,
>>>                      'years': 0},
>>>  'model': 'CLA',
>>>  'modelParams': {'anomalyParams': {u'anomalyCacheRecords': None,
>>>                                    u'autoDetectThreshold': None,
>>>                                    u'autoDetectWaitRecords': None},
>>>                  'clParams': {'alpha': 0.00634375,
>>>                               'clVerbosity': 0,
>>>                               'regionName': 'CLAClassifierRegion',
>>>                               'steps': '1'},
>>>                  'inferenceType': 'TemporalAnomaly',
>>>                  'sensorParams': {'encoders': {u'value': {'clipInput':
>>> True,
>>>                                                           'fieldname':
>>> 'value',
>>>                                                           'maxval': 6.0,
>>>                                                           'minval': 5.0,
>>>                                                           'n': 22,
>>>                                                           'name':
>>> 'value',
>>>                                                           'type':
>>> 'ScalarEncoder',
>>>                                                           'w': 21}},
>>>                                   'sensorAutoReset': None,
>>>                                   'verbosity': 0},
>>>                  'spEnable': True,
>>>                  'spParams': {'columnCount': 2048,
>>>                               'globalInhibition': 1,
>>>                               'inputWidth': 0,
>>>                               'maxBoost': 2.0,
>>>                               'numActiveColumnsPerInhArea': 40,
>>>                               'potentialPct': 0.8,
>>>                               'seed': 1956,
>>>                               'spVerbosity': 0,
>>>                               'spatialImp': 'cpp',
>>>                               'synPermActiveInc': 0.05,
>>>                               'synPermConnected': 0.1,
>>>                               'synPermInactiveDec': 0.09376875},
>>>                  'tpEnable': True,
>>>                  'tpParams': {'activationThreshold': 12,
>>>                               'cellsPerColumn': 32,
>>>                               'columnCount': 2048,
>>>                               'globalDecay': 0.0,
>>>                               'initialPerm': 0.21,
>>>                               'inputWidth': 2048,
>>>                               'maxAge': 0,
>>>                               'maxSegmentsPerCell': 128,
>>>                               'maxSynapsesPerSegment': 32,
>>>                               'minThreshold': 9,
>>>                               'newSynapseCount': 20,
>>>                               'outputType': 'normal',
>>>                               'pamLength': 1,
>>>                               'permanenceDec': 0.1,
>>>                               'permanenceInc': 0.1,
>>>                               'seed': 1960,
>>>                               'temporalImp': 'cpp',
>>>                               'verbosity': 0},
>>>                  'trainSPNetOnlyIfRequested': False},
>>>  'predictAheadTime': None,
>>>  'version': 1}
>>>
>>> On Tue, Apr 26, 2016 at 4:33 PM, Matthew Taylor <[email protected]>
>>> wrote:
>>>
>>>> What are the encoder parameters you're using to encode these numbers?
>>>> 5 and 6 might be close enough that they get encoded as the same bit
>>>> array. What are your min/max values for the scalar encoder? Or are yo
>>>> using another encoder?
>>>> ---------
>>>> Matt Taylor
>>>> OS Community Flag-Bearer
>>>> Numenta
>>>>
>>>>
>>>> On Tue, Apr 26, 2016 at 3:32 AM, Alexandre Vivmond <[email protected]>
>>>> wrote:
>>>> > I've got a question regarding patterns and noise. I've experimented a
>>>> bit
>>>> > with HTM now, and I can get it to learn a wide variety of varying
>>>> patterns
>>>> > such as for example: 1, 2, 3, 1, 2, 3, 1,... or 5, 6, 5, 6, 5, 6, ...
>>>> but
>>>> > patterns such as 5, 5, 6, 5, 5, 6, ... or 5, 5, 5, 5, 5, 5, 5, 5, 5,
>>>> 6, 5,
>>>> > 5, 5, 5, 5, 5, 5, 5, 5, 6, ... are things that HTM struggles with,
>>>> which is
>>>> > understandable considering HTM is really good at creating "links"
>>>> between
>>>> > values with respect to time and context. But the previously mentioned
>>>> > example makes it really hard to create "links" between self-repeating
>>>> > values, even though HTM can manage to differ between contexts. So what
>>>> > exactly is the "line" between a pattern and noise? I fed HTM 20000
>>>> values of
>>>> > 10 fives followed by one 6 (5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 5, ...)
>>>> and it
>>>> > still didn't manage to learn that pattern. Any ideas?
>>>>
>>>>
>>>
>>
>>
>> --
>> *With kind regards,*
>>
>> David Ray
>> Java Solutions Architect
>>
>> *Cortical.io <http://cortical.io/>*
>> Sponsor of:  HTM.java <https://github.com/numenta/htm.java>
>>
>> [email protected]
>> http://cortical.io
>>
>
>
>
> --
> Best Regards
>
> Name: Wakan Tanka a.k.a. Wakatana a.k.a. MackoP00h
> Location: Europe
> Note: I'm non native English speaker so please bare with me ;)
> Contact:
> [email protected]
> http://stackoverflow.com/users/1616488/wakan-tanka
> https://github.com/wakatana
> https://twitter.com/MackoP00h
>

Reply via email to