def _CalibratedLinearRegressorWithQuantiles(self, feature_names, feature_columns, **hparams_args): """Model that saves/retrieves quantiles.""" # Quantiles to be used for x2 quantiles_dir = self.get_temp_dir() keypoints_initialization.save_quantiles_for_keypoints( input_fn=self._test_data.threed_input_fn(True), save_dir=quantiles_dir, feature_columns=feature_columns, num_steps=1) # Keypoint initialization function for x0 and x1 def init_fn(): return keypoints_initialization.uniform_keypoints_for_signal( _NUM_KEYPOINTS, -1., 1., -1., 1.) hparams = tfl_hparams.CalibratedLinearHParams( feature_names, num_keypoints=_NUM_KEYPOINTS, **hparams_args) return calibrated_linear.calibrated_linear_regressor( feature_columns=feature_columns, hparams=hparams, keypoints_initializers_fn={ 'x0': init_fn, 'x1': init_fn }, quantiles_dir=quantiles_dir # Used for 'x2' )
def _CalibratedLinearClassifier(self, feature_names, feature_columns, **hparams_args): def init_fn(): return keypoints_initialization.uniform_keypoints_for_signal( _NUM_KEYPOINTS, -1., 1., -1., 1.) hparams = tfl_hparams.CalibratedLinearHParams( feature_names, num_keypoints=_NUM_KEYPOINTS, **hparams_args) return calibrated_linear.calibrated_linear_classifier( feature_columns=feature_columns, hparams=hparams, keypoints_initializers_fn=init_fn)
def testConstructorsAllTypes(self): _ = hparams.CalibratedHParams(['x0', 'x1']) _ = hparams.CalibratedLinearHParams(['x0', 'x1'], learning_rate=0.1) _ = hparams.CalibratedLatticeHParams(['x0', 'x1'], learning_rate=0.1) _ = hparams.CalibratedRtlHParams(['x0', 'x1'], learning_rate=0.1) etl = hparams.CalibratedEtlHParams(['x0', 'x1'], learning_rate=0.1) etl.parse('calibration_bound=yes') self.assertTrue(etl.calibration_bound) etl.parse('calibration_bound=off') self.assertFalse(etl.calibration_bound) with self.assertRaises(ValueError): etl.parse('calibration_bound=foobar')
def __init__(self, n_classes, feature_columns=None, model_dir=None, quantiles_dir=None, keypoints_initializers_fn=None, optimizer=None, config=None, hparams=None): """Construct CalibrateLinearClassifier/Regressor.""" if not hparams: hparams = tfl_hparams.CalibratedLinearHParams([]) self.check_hparams(hparams) super(_CalibratedLinear, self).__init__(n_classes, feature_columns, model_dir, quantiles_dir, keypoints_initializers_fn, optimizer, config, hparams, 'linear')
def testAddNonExistingPerFeatureParam(self): hp = hparams.CalibratedLinearHParams(['x0', 'x1']) hp.set_feature_param('x0', 'calibration_l2_laplacian_reg', 0.1) self.assertAlmostEqual( hp.get_feature_param('x0', 'calibration_l2_laplacian_reg'), 0.1)