Spec-Zone.ru › TensorFlow 1.15

tf.contrib.learn.DNNLinearCombinedRegressor

Регрессор для моделей TensorFlow Linear и DNN, объединённых для обучения.

Наследуется от: Estimator

tf.contrib.learn.DNNLinearCombinedRegressor(
    model_dir=None, weight_column_name=None, linear_feature_columns=None,
    linear_optimizer=None, _joint_linear_weights=False, dnn_feature_columns=None,
    dnn_optimizer=None, dnn_hidden_units=None, dnn_activation_fn=tf.nn.relu,
    dnn_dropout=None, gradient_clip_norm=None, enable_centered_bias=False,
    label_dimension=1, config=None, feature_engineering_fn=None,
    embedding_lr_multipliers=None, input_layer_min_slice_size=None,
    fix_global_step_increment_bug=False
)

ЭТОТ КЛАСС УСТАРЕЛ. Обратитесь к contrib/learn/README.md для общих инструкций по миграции.

Примечание: Новым пользователям необходимо установить fix_global_step_increment_bug=True при создании оценщика.

Пример:

sparse_feature_a = sparse_column_with_hash_bucket(...)
sparse_feature_b = sparse_column_with_hash_bucket(...)

sparse_feature_a_x_sparse_feature_b = crossed_column(...)

sparse_feature_a_emb = embedding_column(sparse_id_column=sparse_feature_a,
                                        ...)
sparse_feature_b_emb = embedding_column(sparse_id_column=sparse_feature_b,
                                        ...)

estimator = DNNLinearCombinedRegressor(
    # common settings
    weight_column_name=weight_column_name,
    # wide settings
    linear_feature_columns=[sparse_feature_a_x_sparse_feature_b],
    linear_optimizer=tf.compat.v1.train.FtrlOptimizer(...),
    # deep settings
    dnn_feature_columns=[sparse_feature_a_emb, sparse_feature_b_emb],
    dnn_hidden_units=[1000, 500, 100],
    dnn_optimizer=tf.compat.v1.train.ProximalAdagradOptimizer(...))

# To apply L1 and L2 regularization, you can set optimizers as follows:
tf.compat.v1.train.ProximalAdagradOptimizer(
    learning_rate=0.1,
    l1_regularization_strength=0.001,
    l2_regularization_strength=0.001)
# It is same for FtrlOptimizer.

# Input builders
def input_fn_train: # returns x, y
  ...
def input_fn_eval: # returns x, y
  ...
def input_fn_predict: # returns x, None
  ...
estimator.train(input_fn_train)
estimator.evaluate(input_fn_eval)
estimator.predict(input_fn_predict)

Вход fit, train, и evaluate должен содержать следующие признаки, в противном случае возникнет KeyError: если weight_column_name не None, признак с key=weight_column_name значением Tensor. для каждого column в dnn_feature_columns + linear_feature_columns.

- if `column` is a `SparseColumn`, a feature with `key=column.name`
  whose `value` is a `SparseTensor`.
- if `column` is a `WeightedSparseColumn`, two features: the first with
  `key` the id column name, the second with `key` the weight column name.
  Both features' `value` must be a `SparseTensor`.
