Spec-Zone.ru › TensorFlow 2.9

tf.keras.dtensor.experimental.LayoutMap

Объект, похожий на словарь, который сопоставляет строки с экземплярами Layout.

tf.keras.dtensor.experimental.LayoutMap(
    mesh=None
)

LayoutMap использует строку в качестве ключа и Layout в качестве значения. Существует различие в поведении между обычным словарем Python и этим классом. Строковый ключ будет обрабатываться как регулярное выражение при извлечении значения. Подробнее см. строку документации для get.

Ниже приведен пример использования. Вы можете определить схему именования Layout, а затем извлечь соответствующий экземпляр Layout.

Чтобы использовать LayoutMap с Model, см. строку документации tf.keras.dtensor.experimental.layout_map_scope.

map = LayoutMap(mesh=None)
map['.*dense.*kernel'] = layout_2d
map['.*dense.*bias'] = layout_1d
map['.*conv2d.*kernel'] = layout_4d
map['.*conv2d.*bias'] = layout_1d

layout_1 = map['dense_1.kernel']    #   layout_1 == layout_2d
layout_2 = map['dense_1.bias']      #   layout_2 == layout_1d
layout_3 = map['dense_2.kernel']    #   layout_3 == layout_2d
layout_4 = map['dense_2.bias']      #   layout_4 == layout_1d
layout_5 = map['my_model/conv2d_123/kernel']    #   layout_5 == layout_4d
layout_6 = map['my_model/conv2d_123/bias']      #   layout_6 == layout_1d
Аргументы
mesh Необязательный Mesh, который можно использовать для создания всех дублируемых макетов по умолчанию, когда макет не найден на основе запроса по строке.

Методы

clear

clear()

D.clear() -> None. Удаляет все элементы из D.

get

get(
    key, default=None
)

Извлекает соответствующий макет по строковому ключу.

Если точного совпадения нет, все существующие ключи в карте макетов будут обрабатываться как регулярные выражения и сопоставляться с входным ключом повторно. Первое совпадение будет возвращено в соответствии с порядком вставки ключей. Возвращает None, если совпадение не найдено.

Аргументы
key строковый ключ в качестве запроса для макета.
Возвращаемое значение
Соответствующий макет на основе запроса.

get_default_mesh

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

get_default_mesh()

Возвращает установленный по умолчанию Mesh при создании экземпляра.

Mesh можно использовать для создания по умолчанию дублированных Layout при отсутствии совпадения входного строкового запроса.

items

items()

D.items() -> объект-множество, предоставляющий представление элементов D

keys

keys()

D.keys() -> объект-множество, предоставляющий представление ключей D

pop

pop(
    key, default=__marker
)

D.pop(k[,d]) -> v, удаляет указанный ключ и возвращает соответствующее значение. Если ключ не найден, возвращается d, если задан, иначе возникает ошибка KeyError.

popitem

popitem()

D.popitem() -> (k, v), удаляет и возвращает пару (ключ, значение) в виде 2-кортежа; но вызывает KeyError, если D пусто.

setdefault

setdefault(
    key, default=None
)

D.setdefault(k[,d]) -> D.get(k,d), также устанавливает D[k]=d, если k не в D

update

update(
    *args, **kwds
)

D.update([E, ]**F) -> None. Обновляет D из отображения/итерируемого E и F. Если E присутствует и имеет метод .keys(), делает: for k in E: D[k] = E[k] Если E присутствует и не имеет метода .keys(), делает: for (k, v) in E: D[k] = v В любом случае за этим следует: for k, v in F.items(): D[k] = v

values

values()

D.values() -> объект, предоставляющий представление значений D

__contains__

__contains__(
    key
)

__eq__

__eq__(
    other
)

Возвращает self==value.

__getitem__

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

__getitem__(
    key
)

Извлекает соответствующий макет по строковому ключу.

Если точного совпадения нет, все существующие ключи в карте макетов будут обрабатываться как регулярные выражения и сопоставляться с входным ключом повторно. Первое совпадение будет возвращено в соответствии с порядком вставки ключей. Возвращает None, если совпадение не найдено.

Аргументы
key строковый ключ в качестве запроса для макета.
Возвращаемое значение
Соответствующий макет на основе запроса.

__iter__

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

__iter__()

__len__

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

__len__()

© 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/versions/r2.9/api_docs/python/tf/keras/dtensor/experimental/LayoutMap

Spec-Zone.ru

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