ioam / topographica

A general-purpose neural simulator focusing on topographic maps.
topographica.org
BSD 3-Clause "New" or "Revised" License
53 stars 32 forks source link

Quits without warning #41

Closed sf-issues closed 12 years ago

sf-issues commented 12 years ago

Converted from SourceForge issue 1864835, submitted by tcf Submit Date: 2008-01-06 01:19 GMT

Topographica sounds great, but I am not able to get it to perform as advertised. I downloaded version 0.9.4 to Ubuntu Linux, selecting the tar.gz version and unpacked it. That produces 867 objects in one directory. Most files are .html with some images; there do not appear to be any source code files. I am not a Linux command line guru; I prefer the graphical interface. I do not know how to follow the instructions about needing to specify that some standard libraries be installed.

I tried the self-extracting Windows version. It seems to install properly and produced lots of subdirectories. I try to follow the LISSOM Orientation Map tutorial. I get a Topographica GUI similar to that shown in the tutorial. When I try to do Simulation | Load Snapshot, there initially appear to be no files available. The default is to just show files of type .typ and there are none. When I ask for all files, there are several of type .ty, but there is no file that looks like "lissom_oo_or_10000.*". The closest match seems to be "lissom_oo_or_noshrinking.ty". When I try to load that I get an error window from Tk that complains about an UnpicklingError Exception. When I try to load "lissom_oo_or_homeomaxent.ty" I get the same thing. Same for "lissom_oo_or.ty".

Next I try to follow the SOM Retininotopic Map tutorial. From the Windows GUI, I try the Simulation | Model Editor. It brings up a blank window and it is not clear how to get the graphic displayed in the tutorial. I try Plots | Projection. It does nothing.

All this was based on running Topographica when it was installed. Double clicking on the Topogrphica icon on my desktop flashes something for a few ms and does nothing. Launching topographica.bat gives some messages, then the prompt "Topographica_t0>>>".

sf-issues commented 12 years ago

Submitted by jbednar Date: 2008-01-07 15:06 GMT

| Topographica sounds great, but I am not able to get it to perform | as advertised. I downloaded version 0.9.4 to Ubuntu Linux, | selecting the tar.gz version and unpacked it. That produces 867 | objects in one directory. Most files are .html with some images; | there do not appear to be any source code files. I am not a Linux | command line guru; I prefer the graphical interface. I do not know | how to follow the instructions about needing to specify that some | standard libraries be installed.

Sorry for the delay in responding; this email arrived over a holiday weekend and was held in a mail queue. Sounds like you've had a frustrating experience!

In any case, you seem to have encountered some sort of problem unpacking the archive, because there should have been about 1500 files unpacked, all but 3 of which are stored in subdirectories:

lodestar:~/scratch/temp> tar -xzf topographica-0.9.4.tar.gz lodestar:~/scratch/temp> ls -lF total 49344 drwxrwxr-x 7 jbednar people 4096 Nov 1 14:46 topographica-0.9.4/ -rw-rw-r-- 1 jbednar people 50462816 Nov 1 15:03 topographica-0.9.4.tar.gz lodestar:~/scratch/temp> cd topographica-0.9.4 lodestar:~/scratch/temp/topographica-0.9.4> ls -lF total 39 -rw-rw-r-- 1 jbednar people 18009 Nov 1 14:45 COPYING.txt drwxrwxr-x 16 jbednar people 512 Nov 1 14:46 doc/ drwxrwxr-x 2 jbednar people 512 Nov 1 14:46 etc/ drwxrwxr-x 3 jbednar people 512 Nov 1 14:46 examples/ drwxrwxr-x 2 jbednar people 1536 Nov 1 14:46 external/ -rw-rw-r-- 1 jbednar people 11148 Nov 1 14:46 Makefile -rw-r--r-- 1 jbednar people 3265 Nov 1 14:45 README.txt drwxrwxr-x 17 jbednar people 512 Nov 1 14:46 topo/ lodestar:~/scratch/temp/topographica-0.9.4> find . | wc 1494 1494 83774

