Spec-Zone.ru › TensorFlow 1.15

tf.contrib.learn.DNNRegressor

Регрессор для моделей TensorFlow DNN.

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

tf.contrib.learn.DNNRegressor(
    hidden_units, feature_columns, model_dir=None, weight_column_name=None,
    optimizer=None, activation_fn=tf.nn.relu, dropout=None, gradient_clip_norm=None,
    enable_centered_bias=False, config=None, feature_engineering_fn=None,
    label_dimension=1, embedding_lr_multipliers=None,
    input_layer_min_slice_size=None
)

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

Пример:

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

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 = DNNRegressor(
    feature_columns=[sparse_feature_a, sparse_feature_b],
    hidden_units=[1024, 512, 256])

# Or estimator using the ProximalAdagradOptimizer optimizer with
# regularization.
estimator = DNNRegressor(
    feature_columns=[sparse_feature_a, sparse_feature_b],
    hidden_units=[1024, 512, 256],
    optimizer=tf.compat.v1.train.ProximalAdagradOptimizer(
      learning_rate=0.1,
      l1_regularization_strength=0.001
    ))

# Input builders
def input_fn_train: # returns x, y
  pass
estimator.fit(input_fn=input_fn_train)

def input_fn_eval: # returns x, y
  pass
estimator.evaluate(input_fn=input_fn_eval)
def input_fn_predict: # returns x, None
  pass
estimator.predict_scores(input_fn=input_fn_predict)

Входные данные fit и evaluate должны иметь следующие характеристики, в противном случае произойдёт KeyError:

  • если weight_column_name не является None, то признак с key=weight_column_name, значение которого является Tensor.
  • для каждого column в feature_columns:
    • если column является SparseColumn, то признак с key=column.name, чьё value является SparseTensor.
    • если column является WeightedSparseColumn, два признака: первый с key именем столбца, второй с key именем столбца веса. value обоих признаков должен быть SparseTensor.
    • если column является RealValuedColumn, то признак с key=column.name, чьё value является Tensor.
Аргументы
hidden_units Список скрытых узлов на слой. Все слои являются полностью связанными. Например, [64, 32] означает, что первый слой имеет 64 узла, а второй - 32.
feature_columns Итерируемый объект, содержащий все столбцы признаков, используемые моделью. Все элементы в наборе должны быть экземплярами классов, производных от FeatureColumn .
model_dir Директория для сохранения параметров модели, графа и т.д. Это также может быть использовано для загрузки контрольных точек из каталога в оценщик для продолжения обучения ранее сохранённой модели.
weight_column_name Строка, определяющая имя столбца признака, представляющего веса. Используется для снижения или повышения важности примеров во время обучения. Будет умножаться на потерю примера.
optimizer Экземпляр tf.Optimizer для обучения модели. Если None, будет использоваться оптимизатор Adagrad.
activation_fn Функция активации, применяемая к каждому слою. Если None, будет использоваться tf.nn.relu. Обратите внимание, что также может быть предоставлена строка, содержащая неофициальное имя операции, например, "relu", "tanh" или "sigmoid".
dropout Если не None, вероятность, что заданная координата будет пропущена (dropout).
gradient_clip_norm Величина float > 0. Если задано, градиенты обрезаются до глобальной нормы с этим коэффициентом обрезки. См. tf.clip_by_global_norm для получения дополнительной информации.
enable_centered_bias Булево значение. Если True, оценщик обучит централизованную переменную смещения для каждого класса. Остальная часть структуры модели обучает остаток после централизованного смещения.
config Объект RunConfig для настройки параметров выполнения.
feature_engineering_fn Функция обработки признаков. Принимает признаки и метки, которые являются результатом input_fn и возвращает признаки и метки, которые будут поданы в модель.
label_dimension Количество целевых значений регрессии на пример. Это размер последнего измерения меток и объектов логарифмов Tensor (обычно, эти имеют форму [batch_size, label_dimension]).
embedding_lr_multipliers Необязательно. Словарь из EbeddingColumn в float множитель. Множитель будет использоваться для умножения на скорость обучения для переменных встраивания.
input_layer_min_slice_size Необязательно. Минимальный размер фрагмента входного слоя. Если не предоставлено, будет использоваться значение по умолчанию 64 МБ.
Атрибуты
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. Инструкции по обновлению: Оценщик отделён от интерфейса Scikit Learn путём перемещения в отдельный класс SKCompat. Аргументы x, y и batch_size доступны только в классе SKCompat, Оценщик будет принимать только 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 boolean, optional

Если 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/DNNRegressor

Spec-Zone.ru

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