Skip to content

Blog

How do Deep Neural Networks work?

Deep neural networks (DNNs) are computational models that mimic the human brain's interconnected neuron structure to process complex data patterns. They consist of multiple layers of artificial neurons, each receiving inputs, applying weights, summing the results, and passing them through an activation function to produce an output. This layered architecture enables DNNs to model intricate relationships within data, making them effective for tasks such as image and speech recognition.

U-Net deep learning colourisation of greyscale images

"U-Net deep learning colourisation of greyscale images" explores the application of deep learning techniques to transform grayscale images into colorized versions. Utilizing a U-Net architecture with a ResNet-34 encoder pretrained on ImageNet, the model employs a feature loss function based on VGG-16 activations, pixel loss, and gram matrix loss to achieve high-quality colorization. The Div2k dataset serves as the training and validation source, with data augmentation techniques such as random cropping, horizontal flipping, lighting adjustments, and perspective warping enhancing the model's robustness.

The article demonstrates how time, resources and money can be saved with fine tuning existing models.

Feature based loss functions

In this article, I explores advanced loss functions for training Convolutional Neural Networks (CNNs), particularly U-Net architectures, to enhance image generation tasks. Drawing inspiration from the Fastai deep learning course and the paper "Perceptual Losses for Real-Time Style Transfer and Super-Resolution," the discussion centers on integrating feature activation losses and style losses into the training process. These techniques aim to improve the quality of generated images by focusing on perceptual features rather than solely relying on pixel-wise errors.

U-Nets with ResNet Encoders and cross connections

In this article, the author explores an advanced U-Net architecture that integrates ResNet encoders and cross connections, enhancing the model's performance in image processing tasks. This design incorporates elements from DenseNets, utilizing cross connections to facilitate efficient information flow between layers. The architecture employs a ResNet-based encoder and decoder, complemented by pixel shuffle upscaling with ICNR initialization, aiming to improve prediction accuracy and training efficiency.

Deep learning based super resolution, without using a GAN.

Super-resolution is a technique that enhances the quality and detail of low-resolution images, effectively transforming them into higher-resolution versions. Traditional upscaling methods often result in images lacking fine details and may introduce defects or compression artifacts. Deep learning approaches, particularly those utilizing Generative Adversarial Networks (GANs), have shown significant improvements in this area. However, training GANs can be complex and resource-intensive.

Random forests - a free lunch that’s not cursed.

Random forests are a powerful machine learning technique that combines multiple decision trees to enhance predictive accuracy and control overfitting. By aggregating the results of various trees, random forests mitigate the risk of individual trees capturing noise from the training data, leading to more robust and reliable models.