Spec-Zone.ru › TensorFlow 1.15

tf.contrib.linear_optimizer.SdcaModel

Стохастический решатель двойственной координатной восходящей последовательности для линейных моделей.

tf.contrib.linear_optimizer.SdcaModel(
    examples, variables, options
)

Поддерживаемые функции потерь:

  • Бинарная логистическая потеря
  • Квадратичная потеря
  • Потеря Хинге
  • Гладкая потеря Хинге
  • Логарифмическая потеря Пуассона

    Этот класс определяет API оптимизатора для обучения линейной модели.

    Использование

# Create a solver with the desired parameters.
lr = tf.contrib.linear_optimizer.SdcaModel(examples, variables, options)
min_op = lr.minimize()
opt_op = lr.update_weights(min_op)

predictions = lr.predictions(examples)
# Primal loss + L1 loss + L2 loss.
regularized_loss = lr.regularized_loss(examples)
# Primal loss only
unregularized_loss = lr.unregularized_loss(examples)

examples: {
  sparse_features: list of SparseFeatureColumn.
  dense_features: list of dense tensors of type float32.
  example_labels: a tensor of type float32 and shape [Num examples]
  example_weights: a tensor of type float32 and shape [Num examples]
  example_ids: a tensor of type string and shape [Num examples]
}
variables: {
  sparse_features_weights: list of tensors of shape [vocab size]
  dense_features_weights: list of tensors of shape [dense_feature_dimension]
}
options: {
  symmetric_l1_regularization: 0.0
  symmetric_l2_regularization: 1.0
  loss_type: "logistic_loss"
  num_loss_partitions: 1 (Optional, with default value of 1. Number of
  partitions of the global loss function, 1 means single machine solver,
  and >1 when we have more than one optimizer working concurrently.)
  num_table_shards: 1 (Optional, with default value of 1. Number of shards
  of the internal state table, typically set to match the number of
  parameter servers for large data sets.
}

В программе обучения вам нужно будет просто выполнить возвращённую операцию из minimize().

# Execute opt_op and train for num_steps.
for _ in range(num_steps):
  opt_op.run()

# You can also check for convergence by calling
lr.approximate_duality_gap()

Методы

approximate_duality_gap

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

approximate_duality_gap()

Добавляет операции для вычисления приближённого разрыва двойственности.

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

minimize

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

minimize(
    global_step=None, name=None
)

Добавляет операции для обучения линейной модели путём минимизации функции потерь.

Аргументы
global_step Необязательный Variable для увеличения на единицу после обновления переменных.
name Необязательное имя для возвращаемой операции.
Возвращаемое значение
Операция, которая обновляет переменные, переданные в конструкторе.

predictions

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

predictions(
    examples
)

Добавляет операции для вычисления прогнозов моделью.

Если используется логистическая потеря, возвращаются предсказанные вероятности. Если используется потеря Пуассона, прогнозы экспоненцируются. В противном случае возвращаются (сырые) линейные прогнозы (w*x).

Аргументы
examples Примеры для вычисления прогнозов.
Возвращаемое значение
Операция, которая вычисляет прогнозы для примеров.
Исключения
ValueError если примеры определены некорректно.

regularized_loss

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

regularized_loss(
    examples
)

Добавляет операции для вычисления функции потерь с учётом регуляризации.

Аргументы
examples Примеры для вычисления функции потерь.
Возвращаемое значение
Операция, которая вычисляет среднее (регуляризованное) значение функции потерь для заданного набора примеров.
Исключения
ValueError если примеры определены некорректно.

unregularized_loss

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

unregularized_loss(
    examples
)

Добавляет операции для вычисления функции потерь (без регуляризации).

Аргументы
examples Примеры для вычисления нерегуляризованной функции потерь.
Возвращаемое значение
Операция, которая вычисляет среднее (нерегуляризованное) значение функции потерь для заданного набора примеров.
Исключения
ValueError если примеры определены некорректно.

update_weights

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

update_weights(
    train_op
)

Обновляет веса модели.

Эта функция должна вызываться как минимум на одном узле после minimize. В распределённом обучении этот вызов можно опустить на неглавных узлах для ускорения обучения.

Аргументы
train_op Операция, возвращённая вызовом minimize .
Возвращаемое значение
Операция, которая обновляет веса модели.

© 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/linear_optimizer/SdcaModel

Spec-Zone.ru

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