Most Ubuntu installations should not need any extra external libraries installed; you should be able to simply type "make" and press return after doing the above commands.

| I tried the self-extracting Windows version. It seems to install | properly and produced lots of subdirectories. I try to follow the | LISSOM Orientation Map tutorial. I get a Topographica GUI similar | to that shown in the tutorial. When I try to do Simulation | Load | Snapshot, there initially appear to be no files available. The | default is to just show files of type .typ and there are | none. When I ask for all files, there are several of type .ty, but | there is no file that looks like "lissom_oo_or_10000.*". The | closest match seems to be "lissom_oo_or_noshrinking.ty". When I try | to load that I get an error window from Tk that complains about an | UnpicklingError Exception. When I try to load | "lissom_oo_or_homeomaxent.ty" I get the same thing. Same for | "lissom_oo_or.ty".

At the top of the tutorial page, it tells you:

This tutorial assumes that you have already followed the instructions for obtaining and installing Topographica. Also, you will need to generate a saved orientation map network, which can be done by running

\./topographica \-c "targets=\['lissom\_oo\_or\_10000\.typ'\]" examples/run\.py

(on Unix or Mac systems; on Windows, the syntax is slightly different --- see the note about translating Unix shell commands).

Until you do that there will be no saved snapshot for the final simulation (i.e., no .typ file). The .ty files are only the initial human-readable specification, and cannot be loaded as a snapshot.

On Windows I believe the command would be:

topographica -c "targets=['lissom_oo_or_10000.typ']" examples\run.py

Or you can build the simulation using only the GUI, by putting "10000" into the "Run for" box on the main window, hitting go, waiting until it gets to 10000, selecting Simulation/Save Snapshot, typing lissom_oo_or_10000.typ, and clicking ok. Typing the command is probably simpler, though.

| Next I try to follow the SOM Retininotopic Map tutorial. From the | Windows GUI, I try the Simulation | Model Editor. It brings up a | blank window and it is not clear how to get the graphic displayed | in the tutorial. I try Plots | Projection. It does nothing.

That sounds like you haven't loaded any particular simulation yet, just the basic simulator. The instructions about how to run the simulation are mainly for Linux, but on any platform you can select Simulation/Run Script, go to the examples directory, and then select som_retinotopy.ty to run. At that point you should have a model visible in the model editor and plottable in the Projection plot.

| All this was based on running Topographica when it was installed. | Double clicking on the Topogrphica icon on my desktop flashes | something for a few ms and does nothing.

Hopefully Chris can help with that one tomorrow; he maintains the Windows version.

| Launching topographica.bat gives some messages, then the prompt "Topographica_t0>>>".

Launching topographica.bat alone gives you the command-line (non-GUI) version, unless you do "topographica.bat -g".

Hope this helps clear things up!

Jim

sf-issues commented 12 years ago

Submitted by tcf Date: 2008-01-07 20:15 GMT

File Added: topo_install.txt

sf-issues commented 12 years ago

Submitted by ceball Date: 2008-01-08 05:07 GMT

Sorry to hear you're having such trouble. I'll try to help you with the Windows problems first.

I'm using Windows XP. I downloaded topographica-0.9.4.exe, then installed it (choosing the default location of 'c:\program files\topographica', although I have installed it in the past on other computers to different locations). I find that if I double click on the Topographica icon, I get the Topographica GUI. If I go into the Start menu, find the Topographica group, and then click on Topographica, I also get the GUI.

So, I am not sure what the problem is on your system, so please could you tell us what version of Windows you're using, and where you have installed Topographica? We really value feedback, particularly from people using Windows.

You also described trying to start the topographica.bat file directly. As Jim said, you have to pass the '-g' option to get a GUI. For example, with Topographica installed to 'c:\program files\topographica', I can do the following (at least on Windows XP):

(1) Click 'Start', then 'Run'. Enter the text 'cmd' (without quotes), and press return.

(2) At the command prompt, first change to the drive where topographica is installed by typing 'c:' (again, no quotes - and the same for all the following commands). Then, change to the topographica directory: 'cd program files' followed by 'cd topographica'. Finally, type 'topographica -g'.

