Keanu

Latest version: v0.0.26.dev1

Safety actively analyzes 631044 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

0.0.14

-Vertex
-- `Min` and `Max`
-- `Determinant`
-- `LogGamma`
-- Can create a `Categorical` from a `Dirichlet`
-- `LambdaModelVertex` - a vertex whose op can be a function or an external process (e.g: a python script). This is AKA black box modelling.

-Modelling
-- `LinearRegression` and `LogisticRegression` models
-- `Loop` class for easily building a _while_ loop from Plates

-Algorithm
-- Metropolis Hastings takes a gaussian proposal distribution

-ND4J
-- Upgrade to latest version
-- Shape parameter of a tensor has changed from an `int` array to a `long` array

-Tensors
-- `sumOverDimension`
-- `argMax`
-- `elementWiseEquals`

-Python
-- First pass at an API generated from the Java codebase
-- It can pass the `coal mining` example
-- Support simple vertices and operations
-- You can pass it `numpy` arrays

-Bugs
-- Fix bug in reverse concat auto-diff
-- Fix bug in if vertex auto-diff
-- Fix bugs in tensor broadcasting logic
-- Support for detecting and fixing `NaN`s, e.g. when you calculate `0log0`

- Upgrade Notes
-- Tensor shapes are now long[] rather than int[]

0.0.13

-Plates
-- These can now be used to build time series models: https://github.com/improbable-research/keanu/pull/233

-Modelling
-- Composing many `BayesianNetworks` together can be done through Model Composition: https://github.com/improbable-research/keanu/pull/214

-Tensors
-- `split` enables you to divide a tensor into many chunks along a dimension.
-- `concat` is now a static method that takes an array of tensors to concat as opposed to being ran on the tensor we want to concat in to.

-Vertex
-- `Pareto`.
-- `HalfGaussian`.
-- `.reshape` and static `concat`.
-- `toString` now shows label, class and value.

-Auto Differentiation
-- Now utilises reverse mode.
-- Sum, take, concat, reshape, slice support reverse auto-diff.
--- There is some unexpected behaviour with `sum`, `take` and `reshape` in reverse for high rank tensors (2x2x2 and beyond) when calculating gradients that is currently being investigated. It's best to use rank 1 or 2 where possible.

-Other
-- Progress bar for sampling and inference: https://github.com/improbable-research/keanu/pull/216
-- Kullback–Leibler divergence.
-- Removed `Prior` and `RejectionSampler`.
-- Add `logProb` to `NetworkSamples`

-Bugs
-- Fixed issue with tensor equality in `greaterThanOrEqual`.
-- Fixed broadcast operations for high rank and low rank tensors.
-- Fixed issue with Metropolis Hastings always returning the sample when streaming without using down sampling.

0.0.12

**Bugs**
- Fixed forward mode auto differentiation for the `ConcatVertex`
- Fixed reverse mode auto differentiation for the `MatrixMultiplyVertex`
- Fixed the `inPlace` tensor operations when applying a tensor to a scalar
- Fixed the `IntegerTensor` so it actually supports the complete integer range
- You can now observe a non probabilistic variable after creating a `BayesianNetwork`

**Distributions**
- `Cauchy` distribution has been added
- Removed the `location` parameter from `GammaVertex`
- Removed the `location` parameter from `ExponentialVertex`
- `Bernoulli` is now differentiable

**Sampling**
- Configurable sampling
- Samples that are to be dropped are no longer stored
- Improved sampling defaults

**Bayesian Network**
- Vertices can now be labelled and then retrieved from a Bayes Net via that label

0.0.11

**Distributions**
- Dirichlet
- Removed location parameter from Exponential
- Renames
-- Select to Categorical
-- Flip to Bernoulli
-- Pluck to Take

**Tensors**
- Helpers for easy Tensor creation
-- linspace
-- arange.
- Fix broadcast (ND4J bug)
- IntegerTensor now supports full range of ints

**I/O**
- CSV Writer for samples and vertex values

**Optimiser**
- Gradient Optimizer works with If
- Specify bounds for BOBYQA

**Others**
- Observations made after creating a Bayes Net now propagate

**Breaking API Changes**
- `NonProbabilisticDouble` has been removed. Simply implement `DoubleVertex` instead.
- `calculateDualNumber` has been changed from `protected` to `public`

0.0.10

**Added features**
- Tensor Slice vertex
- Tensor Concat vertex
- Pluck (getValueAt(...)) vertex
- Improved MetropolisHastings configurability and efficiency
- Improved Gradient and Non-Gradient Optimizer configurability

**Fixed bugs**
- Fixed bug in Flip that caused it to incorrectly calculate logProb for tensors

0.0.9

**Added features**
- LogNormal Distribution vertex
- Binomial Distribution vertex
- Tensor summation vertex
- Complete NUTS algorithm
- Matrix multiply vertex
- Multivariate Gaussian vertex (without autodiff)
- Reshape tensor vertex
- Double type round vertex

**Fixed bugs**
- issue with observing/setting array values on vertices not setting entire array
- issue with NonGradient optimizer incorrectly calculating number of latent dimensions
- issue with doing more vertex calculations than needed due to lazyEval logic

Page 3 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.