- if `column` is a `RealValuedColumn, a feature with `key=column.name`
  whose `value` is a `Tensor`.
Аргументы
model_dir Каталог для сохранения параметров модели, графа и т. д. Также можно использовать для загрузки контрольных точек из каталога в оценщик, чтобы продолжить обучение ранее сохранённой модели.
weight_column_name Строка, определяющая имя столбца признака, представляющего веса. Используется для уменьшения или увеличения веса примеров во время обучения. Будет умножаться на потерю примера.
linear_feature_columns Итерируемый объект, содержащий все столбцы признаков, используемые линейной частью модели. Все элементы должны быть экземплярами классов, производными от FeatureColumn.
linear_optimizer Экземпляр tf.Optimizer, используемый для применения градиентов к линейной части модели. Если None, будет использоваться оптимизатор FTRL.
_joint_linear_weights Если True, будет использоваться одна (возможно, разнесённая) переменная для хранения весов линейной модели. Это быстрее, но требует, чтобы все столбцы были разреженными и имели комбинировщик 'sum'.
dnn_feature_columns Итерируемый объект, содержащий все столбцы признаков, используемые глубокой частью модели. Все элементы должны быть экземплярами классов, производными от FeatureColumn.
dnn_optimizer Экземпляр tf.Optimizer, используемый для применения градиентов к глубокой части модели. Если None, будет использоваться оптимизатор Adagrad.
dnn_hidden_units Список скрытых узлов на слой. Все слои полностью соединены.
dnn_activation_fn Функция активации, применяемая к каждому слою. Если None, будет использоваться tf.nn.relu.
dnn_dropout Если не равно None, вероятность выброса заданной координаты.
gradient_clip_norm Числовое значение > 0. Если указано, градиенты будут ограничены своей глобальной нормой с этим коэффициентом ограничения. Подробнее см. tf.clip_by_global_norm.
enable_centered_bias Булевое значение. Если True, оценщик будет обучаться смещённой переменной для каждого класса. Остальная часть модели будет обучаться остатку после смещения.
label_dimension Число регрессионных целей на пример. Это размер последнего измерения меток и логарифмов Tensor объектов (обычно, у них форма [batch_size, label_dimension]).
config Объект RunConfig для настройки параметров выполнения.
feature_engineering_fn Функция обработки признаков. Принимает признаки и метки, которые являются результатом input_fn, и возвращает признаки и метки, которые будут поданы в модель.
embedding_lr_multipliers Необязательно. Словарь из EmbeddingColumn к float множителю. Множитель будет использоваться для умножения на скорость обучения для переменных встраивания.
input_layer_min_slice_size Необязательно. Минимальный размер фрагмента разделения входного слоя. Если не указано, будет использоваться значение по умолчанию 64 Мб.
fix_global_step_increment_bug Если False, оценщику нужны два шага подгонки для оптимизации как линейной, так и глубокой частей. Если True, эта ошибка исправлена. Новым пользователям необходимо установить это в True, но значение по умолчанию False для обратной совместимости.
Возбуждения
ValueError Если и linear_feature_columns и dnn_features_columns одновременно пусты.
Атрибуты
config
model_dir Возвращает путь, в котором процесс оценки будет искать контрольные точки.
model_fn Возвращает model_fn, привязанный к self.params.

Методы

evaluate

Просмотреть исходный код

evaluate(
    x=None, y=None, input_fn=None, feed_fn=None, batch_size=None, steps=None,
    metrics=None, name=None, checkpoint_path=None, hooks=None
)

См. evaluable.Evaluable.

export

Просмотреть исходный код

export(
    export_dir, input_fn=None, input_feature_key=None, use_deprecated_input_fn=True,
    signature_fn=None, default_batch_size=1, exports_to_keep=None
)

См. BaseEstimator.export. (устарело)

Предупреждение: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена после 2017-03-25. Инструкции по обновлению: Пожалуйста, используйте Estimator.export_savedmodel() вместо этого.

export_savedmodel

Просмотреть исходный код

export_savedmodel(
    export_dir_base, serving_input_fn, default_output_alternative_key=None,
    assets_extra=None, as_text=False, checkpoint_path=None,
    graph_rewrite_specs=(GraphRewriteSpec((tag_constants.SERVING,), ()),),
    strip_default_attrs=False
)

Экспортирует график предсказания как SavedModel в указанный каталог.

Аргументы
export_dir_base Строка, содержащая каталог для записи экспортированного графа и контрольных точек.
serving_input_fn Функция, которая не принимает аргументов и возвращает InputFnOps.
default_output_alternative_key Имя головки для обслуживания, если не указано. Не требуется для моделей с одной головкой.
assets_extra Словарь, определяющий, как заполнить каталог assets.extra в экспортированном SavedModel. Каждый ключ должен указывать путь назначения (включая имя файла) относительно каталога assets.extra. Соответствующее значение — полный путь исходного файла, который нужно скопировать. Например, простой случай копирования одного файла без переименования задаётся как {'my_asset_file.txt': '/path/to/my_asset_file.txt'}.
as_text Нужно ли записывать прото SavedModel в текстовом формате.
checkpoint_path Путь к контрольной точке для экспорта. Если None (значение по умолчанию), выбирается самая последняя контрольная точка, найденная в каталоге модели.
graph_rewrite_specs Итерируемый объект GraphRewriteSpec. Каждый элемент создаст отдельный MetaGraphDef в экспортированном SavedModel, помеченный и переписанный, как указано. По умолчанию используется один элемент с тегом по умолчанию ("serve") и без переписывания.
strip_default_attrs Булевое значение. Если True, атрибуты с значениями по умолчанию будут удалены из NodeDefs. Подробное руководство см. Удаление атрибутов со значениями по умолчанию.
Возвращает
Строковый путь к каталогу экспорта.
Возбуждения
ValueError Если запрошен неизвестный тип экспорта.

fit

Просмотреть исходный код

fit(
    x=None, y=None, input_fn=None, steps=None, batch_size=None, monitors=None,
    max_steps=None
)

См. Trainable. (устаревшие аргументы)

Предупреждение: НЕКОТОРЫЕ АРГУМЕНТЫ УСТАРЕЛИ: (batch_size, x, y). Они будут удалены после 2016-12-01. Инструкции по обновлению: Класс Estimator отвязан от интерфейса Scikit-Learn, переместившись в отдельный класс SKCompat. Аргументы x, y и batch_size доступны только в классе SKCompat, Estimator будет принимать только input_fn. Пример преобразования: est = Estimator(...) -> est = SKCompat(Estimator(...))
Возбуждения
ValueError Если x или y не None при input_fn не None.
ValueError Если и steps и max_steps не None.

get_params

Просмотреть исходный код

get_params(
    deep=True
)

Получить параметры для этого оценщика.

Аргументы
deep булевое значение, необязательно

Если True, вернёт параметры для данного оценщика и вложенных под-объектов, которые являются оценщиками.

Возвращает
params отображение строки на любой параметр, имена параметров, сопоставленные со своими значениями.

get_variable_names

Просмотреть исходный код

get_variable_names()

Возвращает список всех имён переменных в этой модели.

Возвращает
Список имён.

get_variable_value

Просмотреть исходный код

get_variable_value(
    name
)

Возвращает значение переменной, заданной по имени.

Аргументы
name строка, имя тензора.
Возвращает
Массив NumPy - значение тензора.

partial_fit

Просмотреть исходный код

partial_fit(
    x=None, y=None, input_fn=None, steps=1, batch_size=None, monitors=None
)

Инкрементная подгонка на наборе выборок. (устаревшие аргументы)

Предупреждение: НЕКОТОРЫЕ АРГУМЕНТЫ УСТАРЕЛИ: (batch_size, x, y). Они будут удалены после 2016-12-01. Инструкции по обновлению: Класс Estimator отделён от интерфейса Scikit Learn, переместившись в отдельный класс SKCompat. Аргументы x, y и batch_size доступны только в классе SKCompat, Estimator будет принимать только input_fn. Пример преобразования: est = Estimator(...) -> est = SKCompat(Estimator(...))

Ожидается, что этот метод будет вызываться несколько раз последовательно на разных или тех же фрагментах набора данных. Это может реализовать итеративное обучение или обучение вне памяти/онлайн.

Это особенно полезно, когда весь набор данных слишком велик, чтобы поместиться в памяти одновременно. Или когда модели требуется много времени для сходимости, и вы хотите разбить обучение на подчасти.

Аргументы
x Матрица формы [n_samples, n_features...]. Может быть итератором, возвращающим массивы признаков. Образцы обучающих данных для обучения модели. Если установлено, input_fn должно быть None.
y Вектор или матрица [n_samples] или [n_samples, n_outputs]. Может быть итератором, возвращающим массив меток. Значения меток обучения (метки классов в классификации, вещественные числа в регрессии). Если установлено, input_fn должно быть None.
input_fn Функция ввода. Если установлено, x, y, и batch_size должны быть None.
steps Количество шагов для обучения модели. Если None, обучаться бесконечно.
batch_size Размер мини-пакета для использования на входе, по умолчанию — первое измерение x. Должно быть None, если input_fn предоставлено.
monitors Список экземпляров подкласса BaseMonitor. Используется для обратного вызова внутри цикла обучения.
Возвращает
self, для цепочки вызовов.
Исключения
ValueError Если хотя бы одно из x и y предоставлено, и input_fn предоставлено.

predict

Просмотреть исходный код

predict(
    x=None, input_fn=None, batch_size=None, outputs=None, as_iterable=True
)

Возвращает прогнозы для заданных признаков. (устаревшие значения аргументов) (устаревшие значения аргументов)

Предупреждение: НЕКОТОРЫЕ ЗНАЧЕНИЯ АРГУМЕНТОВ УСТАРЕЛИ: (as_iterable=False). Они будут удалены после 2016-09-15. Инструкции по обновлению: Поведение по умолчанию predict() изменяется. Значение по умолчанию для as_iterable изменится на True, а затем флаг будет полностью удалён. Поведение этого флага описано ниже.
Предупреждение: НЕКОТОРЫЕ ЗНАЧЕНИЯ АРГУМЕНТОВ УСТАРЕЛИ: (outputs=None). Они будут удалены после 2017-03-01. Инструкции по обновлению: Переключитесь на predict_scores или установите outputs аргумент.

По умолчанию возвращает предсказанные оценки. Но это значение по умолчанию будет вскоре удалено. Пользователи должны либо передать outputs, или вызвать метод predict_scores.

Аргументы
x признаки.
input_fn Функция ввода. Если установлено, x должно быть None.
batch_size Переопределение размера пакета по умолчанию.
outputs список str, имя выходного значения для прогнозирования. Если None, возвращает оценки.
as_iterable Если True, возвращает итератор, который продолжает генерировать прогнозы для каждого примера до тех пор, пока ввод не исчерпается. Примечание: Входные данные должны завершаться, если вы хотите завершить итератор (например, убедитесь, что вы передаёте num_epochs=1, если вы используете что-то вроде read_batch_features).
Возвращает
Массив NumPy предсказанных оценок (или итератор предсказанных оценок, если as_iterable True). Если label_dimension == 1, форма выходных данных — [batch_size], в противном случае форма — [batch_size, label_dimension]. Если outputs установлено, возвращает словарь прогнозов.

predict_scores

Просмотреть исходный код

predict_scores(
    x=None, input_fn=None, batch_size=None, as_iterable=True
)

Возвращает предсказанные оценки для заданных признаков. (устаревшие значения аргументов)

Предупреждение: НЕКОТОРЫЕ ЗНАЧЕНИЯ АРГУМЕНТОВ УСТАРЕЛИ: (as_iterable=False). Они будут удалены после 2016-09-15. Инструкции по обновлению: Поведение по умолчанию predict() изменяется. Значение по умолчанию для as_iterable изменится на True, а затем флаг будет полностью удалён. Поведение этого флага описано ниже.
Аргументы
x признаки.
input_fn Функция ввода. Если установлено, x должно быть None.
batch_size Переопределение размера пакета по умолчанию.
as_iterable Если True, возвращает итератор, который продолжает генерировать прогнозы для каждого примера до тех пор, пока ввод не исчерпается. Примечание: Входные данные должны завершаться, если вы хотите завершить итератор (например, убедитесь, что вы передаёте num_epochs=1, если вы используете что-то вроде read_batch_features).
Возвращает
Массив NumPy предсказанных оценок (или итератор предсказанных оценок, если as_iterable True). Если label_dimension == 1, форма выходных данных — [batch_size], в противном случае форма — [batch_size, label_dimension].

set_params

Просмотреть исходный код

set_params(
    **params
)

Устанавливает параметры этого оценщика.

Метод работает как с простыми оценщиками, так и с вложенными объектами (такими как конвейеры). У первых параметры имеют вид <component>__<parameter>, чтобы было возможно обновлять каждый компонент вложенного объекта.

Аргументы
**params Параметры.
Возвращает
self
Исключения
ValueError Если params содержат недопустимые имена.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/learn/DNNLinearCombinedRegressor

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API