Tensor utilities, reinforcement learning, and more!
Project description
pyoneer
Tensor utilities, reinforcement learning, and more! Designed to make research easier with low-level abstractions for common operations.
Usage
For the top-level utilities, import like so:
import pyoneer as pynr
pynr.math.rescale(...)
For the larger sub-modules, such as reinforcement learning, we recommend:
import pyoneer.rl as pyrl
loss_fn = pyrl.losses.PolicyGradient(...)
In general, the Pyoneer API tries to adhere to the TensorFlow 2.0 API.
Examples
API
Activations (pynr.activations
)
pynr.activations.swish
Debugging (pynr.debugging
)
pynr.debugging.Stopwatch
Distributions (pynr.distributions
)
pynr.distributions.MultiCategorical
Initializers (pynr.initializers
)
pynr.initializers.SoftplusInverse
Layers (pynr.layers
)
pynr.layers.Swish
pynr.layers.OneHotEncoder
pynr.layers.AngleEncoder
pynr.layers.Nest
Tensor Manipulation (pynr.manip
)
pynr.manip.flatten
pynr.manip.batched_index
pynr.manip.pad_or_truncate
pynr.manip.shift
Math (pynr.math
)
pynr.math.to_radians
pynr.math.to_degrees
pynr.math.to_cartesian
pynr.math.to_polar
pynr.math.RADIANS_TO_DEGREES
pynr.math.DEGREES_TO_RADIANS
pynr.math.isclose
pynr.math.safe_divide
pynr.math.rescale
pynr.math.normalize
pynr.math.denormalize
Metrics (pynr.metrics
)
pynr.metrics.mape
pynr.metrics.smape
pynr.metrics.MAPE
pynr.metrics.SMAPE
Moments (pynr.moments
)
pynr.moments.range_moments
pynr.moments.StaticMoments
pynr.moments.StreamingMoments
pynr.moments.ExponentialMovingMoments
Learning Rate Schedules (pynr.schedules
)
pynr.schedules.CyclicSchedule
Reinforcement Learning (pynr.rl
)
Utilities for reinforcement learning.
Losses (pynr.rl.losses
)
pynr.rl.losses.policy_gradient
pynr.rl.losses.policy_entropy
pynr.rl.losses.clipped_policy_gradient
pynr.rl.losses.PolicyGradient
pynr.rl.losses.PolicyEntropy
pynr.rl.losses.ClippedPolicyGradient
Targets (pynr.rl.targets
)
pynr.rl.targets.DiscountedReturns
pynr.rl.targets.GeneralizedAdvantages
Strategies (pynr.rl.strategies
)
pynr.rl.strategies.EpsilonGreedy
pynr.rl.strategies.Mode
pynr.rl.strategies.Sample
Wrappers (pynr.rl.wrappers
)
pynr.rl.wrappers.ObservationCoordinates
pynr.rl.wrappers.ObservationNormalization
pynr.rl.wrappers.Batch
pynr.rl.wrappers.Process
Installation
There are a few options for installation:
-
(Recommended) Install with
pipenv
:pipenv install fomoro-pyoneer
-
Install locally for development with
pipenv
:git clone https://github.com/fomorians/pyoneer.git cd pyoneer pipenv install pipenv shell
Testing
There are a few options for testing:
-
Run all tests:
python -m unittest discover -bfp '*_test.py'
-
Run specific tests:
python -m pyoneer.math.logical_ops_test
Contributing
File an issue following the ISSUE_TEMPLATE
. If the issue discussion warrants implementation, then submit a pull request from a branch describing the feature. This will eventually get merged into master
after a few rounds of code review.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file fomoro-pyoneer-0.3.0.tar.gz
.
File metadata
- Download URL: fomoro-pyoneer-0.3.0.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
8b65f42eb62756dc6bf55ee440aea0eec83eea98edbee6c65d598c7905dc13be
|
|
MD5 |
4f27712510b7a84000d3a7cf5d463999
|
|
BLAKE2b-256 |
fea26937e1a874a5829a598d284e6a73d43f6445b28be2724a005370b4411195
|