Spec-Zone.ru › TensorFlow

tf.constant_initializer

Инициализатор, создающий тензоры с постоянными значениями.

tf.constant_initializer(
    value=0, support_partition=False
)

Используется в записных книжках

Используется в руководствах
  • Вероятностные слои TFP: регрессия

Инициализаторы позволяют заранее задать стратегию инициализации, представленную объектом Initializer, не зная форму и тип данных инициализируемой переменной.

tf.constant_initializer возвращает объект, который при вызове возвращает тензор, заполненный значением value, указанным в конструкторе. Это значение value должно преобразовываться в запрошенный тип dtype.

Аргумент value может быть скалярной константой или списком значений. Скалярные значения транслируются до любой формы, запрошенной у инициализатора.

Если value — это список, его длина должна быть равна числу элементов, заданному требуемой формой тензора. Если общее число элементов в value не равно числу элементов, необходимому для формы тензора, инициализатор вызовет исключение TypeError.

Примеры:

def make_variables(k, initializer):
  return (tf.Variable(initializer(shape=[k], dtype=tf.float32)),
          tf.Variable(initializer(shape=[k, k], dtype=tf.float32)))
v1, v2 = make_variables(3, tf.constant_initializer(2.))
v1
<tf.Variable ... shape=(3,) ... numpy=array([2., 2., 2.], dtype=float32)>
v2
<tf.Variable ... shape=(3, 3) ... numpy=
array([[2., 2., 2.],
       [2., 2., 2.],
       [2., 2., 2.]], dtype=float32)>
make_variables(4, tf.random_uniform_initializer(minval=-1., maxval=1.))
(<tf.Variable...shape=(4,) dtype=float32...>, <tf.Variable...shape=(4, 4) ...
value = [0, 1, 2, 3, 4, 5, 6, 7]
init = tf.constant_initializer(value)
# Fitting shape
tf.Variable(init(shape=[2, 4], dtype=tf.float32))
<tf.Variable ...
array([[0., 1., 2., 3.],
       [4., 5., 6., 7.]], dtype=float32)>
# Larger shape
tf.Variable(init(shape=[3, 4], dtype=tf.float32))
Traceback (most recent call last):

TypeError: ...value has 8 elements, shape is (3, 4) with 12 elements...
# Smaller shape
tf.Variable(init(shape=[2, 3], dtype=tf.float32))
Traceback (most recent call last):

TypeError: ...value has 8 elements, shape is (2, 3) with 6 elements...
Аргументы
value Скаляр, список или кортеж значений Python либо N-мерный массив numpy. Всем элементам инициализируемой переменной будет присвоено соответствующее значение из аргумента value.
support_partition Если значение равно true, инициализатор поддерживает передачу создателям переменных аргументов смещения раздела и формы раздела. Это особенно полезно при инициализации разделённых переменных, когда каждому фрагменту переменной присваивается часть тензора, созданного инициализатором констант.
Вызывает исключения
TypeError Если входное значение value не относится к одному из ожидаемых типов.

Методы

from_config

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

@classmethod
from_config(
    config
)

Создаёт инициализатор на основе словаря конфигурации.

Пример:

initializer = RandomUniform(-1, 1)
config = initializer.get_config()
initializer = RandomUniform.from_config(config)
Аргументы
config Словарь Python. Обычно это результат вызова get_config.
Возвращает
Экземпляр Initializer.

get_config

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

get_config()

Возвращает конфигурацию инициализатора в виде словаря, сериализуемого в JSON.

Возвращает
Словарь Python, сериализуемый в JSON.

__call__

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

__call__(
    shape, dtype=None, **kwargs
)

Возвращает объект-тензор, инициализированный в соответствии с заданным инициализатором.

Аргументы
shape Форма тензора.
dtype Необязательный тип данных тензора. Если он не указан, тип данных созданного тензора будет соответствовать типу исходного значения.
**kwargs Дополнительные именованные аргументы.
Вызывает исключения
TypeError Если инициализатор не может создать тензор с запрошенным типом данных.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/constant_initializer

Spec-Zone.ru

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