Skip to content

lopeLH/tf2-advanced-examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 

Repository files navigation

Tensorflow 2 - Advanced examples

This repo contains some notebook-style tensorflow implementations of influential or interesting papers from the field of deep learning. The goal is to highlight the key contributions of these papers, demostrating how they work, but using toy datasets and small models to keep things simple. These implementations are not expected to reproduce the results in the papers or provide a reference implementation, as some details might have been omited to keep focus on the main features.

Reference High level description Notebook
Ronneberger, O., Fischer, P., & Brox, T. (2015, October). U-net: Convolutional networks for biomedical image segmentation. In International Conference on Medical image computing and computer-assisted intervention (pp. 234-241). Springer, Cham. (link) U-net: Encoder-decoder architecture for semantic segmentation. The encoder uses pooling to reduce spatial dimensions while increasing the number of channels. The decoder uses transposed convolutions to upscale feature maps to the original resolution. Skip-connections from the encoder to the decoder help the decoder by providing local details. notebook
Kirillov, Alexander, et al. "Panoptic feature pyramid networks." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019. (link) FPN: FPN takes a standard CNN backbone with features at multiple spatial resolutions, and adds a light top-down pathway with lateral connections. The top-down pathway progressively upsamples the deepest feature map from the backbone while adding in transformed versions of higher-resolution features from the bottom-up pathway. Multiple segmentation heads merge the information from all levels of the FPN pyramid into a single output. notebook
Kingma, D. P., & Welling, M. (2013). Auto-encoding variational bayes. arXiv preprint arXiv:1312.6114. (link) Variational Autoencoder: Autoencoder architecture where the learned encodings are the mean and variance vectors of a multidimensional normal distribution with diagonal covariance. Training is done with a reconstruction loss plus a KL-loss to pull the encodings towards the standard normal. This makes the model learn a continuous embedding space where interpolation between samples is meaningful. Can be used as a generative model. notebook
Gulrajani, I., Ahmed, F., Arjovsky, M., Dumoulin, V., & Courville, A. (2017). Improved Training of Wasserstein GANs. arXiv preprint arXiv:1704.00028. (link) WGAN-gp: Yet another variant of the Generative Adversarial Network framework. The discriminator is replaced by a critic, which tries to pull the fake samples away from the real ones rather than explicitly classifying them. The critic is strongly regularized using a gradient penalty, an trained for several steps before each generator update. This GAN variant provides a better behaved training process than conventional GANs, with a remarkable robustness againts generator collapse mode. notebook
De Brabandere, B., Neven, D., & Van Gool, L. (2017). Semantic instance segmentation with a discriminative loss function. arXiv preprint arXiv:1708.02551. (link) Instance segmentation discriminative loss: As opposed to region-proposal approaches to instance segmentation, with this method the model produces a d-dimensional embedding for each input pixel. A discriminative loss function ensures that the embeddings of pixels belonging to the same instance will be pulled close together, whereas pixels belonging to different instances are pushed away. A simple clustering approach is used at test time to group the embeddings into detected instances. notebook

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published