Data Sampler (Implementation)#

alts.modules.data_sampler
class KDTreeKNNDataSampler(sample_size_max, sample_size_min, sample_size_data_fraction)[source]#

Bases: ResultDataSampler

Description
The “k-dimensional tree k-nearest neighbor” data sampler samples the specified number of closest data points to the queries provided.
Parameters:
  • sample_size_max (int) – Largest allowed sample size (default= 80)

  • sample_size_min (int) – Smallest allowed sample size (default= 5)

  • sample_size_data_fraction (int) – Largest (ceiled) allowed sample size relative to total data pool size (default= 6, i.e. 1/6 of data pool)

post_init(self) None[source]#
Description
Prepares the estimator for the nearest neighbor search.
query(self, queries, size) data_points[source]#
Description
Samples the `size` nearest neighboring data points to the queries provided.
Parameters:
  • queries (Tuple[NDArray[Shape["query_nr, ... query_dim"], Number]) – Queries’ whose neighborhood to sample from

  • size (int) – Number of data points to return (default= max_size)

Returns:

Nearest `size` neighbours to the given queries

Return type:

Tuple[Tuple[NDArray[Shape[“query_nr, … query_dim”], Number], Tuple[NDArray[Shape[“result_nr, … result_dim”], Number]]

query_constrain(self) QueryConstrain[source]#
Description
Returns the data sampler’s query constraints.
Returns:

Query constraints

Return type:

QueryConstrain

result_constrain(self) ResultConstrain[source]#
Description
Returns the data sampler’s result constraints.
Returns:

Result constraints

Return type:

ResultConstrain

result_update(self, subscription) None[source]#
Description
Fits the nearest neighbor estimator to the updated data.
Parameters:

subscription – The updated subscription

sample_size_data_fraction: int = 6#
sample_size_max: int = 80#
sample_size_min: int = 5#
class KDTreeRegionDataSampler(region_size)[source]#

Bases: ResultDataSampler

Description
The “k-dimensional region” data sampler samples all data points in the given radius around the given queries.
Parameters:

region_size (float) – Radius around given queries whose data points are sampled

post_init(self) None[source]#
Description
Prepares the estimator for the nearest neighbor search.
query(self, queries, size) data_points[source]#
Description
Samples all neighboring data points in `region_size` radius to the queries provided.
Parameters:
  • queries (Tuple[NDArray[Shape["query_nr, ... query_dim"], Number]) – Queries’ whose neighborhood to sample from

  • size (int) – Number of data points to return (ignored)

Returns:

All neighbours in `region_size` radius to the given queries

Return type:

Tuple[Tuple[NDArray[Shape[“query_nr, … query_dim”], Number], Tuple[NDArray[Shape[“result_nr, … result_dim”], Number]]

query_constrain(self) QueryConstrain[source]#
Description
Returns the data sampler’s query constraints.
Returns:

Query constraints

Return type:

QueryConstrain

region_size: float = 0.1#
result_constrain(self) ResultConstrain[source]#
Description
Returns the data sampler’s result constraints.
Returns:

Result constraints

Return type:

ResultConstrain

result_update(self, subscription) None[source]#
Description
Fits the nearest neighbor estimator to the updated data.
Parameters:

subscription – The updated subscription