Skip to content

Commit

Permalink
Module v3 (#92)
Browse files Browse the repository at this point in the history
  • Loading branch information
cgarciae committed Nov 15, 2020
1 parent f47aa1b commit 19ec87b
Show file tree
Hide file tree
Showing 193 changed files with 4,396 additions and 3,183 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/ci_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,11 @@ jobs:
- name: Install Poetry
uses: dschep/install-poetry-action@v1.2
with:
version: 1.0.10
version: 1.1.4

- name: Install Dependencies
run: |
poetry export --dev -f requirements.txt > requirements.txt
poetry export --without-hashes --dev -f requirements.txt > requirements.txt
pip install -r requirements.txt
pip install jax
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
This is a short guide on how to start contributing to Elegy along with some best practices for the project.

## Setup
We use `poetry` so the easiest way to setup a development environment is run
We use `poetry >= 1.1.4`, the easiest way to setup a development environment is run:

```bash
poetry config virtualenvs.in-project true --local
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@

-----------------

_Elegy is a Neural Networks framework based on Jax inspired by Keras and Haiku._
_Elegy is a Neural Networks framework based on Jax inspired by Keras._

Elegy implements the Keras API but makes changes to play better with Jax and gives more flexibility around [losses and metrics](https://poets-ai.github.io/elegy/guides/modules-losses-metrics/), it also ports Haiku's excellent [module system](https://poets-ai.github.io/elegy/guides/module-system/) and makes it easier to use. Elegy is in an early stage, feel free to send us your feedback!
Elegy implements the Keras API but makes changes to play better with Jax and gives more flexibility around [losses and metrics](https://poets-ai.github.io/elegy/guides/modules-losses-metrics/) and excellent [module system](https://poets-ai.github.io/elegy/guides/module-system/) that makes it super easy to use. Elegy is in an early stage, feel free to send us your feedback!

#### Main Features

Expand Down Expand Up @@ -108,8 +108,8 @@ class Linear(elegy.Module):
self.units = units

def call(self, x):
w = elegy.get_parameter("w", [x.shape[-1], self.units], initializer=jnp.ones)
b = elegy.get_parameter("b", [self.units], initializer=jnp.ones)
w = self.add_parameter("w", [x.shape[-1], self.units], initializer=jnp.ones)
b = self.add_parameter("b", [self.units], initializer=jnp.ones)

return jnp.dot(x, w) + b
```
Expand Down
1 change: 1 addition & 0 deletions docs/api/Loss.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.Loss

::: elegy.losses.loss.Loss
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/Metric.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.Metric

::: elegy.metrics.metric.Metric
selection:
inherited_members: true
Expand Down
4 changes: 2 additions & 2 deletions docs/api/Model.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@

# elegy.Model
::: elegy.model.Model

::: elegy.model.model.Model
selection:
inherited_members: true
members:
Expand All @@ -17,6 +18,5 @@
- train_on_batch
- full_state
- parameters
- seed
- states

11 changes: 5 additions & 6 deletions docs/api/Module.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@

# elegy.Module

::: elegy.module.Module
selection:
inherited_members: true
members:
- __init__
- call
- init
- apply
- reset
- add_parameter
- get_parameters
- set_parameters
- get_states
- set_states
- submodules
- reset
- init
- initialized

5 changes: 0 additions & 5 deletions docs/api/PRNGSequence.md

This file was deleted.

6 changes: 6 additions & 0 deletions docs/api/RNG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.RNG

::: elegy.random.RNG
selection:
inherited_members: true
3 changes: 2 additions & 1 deletion docs/api/add_loss.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.add_loss
::: elegy.hooks.add_loss

::: elegy.module.add_loss
selection:
inherited_members: true
3 changes: 2 additions & 1 deletion docs/api/add_metric.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.add_metric
::: elegy.hooks.add_metric

::: elegy.module.add_metric
selection:
inherited_members: true
3 changes: 2 additions & 1 deletion docs/api/add_summary.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.add_summary
::: elegy.hooks.add_summary

::: elegy.module.add_summary
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/callbacks/CSVLogger.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.CSVLogger

::: elegy.callbacks.csv_logger.CSVLogger
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/Callback.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.Callback

::: elegy.callbacks.callback.Callback
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/CallbackList.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.CallbackList

::: elegy.callbacks.callback_list.CallbackList
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/callbacks/EarlyStopping.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.EarlyStopping

::: elegy.callbacks.early_stopping.EarlyStopping
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/History.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.History

::: elegy.callbacks.history.History
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/LambdaCallback.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.LambdaCallback

::: elegy.callbacks.lambda_callback.LambdaCallback
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/ModelCheckpoint.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.ModelCheckpoint

::: elegy.callbacks.model_checkpoint.ModelCheckpoint
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/RemoteMonitor.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.RemoteMonitor

::: elegy.callbacks.remote_monitor.RemoteMonitor
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/TensorBoard.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.TensorBoard

::: elegy.callbacks.tensorboard.TensorBoard
selection:
inherited_members: true
Expand Down
1 change: 1 addition & 0 deletions docs/api/callbacks/TerminateOnNaN.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.callbacks.TerminateOnNaN

::: elegy.callbacks.terminate_nan.TerminateOnNaN
selection:
inherited_members: true
Expand Down
6 changes: 6 additions & 0 deletions docs/api/get_dynamic_context.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.get_dynamic_context

::: elegy.module.get_dynamic_context
selection:
inherited_members: true
6 changes: 6 additions & 0 deletions docs/api/get_losses.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.get_losses

::: elegy.module.get_losses
selection:
inherited_members: true
6 changes: 6 additions & 0 deletions docs/api/get_metrics.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.get_metrics

::: elegy.module.get_metrics
selection:
inherited_members: true
5 changes: 0 additions & 5 deletions docs/api/get_parameter.md

This file was deleted.

6 changes: 6 additions & 0 deletions docs/api/get_rng.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.get_rng

::: elegy.module.get_rng
selection:
inherited_members: true
5 changes: 0 additions & 5 deletions docs/api/get_state.md

This file was deleted.

6 changes: 6 additions & 0 deletions docs/api/get_static_context.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.get_static_context

::: elegy.module.get_static_context
selection:
inherited_members: true
6 changes: 6 additions & 0 deletions docs/api/get_summaries.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.get_summaries

::: elegy.module.get_summaries
selection:
inherited_members: true
5 changes: 0 additions & 5 deletions docs/api/hooks/add_loss.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/api/hooks/add_metric.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/api/hooks/add_summary.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/api/hooks/get_parameter.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/api/hooks/get_state.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/api/hooks/next_rng_key.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/api/hooks/set_state.md

This file was deleted.

6 changes: 6 additions & 0 deletions docs/api/hooks_context.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.hooks_context

::: elegy.module.hooks_context
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/Constant.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.Constant

::: elegy.initializers.Constant
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/Orthogonal.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.Orthogonal

::: elegy.initializers.Orthogonal
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/RandomNormal.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.RandomNormal

::: elegy.initializers.RandomNormal
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/RandomUniform.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.RandomUniform

::: elegy.initializers.RandomUniform
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/TruncatedNormal.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.TruncatedNormal

::: elegy.initializers.TruncatedNormal
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/UniformScaling.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.UniformScaling

::: elegy.initializers.UniformScaling
selection:
inherited_members: true
1 change: 1 addition & 0 deletions docs/api/initializers/VarianceScaling.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@

# elegy.initializers.VarianceScaling

::: elegy.initializers.VarianceScaling
selection:
inherited_members: true
6 changes: 6 additions & 0 deletions docs/api/is_training.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# elegy.is_training

::: elegy.module.is_training
selection:
inherited_members: true

0 comments on commit 19ec87b

Please sign in to comment.