Skip to content

Commit

Permalink
Merge pull request #29 from duskvirkus/release-prep
Browse files Browse the repository at this point in the history
Release Prep
  • Loading branch information
duskvirkus authored Aug 22, 2021
2 parents 55c6d69 + db58179 commit bd2aa5b
Show file tree
Hide file tree
Showing 12 changed files with 786 additions and 340 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -146,4 +146,6 @@ pretrained
results

alias-free-gan-ci-files
alias-free-gan-ci-files.zip
alias-free-gan-ci-files.zip

devel/
71 changes: 53 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,26 @@
# Alias-Free GAN

⚠️ Still Beta Testing (first "stable" release sometime soon) ⚠️

An unofficial version of Alias-Free Generative Adversarial Networks (https://arxiv.org/abs/2106.12423). This repository was heavily based on [Kim Seonghyeon's (rosinality) implementation](https://github.com/rosinality/alias-free-gan-pytorch). The goal of this version is to be maintainable, easy to use, and expand the features of existing implementations. This is built using pytorch and pytorch lightning (a framework that abstracts away much of the hardware specific code).

See open issues unsupported features, planned features, and current bugs.

## Licence and Compensation Information
## Licence

![MIT licence badge](https://badgen.net/badge/license/MIT/blue)

This project is officially licensed as an MIT project. However, it's requested that you use this repository with the intention of actively elevating historically marginalized communities. Avoid using this project for creating anything that inflicts physical or psychological violence on individuals, groups, or animals.

If you have the financial means please consider contributing to this project or when using a pretrained model.
## Financial Support

If you have the financial means please consider contributing to this project or creators of pretrained models.

This project takes money to run because while many continuos integration (ci) tools are free to open source projects, they do not offer the necessary hardware to run tests on GPUs or TPUs. Because of this the ci testing needs to be run using Google Cloud Platform which charges for GPU and TPU instances. Any financial contributions to this project will first go to covering those costs first.

Licenses and contributions for pretrained models are designed to be flexible so please review the information for a particular model before using it.
Licenses and contributions for pretrained models is designed to be flexible so please review the information for a particular model before using it.

Buy me a coffee: https://www.buymeacoffee.com/duskvirkus

Tezos Wallet Address: tz1PeE5NQyyjyJdnyqyKdtFN27TvN9j3ZcUe - Only send tezos to this wallet.

## About Branches

Expand All @@ -27,6 +33,35 @@ Licenses and contributions for pretrained models are designed to be flexible so
| `devel` | [![CI](https://github.com/duskvirkus/alias-free-gan-pytorch-lightning/actions/workflows/ci.yml/badge.svg?branch=devel)](https://github.com/duskvirkus/alias-free-gan-pytorch-lightning/actions/workflows/ci.yml) | ![gpu pytest on gcloud](https://badgen.net/github/checks/duskvirkus/alias-free-gan/devel/gpu-pytest-on-gcloud?label=GPU%20devel) | ![tpus pytest on gcloud](https://badgen.net/github/checks/duskvirkus/alias-free-gan/devel/tpus-pytest-on-gcloud?label=TPUs%20devel) |
| `stable` | [![CI](https://github.com/duskvirkus/alias-free-gan-pytorch-lightning/actions/workflows/ci.yml/badge.svg?branch=stabel)](https://github.com/duskvirkus/alias-free-gan-pytorch-lightning/actions/workflows/ci.yml) | ![gpu pytest on gcloud](https://badgen.net/github/checks/duskvirkus/alias-free-gan/stabel/gpu-pytest-on-gcloud?label=GPU%20stabel) | ![tpus pytest on gcloud](https://badgen.net/github/checks/duskvirkus/alias-free-gan/stabel/tpus-pytest-on-gcloud?label=TPUs%20stabel) |

## Examples

![training example gif](assets/examples/aliasfree-training-painterly-faces.gif)

Example of animation made from samples generated in training process.

___

![linear interpolation example](assets/examples/first-interpolation-aliasfree-duskvirkus.gif)

Example of linear interpolation between two random seeds.

___

![circular loop example](assets/examples/aliasfree-circular-painterly-faces-duskvirkus.gif)

Example of circular loop interpolation.

___

![noise loop example](assets/examples/aliasfree-noiseloop-painterly-faces-duskvirkus.gif)

Example of open simplex noise loop interpolation.

___

![rosinality translate example](assets/examples/aliasfree-ros-translate-painterly-faces.gif)

Example output from converted rosinality translate script.
## Supported Model Architectures

Below is a list of supported model architecture. The hope is to support NVlabs code when it comes out.
Expand Down Expand Up @@ -57,23 +92,24 @@ Below is a list of supported model architecture. The hope is to support NVlabs c

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/duskvirkus/alias-free-gan/blob/devel/notebooks/GPU_Inference_Alias_Free_GAN.ipynb)

### TPU Colab Training Notebook

coming soon

### Note about TPU training
### TPU Notebooks

TPU training exists currently exist simply as a proof of concept however little optimization has been done yet so it does not appear to be significantly faster than GPU training on google colab.
Coming at some point in the future.

## Pre-trained Models

See [pretrained_models.json](https://github.com/duskvirkus/alias-free-gan/blob/devel/pretrained_models.json).

Use `model_name` as `--resume_from` argument for trainer.py.

Pretrained models will automatically download using wget but here's link's if that isn't working for some reason.
Pretrained models will automatically download using wget but here's link's if that isn't working for some reason. Place them under a `pretrained` directory in project root directory.

### rosinality-ffhq-800k

Description: A 256 model trained by rosinality on ffhq dataset for 800k steps at a batch size of 16.

rosinality-ffhq-800k: https://aliasfreegan.sfo3.cdn.digitaloceanspaces.com/rosinality-ffhq-800k.pt
- Main: https://aliasfreegan.sfo3.cdn.digitaloceanspaces.com/rosinality-ffhq-800k.pt
- Google Drive: https://drive.google.com/file/d/15B_Pz-38eIiUBCiVbgPOcv-TIoT7nc5e

## Contributing

Expand All @@ -86,13 +122,12 @@ You can do so by creating a pull request to the `stable` branch. Add information
```json
{
"model_name": "model-name-no-spaces-no-file-extension",
"creator": "github username example:'githubusername'",
"creator": "github username",
"model_architecture": "see model architecture section",
"description": "Describe your project.",
"description": "Describe your model. What was it trained on? How long was it trained for? Feel free to include links to make donations and suggested donation amounts. Also include licence information such as creative commons or other licencees.",
"model_size": 512,
"gdown": "Please include a link to download your model in you're pull request and I will update this",
"sha1": "If you know how to make a sha1 hash then you can fill this out if not leave this blank.",
"licence_and_compensation_information": "Please put any licencing and compensation information here you would like to include. An example could be: 'This model is under a CC-BY-NC-SA Licence. Please send $5 for transfer learning off of it on paypal to [email protected]. Contact me at [email protected] if you would like to use it in a commercial project.'"
"wget_url": "Please include a link to download your model in you're pull request and I will update this",
"sha1": "If you know how to make a sha1 hash then you can fill this out if not leave this blank."
}
```

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit bd2aa5b

Please sign in to comment.