def estimate(self, test_data):
    color_data = make_color_data(test_data)
    input_data = regularize_data(color_data)
    zmode = np.round(self.model.predict(input_data), 3)
    pdfs = []
    widths = (self.width * (1.0 + zmode))
    self.zgrid = np.linspace(self.zmin, self.zmax, self.nzbins)
    for (i, zb) in enumerate(zmode):
        pdfs.append(norm.pdf(self.zgrid, zb, widths[i]))
    pz_dict = {'zmode': zmode, 'pz_pdf': pdfs}
    return pz_dict
def estimate(self, test_data):
    color_data = make_color_data(test_data)
    input_data = regularize_data(color_data)
    zmode = np.round(self.model.predict(input_data), 3)
    pdfs = []
    widths = (self.width * (1.0 + zmode))
    self.zgrid = np.linspace(self.zmin, self.zmax, self.nzbins)
    for (i, zb) in enumerate(zmode):
        pdfs.append(norm.pdf(self.zgrid, zb, widths[i]))
    pz_dict = {'zmode': zmode, 'pz_pdf': pdfs}
    return pz_dict