what is the difference between LayerGraph and DAGNetwork in deep learning?

I find that the data structure of LayerGraph and DAGNetwork in neural network toolbox have the same contents. So, is there any difference between them?

3 comentarios

Differences arise between DAG networks and series networks. The documentation explains all this quite well.
A LayerGraph is used to specifically describe layout of the layers of a DAG network. It has methods to play around with the layer structure such as addLayers, connectLayers. removeLayers etc. A DAGNetwork is the neural network model as a whole and not just the layers. Its' methods involve playing around with the model like predict, classify, activations etc. In short, you'd be using layerGraph to specify a DAGNetwork but there is much more to it like training it etc.
Do they have the same data structure but not same contents?
DAG:
LayerGraph:
(note:the pictures demonstrate two different networks, so the number of layer and connection are different. here I want to know if for a same network, do they have the same data structure but not same contents?)

Iniciar sesión para comentar.

 Respuesta aceptada

LayerGraphs and Layers contain the network architecture (for DAGs and Series networks, respectively). These objects are then passed to trainNetwork for validation and training. LayerGraphs and Layers may have weights or not, but they cannot be used for prediction. One can only call prediction on DAGNetwork and SeriesNetwork objects. These objects contain the validated and trained network.
From R2018b to convert a LayerGraph and Layers object with weights and all the needed parameters to a DAGNetwork/SeriesNetwork one can call assembleNetwork, example:
net = assembleNetwork(layers);

1 comentario

One can not use assembleNetwork(layerGraph). Is there a way to validate and initializa a layerGraph without training?

Iniciar sesión para comentar.

Más respuestas (2)

the pair of LayerGraph and DAGnetwork remsembles with one of Layer and SeriesNetwork(in my mind)

3 comentarios

LayerGraph is the connected network including the connection info.
SeriesNetwork is generally connected by their orders.
DAGnetwork is connected in terms of the given connections.
After applying layerGraph, they turn into LayerGraph( if not, SeriesNetwork is still layers).
then you can visualize the network using plot.
Then how can we convert a LayerGraph we trained to seriesNetwork to use it in classifications?
I have the same situtation too. How can we change the trained layergraph to a seriesnetwork or dagnetwork?

Iniciar sesión para comentar.

Categorías

Más información sobre Deep Learning Toolbox en Centro de ayuda y File Exchange.

Productos

Versión

R2018a

Preguntada:

el 11 de Jul. de 2018

Comentada:

el 2 de Dic. de 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by