Spec-Zone.ru › TensorFlow 1.15

tf.contrib.training.parse_values

Разбирает значения гиперпараметров из строки в словарь Python.

tf.contrib.training.parse_values(
    values, type_map, ignore_unknown=False
)

values — это строка, содержащая список name=value пар, разделённых запятыми. Для каждой пары значение гиперпараметра с именем name устанавливается в value.

Если имя гиперпараметра встречается несколько раз в values, генерируется исключение ValueError (например, 'a=1,a=2', 'a[1]=1,a[1]=2').

Если имя гиперпараметра используется как в присваивании индексу, так и в скалярном присваивании, генерируется исключение ValueError (например, 'a=[1,2,3],a[0] = 1').

Имя гиперпараметра может содержать символы '.', что приведет к имени атрибута, доступному только через функции getattr и setattr. (И должно быть явно добавлено через add_hparam.)

Предупреждение: Использование символа '.' в именах переменных разрешено, но не полностью поддерживается и не рекомендуется.

Значения value в name=value должны соответствовать синтаксису, соответствующему типу параметра:

  • Скалярное целое число: целое число, которое можно разобрать с помощью Python. Например: 1, 100, -12.
  • Скалярное число с плавающей точкой: число с плавающей точкой, которое можно разобрать с помощью Python. Например: 1.0, -.54e89.
  • Булево значение: true или false.
  • Скалярная строка: непустая последовательность символов, исключая запятые, пробелы и квадратные скобки. Например: foo, bar_1.
  • Список: список скалярных значений указанного типа параметра, разделённых запятыми и заключённых в квадратные скобки. Например: [1,2,3], [1.0,1e-12], [high,low].

При использовании присваивания индексу соответствующий ключ type_map должен быть именем списка. Например, для "arr[1]=0" в type_map должен быть ключ "arr" (а не "arr[1]").

Аргументы
values Строка. Список пар name=value, разделённых запятыми, где 'значение' должно соответствовать описанному выше синтаксису.
type_map Словарь, сопоставляющий имена гиперпараметров с их типами. Обратите внимание, что каждое имя параметра в значениях должно быть ключом в type_map. Значения должны соответствовать указанным типам, где значение V соответствует типу T, если либо V имеет тип T, либо V является списком элементов типа T. Таким образом, для многомерного параметра 'x', принимающего значения с плавающей точкой, 'x=[0.1,0.2]' будет успешно разобран, если type_map['x'] = float.
ignore_unknown Булево значение. Указывает, следует ли игнорировать значения, для которых отсутствует тип в type_map. Если установлено в True, для неизвестного типа гиперпараметра не будет генерироваться исключение ValueError.
Возвращаемые значения
Словарь Python, сопоставляющий каждое имя с одним из следующих:
  • Скалярное значение.
  • Список скалярных значений.
  • Словарь, сопоставляющий номера индексов со скалярными значениями. (например, "x=5,L=[1,2],arr[1]=3" приводит к {'x':5,'L':[1,2],'arr':{1:3} }")
Возможные исключения
ValueError Если возникла проблема с вводом.
  • Если values не может быть разобран.
  • Если списку присвоено значение списка индексов (например, 'a[1] = [1,2,3]').
  • Если одному и тому же правому значению присвоены два разных значения (например, 'a=1,a=2', 'a[1]=1,a[1]=2' или 'a=1,a=[1]')

© 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/training/parse_values

Spec-Zone.ru

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