def testAdaptSegmentToMin(self): tm = TemporalMemory() segment1 = tm.layer.columns[0].cells[0].createSegment() synapse1 = segment1.createSynapse(presynapticCell=tm.layer.columns[0].cells[23], permanence=0.1) tm.adaptSegment(segment1, set(), tm.permanenceIncrement, tm.permanenceDecrement) synapses = segment1.synapses self.assertFalse(synapse1 in synapses)
def testAdaptSegmentToMax(self): tm = TemporalMemory() segment1 = tm.layer.columns[0].cells[0].createSegment() synapse1 = segment1.createSynapse(presynapticCell=tm.layer.columns[0].cells[23], permanence=0.9) tm.adaptSegment(segment1, set([synapse1]), tm.permanenceIncrement, tm.permanenceDecrement) self.assertAlmostEqual(synapse1.permanence, 1.0) # Now permanence should be at max tm.adaptSegment(segment1, set([synapse1]), tm.permanenceIncrement, tm.permanenceDecrement) self.assertAlmostEqual(synapse1.permanence, 1.0)
def testAdaptSegment(self): tm = TemporalMemory( layer=Layer(columnDimensions=[2048], numCellsPerColumn=32) ) segment1 = tm.layer.columns[0].cells[0].createSegment() synapse1 = segment1.createSynapse(presynapticCell=tm.layer.columns[0].cells[23], permanence=0.6) synapse2 = segment1.createSynapse(presynapticCell=tm.layer.columns[1].cells[5], permanence=0.4) synapse3 = segment1.createSynapse(presynapticCell=tm.layer.columns[14].cells[29], permanence=0.9) tm.adaptSegment(segment1, set([synapse1, synapse2]), tm.permanenceIncrement, tm.permanenceDecrement) self.assertAlmostEqual(synapse1.permanence, 0.7) self.assertAlmostEqual(synapse2.permanence, 0.5) self.assertAlmostEqual(synapse3.permanence, 0.8)