Is the ability to reproduce an input value to the network?
rand('seed',123);
outer_rounds = 100;
inner_rounds = 100;
items = 500;
q99_mean_vec = [];
q99_complete_vec = [];
for ior = 1:outer_rounds;
q99_vec = [];
x = rand( 1, rounds*items );
for iir = 1:inner_rounds
q99_vec(iir) = quantile( x( (iir-1)*items+(1:items) )', 0.99 );
end
q99_complete_vec(ior) = quantile( x', 0.99 );
q99_mean_vec(ior) = mean( q99_vec' );
end
hist( [ q99_complete_vec; q99_mean_vec ]', [0.988:0.0001:0.991] );
xlim( [0.988, 0.991] );
legend( 'from complete data', 'from means' );
This looks biased to me even though the distribution is uniform. I did not expect that. Maybe the quantile function is broken. x <- runif(100000)
quantile(x, 0.99)
mean(sapply(1:2000, function(i) {
i <- i * 50
quantile(x[i-49:i], 0.99)
}))
When run multiple times, I've found that the mean is always lower than the quantile over the full sample.