My installation suddenly failed with AsertionError message

Hello

After several succesfully test on HTMEngine. My installation suddenly failed with the error message:

2016-09-07T05:42:12.756958 - Inference failed for rowID=1 of modelID=e8b7a5adec394c289386101c5526463d 
(AssertionError('Expected numeric anomaly score with status=0, but got: 1.0',)): (tb: ...Traceback (most recent call last):
  File "/INTUITION/htmengine/htmengine/model_swapper/model_runner.py", line 512, in _processInputRow
    anomalyScore=r.inferences["anomalyScore"])
  File "/INTUITION/htmengine/htmengine/model_swapper/model_swapper_interface.py", line 397, in __init__
    repr(anomalyScore))
AssertionError: Expected numeric anomaly score with status=0, but got: 1.0) 

So I decided a fresh installation but, I’m getting crazy with the installation of nupic. I’m following the steps strictly, the installation is finishing succesful without any dependencies problem. But after run the test, at least 16 steps fail, for example:

    **tests/unit/nupic/research/connections_test.py::ConnectionsTest::testComputeActivity FAILED**

**    _____________________________________________ ConnectionsTest.testComputeActivity _____________________________________________**
**    self = <tests.unit.nupic.research.connections_test.ConnectionsTest testMethod=testComputeActivity>**

**    def testComputeActivity(self):**
**      """ Creates a sample set of connections, and makes sure that computing the**
**            activity for a collection of cells with no activity returns the right**
**            activity data.**
**        """**
**      connections = Connections(1024)**

**      # Cell with 1 segment.**
**      # Segment with:**
**      # - 1 connected synapse: active**
**      # - 2 matching synapses**
**      segment1a = connections.createSegment(10)**
**      connections.createSynapse(segment1a, 150, .85)**
**      connections.createSynapse(segment1a, 151, .15)**

**      # Cell with 1 segment.**
**      # Segment with:**
**      # - 2 connected synapse: 2 active**
**      # - 3 matching synapses: 3 active**
**      segment2a = connections.createSegment(20)**
**      connections.createSynapse(segment2a, 80, .85)**
**      connections.createSynapse(segment2a, 81, .85)**
**      synapse = connections.createSynapse(segment2a, 82, .85)**
**      connections.updateSynapsePermanence(synapse, .15)**

**      inputVec = [50, 52, 53, 80, 81, 82, 150, 151]**
**      (numActiveConnected,**
**    >      numActivePotential) = connections.computeActivity(inputVec, .5)**
**    E     TypeError: computeActivity() takes at least 6 arguments (3 given)**

**    tests/unit/nupic/research/connections_test.py:346: TypeError**

In another similar machine (rhel 7.2) everything (HTM Engine, nupic) is working fine with same python packages.

ltest417.numenta./INTUITION/nupic # pip install https://s3-us-west-2.amazonaws.com/artifacts.numenta.org/numenta/nupic.core/releases/nupic.bindings/nupic.bindings-0.4.5-cp27-none-linux_x86_64.whl --user --upgrade
Collecting nupic.bindings==0.4.5 from https://s3-us-west-2.amazonaws.com/artifacts.numenta.org/numenta/nupic.core/releases/nupic.bindings/nupic.bindings-0.4.5-cp27-none-linux_x86_64.whl
  Using cached https://s3-us-west-2.amazonaws.com/artifacts.numenta.org/numenta/nupic.core/releases/nupic.bindings/nupic.bindings-0.4.5-cp27-none-linux_x86_64.whl
Requirement already up-to-date: pytest-xdist==1.8 in /usr/lib/python2.7/site-packages (from nupic.bindings==0.4.5)
Requirement already up-to-date: pytest==2.5.1 in /usr/lib/python2.7/site-packages (from nupic.bindings==0.4.5)
Requirement already up-to-date: pytest-cov==1.6 in /usr/lib/python2.7/site-packages (from nupic.bindings==0.4.5)
Requirement already up-to-date: numpy==1.9.2 in /home/numenta/.local/lib/python2.7/site-packages (from nupic.bindings==0.4.5)
Requirement already up-to-date: execnet>=1.0.8 in /usr/lib/python2.7/site-packages (from pytest-xdist==1.8->nupic.bindings==0.4.5)
Requirement already up-to-date: py>=1.4.19 in /usr/lib/python2.7/site-packages (from pytest==2.5.1->nupic.bindings==0.4.5)
Requirement already up-to-date: cov-core>=1.6 in /usr/lib/python2.7/site-packages (from pytest-cov==1.6->nupic.bindings==0.4.5)
Requirement already up-to-date: apipkg>=1.4 in /usr/lib/python2.7/site-packages (from execnet>=1.0.8->pytest-xdist==1.8->nupic.bindings==0.4.5)
Collecting coverage>=3.6 (from cov-core>=1.6->pytest-cov==1.6->nupic.bindings==0.4.5)
Installing collected packages: nupic.bindings, coverage
  Found existing installation: nupic.bindings 0.4.5
    Uninstalling nupic.bindings-0.4.5:
      Successfully uninstalled nupic.bindings-0.4.5
