world-federation-of-advertisers / cardinality_estimation_evaluation_framework

Evaluation framework and methods for estimating cardinalities of groups of sets
Apache License 2.0
22 stars 9 forks source link

Add Bayesian sketch operator to the stratified exp ADBF #92

Closed huangxichen1 closed 4 years ago

huangxichen1 commented 4 years ago

Example run through:

NUM_RUNS=100
K_MAX_FREQ=5
K_OUTPUT_DIR_FREQ="output_dir_$K_MAX_FREQ"

python3 src/evaluations/run_evaluation.py \
--evaluation_out_dir="$K_OUTPUT_DIR_FREQ" \
--analysis_out_dir="$K_OUTPUT_DIR_FREQ" \
--report_out_dir="$K_OUTPUT_DIR_FREQ" \
--evaluation_config="frequency_smoke_test" \
--sketch_estimator_configs="stratified_sketch_exp_adbf-250000_10-first_moment_estimator_exp_bayesian-local_dp_1.0986-no_global_dp-5" \
--sketch_estimator_configs="stratified_sketch_exp_adbf-250000_10-first_moment_estimator_exp_bayesian-no_local_dp-global_dp_1.0986-5" \
--sketch_estimator_configs="stratified_sketch_exp_adbf-250000_10-first_moment_estimator_exp_bayesian-no_local_dp-no_global_dp-5" \
--evaluation_run_name="results" \
--analysis_type="frequency" \
--num_workers=0 \
--num_runs=$NUM_RUNS \
--max_frequency=$K_MAX_FREQ \
--error_margin="0.1,0.1" \
--proportion_of_runs="0.9,0.95"
huangxichen1 commented 4 years ago

Thanks Xichen! Is there a docstring explaning the difference between sketch_epsilon and estimate_epsilon?

The definition is in the function Args. Maybe we should describe it somewhere more generally.