Ejemplo n.º 1
0
def product_model():
    d = data.ClassificationData(target=True, n_samples=1000, n_features=100)
    est = step.Construct('sklearn.ensemble.RandomForestClassifier',
                n_estimators=10, name='estimator')

    m1 = model.FitPredict(inputs=[est, d], target=True, name='m1')
    m2 = model.FitPredict(inputs=[est, d], target=True, name='m2')

    p = model.PredictProduct(inputs=[m1,m2], target=True, inputs_mapping=['m1', 'm2'], name='p')

    return p
Ejemplo n.º 2
0
def calibration():
    steps = []
    for n_estimators, k_folds in product(range(50,300,100), [2,5]):
        d = data.ClassificationData(target=True, n_samples=1000, n_features=100)

        est = step.Construct('sklearn.ensemble.RandomForestClassifier',
                n_estimators=n_estimators, name='estimator') 

        fit = model.Fit(inputs=[est, d], return_estimator=True, target=True, name='uncalibrated')
        predict = model.Predict(inputs=[fit,d], target=True, name='y')

        cal = step.Construct('sklearn.calibration.CalibratedClassifierCV', cv=k_folds,
                inputs=[predict], inputs_mapping={'y':None}, name='calibrator')

        cal_est = model.FitPredict(inputs=[cal, d], target=True, name='calibrated')

        metrics = model.PrintMetrics([
                {'metric':'baseline'},
                {'metric':'precision', 'k':100},
                {'metric':'precision', 'k':200},
                {'metric':'precision', 'k':300},
        ], inputs=[cal_est])

        steps.append(metrics)

    return steps
Ejemplo n.º 3
0
def calibration():
    steps = []
    for n_estimators, k_folds in product(range(50, 300, 100), [2, 5]):
        d = data.ClassificationData(n_samples=1000, n_features=100)
        d.target = True

        est = step.Call(ensemble,
                        'RandomForestClassifier',
                        n_estimators=n_estimators)

        fit = model.Fit(inputs=[est, d], return_estimator=True)
        fit.target = True

        predict = model.Predict(inputs=[fit, d])
        predict.target = True

        cal = step.Call('sklearn.calibration.CalibratedClassifierCV',
                        cv=k_folds,
                        inputs=[MapResults([predict], {'y': None})])

        cal_est = model.FitPredict(inputs=[cal, d])
        cal_est.target = True

        steps.append(cal_est)

    return steps
Ejemplo n.º 4
0
def product_model():
    d = data.ClassificationData(n_samples=1000, n_features=100)
    d.target = True

    est = step.Call(ensemble, 'RandomForestClassifier', n_estimators=10)
    est.name = 'estimator'

    m1 = model.FitPredict(inputs=[est, d])
    m1.target = True
    m1.name = 'm1'

    m2 = model.FitPredict(inputs=[est, d])
    m2.target = True
    m2.name = 'm2'

    p = model.PredictProduct(inputs=[MapResults([m1, m2], ['m1', 'm2'])])
    p.target = True
    p.name = 'p'

    return p
Ejemplo n.º 5
0
def product_model():
    d = data.ClassificationData(n_samples=1000, n_features=100)
    d.target = True

    est = step.Construct(_class='sklearn.ensemble.RandomForestClassifier',
                n_estimators=10)
    est.name = 'estimator'

    m1 = model.FitPredict(inputs=[est, d])
    m1.target = True
    m1.name = 'm1'

    m2 = model.FitPredict(inputs=[est, d])
    m2.target = True
    m2.name = 'm2'

    p = model.PredictProduct(inputs=[m1,m2], inputs_mapping=['m1', 'm2'])
    p.target = True
    p.name = 'p'

    return p
Ejemplo n.º 6
0
def models(estimators, transform_search):
    steps = []
    for transform_args, estimator in product(dict_product(transform_search),
                                             estimators):

        transform = lead.model.transform.LeadTransform(month=1,
                                                       day=25,
                                                       name='transform',
                                                       **transform_args)

        y = model.FitPredict(inputs=[estimator, transform],
                             name='y',
                             target=True)
        steps.append(y)

    return steps