class tf.contrib.learn.LinearClassifier
Linear classifier model.
Train a linear model to classify instances into one of multiple possible classes. When number of possible classes is 2, this is binary classification.
Example:
education = sparse_column_with_hash_bucket(column_name="education",
hash_bucket_size=1000)
occupation = sparse_column_with_hash_bucket(column_name="occupation",
hash_bucket_size=1000)
education_x_occupation = crossed_column(columns=[education, occupation],
hash_bucket_size=10000)
# Estimator using the default optimizer.
estimator = LinearClassifier(
feature_columns=[occupation, education_x_occupation])
# Or estimator using the FTRL optimizer with regularization.
estimator = LinearClassifier(
feature_columns=[occupation, education_x_occupation],
optimizer=tf.train.FtrlOptimizer(
learning_rate=0.1,
l1_regularization_strength=0.001
))
# Or estimator using the SDCAOptimizer.
estimator = LinearClassifier(
feature_columns=[occupation, education_x_occupation],
optimizer=tf.contrib.linear_optimizer.SDCAOptimizer(
example_id_column='example_id',
num_loss_partitions=...,
symmetric_l2_regularization=2.0
))
# Input builders
def input_fn_train: # returns x, y
...
def input_fn_eval: # returns x, y
...
estimator.fit(input_fn=input_fn_train)
estimator.evaluate(input_fn=input_fn_eval)
estimator.predict(x=x)
Input of fit and evaluate should have following features, otherwise there will be a KeyError:
- if
weight_column_nameis notNone, a feature withkey=weight_column_namewhose value is aTensor. - for each
columninfeature_columns:- if
columnis aSparseColumn, a feature withkey=column.namewhosevalueis aSparseTensor. - if
columnis aWeightedSparseColumn, two features: the first withkeythe id column name, the second withkeythe weight column name. Both features'valuemust be aSparseTensor. - if
columnis aRealValuedColumn, a feature withkey=column.namewhosevalueis aTensor. - - -
- if
Please login to continue.