Slashdot Mirror


Build Your Own Neural Network

windowpain writes "I just discovered Joone. It's an LGPL neural net development environment for creating, training and testing neural networks. The aim is to create a powerful environment both for enthusiasts and professional users, based on the newest Java technologies. Joone is composed by a central engine that is the fulcrum of all applications that already exist or will be developed. It's available in Linux, MacOS and Windows versions."

21 of 53 comments (clear)

  1. Whats wrong with SNNS by Directrix1 · · Score: 4, Interesting

    The Stuttguart Neural Network Simulator has been available for free for a long time now.

    --
    Occam's razor is the blind faith in the natural selection of least resistance and in universal oversimplification. -- EF
    1. Re:Whats wrong with SNNS by KMAPSRULE · · Score: 5, Informative

      From the SNNS licensing terms:
      SNNSv4.1 is available NOW free of charge for research purposes under a...

      LGPL(Joone's Licensing) is a VERY attractive License for commercial users, "free for research purposes" would preclude some from being able to use it,
      other wise I agree this Joone seems to have less features/algorithm support than SNNS

      --

      --Im an oven mitt, not an engineer! (SLArbys Radio Commercial)
  2. No Thanks by Sunlighter · · Score: 2, Funny

    I don't have time to play with such a thing. I'm too busy developing the neural network in my skull.

    --
    Sunlit World Scheme. Weird and different.
    1. Re:No Thanks by Repugnant_Shit · · Score: 2, Funny

      But "playing" with something like this is a good to way to waste ti-, er develop your built-in neural network.

    2. Re:No Thanks by Jeremiah+Cornelius · · Score: 2, Funny

      Maybe if this Joone were the one just discovered, you'd "sneak" some time, no?

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
  3. Very limited number of algorithms by a_ghostwheel · · Score: 5, Interesting

    Looks rather limited to me. It's again implements only BP algorithms and their variants. Why not include ART-based (adaptive resonance theory) and LVQ-based (linear vector quantization) algorithms? They are much more efficient than BP in many instances (e.g. classification problems).

    In other words, sounds very limited to me.

    1. Re:Very limited number of algorithms by elmegil · · Score: 3, Insightful
      It's open source. Scratch your itch.

      BTW implementing ART would be really cool. I always had trouble getting the full understanding of Grossberg's papers and didn't find many simulators that did ART 10 years ago when I was actually looking at all this stuff.

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    2. Re:Very limited number of algorithms by JanneM · · Score: 2, Interesting

      From my experience, one of the problems is that nobody really seems to agree on exactly how to interpret his models; especially ART2 seems to be something nobody really bothers with in practice. I have seen a couple of pretty complete implementations, but they differ pretty wildly on the results you get. Rather, people seem to take his conceptual ideas and incorporating the ones that make sense into their own models.

      --
      Trust the Computer. The Computer is your friend.
  4. Re:I'm in a mood for trolling... by Samus · · Score: 2, Funny

    Heh. For the same reason you use a computer instead of a trained monkey. Less crap to clean up and it doesn't talk back. At least if it does you can unplug it. :-)

    --
    In Republican America phones tap you.
  5. Repeat after me... by MacJedi · · Score: 2, Funny
    There is not general solution to the global optimization problem.
    There is not general solution to the global optimization problem.
    There is not general solution to the global optimization problem.

    /joeyo

    --
    2^5
  6. Can also be combined with genetic algorithms by mrblah · · Score: 5, Informative

    For those who want to combine genetic algorithms with neural networks, there's also a project that combines joone with JGAP (a Java genetic algorithms framework).

    1. Re:Can also be combined with genetic algorithms by Anonymous Coward · · Score: 2, Informative
      "For those who want to combine genetic algorithms with neural networks, there's also a project that combines joone with JGAP (a Java genetic algorithms framework)."

      Lots of neuroevolution code, including probably the state-of-the-art algorithms (ESP, NEAT) can be downloaded from the NN research Web site at UT-Austin. Some of it is available in both C++ and Java. Papers describing the algorithms and various applications can be downloaded from the same site.

  7. Anyone remember a language dedicated to NNs? by RevAaron · · Score: 2, Interesting

    Low chance anyone here will know what I was talking about, but in the case someone does ...

    Does anyone remember a programming language that was specifically for creating, training and using neural networks?

    I've always been a big programming language addict. Back in the early 90s, being 12-14 years old and excited to finally have a modem, I was downloading every programming language for DOS I could find from all the BBSes I called.

    I can't remember what it was called. I remember roughly what the IDE looked like, but very little else. It was a fun system- it had general-purpsose programming constructs, but was especially built for creating, training and using neural networks. I seem to recall the syntax having a semi-familiar pascal/algol/C-ish syntax; it wasn't just a library for Lisp or Scheme.

    I've check the SimTel archives, and haven't been able to find it again. Oh, how awesome were BBSes... Stronger sense of community than the 'internet' seems to have. Anywho, thanks for any tips!

    --

    Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
  8. skynet dept? by mraymer · · Score: 2, Funny
    Let's hope we don't make a neural net CPU like SKYNET, because, let's be honest here, SKYNET is pretty dumb:

    1) It has an obvious preference for the dramatic... For example, rather than having the original Terminator simply walk over and kill Sarah Connor when she is stuck in an overturned vehicle, it instead has the Terminator commandeer a semi and attempt to run her over. Brilliant!

    2) It doesn't believe in rushing into a kill as quickly as cyborg-ly possible, but instead has its Terminators advance slowly on the hapless victim.

    3) Despite all these logical fallacies in SKYNET's programming, it is able to use automated factories to conduct research and development at a level beyond humans, in order to: build Terminators. Oh yeah, and master time travel.

    So, let us hope that if we ever built a SKYNET, it wouldn't be stupid enough to conquer time, and then have no idea what the next logical step is.

    --

    "To confine our attention to terrestrial matters would be to limit the human spirit." -Stephen Hawking

  9. Check out NeuroSolutions by Sidlon · · Score: 2, Informative
    True, it's not free (beer or speech), but this really is the most impressive NN development platform I've ever worked with. It has a VB-like interface for creating a custom network, and powerful wizards to handle the common problems.

    Plus, the only limit on their demo is that you can only save a networks structure, but not the trained weights or output. This means you can use the demo to determine if a problem is solvable through a NN, and only get your company to buy it if it works for your project.

  10. Another kind of solution. by DoctorRad · · Score: 3, Interesting
    Self-Organising Maps can be used to solve many similar problems to those for which ANNs are appropriate. Check out the SOMPAK software. A shame my own research into data visualisation using this technique is company confidential to an ex-employer, some very pretty pictures :-)

    The package inlcudes source code to produce Sammon Maps in Postscript format. These can be very useful tools for finding clusters in data. What they revealed about UK higher education institutes was eye opening.

    Matt...
    --
    A man hears what he wants to hear and disregards the rest.

  11. Write once run everywhere ? by DrSkwid · · Score: 2, Funny

    Linux, MacOS and Windows versions

    hmm, almost everywhere

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  12. Java? by Anonymous Coward · · Score: 2, Funny

    Let's see...we'll be using a virtual machine to emulate a virtual network of simulated neurons...no thanks!

    I can understand the desire to have portability, but this just reeks. It's like using basic to emulate a 486. The part of me that appreciates elegant, efficient design is puking on the floor.

  13. Someone remembers Ralph!?! by MarkusQ · · Score: 3, Interesting

    Hard as it is for me to believe, you may be talking about a language I wrote in the late 80's. "Ralph" was our internal name for it (inside joke); I think the market droids pushed it as NNSim or something like that. We released a full function version on a bunch of BBSs & talked it up on geni, compuserve, news groups, etc. to promote a hardware accelerator board (DSP based). The idea was people would get interested and then (as their models got larger) they'd want more speed and buy our accelerator board.

    The core language was a based on pascal, but with salient structure (like python) and a bunch of (at the time) interesting extensions. You could declare networks and treat them like an array (for messing with the weights) or like a procedure (for training) or like a function (for using them).

    Does this sound like what you're remembering?

    -- MarkusQ

    P.S. In case you can't guess how the story ends, it turned out that for really interesting networks you'd need a lot more oomph than our boards could provide. The product died, as did several others, and the company sank beneath the waves.

  14. Java is way too slow for serious NN code by Anonymous Coward · · Score: 2, Informative

    My current neural network implementation (on generic CPU) with order of 10^6 neurons use CBLAS ATLAS fast linear algebra library as a number crunching part. When you have to do some down to metal optimizations Jave is waste of time.

    The best property of NN's are when compared to other learning machines is that computation can be parallelized easily. For small problems one should maybe use other ML machines (SVM doesn't overfit) which isn't as easily/well parallelized (-> doesn't scale up so well).

    Above solution doesn't scale up when making neural networks with 10^9 or more neurons with current (or near future) hardware. One have to radically redesign one's implementation because your neural network memory/data is most of the time on hard disk and only small portitions is in memory. Need to take into account the time of disk accesses (database theory is helpful here). Also making your network asynchronous and implementation multithreaded (eliminate harm of I/O wait-states from HDD accesses + good use of SMP+RAID) is a must.

    And of course if one have enough money designing your/buying a NN chip is of course the best option (because the parallism of NN chips can be made to be wicked fast).

  15. Shameless plug by JanneM · · Score: 2, Informative

    If you want a simulation framework that is more flexible than a dedicated NN simulator, we are developing Ikaros, a discrete-time modular simulator. Runs on Linux, OSX and Windows. Implement your modules in C or C++ (and implementing bindings for other languages would be easy), then specify a connection matrix for inputs and outputs between modules to form a complete simulation.

    The next step in development is creating some graphical visualizing tools, and to make it run multiple instances transparently across a network.

    --
    Trust the Computer. The Computer is your friend.