Skip to main content

AutoRA Novelty Experimentalist

Project description

AutoRA Novelty Experimentalist

The novelty experimentalist identifies experimental conditions $\vec{x}' \in X'$ with respect to a pairwise distance metric applied to existing experimental conditions $\vec{x} \in X$:

$$ \underset{\vec{x}'}{\arg\max}~f(d(\vec{x}, \vec{x}')) $$

where $f$ is an integration function applied to all pairwise distances.

Example

For instance, the integration function $f(x)=\min(x)$ and distance function $d(x, x')=|x-x'|$ identifies condition $\vec{x}'$ with the greatest minimal Euclidean distance to all existing conditions in $\vec{x} \in X$.

$$ \underset{\vec{x}}{\arg\max}~\min_i(\sum_{j=1}^n(x_{i,j} - x_{i,j}')^2) $$

To illustrate this sampling strategy, consider the following four experimental conditions that were already probed:

$x_{i,0}$ $x_{i,1}$ $x_{i,2}$
0 0 0
1 0 0
0 1 0
0 0 1

Fruthermore, let's consider the following three candidate conditions $X'$:

$x_{i,0}'$ $x_{i,1}'$ $x_{i,2}'$
1 1 1
2 2 2
3 3 3

If the novelty experimentalist is tasked to identify two novel conditions, it will select the last two candidate conditions $x'{1,j}$ and $x'{2,j}$ because they have the greatest minimal distance to all existing conditions $x_{i,j}$:

Example Code

import numpy as np
from autora.experimentalist.novelty import novelty_sampler, novelty_score_sampler

# Specify X and X'
X = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])
X_prime = np.array([[1, 1, 1], [2, 2, 2], [3, 3, 3]])

# Here, we choose to identify two novel conditions
n = 2
X_sampled = novelty_sampler(conditions=X_prime, reference_conditions=X, num_samples=n)

# We may also obtain samples along with their z-scored novelty scores
(X_sampled, scores) = novelty_score_sampler(conditions=X_prime, reference_conditions=X, num_samples=n)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autora_experimentalist_novelty-2.2.0.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file autora_experimentalist_novelty-2.2.0.tar.gz.

File metadata

File hashes

Hashes for autora_experimentalist_novelty-2.2.0.tar.gz
Algorithm Hash digest
SHA256 b9971359e8a38096d9822e85e44e74c82da878664ad16a443ff2c26db4d5ad9b
MD5 c94c6c1b0eea9ce0ae5432c973c7c431
BLAKE2b-256 6104e39601ce1fcfc193ba1455beeb9446fe61eebd8a4ddda5413cdffdf0b866

See more details on using hashes here.

File details

Details for the file autora_experimentalist_novelty-2.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for autora_experimentalist_novelty-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f12a623a0e6db738555c834b3952fc60ce2739a2fe2a64ac9247022a90469d1e
MD5 b8f416934ac0cf5e0aba76156dbebcf7
BLAKE2b-256 0fbfb5e976a26531321f60b107997f3ef46a5006d560b5857e7fe15994e7a628

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page