Skip to content

PyNN microcircuit #3

Open
Open

Description

@neworderofjamie

I'm trying to get the PyNN version of the microcircuit working and am really struggling to find the right combination of NEST and PyNN version. The readme says to use Nest 2.4.1 but I have failed to find a version of PyNN that is suitable:

  • PyNN 0.8.0 (installed from pip) fails with AttributeError: 'module' object has no attribute 'FixedTotalNumberConnector'
  • PyNN 0.8.1 (installed from pip) fails with pynestkernel.NESTError: UnknownModelName in SetDefaults_l_D: /static_synapse_lbl is not a known model name.

Could you update the README so it recommends the correct versions? Additionally, what are the scaling values required to match the version in the paper (80x10^3 neurons, 0.3x10^9 synapses)? In the PyNest version they're both set to 0.1 and in the PyNN version K_scaling = 0.5 and N_scaling = 1.0.

Activity

  1. albada commented on Jan 24, 2018

    @albada
    Contributor

    Thanks for your comment, it does look like the README is outdated. Looking at the latest commits, it seems like it should work with NEST 2.12. Could you try that? The version of the model matching that in the paper is obtained with K_scaling = 1.0, N_scaling = 1.0.

  2. neworderofjamie commented on Jan 25, 2018

    @neworderofjamie
    Author

    No problem! Thanks for the quick response. I will have a go with NEST 2.12 today - what version of PyNN does that work with?

  3. albada commented on Jan 25, 2018

    @albada
    Contributor

    According to the commit message for the addition of the PyNN code to this repository, it should work with PyNN 0.8 (I don't know in more detail, but I guess the additional detail doesn't matter)

  4. neworderofjamie commented on Jan 25, 2018

    @neworderofjamie
    Author

    Hi Sasha,

    Testing with Nest 2.12.0:

    • PyNN 0.8.0 doesn't work because the FixedNumberConnector seems to be missing
    • PyNN 0.8.1 fails with:
      File "microcircuit.py", line 19, in <module>
        exec('import pyNN.%s as sim' % simulator)
      File "<string>", line 1, in <module>
      File "/home/j/jk/jk421/nest_2_12_0/local/lib/python2.7/site-packages/pyNN/nest/__init__.py", line 38, in <module>
        from pyNN.nest.recording import *
      File "/home/j/jk/jk421/nest_2_12_0/local/lib/python2.7/site-packages/pyNN/nest/recording.py", line 112, in <module>
        class Multimeter(RecordingDevice):
      File "/home/j/jk/jk421/nest_2_12_0/local/lib/python2.7/site-packages/pyNN/nest/recording.py", line 114, in Multimeter
        _nest_connect = nest.ConvergentConnect
    AttributeError: 'module' object has no attribute 'ConvergentConnect'
    (nest_2_12_0) jk421@inf900801:~/PotjansDiesmann2014-master/PyNN$ pip install pynn==0.8.2
    
    • PyNN 0.8.2 fails with
    Traceback (most recent call last):
      File "microcircuit.py", line 26, in <module>
        n.setup(sim)
      File "/home/j/jk/jk421/PotjansDiesmann2014-master/PyNN/network.py", line 100, in setup
        syn = sim.StaticSynapse(weight=self.w_ext)
      File "/home/j/jk/jk421/nest_2_12_0/local/lib/python2.7/site-packages/pyNN/models.py", line 105, in __init__
        raise e
    KeyError: 'min_delay'
    
    • PyNN 0.8.3 fails with
    Traceback (most recent call last):
      File "microcircuit.py", line 26, in <module>
        n.setup(sim)
      File "/home/j/jk/jk421/PotjansDiesmann2014-master/PyNN/network.py", line 128, in setup
        d_mean[source_pop], d_sd[source_pop])
      File "/home/j/jk/jk421/PotjansDiesmann2014-master/PyNN/connectivity.py", line 22, in FixedTotalNumberConnect
        proj = sim.Projection(pop1, pop2, conn, syn, receptor_type=conn_type)
      File "/home/j/jk/jk421/nest_2_12_0/local/lib/python2.7/site-packages/pyNN/nest/projections.py", line 60, in __init__
        connector.connect(self)
      File "/home/j/jk/jk421/nest_2_12_0/local/lib/python2.7/site-packages/pyNN/connectors.py", line 1029, in connect
        connections[target_index].append(source_index)
    TypeError: only integer scalar arrays can be converted to a scalar index
    

    So I'm a little unsure what to do...

  5. pgleeson commented on Jan 25, 2018

    @pgleeson
    Member

    @neworderofjamie Have a look at the logs here: https://travis-ci.org/OpenSourceBrain/PotjansDiesmann2014/builds/316992950#.

    These should show the details of the various packages which need to be installed to get the PyNN + NEST example working.

  6. pgleeson commented on Jan 25, 2018

    @pgleeson
    Member

    Also, a Docker file which builds the full environment required is here: https://github.com/OpenSourceBrain/neuralensemble-docker/blob/python2/osb/Dockerfile

  7. neworderofjamie commented on Jan 25, 2018

    @neworderofjamie
    Author

    Hi Padraig,

    Thanks for that - your test looks like it checks out master from the PyNN github and doing that works for me. It also seems to work with 0.9.2 so, to save other people this hassle, could you update the readme to say the release version it works with - master on github seems a bit risky/something of a moving target :)

    Cheers

    Jamie

  8. pgleeson commented on Jan 26, 2018

    @pgleeson
    Member

    @neworderofjamie Good point, the Readme(s) certainly need updating, and there's alos an open PR from @apdavison which needs to be checked... I plan to have a good look over this in the next week or so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions