Spec-Zone.ru › TensorFlow 1.15

tf.contrib.learn.SVM

Модель поддержки векторов (SVM) для бинарной классификации.

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

tf.contrib.learn.SVM(
    example_id_column, feature_columns, weight_column_name=None, model_dir=None,
    l1_regularization=0.0, l2_regularization=0.0, num_loss_partitions=1,
    kernels=None, config=None, feature_engineering_fn=None
)

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

В настоящее время поддерживаются только линейные SVM. Для основной задачи оптимизации используется SDCAOptimizer. Для настройки производительности и сходимости параметр num_loss_partitions, передаваемый в SDCAOptimizer, (см. метод __init__()), должен быть установлен в значение (#конкурентных операций обучения на рабочем узле) x (#рабочих узлов). Если num_loss_partitions больше или равен этому значению, сходимость гарантирована, но становится медленнее по мере увеличения num_loss_partitions. Если значение меньше, оптимизатор более агрессивно уменьшает глобальную потерю, но сходимость не гарантируется. Рекомендуемое значение в Estimator (где на каждом рабочем узле работает один процесс) — число рабочих узлов, выполняющих шаги обучения. По умолчанию оно равно 1 (один компьютер).

Пример:

real_feature_column = real_valued_column(...)
sparse_feature_column = sparse_column_with_hash_bucket(...)

estimator = SVM(
    example_id_column='example_id',
    feature_columns=[real_feature_column, sparse_feature_column],
    l2_regularization=10.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)

Входные данные fit и evaluate должны содержать следующие признаки, в противном случае произойдёт KeyError: признак с key=example_id_column, значение которого — Tensor типа string. Если weight_column_name не None, то признак с key=weight_column_name, значение которого — Tensor. Для каждого column в feature_columns:

- if `column` is a `SparseColumn`, a feature with `key=column.name`
  whose `value` is a `SparseTensor`.
- if `column` is a `RealValuedColumn, a feature with `key=column.name`
  whose `value` is a `Tensor`.
Аргументы
example_id_column Строка, определяющая имя столбца признака, представляющего идентификаторы примеров. Используется для инициализации базового оптимизатора.
feature_columns Итерируемый набор, содержащий все столбцы признаков, используемые моделью. Все элементы набора должны быть экземплярами классов, производных от FeatureColumn.
weight_column_name Строка, определяющая имя столбца признака, представляющего веса. Используется для уменьшения или увеличения веса примеров во время обучения. Он будет умножаться на потерю примера.
model_dir Каталог для сохранения параметров модели, графа и т. д. Также может использоваться для загрузки контрольных точек из каталога в оценщик для продолжения обучения ранее сохранённой модели.
l1_regularization Параметр регуляризации L1. Относится к глобальной регуляризации L1 (по всем примерам).
l2_regularization Параметр регуляризации L2. Относится к глобальной регуляризации L2 (по всем примерам).
num_loss_partitions Количество разделов функции (глобальной) потерь, оптимизируемой базовым оптимизатором (SDCAOptimizer).
kernels Список ядер для SVM. В настоящее время ядра не поддерживаются. Зарезервировано для будущего использования для нелинейных SVM.
config Объект RunConfig для настройки параметров выполнения.
feature_engineering_fn Функция обработки признаков. Принимает признаки и метки, которые являются результатом input_fn, и возвращает признаки и метки, которые будут переданы в модель.
Возможные исключения
ValueError если переданные ядра не равны None.
Атрибуты
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, log_progress=True
)

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

Предупреждение: НЕКОТОРЫЕ АРГУМЕНТЫ УСТАРЕЛИ: (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 предоставлен, и по крайней мере один из input_fn или feed_fn предоставлен. Или если metrics не None или dict.

export

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

export(
    export_dir, signature_fn=None, input_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 если запрошен неизвестный тип экспорта.

export_with_defaults

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

export_with_defaults(
    export_dir, signature_fn=None, input_fn=None, default_batch_size=1,
    exports_to_keep=None
)

То же, что и BaseEstimator.export, но использует некоторые значения по умолчанию. (устаревший)

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

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,
    iterate_batches=False
)

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

Предупреждение: НЕКОТОРЫЕ АРГУМЕНТЫ УСТАРЕЛИ: (as_iterable, batch_size, x). Они будут удалены после 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.
input_fn Функция ввода. Если задана, то x и 'batch_size' должны быть None.
batch_size Переопределение размера пакета по умолчанию. Если задано, то 'input_fn' должно быть 'None'.
outputs Список str, имя выходного значения для предсказания. Если None, возвращает все.
as_iterable Если True, возвращает итератор, который продолжает выдавать предсказания для каждого примера, пока входные данные не закончатся. Примечание: Входные данные должны завершиться, если вы хотите, чтобы итератор завершился (например, убедитесь, что вы передали num_epochs=1, если используете что-то вроде read_batch_features).
iterate_batches Если True, возвращает весь пакет сразу вместо разбиения пакета на отдельные примеры. Релевантно только при as_iterable = True.
Возвращаемые значения
Массив NumPy предсказанных классов или регрессионных значений, если конструктор model_fn возвращает Tensor для predictions или массив NumPy-массивов, если model_fn возвращает dict. Возвращает итератор предсказаний, если as_iterable = True.
Исключения
ValueError Если x и input_fn оба предоставлены или оба None.

predict_classes

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

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

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

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

predict_proba

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

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

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

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

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/SVM

Spec-Zone.ru

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