FOSSPicks
FOSSPicks
This month Graham looks at Neuronify, Undervolt GUI, Entropy Piano Tuner, Gnome Internet Radio Locator, Hatari, and more!
Neural network simulator
Neuronify
This may be the first time we've ever looked at a piece of software that attempts to simplify neural networks. It may even be the first time we've looked at any software dealing with neural networks. This is because neural networks are complex, and without academic imperative, they're not something you can easily understand. But that's exactly what Neuronify is trying to do – help beginners explore and begin to understand neural networks. A neural network (in the computing sense) models the behavior of neurons in the brain in an attempt to learn things from datasets that would ordinarily be difficult to discover without specific and exhaustive analysis. Thanks to big datasets being created by companies like Google and Amazon, neural networks have become a huge field of research in software engineering and could hold the key to the future of vital services, such as health care and transportation.
Neuronify makes a bold claim – it wants to make it possible for you to work on neural simulations without prior computational experience. It does this by allowing you to build "circuits" in a graphical interface that are always live and running, much like an electrical circuit. These circuits produce feedback for you to see exactly what's happening. When you launch the application, easily installed from a snap, there's a simple tutorial to guide you through the key elements. Each stage of the tutorial is itself a working circuit that's active so you can see what's happening. This starts with the nodes you'll be using in the circuit: a current source, a "leaky neuron" that fires a signal when its potential passes a threshold, and a voltmeter that displays the value of that potential.
The application itself works much like a software modular synthesizer. You add elements from the palette on the left and connect these together using nodes. It's easy to work with but difficult to interpret any results without further study. Fortunately, there are many brilliant examples included that go much further than the simple tutorial. Because they're all annotated, you can learn a great deal simply by reading the accompanying text and studying the output. Also check out the button hidden at the top of the toolbar labelled community. Click on this, and you'll be able to explore simulations created and shared by other Neuronify users. There are currently only a handful, but they're often complex and show where that application is being used and studied.
Thanks to the beautifully implemented user interface (UI) and animation, it's fascinating to watch and play with the speed controls or the connections, even when you have no greater context or understanding. That may be the whole motivation behind making it so easy to get into neural networks: Because even when you're playing, you're reinforcing the ideas and patterns in your brain, so you can have a better sense of what neural networks are and how they might be implemented.
Project Website
CPU tinkering
Buy this article as PDF
(incl. VAT)