Chi-squared kernel gives a valid gram matrix for any non-negative features. So can it also be used for non-histogram features given they are non-negative, if the obtained performance is good? How do I build a complex matrix of features using scikit-learn?