5 ms·
Sony open-sources NNabla – a simple, fast and lightweight NN library
- albertzeyer 9y agoLooks interesting. Maybe some more context here: https://nnabla.org/ https://nnabla.org/ https://nnabla.readthedocs.io https://nnabla.readthedocs.io It looks like it's from Sony. I think every new Deep Learning / NN library should put itself into more context. How does it compare to all the existing frameworks, like TensorFlow, (Py)Torch, CNTK, MXNet, Theano? It actually looks pretty similar, which makes this question even more important. From the examples, it might be most similar to PyTorch with autograd but I'm not sure. So, what are the differences?
- cyphar 9y agoThis one implements DRM as a NN rather then a rootkit. [Only half joking.]
- kronos29296 9y agoWhich half? One half is bad for the future and the other is worse now.
- cyphar 9y agoI'm not sure what you mean, but I was referencing Sony's illegal and unethical usage of a rootkit on every CD they manufactured to hack user's computers so that they could implement DRM (in)effectively[1]. [1]: https://en.wikipedia.org/wiki/Sony_BMG_copy_protection_rootkit_scandal https://en.wikipedia.org/wiki/Sony_BMG_copy_protection_rootk...
- kronos29296 9y agoI didn't know this happened but I thought you were implying the NN was a rootkit. Well I guess I misinterpreted.
- deleted 9y ago[deleted]
- patrickaljord 9y agoCould we modify the title to say Neural Network library? Not sure most people can guess what NN library means but maybe it's just me.
- buster 9y agoSame here
- lobster_johnson 9y agoI thought it was a library for doing nearest-neighbour search. Most neural network literature tends to use "ANN" (artificial neural network), not "NN", I think.
- positivecomment 9y agoRelated question: Is there a framework which lets us do very basic tasks without getting deep into NN and ML? For example an image classifier, which takes images under different groups and when trained, can tell which group a picture more likely belongs to? I'm not a data scientist, just a potential end-user who doesn't know what input_shape is.
- cromulen 9y agoTensorflow has the solution to all problems :) https://github.com/tensorflow/models/tree/master/slim https://github.com/tensorflow/models/tree/master/slim This is a flexible image recognition framework written in Tensorflow and TFslim It allows you to train/fine-tune a NN from the command line by specifying only the few details necessary... which NN architecture to use, path to custom data, etc.
- reality_hacker 9y agoAnd maybe there are is such thing for text processing?..
- 77ko 9y agoKeras[1] does a pretty good job of making NN's simple to use. That said, you still have sort of know whats going on. I do think tools like Keras make using NN and ML easier than a lot of basic programming things. I believe Google is building or has built some services which you can feed an image or text and it will do some NN magic and spit back the answer.[2] [1]: https://keras.io/#getting-started-30-seconds-to-keras https://keras.io/#getting-started-30-seconds-to-keras [2]: https://cloud.google.com/products/machine-learning/ https://cloud.google.com/products/machine-learning/
- nerdponx 9y agoI haven't even looked at the library, but wouldn't input_shape just be the shape of the image, in pixels?
- reachtarunhere 9y ago
- pavlakoos 9y agoWhat exactly does this library do?
- seesomesense 9y ago''NN Used as a substitute for an unknown name or one that the writer wishes not to reveal. Etymology Latin nōmen nesciō ''
- habitue 9y agoProbably just me but NNabla seems unfortunately close to NAMBLA.
- thinxer 9y agoSome basic analysis: 1. Kernels (Functions in NNabla) are mostly implemented in Eigen. 2. Network Forward is implemented as sequential run of functions. No multi-threaded scheduling. No multi-GPU or distributed support. 3. Python binding is implemented in Cython. 4. Have some basic dynamic graph support: run functions as soon as you add them to the graph, and run backward afterwards. Somewhat similar to PyTorch. 5. No support for checkpointing and graph serialization, or I'm missing something. I'm not sure why Sony is releasing this (yet another) deep learning framework. I don't see any new problems the project is trying to solve, compared to other frameworks like TensorFlow and PyTorch. The code is simple and clear, but nowadays people need high-performance, distributed, production-ready frameworks, not another toy-ish framework. Someone please shed some light on me? BTW, for newcomers to deep learning systems, [CSE 599G1](http://dlsys.cs.washington.edu/ http://dlsys.cs.washington.edu/) is a good start.
- pjmlp 9y ago> I'm not sure why Sony is releasing this (yet another) deep learning framework. Maybe, because machine learning is the 2017's big data, cloud, IoT, VR, ...?
- antirez 9y agoThe problem is that this library is not just a C easy-to-bind project, otherwise an high quality embeddable library that can work reasonably well with CPUs and can also benefit from commonly used GPUs in small systems, could be useful for a number of projects. Not all the problems need to have a huge dataset of complex entries (like million of images), there are many IoT problems that instead need a self contained library supporting different kinds of NNs.
- dimatura 9y agoSeems like out of the major libraries (TF/Caffe/Theano/pytorch), pytorch is the only one to have a core that is C (the TH*). It's not exactly a small library, though. One small library that is in C and has some state-of-the-art features is Darknet (https://pjreddie.com/darknet https://pjreddie.com/darknet). That said, seems like directly using the C++ API was a major use case here, and it looks fairly clean to me.
- alcedok 9y agoI created a docker image that allows you to play with their tutorials, currently not supporting the GPU extension but plan on using nvidia-docker later this week and have an image ready to play with. Here's a link to whoever is interested https://github.com/alcedok/nnabla_notebook_docker https://github.com/alcedok/nnabla_notebook_docker