kernel_approximation added