You should now have the GUI. From here, you can follow Jim's earlier instructions.

If you can't get the GUI, though, please let us know!

Chris

sf-issues commented 12 years ago

Submitted by jbednar Date: 2008-01-08 23:15 GMT

tar -xzf topographica-0.9.4.tar.gz
All files produce the message:
tar: topographica-0.9.4/doc/buildbot/master.cfg: Cannot change ownership to uid 301176, gid 10000: Operation not permitted
even though I am root and own all files.

Ah, that's probably the source of all those errors -- running tar as root. When the root user runs tar, by default tar tries to restore the precise settings present on the system the file was made, including the original owner and the original group. But your system won't have any user identical to me, so that fails.

In general one should never run anything in Linux as root that doesn't need root privilege, but if you do really want to run as root, just do:

tar -xozf topographica-0.9.4.tar.gz

to tell it to ignore my uid and gid and use yours (root's) instead.

If that makes unpacking go smoothly, then you'll still have problems building as root in the next step, because we ourselves use "tar xzf" in external/Makefile. You can either search and replace all instances of "tar xzf" in external/Makefile with "tar oxzf", or else just run Topographica not as root (which is what I strongly, strongly recommend!).

I'll update our web site to state that it should not be run as root, and also change the external/Makefile to use "tar -xozf" in our own development sources for the next version.

In any case, I think here's what you'd want to run to make sure Ubuntu has all the right libraries installed (it won't do anything if you do have them already):

sudo apt-get install libfreetype6 libfreetype6-dev libpng12-0 libpng12-dev libx11-dev zlib1g

sf-issues commented 12 years ago

Submitted by jbednar Date: 2008-01-08 23:16 GMT

Clarification: where I said "run Topographica not as root", I meant "unpack, build, and run Topographica not as root".

sf-issues commented 12 years ago

Submitted by tcf Date: 2008-01-09 20:06 GMT

I am using Windows XP and downloaded topographica-0.9.4.exe and installed it in

E:Topographica\Windows. (I have a dual boot system with C: dedicated to Windows OS, E:

holding data shared between Linux and Windows and the third partition a Linux only

ext3). The installation creates a desktop icon whose taget is

"E:\Topographica\Windows\topographica.bat -g" I open up a command prompt:

Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Tyler>e:

E:> E:>cd Topographica\Windows

E:\Topographica\Windows>topographica.bat -g Module readline not available. History and completion support disabled. Launching GUI Topographica_t0>>>

The GUI does come up. It was not clear from the documentation what I should do next. What had been wrong was that the desktop icon had neglected to include "Start in:

E:\Topographica\Windows".

Please add the following to the tutorial: From the GUI, set the "Run for:" value to 10000.0, click on "Go" and wait until the

simulation completes. Then select "Simulation | Save snapshot". For the name, select

the "examples" folder and name it "lissom_oo_or_10000.typ".

The training process took only a few seconds on my machine (2 GB RAM). Simulation | Model Editor still produces a blank view, not that shown in item 3 of

http://topographica.org/Tutorials/lissom_oo_or.html. In item 4, Plots | Activity does

nothing. In item 6, there is no response to Plots | Connection Fields or to 7. Plots |

Projection. Also no response to 8. Plots | Preference Maps | Orientation Preference.

Next I copy file "som_retinotopy.ty" from E:\Topographica\Windows\examples to

E:\Topographica\Windows. I quit topographica, and from the command prompt type

"topographica som_retinotopy.ty -g". I get the GUI as before. This time, Simulation |

Model Editor does show the figure of item 3 on

http://topographica.org/Tutorials/som_retinotopy.html. Item 4 works after an

undocumented intermediate step. Item 5 is OK, but needs Plots | Preference Maps |

Center of Gravity and a refresh step. #6, 7, 8, 9 OK. Using the 10 x 10, 5000

iterations takes 36 seconds.

sf-issues commented 12 years ago

Submitted by jbednar Date: 2008-01-09 20:41 GMT

Please add the following to the tutorial: From the GUI, set the "Run for:" value to 10000.0, click on "Go" and wait until the simulation completes. Then select "Simulation Save snapshot". For the name, select the "examples" folder and name it "lissom_oo_or_10000.typ".
The training process took only a few seconds on my machine (2 GB RAM).
Simulation Model Editor still produces a blank view, not that shown in
item 3 of
http://topographica.org/Tutorials/lissom_oo_or.html. In item 4, Plots
Activity does nothing. In item 6, there is no response to Plots
Connection Fields or to 7. Plots Projection. Also no response to
8. Plots Preference Maps Orientation Preference.

Again, it sounds like you haven't loaded any particular network, so it's simulating an empty universe. I should have mentioned that if you're using the GUI to train the network, you'll first have to load the network specification, by doing "Simulation | Run Script" and selecting lissom_oo_or.ty from the examples menu. (Having to go through so many steps with the GUI is why we tell people to do it from the command line.) Anyway, once you load the .ty file and can see a network in the Model Editor, it should take at least 15 minutes, and probably closer to an hour, to run the simulation to 10000.

| Next I copy file "som_retinotopy.ty" from | E:\Topographica\Windows\examples to E:\Topographica\Windows. I quit | topographica, and from the command prompt type "topographica | som_retinotopy.ty -g". I get the GUI as before. This time, Simulation | |Model Editor does show the figure of item 3 on | http://topographica.org/Tutorials/som_retinotopy.html. Item 4 works | after an undocumented intermediate step. Item 5 is OK, but needs Plots | | Preference Maps | Center of Gravity and a refresh step. #6, 7, 8, 9 | OK. Using the 10 x 10, 5000 iterations takes 36 seconds.

Sounds like we finally have something working here! What was the undocumented intermediate step?

Jim

sf-issues commented 12 years ago

Submitted by ceball Date: 2008-01-10 01:46 GMT

What had been wrong was that the desktop icon had neglected to include "Start in:

E:\Topographica\Windows".

Looking at my desktop shortcut, I see the same thing - there is no "Start in" entry. My desktop shortcut works, though! I have no idea why that is.

The shortcut in Start | All Programs | Topographica does have a "Start in" entry. Please could you try opening Topographica from the Start menu and tell me if that works?

I have updated the installation procedure so that in the next release, the desktop shortcut will have "Start in" set.

Finally, if you have the time, please could you also try this:

* in Explorer (or whatever you use to browse files), go to the directory where you installed Topographica (E:\Topographica\Windows in your case)

* go into the examples directory

* double click on som_retinotopy.ty

* when the GUI ('Topographica Console') loads, click on "Simulation", then "Model Editor"

* do you see "V1", "Afferent", and "Retina"?

Thanks very much for your help, Chris

sf-issues commented 12 years ago

Submitted by tcf Date: 2008-01-11 02:04 GMT

My computer is dual boot, organized as / Linux file system (ext3) C: Windows XP OS (vfat, mounted as /media/sda1) E: Data files (vfat, mounted as /media/sda2) I keep most stuff on E:, which is viewable from both Windows and Linux. I would prefer to keep my home directory there, but Linux will not let me put it on a vfat. When I boot in Windows, everything in the ext3 partition is invisible. Thus I wind up keeping most stuff outside of my home directory, such as /media/sda2/Topographica = E:\Topographica with subdirectories for operating under Windows or Linux. Topographica winds up being owned by root, but I do not normally operate as root.

I deleted the previously installed Linux files and tried the tar again with user ID tyler. This results in populating the Topographica/topographica-0.9.4 directory similarly to the Topographica/Windows directory. Both have subdirectories for doc, etc, topo and examples. Windows has a python_topo subdirectory and Linux has external. Root owns all the Linux files. Tar produced lots of error messages such as

tar: topographica-0.9.4/doc/buildbot/master.cfg: Cannot utime: Operation not permitted tar: topographica-0.9.4/doc/buildbot/doozy-buildbot.tac: Cannot utime: Operation not permitted tar: topographica-0.9.4/doc/buildbot: Cannot utime: Operation not permitted tar: topographica-0.9.4/doc: Cannot utime: Operation not permitted tar: topographica-0.9.4: Cannot utime: Operation not permitted tar: Error exit delayed from previous errors

but these do not appear to be significant. In Ubuntu, I prefer the GUI to apt-get. Going to System | Administration | Synaptic Package Manager, I check that all the required libraries are already installed. "make" also produces utime errors, and it does not appear to create topographica. When I do "sudo make" it produces errors such as

tar: tcl8.4.13/tools/tcl.hpj.in: Cannot change ownership to uid 15399, gid 18810: Operation not permitted

So much for Linux; next booting to Windows.

Opening Topographica from the Start menu works.

Chris wrote: Finally, if you have the time, please could you also try this:

YES.

I had tried running from the GUI since I can't get Linux to run and the tutorial seemed unsure of the command line to use from Windows. I select "Simulation | Run Script" and pick lissom_oo_or.ty from the examples menu. Training for 10000 steps takes 23 minutes, 27 seconds. Item 3 of http://topographica.org/Tutorials/lissom_oo_or.html still comes up blank. The training has not saved anything. I save a snapshot as examples\Simuation10000.typ.

On item 4 of http://topographica.org/Tutorials/som_retinotopy.html, you need to hit the refresh button before you see anything. I don't mean to be pedantic, but a tutorial should be acessible to ANYONE.

Next I try copying lissom_oo_or.ty from Topographica\Windows\examples to Topographica\Windows. I quit Topographica, open a command prompt window and type "topographica lissom_oo_or.ty -g". This time the Model Editor does display as on the tutorial. I can do steps 4 and 5, though V1 is not patchy since I have not trained. The graphs of step 6 display OK.

I am now able to run the tutorials under Windows, though I would still like to get the Linux version working.

- Tyler.

sf-issues commented 12 years ago

Submitted by jbednar Date: 2008-01-11 10:18 GMT

| My computer is dual boot, organized as | / Linux file system (ext3) | C: Windows XP OS (vfat, mounted as /media/sda1) | E: Data files (vfat, mounted as /media/sda2) | I keep most stuff on E:, which is viewable from both Windows and Linux. I | would prefer to keep my home directory there, but Linux will not let me put | it on a vfat. When I boot in Windows, everything in the ext3 partition is | invisible. Thus I wind up keeping most stuff outside of my home directory, | such as /media/sda2/Topographica = E:\Topographica with subdirectories for | operating under Windows or Linux. Topographica winds up being owned by | root, but I do not normally operate as root.

Oh, using a vfat partition might be the problem -- vfat does not necessarily store all of the permission information that is necessary for linux to work smoothly. I certainly wouldn't want to try to debug that, so please try using an ext3 or ext2 partition.

| I deleted the previously installed Linux files and tried the tar again | with user ID tyler. This results in populating the | Topographica/topographica-0.9.4 directory similarly to the | Topographica/Windows directory. Both have subdirectories for doc, etc, topo | and examples. Windows has a python_topo subdirectory and Linux has | external. Root owns all the Linux files. Tar produced lots of error | messages such as

root owns all the linux files? That's definitely not right; tyler should own them. That's probably because of the filesystem; vfat mostly works, but is certainly not suitable for general use as a Linux filesystem.

tar: topographica-0.9.4/doc/buildbot/master.cfg: Cannot utime: Operation not permitted tar: topographica-0.9.4/doc/buildbot/doozy-buildbot.tac: Cannot utime: Operation not permitted tar: topographica-0.9.4/doc/buildbot: Cannot utime: Operation not permitted tar: topographica-0.9.4/doc: Cannot utime: Operation not permitted tar: topographica-0.9.4: Cannot utime: Operation not permitted tar: Error exit delayed from previous errors
but these do not appear to be significant. In Ubuntu, I prefer the GUI to
apt-get. Going to System Administration Synaptic Package Manager, I
check that all the required libraries are already installed.
"make" also produces utime errors, and it does not appear to create
topographica. When I do "sudo make" it produces errors such as
tar: tcl8.4.13/tools/tcl.hpj.in: Cannot change ownership to uid 15399, gid
18810: Operation not permitted

As mentioned earlier, to avoid those when running as root you would probably need to search and replace all instances of "tar xzf" in external/Makefile with "tar oxzf", and maybe even with "tar --no-same-permissions oxzf" to be doubly sure. But really it sounds like vfat is the problem, so try running as a normal user on a normal filesystem, i.e. tyler on ext3. The installation is Linux-specific once built anyway, so there's no reason to share it with Windows. You can share your scripts and output files with Windows later, after it's built, with no problem, by putting those into a separate shared directory rather than putting the entire installation into a shared directory.

| I had tried running from the GUI since I can't get Linux to run and the | tutorial seemed unsure of the command line to use from Windows. I select | "Simulation | Run Script" and pick lissom_oo_or.ty from the examples menu. | Training for 10000 steps takes 23 minutes, 27 seconds. Item 3 of | http://topographica.org/Tutorials/lissom_oo_or.html still comes up blank. | The training has not saved anything. I save a snapshot as | examples\Simuation10000.typ.

So what you're saying is that running the script appears to do something, because it takes as long as it should, but there is still nothing visible in the model editor? Maybe you already had the model editor window open from before the script was loaded? If so just close it and open a new one. Otherwise I'm not sure what that would mean.

| On item 4 of http://topographica.org/Tutorials/som_retinotopy.html, you | need to hit the refresh button before you see anything. I don't mean to be | pedantic, but a tutorial should be acessible to ANYONE.

Sorry; we added the refresh step at some point but did not update the tutorial. to specify that extra step. I've updated it in the development version now.

sf-issues commented 12 years ago

Submitted by tcf Date: 2008-01-11 21:57 GMT

I copied topographica to my home Linux directory and it makes OK.

I have been using the dual boot system for over a year and am happy with it. Which topographica files are source or data that work equally well under either OS?

It appears to me that there are problems with launching topographica from an icon and that use of a command line is more reliable for now. The problem is that a .ty file seems to be required as an argument. Without one you can run the program, but see none of the features in the tutorials.

Suggested changes to http://topographica.org/Downloads/index.html Replace "On some Linux distributions that start with a minimal set of packages included, such as Ubuntu or the various "live CD" systems, you may need to specify explicitly that some standard libraries" with "On some Linux distributions that start with a minimal set of packages included, such as the various "live CD" systems, you may need to specify explicitly that some standard libraries"

Suggested changes to http://topographica.org/Tutorials/lissom_oo_or.html Replace "Also, you will need to generate a saved orientation map network, which can be done by running

\./topographica \-c "targets=\['lissom\_oo\_or\_10000\.typ'\]" examples/run\.py

(on Unix or Mac systems; on Windows, the syntax is slightly different—see the note about translating Unix shell commands)."

with "It is instructive to perform steps 3-12 below with both an untrained and a trained network. To work with the untrained version, copy the lissom_oo_or.ty file from the examples directory to the one above it. Invoke the program on Linux with ./topographica lissom_oo_or.ty -g
or on Windows with topographica lissom_oo_or.ty -g
After a few seconds, the GUI in item 2 will appear and you can examine the untrained network. To train the network, set the "Run for:" value in the GUI to 10000 and click on "Go". When it completes, select Simulation | Save snapshot and give the name lissom_oo_or_10000.typ. Alternatively, the trained network can be created from the command line with ./topographica -c "targets=['lissom_oo_or_10000.typ']" examples/run.py "

sf-issues commented 12 years ago

Submitted by jbednar Date: 2008-01-11 22:56 GMT

Ok, thanks; we'll make those changes to the tutorials. Glad to hear that it works fine when not on vfat. You should be able to move or copy the examples/ subdirectory anywhere, and put new .ty files of your own in a similar place. You can also save any data to any location; e.g. the run_batch command uses an Output subdirectory by default but can use any other location you specify. The other directories are probably best left where they are. Thanks for working through this with us!