本文整理汇总了Python中tensor2tensor.layers.common_layers.weights_all方法的典型用法代码示例。如果您正苦于以下问题:Python common_layers.weights_all方法的具体用法?Python common_layers.weights_all怎么用?Python common_layers.weights_all使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类tensor2tensor.layers.common_layers
的用法示例。
在下文中一共展示了common_layers.weights_all方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: create_eager_metrics
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def create_eager_metrics(metric_names, weights_fn=common_layers.weights_all):
"""Create metrics accumulators and averager for Eager mode.
Args:
metric_names: list<str> from Metrics enum
weights_fn: function that takes labels and returns a weights mask. Defaults
to weights of all 1, i.e. common_layers.weights_all. Use
common_layers.weights_nonzero if labels have 0-padding.
Returns:
(accum_fn(predictions, targets) => None,
result_fn() => dict<str metric_name, float avg_val>
"""
metric_fns = dict(
[(name, METRICS_FNS[name]) for name in metric_names])
return create_eager_metrics_internal(metric_fns, weights_fn)
示例2: image_rmse
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def image_rmse(predictions, labels, weights_fn=common_layers.weights_all):
"""RMSE but will argmax if last dim is not 1."""
if common_layers.shape_list(predictions)[-1] == 1:
predictions = tf.squeeze(predictions, axis=[-1])
else:
predictions = tf.argmax(predictions, axis=-1)
return padded_rmse(predictions, labels, weights_fn)
示例3: padded_rmse
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def padded_rmse(predictions, labels, weights_fn=common_layers.weights_all):
predictions = tf.to_float(predictions)
labels = tf.to_float(labels)
predictions, labels = common_layers.pad_with_zeros(predictions, labels)
weights = weights_fn(labels)
error = tf.pow(predictions - labels, 2)
error_sqrt = tf.sqrt(tf.reduce_sum(error * weights))
return error_sqrt, tf.reduce_sum(weights)
示例4: padded_log_poisson
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def padded_log_poisson(predictions,
labels,
weights_fn=common_layers.weights_all):
# Expects predictions to already be transformed into log space
predictions, labels = common_layers.pad_with_zeros(predictions, labels)
targets = labels
weights = weights_fn(targets)
lp_loss = tf.nn.log_poisson_loss(targets, predictions, compute_full_loss=True)
return tf.reduce_sum(lp_loss * weights), tf.reduce_sum(weights)
示例5: padded_variance_explained
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def padded_variance_explained(predictions,
labels,
weights_fn=common_layers.weights_all):
"""Explained variance, also known as R^2."""
predictions, labels = common_layers.pad_with_zeros(predictions, labels)
targets = labels
weights = weights_fn(targets)
y_bar = tf.reduce_mean(weights * targets)
tot_ss = tf.reduce_sum(weights * tf.pow(targets - y_bar, 2))
res_ss = tf.reduce_sum(weights * tf.pow(targets - predictions, 2))
r2 = 1. - res_ss / tot_ss
return r2, tf.reduce_sum(weights)
示例6: create_eager_metrics
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def create_eager_metrics(metric_names, weights_fn=common_layers.weights_all):
"""Create metrics accumulators and averager for Eager mode.
Args:
metric_names: list<str> from Metrics enum
weights_fn: function that takes labels and returns a weights mask. Defaults
to weights of all 1, i.e. common_layers.weights_all. Use
common_layers.weights_nonzero if labels have 0-padding.
Returns:
(accum_fn(predictions, targets) => None,
result_fn() => dict<str metric_name, float avg_val>
"""
metric_fns = dict(
[(name, METRICS_FNS[name]) for name in metric_names])
tfe_metrics = dict()
for name in metric_names:
tfe_metrics[name] = tfe.metrics.Mean(name=name)
def metric_accum(predictions, targets):
for name, metric_fn in metric_fns.items():
val, weight = metric_fn(predictions, targets,
weights_fn=weights_fn)
tfe_metrics[name](np.squeeze(val), np.squeeze(weight))
def metric_means():
avgs = {}
for name in metric_names:
avgs[name] = tfe_metrics[name].result().numpy()
return avgs
return metric_accum, metric_means
# Metrics are functions that take predictions and labels and return
# a tensor of metrics and a tensor of weights.
# If the function has "features" as an argument, it will receive the whole
# features dict as well.
# The results are passed to tf.metrics.mean to accumulate properly.
示例7: padded_rmse
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def padded_rmse(predictions, labels, weights_fn=common_layers.weights_all):
predictions = tf.to_float(predictions)
labels = tf.to_float(labels)
predictions, labels = common_layers.pad_with_zeros(predictions, labels)
weights = weights_fn(labels)
error = tf.pow(predictions - labels, 2)
error_sqrt = tf.sqrt(tf.reduce_mean(error * weights))
return error_sqrt, tf.reduce_sum(weights)
示例8: unpadded_mse
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def unpadded_mse(predictions, labels, weights_fn=common_layers.weights_all):
predictions = tf.to_float(predictions)
labels = tf.to_float(labels)
weights = weights_fn(labels)
error = tf.pow(predictions - labels, 2)
mean_error = tf.reduce_mean(error * weights)
return mean_error, tf.reduce_sum(weights)
示例9: create_eager_metrics_internal
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def create_eager_metrics_internal(metric_fns,
weights_fn=common_layers.weights_all):
"""Create metrics accumulators and averager for Eager mode.
Args:
metric_fns: dict<metric name, metric function>
weights_fn: function that takes labels and returns a weights mask. Defaults
to weights of all 1, i.e. common_layers.weights_all. Use
common_layers.weights_nonzero if labels have 0-padding.
Returns:
(accum_fn(predictions, targets) => None,
result_fn() => dict<str metric_name, float avg_val>
"""
from tensorflow.contrib.eager.python import tfe # pylint: disable=g-import-not-at-top
tfe_metrics = {}
for name in metric_fns:
tfe_metrics[name] = tfe.metrics.Mean(name=name)
def metric_accum(predictions, targets):
for name, metric_fn in metric_fns.items():
val, weight = metric_fn(predictions, targets,
weights_fn=weights_fn)
tfe_metrics[name](np.squeeze(val), np.squeeze(weight))
def metric_means():
avgs = {}
for name in metric_fns:
avgs[name] = tfe_metrics[name].result().numpy()
return avgs
return metric_accum, metric_means
示例10: get_weights_fn
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def get_weights_fn(modality_type, value=None):
"""Gets default weights function; if none available, return value."""
if modality_type in (ModalityType.CTC_SYMBOL,
ModalityType.IDENTITY_SYMBOL,
ModalityType.MULTI_LABEL,
ModalityType.SYMBOL,
ModalityType.SYMBOL_ONE_HOT):
return common_layers.weights_nonzero
elif modality_type in ModalityType.get_choices():
return common_layers.weights_all
return value
示例11: create_eager_metrics
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def create_eager_metrics(metric_names, weights_fn=common_layers.weights_all):
"""Create metrics accumulators and averager for Eager mode.
Args:
metric_names: list<str> from Metrics enum
weights_fn: function that takes labels and returns a weights mask. Defaults
to weights of all 1, i.e. common_layers.weights_all. Use
common_layers.weights_nonzero if labels have 0-padding.
Returns:
(accum_fn(predictions, targets) => None,
result_fn() => dict<str metric_name, float avg_val>
"""
metric_fns = dict(
[(name, METRICS_FNS[name]) for name in metric_names])
tfe_metrics = dict()
for name in metric_names:
tfe_metrics[name] = tfe.metrics.Mean(name=name)
def metric_accum(predictions, targets):
for name, metric_fn in metric_fns.items():
val, weight = metric_fn(predictions, targets,
weights_fn=weights_fn)
tfe_metrics[name](np.squeeze(val), np.squeeze(weight))
def metric_means():
avgs = {}
for name in metric_names:
avgs[name] = tfe_metrics[name].result().numpy()
return avgs
return metric_accum, metric_means
示例12: loss
# 需要导入模块: from tensor2tensor.layers import common_layers [as 别名]
# 或者: from tensor2tensor.layers.common_layers import weights_all [as 别名]
def loss(self, logits, features):
# logits should be dict with 'outputs', which is image.
targets = tf.reshape(features['targets'], [-1, 64, 64, 1])
weights = common_layers.weights_all(targets)
loss_num = tf.pow(logits - targets, 2)
return tf.reduce_sum(loss_num * weights), tf.reduce_sum(weights)