예제 #1
0
        info_dict['pearsonr'] = pearsonr(preds.flatten(), Y_test.flatten())
        nlpd = model.log_predictive_density(X_test, Y_test)
        info_dict['nlpd'] = np.mean(nlpd)

    # Get parameters
    if args.model == 'ridge':
        info_dict['coefs'] = list(model.coef_)
        info_dict['intercept'] = model.intercept_
        info_dict['regularization'] = model.alpha_
    elif args.model == 'svr':
        info_dict['regularization'] = model.best_params_['C']
        info_dict['epsilon'] = model.best_params_['epsilon']
        info_dict['gamma'] = model.best_params_['gamma']
    else:
        print model
        param_names = model.parameter_names()
        for p_name in param_names:
            if p_name == 'warp_tanh.psi':
                info_dict[p_name] = list(
                    [list(pars) for pars in model[p_name]])
            else:
                try:
                    info_dict[p_name] = float(model[p_name])
                except TypeError:  #ARD
                    info_dict[p_name] = list(model[p_name])
        info_dict['log_likelihood'] = float(model.log_likelihood())
    # elif args.model == 'rbf':
    #     info_dict['variance'] = float(model['rbf.variance'])
    #     info_dict['lengthscale'] = list(model['rbf.lengthscale'])
    #     info_dict['noise'] = float(model['Gaussian_noise.variance'])
    #     info_dict['log_likelihood'] = float(model.log_likelihood())
                                                                         Y_metadata=noise_dict))
                info_dict[emo] = emo_dict
                preds_list.append(preds.flatten())
                vars_list.append(vars.flatten())

        # Get parameters
        if args.model == 'ridge':
            info_dict['coefs'] = list(model.coef_)
            info_dict['intercept'] = model.intercept_
            info_dict['regularization'] = model.alpha_
        elif args.model == 'svr':
            info_dict['regularization'] = model.best_params_['C']
            info_dict['epsilon'] = model.best_params_['epsilon']
            info_dict['gamma'] = model.best_params_['gamma']
        else:
            param_names = model.parameter_names()
            for p_name in param_names:
                if p_name == 'ICM.B.W':
                    info_dict[p_name] = list([list(pars) for pars in model[p_name]])
                else:
                    try:
                        info_dict[p_name] = float(model[p_name])
                    except TypeError: #ARD
                        info_dict[p_name] = list(model[p_name])
            info_dict['log_likelihood'] = float(model.log_likelihood())
        # elif args.model == 'rbf':
        #     info_dict['variance'] = float(model['ICM.rbf.variance'])
        #     info_dict['lengthscale'] = list(model['ICM.rbf.lengthscale'])
        #     info_dict['noise'] = list([float(noise) for noise in model['mixed_noise.*']])
        #     info_dict['log_likelihood'] = float(model.log_likelihood())
        # elif args.model == 'mat32':