Я нашел библиотеку neupy, которая решила мою проблему:
from neupy import algorithms
from neupy.algorithms.rbfn.utils import pdf_between_data
grnn = algorithms.GRNN(std=0.003)
grnn.train(X, y)
# In this part of the code you can do any moifications you want
ratios = pdf_between_data(grnn.input_train, X, grnn.std)
predicted = (np.dot(grnn.target_train.T, ratios) / ratios.sum(axis=0)).T
Это ссылка на библиотеку: http://neupy.com/apidocs/neupy.algorithms.rbfn.grnn.html