Hello,
As part of my research on human concept learning, I've had start working with neural net models. After trying to muddle through with programming languages that I do not really know or understand (e.g. C++ and Java), I have decided to come back to Squeak. The problem is that, even in Squeak, I am better at hacking and repurposing other people's code than at creating something entirely new. So, I am writing to learn if anyone has implemented any neural net models in Squeak and, if so, would those people be willing to share any such implementation. Thanks, John |
2009/7/8 JOHN VOIKLIS <[hidden email]>:
> Hello, > > As part of my research on human concept learning, I've had start > working with neural net models. After trying to muddle through with > programming languages that I do not really know or understand (e.g. > C++ and Java), I have decided to come back to Squeak. The problem is > that, even in Squeak, I am better at hacking and repurposing other > people's code than at creating something entirely new. So, I am > writing to learn if anyone has implemented any neural net models in > Squeak and, if so, would those people be willing to share any such > implementation. > http://lmgtfy.com/?q=squeak+smalltalk+neural+networks http://sourceforge.net/projects/fann/files/fann/FANN-Squeak.0.2.zip/download sorry , just can't resist :) > Thanks, > > John > > -- Best regards, Igor Stasenko AKA sig. |
In reply to this post by JOHN VOIKLIS
Hello JOHN,
WJV> that, even in Squeak, I am better at hacking and repurposing other JV> people's code than at creating something entirely new. So, I am JV> writing to learn if anyone has implemented any neural net models in JV> Squeak and, if so, would those people be willing to share any such JV> implementation. right now I'm too lazy to search but there is a fann library binding for Squeak and Luciano Notarfrancesco has implemented neural nets in Squeak and I myself dabbled in neural nets. What I use (commercially) is only a SOFM and I did my implementations using FloatArrays for speed. This is not good for "repurposing" as it's not general and implementation is obscured to accommodate FloatArray. I can share parts of my implementation, the other ones could be found on the net. Cheers, Herbert mailto:[hidden email] |
In reply to this post by Igor Stasenko
Cute apps, but I DID try google. The results turn up mostly garbage;
the words "squeak" and "neural" and "network" simply happen to appear on the same page. As for FANN: I also looked at that but without even a hint of (findable) documentation, it is less useful to me than the C++ and Java implemented model. Anyway, I turned to the list because I need human-to-human advice. Thanks anyway--J On Wed, Jul 8, 2009 at 4:15 PM, Igor Stasenko<[hidden email]> wrote: > 2009/7/8 JOHN VOIKLIS <[hidden email]>: >> Hello, >> >> As part of my research on human concept learning, I've had start >> working with neural net models. After trying to muddle through with >> programming languages that I do not really know or understand (e.g. >> C++ and Java), I have decided to come back to Squeak. The problem is >> that, even in Squeak, I am better at hacking and repurposing other >> people's code than at creating something entirely new. So, I am >> writing to learn if anyone has implemented any neural net models in >> Squeak and, if so, would those people be willing to share any such >> implementation. >> > I think some of it could be useful to you: > > http://lmgtfy.com/?q=squeak+smalltalk+neural+networks > > http://sourceforge.net/projects/fann/files/fann/FANN-Squeak.0.2.zip/download > > sorry , just can't resist :) > >> Thanks, >> >> John >> >> > > > > -- > Best regards, > Igor Stasenko AKA sig. > > |
Hello JOHN,
JV> As for FANN: I also looked at that but without even a hint of JV> (findable) documentation, it is less useful to me than the C++ and JV> Java implemented model. http://surfnet.dl.sourceforge.net/sourceforge/fann/fann_doc_complete_1.0.pdf Cheers, Herbert mailto:[hidden email] |
In reply to this post by Herbert König
Thanks for the advice. You are right that I need something general and
not opaque. I should clarify for everyone that, as an experimental psychologist, I am only interested in machine learning for the purposes of mimicking human behavior (including all its failings). I don't need anything fast or optimized, just functional and transparent. 2009/7/8 Herbert König <[hidden email]>: > Hello JOHN, > > WJV> that, even in Squeak, I am better at hacking and repurposing other > JV> people's code than at creating something entirely new. So, I am > JV> writing to learn if anyone has implemented any neural net models in > JV> Squeak and, if so, would those people be willing to share any such > JV> implementation. > > right now I'm too lazy to search but there is a fann library binding > for Squeak and Luciano Notarfrancesco has implemented neural nets in > Squeak and I myself dabbled in neural nets. > > What I use (commercially) is only a SOFM and I did my implementations > using FloatArrays for speed. This is not good for "repurposing" as > it's not general and implementation is obscured to accommodate > FloatArray. > > I can share parts of my implementation, the other ones could be found > on the net. > > Cheers, > > Herbert mailto:[hidden email] > > > |
In reply to this post by Herbert König
Thanks again...I don't remember if I saw this document before, but
I'll see if it actually gets me up and running in squeak. I continue to welcome all other suggestions. 2009/7/8 Herbert König <[hidden email]>: > Hello JOHN, > > > JV> As for FANN: I also looked at that but without even a hint of > JV> (findable) documentation, it is less useful to me than the C++ and > JV> Java implemented model. > > http://surfnet.dl.sourceforge.net/sourceforge/fann/fann_doc_complete_1.0.pdf > > Cheers, > > Herbert mailto:[hidden email] > > > |
Trying FANN again, I realize the problem wasn't documentation but the
fact that I couldn't figure out how to get it loaded and running in Squeak. That problem persists. The download includes a .mcz file, which I believe is a kind of package file introduced after my time in the Squeak community. Any advice? Thanks again. On Wed, Jul 8, 2009 at 4:47 PM, JOHN VOIKLIS<[hidden email]> wrote: > Thanks again...I don't remember if I saw this document before, but > I'll see if it actually gets me up and running in squeak. > > I continue to welcome all other suggestions. > > 2009/7/8 Herbert König <[hidden email]>: >> Hello JOHN, >> >> >> JV> As for FANN: I also looked at that but without even a hint of >> JV> (findable) documentation, it is less useful to me than the C++ and >> JV> Java implemented model. >> >> http://surfnet.dl.sourceforge.net/sourceforge/fann/fann_doc_complete_1.0.pdf >> >> Cheers, >> >> Herbert mailto:[hidden email] >> >> >> > |
In reply to this post by Igor Stasenko
Em 08-07-2009 17:15, Igor Stasenko escreveu:
If you're working in Linux box the link is: http://sourceforge.net/projects/fann/files/fann/FANN-Squeak-Linux.mcz/download2009/7/8 JOHN VOIKLIS [hidden email]:Hello, As part of my research on human concept learning, I've had start working with neural net models. After trying to muddle through with programming languages that I do not really know or understand (e.g. C++ and Java), I have decided to come back to Squeak. The problem is that, even in Squeak, I am better at hacking and repurposing other people's code than at creating something entirely new. So, I am writing to learn if anyone has implemented any neural net models in Squeak and, if so, would those people be willing to share any such implementation.I think some of it could be useful to you: http://lmgtfy.com/?q=squeak+smalltalk+neural+networks http://sourceforge.net/projects/fann/files/fann/FANN-Squeak.0.2.zip/download sorry , just can't resist :)Thanks, John CdAB |
Thanks; the problem is that all machines in my lab are now Macs.
--J > If you're working in Linux box the link is: > http://sourceforge.net/projects/fann/files/fann/FANN-Squeak-Linux.mcz/download > > CdAB > > > > |
In reply to this post by JOHN VOIKLIS
Em 08-07-2009 17:36, JOHN VOIKLIS escreveu:
Docs can be found at: http://leenissen.dk/fann/html/files/fann-h.htmlCute apps, but I DID try google. The results turn up mostly garbage; the words "squeak" and "neural" and "network" simply happen to appear on the same page. As for FANN: I also looked at that but without even a hint of (findable) documentation, it is less useful to me than the C++ and Java implemented model. Squeak bindings for Linux cover all libfann with the exception of callback functions. I've been working with it whithout problems. Things like: fann_create_shortcut_array() will be: apiFannCreateShortcutArray: numberOfLayers with: anArrayWithNeuronsPerLayer Just browse Fann and get things done. Windows bindings doesn't have many of the functions. But I don't work with Windows or any kind of Microsoft stuff so I'll be of little help there... CdABAnyway, I turned to the list because I need human-to-human advice. Thanks anyway--J On Wed, Jul 8, 2009 at 4:15 PM, Igor Stasenko[hidden email] wrote:2009/7/8 JOHN VOIKLIS [hidden email]:Hello, As part of my research on human concept learning, I've had start working with neural net models. After trying to muddle through with programming languages that I do not really know or understand (e.g. C++ and Java), I have decided to come back to Squeak. The problem is that, even in Squeak, I am better at hacking and repurposing other people's code than at creating something entirely new. So, I am writing to learn if anyone has implemented any neural net models in Squeak and, if so, would those people be willing to share any such implementation.I think some of it could be useful to you: http://lmgtfy.com/?q=squeak+smalltalk+neural+networks http://sourceforge.net/projects/fann/files/fann/FANN-Squeak.0.2.zip/download sorry , just can't resist :)Thanks, John-- Best regards, Igor Stasenko AKA sig. |
In reply to this post by JOHN VOIKLIS
Hello JOHN,
JV> Trying FANN again, I realize the problem wasn't documentation but the JV> fact that I couldn't figure out how to get it loaded and running in JV> Squeak. That problem persists. The download includes a .mcz file, JV> which I believe is a kind of package file introduced after my time in JV> the Squeak community. Any advice? open the mcz with a file list or drag it on the squeak window or from the world menu open the Momticello browser. Mcz is a zipped file (which you can unzip and find sources). It's generated by Monticello, which is Squeak's versioning system like CVS or subversion are for other systems. Monticello allows to load, merge, view changes or browse code. Dunno if the FANN bindings work on Mac. Cheers, Herbert mailto:[hidden email] |
Ok, so it looks like FANN is all there is...though, it seems that I
either need to acquire/set up a linux machine or, again, switch to another programming language...too bad. At least, now, I am fully aware that FANN is well documented...that's at least some progress. Thanks again--J 2009/7/8 Herbert König <[hidden email]>: > Hello JOHN, > > JV> Trying FANN again, I realize the problem wasn't documentation but the > JV> fact that I couldn't figure out how to get it loaded and running in > JV> Squeak. That problem persists. The download includes a .mcz file, > JV> which I believe is a kind of package file introduced after my time in > JV> the Squeak community. Any advice? > > open the mcz with a file list or drag it on the squeak window or from > the world menu open the Momticello browser. > > Mcz is a zipped file (which you can unzip and find sources). It's > generated by Monticello, which is Squeak's versioning system like CVS > or subversion are for other systems. > > Monticello allows to load, merge, view changes or browse code. > > Dunno if the FANN bindings work on Mac. > > > Cheers, > > Herbert mailto:[hidden email] > > > |
I'd give a try at FANN-Linux-bindings at MacOS... I didn't try that but it may work... People who developed for MacOS could help...Ok, so it looks like FANN is all there is...though, it seems that I either need to acquire/set up a linux machine or, again, switch to another programming language...too bad. At least, now, I am fully aware that FANN is well documented...that's at least some progress. Thanks again--J But it's not hard to make it fit to MacOS (enough to edit things at FannInterface so call conventions match MacOS. 2009/7/8 Herbert König [hidden email]:Hello JOHN, JV> Trying FANN again, I realize the problem wasn't documentation but the JV> fact that I couldn't figure out how to get it loaded and running in JV> Squeak. That problem persists. The download includes a .mcz file, JV> which I believe is a kind of package file introduced after my time in JV> the Squeak community. Any advice? open the mcz with a file list or drag it on the squeak window or from the world menu open the Momticello browser. Mcz is a zipped file (which you can unzip and find sources). It's generated by Monticello, which is Squeak's versioning system like CVS or subversion are for other systems. Monticello allows to load, merge, view changes or browse code. Dunno if the FANN bindings work on Mac. Cheers, Herbert [hidden email] |
In reply to this post by JOHN VOIKLIS
Hi
2009/7/8 JOHN VOIKLIS <[hidden email]>: > Thanks for the advice. You are right that I need something general and > not opaque. > > I should clarify for everyone that, as an experimental psychologist, I > am only interested in machine learning for the purposes of mimicking > human behavior (including all its failings). > An interesting machine learning technique in that purpose is NARS http://nars.wang.googlepages.com/ http://code.google.com/p/open-nars/ I started to port the java prototype: http://www.squeaksource.com/NARSqueak.html hth, > I don't need anything fast or optimized, just functional and transparent. > > 2009/7/8 Herbert König <[hidden email]>: >> Hello JOHN, >> >> WJV> that, even in Squeak, I am better at hacking and repurposing other >> JV> people's code than at creating something entirely new. So, I am >> JV> writing to learn if anyone has implemented any neural net models in >> JV> Squeak and, if so, would those people be willing to share any such >> JV> implementation. >> >> right now I'm too lazy to search but there is a fann library binding >> for Squeak and Luciano Notarfrancesco has implemented neural nets in >> Squeak and I myself dabbled in neural nets. >> >> What I use (commercially) is only a SOFM and I did my implementations >> using FloatArrays for speed. This is not good for "repurposing" as >> it's not general and implementation is obscured to accommodate >> FloatArray. >> >> I can share parts of my implementation, the other ones could be found >> on the net. >> >> Cheers, >> >> Herbert mailto:[hidden email] >> >> >> > > -- Cédrick |
In reply to this post by JOHN VOIKLIS
John,
A basic synchronous feed-forward model (with back propagation training) isn't that hard to write and/or translatefrom another language. I found an example written in Python a number of years ago that is only about 50 lines of code (for 3-tier net) -- you could rewrite that in Squeak, add a sane class hierarchy (that would be mostly empty at first), generalize the topology, add the higher level driving methods, and do the basic debugging in pretty short-order. But is that enough? You are interested in human learning, so perhaps you actually want asynchronous updates, or something in between. (don't ask... i am not certain I can put it to words without spending too much time.) It is worth considering. I probably will build a limited toolkit in smalltalk within a year... but not today. How large of a net are you wanting to work with? What kind of human processing are you wanting to observe? I am thinking about performance with these questions. If you want a large network, then one probably needs to use an external library. The over-training warnings are worth paying attention to: do not force the system to fit a small data set exactly, and do use too many nodes for the problem. -- Python is dead-simple to work with. It is very flexible. It is typeless and has garbage collection, but uses c-like expressions in many cases. so... using FANN with the Python may not be as difficult as you think. I installed XCode here on this Mac (my first mac) and python and numerous other languages are ready-to-use as a result -- or maybe they were here before, but now I have the folding code browser for it. XCode is free from Apple. Good Luck and please let us know if you find a great turn-key solution! Cheers, Cam |
Hi Cam,
I am starting to think that the solution you propose may be best. Most of the NN models of human category learning look fairly simple, with 3-5 tiers depending on whether they include an attention-learning tier or name-learning tier in addition to the object-learning tier. I have found a Python version of the SUSTAIN learning model and I am looking for a Python version of ALCOVE learning model. With some help from their original authors, I might be able to port these. Thanks for your help...if you are willing, I may have a question or two for you off list. Thanks again--J On Thu, Jul 9, 2009 at 5:38 PM, Cameron Sanders<[hidden email]> wrote: > John, > > A basic synchronous feed-forward model (with back propagation training) > isn't that hard to write and/or translatefrom another language. I found an > example written in Python a number of years ago that is only about 50 lines > of code (for 3-tier net) -- you could rewrite that in Squeak, add a sane > class hierarchy (that would be mostly empty at first), generalize the > topology, add the higher level driving methods, and do the basic debugging > in pretty short-order. > > But is that enough? You are interested in human learning, so perhaps you > actually want asynchronous updates, or something in between. (don't ask... i > am not certain I can put it to words without spending too much time.) > > It is worth considering. I probably will build a limited toolkit in > smalltalk within a year... but not today. > > How large of a net are you wanting to work with? What kind of human > processing are you wanting to observe? I am thinking about performance with > these questions. If you want a large network, then one probably needs to use > an external library. > > The over-training warnings are worth paying attention to: do not force the > system to fit a small data set exactly, and do use too many nodes for the > problem. > > -- > Python is dead-simple to work with. It is very flexible. It is typeless and > has garbage collection, but uses c-like expressions in many cases. so... > using FANN with the Python may not be as difficult as you think. I installed > XCode here on this Mac (my first mac) and python and numerous other > languages are ready-to-use as a result -- or maybe they were here before, > but now I have the folding code browser for it. XCode is free from Apple. > > Good Luck and please let us know if you find a great turn-key solution! > > Cheers, > Cam > > > |
Free forum by Nabble | Edit this page |