Keras Utility & Layer Collection [WIP]
Collection of custom layers for Keras which are missing in the main framework. These layers might be useful to reproduce current state-of-the-art deep learning papers using Keras.
Applications
Using this library the following research papers have been reimplemented in Keras:
Overview of implemented Layers
At the moment the Keras Layer Collection offers the following layers/features:
- Scaled Dot-Product Attention
- Multi-Head Attention
- Layer Normalization
- Sequencewise Attention
- Attention Wrapper
Scaled Dot-Product Attention
Implementation as described in Attention Is All You Need. Performs a non-linear transformation on the values V by comparing the queries Q with the keys K. The illustration below is taken from the paper cited above.
Multi-Head Attention
Implementation as described in Attention Is All You Need. This is basically just a bunch a Scaled Dot-Product Attention blocks whose output is combined with a linear transformation. The illustration below is taken from the paper cited above.
Layer Normalization
Sequencewise Attention
This layer applies various attention transformations on data. It needs a time-series of queries and a time-series of values to calculate the attention and the final linear transformation to obtain the output. This is a faster version of the general attention technique. It is similar to the global attention method described in Effective Approaches to Attention-based Neural Machine Translation
Attention Wrapper
The idea of the implementation is based on the paper Effective Approaches to Attention-based Neural Machine Translation. This layer can be wrapped around any RNN in Keras. It calculates for each time step of the RNN the attention vector between the previous output and all input steps. This way, a new attention-based input for the RNN is constructed. This input is finally fed into the RNN. This technique is similar to the input-feeding method described in the paper cited. The illustration below is taken from the paper cited above.
Metadata
Release files for kulc 0.0.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| kulc-0.0.9.tar.gz | 12.5 kB | Without provenance | Details for kulc-0.0.9.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| kulc-0.0.9-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details for kulc-0.0.9-py2.py3-none-any.whl |
Total release size: 26.1 kB
Release files / kulc-0.0.9.tar.gz
| Download URL | kulc-0.0.9.tar.gz |
|---|---|
| Size | 12.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7286bbac48ed16d124621f4924d62d21eb34b763da91bb6ca3432db5730dd0f0
|
|
BLAKE2b-256 checksum How to use checksums |
328e0d900e8b0ddec62c92e7023808f1f7943fff9c1f374edeb3190dbc5ab683
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.5
|
Release files / kulc-0.0.9-py2.py3-none-any.whl
| Download URL | kulc-0.0.9-py2.py3-none-any.whl |
|---|---|
| Size | 13.5 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
bdcc5b01a1b53f05fb8928f83fdb8ed1c69c42aad8a7737cec1abc22bcd1064f
|
|
BLAKE2b-256 checksum How to use checksums |
2c09dd1fadedf4d563de31530cdd7d8bbfc6b717d9ba0ccb653a285070e577bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.5
|
Security for kulc 0.0.9
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.