stylegan2-ada-pytorch
Swin-Transformer
stylegan2-ada-pytorch | Swin-Transformer | |
---|---|---|
30 | 23 | |
3,917 | 12,975 | |
0.9% | 1.5% | |
2.3 | 2.8 | |
4 months ago | 22 days ago | |
Python | Python | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
stylegan2-ada-pytorch
-
Samsung expected to report 80% profit plunge as losses mount at chip business
> there is really nothing that "normal" AI requires that is bound to CUDA. pyTorch and Tensorflow are backend agnostic (ideally...).
There are a lot of optimizations that CUDA has that are nowhere near supported in other software or even hardware. Custom cuda kernels also aren't as rare as one might think, they will often just be hidden unless you're looking at libraries. Our more well known example is going to be StyleGAN[0] but it isn't uncommon to see elsewhere, even in research code. Swin even has a cuda kernel[1]. Or find torch here[1] (which github reports that 4% of the code is cuda (and 42% C++ and 2% C)). These things are everywhere. I don't think pytorch and tensorflow could ever be agnostic, there will always be a difference just because you have to spend resources differently (developing kernels is time resource). We can draw evidence by looking at Intel MKL, which is still better than open source libraries and has been so for a long time.
I really do want AMD to compete in this space. I'd even love a third player like Intel. We really do need competition here, but it would be naive to think that there's going to be a quick catchup here. AMD has a lot of work to do and posting a few bounties and starting a company (idk, called "micro grad"?) isn't going to solve the problem anytime soon.
And fwiw, I'm willing to bet that most AI companies would rather run in house servers than from cloud service providers. The truth is that right now just publishing is extremely correlated to compute infrastructure (doesn't need to be but with all the noise we've just said "fuck the poor" because rejecting is easy) and anyone building products has costly infrastructure.
[0] https://github.com/NVlabs/stylegan2-ada-pytorch/blob/d72cc7d...
[1] https://github.com/microsoft/Swin-Transformer/blob/2cb103f2d...
[2] https://github.com/pytorch/pytorch/tree/main/aten/src
-
[R] StyleGAN2-ADA on Power 9?!
I am talking about the original Nvidia implementation here: https://github.com/NVlabs/stylegan2-ada-pytorch
-
This X Does Not Exist
I think you should be able to find a latent vector that returns a cat that is part of the original training data (or at least very close to it). Most of the outputs will not be real cats at all though. However, it's pretty simple to try and find the latent vector that reproduces a given image, e.g. https://github.com/NVlabs/stylegan2-ada-pytorch/blob/main/pr...
-
[P] Frechet Inception Distance
One irritating flaw with FID is that scores are massively biased by the number of samples, that is, the fewer samples you use, the larger the score. So to make comparisons fair it's absolutely crucial to use the same number of samples. From what I've seen on standard benchmarks it's pretty common now to compute Inception features for every single data point, but only for 50k samples from generative models (for reference off the top of my head StyleGAN2-ADA does this, see Appendix A).
-
generating images
You can follow the development of stylegan from NVIDIA: https://github.com/NVlabs/stylegan2-ada-pytorch They have formed datasets containing human faces, maybe you can use human faces with expressions as classes and train conditional GAN with your own classes.
-
What is the best GAN architecture for image data augmentation?
Given the lack of data StyleGan 2 by Nvidia, which was specifically created to handle small datasets could be an option - https://github.com/NVlabs/stylegan2-ada-pytorch
-
City Does Not Exist
First, you have to collect a few thousand images of the same thing (maybe more or less depending on how complex your thing is or how good the results should be). Then, you train a generative adversarial neural network on those images to generate new images. https://github.com/NVlabs/stylegan2-ada-pytorch works quite well. https://github.com/NVlabs/stylegan3 is supposedly even better, but I did not try it yet.
- Modern Propaganda (this person does not exist)
-
From 53% to 95% acc - Real vs Fake Faces Classification | Fine-tuning EfficientNet (Github in comment)
What NVIDIA does when computing Perceptual Path Length is to center crop the faces before computing the metric. Here you can find the code to get an idea https://github.com/NVlabs/stylegan2-ada-pytorch/blob/main/metrics/perceptual_path_length.py
-
StyleGAN2 ADA Pytorch ends after tick 0 with no errors.
I\m trying to train StyleGAN2 ADA Pytorch https://github.com/NVlabs/stylegan2-ada-pytorch on my own dataset.
Swin-Transformer
-
Samsung expected to report 80% profit plunge as losses mount at chip business
> there is really nothing that "normal" AI requires that is bound to CUDA. pyTorch and Tensorflow are backend agnostic (ideally...).
There are a lot of optimizations that CUDA has that are nowhere near supported in other software or even hardware. Custom cuda kernels also aren't as rare as one might think, they will often just be hidden unless you're looking at libraries. Our more well known example is going to be StyleGAN[0] but it isn't uncommon to see elsewhere, even in research code. Swin even has a cuda kernel[1]. Or find torch here[1] (which github reports that 4% of the code is cuda (and 42% C++ and 2% C)). These things are everywhere. I don't think pytorch and tensorflow could ever be agnostic, there will always be a difference just because you have to spend resources differently (developing kernels is time resource). We can draw evidence by looking at Intel MKL, which is still better than open source libraries and has been so for a long time.
I really do want AMD to compete in this space. I'd even love a third player like Intel. We really do need competition here, but it would be naive to think that there's going to be a quick catchup here. AMD has a lot of work to do and posting a few bounties and starting a company (idk, called "micro grad"?) isn't going to solve the problem anytime soon.
And fwiw, I'm willing to bet that most AI companies would rather run in house servers than from cloud service providers. The truth is that right now just publishing is extremely correlated to compute infrastructure (doesn't need to be but with all the noise we've just said "fuck the poor" because rejecting is easy) and anyone building products has costly infrastructure.
[0] https://github.com/NVlabs/stylegan2-ada-pytorch/blob/d72cc7d...
[1] https://github.com/microsoft/Swin-Transformer/blob/2cb103f2d...
[2] https://github.com/pytorch/pytorch/tree/main/aten/src
- Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
- Swin Transformer: Hierarchical Vision Transformer Using Shifted Windows
-
[D] Influential papers round-up 2022. What are your favorites?
ConvNeXt. The A ConvNet for the 2020s paper is a highlight for me because the authors were able to design a purely convolutional architecture that outperformed popular vision transformers such as Swin Transformer (and all convolutional neural networks that came before it, of course).
-
[R] LiBai: a large-scale open-source model training toolbox
Found relevant code at https://github.com/microsoft/Swin-Transformer + all code implementations here
-
Using VIT as a feature extractor
Figures aside, you can reform the image from the tokens if you want. This is what's done in SWIN transformers (https://arxiv.org/abs/2103.14030) patches are tokenized, transformed, and then re-assembled into an image-like tensor. The patchification is shifted at every other transformer stage so that there is more information that propagates from one patch to the next.
-
Pathways Autoregressive Text-to-Image Model (Parti)
Give it a few days and lucidrains will have the code up[0].
But in honesty, it is probably how people react. We saw this with Pulse, GPT, and many others. The authors are clear about the limitations but people talk it up too much and others shit on it. There's also a reproducibility crisis in ML (many famous networks, like Swin[1][2][3], can't be reproduced (even worse when reviewers concentrate on benchmarks)). It isn't like many can train a model like this anyways. It gives them benefit of the doubt and maintains good publicity rather than controversial.
Of course, this is extremely bad from an academic perspective and personally I believe you should have your paper revoked if it isn't reproducible. You'd be surprised how many don't track the random seed or measure variance. We have GitHub. You should be able to write training options that get approximately the same results as the paper. Otherwise I don't trust your results.
[0] https://github.com/lucidrains/parti-pytorch
[1] https://github.com/microsoft/Swin-Transformer/issues/183
[2] https://github.com/microsoft/Swin-Transformer/issues/180
[3] https://github.com/microsoft/Swin-Transformer/issues/148
-
[D] What do you value in a paper replication?
That's about it. I should be able to go to your code and hit run, and reproduce your results (or within the reported variance). If you don't meet any of these criteria them I'm going to be pretty upset and lose a lot of respect for your work. I think we should also put pressure on these papers if they don't meet these conditions, especially if they are pushing the benchmarks (I'm looking at you Swin). If you win on benchmarks due to silicon lottery, then we shouldn't be trusting you.
What are some alternatives?
stylegan3 - Official PyTorch implementation of StyleGAN3
Swin-Transformer-Tensorflow - Unofficial implementation of "Swin Transformer: Hierarchical Vision Transformer using Shifted Windows" (https://arxiv.org/abs/2103.14030)
pixel2style2pixel - Official Implementation for "Encoding in Style: a StyleGAN Encoder for Image-to-Image Translation" (CVPR 2021) presenting the pixel2style2pixel (pSp) framework
parti-pytorch - Implementation of Parti, Google's pure attention-based text-to-image neural network, in Pytorch
BigGAN-PyTorch - The author's officially unofficial PyTorch BigGAN implementation.
Video-Swin-Transformer - This is an official implementation for "Video Swin Transformers".
StyleFlow - StyleFlow: Attribute-conditioned Exploration of StyleGAN-generated Images using Conditional Continuous Normalizing Flows (ACM TOG 2021)
pytorch-image-models - PyTorch image models, scripts, pretrained weights -- ResNet, ResNeXT, EfficientNet, NFNet, Vision Transformer (ViT), MobileNet-V3/V2, RegNet, DPN, CSPNet, Swin Transformer, MaxViT, CoAtNet, ConvNeXt, and more
lucid-sonic-dreams
ConvNeXt - Code release for ConvNeXt model
data-efficient-gans - [NeurIPS 2020] Differentiable Augmentation for Data-Efficient GAN Training
semantic-segmentation-pytorch - Pytorch implementation for Semantic Segmentation/Scene Parsing on MIT ADE20K dataset