QBoard » Artificial Intelligence & ML » AI and ML - Conceptual » Convolutional Deep Belief Networks (CDBN) vs. Convolutional Neural Networks (CNN)

Convolutional Deep Belief Networks (CDBN) vs. Convolutional Neural Networks (CNN)

  • Lastly, I started to learn neural networks and I would like know the difference between Convolutional Deep Belief Networks and Convolutional Networks. In here, there is a similar question but there is no exact answer for it. We know that Convolutional Deep Belief Networks are CNNs + DBNs. So, I am going to do an object recognition. I want to know which one is much better than other or their complexity. I searched but I couldn't find anything maybe doing something wrong.
      November 8, 2021 5:41 PM IST
    0
  • In computer science, a convolutional deep belief network (CDBN) is a type of deep artificial neural network composed of multiple layers of convolutional restricted Boltzmann machines stacked together. Alternatively, it is a hierarchical generative model for deep learning, which is highly effective in image processing and object recognition, though it has been used in other domains too. The salient features of the model include the fact that it scales well to high-dimensional images and is translation-invariant.

    CDBNs use the technique of probabilistic max-pooling to reduce the dimensions in higher layers in the network. Training of the network involves a pre-training stage accomplished in a greedy layer-wise manner, similar to other deep belief networks. Depending on whether the network is to be used for discrimination or generative tasks, it is then "fine tuned" or trained with either back-propagation or the up–down algorithm (contrastive–divergence), respectively.

      November 9, 2021 2:13 PM IST
    0
  • I don't know if you still need an answer but anyway I hope you will find this useful.

    A CDBN adds the complexity of a DBN, but if you already have some background it's not that much.
    If you are worried about computational complexity instead, it really depends on how you use the DBN part. The role of DBN usually is to initialize the weights of the network for faster convergence. In this scenario, the DBN appears only during pre-training.
    You can also use the whole DBN like a discriminative network (keeping the generative power) but the weight initialization provided by it is enough for discriminative tasks. So during an hypothetical real-time utilization, the two system are equal performance-wise.

    Also the weight-initialization provided by the first model anyway really helps for difficult task like object recognition (even a good Convolutional Neural network alone doesn't reach good success rate, at least compared to a human) so it's generally a good choice.

      November 11, 2021 2:29 PM IST
    0
  • In computer science, a convolutional deep belief network (CDBN) is a type of deep artificial neural network composed of multiple layers of convolutional restricted Boltzmann machines stacked together.[1] Alternatively, it is a hierarchical generative model for deep learning, which is highly effective in image processing and object recognition, though it has been used in other domains too.[2] The salient features of the model include the fact that it scales well to high-dimensional images and is translation-invariant.[3]

      November 12, 2021 1:53 PM IST
    0
  • I don't know if you still need an answer but anyway I hope you will find this useful.
    A CDBN adds the complexity of a DBN, but if you already have some background it's not that much.
    If you are worried about computational complexity instead, it really depends on how you use the DBN part. The role of DBN usually is to initialize the weights of the network for faster convergence. In this scenario, the DBN appears only during pre-training.
    You can also use the whole DBN like a discriminative network (keeping the generative power) but the weight initialization provided by it is enough for discriminative tasks. So during an hypothetical real-time utilization, the two system are equal performance-wise.
    Also the weight-initialization provided by the first model anyway really helps for difficult task like object recognition (even a good Convolutional Neural network alone doesn't reach good success rate, at least compared to a human) so it's generally a good choice.
      November 16, 2021 12:30 PM IST
    0