Successfully installed coverage-4.2 nupic.bindings-0.4.5
ltest417.numenta./INTUITION/nupic # pip install nupic --user --upgrade
Requirement already up-to-date: nupic in /home/numenta/.local/lib/python2.7/site-packages/nupic-0.5.5-py2.7.egg
Requirement already up-to-date: asteval==0.9.1 in /usr/lib/python2.7/site-packages (from nupic)
Collecting coverage==3.7.1 (from nupic)
Requirement already up-to-date: mock==1.0.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: ordereddict==1.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: psutil==1.0.1 in /usr/lib64/python2.7/site-packages (from nupic)
Requirement already up-to-date: pytest==2.5.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: pytest-cov==1.6 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: pytest-xdist==1.8 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: python-dateutil==2.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: PyYAML==3.10 in /usr/lib64/python2.7/site-packages (from nupic)
Requirement already up-to-date: unittest2==0.5.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: validictory==0.9.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: PyMySQL==0.6.2 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: DBUtils==1.1 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: pyproj==1.9.3 in /usr/lib64/python2.7/site-packages (from nupic)
Requirement already up-to-date: prettytable==0.7.2 in /usr/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: nupic.bindings==0.4.5 in /home/numenta/.local/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: numpy==1.9.2 in /home/numenta/.local/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: pycapnp==0.5.8 in /home/numenta/.local/lib/python2.7/site-packages (from nupic)
Requirement already up-to-date: py>=1.4.19 in /usr/lib/python2.7/site-packages (from pytest==2.5.1->nupic)
Requirement already up-to-date: cov-core>=1.6 in /usr/lib/python2.7/site-packages (from pytest-cov==1.6->nupic)
Requirement already up-to-date: execnet>=1.0.8 in /usr/lib/python2.7/site-packages (from pytest-xdist==1.8->nupic)
Requirement already up-to-date: six in /usr/lib/python2.7/site-packages (from python-dateutil==2.1->nupic)
Requirement already up-to-date: apipkg>=1.4 in /usr/lib/python2.7/site-packages (from execnet>=1.0.8->pytest-xdist==1.8->nupic)
Installing collected packages: coverage
  Found existing installation: coverage 4.2
    Uninstalling coverage-4.2:
      Successfully uninstalled coverage-4.2
Successfully installed coverage-3.7.1

So any idea will be welcome, thanks in advance.

Juan

The error was gone with the wind. :slight_smile: Without any taken action, only a clean installation (identical to the several previous installations)

I’m suspecting something in my data center is impacting it but I don’t know what. :fearful:

Closed issue.

@juanhorta, I would like to follow up, because the error looks strange, since the check is

      assert isinstance(anomalyScore, (int, long, float)), (
        "Expected numeric anomaly score with status=0, but got: " +
        repr(anomalyScore))

So you would think that 1.0 would be okay. Which python version are you using? And which version of Linux?

@juanhorta, I submitted PR https://github.com/numenta/numenta-apps/pull/892 that will also show the type of the offending object in the assertion message. If you get a reproducible case again, it would be very helpful to find out the type of that object.

It’s likely that the 1.0 reported here is a numpy float32 or some other type that doesn’t pass the isinstance() check.

Hi,

This combination of dependencies are working fine:

Red Hat Enterprise Linux Server release 7.2 (Maipo)
Linux ltest417 3.10.0-327.el7.x86_64 #1 SMP Thu Oct 29 17:29:29 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux

htmengine==0.0.0
nta.utils==0.0.0
numpy==1.9.2
nupic==0.3.4
nupic.bindings==0.2.1
pycapnp==0.5.9

But this one doesn’t work

Red Hat Enterprise Linux Server release 7.2 (Maipo)
Linux ltest417 3.10.0-327.el7.x86_64 #1 SMP Thu Oct 29 17:29:29 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux
htmengine==0.0.0
nta.utils==0.0.0
numpy==1.9.2
nupic==0.5.5
nupic.bindings==0.4.5
pycapnp==0.5.8

I made the last setup with

python setup.py --install --user
CC=gcc CXX=g++

instead of

python setup.py --develop --user
CC=gcc CXX=g++

I dont know if it may influence. But the fact is now is working.

Regards.

@juanhorta, https://github.com/numenta/numenta-apps/pull/892 has been merged, so you can try with nupic.core master, if you care to build nupic.bindings from nupic.core yourself.

The following seems like an error:

python setup.py --install --user
CC=gcc CXX=g++

In particular, --install should be just install. Also, I am not sure what benefit CC=gcc CXX=g++ would have after python setup.py ...