Convolutional Autoencoder (CAE) in Python
An implementation of a convolutional autoencoder in python and keras.
Installation
pip install cae
Usage
from cae import cae
import numpy as np
# create a fake dataset, here: 1000 random 224x224 RGB images
images = np.random.normal(size=(1000, 224, 224, 3))
latent_dim = 8 # desired latent dimensionality
model = cae(images.shape[1:], latent_dim) # there are a number of **kwargs
# parameters that are likely
# worth tuning!!!
# TRAIN THE NETWORK
model.fit(images)
# SAVE THE WEIGHTS FOR EASY RELOADING LATER WITH model.load_weights(path)
model.save_weights('PATH/TO/SAVE/')
Final words
cae.py contains the implementation, which is tested on the MNIST dataset in mnist_test.ipynb.
In general, auto-encoders map an input x to a latent representation y (generally in a much smaller dimensional space), using deterministic functions of the type y = sigma(Wx+b). In order to encode images, it is useful to implement a convolutional architecture. Here, we utilize convolutional layers and max-pooling layers (which allow translation-invariant representations), followed by a flattening and dense layer to encode the images in a reduced-dimensional space. For decoding, you essentially need to perform the inverse operation. For more information on CAEs, consult e.g. http://people.idsia.ch/~ciresan/data/icann2011.pdf.
Metadata
Release files for cae 0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cae-0.4.tar.gz | 2.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cae-0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.1 kB
Release files / cae-0.4.tar.gz
| Download URL | cae-0.4.tar.gz |
|---|---|
| Size | 2.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc3dfe259f536dcab550cb35322814005365679d6cc7cfc6e232be393ef40d34
|
|
BLAKE2b-256 checksum How to use checksums |
61a5be9cca82f6d49003960671c15f58738eeff3b78290eba6164b1e6c448290
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4
|
Release files / cae-0.4-py3-none-any.whl
| Download URL | cae-0.4-py3-none-any.whl |
|---|---|
| Size | 15.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3b4f773027939f41434be8df619938b6825c84140de3d689aef8accf6318eadf
|
|
BLAKE2b-256 checksum How to use checksums |
adcb19e5bb785208b1eebe48cbb1c7acbe68837387bf7757777004f490e8f55d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4
|