diff --git a/site/WebContent/images/screenshot-dashboard.png b/site/WebContent/images/screenshot-dashboard.png new file mode 100644 index 00000000..9802d016 Binary files /dev/null and b/site/WebContent/images/screenshot-dashboard.png differ diff --git a/site/WebContent/index.html b/site/WebContent/index.html index 3b185051..8ef60858 100644 --- a/site/WebContent/index.html +++ b/site/WebContent/index.html @@ -38,7 +38,10 @@ @@ -61,13 +64,13 @@
-

DIANNE is a modular software framework for designing, evaluating and training artificial neural networks. +

DIANNE is a modular software framework for designing, training and evaluating artificial neural networks. It is built on top of OSGi and AIOLOS and can transparently - deploy and redeploy (parts of) a neural network on multiple machines.

+ deploy and redeploy (parts of) a neural network on multiple machines, as well as scale up training on a compute cluster.

-

Get started »

+

Get started »

@@ -90,12 +93,12 @@

Build your neural network

Flexible inputs

- DIANNE provides various inputs for your neural network. It supports various popular image datasets such as ImageNet, MNIST, CIFAR-10/100, etc. + DIANNE provides various inputs for your neural network. It supports various popular image datasets such as ImageNet, MNIST, CIFAR-10/100, etc., and you can easily add your own.


- Besides input from datasets, you can also configure your webcam to forward input directly to your neural network. + Besides input from datasets, you can also configure other data sources such as your webcam to forward input directly to your neural network.

@@ -108,21 +111,17 @@

Distributed deployment


- This gives you fine grained control on which module to execute on which device, allowing to stretch your neural network accross the compute + This gives you fine grained control on which module to execute on which device, allowing to stretch your neural network across the compute capabilities of multiple (embedded) devices.

-

Parallel training

+

Distributed training

- DIANNE provides basic algorithms for training your neural network. At the moment only stochastic gradient descent is implemented, but more features will follow. + DIANNE provides a number of well-known optimization routines for training your neural network, ranging from vanilla SGD to Adam. You can scale up your training using the DIANNE dashboard UI, which allows you to submit and track learning jobs on a compute cluster.

-
-

- Thanks to the distributed nature of DIANNE, it is also possible to set up parallel training configurations, for example exploiting model parallelism or data parallelism. -

-
+

- DIANNE can also be used for deep Q-learning, providing APIs for generating learning environments, experience pools, agents, etc. + Thanks to the distributed nature of DIANNE, it is also possible to set up distributed training configurations, for example exploiting model parallelism or data parallelism.

@@ -136,10 +135,22 @@

Parallel training


-
+

+
+ +
+ +
+ +
+ +
+ +
+

About

@@ -188,7 +199,7 @@

Team

Steven Bohez is working on a Ph.D. at Ghent University - iMinds and is focussing on advanced mobile cloud applications that are distributed between mobile devices and the cloud. He is using DIANNE to deploy neural networks - on mobile robots that are trained in the cloud using distributed deep Q learning. + on mobile robots that are trained in the cloud using distributed deep reinforcement learning.
@@ -236,13 +247,37 @@

Team

}); $.ajax({ - url: 'doc/tutorial.md', + url: 'doc/gettingstarted.md', type: 'GET', success: function(markdown) { - showMarkdown(markdown, 'tutorial'); + showMarkdown(markdown, 'gettingstarted'); } }); + $.ajax({ + url: 'doc/builder.md', + type: 'GET', + success: function(markdown) { + showMarkdown(markdown, 'builder'); + } + }); + + $.ajax({ + url: 'doc/dashboard.md', + type: 'GET', + success: function(markdown) { + showMarkdown(markdown, 'dashboard'); + } + }); + + $.ajax({ + url: 'doc/development.md', + type: 'GET', + success: function(markdown) { + showMarkdown(markdown, 'development'); + } + }); + $('body').scrollspy({ target: '.navbar-scrollable' })